Hmm. I am getting the desired output now, at least as far as the pulled atoms are concerned, they are all close to the bilayer center (was not so in a free simulation), and therefore my suspicion is that the code is working. <br>
<br>Just to re-iterate, the atoms to be pulled to the bilayer center were present at the lipid-water interface in both leaflets. <br><br>Here is the (apparently successful) pull code:<br><br>; COM PULLING<br>pull                = umbrella<br>
pull_geometry       = position<br>pull_dim        = N N Y<br>pull_start        = no<br>pull_nstxout        = 5000<br>pull_nstfout        = 5000<br>pull_ngroups        = 2<br>pull_group0         = POPC<br>; global atom number of a POPC atom in the middle of the xy box<br>
pull_pbcatom0       = 3100<br>pull_group1         = C35TOP<br>; global atom number of a C35 atom in the middle of the xy box<br>pull_pbcatom1       = 5467 <br>pull_init1          = 0 0 0.0<br>pull_rate1          = 0<br>pull_k1             = 500<br>
pull_vec1           = 0 0 0<br>pull_group2         = C35BOT<br>; global atom number of a C35 atom in the middle of the xy box<br>pull_pbcatom2       = 7755<br>pull_init2          = 0 0 0.0<br>pull_rate2          = 0<br>pull_k2             = 500<br>
pull_vec2           = 0 0 0<br><br>##########################<br>Here is the output from grompp<br><br>Pull group  natoms  pbc atom  distance at start     reference at t=0<br>       0      4992      3100<br>       1        16      5467   0.000  0.000  3.184   0.000  0.000  0.000<br>
       2        16      7755  -0.000  0.000 -3.160   0.000  0.000  0.000<br><br>###########################<br>The average COM pull En. and potential from the log file after 100 ps. <br> 2.96054e+03 <br><br>###########################<br>
And here is the output in the log files, detailing the pulling parameters<br><br>pull                 = umbrella<br>   pull_geometry        = position<br>   pull_dim (3):<br>      pull_dim[0]=0<br>      pull_dim[1]=0<br>      pull_dim[2]=1<br>
   pull_r1              = 1<br>   pull_r0              = 1.5<br>   pull_constr_tol      = 1e-06<br>   pull_nstxout         = 5000<br>   pull_nstfout         = 5000<br>   pull_ngrp            = 2<br>   pull_group 0:<br>     atom (4992):<br>
        atom[0,...,4991] = {0,...,4991}<br>     weight: not available<br>     pbcatom              = 3099<br>     vec (3):<br>        vec[0]= 0.00000e+00<br>        vec[1]= 0.00000e+00<br>        vec[2]= 0.00000e+00<br>     init (3):<br>
        init[0]= 0.00000e+00<br>        init[1]= 0.00000e+00<br>        init[2]= 0.00000e+00<br>     rate                 = 0<br>     k                    = 0<br>     kB                   = 0<br>   pull_group 1:<br>     atom (16):<br>
        atom[0]=5026<br>        atom[1]=5114<br>        atom[2]=5202<br>        atom[3]=5290<br>        atom[4]=5378<br>        atom[5]=5466<br>        atom[6]=5554<br>        atom[7]=5642<br>        atom[8]=5730<br>        atom[9]=5818<br>
        atom[10]=5906<br>        atom[11]=5994<br>        atom[12]=6082<br>        atom[13]=6169<br>        atom[14]=6258<br>        atom[15]=6346<br>     weight: not available<br>     pbcatom              = 5466<br>     vec (3):<br>
        vec[0]= 0.00000e+00<br>        vec[1]= 0.00000e+00<br>        vec[2]= 0.00000e+00<br>     init (3):<br>        init[0]= 0.00000e+00<br>        init[1]= 0.00000e+00<br>        init[2]= 0.00000e+00<br>     rate                 = 0<br>
     k                    = 500<br>     kB                   = 500<br>   pull_group 2:<br>     atom (16):<br>        atom[0]=6434<br>        atom[1]=6522<br>        atom[2]=6610<br>        atom[3]=6698<br>        atom[4]=6786<br>
        atom[5]=6874<br>        atom[6]=6962<br>        atom[7]=7050<br>        atom[8]=7138<br>        atom[9]=7226<br>        atom[10]=7314<br>        atom[11]=7402<br>        atom[12]=7490<br>        atom[13]=7578<br>        atom[14]=7666<br>
        atom[15]=7754<br>     weight: not available<br>     pbcatom              = 7754<br>     vec (3):<br>        vec[0]= 0.00000e+00<br>        vec[1]= 0.00000e+00<br>        vec[2]= 0.00000e+00<br>     init (3):<br>        init[0]= 0.00000e+00<br>
        init[1]= 0.00000e+00<br>        init[2]= 0.00000e+00<br>     rate                 = 0<br>     k                    = 500<br>     kB                   = 500<br><br>#########################<br><br>I would want to make sure I am doing this right <br>
<br>Best Wishes<br><br>Maria<br><br><br><br><br><div class="gmail_quote">On Wed, Sep 8, 2010 at 4:09 PM,  <span dir="ltr">&lt;<a href="mailto:chris.neale@utoronto.ca">chris.neale@utoronto.ca</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Maria,<br>
<br>
I highly doubt that you are correct. If you want more help, please copy and paste your commands and some relevant output back to the list.<br>
<br>
Chris.<br>
<br>
--original message --<br>
<br>
Message: 4<br>
Date: Wed, 8 Sep 2010 15:07:15 +0200<br>
From: maria goranovic &lt;<a href="mailto:mariagoranovic@gmail.com" target="_blank">mariagoranovic@gmail.com</a>&gt;<br>
Subject: Re: [gmx-users] restraining atoms to the plane at the bilayer<br>
        center:        pull code ?<br>
To: Discussion list for GROMACS users &lt;<a href="mailto:gmx-users@gromacs.org" target="_blank">gmx-users@gromacs.org</a>&gt;<br>
Message-ID:<br>
        &lt;aANLkTi=RQv+Ozsff0u5pMXsUAq-jpJaGhnNVpDrJM=<a href="mailto:ZY@mail.gmail.com" target="_blank">ZY@mail.gmail.com</a>&gt;<br>
Content-Type: text/plain; charset=&quot;iso-8859-1&quot;<br>
<br>
Dear Chris,<br>
<br>
Thank you for the code. I did check out pull_pbcatomN, and thank you for the<br>
heads up that it is a global index. I used a central atom in the box for<br>
each of the two groups as pull_pbcatom.<br>
<br>
After using the code below with a rate constant of ~ 5500 for about 100 ps,<br>
I realized that the atoms in different leaflets were being pulled in the<br>
same direction.  I wanted certain atoms of either leaflet to be restrained<br>
to the bilayer center. However, the code pulls all the atoms in the same<br>
direction, such that atoms from one leaflet do approach the bilayer center,<br>
but those from the other leaflet tend to get further away from the bilayer<br>
center.  Thus, one actually needs two groups to be pulled, one each for the<br>
atoms in each leaflet. Once this was fixed, the code worked just fine.<br>
<br>
Again, thank you.<br>
<br>
Maria<br>
<br>
<br>
<br>
On Tue, Sep 7, 2010 at 3:40 PM, &lt;<a href="mailto:chris.neale@utoronto.ca" target="_blank">chris.neale@utoronto.ca</a>&gt; wrote:<br>
<br>
[Hide Quoted Text]<br>
Maria, try this. There actually is a lot of this on the mailing list, so I<br>
suggest checking it a little deeper for your next querry, or at least<br>
outlining how you looked and what you found so that it is clear you have<br>
tried.<br>
<br>
Also, read about pull_pbcatomN and think carefully about how you want to<br>
set that up. It is a *global* index.<br>
<br>
; COM PULLING<br>
pull                     = umbrella<br>
pull_geometry            = position<br>
pull_dim                 = N N Y<br>
pull_start               = no<br>
pull_nstxout             = 500<br>
pull_nstfout             = 500<br>
pull_ngroups             = 1<br>
pull_group0              = &lt;&lt;&lt;bilayer-group&gt;&gt;&gt;<br>
pull_pbcatom0            = 0<br>
pull_group1              = &lt;&lt;&lt;pulled-group&gt;&gt;&gt;<br>
pull_pbcatom1            = 0<br>
pull_init1               = 0 0 0.0<br>
pull_rate1               = 0<br>
pull_k1                  = &lt;&lt;&lt;force-constant&gt;&gt;&gt;<br>
pull_vec1                = 0 0 0<br>
<br>
-- original message --<br>
<br>
<br>
The manual does discuss restraining to a plane, but this must be the plane<br>
in which the atom is already present.<br>
<br>
[  position_restraints ]<br>
; ai   funct    fc<br>
...<br>
3   1   1000   0   0<br>
<br>
How about restraining the atom to some other plane? For example, how about<br>
restraining a phosphate group initially at the lipid-water interface to the<br>
bilayer center (for whatever fancy reasons) ? Won&#39;t this require pulling<br>
the<br>
atom to that plane first?<br>
<br>
If it can be achieved using the position restraints alone, it is not clear<br>
to me how to do this?<br>
<br>
-Maria<br>
<br>
<br>
<br>
On Tue, Sep 7, 2010 at 12:53 PM, Justin A. Lemkul &lt;jalemkul at <a href="http://vt.edu" target="_blank">vt.edu</a>&gt;<br>
wrote:<br>
<br>
maria goranovic wrote:<br>
<br>
  I want to restrain certain atoms of my simulation to the plane<br>
perpendicular to the bilayer normal, and at the bilayer center. Can<br>
someone<br>
please provide a quick guide on how to do this? I read the pull-code<br>
options, but restraining to a plane did not seem possible?<br>
<br>
<br>
  You can restrain atoms to a plane using position restraints.  See the<br>
manual for an example.<br>
-Justin<br>
--<br>
Maria G.<br>
Technical University of Denmark<br>
Copenhagen<br><font color="#888888">
<br>
-- <br>
gmx-users mailing list    <a href="mailto:gmx-users@gromacs.org" target="_blank">gmx-users@gromacs.org</a><br>
<a href="http://lists.gromacs.org/mailman/listinfo/gmx-users" target="_blank">http://lists.gromacs.org/mailman/listinfo/gmx-users</a><br>
Please search the archive at <a href="http://www.gromacs.org/Support/Mailing_Lists/Search" target="_blank">http://www.gromacs.org/Support/Mailing_Lists/Search</a> before posting!<br>
Please don&#39;t post (un)subscribe requests to the list. Use thewww interface or send it to <a href="mailto:gmx-users-request@gromacs.org" target="_blank">gmx-users-request@gromacs.org</a>.<br>
Can&#39;t post? Read <a href="http://www.gromacs.org/Support/Mailing_Lists" target="_blank">http://www.gromacs.org/Support/Mailing_Lists</a><br>
</font></blockquote></div><br><br clear="all"><br>-- <br>Maria G.<br>Technical University of Denmark<br>Copenhagen<br>