Software Open Access
Pushing the frontiers of polymer simulation with texture memory
Welcome to the Source Code for simulating entangled star polymers.
This custom software was used to generate data for the article “Five dimensional entanglement in star polymer dynamics"
published in Advanced Theory and Simulations (Wiley)
A preprint is available here: https://arxiv.org/abs/1805.08508
The demo provided here simulates Brownian dynamics of NS=104 stars with 3 arms, of length N=356 beads per arm.
It requires a CUDA-enabled GPU card, which is managed from a Matlab environment using the launchstars.m script.
The .cu source files are included and have been pre-compiled for several star sizes using this command:
Now simply run:
The default settings create the initial polymer configuration in Matlab, which is then transferred to GPU and processed by CUDA for 1000 steps.
The resulting configuration is returned to Matlab, and selected data is stored for later analysis.
This cycle is repeated 200 times, and the real-space configuration is optionally plotted in 3D (see a snapshot in the Figures folder).
Once the demo is complete, you may verify the speed of the computation using this command (it runs an extra numIterations=1000 steps):
tic; [R, randvector, ~] = fh(single(gpuArray(R)), randvector, b, vstrong, rstrong, cosbeta, numIterations, timeStep); toc;
Elapsed time is 0.398752 seconds.
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.
The whole demo lasts about 1 minute 30 seconds.
The branch point trajectory may be analysed by running the script autodiff.m provided in the Data Analysis Tools folder.
A typical result is shown in the MSD.pdf figure. Sub-reptative behaviour (negative slope) is apparent within one minute of simulation.
Airidas Korolkovas, PhD
July 04, 2018