Quite sure it's just different syntax in topology and mdp file. Compare to C; #define POSRES // expressed as -DPOSRES in the mdp file #ifdef POSRES // when working in the topology file
// Linus On Thu, Jul 26, 2012 at 1:52 PM, <reising...@rostlab.informatik.tu-muenchen.de> wrote: >> >> >> On 7/26/12 7:06 AM, reising...@rostlab.informatik.tu-muenchen.de wrote: >>>> >>>> >>>> On 7/26/12 6:07 AM, reising...@rostlab.informatik.tu-muenchen.de wrote: >>>>>> On 26/07/2012 6:47 PM, reising...@rostlab.informatik.tu-muenchen.de >>>>>> wrote: >>>>>>> Ho, >>>>>>> first I minimize my structure. This is the corresponding mdp file: >>>>>>> >>>>>>> define = -DPOSRES >>>>>>> integrator = steep >>>>>>> emtol = 10 >>>>>>> nsteps = 1500 >>>>>>> nstenergy = 1 >>>>>>> energygrps = System >>>>>>> coulombtype = PME >>>>>>> rcoulomb = 0.9 >>>>>>> rvdw = 0.9 >>>>>>> rlist = 0.9 >>>>>>> fourierspacing = 0.12 >>>>>>> pme_order = 4 >>>>>>> ewald_rtol = 1e-5 >>>>>>> pbc = xyz >>>>>>> >>>>>>> >>>>>>> and then I run a md run. This is the corresponding mdp file: >>>>>>> >>>>>>> define = -DPOSRES >>>>>>> integrator = md >>>>>>> dt = 0.001 >>>>>>> nsteps = 5000 >>>>>>> nstxout = 100 >>>>>>> nstvout = 0 >>>>>>> nstfout = 0 >>>>>>> nstlog = 1000 >>>>>>> nstxtcout = 500 >>>>>>> nstenergy = 5 >>>>>>> energygrps = Protein Non-Protein >>>>>>> nstcalcenergy = 5 >>>>>>> nstlist = 10 >>>>>>> ns-type = Grid >>>>>>> pbc = xyz >>>>>>> rlist = 0.9 >>>>>>> coulombtype = PME >>>>>>> rcoulomb = 0.9 >>>>>>> rvdw = 0.9 >>>>>>> fourierspacing = 0.12 >>>>>>> pme_order = 4 >>>>>>> ewald_rtol = 1e-5 >>>>>>> gen_vel = yes >>>>>>> gen_temp = 200.0 >>>>>>> gen_seed = 9999 >>>>>>> constraints = all-bonds >>>>>>> tcoupl = V-rescale >>>>>>> tc-grps = Protein Non-Protein >>>>>>> tau_t = 0.1 0.1 >>>>>>> ref_t = 298 298 >>>>>>> pcoupl = no >>>>>>> >>>>>>> >>>>>>> >>>>>>> In my topology file I include the restraint files like this: >>>>>>> >>>>>>> ; Include Position restraint file >>>>>>> #ifdef POSRES >>>>>>> #include "posre.itp" >>>>>>> #endif >>>>>>> >>>>>>> #ifdef POSRES >>>>>>> #include "posre_memb.itp" >>>>>>> #endif >>>>>> >>>>>> This won't work for multiple [moleculetype] entries. See >>>>>> http://www.gromacs.org/Documentation/How-tos/Position_Restraints >>>>>> >>>>>>> >>>>>>> >>>>>>> I just recognize that there is a "DPOSRES" in the mdp files and a >>>>>>> "POSRES" >>>>>>> in my topology file. Is this the problem. Do I have to write it the >>>>>>> same >>>>>>> way in the several files? >>>>>> >>>>>> http://www.gromacs.org/Documentation/Include_File_Mechanism >>>>>> >>>>>> Mark >>>>> >>>>> >>>>> I just see that the [ position_restraints ] part is included under the >>>>> [dihedral] and not between the [moleculetype] and the [atom] part. And >>>>> according to the site you wrote me this is a problem, right? But this >>>>> was >>>>> done by gromacs itself. Shell I write it to the [moleculetype] part? >>>>> >>>> >>>> A [position_restraints] directive belongs to the [moleculetype] in >>>> which >>>> it is >>>> declared. The original location of the #include statement produced by >>>> Gromacs >>>> is correct; it follows sequentially within the protein [moleculetype]. >>>> Your >>>> inclusion of the membrane restraint file within the protein >>>> [moleculetype] >>>> is, >>>> however, incorrect. >>>> >>>>> But I can not see why it can not work that I have 2 restriction files? >>>>> Can >>>>> you please explain it to me? >>>>> >>>> >>>> You can have two restraint files for different [moleculetypes] but they >>>> must be >>>> organized as such. >>> >>> okey. So the whole thing with [atoms], [bonds], [dihedral] all contains >>> to >>> the entry in [moleculetype] , right? >>> >> >> Any directive belongs to the [moleculetype] that immediately precedes it. >> Once >> a new [moleculetype] is declared (either directly or indirectly via >> #include >> mechanism), you're working with a different molecule. >> >>> But directly before I include the membrane restriction file I include >>> the >>> membrane definition: >>> >>> #include "amber03.ff/dum.itp" >>> #ifdef POSRES >>> #include "posre_memb.itp" >>> #endif >>> >>> >>> So I thought that it is directly after the atomtype it belongs to. I >>> thought that it is the same in the case with the water, where first the >>> water definition is included and after that the restriction of the >>> water. >>> >>> Or am I wrong? >>> >> >> Well the #include statement shown here is different than the one you >> showed >> previously, which was wrong. Please always be sure you're providing >> accurate >> information - it wastes less time and avoids confusion. >> >>> I include the dummy atoms definition right after the ions. Or is this >>> the >>> wrong position? >>> >> >> The position of #include statements in this context is irrelevant. You >> can list >> the [moleculetypes] in any order you like, but the relevant dependent >> directives >> must be contained appropriately and the order of the listing in >> [molecules] must >> match the coordinate file. Otherwise, it's fairly flexible. >> >> -Justin >> >>> >>> 4935 4952 4950 4951 4 >>> 4950 4954 4952 4953 4 >>> 4954 4973 4972 4974 4 >>> >>> ; Include Position restraint file >>> #ifdef POSRES >>> #include "posre.itp" >>> #endif >>> >>> ; Include water topology >>> #include "amber03.ff/tip3p.itp" >>> >>> #ifdef POSRES_WATER >>> ; Position restraint for each water oxygen >>> [ position_restraints ] >>> ; i funct fcx fcy fcz >>> 1 1 1000 1000 1000 >>> #endif >>> >>> ; Include topology for ions >>> #include "amber03.ff/ions.itp" >>> >>> #include "amber03.ff/dum.itp" >>> #ifdef POSRES >>> #include "posre_memb.itp" >>> #endif >>> >>> >>> >>> >>>> >>>>> So you mean that it is indeed important if I call it POSRES oder >>>>> DPOSRES, >>>>> right? >>>>> >>>> >>>> Yes, syntax is crucial. The proper way to make use of #ifdef blocks is >>>> described in the manual and in the link Mark posted. >>>> > > But when I only use > "define = -POSRES" > instead of > "define = -DPOSRES" > > I get the warning: > "WARNING 1 [file mdp file]: Malformed define option -POSRES" > > And also at the > "http://www.gromacs.org/Documentation/How-tos/Position_Restraints" > site is written that in the mdp file there has to be > "define = -DPOSRES " > So is this the right way to write it in the mdp file. Although in the > topology file which is generated by pdb2gmx stays "#ifdef POSRES"? > > Thank you > >>>> -Justin >>>> >>>> -- >>>> ======================================== >>>> >>>> Justin A. Lemkul, Ph.D. >>>> Research Scientist >>>> Department of Biochemistry >>>> Virginia Tech >>>> Blacksburg, VA >>>> jalemkul[at]vt.edu | (540) 231-9080 >>>> http://www.bevanlab.biochem.vt.edu/Pages/Personal/justin >>>> >>>> ======================================== >>>> -- >>>> gmx-users mailing list gmx-users@gromacs.org >>>> http://lists.gromacs.org/mailman/listinfo/gmx-users >>>> * Only plain text messages are allowed! >>>> * Please search the archive at >>>> http://www.gromacs.org/Support/Mailing_Lists/Search before posting! >>>> * Please don't post (un)subscribe requests to the list. Use the >>>> www interface or send it to gmx-users-requ...@gromacs.org. >>>> * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists >>>> >>> >>> >> >> -- >> ======================================== >> >> Justin A. Lemkul, Ph.D. >> Research Scientist >> Department of Biochemistry >> Virginia Tech >> Blacksburg, VA >> jalemkul[at]vt.edu | (540) 231-9080 >> http://www.bevanlab.biochem.vt.edu/Pages/Personal/justin >> >> ======================================== >> -- >> gmx-users mailing list gmx-users@gromacs.org >> http://lists.gromacs.org/mailman/listinfo/gmx-users >> * Only plain text messages are allowed! >> * Please search the archive at >> http://www.gromacs.org/Support/Mailing_Lists/Search before posting! >> * Please don't post (un)subscribe requests to the list. Use the >> www interface or send it to gmx-users-requ...@gromacs.org. >> * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists >> > > > -- > gmx-users mailing list gmx-users@gromacs.org > http://lists.gromacs.org/mailman/listinfo/gmx-users > * Only plain text messages are allowed! > * Please search the archive at > http://www.gromacs.org/Support/Mailing_Lists/Search before posting! > * Please don't post (un)subscribe requests to the list. Use the > www interface or send it to gmx-users-requ...@gromacs.org. > * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists -- gmx-users mailing list gmx-users@gromacs.org http://lists.gromacs.org/mailman/listinfo/gmx-users * Only plain text messages are allowed! * Please search the archive at http://www.gromacs.org/Support/Mailing_Lists/Search before posting! * Please don't post (un)subscribe requests to the list. Use the www interface or send it to gmx-users-requ...@gromacs.org. * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists