[gmx-users] pull code with defined negative relative displacements
Berk Hess
gmx3 at hotmail.com
Wed Nov 18 18:19:58 CET 2009
Hi,
With only 1 pull dimension active (through pull_dims) all three geometries are equivalent.
In 2 or 3D there are all different.
With pull_geometry=direction the pull force is the force working along the direction vector.
So in general you can't incorporate the direction (only sign in your case) into the force,
unless you would print the whole vector.
Berk
> Date: Wed, 18 Nov 2009 12:12:49 -0500
> From: chris.neale at utoronto.ca
> To: gmx-users at gromacs.org
> Subject: [gmx-users] pull code with defined negative relative displacements
>
> Hi Berk,
>
> I have done the tests and you are entirely correct. I have one further
> question: If I simply want to pull to a relative displacement of -1.0
> nm, is there any reason to prefer one of these methods, or are they
> just overlapping implementations of different methods that also have
> unique abilities given other settings?
>
> To summarize my tests, pull_geometry=direction can indeed pull to negative
> displacements and there is no bimodal behaviour. My misunderstanding
> derived from the fact that
>
> pull_geometry = direction
> pull_init1 = 1.0
> pull_vec1 = 0 0 1
>
> gave the forces as I expected them, while
>
> pull_vec1 = 0 0 -1
>
> reports the negative of the force that I expected. Since the force as
> output is probably applied after multiplication by pull_vec1, it might
> be more intuitive to simply output the force after it is multiplied by
> pull_vec1 such that what is output is the actual applied force. But
> then again there are probably some good reasons why it is output the
> way that it is.
>
> I have included probability distribution plots for the sampling along z for the tests below at:
> http://i205.photobucket.com/albums/bb192/chrisneale_2007/X10.png (1.0 nm displacement test)
> http://i205.photobucket.com/albums/bb192/chrisneale_2007/X005.png (0.05 nm displacement test)
> http://i205.photobucket.com/albums/bb192/chrisneale_2007/X35.png (3.5 nm displacement test)
>
> Thank you for all of your assistance,
> Chris.
>
> #####################
> Summary for attempts to pull to -1.0:
>
> ### Pulls to -1
>
> pull_geometry = position
> pull_init1 = 0 0 -1
> pull_vec1 = 0 0 0
>
> pull_geometry = direction
> pull_init1 = -1.0
> pull_vec1 = 0 0 1
>
> pull_geometry = direction
> pull_init1 = 1.0
> pull_vec1 = 0 0 -1
>
> ### Pulls to +1
>
> pull_geometry = direction
> pull_init1 = 1.0
> pull_vec1 = 0 0 1
>
> #####################
> Detailed results:
>
> pull_geometry = position
> pull_init1 = 0 0 -1
> pull_vec1 = 0 0 0
>
> $ tail coord.xvg
> 98.2000 5.03064 -0.96114
> 98.4000 5.02906 -0.968864
> 98.6000 5.02755 -1.0196
> 98.8000 5.02577 -0.971355
> 99.0000 5.02408 -0.948518
> 99.2000 5.02289 -0.973627
> 99.4000 5.0227 -0.977471
> 99.6000 5.02293 -0.965711
> 99.8000 5.0242 -1.01475
> 100.0000 5.0251 -1.03216
>
> $ tail force.xvg
> 98.2000 -19.4299
> 98.4000 -15.568
> 98.6000 9.8014
> 98.8000 -14.3227
> 99.0000 -25.741
> 99.2000 -13.1865
> 99.4000 -11.2644
> 99.6000 -17.1443
> 99.8000 7.37747
> 100.0000 16.0813
>
> ########################################
>
> pull_geometry = direction
> pull_init1 = 1.0
> pull_vec1 = 0 0 1
>
> $ tail coord.xvg
> 98.2000 5.06691 1.09005
> 98.4000 5.06773 1.04829
> 98.6000 5.06842 1.02481
> 98.8000 5.06934 1.02874
> 99.0000 5.07061 0.995157
> 99.2000 5.07164 0.990872
> 99.4000 5.07205 1.00651
> 99.6000 5.07256 1.02346
> 99.8000 5.07107 0.986439
> 100.0000 5.06931 1.03009
>
> $ tail force.xvg
> 98.2000 -45.0273
> 98.4000 -24.1432
> 98.6000 -12.4043
> 98.8000 -14.3716
> 99.0000 2.42147
> 99.2000 4.56404
> 99.4000 -3.25742
> 99.6000 -11.7324
> 99.8000 6.78027
> 100.0000 -15.0443
>
> ### where it does start at -1.0
>
> $ grep -v '[#|@]' coord.xvg |head
> 0.0000 5.05992 -1.09968
> 0.2000 5.05948 -0.473992
> 0.4000 5.05982 0.43101
> 0.6000 5.06017 0.77986
> 0.8000 5.0609 0.78875
> 1.0000 5.06113 0.75552
> 1.2000 5.06151 0.750633
> 1.4000 5.06086 0.79958
> 1.6000 5.05976 0.821069
> 1.8000 5.05811 0.950296
>
> ###############################
>
> pull_geometry = direction
> pull_init1 = -1.0
> pull_vec1 = 0 0 1
>
> $ tail -n 30 coord.xvg|head -n 10
> 94.2000 5.04636 -1.00959
> 94.4000 5.04605 -1.09414
> 94.6000 5.04503 -1.09134
> 94.8000 5.0431 -1.10409
> 95.0000 5.04174 -1.05292
> 95.2000 5.04012 -1.03421
> 95.4000 5.03944 -1.05723
> 95.6000 5.03981 -1.00803
> 95.8000 5.04072 -1.01506
> 96.0000 5.04055 -0.980655
>
> $ tail -n 30 force.xvg|head -n 10
> 94.2000 4.79288
> 94.4000 47.0722
> 94.6000 45.6695
> 94.8000 52.0426
> 95.0000 26.4623
> 95.2000 17.107
> 95.4000 28.6127
> 95.6000 4.0165
> 95.8000 7.52866
> 96.0000 -9.67265
>
> ###############################
>
> pull_geometry = direction
> pull_init1 = 1.0
> pull_vec1 = 0 0 -1
>
> $ tail coord.xvg
> 98.2000 5.01781 -1.04195
> 98.4000 5.01766 -0.988034
> 98.6000 5.01789 -0.963644
> 98.8000 5.0185 -0.980899
> 99.0000 5.01958 -0.917222
> 99.2000 5.021 -1.00548
> 99.4000 5.02016 -0.970434
> 99.6000 5.01848 -1.01137
> 99.8000 5.01723 -0.950541
> 100.0000 5.01743 -1.01916
>
> $ tail force.xvg
> 98.2000 -20.9744
> 98.4000 5.98316
> 98.6000 18.1779
> 98.8000 9.55039
> 99.0000 41.3892
> 99.2000 -2.73847
> 99.4000 14.7832
> 99.6000 -5.68352
> 99.8000 24.7297
> 100.0000 -9.58189
>
> #####################
> #####################
> #####################
> #####################
>
> Summary for attempts to pull to -0.1:
>
> ### Pulls to -0.1
>
> pull_geometry = position
> pull_init1 = 0 0 -0.1
> pull_vec1 = 0 0 0
>
> pull_geometry = direction
> pull_init1 = -0.1
> pull_vec1 = 0 0 1
>
>
> pull_geometry = direction
> pull_init1 = 0.1
> pull_vec1 = 0 0 -1
>
> ### Pulls to +0.1
>
> pull_geometry = direction
> pull_init1 = 0.1
> pull_vec1 = 0 0 1
>
> #####################
> Detailed results:
>
> pull_geometry = position
> pull_init1 = 0 0 -0.1
> pull_vec1 = 0 0 0
>
> $ tail coord.xvg
> 98.2000 5.05551 -0.0467954
> 98.4000 5.05655 -0.0756043
> 98.6000 5.05742 -0.132113
> 98.8000 5.05886 -0.182411
> 99.0000 5.05929 -0.148237
> 99.2000 5.05957 -0.0355667
> 99.4000 5.06157 0.00486353
> 99.6000 5.06353 0.0215776
> 99.8000 5.06373 -0.0272107
> 100.0000 5.06301 -0.157927
>
> $ tail force.xvg
> 98.2000 -26.6023
> 98.4000 -12.1979
> 98.6000 16.0563
> 98.8000 41.2056
> 99.0000 24.1184
> 99.2000 -32.2166
> 99.4000 -52.4318
> 99.6000 -60.7888
> 99.8000 -36.3946
> 100.0000 28.9634
>
> ########################################
>
> pull_geometry = direction
> pull_init1 = 0.1
> pull_vec1 = 0 0 1
>
> $ tail coord.xvg
> 98.2000 5.03896 -0.0415608
> 98.4000 5.03914 -0.0285805
> 98.6000 5.03966 0.0746529
> 98.8000 5.03966 0.22066
> 99.0000 5.04063 0.254914
> 99.2000 5.04097 0.0771699
> 99.4000 5.03999 -0.0702654
> 99.6000 5.04055 -0.0993152
> 99.8000 5.04165 0.0109239
> 100.0000 5.04156 0.158978
>
> $ tail force.xvg
> 98.2000 70.7804
> 98.4000 64.2902
> 98.6000 12.6735
> 98.8000 -60.3298
> 99.0000 -77.457
> 99.2000 11.415
> 99.4000 85.1327
> 99.6000 99.6576
> 99.8000 44.5381
> 100.0000 -29.4892
>
> ########################################
>
> pull_geometry = direction
> pull_init1 = -0.1
> pull_vec1 = 0 0 1
>
> $ tail coord.xvg
> 98.2000 5.02845 -0.0551189
> 98.4000 5.02783 -0.0799781
> 98.6000 5.0266 -0.145213
> 98.8000 5.02534 -0.112499
> 99.0000 5.02392 -0.06543
> 99.2000 5.02339 -0.0648827
> 99.4000 5.02286 -0.130913
> 99.6000 5.02251 -0.196036
> 99.8000 5.02211 -0.190228
> 100.0000 5.02168 -0.216231
>
> $ tail force.xvg
> 98.2000 -22.4406
> 98.4000 -10.0109
> 98.6000 22.6063
> 98.8000 6.24961
> 99.0000 -17.285
> 99.2000 -17.5586
> 99.4000 15.4567
> 99.6000 48.0178
> 99.8000 45.1138
> 100.0000 58.1155
>
> ###############################
>
> pull_geometry = direction
> pull_init1 = 0.1
> pull_vec1 = 0 0 -1
>
> $ tail coord.xvg
> 98.2000 5.05883 -0.110131
> 98.4000 5.05931 -0.156342
> 98.6000 5.0597 -0.143227
> 98.8000 5.05965 -0.13037
> 99.0000 5.05919 -0.0630012
> 99.2000 5.06013 -0.0468867
> 99.4000 5.06169 -0.1017
> 99.6000 5.06282 -0.205357
> 99.8000 5.06437 -0.194031
> 100.0000 5.06543 -0.139003
>
> $ tail force.xvg
> 98.2000 -5.0653
> 98.4000 -28.1712
> 98.6000 -21.6133
> 98.8000 -15.1848
> 99.0000 18.4994
> 99.2000 26.5566
> 99.4000 -0.850237
> 99.6000 -52.6784
> 99.8000 -47.0155
> 100.0000 -19.5014
>
>
>
>
>
> --
> gmx-users mailing list gmx-users at gromacs.org
> http://lists.gromacs.org/mailman/listinfo/gmx-users
> Please search the archive at http://www.gromacs.org/search before posting!
> Please don't post (un)subscribe requests to the list. Use the
> www interface or send it to gmx-users-request at gromacs.org.
> Can't post? Read http://www.gromacs.org/mailing_lists/users.php
_________________________________________________________________
Express yourself instantly with MSN Messenger! Download today it's FREE!
http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://maillist.sys.kth.se/pipermail/gromacs.org_gmx-users/attachments/20091118/c63cde51/attachment.html>
More information about the gromacs.org_gmx-users
mailing list