diff --git a/1-basics.ipynb b/1-basics.ipynb index 42c2a3a9b3ef57b9617ab0932c5ce40ec3ba78f8..2e3d0c7ce194c25c1d26dfdeb04a194640dd0916 100644 --- a/1-basics.ipynb +++ b/1-basics.ipynb @@ -22,19 +22,11 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "metadata": { "scrolled": true }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "<<class 'arbdmodel.ParticleType'> Ar>\n" - ] - } - ], + "outputs": [], "source": [ "import ipdb # in case we need to debug, after a crash, run `ipdb.pm()`\n", "import numpy as np\n", @@ -64,18 +56,9 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "<arbdmodel.ArbdModel object at 0x7fe2d9889580>\n", - "[<arbdmodel.PointParticle object at 0x7fe2f051b850>, <arbdmodel.PointParticle object at 0x7fe2f052f100>]\n" - ] - } - ], + "outputs": [], "source": [ "## Generate Nx3 array of random cartesian coordinates\n", "positions = system_size*(np.random.random([num_particles,3])-0.5)\n", @@ -102,7 +85,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -121,188 +104,11 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": null, "metadata": { "scrolled": true }, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "arbdmodel: INFO: Running arbd with: /home/cmaffeo2/bin/arbd -g 1 1-lj.bd output/1-lj\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - " –––––––––––––––––––––––––––––––––––––––––––––\n", - " | Atomic Resolution Brownian Dynamics |\n", - " –––––––––––––––––––––––––––––––––––––––––––––\n", - "Found 2 GPU(s)\n", - "[0] NVIDIA GeForce RTX 3080 (may timeout) | SM 8.6, 1.71GHz, 7.8GB RAM\n", - "[1] NVIDIA GeForce RTX 3080 | SM 8.6, 1.71GHz, 7.8GB RAM\n", - "Initializing devices... 1\n", - "READER: 0 seed 32472\n", - "READER: 1 timestep 2e-05\n", - "READER: 2 steps 1000\n", - "READER: 3 numberFluct 0 # deprecated\n", - "READER: 4 interparticleForce 1 # other values deprecated\n", - "READER: 5 fullLongRange 0 # deprecated\n", - "READER: 6 temperature 295\n", - "READER: 7 ParticleDynamicType Langevin\n", - "READER: 8 outputPeriod 100.0\n", - "READER: 9 outputEnergyPeriod 100.0\n", - "READER: 10 outputFormat dcd\n", - "READER: 11 decompPeriod 40\n", - "READER: 12 cutoff 50\n", - "READER: 13 pairlistDistance 10\n", - "READER: 14 origin -310.0 -310.0 -310.0\n", - "READER: 15 systemSize 620 620 620\n", - "READER: 16 particle Ar\n", - "READER: 17 num 6400\n", - "READER: 18 mass 39.95\n", - "READER: 19 transDamping 5000 5000 5000\n", - "READER: 20 gridFile potentials/null.dx\n", - "READER: 21 inputParticles 1-lj.particles.txt\n", - "READER: 22 tabulatedPotential 1\n", - "READER: 23 tabulatedFile 0@0@potentials/1-lj-nb.Ar-Ar.dat\n", - "Read config file 1-lj.bd\n", - "Reader::getValue(9) 100.0\n", - "Value 273a: 100.0\n", - "Reader::getValue(9) 100.0\n", - "Value 273b: 100.0\n", - "Reader::getValue(0) 32472\n", - "Reader::getValue(9) 100.0\n", - "Value 273.0: 100.0\n", - "Parsing seed: 32472\n", - "Reader::getValue(1) 2e-05\n", - "Reader::getValue(9) 100.0\n", - "Value 273.1: 100.0\n", - "Parsing timestep: 2e-05\n", - "Reader::getValue(2) 1000\n", - "Reader::getValue(9) 100.0\n", - "Value 273.2: 100.0\n", - "Parsing steps: 1000\n", - "Reader::getValue(3) 0 # deprecated\n", - "Reader::getValue(9) 100.0\n", - "Value 273.3: 100.0\n", - "Parsing numberFluct: 0 # deprecated\n", - "Reader::getValue(4) 1 # other values deprecated\n", - "Reader::getValue(9) 100.0\n", - "Value 273.4: 100.0\n", - "Parsing interparticleForce: 1 # other values deprecated\n", - "Reader::getValue(5) 0 # deprecated\n", - "Reader::getValue(9) 100.0\n", - "Value 273.5: 100.0\n", - "Parsing fullLongRange: 0 # deprecated\n", - "Reader::getValue(6) 295\n", - "Reader::getValue(9) 100.0\n", - "Value 273.6: 100.0\n", - "Parsing temperature: 295\n", - "Reader::getValue(7) Langevin\n", - "Reader::getValue(9) 100.0\n", - "Value 273.7: 100.0\n", - "Parsing ParticleDynamicType: Langevin\n", - "Reader::getValue(8) 100.0\n", - "Reader::getValue(9) 100.0\n", - "Value 273.8: 100.0\n", - "Parsing outputPeriod: 100.0\n", - "Reader::getValue(9) 100.0\n", - "Reader::getValue(9) 100.0\n", - "Value 273.9: 100.0\n", - "Parsing outputEnergyPeriod: 100.0\n", - "Reader::getValue(10) dcd\n", - "Reader::getValue(9) 100.0\n", - "Value 273.10: 100.0\n", - "Parsing outputFormat: dcd\n", - "Reader::getValue(11) 40\n", - "Reader::getValue(9) 100.0\n", - "Value 273.11: 100.0\n", - "Parsing decompPeriod: 40\n", - "Reader::getValue(12) 50\n", - "Reader::getValue(9) 100.0\n", - "Value 273.12: 100.0\n", - "Parsing cutoff: 50\n", - "Reader::getValue(13) 10\n", - "Reader::getValue(9) 100.0\n", - "Value 273.13: 100.0\n", - "Parsing pairlistDistance: 10\n", - "Reader::getValue(14) -310.0 -310.0 -310.0\n", - "Reader::getValue(9) 100.0\n", - "Value 273.14: 100.0\n", - "Parsing origin: -310.0 -310.0 -310.0\n", - "Reader::getValue(15) 620 620 620\n", - "Reader::getValue(9) 100.0\n", - "Value 273.15: 100.0\n", - "Parsing systemSize: 620 620 620\n", - "Reader::getValue(16) Ar\n", - "Reader::getValue(9) 100.0\n", - "Value 273.16: 100.0\n", - "Parsing particle: Ar\n", - "Reader::getValue(17) 6400\n", - "Reader::getValue(9) 100.0\n", - "Value 273.17: 100.0\n", - "Parsing num: 6400\n", - "Reader::getValue(18) 39.95\n", - "Reader::getValue(9) 100.0\n", - "Value 273.18: 100.0\n", - "Parsing mass: 39.95\n", - "Reader::getValue(19) 5000 5000 5000\n", - "Reader::getValue(9) 100.0\n", - "Value 273.19: 100.0\n", - "Parsing transDamping: 5000 5000 5000\n", - "Reader::getValue(20) potentials/null.dx\n", - "Reader::getValue(9) 100.0\n", - "Value 273.20: 100.0\n", - "Parsing gridFile: potentials/null.dx\n", - "The grid file name potentials/null.dx\n", - "potentials/null.dx Reader::getValue(21) 1-lj.particles.txt\n", - "Reader::getValue(9) 100.0\n", - "Value 273.21: 100.0\n", - "Parsing inputParticles: 1-lj.particles.txt\n", - "Reader::getValue(22) 1\n", - "Reader::getValue(9) 100.0\n", - "Value 273.22: 100.0\n", - "Parsing tabulatedPotential: 1\n", - "Reader::getValue(23) 0@0@potentials/1-lj-nb.Ar-Ar.dat\n", - "Reader::getValue(9) 100.0\n", - "Value 273.23: 100.0\n", - "Parsing tabulatedFile: 0@0@potentials/1-lj-nb.Ar-Ar.dat\n", - "\n", - "6400 particles\n", - "0 particles attached to RBs\n", - "0 groups\n", - "\n", - "Found 1 particle types.\n", - "Loading the potential grids...\n", - "Built 0 exclusions.\n", - "\n", - "Cutting off the potential from 48 to 50.\n", - "Copying particle grids to GPU 1\n", - "Copying particle data to GPU 1\n", - "56\n", - "Setting up random number generator with seed 32472\n", - "Created Cell Decomposition (11, 11, 11)\n", - "Loading 1 tabulated non-bonded potentials...\n", - "Using 0 non-bonded exclusions\n", - "Configuration: 6400 particles | 1 replicas\n", - "\n", - "Step 100 [10.00% complete | 0.474 ms/step | 3645.416 ns/day]\n", - "Step 200 [20.00% complete | 0.458 ms/step | 3770.621 ns/day]\n", - "Step 300 [30.00% complete | 0.441 ms/step | 3915.526 ns/day]\n", - "Step 400 [40.00% complete | 0.457 ms/step | 3778.370 ns/day]\n", - "Step 500 [50.00% complete | 0.441 ms/step | 3920.323 ns/day]\n", - "Step 600 [60.00% complete | 0.458 ms/step | 3772.020 ns/day]\n", - "Step 700 [70.00% complete | 0.441 ms/step | 3914.462 ns/day]\n", - "Step 800 [80.00% complete | 0.458 ms/step | 3774.904 ns/day]\n", - "Step 900 [90.00% complete | 0.441 ms/step | 3918.989 ns/day]\n", - "Final Step: 1000\n", - "Total Run Time: 0.74s\n" - ] - } - ], + "outputs": [], "source": [ "from arbdmodel import ArbdEngine\n", "\n", @@ -333,56 +139,11 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "metadata": { "scrolled": true }, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/data/server1/cmaffeo2/miniconda3/lib/python3.8/site-packages/MDAnalysis/coordinates/chemfiles.py:108: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead.\n", - " MIN_CHEMFILES_VERSION = LooseVersion(\"0.9\")\n" - ] - }, - { - "data": { - "application/vnd.jupyter.widget-view+json": { - "model_id": "29599788f1524fdc9d3459ddb8d31a54", - "version_major": 2, - "version_minor": 0 - }, - "text/plain": [] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/data/server1/cmaffeo2/miniconda3/lib/python3.8/site-packages/MDAnalysis/topology/PDBParser.py:317: UserWarning: Element information is missing, elements attribute will not be populated. If needed these can be guessed using MDAnalysis.topology.guessers.\n", - " warnings.warn(\"Element information is missing, elements attribute \"\n", - "/data/server1/cmaffeo2/miniconda3/lib/python3.8/site-packages/MDAnalysis/topology/guessers.py:146: UserWarning: Failed to guess the mass for the following atom types: A\n", - " warnings.warn(\"Failed to guess the mass for the following atom types: {}\".format(atom_type))\n" - ] - }, - { - "data": { - "application/vnd.jupyter.widget-view+json": { - "model_id": "c8db4462a23a44cb894a2f818564728f", - "version_major": 2, - "version_minor": 0 - }, - "text/plain": [ - "NGLWidget(max_frame=9)" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "import MDAnalysis as mda\n", "import nglview as nv\n", @@ -403,186 +164,9 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "arbdmodel: INFO: Running arbd with: /home/cmaffeo2/bin/arbd -g 1 2-buck.bd output/2-buck\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - " –––––––––––––––––––––––––––––––––––––––––––––\n", - " | Atomic Resolution Brownian Dynamics |\n", - " –––––––––––––––––––––––––––––––––––––––––––––\n", - "Found 2 GPU(s)\n", - "[0] NVIDIA GeForce RTX 3080 (may timeout) | SM 8.6, 1.71GHz, 7.8GB RAM\n", - "[1] NVIDIA GeForce RTX 3080 | SM 8.6, 1.71GHz, 7.8GB RAM\n", - "Initializing devices... 1\n", - "READER: 0 seed 63096\n", - "READER: 1 timestep 2e-05\n", - "READER: 2 steps 1000\n", - "READER: 3 numberFluct 0 # deprecated\n", - "READER: 4 interparticleForce 1 # other values deprecated\n", - "READER: 5 fullLongRange 0 # deprecated\n", - "READER: 6 temperature 295\n", - "READER: 7 ParticleDynamicType Langevin\n", - "READER: 8 outputPeriod 100.0\n", - "READER: 9 outputEnergyPeriod 100.0\n", - "READER: 10 outputFormat dcd\n", - "READER: 11 decompPeriod 40\n", - "READER: 12 cutoff 50\n", - "READER: 13 pairlistDistance 10\n", - "READER: 14 origin -310.0 -310.0 -310.0\n", - "READER: 15 systemSize 620 620 620\n", - "READER: 16 particle Ar\n", - "READER: 17 num 6400\n", - "READER: 18 mass 39.95\n", - "READER: 19 transDamping 5000 5000 5000\n", - "READER: 20 gridFile potentials/null.dx\n", - "READER: 21 inputParticles 2-buck.particles.txt\n", - "READER: 22 tabulatedPotential 1\n", - "READER: 23 tabulatedFile 0@0@potentials/1-lj-nb.Ar-Ar.dat\n", - "Read config file 2-buck.bd\n", - "Reader::getValue(9) 100.0\n", - "Value 273a: 100.0\n", - "Reader::getValue(9) 100.0\n", - "Value 273b: 100.0\n", - "Reader::getValue(0) 63096\n", - "Reader::getValue(9) 100.0\n", - "Value 273.0: 100.0\n", - "Parsing seed: 63096\n", - "Reader::getValue(1) 2e-05\n", - "Reader::getValue(9) 100.0\n", - "Value 273.1: 100.0\n", - "Parsing timestep: 2e-05\n", - "Reader::getValue(2) 1000\n", - "Reader::getValue(9) 100.0\n", - "Value 273.2: 100.0\n", - "Parsing steps: 1000\n", - "Reader::getValue(3) 0 # deprecated\n", - "Reader::getValue(9) 100.0\n", - "Value 273.3: 100.0\n", - "Parsing numberFluct: 0 # deprecated\n", - "Reader::getValue(4) 1 # other values deprecated\n", - "Reader::getValue(9) 100.0\n", - "Value 273.4: 100.0\n", - "Parsing interparticleForce: 1 # other values deprecated\n", - "Reader::getValue(5) 0 # deprecated\n", - "Reader::getValue(9) 100.0\n", - "Value 273.5: 100.0\n", - "Parsing fullLongRange: 0 # deprecated\n", - "Reader::getValue(6) 295\n", - "Reader::getValue(9) 100.0\n", - "Value 273.6: 100.0\n", - "Parsing temperature: 295\n", - "Reader::getValue(7) Langevin\n", - "Reader::getValue(9) 100.0\n", - "Value 273.7: 100.0\n", - "Parsing ParticleDynamicType: Langevin\n", - "Reader::getValue(8) 100.0\n", - "Reader::getValue(9) 100.0\n", - "Value 273.8: 100.0\n", - "Parsing outputPeriod: 100.0\n", - "Reader::getValue(9) 100.0\n", - "Reader::getValue(9) 100.0\n", - "Value 273.9: 100.0\n", - "Parsing outputEnergyPeriod: 100.0\n", - "Reader::getValue(10) dcd\n", - "Reader::getValue(9) 100.0\n", - "Value 273.10: 100.0\n", - "Parsing outputFormat: dcd\n", - "Reader::getValue(11) 40\n", - "Reader::getValue(9) 100.0\n", - "Value 273.11: 100.0\n", - "Parsing decompPeriod: 40\n", - "Reader::getValue(12) 50\n", - "Reader::getValue(9) 100.0\n", - "Value 273.12: 100.0\n", - "Parsing cutoff: 50\n", - "Reader::getValue(13) 10\n", - "Reader::getValue(9) 100.0\n", - "Value 273.13: 100.0\n", - "Parsing pairlistDistance: 10\n", - "Reader::getValue(14) -310.0 -310.0 -310.0\n", - "Reader::getValue(9) 100.0\n", - "Value 273.14: 100.0\n", - "Parsing origin: -310.0 -310.0 -310.0\n", - "Reader::getValue(15) 620 620 620\n", - "Reader::getValue(9) 100.0\n", - "Value 273.15: 100.0\n", - "Parsing systemSize: 620 620 620\n", - "Reader::getValue(16) Ar\n", - "Reader::getValue(9) 100.0\n", - "Value 273.16: 100.0\n", - "Parsing particle: Ar\n", - "Reader::getValue(17) 6400\n", - "Reader::getValue(9) 100.0\n", - "Value 273.17: 100.0\n", - "Parsing num: 6400\n", - "Reader::getValue(18) 39.95\n", - "Reader::getValue(9) 100.0\n", - "Value 273.18: 100.0\n", - "Parsing mass: 39.95\n", - "Reader::getValue(19) 5000 5000 5000\n", - "Reader::getValue(9) 100.0\n", - "Value 273.19: 100.0\n", - "Parsing transDamping: 5000 5000 5000\n", - "Reader::getValue(20) potentials/null.dx\n", - "Reader::getValue(9) 100.0\n", - "Value 273.20: 100.0\n", - "Parsing gridFile: potentials/null.dx\n", - "The grid file name potentials/null.dx\n", - "potentials/null.dx Reader::getValue(21) 2-buck.particles.txt\n", - "Reader::getValue(9) 100.0\n", - "Value 273.21: 100.0\n", - "Parsing inputParticles: 2-buck.particles.txt\n", - "Reader::getValue(22) 1\n", - "Reader::getValue(9) 100.0\n", - "Value 273.22: 100.0\n", - "Parsing tabulatedPotential: 1\n", - "Reader::getValue(23) 0@0@potentials/1-lj-nb.Ar-Ar.dat\n", - "Reader::getValue(9) 100.0\n", - "Value 273.23: 100.0\n", - "Parsing tabulatedFile: 0@0@potentials/1-lj-nb.Ar-Ar.dat\n", - "\n", - "6400 particles\n", - "0 particles attached to RBs\n", - "0 groups\n", - "\n", - "Found 1 particle types.\n", - "Loading the potential grids...\n", - "Built 0 exclusions.\n", - "\n", - "Cutting off the potential from 48 to 50.\n", - "Copying particle grids to GPU 1\n", - "Copying particle data to GPU 1\n", - "56\n", - "Setting up random number generator with seed 63096\n", - "Created Cell Decomposition (11, 11, 11)\n", - "Loading 1 tabulated non-bonded potentials...\n", - "Using 0 non-bonded exclusions\n", - "Configuration: 6400 particles | 1 replicas\n", - "\n", - "Step 100 [10.00% complete | 0.472 ms/step | 3664.511 ns/day]\n", - "Step 200 [20.00% complete | 0.458 ms/step | 3776.224 ns/day]\n", - "Step 300 [30.00% complete | 0.441 ms/step | 3920.234 ns/day]\n", - "Step 400 [40.00% complete | 0.457 ms/step | 3778.205 ns/day]\n", - "Step 500 [50.00% complete | 0.441 ms/step | 3921.302 ns/day]\n", - "Step 600 [60.00% complete | 0.457 ms/step | 3779.114 ns/day]\n", - "Step 700 [70.00% complete | 0.440 ms/step | 3927.451 ns/day]\n", - "Step 800 [80.00% complete | 0.614 ms/step | 2816.075 ns/day]\n", - "Step 900 [90.00% complete | 0.441 ms/step | 3921.835 ns/day]\n", - "Final Step: 1000\n", - "Total Run Time: 0.69s\n" - ] - } - ], + "outputs": [], "source": [ "from arbdmodel.interactions import AbstractPotential\n", "\n", @@ -606,36 +190,11 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "metadata": { "scrolled": true }, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/data/server1/cmaffeo2/miniconda3/lib/python3.8/site-packages/MDAnalysis/topology/PDBParser.py:317: UserWarning: Element information is missing, elements attribute will not be populated. If needed these can be guessed using MDAnalysis.topology.guessers.\n", - " warnings.warn(\"Element information is missing, elements attribute \"\n", - "/data/server1/cmaffeo2/miniconda3/lib/python3.8/site-packages/MDAnalysis/topology/guessers.py:146: UserWarning: Failed to guess the mass for the following atom types: A\n", - " warnings.warn(\"Failed to guess the mass for the following atom types: {}\".format(atom_type))\n" - ] - }, - { - "data": { - "application/vnd.jupyter.widget-view+json": { - "model_id": "f84131f1662f45a882d2814250f3f346", - "version_major": 2, - "version_minor": 0 - }, - "text/plain": [ - "NGLWidget(max_frame=9)" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "import MDAnalysis as mda\n", "import nglview as nv\n", @@ -658,23 +217,11 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": null, "metadata": { "scrolled": true }, - "outputs": [ - { - "ename": "NameError", - "evalue": "name 'model' is not defined", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)", - "\u001b[0;32m<ipython-input-5-c1d63cbeb26c>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[1;32m 5\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 6\u001b[0m \u001b[0;31m## Go through every other index\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 7\u001b[0;31m \u001b[0;32mfor\u001b[0m \u001b[0mi\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mrange\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mlen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mmodel\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mchildren\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 8\u001b[0m \u001b[0mj\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mi\u001b[0m\u001b[0;34m+\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 9\u001b[0m model.add_bond( model.children[i],\n", - "\u001b[0;31mNameError\u001b[0m: name 'model' is not defined" - ] - } - ], + "outputs": [], "source": [ "from arbdmodel.interactions import HarmonicBond\n", "bond = HarmonicBond(k=100, # kcal/mol AA**2 \n", @@ -697,34 +244,11 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": null, "metadata": { "scrolled": true }, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/data/server1/cmaffeo2/miniconda3/lib/python3.8/site-packages/MDAnalysis/coordinates/base.py:892: UserWarning: Reader has no dt information, set to 1.0 ps\n", - " warnings.warn(\"Reader has no dt information, set to 1.0 ps\")\n" - ] - }, - { - "data": { - "application/vnd.jupyter.widget-view+json": { - "model_id": "88914eec89f74ebeb4660a93056f4a45", - "version_major": 2, - "version_minor": 0 - }, - "text/plain": [ - "NGLWidget(max_frame=10)" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "import MDAnalysis as mda\n", "import nglview as nv\n", @@ -738,26 +262,9 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(0, 50)\n", - "[ 0. 2.63157895 5.26315789 7.89473684 10.52631579 13.15789474\n", - " 15.78947368 18.42105263 21.05263158 23.68421053 26.31578947 28.94736842\n", - " 31.57894737 34.21052632 36.84210526 39.47368421 42.10526316 44.73684211\n", - " 47.36842105 50. ]\n", - "[4.50000000e+02 6.78670360e+00 2.56094183e+02 1.19792244e+03\n", - " 2.83227147e+03 5.15914127e+03 8.17853186e+03 1.18904432e+04\n", - " 1.62948753e+04 2.13918283e+04 2.71813019e+04 3.36632964e+04\n", - " 4.08378116e+04 4.87048476e+04 5.72644044e+04 6.65164820e+04\n", - " 7.64610803e+04 8.70981994e+04 9.84278393e+04 1.10450000e+05]\n" - ] - } - ], + "outputs": [], "source": [ "## Why are there so many long bonds?\n", "print(bond.range_) ## Distances are in Angstroms\n", @@ -778,25 +285,6 @@ "\n", "Also, please note that ARBD is under development; some keywords have been deprecated, and the syntax is subject to evolve. The user-oriented interface of the arbdmodel package is less likely to change, which is one of the reasons we strongly recommend using arbdmodel to set up your simulation systems. Nevertheless, if you want to use ARBD, it's a good idea to familiarize yourself with the configuration file syntax." ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### More to come shortly...\n", - "First, we'll introduce some classes helpful for working with polymers, and we'll show the polymer models that ship with the class.\n", - "\n", - "We'll show how beads can experience grid-based potentials.\n", - "\n", - "Then we'll show how to construct simple rigid body models." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] } ], "metadata": { diff --git a/2-polymer-objects.ipynb b/2-polymer-objects.ipynb index b10025d4699c73f5d950f51c829cecd703df84dd..8fd6729c3c2f0140f9778045a61468a041cb58be 100644 --- a/2-polymer-objects.ipynb +++ b/2-polymer-objects.ipynb @@ -2,36 +2,22 @@ "cells": [ { "cell_type": "code", - "execution_count": 1, - "id": "d79b799e", + "execution_count": null, + "id": "d3ec1bf4", + "metadata": {}, + "outputs": [], + "source": [ + "## These commands are useful if you are modifying the arbdmodel package while running the notebook\n", + "%load_ext autoreload\n", + "%autoreload 2" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "df762abe", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "<<class 'arbdmodel.polymer.PolymerSection'> PROT[70]>\n", - "locations: []\n", - "connection_locations: []\n", - "connections: []\n", - "segname: PROT\n", - "num_monomers: 70\n", - "monomer_length: 3.8\n", - "start_position: [ 20. 0. -105.]\n", - "end_position: [ 20. 0. 161.]\n", - "start_orientation: None\n", - "quaternion_spline_params: None\n", - "position_spline_params: ([array([0. , 0. , 0.0625, 0.125 , 0.1875, 0.25 , 0.3125, 0.375 ,\n", - " 0.4375, 0.5 , 0.5625, 0.625 , 0.6875, 0.75 , 0.8125, 0.875 ,\n", - " 0.9375, 1. , 1. ]), [array([20., 20., 20., 20., 20., 20., 20., 20., 20., 20., 20., 20., 20.,\n", - " 20., 20., 20., 20.]), array([0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.]), array([-105. , -88.375, -71.75 , -55.125, -38.5 , -21.875,\n", - " -5.25 , 11.375, 28. , 44.625, 61.25 , 77.875,\n", - " 94.5 , 111.125, 127.75 , 144.375, 161. ])], 1], array([0. , 0.0625, 0.125 , 0.1875, 0.25 , 0.3125, 0.375 , 0.4375,\n", - " 0.5 , 0.5625, 0.625 , 0.6875, 0.75 , 0.8125, 0.875 , 0.9375,\n", - " 1. ]))\n" - ] - } - ], + "outputs": [], "source": [ "import ipdb # in case we want to debug something\n", "\"\"\"\n", @@ -57,7 +43,7 @@ }, { "cell_type": "markdown", - "id": "6796739a", + "id": "deea225b", "metadata": {}, "source": [ "As you may be able to see above, the PolymerSection class describes a 1D polymeric object abstractly, tracing a linear path through 3D space using splines. It can also use splines to trace the orientation of the polymer through the `quaternion_spline_params` attribute.\n", @@ -69,290 +55,10 @@ }, { "cell_type": "code", - "execution_count": 2, - "id": "69f636aa", + "execution_count": null, + "id": "74569e83", "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "arbdmodel: WARNING: Diffusion coefficient arbitrarily set to 100 AA**2/ns in FjcModel\n", - "arbdmodel: INFO: Running arbd with: /home/cmaffeo2/bin/arbd -g 1 1-linear-fjc.bd output/1-linear-fjc\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - " –––––––––––––––––––––––––––––––––––––––––––––\n", - " | Atomic Resolution Brownian Dynamics |\n", - " –––––––––––––––––––––––––––––––––––––––––––––\n", - "Found 2 GPU(s)\n", - "[0] NVIDIA GeForce RTX 3080 (may timeout) | SM 8.6, 1.71GHz, 7.8GB RAM\n", - "[1] NVIDIA GeForce RTX 3080 | SM 8.6, 1.71GHz, 7.8GB RAM\n", - "Initializing devices... 1\n", - "READER: 0 seed 43749\n", - "READER: 1 timestep 5e-05\n", - "READER: 2 steps 10000\n", - "READER: 3 numberFluct 0 # deprecated\n", - "READER: 4 interparticleForce 1 # other values deprecated\n", - "READER: 5 fullLongRange 0 # deprecated\n", - "READER: 6 temperature 295\n", - "READER: 7 ParticleDynamicType Langevin\n", - "READER: 8 outputPeriod 100.0\n", - "READER: 9 outputEnergyPeriod 100.0\n", - "READER: 10 outputFormat dcd\n", - "READER: 11 decompPeriod 100000\n", - "READER: 12 cutoff 5\n", - "READER: 13 pairlistDistance 10\n", - "READER: 14 origin -500.0 -500.0 -500.0\n", - "READER: 15 systemSize 1000 1000 1000\n", - "READER: 16 particle X\n", - "READER: 17 num 7\n", - "READER: 18 mass 120\n", - "READER: 19 transDamping 40.9 40.9 40.9\n", - "READER: 20 gridFile potentials/null.dx\n", - "READER: 21 inputParticles 1-linear-fjc.particles.txt\n", - "READER: 22 tabulatedPotential 1\n", - "READER: 23 tabulatedBondFile ./potentials/bond-25.000-38.000.dat\n", - "READER: 24 inputBonds potentials/1-linear-fjc.bond.txt\n", - "Read config file 1-linear-fjc.bd\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273a: ./potentials/bond-25.000-38.000.dat\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273b: ./potentials/bond-25.000-38.000.dat\n", - "Reader::getValue(0) 43749\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.0: ./potentials/bond-25.000-38.000.dat\n", - "Parsing seed: 43749\n", - "Reader::getValue(1) 5e-05\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.1: ./potentials/bond-25.000-38.000.dat\n", - "Parsing timestep: 5e-05\n", - "Reader::getValue(2) 10000\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.2: ./potentials/bond-25.000-38.000.dat\n", - "Parsing steps: 10000\n", - "Reader::getValue(3) 0 # deprecated\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.3: ./potentials/bond-25.000-38.000.dat\n", - "Parsing numberFluct: 0 # deprecated\n", - "Reader::getValue(4) 1 # other values deprecated\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.4: ./potentials/bond-25.000-38.000.dat\n", - "Parsing interparticleForce: 1 # other values deprecated\n", - "Reader::getValue(5) 0 # deprecated\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.5: ./potentials/bond-25.000-38.000.dat\n", - "Parsing fullLongRange: 0 # deprecated\n", - "Reader::getValue(6) 295\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.6: ./potentials/bond-25.000-38.000.dat\n", - "Parsing temperature: 295\n", - "Reader::getValue(7) Langevin\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.7: ./potentials/bond-25.000-38.000.dat\n", - "Parsing ParticleDynamicType: Langevin\n", - "Reader::getValue(8) 100.0\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.8: ./potentials/bond-25.000-38.000.dat\n", - "Parsing outputPeriod: 100.0\n", - "Reader::getValue(9) 100.0\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.9: ./potentials/bond-25.000-38.000.dat\n", - "Parsing outputEnergyPeriod: 100.0\n", - "Reader::getValue(10) dcd\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.10: ./potentials/bond-25.000-38.000.dat\n", - "Parsing outputFormat: dcd\n", - "Reader::getValue(11) 100000\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.11: ./potentials/bond-25.000-38.000.dat\n", - "Parsing decompPeriod: 100000\n", - "Reader::getValue(12) 5\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.12: ./potentials/bond-25.000-38.000.dat\n", - "Parsing cutoff: 5\n", - "Reader::getValue(13) 10\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.13: ./potentials/bond-25.000-38.000.dat\n", - "Parsing pairlistDistance: 10\n", - "Reader::getValue(14) -500.0 -500.0 -500.0\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.14: ./potentials/bond-25.000-38.000.dat\n", - "Parsing origin: -500.0 -500.0 -500.0\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.15: ./potentials/bond-25.000-38.000.dat\n", - "Parsing systemSize: 1000 1000 1000\n", - "Reader::getValue(16) X\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.16: ./potentials/bond-25.000-38.000.dat\n", - "Parsing particle: X\n", - "Reader::getValue(17) 7\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.17: ./potentials/bond-25.000-38.000.dat\n", - "Parsing num: 7\n", - "Reader::getValue(18) 120\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.18: ./potentials/bond-25.000-38.000.dat\n", - "Parsing mass: 120\n", - "Reader::getValue(19) 40.9 40.9 40.9\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.19: ./potentials/bond-25.000-38.000.dat\n", - "Parsing transDamping: 40.9 40.9 40.9\n", - "Reader::getValue(20) potentials/null.dx\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.20: ./potentials/bond-25.000-38.000.dat\n", - "Parsing gridFile: potentials/null.dx\n", - "The grid file name potentials/null.dx\n", - "potentials/null.dx Reader::getValue(21) 1-linear-fjc.particles.txt\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.21: ./potentials/bond-25.000-38.000.dat\n", - "Parsing inputParticles: 1-linear-fjc.particles.txt\n", - "Reader::getValue(22) 1\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.22: ./potentials/bond-25.000-38.000.dat\n", - "Parsing tabulatedPotential: 1\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.23: ./potentials/bond-25.000-38.000.dat\n", - "Parsing tabulatedBondFile: ./potentials/bond-25.000-38.000.dat\n", - "Reader::getValue(24) potentials/1-linear-fjc.bond.txt\n", - "Reader::getValue(23) ./potentials/bond-25.000-38.000.dat\n", - "Value 273.24: ./potentials/bond-25.000-38.000.dat\n", - "Parsing inputBonds: potentials/1-linear-fjc.bond.txt\n", - "\n", - "7 particles\n", - "0 particles attached to RBs\n", - "0 groups\n", - "\n", - "Found 1 particle types.\n", - "Loading the potential grids...\n", - "Built 12 exclusions.\n", - "\n", - "Cutting off the potential from 3 to 5.\n", - "Copying particle grids to GPU 1\n", - "Copying particle data to GPU 1\n", - "56\n", - "Setting up random number generator with seed 43749\n", - "Created Cell Decomposition (67, 67, 67)\n", - "Loading 1 tabulated non-bonded potentials...\n", - "Using 6 non-bonded exclusions\n", - "Loading 1 tabulated bond potentials...\n", - "Configuration: 7 particles | 1 replicas\n", - "\n", - "Step 100 [1.00% complete | 0.499 ms/step | 8650.554 ns/day]\n", - "Step 200 [2.00% complete | 0.399 ms/step | 10821.644 ns/day]\n", - "Step 300 [3.00% complete | 0.399 ms/step | 10824.354 ns/day]\n", - "Step 400 [4.00% complete | 0.399 ms/step | 10840.108 ns/day]\n", - "Step 500 [5.00% complete | 0.400 ms/step | 10812.434 ns/day]\n", - "Step 600 [6.00% complete | 0.399 ms/step | 10817.579 ns/day]\n", - "Step 700 [7.00% complete | 0.398 ms/step | 10852.090 ns/day]\n", - "Step 800 [8.00% complete | 0.400 ms/step | 10812.163 ns/day]\n", - "Step 900 [9.00% complete | 0.399 ms/step | 10829.238 ns/day]\n", - "Step 1000 [10.00% complete | 0.399 ms/step | 10823.812 ns/day]\n", - "Step 1100 [11.00% complete | 0.399 ms/step | 10837.932 ns/day]\n", - "Step 1200 [12.00% complete | 0.399 ms/step | 10829.782 ns/day]\n", - "Step 1300 [13.00% complete | 0.400 ms/step | 10811.894 ns/day]\n", - "Step 1400 [14.00% complete | 0.400 ms/step | 10792.445 ns/day]\n", - "Step 1500 [15.00% complete | 0.400 ms/step | 10813.246 ns/day]\n", - "Step 1600 [16.00% complete | 0.400 ms/step | 10812.163 ns/day]\n", - "Step 1700 [17.00% complete | 0.402 ms/step | 10740.124 ns/day]\n", - "Step 1800 [18.00% complete | 0.399 ms/step | 10819.204 ns/day]\n", - "Step 1900 [19.00% complete | 0.399 ms/step | 10821.644 ns/day]\n", - "Step 2000 [20.00% complete | 0.398 ms/step | 10845.279 ns/day]\n", - "Step 2100 [21.00% complete | 0.399 ms/step | 10823.541 ns/day]\n", - "Step 2200 [22.00% complete | 0.399 ms/step | 10818.933 ns/day]\n", - "Step 2300 [23.00% complete | 0.399 ms/step | 10824.354 ns/day]\n", - "Step 2400 [24.00% complete | 0.399 ms/step | 10838.749 ns/day]\n", - "Step 2500 [25.00% complete | 0.399 ms/step | 10818.662 ns/day]\n", - "Step 2600 [26.00% complete | 0.399 ms/step | 10822.186 ns/day]\n", - "Step 2700 [27.00% complete | 0.398 ms/step | 10854.271 ns/day]\n", - "Step 2800 [28.00% complete | 0.399 ms/step | 10818.120 ns/day]\n", - "Step 2900 [29.00% complete | 0.399 ms/step | 10822.728 ns/day]\n", - "Step 3000 [30.00% complete | 0.399 ms/step | 10817.307 ns/day]\n", - "Step 3100 [31.00% complete | 0.564 ms/step | 7659.438 ns/day]\n", - "Step 3200 [32.00% complete | 0.399 ms/step | 10814.601 ns/day]\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Step 3300 [33.00% complete | 0.399 ms/step | 10814.870 ns/day]\n", - "Step 3400 [34.00% complete | 0.400 ms/step | 10809.729 ns/day]\n", - "Step 3500 [35.00% complete | 0.400 ms/step | 10811.623 ns/day]\n", - "Step 3600 [36.00% complete | 0.400 ms/step | 10812.163 ns/day]\n", - "Step 3700 [37.00% complete | 0.399 ms/step | 10830.054 ns/day]\n", - "Step 3800 [38.00% complete | 0.400 ms/step | 10813.517 ns/day]\n", - "Step 3900 [39.00% complete | 0.400 ms/step | 10813.517 ns/day]\n", - "Step 4000 [40.00% complete | 0.398 ms/step | 10846.912 ns/day]\n", - "Step 4100 [41.00% complete | 0.399 ms/step | 10817.307 ns/day]\n", - "Step 4200 [42.00% complete | 0.399 ms/step | 10815.141 ns/day]\n", - "Step 4300 [43.00% complete | 0.400 ms/step | 10809.458 ns/day]\n", - "Step 4400 [44.00% complete | 0.399 ms/step | 10824.084 ns/day]\n", - "Step 4500 [45.00% complete | 0.400 ms/step | 10790.559 ns/day]\n", - "Step 4600 [46.00% complete | 0.399 ms/step | 10835.215 ns/day]\n", - "Step 4700 [47.00% complete | 0.406 ms/step | 10636.988 ns/day]\n", - "Step 4800 [48.00% complete | 0.404 ms/step | 10700.750 ns/day]\n", - "Step 4900 [49.00% complete | 0.400 ms/step | 10808.106 ns/day]\n", - "Step 5000 [50.00% complete | 0.400 ms/step | 10808.377 ns/day]\n", - "Step 5100 [51.00% complete | 0.400 ms/step | 10811.081 ns/day]\n", - "Step 5200 [52.00% complete | 0.399 ms/step | 10821.102 ns/day]\n", - "Step 5300 [53.00% complete | 0.398 ms/step | 10852.090 ns/day]\n", - "Step 5400 [54.00% complete | 0.399 ms/step | 10817.307 ns/day]\n", - "Step 5500 [55.00% complete | 0.399 ms/step | 10824.897 ns/day]\n", - "Step 5600 [56.00% complete | 0.399 ms/step | 10839.021 ns/day]\n", - "Step 5700 [57.00% complete | 0.399 ms/step | 10827.610 ns/day]\n", - "Step 5800 [58.00% complete | 0.399 ms/step | 10815.141 ns/day]\n", - "Step 5900 [59.00% complete | 0.399 ms/step | 10824.354 ns/day]\n", - "Step 6000 [60.00% complete | 0.399 ms/step | 10815.411 ns/day]\n", - "Step 6100 [61.00% complete | 0.399 ms/step | 10814.328 ns/day]\n", - "Step 6200 [62.00% complete | 0.399 ms/step | 10823.812 ns/day]\n", - "Step 6300 [63.00% complete | 0.399 ms/step | 10814.601 ns/day]\n", - "Step 6400 [64.00% complete | 0.400 ms/step | 10808.106 ns/day]\n", - "Step 6500 [65.00% complete | 0.399 ms/step | 10839.292 ns/day]\n", - "Step 6600 [66.00% complete | 0.399 ms/step | 10817.037 ns/day]\n", - "Step 6700 [67.00% complete | 0.399 ms/step | 10822.186 ns/day]\n", - "Step 6800 [68.00% complete | 0.400 ms/step | 10802.160 ns/day]\n", - "Step 6900 [69.00% complete | 0.398 ms/step | 10843.918 ns/day]\n", - "Step 7000 [70.00% complete | 0.399 ms/step | 10817.849 ns/day]\n", - "Step 7100 [71.00% complete | 0.399 ms/step | 10825.982 ns/day]\n", - "Step 7200 [72.00% complete | 0.399 ms/step | 10829.511 ns/day]\n", - "Step 7300 [73.00% complete | 0.398 ms/step | 10849.093 ns/day]\n", - "Step 7400 [74.00% complete | 0.400 ms/step | 10809.458 ns/day]\n", - "Step 7500 [75.00% complete | 0.400 ms/step | 10812.434 ns/day]\n", - "Step 7600 [76.00% complete | 0.539 ms/step | 8008.750 ns/day]\n", - "Step 7700 [77.00% complete | 0.401 ms/step | 10780.325 ns/day]\n", - "Step 7800 [78.00% complete | 0.400 ms/step | 10793.523 ns/day]\n", - "Step 7900 [79.00% complete | 0.403 ms/step | 10720.934 ns/day]\n", - "Step 8000 [80.00% complete | 0.400 ms/step | 10788.671 ns/day]\n", - "Step 8100 [81.00% complete | 0.401 ms/step | 10781.133 ns/day]\n", - "Step 8200 [82.00% complete | 0.401 ms/step | 10778.712 ns/day]\n", - "Step 8300 [83.00% complete | 0.399 ms/step | 10815.683 ns/day]\n", - "Step 8400 [84.00% complete | 0.401 ms/step | 10769.308 ns/day]\n", - "Step 8500 [85.00% complete | 0.400 ms/step | 10790.559 ns/day]\n", - "Step 8600 [86.00% complete | 0.399 ms/step | 10832.770 ns/day]\n", - "Step 8700 [87.00% complete | 0.400 ms/step | 10798.380 ns/day]\n", - "Step 8800 [88.00% complete | 0.400 ms/step | 10802.701 ns/day]\n", - "Step 8900 [89.00% complete | 0.400 ms/step | 10810.271 ns/day]\n", - "Step 9000 [90.00% complete | 0.400 ms/step | 10808.106 ns/day]\n", - "Step 9100 [91.00% complete | 0.400 ms/step | 10798.380 ns/day]\n", - "Step 9200 [92.00% complete | 0.400 ms/step | 10794.062 ns/day]\n", - "Step 9300 [93.00% complete | 0.400 ms/step | 10792.445 ns/day]\n", - "Step 9400 [94.00% complete | 0.400 ms/step | 10799.730 ns/day]\n", - "Step 9500 [95.00% complete | 0.400 ms/step | 10798.919 ns/day]\n", - "Step 9600 [96.00% complete | 0.401 ms/step | 10780.057 ns/day]\n", - "Step 9700 [97.00% complete | 0.400 ms/step | 10801.891 ns/day]\n", - "Step 9800 [98.00% complete | 0.400 ms/step | 10798.380 ns/day]\n", - "Step 9900 [99.00% complete | 0.400 ms/step | 10793.793 ns/day]\n", - "Final Step: 10000\n", - "Total Run Time: 4.98s\n" - ] - } - ], + "outputs": [], "source": [ "from arbdmodel import ArbdEngine\n", "from arbdmodel.fjc_polymer_model import FjcModel\n", @@ -367,25 +73,10 @@ }, { "cell_type": "code", - "execution_count": 50, - "id": "36dbf3fd", + "execution_count": null, + "id": "617b8037", "metadata": {}, - "outputs": [ - { - "data": { - "application/vnd.jupyter.widget-view+json": { - "model_id": "011b82fba4904fce821bd71ec080463c", - "version_major": 2, - "version_minor": 0 - }, - "text/plain": [ - "NGLWidget(max_frame=99)" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "import MDAnalysis as mda\n", "import nglview as nv\n", @@ -399,7 +90,7 @@ }, { "cell_type": "markdown", - "id": "1ffad21b", + "id": "6ad4f9e4", "metadata": {}, "source": [ "Let's change the resolution of our model, being aware that the FJC properties are resolution dependent." @@ -407,289 +98,10 @@ }, { "cell_type": "code", - "execution_count": 4, - "id": "efd81531", + "execution_count": null, + "id": "0e15eeeb", "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "arbdmodel: INFO: Running arbd with: /home/cmaffeo2/bin/arbd -g 1 2-linear-fjc-hres.bd output/2-linear-fjc-hres\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - " –––––––––––––––––––––––––––––––––––––––––––––\n", - " | Atomic Resolution Brownian Dynamics |\n", - " –––––––––––––––––––––––––––––––––––––––––––––\n", - "Found 2 GPU(s)\n", - "[0] NVIDIA GeForce RTX 3080 (may timeout) | SM 8.6, 1.71GHz, 7.8GB RAM\n", - "[1] NVIDIA GeForce RTX 3080 | SM 8.6, 1.71GHz, 7.8GB RAM\n", - "Initializing devices... 1\n", - "READER: 0 seed 70594\n", - "READER: 1 timestep 5e-05\n", - "READER: 2 steps 10000\n", - "READER: 3 numberFluct 0 # deprecated\n", - "READER: 4 interparticleForce 1 # other values deprecated\n", - "READER: 5 fullLongRange 0 # deprecated\n", - "READER: 6 temperature 295\n", - "READER: 7 ParticleDynamicType Langevin\n", - "READER: 8 outputPeriod 100.0\n", - "READER: 9 outputEnergyPeriod 100.0\n", - "READER: 10 outputFormat dcd\n", - "READER: 11 decompPeriod 100000\n", - "READER: 12 cutoff 5\n", - "READER: 13 pairlistDistance 10\n", - "READER: 14 origin -500.0 -500.0 -500.0\n", - "READER: 15 systemSize 1000 1000 1000\n", - "READER: 16 particle X\n", - "READER: 17 num 70\n", - "READER: 18 mass 120\n", - "READER: 19 transDamping 40.9 40.9 40.9\n", - "READER: 20 gridFile potentials/null.dx\n", - "READER: 21 inputParticles 2-linear-fjc-hres.particles.txt\n", - "READER: 22 tabulatedPotential 1\n", - "READER: 23 tabulatedBondFile ./potentials/bond-25.000-3.800.dat\n", - "READER: 24 inputBonds potentials/2-linear-fjc-hres.bond.txt\n", - "Read config file 2-linear-fjc-hres.bd\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273a: ./potentials/bond-25.000-3.800.dat\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273b: ./potentials/bond-25.000-3.800.dat\n", - "Reader::getValue(0) 70594\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.0: ./potentials/bond-25.000-3.800.dat\n", - "Parsing seed: 70594\n", - "Reader::getValue(1) 5e-05\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.1: ./potentials/bond-25.000-3.800.dat\n", - "Parsing timestep: 5e-05\n", - "Reader::getValue(2) 10000\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.2: ./potentials/bond-25.000-3.800.dat\n", - "Parsing steps: 10000\n", - "Reader::getValue(3) 0 # deprecated\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.3: ./potentials/bond-25.000-3.800.dat\n", - "Parsing numberFluct: 0 # deprecated\n", - "Reader::getValue(4) 1 # other values deprecated\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.4: ./potentials/bond-25.000-3.800.dat\n", - "Parsing interparticleForce: 1 # other values deprecated\n", - "Reader::getValue(5) 0 # deprecated\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.5: ./potentials/bond-25.000-3.800.dat\n", - "Parsing fullLongRange: 0 # deprecated\n", - "Reader::getValue(6) 295\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.6: ./potentials/bond-25.000-3.800.dat\n", - "Parsing temperature: 295\n", - "Reader::getValue(7) Langevin\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.7: ./potentials/bond-25.000-3.800.dat\n", - "Parsing ParticleDynamicType: Langevin\n", - "Reader::getValue(8) 100.0\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.8: ./potentials/bond-25.000-3.800.dat\n", - "Parsing outputPeriod: 100.0\n", - "Reader::getValue(9) 100.0\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.9: ./potentials/bond-25.000-3.800.dat\n", - "Parsing outputEnergyPeriod: 100.0\n", - "Reader::getValue(10) dcd\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.10: ./potentials/bond-25.000-3.800.dat\n", - "Parsing outputFormat: dcd\n", - "Reader::getValue(11) 100000\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.11: ./potentials/bond-25.000-3.800.dat\n", - "Parsing decompPeriod: 100000\n", - "Reader::getValue(12) 5\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.12: ./potentials/bond-25.000-3.800.dat\n", - "Parsing cutoff: 5\n", - "Reader::getValue(13) 10\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.13: ./potentials/bond-25.000-3.800.dat\n", - "Parsing pairlistDistance: 10\n", - "Reader::getValue(14) -500.0 -500.0 -500.0\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.14: ./potentials/bond-25.000-3.800.dat\n", - "Parsing origin: -500.0 -500.0 -500.0\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.15: ./potentials/bond-25.000-3.800.dat\n", - "Parsing systemSize: 1000 1000 1000\n", - "Reader::getValue(16) X\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.16: ./potentials/bond-25.000-3.800.dat\n", - "Parsing particle: X\n", - "Reader::getValue(17) 70\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.17: ./potentials/bond-25.000-3.800.dat\n", - "Parsing num: 70\n", - "Reader::getValue(18) 120\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.18: ./potentials/bond-25.000-3.800.dat\n", - "Parsing mass: 120\n", - "Reader::getValue(19) 40.9 40.9 40.9\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.19: ./potentials/bond-25.000-3.800.dat\n", - "Parsing transDamping: 40.9 40.9 40.9\n", - "Reader::getValue(20) potentials/null.dx\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.20: ./potentials/bond-25.000-3.800.dat\n", - "Parsing gridFile: potentials/null.dx\n", - "The grid file name potentials/null.dx\n", - "potentials/null.dx Reader::getValue(21) 2-linear-fjc-hres.particles.txt\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.21: ./potentials/bond-25.000-3.800.dat\n", - "Parsing inputParticles: 2-linear-fjc-hres.particles.txt\n", - "Reader::getValue(22) 1\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.22: ./potentials/bond-25.000-3.800.dat\n", - "Parsing tabulatedPotential: 1\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.23: ./potentials/bond-25.000-3.800.dat\n", - "Parsing tabulatedBondFile: ./potentials/bond-25.000-3.800.dat\n", - "Reader::getValue(24) potentials/2-linear-fjc-hres.bond.txt\n", - "Reader::getValue(23) ./potentials/bond-25.000-3.800.dat\n", - "Value 273.24: ./potentials/bond-25.000-3.800.dat\n", - "Parsing inputBonds: potentials/2-linear-fjc-hres.bond.txt\n", - "\n", - "70 particles\n", - "0 particles attached to RBs\n", - "0 groups\n", - "\n", - "Found 1 particle types.\n", - "Loading the potential grids...\n", - "Built 138 exclusions.\n", - "\n", - "Cutting off the potential from 3 to 5.\n", - "Copying particle grids to GPU 1\n", - "Copying particle data to GPU 1\n", - "56\n", - "Setting up random number generator with seed 70594\n", - "Created Cell Decomposition (67, 67, 67)\n", - "Loading 1 tabulated non-bonded potentials...\n", - "Using 69 non-bonded exclusions\n", - "Loading 1 tabulated bond potentials...\n", - "Configuration: 70 particles | 1 replicas\n", - "\n", - "Step 100 [1.00% complete | 0.494 ms/step | 8747.595 ns/day]\n", - "Step 200 [2.00% complete | 0.399 ms/step | 10819.204 ns/day]\n", - "Step 300 [3.00% complete | 0.400 ms/step | 10802.971 ns/day]\n", - "Step 400 [4.00% complete | 0.400 ms/step | 10798.380 ns/day]\n", - "Step 500 [5.00% complete | 0.399 ms/step | 10840.108 ns/day]\n", - "Step 600 [6.00% complete | 0.399 ms/step | 10815.411 ns/day]\n", - "Step 700 [7.00% complete | 0.400 ms/step | 10810.539 ns/day]\n", - "Step 800 [8.00% complete | 0.402 ms/step | 10758.579 ns/day]\n", - "Step 900 [9.00% complete | 0.400 ms/step | 10808.377 ns/day]\n", - "Step 1000 [10.00% complete | 0.373 ms/step | 11566.885 ns/day]\n", - "Step 1100 [11.00% complete | 0.457 ms/step | 9451.920 ns/day]\n", - "Step 1200 [12.00% complete | 0.400 ms/step | 10802.160 ns/day]\n", - "Step 1300 [13.00% complete | 0.400 ms/step | 10809.458 ns/day]\n", - "Step 1400 [14.00% complete | 0.400 ms/step | 10803.511 ns/day]\n", - "Step 1500 [15.00% complete | 0.399 ms/step | 10826.796 ns/day]\n", - "Step 1600 [16.00% complete | 0.399 ms/step | 10815.141 ns/day]\n", - "Step 1700 [17.00% complete | 0.399 ms/step | 10824.084 ns/day]\n", - "Step 1800 [18.00% complete | 0.400 ms/step | 10811.081 ns/day]\n", - "Step 1900 [19.00% complete | 0.398 ms/step | 10849.637 ns/day]\n", - "Step 2000 [20.00% complete | 0.399 ms/step | 10817.849 ns/day]\n", - "Step 2100 [21.00% complete | 0.398 ms/step | 10846.641 ns/day]\n", - "Step 2200 [22.00% complete | 0.399 ms/step | 10819.204 ns/day]\n", - "Step 2300 [23.00% complete | 0.399 ms/step | 10839.564 ns/day]\n", - "Step 2400 [24.00% complete | 0.399 ms/step | 10829.782 ns/day]\n", - "Step 2500 [25.00% complete | 0.399 ms/step | 10816.495 ns/day]\n", - "Step 2600 [26.00% complete | 0.399 ms/step | 10820.830 ns/day]\n", - "Step 2700 [27.00% complete | 0.399 ms/step | 10822.999 ns/day]\n", - "Step 2800 [28.00% complete | 0.399 ms/step | 10819.746 ns/day]\n", - "Step 2900 [29.00% complete | 0.399 ms/step | 10822.186 ns/day]\n", - "Step 3000 [30.00% complete | 0.400 ms/step | 10795.141 ns/day]\n", - "Step 3100 [31.00% complete | 0.399 ms/step | 10820.560 ns/day]\n", - "Step 3200 [32.00% complete | 0.399 ms/step | 10831.410 ns/day]\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Step 3300 [33.00% complete | 0.399 ms/step | 10836.301 ns/day]\n", - "Step 3400 [34.00% complete | 0.399 ms/step | 10824.354 ns/day]\n", - "Step 3500 [35.00% complete | 0.399 ms/step | 10826.525 ns/day]\n", - "Step 3600 [36.00% complete | 0.399 ms/step | 10824.084 ns/day]\n", - "Step 3700 [37.00% complete | 0.400 ms/step | 10802.701 ns/day]\n", - "Step 3800 [38.00% complete | 0.400 ms/step | 10808.646 ns/day]\n", - "Step 3900 [39.00% complete | 0.399 ms/step | 10814.328 ns/day]\n", - "Step 4000 [40.00% complete | 0.399 ms/step | 10821.914 ns/day]\n", - "Step 4100 [41.00% complete | 0.400 ms/step | 10792.175 ns/day]\n", - "Step 4200 [42.00% complete | 0.400 ms/step | 10809.998 ns/day]\n", - "Step 4300 [43.00% complete | 0.400 ms/step | 10806.483 ns/day]\n", - "Step 4400 [44.00% complete | 0.399 ms/step | 10818.662 ns/day]\n", - "Step 4500 [45.00% complete | 0.400 ms/step | 10798.380 ns/day]\n", - "Step 4600 [46.00% complete | 0.400 ms/step | 10804.052 ns/day]\n", - "Step 4700 [47.00% complete | 0.399 ms/step | 10817.849 ns/day]\n", - "Step 4800 [48.00% complete | 0.399 ms/step | 10814.870 ns/day]\n", - "Step 4900 [49.00% complete | 0.399 ms/step | 10817.037 ns/day]\n", - "Step 5000 [50.00% complete | 0.399 ms/step | 10821.914 ns/day]\n", - "Step 5100 [51.00% complete | 0.399 ms/step | 10828.967 ns/day]\n", - "Step 5200 [52.00% complete | 0.399 ms/step | 10836.573 ns/day]\n", - "Step 5300 [53.00% complete | 0.399 ms/step | 10827.067 ns/day]\n", - "Step 5400 [54.00% complete | 0.398 ms/step | 10840.652 ns/day]\n", - "Step 5500 [55.00% complete | 0.399 ms/step | 10840.108 ns/day]\n", - "Step 5600 [56.00% complete | 0.529 ms/step | 8164.345 ns/day]\n", - "Step 5700 [57.00% complete | 0.399 ms/step | 10824.626 ns/day]\n", - "Step 5800 [58.00% complete | 0.401 ms/step | 10771.725 ns/day]\n", - "Step 5900 [59.00% complete | 0.400 ms/step | 10807.295 ns/day]\n", - "Step 6000 [60.00% complete | 0.400 ms/step | 10793.523 ns/day]\n", - "Step 6100 [61.00% complete | 0.400 ms/step | 10811.623 ns/day]\n", - "Step 6200 [62.00% complete | 0.400 ms/step | 10793.254 ns/day]\n", - "Step 6300 [63.00% complete | 0.400 ms/step | 10790.827 ns/day]\n", - "Step 6400 [64.00% complete | 0.400 ms/step | 10794.602 ns/day]\n", - "Step 6500 [65.00% complete | 0.400 ms/step | 10801.079 ns/day]\n", - "Step 6600 [66.00% complete | 0.401 ms/step | 10776.561 ns/day]\n", - "Step 6700 [67.00% complete | 0.401 ms/step | 10776.829 ns/day]\n", - "Step 6800 [68.00% complete | 0.401 ms/step | 10780.325 ns/day]\n", - "Step 6900 [69.00% complete | 0.400 ms/step | 10800.811 ns/day]\n", - "Step 7000 [70.00% complete | 0.401 ms/step | 10780.325 ns/day]\n", - "Step 7100 [71.00% complete | 0.401 ms/step | 10763.940 ns/day]\n", - "Step 7200 [72.00% complete | 0.400 ms/step | 10787.864 ns/day]\n", - "Step 7300 [73.00% complete | 0.400 ms/step | 10806.214 ns/day]\n", - "Step 7400 [74.00% complete | 0.400 ms/step | 10802.160 ns/day]\n", - "Step 7500 [75.00% complete | 0.401 ms/step | 10763.940 ns/day]\n", - "Step 7600 [76.00% complete | 0.401 ms/step | 10783.824 ns/day]\n", - "Step 7700 [77.00% complete | 0.400 ms/step | 10793.793 ns/day]\n", - "Step 7800 [78.00% complete | 0.401 ms/step | 10762.331 ns/day]\n", - "Step 7900 [79.00% complete | 0.401 ms/step | 10767.965 ns/day]\n", - "Step 8000 [80.00% complete | 0.402 ms/step | 10742.260 ns/day]\n", - "Step 8100 [81.00% complete | 0.402 ms/step | 10745.199 ns/day]\n", - "Step 8200 [82.00% complete | 0.401 ms/step | 10762.868 ns/day]\n", - "Step 8300 [83.00% complete | 0.400 ms/step | 10786.786 ns/day]\n", - "Step 8400 [84.00% complete | 0.401 ms/step | 10773.605 ns/day]\n", - "Step 8500 [85.00% complete | 0.401 ms/step | 10767.428 ns/day]\n", - "Step 8600 [86.00% complete | 0.400 ms/step | 10804.052 ns/day]\n", - "Step 8700 [87.00% complete | 0.400 ms/step | 10795.951 ns/day]\n", - "Step 8800 [88.00% complete | 0.401 ms/step | 10763.940 ns/day]\n", - "Step 8900 [89.00% complete | 0.400 ms/step | 10794.062 ns/day]\n", - "Step 9000 [90.00% complete | 0.403 ms/step | 10714.285 ns/day]\n", - "Step 9100 [91.00% complete | 0.401 ms/step | 10777.099 ns/day]\n", - "Step 9200 [92.00% complete | 0.401 ms/step | 10771.725 ns/day]\n", - "Step 9300 [93.00% complete | 0.401 ms/step | 10781.133 ns/day]\n", - "Step 9400 [94.00% complete | 0.401 ms/step | 10784.900 ns/day]\n", - "Step 9500 [95.00% complete | 0.401 ms/step | 10773.605 ns/day]\n", - "Step 9600 [96.00% complete | 0.400 ms/step | 10788.671 ns/day]\n", - "Step 9700 [97.00% complete | 0.401 ms/step | 10785.439 ns/day]\n", - "Step 9800 [98.00% complete | 0.401 ms/step | 10773.873 ns/day]\n", - "Step 9900 [99.00% complete | 0.401 ms/step | 10776.022 ns/day]\n", - "Final Step: 10000\n", - "Total Run Time: 4.98s\n" - ] - } - ], + "outputs": [], "source": [ "from arbdmodel.coords import read_arbd_coordinates\n", "\n", @@ -706,27 +118,12 @@ }, { "cell_type": "code", - "execution_count": 51, - "id": "a93dacea", + "execution_count": null, + "id": "94392d8e", "metadata": { "scrolled": true }, - "outputs": [ - { - "data": { - "application/vnd.jupyter.widget-view+json": { - "model_id": "4062674c28464fc59135c23ed6f1cf06", - "version_major": 2, - "version_minor": 0 - }, - "text/plain": [ - "NGLWidget(max_frame=99)" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "u = mda.Universe(\"sims/2-polymer/2-linear-fjc-hres.psf\", \"sims/2-polymer/output/2-linear-fjc-hres.dcd\")\n", "w = nv.show_mdanalysis(u, multipleBonds=False)\n", @@ -738,7 +135,7 @@ }, { "cell_type": "markdown", - "id": "a1f221f3", + "id": "700427a9", "metadata": {}, "source": [ "Let's reuse our polymer object with a better model of a disordered peptide, the hydrophobicity scale model" @@ -746,19 +143,10 @@ }, { "cell_type": "code", - "execution_count": 52, - "id": "c919eeeb", + "execution_count": null, + "id": "486113c5", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Number of points used to represent the polymer path before update: 72\n", - "Number of points used to represent the polymer path after update: 72\n" - ] - } - ], + "outputs": [], "source": [ "print(f'Number of points used to represent the polymer path before update: {len(polymer.position_spline_params[0][0])}')\n", "c = read_arbd_coordinates('sims/2-polymer/output/2-linear-fjc-hres.restart')\n", @@ -768,294 +156,10 @@ }, { "cell_type": "code", - "execution_count": 7, - "id": "8acd708b", + "execution_count": null, + "id": "82428ee9", "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "arbdmodel: INFO: Running arbd with: /home/cmaffeo2/bin/arbd -g 1 3-linear-hps.bd output/3-linear-hps\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - " –––––––––––––––––––––––––––––––––––––––––––––\n", - " | Atomic Resolution Brownian Dynamics |\n", - " –––––––––––––––––––––––––––––––––––––––––––––\n", - "Found 2 GPU(s)\n", - "[0] NVIDIA GeForce RTX 3080 (may timeout) | SM 8.6, 1.71GHz, 7.8GB RAM\n", - "[1] NVIDIA GeForce RTX 3080 | SM 8.6, 1.71GHz, 7.8GB RAM\n", - "Initializing devices... 1\n", - "READER: 0 seed 69747\n", - "READER: 1 timestep 1e-05\n", - "READER: 2 steps 10000\n", - "READER: 3 numberFluct 0 # deprecated\n", - "READER: 4 interparticleForce 1 # other values deprecated\n", - "READER: 5 fullLongRange 0 # deprecated\n", - "READER: 6 temperature 295\n", - "READER: 7 ParticleDynamicType Langevin\n", - "READER: 8 outputPeriod 100.0\n", - "READER: 9 outputEnergyPeriod 100.0\n", - "READER: 10 outputFormat dcd\n", - "READER: 11 decompPeriod 1000\n", - "READER: 12 cutoff 40\n", - "READER: 13 pairlistDistance 10\n", - "READER: 14 origin -500.0 -500.0 -500.0\n", - "READER: 15 systemSize 1000 1000 1000\n", - "READER: 16 particle ALA\n", - "READER: 17 num 70\n", - "READER: 18 mass 71.08\n", - "READER: 19 transDamping 10 10 10\n", - "READER: 20 gridFile potentials/null.dx\n", - "READER: 21 inputParticles 3-linear-hps.particles.txt\n", - "READER: 22 tabulatedPotential 1\n", - "READER: 23 tabulatedFile 0@0@potentials/3-linear-hps-nb.ALA-ALA.dat\n", - "READER: 24 tabulatedBondFile ./potentials/bond-2.390-3.800.dat\n", - "READER: 25 inputBonds potentials/3-linear-hps.bond.txt\n", - "Read config file 3-linear-hps.bd\n", - "Reader::getValue(13) 10\n", - "Value 273a: 10\n", - "Reader::getValue(13) 10\n", - "Value 273b: 10\n", - "Reader::getValue(0) 69747\n", - "Reader::getValue(13) 10\n", - "Value 273.0: 10\n", - "Parsing seed: 69747\n", - "Reader::getValue(1) 1e-05\n", - "Reader::getValue(13) 10\n", - "Value 273.1: 10\n", - "Parsing timestep: 1e-05\n", - "Reader::getValue(2) 10000\n", - "Reader::getValue(13) 10\n", - "Value 273.2: 10\n", - "Parsing steps: 10000\n", - "Reader::getValue(3) 0 # deprecated\n", - "Reader::getValue(13) 10\n", - "Value 273.3: 10\n", - "Parsing numberFluct: 0 # deprecated\n", - "Reader::getValue(4) 1 # other values deprecated\n", - "Reader::getValue(13) 10\n", - "Value 273.4: 10\n", - "Parsing interparticleForce: 1 # other values deprecated\n", - "Reader::getValue(5) 0 # deprecated\n", - "Reader::getValue(13) 10\n", - "Value 273.5: 10\n", - "Parsing fullLongRange: 0 # deprecated\n", - "Reader::getValue(6) 295\n", - "Reader::getValue(13) 10\n", - "Value 273.6: 10\n", - "Parsing temperature: 295\n", - "Reader::getValue(7) Langevin\n", - "Reader::getValue(13) 10\n", - "Value 273.7: 10\n", - "Parsing ParticleDynamicType: Langevin\n", - "Reader::getValue(8) 100.0\n", - "Reader::getValue(13) 10\n", - "Value 273.8: 10\n", - "Parsing outputPeriod: 100.0\n", - "Reader::getValue(9) 100.0\n", - "Reader::getValue(13) 10\n", - "Value 273.9: 10\n", - "Parsing outputEnergyPeriod: 100.0\n", - "Reader::getValue(10) dcd\n", - "Reader::getValue(13) 10\n", - "Value 273.10: 10\n", - "Parsing outputFormat: dcd\n", - "Reader::getValue(11) 1000\n", - "Reader::getValue(13) 10\n", - "Value 273.11: 10\n", - "Parsing decompPeriod: 1000\n", - "Reader::getValue(12) 40\n", - "Reader::getValue(13) 10\n", - "Value 273.12: 10\n", - "Parsing cutoff: 40\n", - "Reader::getValue(13) 10\n", - "Reader::getValue(13) 10\n", - "Value 273.13: 10\n", - "Parsing pairlistDistance: 10\n", - "Reader::getValue(14) -500.0 -500.0 -500.0\n", - "Reader::getValue(13) 10\n", - "Value 273.14: 10\n", - "Parsing origin: -500.0 -500.0 -500.0\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Reader::getValue(13) 10\n", - "Value 273.15: 10\n", - "Parsing systemSize: 1000 1000 1000\n", - "Reader::getValue(16) ALA\n", - "Reader::getValue(13) 10\n", - "Value 273.16: 10\n", - "Parsing particle: ALA\n", - "Reader::getValue(17) 70\n", - "Reader::getValue(13) 10\n", - "Value 273.17: 10\n", - "Parsing num: 70\n", - "Reader::getValue(18) 71.08\n", - "Reader::getValue(13) 10\n", - "Value 273.18: 10\n", - "Parsing mass: 71.08\n", - "Reader::getValue(19) 10 10 10\n", - "Reader::getValue(13) 10\n", - "Value 273.19: 10\n", - "Parsing transDamping: 10 10 10\n", - "Reader::getValue(20) potentials/null.dx\n", - "Reader::getValue(13) 10\n", - "Value 273.20: 10\n", - "Parsing gridFile: potentials/null.dx\n", - "The grid file name potentials/null.dx\n", - "potentials/null.dx Reader::getValue(21) 3-linear-hps.particles.txt\n", - "Reader::getValue(13) 10\n", - "Value 273.21: 10\n", - "Parsing inputParticles: 3-linear-hps.particles.txt\n", - "Reader::getValue(22) 1\n", - "Reader::getValue(13) 10\n", - "Value 273.22: 10\n", - "Parsing tabulatedPotential: 1\n", - "Reader::getValue(23) 0@0@potentials/3-linear-hps-nb.ALA-ALA.dat\n", - "Reader::getValue(13) 10\n", - "Value 273.23: 10\n", - "Parsing tabulatedFile: 0@0@potentials/3-linear-hps-nb.ALA-ALA.dat\n", - "Reader::getValue(24) ./potentials/bond-2.390-3.800.dat\n", - "Reader::getValue(13) 10\n", - "Value 273.24: 10\n", - "Parsing tabulatedBondFile: ./potentials/bond-2.390-3.800.dat\n", - "Reader::getValue(25) potentials/3-linear-hps.bond.txt\n", - "Reader::getValue(13) 10\n", - "Value 273.25: 10\n", - "Parsing inputBonds: potentials/3-linear-hps.bond.txt\n", - "\n", - "70 particles\n", - "0 particles attached to RBs\n", - "0 groups\n", - "\n", - "Found 1 particle types.\n", - "Loading the potential grids...\n", - "Built 138 exclusions.\n", - "\n", - "Cutting off the potential from 38 to 40.\n", - "Copying particle grids to GPU 1\n", - "Copying particle data to GPU 1\n", - "56\n", - "Setting up random number generator with seed 69747\n", - "Created Cell Decomposition (20, 20, 20)\n", - "Loading 1 tabulated non-bonded potentials...\n", - "Using 69 non-bonded exclusions\n", - "Loading 1 tabulated bond potentials...\n", - "Configuration: 70 particles | 1 replicas\n", - "\n", - "Step 100 [1.00% complete | 0.435 ms/step | 1984.063 ns/day]\n", - "Step 200 [2.00% complete | 0.400 ms/step | 2158.812 ns/day]\n", - "Step 300 [3.00% complete | 0.399 ms/step | 2164.491 ns/day]\n", - "Step 400 [4.00% complete | 0.400 ms/step | 2162.216 ns/day]\n", - "Step 500 [5.00% complete | 0.538 ms/step | 1607.233 ns/day]\n", - "Step 600 [6.00% complete | 0.399 ms/step | 2166.336 ns/day]\n", - "Step 700 [7.00% complete | 0.400 ms/step | 2162.433 ns/day]\n", - "Step 800 [8.00% complete | 0.400 ms/step | 2161.513 ns/day]\n", - "Step 900 [9.00% complete | 0.399 ms/step | 2166.608 ns/day]\n", - "Step 1000 [10.00% complete | 0.416 ms/step | 2079.122 ns/day]\n", - "Step 1100 [11.00% complete | 0.400 ms/step | 2161.892 ns/day]\n", - "Step 1200 [12.00% complete | 0.401 ms/step | 2156.065 ns/day]\n", - "Step 1300 [13.00% complete | 0.401 ms/step | 2156.388 ns/day]\n", - "Step 1400 [14.00% complete | 0.400 ms/step | 2159.460 ns/day]\n", - "Step 1500 [15.00% complete | 0.399 ms/step | 2162.920 ns/day]\n", - "Step 1600 [16.00% complete | 0.400 ms/step | 2158.327 ns/day]\n", - "Step 1700 [17.00% complete | 0.400 ms/step | 2158.166 ns/day]\n", - "Step 1800 [18.00% complete | 0.400 ms/step | 2160.540 ns/day]\n", - "Step 1900 [19.00% complete | 0.400 ms/step | 2161.513 ns/day]\n", - "Step 2000 [20.00% complete | 0.417 ms/step | 2072.340 ns/day]\n", - "Step 2100 [21.00% complete | 0.400 ms/step | 2158.489 ns/day]\n", - "Step 2200 [22.00% complete | 0.400 ms/step | 2161.567 ns/day]\n", - "Step 2300 [23.00% complete | 0.399 ms/step | 2165.956 ns/day]\n", - "Step 2400 [24.00% complete | 0.400 ms/step | 2160.270 ns/day]\n", - "Step 2500 [25.00% complete | 0.399 ms/step | 2165.576 ns/day]\n", - "Step 2600 [26.00% complete | 0.399 ms/step | 2165.251 ns/day]\n", - "Step 2700 [27.00% complete | 0.400 ms/step | 2161.513 ns/day]\n", - "Step 2800 [28.00% complete | 0.400 ms/step | 2159.730 ns/day]\n", - "Step 2900 [29.00% complete | 0.399 ms/step | 2164.654 ns/day]\n", - "Step 3000 [30.00% complete | 0.416 ms/step | 2075.526 ns/day]\n", - "Step 3100 [31.00% complete | 0.401 ms/step | 2156.011 ns/day]\n", - "Step 3200 [32.00% complete | 0.400 ms/step | 2162.487 ns/day]\n", - "Step 3300 [33.00% complete | 0.400 ms/step | 2162.162 ns/day]\n", - "Step 3400 [34.00% complete | 0.400 ms/step | 2161.351 ns/day]\n", - "Step 3500 [35.00% complete | 0.400 ms/step | 2160.702 ns/day]\n", - "Step 3600 [36.00% complete | 0.400 ms/step | 2159.622 ns/day]\n", - "Step 3700 [37.00% complete | 0.400 ms/step | 2160.918 ns/day]\n", - "Step 3800 [38.00% complete | 0.400 ms/step | 2159.676 ns/day]\n", - "Step 3900 [39.00% complete | 0.399 ms/step | 2166.119 ns/day]\n", - "Step 4000 [40.00% complete | 0.416 ms/step | 2075.975 ns/day]\n", - "Step 4100 [41.00% complete | 0.508 ms/step | 1702.262 ns/day]\n", - "Step 4200 [42.00% complete | 0.401 ms/step | 2154.291 ns/day]\n", - "Step 4300 [43.00% complete | 0.401 ms/step | 2153.110 ns/day]\n", - "Step 4400 [44.00% complete | 0.400 ms/step | 2158.974 ns/day]\n", - "Step 4500 [45.00% complete | 0.400 ms/step | 2159.406 ns/day]\n", - "Step 4600 [46.00% complete | 0.504 ms/step | 1715.273 ns/day]\n", - "Step 4700 [47.00% complete | 0.402 ms/step | 2151.073 ns/day]\n", - "Step 4800 [48.00% complete | 0.401 ms/step | 2154.721 ns/day]\n", - "Step 4900 [49.00% complete | 0.401 ms/step | 2155.527 ns/day]\n", - "Step 5000 [50.00% complete | 0.417 ms/step | 2070.006 ns/day]\n", - "Step 5100 [51.00% complete | 0.400 ms/step | 2158.381 ns/day]\n", - "Step 5200 [52.00% complete | 0.401 ms/step | 2154.506 ns/day]\n", - "Step 5300 [53.00% complete | 0.400 ms/step | 2160.486 ns/day]\n", - "Step 5400 [54.00% complete | 0.400 ms/step | 2158.866 ns/day]\n", - "Step 5500 [55.00% complete | 0.400 ms/step | 2160.216 ns/day]\n", - "Step 5600 [56.00% complete | 0.400 ms/step | 2159.676 ns/day]\n", - "Step 5700 [57.00% complete | 0.400 ms/step | 2159.514 ns/day]\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Step 5800 [58.00% complete | 0.401 ms/step | 2156.334 ns/day]\n", - "Step 5900 [59.00% complete | 0.400 ms/step | 2159.244 ns/day]\n", - "Step 6000 [60.00% complete | 0.417 ms/step | 2072.042 ns/day]\n", - "Step 6100 [61.00% complete | 0.400 ms/step | 2158.327 ns/day]\n", - "Step 6200 [62.00% complete | 0.400 ms/step | 2158.058 ns/day]\n", - "Step 6300 [63.00% complete | 0.401 ms/step | 2156.442 ns/day]\n", - "Step 6400 [64.00% complete | 0.400 ms/step | 2160.108 ns/day]\n", - "Step 6500 [65.00% complete | 0.401 ms/step | 2156.011 ns/day]\n", - "Step 6600 [66.00% complete | 0.401 ms/step | 2156.119 ns/day]\n", - "Step 6700 [67.00% complete | 0.400 ms/step | 2161.675 ns/day]\n", - "Step 6800 [68.00% complete | 0.401 ms/step | 2156.281 ns/day]\n", - "Step 6900 [69.00% complete | 0.401 ms/step | 2156.011 ns/day]\n", - "Step 7000 [70.00% complete | 0.418 ms/step | 2068.767 ns/day]\n", - "Step 7100 [71.00% complete | 0.400 ms/step | 2160.918 ns/day]\n", - "Step 7200 [72.00% complete | 0.400 ms/step | 2160.216 ns/day]\n", - "Step 7300 [73.00% complete | 0.400 ms/step | 2161.459 ns/day]\n", - "Step 7400 [74.00% complete | 0.400 ms/step | 2160.000 ns/day]\n", - "Step 7500 [75.00% complete | 0.400 ms/step | 2161.459 ns/day]\n", - "Step 7600 [76.00% complete | 0.400 ms/step | 2157.465 ns/day]\n", - "Step 7700 [77.00% complete | 0.400 ms/step | 2158.759 ns/day]\n", - "Step 7800 [78.00% complete | 0.400 ms/step | 2160.324 ns/day]\n", - "Step 7900 [79.00% complete | 0.400 ms/step | 2158.381 ns/day]\n", - "Step 8000 [80.00% complete | 0.416 ms/step | 2074.928 ns/day]\n", - "Step 8100 [81.00% complete | 0.400 ms/step | 2160.702 ns/day]\n", - "Step 8200 [82.00% complete | 0.401 ms/step | 2155.151 ns/day]\n", - "Step 8300 [83.00% complete | 0.400 ms/step | 2159.622 ns/day]\n", - "Step 8400 [84.00% complete | 0.400 ms/step | 2158.435 ns/day]\n", - "Step 8500 [85.00% complete | 0.399 ms/step | 2163.245 ns/day]\n", - "Step 8600 [86.00% complete | 0.399 ms/step | 2163.732 ns/day]\n", - "Step 8700 [87.00% complete | 0.400 ms/step | 2157.788 ns/day]\n", - "Step 8800 [88.00% complete | 0.401 ms/step | 2153.861 ns/day]\n", - "Step 8900 [89.00% complete | 0.400 ms/step | 2161.675 ns/day]\n", - "Step 9000 [90.00% complete | 0.558 ms/step | 1549.276 ns/day]\n", - "Step 9100 [91.00% complete | 0.401 ms/step | 2153.969 ns/day]\n", - "Step 9200 [92.00% complete | 0.401 ms/step | 2153.432 ns/day]\n", - "Step 9300 [93.00% complete | 0.400 ms/step | 2158.219 ns/day]\n", - "Step 9400 [94.00% complete | 0.401 ms/step | 2154.828 ns/day]\n", - "Step 9500 [95.00% complete | 0.396 ms/step | 2182.700 ns/day]\n", - "Step 9600 [96.00% complete | 0.401 ms/step | 2156.334 ns/day]\n", - "Step 9700 [97.00% complete | 0.401 ms/step | 2153.271 ns/day]\n", - "Step 9800 [98.00% complete | 0.401 ms/step | 2156.711 ns/day]\n", - "Step 9900 [99.00% complete | 0.401 ms/step | 2153.915 ns/day]\n", - "Final Step: 10000\n", - "Total Run Time: 5.10s\n" - ] - } - ], + "outputs": [], "source": [ "from arbdmodel.hps_polymer_model import HpsModel\n", "\n", @@ -1069,31 +173,16 @@ }, { "cell_type": "code", - "execution_count": 8, - "id": "22f35783", - "metadata": {}, - "outputs": [ - { - "data": { - "application/vnd.jupyter.widget-view+json": { - "model_id": "011ef7dcc85144bd969f85966ff5a91d", - "version_major": 2, - "version_minor": 0 - }, - "text/plain": [ - "NGLWidget(max_frame=99)" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "execution_count": null, + "id": "cffd5456", + "metadata": { + "scrolled": true + }, + "outputs": [], "source": [ "u = mda.Universe(\"sims/2-polymer/3-linear-hps.psf\", \"sims/2-polymer/output/3-linear-hps.dcd\")\n", - "# ipdb.runcall(nv.show_mdanalysis, u)\n", "w = nv.show_mdanalysis(u)\n", "w.clear_representations()\n", - "# ipdb.runcall(w.add_ball_and_stick, 'all')\n", "w.add_ball_and_stick(\"all\",radius=2)\n", "w.center()\n", "w" @@ -1101,390 +190,12 @@ }, { "cell_type": "code", - "execution_count": 9, - "id": "e6f8d5eb", - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "arbdmodel: WARNING: KhBeads processing a polymer without 'idp_array' attribute set (boolean numpy array with one True/False value per amino acid with True corresponding to IDP... Assuming all amino acids are IDP.\n", - "arbdmodel: WARNING: Combining attribute timestep: 1e-05 != 5e-05, using 1e-05\n", - "arbdmodel: WARNING: Combining attribute cutoff: 40 != 5, using 40\n", - "arbdmodel: WARNING: Combining attribute decomp_period: 1000 != 100000, using 1000\n", - "arbdmodel: WARNING: Combining attribute timestep: 2e-05 != 1e-05, using 1e-05\n", - "arbdmodel: WARNING: Combining attribute cutoff: 50 != 40, using 50\n", - "arbdmodel: INFO: Running arbd with: /home/cmaffeo2/bin/arbd -g 1 4-linear-combined.bd output/4-linear-combined\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - " –––––––––––––––––––––––––––––––––––––––––––––\n", - " | Atomic Resolution Brownian Dynamics |\n", - " –––––––––––––––––––––––––––––––––––––––––––––\n", - "Found 2 GPU(s)\n", - "[0] NVIDIA GeForce RTX 3080 (may timeout) | SM 8.6, 1.71GHz, 7.8GB RAM\n", - "[1] NVIDIA GeForce RTX 3080 | SM 8.6, 1.71GHz, 7.8GB RAM\n", - "Initializing devices... 1\n", - "READER: 0 seed 69859\n", - "READER: 1 timestep 1e-05\n", - "READER: 2 steps 10000\n", - "READER: 3 numberFluct 0 # deprecated\n", - "READER: 4 interparticleForce 1 # other values deprecated\n", - "READER: 5 fullLongRange 0 # deprecated\n", - "READER: 6 temperature 295\n", - "READER: 7 ParticleDynamicType Langevin\n", - "READER: 8 outputPeriod 100.0\n", - "READER: 9 outputEnergyPeriod 100.0\n", - "READER: 10 outputFormat dcd\n", - "READER: 11 decompPeriod 1000\n", - "READER: 12 cutoff 50\n", - "READER: 13 pairlistDistance 10\n", - "READER: 14 origin -500.0 -500.0 -500.0\n", - "READER: 15 systemSize 1000 1000 1000\n", - "READER: 16 particle ALA\n", - "READER: 17 num 70\n", - "READER: 18 mass 71.08\n", - "READER: 19 transDamping 10 10 10\n", - "READER: 20 gridFile potentials/null.dx\n", - "READER: 21 particle ALAIDP\n", - "READER: 22 num 70\n", - "READER: 23 mass 71.08\n", - "READER: 24 transDamping 10 10 10\n", - "READER: 25 gridFile potentials/null.dx\n", - "READER: 26 particle X\n", - "READER: 27 num 70\n", - "READER: 28 mass 120\n", - "READER: 29 transDamping 40.9 40.9 40.9\n", - "READER: 30 gridFile potentials/null.dx\n", - "READER: 31 inputParticles 4-linear-combined.particles.txt\n", - "READER: 32 tabulatedPotential 1\n", - "READER: 33 tabulatedBondFile ./potentials/bond-2.390-3.800.dat\n", - "READER: 34 tabulatedBondFile ./potentials/bond-38.423-3.800.dat\n", - "READER: 35 tabulatedBondFile ./potentials/bond-2.390-3.800.dat\n", - "READER: 36 tabulatedBondFile ./potentials/bond-25.000-3.800.dat\n", - "READER: 37 tabulatedAngleFile /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/onck_model_potentials/bend_OXY.txt\n", - "READER: 38 tabulatedDihedralFile /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/onck_model_potentials/dih_XX.txt\n", - "READER: 39 inputBonds potentials/4-linear-combined.bond.txt\n", - "READER: 40 inputAngles potentials/4-linear-combined.angle.txt\n", - "READER: 41 inputDihedrals potentials/4-linear-combined.dihedral.txt\n", - "READER: 42 inputExcludes potentials/4-linear-combined.exclusion.txt\n", - "Read config file 4-linear-combined.bd\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273a: 1000 1000 1000\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273b: 1000 1000 1000\n", - "Reader::getValue(0) 69859\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.0: 1000 1000 1000\n", - "Parsing seed: 69859\n", - "Reader::getValue(1) 1e-05\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.1: 1000 1000 1000\n", - "Parsing timestep: 1e-05\n", - "Reader::getValue(2) 10000\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.2: 1000 1000 1000\n", - "Parsing steps: 10000\n", - "Reader::getValue(3) 0 # deprecated\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.3: 1000 1000 1000\n", - "Parsing numberFluct: 0 # deprecated\n", - "Reader::getValue(4) 1 # other values deprecated\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.4: 1000 1000 1000\n", - "Parsing interparticleForce: 1 # other values deprecated\n", - "Reader::getValue(5) 0 # deprecated\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.5: 1000 1000 1000\n", - "Parsing fullLongRange: 0 # deprecated\n", - "Reader::getValue(6) 295\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.6: 1000 1000 1000\n", - "Parsing temperature: 295\n", - "Reader::getValue(7) Langevin\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.7: 1000 1000 1000\n", - "Parsing ParticleDynamicType: Langevin\n", - "Reader::getValue(8) 100.0\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.8: 1000 1000 1000\n", - "Parsing outputPeriod: 100.0\n", - "Reader::getValue(9) 100.0\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.9: 1000 1000 1000\n", - "Parsing outputEnergyPeriod: 100.0\n", - "Reader::getValue(10) dcd\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.10: 1000 1000 1000\n", - "Parsing outputFormat: dcd\n", - "Reader::getValue(11) 1000\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.11: 1000 1000 1000\n", - "Parsing decompPeriod: 1000\n", - "Reader::getValue(12) 50\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.12: 1000 1000 1000\n", - "Parsing cutoff: 50\n", - "Reader::getValue(13) 10\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.13: 1000 1000 1000\n", - "Parsing pairlistDistance: 10\n", - "Reader::getValue(14) -500.0 -500.0 -500.0\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.14: 1000 1000 1000\n", - "Parsing origin: -500.0 -500.0 -500.0\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.15: 1000 1000 1000\n", - "Parsing systemSize: 1000 1000 1000\n", - "Reader::getValue(16) ALA\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.16: 1000 1000 1000\n", - "Parsing particle: ALA\n", - "Reader::getValue(17) 70\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.17: 1000 1000 1000\n", - "Parsing num: 70\n", - "Reader::getValue(18) 71.08\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.18: 1000 1000 1000\n", - "Parsing mass: 71.08\n", - "Reader::getValue(19) 10 10 10\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.19: 1000 1000 1000\n", - "Parsing transDamping: 10 10 10\n", - "Reader::getValue(20) potentials/null.dx\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.20: 1000 1000 1000\n", - "Parsing gridFile: potentials/null.dx\n", - "The grid file name potentials/null.dx\n", - "potentials/null.dx Reader::getValue(21) ALAIDP\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.21: 1000 1000 1000\n", - "Parsing particle: ALAIDP\n", - "Reader::getValue(22) 70\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.22: 1000 1000 1000\n", - "Parsing num: 70\n", - "Reader::getValue(23) 71.08\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.23: 1000 1000 1000\n", - "Parsing mass: 71.08\n", - "Reader::getValue(24) 10 10 10\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.24: 1000 1000 1000\n", - "Parsing transDamping: 10 10 10\n", - "Reader::getValue(25) potentials/null.dx\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.25: 1000 1000 1000\n", - "Parsing gridFile: potentials/null.dx\n", - "The grid file name potentials/null.dx\n", - "potentials/null.dx Reader::getValue(26) X\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.26: 1000 1000 1000\n", - "Parsing particle: X\n", - "Reader::getValue(27) 70\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.27: 1000 1000 1000\n", - "Parsing num: 70\n", - "Reader::getValue(28) 120\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.28: 1000 1000 1000\n", - "Parsing mass: 120\n", - "Reader::getValue(29) 40.9 40.9 40.9\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.29: 1000 1000 1000\n", - "Parsing transDamping: 40.9 40.9 40.9\n", - "Reader::getValue(30) potentials/null.dx\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.30: 1000 1000 1000\n", - "Parsing gridFile: potentials/null.dx\n", - "The grid file name potentials/null.dx\n", - "potentials/null.dx Reader::getValue(31) 4-linear-combined.particles.txt\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.31: 1000 1000 1000\n", - "Parsing inputParticles: 4-linear-combined.particles.txt\n", - "Reader::getValue(32) 1\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.32: 1000 1000 1000\n", - "Parsing tabulatedPotential: 1\n", - "Reader::getValue(33) ./potentials/bond-2.390-3.800.dat\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.33: 1000 1000 1000\n", - "Parsing tabulatedBondFile: ./potentials/bond-2.390-3.800.dat\n", - "Reader::getValue(34) ./potentials/bond-38.423-3.800.dat\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.34: 1000 1000 1000\n", - "Parsing tabulatedBondFile: ./potentials/bond-38.423-3.800.dat\n", - "Reader::getValue(35) ./potentials/bond-2.390-3.800.dat\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.35: 1000 1000 1000\n", - "Parsing tabulatedBondFile: ./potentials/bond-2.390-3.800.dat\n", - "Reader::getValue(36) ./potentials/bond-25.000-3.800.dat\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.36: 1000 1000 1000\n", - "Parsing tabulatedBondFile: ./potentials/bond-25.000-3.800.dat\n", - "Reader::getValue(37) /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/onck_model_potentials/bend_OXY.txt\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.37: 1000 1000 1000\n", - "Parsing tabulatedAngleFile: /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/onck_model_potentials/bend_OXY.txt\n", - "Reader::getValue(38) /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/onck_model_potentials/dih_XX.txt\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.38: 1000 1000 1000\n", - "Parsing tabulatedDihedralFile: /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/onck_model_potentials/dih_XX.txt\n", - "Reader::getValue(39) potentials/4-linear-combined.bond.txt\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.39: 1000 1000 1000\n", - "Parsing inputBonds: potentials/4-linear-combined.bond.txt\n", - "Reader::getValue(40) potentials/4-linear-combined.angle.txt\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.40: 1000 1000 1000\n", - "Parsing inputAngles: potentials/4-linear-combined.angle.txt\n", - "Reader::getValue(41) potentials/4-linear-combined.dihedral.txt\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.41: 1000 1000 1000\n", - "Parsing inputDihedrals: potentials/4-linear-combined.dihedral.txt\n", - "Reader::getValue(42) potentials/4-linear-combined.exclusion.txt\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Value 273.42: 1000 1000 1000\n", - "Parsing inputExcludes: potentials/4-linear-combined.exclusion.txt\n", - "inputExclude potentials/4-linear-combined.exclusion.txt\n", - "\n", - "280 particles\n", - "0 particles attached to RBs\n", - "0 groups\n", - "\n", - "Found 3 particle types.\n", - "Loading the potential grids...\n", - "Built 822 exclusions.\n", - "\n", - "Cutting off the potential from 48 to 50.\n", - "Copying particle grids to GPU 1\n", - "Copying particle data to GPU 1\n", - "56\n", - "Setting up random number generator with seed 69859\n", - "Created Cell Decomposition (17, 17, 17)\n", - "Loading 9 tabulated non-bonded potentials...\n", - "Using 411 non-bonded exclusions\n", - "Loading 4 tabulated bond potentials...\n", - "Loading 1 tabulated angle potentials...\n", - "Loading 1 tabulated dihedral potentials...\n", - "Configuration: 280 particles | 1 replicas\n", - "\n", - "Step 100 [1.00% complete | 0.432 ms/step | 1998.288 ns/day]\n", - "Step 200 [2.00% complete | 0.407 ms/step | 2122.329 ns/day]\n", - "Step 300 [3.00% complete | 0.406 ms/step | 2129.757 ns/day]\n", - "Step 400 [4.00% complete | 0.406 ms/step | 2126.298 ns/day]\n", - "Step 500 [5.00% complete | 0.407 ms/step | 2125.304 ns/day]\n", - "Step 600 [6.00% complete | 0.406 ms/step | 2127.712 ns/day]\n", - "Step 700 [7.00% complete | 0.407 ms/step | 2122.589 ns/day]\n", - "Step 800 [8.00% complete | 0.406 ms/step | 2125.880 ns/day]\n", - "Step 900 [9.00% complete | 0.406 ms/step | 2130.335 ns/day]\n", - "Step 1000 [10.00% complete | 0.422 ms/step | 2046.714 ns/day]\n", - "Step 1100 [11.00% complete | 0.406 ms/step | 2127.764 ns/day]\n", - "Step 1200 [12.00% complete | 0.406 ms/step | 2128.184 ns/day]\n", - "Step 1300 [13.00% complete | 0.404 ms/step | 2136.023 ns/day]\n", - "Step 1400 [14.00% complete | 0.405 ms/step | 2134.124 ns/day]\n", - "Step 1500 [15.00% complete | 0.406 ms/step | 2125.775 ns/day]\n", - "Step 1600 [16.00% complete | 0.552 ms/step | 1566.239 ns/day]\n", - "Step 1700 [17.00% complete | 0.405 ms/step | 2134.967 ns/day]\n", - "Step 1800 [18.00% complete | 0.405 ms/step | 2132.438 ns/day]\n", - "Step 1900 [19.00% complete | 0.406 ms/step | 2128.498 ns/day]\n", - "Step 2000 [20.00% complete | 0.422 ms/step | 2045.842 ns/day]\n", - "Step 2100 [21.00% complete | 0.407 ms/step | 2124.155 ns/day]\n", - "Step 2200 [22.00% complete | 0.406 ms/step | 2128.184 ns/day]\n", - "Step 2300 [23.00% complete | 0.407 ms/step | 2123.215 ns/day]\n", - "Step 2400 [24.00% complete | 0.407 ms/step | 2124.050 ns/day]\n", - "Step 2500 [25.00% complete | 0.406 ms/step | 2128.813 ns/day]\n", - "Step 2600 [26.00% complete | 0.407 ms/step | 2124.207 ns/day]\n", - "Step 2700 [27.00% complete | 0.406 ms/step | 2126.036 ns/day]\n", - "Step 2800 [28.00% complete | 0.407 ms/step | 2122.537 ns/day]\n", - "Step 2900 [29.00% complete | 0.405 ms/step | 2133.544 ns/day]\n", - "Step 3000 [30.00% complete | 0.421 ms/step | 2050.163 ns/day]\n", - "Step 3100 [31.00% complete | 0.405 ms/step | 2135.284 ns/day]\n", - "Step 3200 [32.00% complete | 0.405 ms/step | 2130.966 ns/day]\n", - "Step 3300 [33.00% complete | 0.404 ms/step | 2138.031 ns/day]\n", - "Step 3400 [34.00% complete | 0.405 ms/step | 2135.389 ns/day]\n", - "Step 3500 [35.00% complete | 0.406 ms/step | 2127.083 ns/day]\n", - "Step 3600 [36.00% complete | 0.406 ms/step | 2127.136 ns/day]\n", - "Step 3700 [37.00% complete | 0.406 ms/step | 2127.240 ns/day]\n", - "Step 3800 [38.00% complete | 0.405 ms/step | 2131.702 ns/day]\n", - "Step 3900 [39.00% complete | 0.406 ms/step | 2129.075 ns/day]\n", - "Step 4000 [40.00% complete | 0.423 ms/step | 2042.215 ns/day]\n", - "Step 4100 [41.00% complete | 0.405 ms/step | 2131.859 ns/day]\n", - "Step 4200 [42.00% complete | 0.406 ms/step | 2125.775 ns/day]\n", - "Step 4300 [43.00% complete | 0.407 ms/step | 2123.633 ns/day]\n", - "Step 4400 [44.00% complete | 0.408 ms/step | 2118.062 ns/day]\n", - "Step 4500 [45.00% complete | 0.406 ms/step | 2130.335 ns/day]\n", - "Step 4600 [46.00% complete | 0.405 ms/step | 2134.862 ns/day]\n", - "Step 4700 [47.00% complete | 0.406 ms/step | 2129.757 ns/day]\n", - "Step 4800 [48.00% complete | 0.406 ms/step | 2129.915 ns/day]\n", - "Step 4900 [49.00% complete | 0.405 ms/step | 2134.967 ns/day]\n", - "Step 5000 [50.00% complete | 0.421 ms/step | 2054.648 ns/day]\n", - "Step 5100 [51.00% complete | 0.406 ms/step | 2129.075 ns/day]\n", - "Step 5200 [52.00% complete | 0.406 ms/step | 2126.926 ns/day]\n", - "Step 5300 [53.00% complete | 0.406 ms/step | 2129.180 ns/day]\n", - "Step 5400 [54.00% complete | 0.406 ms/step | 2127.607 ns/day]\n", - "Step 5500 [55.00% complete | 0.405 ms/step | 2131.018 ns/day]\n", - "Step 5600 [56.00% complete | 0.406 ms/step | 2130.125 ns/day]\n", - "Step 5700 [57.00% complete | 0.406 ms/step | 2128.079 ns/day]\n", - "Step 5800 [58.00% complete | 0.405 ms/step | 2133.966 ns/day]\n", - "Step 5900 [59.00% complete | 0.521 ms/step | 1657.649 ns/day]\n", - "Step 6000 [60.00% complete | 0.423 ms/step | 2042.264 ns/day]\n", - "Step 6100 [61.00% complete | 0.406 ms/step | 2130.545 ns/day]\n", - "Step 6200 [62.00% complete | 0.405 ms/step | 2132.701 ns/day]\n", - "Step 6300 [63.00% complete | 0.405 ms/step | 2130.860 ns/day]\n", - "Step 6400 [64.00% complete | 0.406 ms/step | 2127.398 ns/day]\n", - "Step 6500 [65.00% complete | 0.405 ms/step | 2132.965 ns/day]\n", - "Step 6600 [66.00% complete | 0.405 ms/step | 2135.706 ns/day]\n", - "Step 6700 [67.00% complete | 0.407 ms/step | 2125.409 ns/day]\n", - "Step 6800 [68.00% complete | 0.407 ms/step | 2123.007 ns/day]\n", - "Step 6900 [69.00% complete | 0.405 ms/step | 2131.071 ns/day]\n", - "Step 7000 [70.00% complete | 0.422 ms/step | 2045.939 ns/day]\n", - "Step 7100 [71.00% complete | 0.361 ms/step | 2393.683 ns/day]\n", - "Step 7200 [72.00% complete | 0.407 ms/step | 2123.842 ns/day]\n", - "Step 7300 [73.00% complete | 0.407 ms/step | 2121.391 ns/day]\n", - "Step 7400 [74.00% complete | 0.406 ms/step | 2127.817 ns/day]\n", - "Step 7500 [75.00% complete | 0.406 ms/step | 2126.612 ns/day]\n", - "Step 7600 [76.00% complete | 0.406 ms/step | 2127.659 ns/day]\n", - "Step 7700 [77.00% complete | 0.406 ms/step | 2129.757 ns/day]\n", - "Step 7800 [78.00% complete | 0.406 ms/step | 2128.865 ns/day]\n", - "Step 7900 [79.00% complete | 0.405 ms/step | 2130.913 ns/day]\n", - "Step 8000 [80.00% complete | 0.423 ms/step | 2041.733 ns/day]\n", - "Step 8100 [81.00% complete | 0.405 ms/step | 2134.071 ns/day]\n", - "Step 8200 [82.00% complete | 0.406 ms/step | 2129.915 ns/day]\n", - "Step 8300 [83.00% complete | 0.405 ms/step | 2130.860 ns/day]\n", - "Step 8400 [84.00% complete | 0.407 ms/step | 2123.528 ns/day]\n", - "Step 8500 [85.00% complete | 0.406 ms/step | 2127.398 ns/day]\n", - "Step 8600 [86.00% complete | 0.406 ms/step | 2128.393 ns/day]\n", - "Step 8700 [87.00% complete | 0.406 ms/step | 2125.670 ns/day]\n", - "Step 8800 [88.00% complete | 0.408 ms/step | 2119.257 ns/day]\n", - "Step 8900 [89.00% complete | 0.405 ms/step | 2131.544 ns/day]\n", - "Step 9000 [90.00% complete | 0.422 ms/step | 2045.406 ns/day]\n", - "Step 9100 [91.00% complete | 0.406 ms/step | 2129.338 ns/day]\n", - "Step 9200 [92.00% complete | 0.407 ms/step | 2124.677 ns/day]\n", - "Step 9300 [93.00% complete | 0.406 ms/step | 2129.652 ns/day]\n", - "Step 9400 [94.00% complete | 0.405 ms/step | 2131.123 ns/day]\n", - "Step 9500 [95.00% complete | 0.405 ms/step | 2135.231 ns/day]\n", - "Step 9600 [96.00% complete | 0.409 ms/step | 2114.382 ns/day]\n", - "Step 9700 [97.00% complete | 0.406 ms/step | 2129.862 ns/day]\n", - "Step 9800 [98.00% complete | 0.405 ms/step | 2132.333 ns/day]\n", - "Step 9900 [99.00% complete | 0.406 ms/step | 2128.446 ns/day]\n", - "Final Step: 10000\n", - "Total Run Time: 5.12s\n" - ] - } - ], + "execution_count": null, + "id": "9358855a", + "metadata": { + "scrolled": false + }, + "outputs": [], "source": [ "from arbdmodel.kh_polymer_model import KhModel\n", "from arbdmodel.onck_polymer_model import OnckModel\n", @@ -1496,8 +207,24 @@ "combined_model = model\n", "for i,m in enumerate((hps_model, kh_model, onck_model)):\n", " m.translate( ((i+1)*50, 0, 0) )\n", - " combined_model.extend(m)\n", - " combined_model\n", + " combined_model.extend(m)\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "a1bca367", + "metadata": {}, + "outputs": [], + "source": [ + "groups = combined_model.children[:1] + [_g.children[0] for _g in combined_model.children[1:]]\n", + "for g in groups:\n", + " print(g, len(g.children))\n", + " try:\n", + " ngrids = len(g.children[0].type_.grid_potentials)\n", + " except:\n", + " ngrids = 0\n", + " print(f'{ngrids} grids attached to {g.children[0]}')\n", " \n", "## Note that these models all use different particle types and no interactions are specified between them\n", "## If you want the polymers to \"feel\" each other, then you would need to add some custom interaction that \n", @@ -1511,25 +238,10 @@ }, { "cell_type": "code", - "execution_count": 10, - "id": "8aae99a6", + "execution_count": null, + "id": "2387a803", "metadata": {}, - "outputs": [ - { - "data": { - "application/vnd.jupyter.widget-view+json": { - "model_id": "fd233b313c654d088add5452d1b3e01b", - "version_major": 2, - "version_minor": 0 - }, - "text/plain": [ - "NGLWidget(max_frame=99)" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "u = mda.Universe(\"sims/2-polymer/4-linear-combined.psf\", \"sims/2-polymer/output/4-linear-combined.dcd\")\n", "w = nv.show_mdanalysis(u)\n", @@ -1541,7 +253,7 @@ }, { "cell_type": "markdown", - "id": "fddcc716", + "id": "f74ece22", "metadata": {}, "source": [ "### Some polymer models may have multiple beads per monomer\n", @@ -1555,410 +267,10 @@ }, { "cell_type": "code", - "execution_count": 11, - "id": "b8fe5a62", + "execution_count": null, + "id": "fbae47ac", "metadata": {}, "outputs": [], - "source": [ - "%load_ext autoreload\n", - "%autoreload 2" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "id": "f9a0dac3", - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "arbdmodel: INFO: Running arbd with: /home/cmaffeo2/bin/arbd -g 1 5-linear-ssdna.bd output/5-linear-ssdna\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - " –––––––––––––––––––––––––––––––––––––––––––––\n", - " | Atomic Resolution Brownian Dynamics |\n", - " –––––––––––––––––––––––––––––––––––––––––––––\n", - "Found 2 GPU(s)\n", - "[0] NVIDIA GeForce RTX 3080 (may timeout) | SM 8.6, 1.71GHz, 7.8GB RAM\n", - "[1] NVIDIA GeForce RTX 3080 | SM 8.6, 1.71GHz, 7.8GB RAM\n", - "Initializing devices... 1\n", - "READER: 0 seed 98413\n", - "READER: 1 timestep 2e-05\n", - "READER: 2 steps 10000\n", - "READER: 3 numberFluct 0 # deprecated\n", - "READER: 4 interparticleForce 1 # other values deprecated\n", - "READER: 5 fullLongRange 0 # deprecated\n", - "READER: 6 temperature 295\n", - "READER: 7 ParticleDynamicType Langevin\n", - "READER: 8 outputPeriod 100.0\n", - "READER: 9 outputEnergyPeriod 100.0\n", - "READER: 10 outputFormat dcd\n", - "READER: 11 decompPeriod 40\n", - "READER: 12 cutoff 35\n", - "READER: 13 pairlistDistance 10\n", - "READER: 14 origin -500.0 -500.0 -500.0\n", - "READER: 15 systemSize 1000 1000 1000\n", - "READER: 16 particle B\n", - "READER: 17 num 70\n", - "READER: 18 mass 181\n", - "READER: 19 transDamping 1239.8180485561054 1239.8180485561054 1239.8180485561054\n", - "READER: 20 gridFile potentials/null.dx\n", - "READER: 21 particle P\n", - "READER: 22 num 70\n", - "READER: 23 mass 121\n", - "READER: 24 transDamping 1250.5132736143896 1250.5132736143896 1250.5132736143896\n", - "READER: 25 gridFile potentials/null.dx\n", - "READER: 26 inputParticles 5-linear-ssdna.particles.txt\n", - "READER: 27 tabulatedPotential 1\n", - "READER: 28 tabulatedFile 0@0@potentials/5-linear-ssdna-nb.B-B.dat\n", - "READER: 29 tabulatedFile 0@1@potentials/5-linear-ssdna-nb.B-P.dat\n", - "READER: 30 tabulatedFile 1@1@potentials/5-linear-ssdna-nb.P-P.dat\n", - "READER: 31 tabulatedBondFile /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/BPB.dat\n", - "READER: 32 tabulatedBondFile /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/BPP.dat\n", - "READER: 33 tabulatedBondFile /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/BBP.dat\n", - "READER: 34 tabulatedAngleFile /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/p1p2p3.dat\n", - "READER: 35 tabulatedAngleFile /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/b1p2b2.dat\n", - "READER: 36 tabulatedAngleFile /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/p1p2b2.dat\n", - "READER: 37 tabulatedAngleFile /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/b1p2p3.dat\n", - "READER: 38 tabulatedDihedralFile /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/b1p2p3b3.dat\n", - "READER: 39 tabulatedDihedralFile /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/p0p1p2p3.dat\n", - "READER: 40 tabulatedDihedralFile /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/b1p1p2b2.dat\n", - "READER: 41 inputBonds potentials/5-linear-ssdna.bond.txt\n", - "READER: 42 inputAngles potentials/5-linear-ssdna.angle.txt\n", - "READER: 43 inputDihedrals potentials/5-linear-ssdna.dihedral.txt\n", - "READER: 44 inputExcludes potentials/5-linear-ssdna.exclusion.txt\n", - "Read config file 5-linear-ssdna.bd\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273a: 0 # deprecated\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273b: 0 # deprecated\n", - "Reader::getValue(0) 98413\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.0: 0 # deprecated\n", - "Parsing seed: 98413\n", - "Reader::getValue(1) 2e-05\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.1: 0 # deprecated\n", - "Parsing timestep: 2e-05\n", - "Reader::getValue(2) 10000\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.2: 0 # deprecated\n", - "Parsing steps: 10000\n", - "Reader::getValue(3) 0 # deprecated\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.3: 0 # deprecated\n", - "Parsing numberFluct: 0 # deprecated\n", - "Reader::getValue(4) 1 # other values deprecated\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.4: 0 # deprecated\n", - "Parsing interparticleForce: 1 # other values deprecated\n", - "Reader::getValue(5) 0 # deprecated\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.5: 0 # deprecated\n", - "Parsing fullLongRange: 0 # deprecated\n", - "Reader::getValue(6) 295\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.6: 0 # deprecated\n", - "Parsing temperature: 295\n", - "Reader::getValue(7) Langevin\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.7: 0 # deprecated\n", - "Parsing ParticleDynamicType: Langevin\n", - "Reader::getValue(8) 100.0\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.8: 0 # deprecated\n", - "Parsing outputPeriod: 100.0\n", - "Reader::getValue(9) 100.0\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.9: 0 # deprecated\n", - "Parsing outputEnergyPeriod: 100.0\n", - "Reader::getValue(10) dcd\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.10: 0 # deprecated\n", - "Parsing outputFormat: dcd\n", - "Reader::getValue(11) 40\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.11: 0 # deprecated\n", - "Parsing decompPeriod: 40\n", - "Reader::getValue(12) 35\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.12: 0 # deprecated\n", - "Parsing cutoff: 35\n", - "Reader::getValue(13) 10\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.13: 0 # deprecated\n", - "Parsing pairlistDistance: 10\n", - "Reader::getValue(14) -500.0 -500.0 -500.0\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.14: 0 # deprecated\n", - "Parsing origin: -500.0 -500.0 -500.0\n", - "Reader::getValue(15) 1000 1000 1000\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.15: 0 # deprecated\n", - "Parsing systemSize: 1000 1000 1000\n", - "Reader::getValue(16) B\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.16: 0 # deprecated\n", - "Parsing particle: B\n", - "Reader::getValue(17) 70\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.17: 0 # deprecated\n", - "Parsing num: 70\n", - "Reader::getValue(18) 181\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.18: 0 # deprecated\n", - "Parsing mass: 181\n", - "Reader::getValue(19) 1239.8180485561054 1239.8180485561054 1239.8180485561054\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.19: 0 # deprecated\n", - "Parsing transDamping: 1239.8180485561054 1239.8180485561054 1239.8180485561054\n", - "Reader::getValue(20) potentials/null.dx\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.20: 0 # deprecated\n", - "Parsing gridFile: potentials/null.dx\n", - "The grid file name potentials/null.dx\n", - "potentials/null.dx Reader::getValue(21) P\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.21: 0 # deprecated\n", - "Parsing particle: P\n", - "Reader::getValue(22) 70\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.22: 0 # deprecated\n", - "Parsing num: 70\n", - "Reader::getValue(23) 121\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.23: 0 # deprecated\n", - "Parsing mass: 121\n", - "Reader::getValue(24) 1250.5132736143896 1250.5132736143896 1250.5132736143896\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.24: 0 # deprecated\n", - "Parsing transDamping: 1250.5132736143896 1250.5132736143896 1250.5132736143896\n", - "Reader::getValue(25) potentials/null.dx\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.25: 0 # deprecated\n", - "Parsing gridFile: potentials/null.dx\n", - "The grid file name potentials/null.dx\n", - "potentials/null.dx Reader::getValue(26) 5-linear-ssdna.particles.txt\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.26: 0 # deprecated\n", - "Parsing inputParticles: 5-linear-ssdna.particles.txt\n", - "Reader::getValue(27) 1\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.27: 0 # deprecated\n", - "Parsing tabulatedPotential: 1\n", - "Reader::getValue(28) 0@0@potentials/5-linear-ssdna-nb.B-B.dat\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.28: 0 # deprecated\n", - "Parsing tabulatedFile: 0@0@potentials/5-linear-ssdna-nb.B-B.dat\n", - "Reader::getValue(29) 0@1@potentials/5-linear-ssdna-nb.B-P.dat\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.29: 0 # deprecated\n", - "Parsing tabulatedFile: 0@1@potentials/5-linear-ssdna-nb.B-P.dat\n", - "Reader::getValue(30) 1@1@potentials/5-linear-ssdna-nb.P-P.dat\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.30: 0 # deprecated\n", - "Parsing tabulatedFile: 1@1@potentials/5-linear-ssdna-nb.P-P.dat\n", - "Reader::getValue(31) /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/BPB.dat\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.31: 0 # deprecated\n", - "Parsing tabulatedBondFile: /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/BPB.dat\n", - "Reader::getValue(32) /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/BPP.dat\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.32: 0 # deprecated\n", - "Parsing tabulatedBondFile: /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/BPP.dat\n", - "Reader::getValue(33) /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/BBP.dat\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.33: 0 # deprecated\n", - "Parsing tabulatedBondFile: /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/BBP.dat\n", - "Reader::getValue(34) /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/p1p2p3.dat\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.34: 0 # deprecated\n", - "Parsing tabulatedAngleFile: /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/p1p2p3.dat\n", - "Reader::getValue(35) /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/b1p2b2.dat\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.35: 0 # deprecated\n", - "Parsing tabulatedAngleFile: /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/b1p2b2.dat\n", - "Reader::getValue(36) /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/p1p2b2.dat\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.36: 0 # deprecated\n", - "Parsing tabulatedAngleFile: /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/p1p2b2.dat\n", - "Reader::getValue(37) /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/b1p2p3.dat\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.37: 0 # deprecated\n", - "Parsing tabulatedAngleFile: /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/b1p2p3.dat\n", - "Reader::getValue(38) /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/b1p2p3b3.dat\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.38: 0 # deprecated\n", - "Parsing tabulatedDihedralFile: /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/b1p2p3b3.dat\n", - "Reader::getValue(39) /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/p0p1p2p3.dat\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.39: 0 # deprecated\n", - "Parsing tabulatedDihedralFile: /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/p0p1p2p3.dat\n", - "Reader::getValue(40) /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/b1p1p2b2.dat\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.40: 0 # deprecated\n", - "Parsing tabulatedDihedralFile: /data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/resources/two_bead_model/b1p1p2b2.dat\n", - "Reader::getValue(41) potentials/5-linear-ssdna.bond.txt\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.41: 0 # deprecated\n", - "Parsing inputBonds: potentials/5-linear-ssdna.bond.txt\n", - "Reader::getValue(42) potentials/5-linear-ssdna.angle.txt\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.42: 0 # deprecated\n", - "Parsing inputAngles: potentials/5-linear-ssdna.angle.txt\n", - "Reader::getValue(43) potentials/5-linear-ssdna.dihedral.txt\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.43: 0 # deprecated\n", - "Parsing inputDihedrals: potentials/5-linear-ssdna.dihedral.txt\n", - "Reader::getValue(44) potentials/5-linear-ssdna.exclusion.txt\n", - "Reader::getValue(3) 0 # deprecated\n", - "Value 273.44: 0 # deprecated\n", - "Parsing inputExcludes: potentials/5-linear-ssdna.exclusion.txt\n", - "inputExclude potentials/5-linear-ssdna.exclusion.txt\n", - "\n", - "140 particles\n", - "0 particles attached to RBs\n", - "0 groups\n", - "\n", - "Found 2 particle types.\n", - "Loading the potential grids...\n", - "Built 964 exclusions.\n", - "\n", - "Cutting off the potential from 33 to 35.\n", - "Copying particle grids to GPU 1\n", - "Copying particle data to GPU 1\n", - "56\n", - "Setting up random number generator with seed 98413\n", - "Created Cell Decomposition (23, 23, 23)\n", - "Loading 4 tabulated non-bonded potentials...\n", - "Using 482 non-bonded exclusions\n", - "Loading 3 tabulated bond potentials...\n", - "Loading 4 tabulated angle potentials...\n", - "Loading 3 tabulated dihedral potentials...\n", - "Configuration: 140 particles | 1 replicas\n", - "\n", - "Step 100 [1.00% complete | 0.476 ms/step | 3630.633 ns/day]\n", - "Step 200 [2.00% complete | 0.464 ms/step | 3727.994 ns/day]\n", - "Step 300 [3.00% complete | 0.447 ms/step | 3869.234 ns/day]\n", - "Step 400 [4.00% complete | 0.463 ms/step | 3734.036 ns/day]\n", - "Step 500 [5.00% complete | 0.446 ms/step | 3872.182 ns/day]\n", - "Step 600 [6.00% complete | 0.464 ms/step | 3725.503 ns/day]\n", - "Step 700 [7.00% complete | 0.445 ms/step | 3883.233 ns/day]\n", - "Step 800 [8.00% complete | 0.466 ms/step | 3707.279 ns/day]\n", - "Step 900 [9.00% complete | 0.447 ms/step | 3870.101 ns/day]\n", - "Step 1000 [10.00% complete | 0.463 ms/step | 3729.926 ns/day]\n", - "Step 1100 [11.00% complete | 0.449 ms/step | 3847.181 ns/day]\n", - "Step 1200 [12.00% complete | 0.466 ms/step | 3710.862 ns/day]\n", - "Step 1300 [13.00% complete | 0.446 ms/step | 3871.401 ns/day]\n", - "Step 1400 [14.00% complete | 0.464 ms/step | 3722.132 ns/day]\n", - "Step 1500 [15.00% complete | 0.445 ms/step | 3880.792 ns/day]\n", - "Step 1600 [16.00% complete | 0.463 ms/step | 3728.396 ns/day]\n", - "Step 1700 [17.00% complete | 0.446 ms/step | 3871.141 ns/day]\n", - "Step 1800 [18.00% complete | 0.465 ms/step | 3715.490 ns/day]\n", - "Step 1900 [19.00% complete | 0.445 ms/step | 3879.659 ns/day]\n", - "Step 2000 [20.00% complete | 0.464 ms/step | 3721.331 ns/day]\n", - "Step 2100 [21.00% complete | 0.446 ms/step | 3876.960 ns/day]\n", - "Step 2200 [22.00% complete | 0.462 ms/step | 3737.590 ns/day]\n", - "Step 2300 [23.00% complete | 0.598 ms/step | 2888.569 ns/day]\n", - "Step 2400 [24.00% complete | 0.464 ms/step | 3725.744 ns/day]\n", - "Step 2500 [25.00% complete | 0.446 ms/step | 3873.397 ns/day]\n", - "Step 2600 [26.00% complete | 0.463 ms/step | 3730.811 ns/day]\n", - "Step 2700 [27.00% complete | 0.446 ms/step | 3870.534 ns/day]\n", - "Step 2800 [28.00% complete | 0.463 ms/step | 3730.650 ns/day]\n", - "Step 2900 [29.00% complete | 0.446 ms/step | 3872.095 ns/day]\n", - "Step 3000 [30.00% complete | 0.464 ms/step | 3721.892 ns/day]\n", - "Step 3100 [31.00% complete | 0.446 ms/step | 3870.534 ns/day]\n", - "Step 3200 [32.00% complete | 0.465 ms/step | 3714.851 ns/day]\n", - "Step 3300 [33.00% complete | 0.446 ms/step | 3872.616 ns/day]\n", - "Step 3400 [34.00% complete | 0.463 ms/step | 3730.248 ns/day]\n", - "Step 3500 [35.00% complete | 0.446 ms/step | 3877.221 ns/day]\n", - "Step 3600 [36.00% complete | 0.463 ms/step | 3731.456 ns/day]\n", - "Step 3700 [37.00% complete | 0.445 ms/step | 3882.448 ns/day]\n", - "Step 3800 [38.00% complete | 0.462 ms/step | 3737.914 ns/day]\n", - "Step 3900 [39.00% complete | 0.447 ms/step | 3870.101 ns/day]\n", - "Step 4000 [40.00% complete | 0.463 ms/step | 3729.684 ns/day]\n", - "Step 4100 [41.00% complete | 0.446 ms/step | 3876.004 ns/day]\n", - "Step 4200 [42.00% complete | 0.463 ms/step | 3731.375 ns/day]\n", - "Step 4300 [43.00% complete | 0.445 ms/step | 3880.443 ns/day]\n", - "Step 4400 [44.00% complete | 0.463 ms/step | 3730.650 ns/day]\n", - "Step 4500 [45.00% complete | 0.445 ms/step | 3881.140 ns/day]\n", - "Step 4600 [46.00% complete | 0.463 ms/step | 3733.391 ns/day]\n", - "Step 4700 [47.00% complete | 0.445 ms/step | 3882.361 ns/day]\n", - "Step 4800 [48.00% complete | 0.462 ms/step | 3737.024 ns/day]\n", - "Step 4900 [49.00% complete | 0.445 ms/step | 3884.019 ns/day]\n", - "Step 5000 [50.00% complete | 0.462 ms/step | 3739.531 ns/day]\n", - "Step 5100 [51.00% complete | 0.445 ms/step | 3883.059 ns/day]\n", - "Step 5200 [52.00% complete | 0.462 ms/step | 3739.936 ns/day]\n", - "Step 5300 [53.00% complete | 0.444 ms/step | 3891.191 ns/day]\n", - "Step 5400 [54.00% complete | 0.462 ms/step | 3743.014 ns/day]\n", - "Step 5500 [55.00% complete | 0.445 ms/step | 3879.397 ns/day]\n", - "Step 5600 [56.00% complete | 0.462 ms/step | 3740.017 ns/day]\n", - "Step 5700 [57.00% complete | 0.444 ms/step | 3889.176 ns/day]\n", - "Step 5800 [58.00% complete | 0.463 ms/step | 3736.216 ns/day]\n", - "Step 5900 [59.00% complete | 0.444 ms/step | 3891.366 ns/day]\n", - "Step 6000 [60.00% complete | 0.463 ms/step | 3733.471 ns/day]\n", - "Step 6100 [61.00% complete | 0.445 ms/step | 3882.099 ns/day]\n", - "Step 6200 [62.00% complete | 0.465 ms/step | 3716.608 ns/day]\n", - "Step 6300 [63.00% complete | 0.460 ms/step | 3757.093 ns/day]\n", - "Step 6400 [64.00% complete | 0.612 ms/step | 2822.838 ns/day]\n", - "Step 6500 [65.00% complete | 0.444 ms/step | 3893.909 ns/day]\n", - "Step 6600 [66.00% complete | 0.462 ms/step | 3740.098 ns/day]\n", - "Step 6700 [67.00% complete | 0.444 ms/step | 3890.402 ns/day]\n", - "Step 6800 [68.00% complete | 0.460 ms/step | 3752.850 ns/day]\n", - "Step 6900 [69.00% complete | 0.445 ms/step | 3884.456 ns/day]\n", - "Step 7000 [70.00% complete | 0.463 ms/step | 3732.584 ns/day]\n", - "Step 7100 [71.00% complete | 0.445 ms/step | 3880.792 ns/day]\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Step 7200 [72.00% complete | 0.463 ms/step | 3728.557 ns/day]\n", - "Step 7300 [73.00% complete | 0.446 ms/step | 3874.005 ns/day]\n", - "Step 7400 [74.00% complete | 0.463 ms/step | 3731.214 ns/day]\n", - "Step 7500 [75.00% complete | 0.446 ms/step | 3877.831 ns/day]\n", - "Step 7600 [76.00% complete | 0.463 ms/step | 3736.135 ns/day]\n", - "Step 7700 [77.00% complete | 0.444 ms/step | 3893.470 ns/day]\n", - "Step 7800 [78.00% complete | 0.463 ms/step | 3734.359 ns/day]\n", - "Step 7900 [79.00% complete | 0.446 ms/step | 3878.527 ns/day]\n", - "Step 8000 [80.00% complete | 0.461 ms/step | 3746.260 ns/day]\n", - "Step 8100 [81.00% complete | 0.445 ms/step | 3885.853 ns/day]\n", - "Step 8200 [82.00% complete | 0.463 ms/step | 3734.682 ns/day]\n", - "Step 8300 [83.00% complete | 0.444 ms/step | 3892.593 ns/day]\n", - "Step 8400 [84.00% complete | 0.462 ms/step | 3737.428 ns/day]\n", - "Step 8500 [85.00% complete | 0.445 ms/step | 3878.875 ns/day]\n", - "Step 8600 [86.00% complete | 0.461 ms/step | 3745.367 ns/day]\n", - "Step 8700 [87.00% complete | 0.444 ms/step | 3892.769 ns/day]\n", - "Step 8800 [88.00% complete | 0.462 ms/step | 3736.458 ns/day]\n", - "Step 8900 [89.00% complete | 0.444 ms/step | 3890.402 ns/day]\n", - "Step 9000 [90.00% complete | 0.462 ms/step | 3737.105 ns/day]\n", - "Step 9100 [91.00% complete | 0.445 ms/step | 3887.339 ns/day]\n", - "Step 9200 [92.00% complete | 0.462 ms/step | 3739.369 ns/day]\n", - "Step 9300 [93.00% complete | 0.444 ms/step | 3887.864 ns/day]\n", - "Step 9400 [94.00% complete | 0.462 ms/step | 3742.042 ns/day]\n", - "Step 9500 [95.00% complete | 0.442 ms/step | 3905.438 ns/day]\n", - "Step 9600 [96.00% complete | 0.461 ms/step | 3749.593 ns/day]\n", - "Step 9700 [97.00% complete | 0.444 ms/step | 3895.928 ns/day]\n", - "Step 9800 [98.00% complete | 0.460 ms/step | 3760.282 ns/day]\n", - "Step 9900 [99.00% complete | 0.445 ms/step | 3883.408 ns/day]\n", - "Final Step: 10000\n", - "Total Run Time: 5.59s\n" - ] - } - ], "source": [ "# from importlib import reimport\n", "from arbdmodel.ssdna_two_bead import DnaModel\n", @@ -1973,25 +285,10 @@ }, { "cell_type": "code", - "execution_count": 13, - "id": "13cee762", + "execution_count": null, + "id": "c4486ca2", "metadata": {}, - "outputs": [ - { - "data": { - "application/vnd.jupyter.widget-view+json": { - "model_id": "c45df94ebf544cd794447e9d2bc6e56b", - "version_major": 2, - "version_minor": 0 - }, - "text/plain": [ - "NGLWidget(max_frame=99)" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "u = mda.Universe(\"sims/2-polymer/5-linear-ssdna.psf\", \"sims/2-polymer/output/5-linear-ssdna.dcd\")\n", "w = nv.show_mdanalysis(u)\n", @@ -2003,7 +300,7 @@ }, { "cell_type": "markdown", - "id": "3f4eebf0", + "id": "3931a404", "metadata": {}, "source": [ "### Add a constant-force to the ends of the polymers to determine their elastic properties\n", @@ -2012,51 +309,10 @@ }, { "cell_type": "code", - "execution_count": 14, - "id": "f6c719a0", + "execution_count": null, + "id": "c4c3207e", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "x,y,z are 1D: x.shape = (4,)\n", - "x = [-375. -125. 125. 375.]\n", - "X,Y,Z are 3D (X.shape = (4, 4, 4)) and can be used to compute potentials\n", - "X = \n", - "[[[-375. -375. -375. -375.]\n", - " [-375. -375. -375. -375.]\n", - " [-375. -375. -375. -375.]\n", - " [-375. -375. -375. -375.]]\n", - "\n", - " [[-125. -125. -125. -125.]\n", - " [-125. -125. -125. -125.]\n", - " [-125. -125. -125. -125.]\n", - " [-125. -125. -125. -125.]]\n", - "\n", - " [[ 125. 125. 125. 125.]\n", - " [ 125. 125. 125. 125.]\n", - " [ 125. 125. 125. 125.]\n", - " [ 125. 125. 125. 125.]]\n", - "\n", - " [[ 375. 375. 375. 375.]\n", - " [ 375. 375. 375. 375.]\n", - " [ 375. 375. 375. 375.]\n", - " [ 375. 375. 375. 375.]]]\n", - "\n", - "X[:,:,0] = \n", - "[[-375. -375. -375. -375.]\n", - " [-125. -125. -125. -125.]\n", - " [ 125. 125. 125. 125.]\n", - " [ 375. 375. 375. 375.]]\n", - "Y[:,:,0] = \n", - "[[-375. -125. 125. 375.]\n", - " [-375. -125. 125. 375.]\n", - " [-375. -125. 125. 375.]\n", - " [-375. -125. 125. 375.]]\n" - ] - } - ], + "outputs": [], "source": [ "num_voxels = (4,4,4)\n", "\n", @@ -2089,8 +345,8 @@ }, { "cell_type": "code", - "execution_count": 15, - "id": "3c84f294", + "execution_count": null, + "id": "dcfcf9d4", "metadata": {}, "outputs": [], "source": [ @@ -2111,44 +367,12 @@ }, { "cell_type": "code", - "execution_count": 16, - "id": "9aaa5375", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "<arbdmodel.ssdna_two_bead.DnaModel object at 0x7fec70a180a0>\n", - "True\n", - "True\n" - ] - } - ], - "source": [ - "from arbdmodel import ArbdModel\n", - "print(dna_model)\n", - "print(isinstance(dna_model,ArbdModel))\n", - "print(isinstance(kh_model,ArbdModel))" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "id": "86796b6e", + "execution_count": null, + "id": "1f590d78", "metadata": { "scrolled": true }, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "arbdmodel: WARNING: Combining attribute timestep: 2e-05 != 1e-05, using 1e-05\n", - "arbdmodel: WARNING: Combining attribute cutoff: 35 != 50, using 50\n" - ] - } - ], + "outputs": [], "source": [ "## Let's add the DNA model for fun\n", "dna_model.translate( ((len(combined_model.children)+1)*50,0,0) )\n", @@ -2157,28 +381,33 @@ }, { "cell_type": "code", - "execution_count": 42, - "id": "40159dde", + "execution_count": null, + "id": "15f0e95a", + "metadata": {}, + "outputs": [], + "source": [ + "## Let's also update the segnames\n", + "groups = combined_model.children[:1] + [_g.children[0] for _g in combined_model.children[1:]]\n", + "for i,g in enumerate(groups):\n", + " segname = '{:c}PRO'.format(i+65) # APRO,BPRO,CPRO,...\n", + " g.segname = segname\n", + "groups[-1].segname = 'ADNA'\n", + "\n", + "## And verify that it worked\n", + "for g in groups[:-1]:\n", + " print(g.children[0].segname)\n", + "\n", + "## The DNA model has a group for each nucleotide containing two beads, so it's a bit more complicated\n", + "g = groups[-1] # Strand group associated with DNA model\n", + "print(g.children[0].children[0].segname)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "8e3802c1", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "<arbdmodel.fjc_polymer_model.FjcBeadsFromPolymer object at 0x7fec8efd00d0> 70\n", - "1 grids attached to <arbdmodel.PointParticle A>\n", - "<arbdmodel.hps_polymer_model.HpsBeads object at 0x7fec71bc7370> 70\n", - "1 grids attached to <arbdmodel.PointParticle A>\n", - "<arbdmodel.kh_polymer_model.KhBeads object at 0x7fec70b01610> 70\n", - "1 grids attached to <arbdmodel.PointParticle AIDP>\n", - "<arbdmodel.onck_polymer_model.OnckBeads object at 0x7fec70a92370> 70\n", - "1 grids attached to <arbdmodel.PointParticle A>\n", - "<arbdmodel.ssdna_two_bead.DnaStrandBeads object at 0x7fec70a41970> 70\n", - "0 grids attached to <arbdmodel.Group object at 0x7fec701c0310>\n", - "0 grids attached to <arbdmodel.PointParticle P>\n" - ] - } - ], + "outputs": [], "source": [ "## Now let's stretch our polymers by a 10pN force, first selectign the groups\n", "groups = combined_model.children[:1] + [_g.children[0] for _g in combined_model.children[1:]]\n", @@ -2200,32 +429,38 @@ }, { "cell_type": "code", - "execution_count": 48, - "id": "48bdf95a", + "execution_count": null, + "id": "5894a135", + "metadata": {}, + "outputs": [], + "source": [ + "## The thermostat can also cause some drift, so let's suppress that by creating a \"group site\" for each segment\n", + "for g in groups:\n", + " particles = [p for p in g]\n", + " particles = particles[::10] ;# Skip every 10 to make the restraints a little more efficient\n", + " site = combined_model.add_group_site(particles)\n", + " ## 'site' can be used like any regular particle with grid potentials, bonds, angles, etc\n", + " center = g.get_center()\n", + " print(f'Restraining segment {g.segname} to center {center}')\n", + " site.add_restraint( (10,center) ) # 10 kcal/mol/AA**2 spring constant" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "043f835a", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "\"\\nfor g in groups[:-1]:\\n for b in [g.children[i] for i in [0,-1]]:\\n t0 = b.type_.parent\\n assert(t0 is not None)\\n b.type_ = t0 ## This will return the particle type to it's original value, clearing any applied grids\\n \\n g.children[0].add_grid_potential(grid_filename, scale=-10)\\n g.children[-1].add_grid_potential(grid_filename, scale=10)\\n\"" - ] - }, - "execution_count": 48, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "for g in groups[:-1]:\n", " g.children[0].add_grid_potential(grid_filename, scale=-10)\n", " g.children[-1].add_grid_potential(grid_filename, scale=10)\n", - " \n", + "\n", "## The DNA model has a group for each nucleotide containing two beads, so it's a bit more complicated\n", "g = groups[-1] # Strand group associated with DNA model\n", "g.children[0].children[0].add_grid_potential(grid_filename, scale=-10)\n", "g.children[-1].children[0].add_grid_potential(grid_filename, scale=10)\n", " \n", - " \n", "## If you made a mistake, you might need to fix the underlying data structures\n", "\"\"\"\n", "for g in groups[:-1]:\n", @@ -2233,34 +468,18 @@ " t0 = b.type_.parent\n", " assert(t0 is not None)\n", " b.type_ = t0 ## This will return the particle type to it's original value, clearing any applied grids\n", - " \n", - " g.children[0].add_grid_potential(grid_filename, scale=-10)\n", - " g.children[-1].add_grid_potential(grid_filename, scale=10)\n", - "\"\"\"\n", - "None # Supresses output in notebook" + "\"\"\";" ] }, { "cell_type": "code", - "execution_count": 49, - "id": "27ef7fd6", + "execution_count": null, + "id": "99552c99", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "1 grids attached to <arbdmodel.PointParticle A>\n", - "1 grids attached to <arbdmodel.PointParticle A>\n", - "1 grids attached to <arbdmodel.PointParticle AIDP>\n", - "1 grids attached to <arbdmodel.PointParticle A>\n", - "1 grids attached to <arbdmodel.PointParticle P>\n" - ] - } - ], + "outputs": [], "source": [ "## Double-check that we added the grid potentials\n", - "for g in groups[:-1]:\n", + "for g in groups[:]:\n", " try:\n", " ngrids = len(g.children[0].type_.grid_potentials)\n", " except:\n", @@ -2277,40 +496,81 @@ }, { "cell_type": "code", - "execution_count": 47, - "id": "0f4081d1", + "execution_count": null, + "id": "d07a9849", "metadata": {}, - "outputs": [ - { - "ename": "AttributeError", - "evalue": "'ParticleType' object has no attribute 'grid_potentials'", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)", - "\u001b[0;32m<ipython-input-47-f3b84c3d59a8>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mgroups\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m-\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mchildren\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mchildren\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtype_\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mgrid_potentials\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", - "\u001b[0;32m/data/server5/cmaffeo2/latexDocuments/tutorials/arbdmodel/arbdmodel/__init__.py\u001b[0m in \u001b[0;36m__getattr__\u001b[0;34m(self, name)\u001b[0m\n\u001b[1;32m 477\u001b[0m \"\"\"\n\u001b[1;32m 478\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;34m\"parent\"\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__dict__\u001b[0m \u001b[0;32mor\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__dict__\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m\"parent\"\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mNone\u001b[0m \u001b[0;32mor\u001b[0m \u001b[0mname\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0;34m\"children\"\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 479\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mAttributeError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"'{}' object has no attribute '{}'\"\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mformat\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtype\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__name__\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mname\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 480\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 481\u001b[0m \u001b[0mexcluded_attributes\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mParticleType\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mexcludedAttributes\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;31mAttributeError\u001b[0m: 'ParticleType' object has no attribute 'grid_potentials'" - ] - } - ], - "source": [] + "outputs": [], + "source": [ + "engine.simulate(combined_model, output_name=\"6-linear-combined-10pN\", directory='sims/2-polymer',\n", + " num_steps=1e5, gpu=1, output_period=1e3\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "f4600e16", + "metadata": {}, + "outputs": [], + "source": [ + "u = mda.Universe(\"sims/2-polymer/6-linear-combined-10pN.psf\",\n", + " \"sims/2-polymer/6-linear-combined-10pN.pdb\",\n", + " \"sims/2-polymer/output/6-linear-combined-10pN.dcd\")\n", + "w = nv.show_mdanalysis(u)\n", + "w.clear_representations()\n", + "w.add_ball_and_stick(\"all\",radius=2, color_scheme='atomindex')\n", + "w.center()\n", + "w" + ] }, { "cell_type": "markdown", - "id": "4f45ccd6", + "id": "5b84c5fa", "metadata": {}, "source": [ - "Connecting polymers together" + "Notice that the models have obviously distinct relaxation timescales, primarily influenced by the damping coefficient prescribed by each model.\n", + "\n", + "Now let's plot the extension. Are the simulations long enough?" ] }, { "cell_type": "code", "execution_count": null, - "id": "df506acb", + "id": "d023d305", "metadata": {}, "outputs": [], - "source": [] + "source": [ + "%matplotlib inline\n", + "from matplotlib import pyplot as plt\n", + "\n", + "\n", + "def get_extension(universe, segment_index, stride=1):\n", + " seg = u.segments[segment_index].atoms\n", + " data = np.empty( len(u.trajectory[::stride]) )\n", + " for i,t in enumerate(u.trajectory[::stride]):\n", + " r = seg.positions\n", + " data[i] = r[-1,2] - r[0,2]\n", + " return data\n", + "\n", + "for i,s in enumerate(u.segments):\n", + " x = get_extension(u,i)\n", + " plt.plot(x,label=s.segid)\n", + " \n", + "plt.ylabel('Extension (\\N{ANGSTROM SIGN})')\n", + "plt.xlabel('Frame')\n", + "plt.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "eae9a94f", + "metadata": {}, + "source": [ + "That's all we mean to cover for now. \n", + "\n", + "We'll end by noting that the Polymer class provides some data structures for building branching polymers as well as linear ones covered in the tutorial. For more information about branching polymers, see the mrdna tutorial (for the time being)." + ] } ], "metadata": {