Software Open Access

Pushing the frontiers of polymer simulation with texture memory

Airidas Korolkovas


MARC21 XML Export

<?xml version='1.0' encoding='UTF-8'?>
<record xmlns="http://www.loc.gov/MARC21/slim">
  <leader>00000nmm##2200000uu#4500</leader>
  <datafield tag="041" ind1=" " ind2=" ">
    <subfield code="a">eng</subfield>
  </datafield>
  <datafield tag="653" ind1=" " ind2=" ">
    <subfield code="a">GPU, CUDA, textures, polymers, entanglement, reptation</subfield>
  </datafield>
  <controlfield tag="005">20200125192156.0</controlfield>
  <controlfield tag="001">1305227</controlfield>
  <datafield tag="856" ind1="4" ind2=" ">
    <subfield code="s">26700459</subfield>
    <subfield code="z">md5:3d2f9094c9c41bade3e5e7a04b78327a</subfield>
    <subfield code="u">https://zenodo.org/record/1305227/files/ZenodoPackage.zip</subfield>
  </datafield>
  <datafield tag="542" ind1=" " ind2=" ">
    <subfield code="l">open</subfield>
  </datafield>
  <datafield tag="260" ind1=" " ind2=" ">
    <subfield code="c">2018-07-04</subfield>
  </datafield>
  <datafield tag="909" ind1="C" ind2="O">
    <subfield code="p">software</subfield>
    <subfield code="o">oai:zenodo.org:1305227</subfield>
  </datafield>
  <datafield tag="909" ind1="C" ind2="4">
    <subfield code="p">Advanced Theory and Simulations</subfield>
  </datafield>
  <datafield tag="100" ind1=" " ind2=" ">
    <subfield code="u">Uppsala University</subfield>
    <subfield code="0">(orcid)0000-0001-7904-5639</subfield>
    <subfield code="a">Airidas Korolkovas</subfield>
  </datafield>
  <datafield tag="245" ind1=" " ind2=" ">
    <subfield code="a">Pushing the frontiers of polymer simulation with texture memory</subfield>
  </datafield>
  <datafield tag="540" ind1=" " ind2=" ">
    <subfield code="u">https://creativecommons.org/licenses/by/4.0/legalcode</subfield>
    <subfield code="a">Creative Commons Attribution 4.0 International</subfield>
  </datafield>
  <datafield tag="650" ind1="1" ind2="7">
    <subfield code="a">cc-by</subfield>
    <subfield code="2">opendefinition.org</subfield>
  </datafield>
  <datafield tag="520" ind1=" " ind2=" ">
    <subfield code="a">&lt;p&gt;Pushing the frontiers of polymer simulation with texture memory&lt;br&gt;
---------------------------------------------------------------&lt;/p&gt;

&lt;p&gt;&lt;br&gt;
Welcome to the Source Code for simulating entangled star polymers.&lt;br&gt;
This custom software was used to generate data for the article &amp;ldquo;Five dimensional entanglement in star polymer dynamics&amp;quot;&lt;br&gt;
published in Advanced Theory and Simulations (Wiley)&lt;br&gt;
A preprint is available here: https://arxiv.org/abs/1805.08508&lt;/p&gt;

&lt;p&gt;The demo provided here simulates Brownian dynamics of NS=104 stars with 3 arms, of length N=356 beads per arm.&lt;br&gt;
It requires a CUDA-enabled GPU card, which is managed from a Matlab environment using the launchstars.m script.&lt;br&gt;
The .cu source files are included and have been pre-compiled for several star sizes using this command:&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mexcuda mystar356.cu&lt;/p&gt;

&lt;p&gt;Now simply run:&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; launchstars.m&lt;/p&gt;

&lt;p&gt;The default settings create the initial polymer configuration in Matlab, which is then transferred to GPU and processed by CUDA for 1000 steps.&lt;br&gt;
The resulting configuration is returned to Matlab, and selected data is stored for later analysis.&lt;br&gt;
This cycle is repeated 200 times, and the real-space configuration is optionally plotted in 3D (see a snapshot in the Figures folder).&lt;br&gt;
Once the demo is complete, you may verify the speed of the computation using this command (it runs an extra numIterations=1000 steps):&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;tic; [R, randvector, ~] = fh(single(gpuArray(R)), randvector, b, vstrong, rstrong, cosbeta, numIterations, timeStep); toc;&lt;br&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;Elapsed time is 0.398752 seconds.&lt;/p&gt;

&lt;p&gt;The above figure is for a box of 104*3*356=111072 beads, 1000 iterations, using a Titan XP card donated by the NVIDIA Corporation.&lt;br&gt;
The whole demo lasts about 1 minute 30 seconds.&lt;br&gt;
The branch point trajectory may be analysed by running the script autodiff.m provided in the Data Analysis Tools folder.&lt;br&gt;
A typical result is shown in the MSD.pdf figure. Sub-reptative behaviour (negative slope) is apparent within one minute of simulation.&lt;/p&gt;

&lt;p&gt;&lt;br&gt;
Author:&lt;br&gt;
Airidas Korolkovas, PhD&lt;br&gt;
Institut Laue-Langevin&lt;br&gt;
Uppsala University&lt;br&gt;
korolkovas@ill.fr&lt;br&gt;
airidas.korolkovas89@gmail.com&lt;/p&gt;

&lt;p&gt;July 04, 2018&lt;/p&gt;</subfield>
  </datafield>
  <datafield tag="773" ind1=" " ind2=" ">
    <subfield code="n">url</subfield>
    <subfield code="i">isCitedBy</subfield>
    <subfield code="a">https://arxiv.org/abs/1805.08508</subfield>
  </datafield>
  <datafield tag="773" ind1=" " ind2=" ">
    <subfield code="n">doi</subfield>
    <subfield code="i">isCitedBy</subfield>
    <subfield code="a">10.1002/adts.201800078</subfield>
  </datafield>
  <datafield tag="773" ind1=" " ind2=" ">
    <subfield code="n">doi</subfield>
    <subfield code="i">isVersionOf</subfield>
    <subfield code="a">10.5281/zenodo.1305226</subfield>
  </datafield>
  <datafield tag="024" ind1=" " ind2=" ">
    <subfield code="a">10.5281/zenodo.1305227</subfield>
    <subfield code="2">doi</subfield>
  </datafield>
  <datafield tag="980" ind1=" " ind2=" ">
    <subfield code="a">software</subfield>
  </datafield>
</record>
1,562
50
views
downloads
All versions This version
Views 1,5621,564
Downloads 5050
Data volume 1.3 GB1.3 GB
Unique views 1,4621,464
Unique downloads 4444

Share

Cite as