added VV parameters to mdp_opt.html
[gromacs.git] / share / html / online / mdp_opt.html
blobc9ee3900a040546c2c5fc965c1e91ed5f6caf838
1 <HTML>
2 <HEAD>
3 <TITLE>mdp options</TITLE>
4 <LINK rel=stylesheet href="style.css" type="text/css">
5 <BODY text="#000000" bgcolor="#FFFFFF" link="#0000FF" vlink="#990000" alink="#FF0000">
6 <TABLE WIDTH="98%" NOBORDER >
7 <TR><TD WIDTH=400>
8 <TABLE WIDTH=400 NOBORDER>
9 <TD WIDTH=116>
10 <a href="http://www.gromacs.org/"><img SRC="../images/gmxlogo_small.jpg"BORDER=0 height=133 width=116></a></td>
11 <td ALIGN=LEFT VALIGN=TOP WIDTH=280><br><h2>mdp options</h2><font size=-1><A HREF="../online.html">Main Table of Contents</A></font><br><br></td>
12 </TABLE></TD><TD WIDTH="*" ALIGN=RIGHT VALIGN=BOTTOM><p> </p><B>VERSION 4.0<br>
13 Sun 18 Jan 2009</B></td></tr></TABLE>
14 <HR>
16 <!--
18 PLEASE BE VERY CAREFUL WHEN EDITING THIS FILE: IT MUST BE
19 AUTOMATICALLY PARSED BY A SIMPLE SCRIPT (doc/mkmdp) TO PRODUCE A
20 CORRESPONDING LATEX FILE.
22 IF YOU'RE NOT SURE ABOUT WHAT YOU'RE DOING, DON'T DO IT!
24 -->
26 <H3>Table of Contents</H3>
28 <ul>
29 <li><A HREF="#general"><b>General remarks</b></A>
30 <p> </p>
31 <li><A HREF="#pp"><b>preprocessing</b></A> (include, define)
32 <li><A HREF="#run"><b>run control</b></A> (integrator, tinit, dt, nsteps, init_step, nstcalcenergy, comm_mode, nstcomm, comm_grps)
33 <li><A HREF="#ld"><b>langevin dynamics</b></A> (bd_fric, ld_seed)
34 <li><A HREF="#em"><b>energy minimization</b></A> (emtol, emstep, nstcgsteep)
35 <li><a HREF="#xmdrun"><b>shell molecular dynamics</b></a>(emtol,niter,fcstep)
36 <li><a HREF="#tpi"><b>test particle insertion</b></a>(rtpi)
37 <li><A HREF="#out"><b>output control</b></A> (nstxout, nstvout, nstfout, nstlog, nstenergy, nstxtcout, xtc_precision, xtc_grps, energygrps)
38 <li><A HREF="#nl"><b>neighbor searching</b></A> (nstlist, ns_type, pbc, periodic_molecules, rlist, rlistlong)
39 <li><A HREF="#el"><b>electrostatics</b></A> (coulombtype, rcoulomb_switch, rcoulomb, epsilon_r, epsilon_rf)
40 <li><A HREF="#vdw"><b>VdW</b></A> (vdwtype, rvdw_switch, rvdw, DispCorr)
41 <li><A HREF="#table"><b>tables</b></A> (table-extension, energygrp_table)
42 <li><A HREF="#ewald"><b>Ewald</b></A> (fourierspacing, fourier_nx, fourier_ny, fourier_nz, pme_order, ewald_rtol, ewald_geometry, epsilon_surface, optimize_fft)
43 <li><A HREF="#tc"><b>Temperature coupling</b></A> (tcoupl, tc_grps, tau_t, ref_t)
44 <li><A HREF="#pc"><b>Pressure coupling</b></A> (pcoupl, pcoupltype, tau_p, compressibility, ref_p, refcoord_scaling)
45 <li><A HREF="#sa"><b>simulated annealing</b></A> (annealing, annealing_npoints, annealing_time, annealing_temp)
46 <li><A HREF="#vel"><b>velocity generation</b></A> (gen_vel, gen_temp, gen_seed)
47 <li><A HREF="#bond"><b>bonds</b></A> (constraints, constraint_algorithm, unconstrained_start, shake_tol, lincs_order, lincs_iter, lincs_warnangle, morse)
48 <li><A HREF="#egexcl"><b>Energy group exclusions</b></A> (energygrp_excl)
49 <li><A HREF="#walls"><b>Walls</b></A> (nwall, wall_type, wall_r_linpot, wall_atomtype,
50 wall_density, wall_ewald_zfac)
51 <li><A HREF="#pull"><b>COM pulling</b></A> (pull, ...)
52 <li><A HREF="#nmr"><b>NMR refinement</b></A> (disre, disre_weighting, disre_mixed, disre_fc, disre_tau, nstdisreout, orire, orire_fc, orire_tau, orire_fitgrp, nstorireout)
53 <li><A HREF="#free"><b>Free Energy calculations</b></A> (free_energy, init_lambda, delta_lambda, sc_alpha, sc_power, sc_sigma, couple-moltype, couple-lambda0, couple-lambda1, couple-intramol)
54 <li><A HREF="#neq"><b>Non-equilibrium MD</b></A> (acc_grps, accelerate, freezegrps, freezedim, cos_acceleration, deform)
55 <li><A HREF="#ef"><b>Electric fields</b></A> (E_x, E_xt, E_y, E_yt, E_z, E_zt )
56 <li><A HREF="#qmmm"><b>Mixed quantum/classical dynamics</b></A> (QMMM, QMMM-grps, QMMMscheme, QMmethod, QMbasis, QMcharge, Qmmult, CASorbitals, CASelectrons, SH)
57 <li><A HREF="#gbsa"><b>Implicit solvent</b></A> (implicit_solvent, gb_algorithm, nstgbradii, rgbradii, gb_epsilon_solvent, gb_saltconc, gb_obc_alpha, gb_obc_beta, gb_obc_gamma, gb_dielectric_offset, sa_algorithm, sa_surface_tension)
58 <li><A HREF="#user"><b>User defined thingies</b></A> (user1_grps, user2_grps, userint1, userint2, userint3, userint4, userreal1, userreal2, userreal3, userreal4)
59 <li><A HREF="#idx"><b>Index</b></A>
60 </ul>
61 </P>
63 <HR>
65 <A NAME="general"><br>
66 <h3>General</h3>
68 <P>
69 Default values are given in parentheses. The first option in
70 the list is always the default option. Units are given in
71 square brackets The difference between a dash and an underscore
72 is ignored. </P>
74 <P>
75 A <a href="mdp.html">sample <TT>.mdp</TT> file</a> is
76 available. This should be appropriate to start a normal
77 simulation. Edit it to suit your specific needs and desires. </P>
79 <A NAME="pp"><br>
80 <hr>
81 <h3>Preprocessing</h3>
83 <dl>
84 <dt><h4>include:</h4></dt>
85 <dd>directories to include in your topology. Format:
86 <PRE>-I/home/john/my_lib -I../more_lib</PRE></dd>
87 <dt><h4>define:</h4></dt>
88 <dd>defines to pass to the preprocessor, default is no defines. You can use
89 any defines to control options in your customized topology files. Options
90 that are already available by default are:
91 <dd><dl compact>
92 <dt>-DFLEXIBLE</dt>
93 <dd>Will tell grompp to include flexible water in stead of rigid water into your
94 topology, this can be useful for normal mode analysis.</dd>
95 <dt>-DPOSRES</dt>
96 <dd>Will tell grompp to include posre.itp into your topology, used for
97 <!--Idx-->position restraints<!--EIdx-->.</dd>
98 </dl>
99 </dl>
101 <A NAME="run"><br>
102 <hr>
103 <h3>Run control</h3>
105 <dl>
106 <dt><h4>integrator:</h4></dt>
107 <dd><dl compact></dd>
108 <dt><b>md</b></dt>
109 <dd>A <!--Idx-->leap-frog<!--EIdx--> algorithm for integrating Newton's
110 equations of motion.</dd>
111 <dt><b>md-vv</b></dt>
112 <dd>A velocity Verlet algorithm for integrating Newton's equations of motion.
113 For constant NVE simulations the results are analytically, but not binary,
114 identical to the <b>md</b> leap-frog integrator, except for the kinetic
115 energy, which is determined from the whole step velocities and is therefore
116 slightly too small. The advantage of this integrator is more accurate,
117 reversible Nose-Hoover and Parrinello-Rahman coupling integration
118 based on Trotter expansion, as well as (slightly too small) full step velocity
119 output. This all comes at the cost off extra computation, especially with
120 constraints and extra communication in parallel. Note that for nearly all
121 production simulations the <b>md</b> integrator is accurate enough.
122 </dd>
123 <dt><b>md-vv-avek</b></dt>
124 <dd>A velocity Verlet algorithm identical to <b>md-vv</b>, except that
125 the kinetic energy is determined more accurately as the average of
126 the two half step kinetic energies as in the <b>md</b> integrator.
127 With Nose-Hoover and/or Parrinello-Rahman coupling this comes with
128 a slight increase in computational cost.
129 </dd>
130 <dt><b>sd</b></dt>
131 <dd> An accurate leap-frog stochastic dynamics integrator.
132 Four Gaussian random number are required
133 per integration step per degree of freedom. With constraints,
134 coordinates needs to be constrained twice per integration step.
135 Depending on the computational cost of the force calculation,
136 this can take a significant part of the simulation time.
137 The temperature for one or more groups of atoms
138 (<b><A HREF="#tc">tc_grps</A></b>)
139 is set with <b><A HREF="#tc">ref_t</A></b> [K],
140 the inverse friction constant for each group is set with
141 <b><A HREF="#tc">tau_t</A></b> [ps].
142 The parameter <b><A HREF="#tc">tcoupl</A></b> is ignored.
143 The random generator is initialized with <b><A HREF="#ld">ld_seed</A></b>.
144 When used as a thermostat, an appropriate value for <b>tau_t</b> is 2 ps,
145 since this results in a friction that is lower than the internal friction
146 of water, while it is high enough to remove excess heat
147 (unless <b>cut-off</b> or <b>reaction-field</b> electrostatics is used).
148 <b>NOTE:</b> temperature deviations decay twice as fast as with
149 a Berendsen thermostat with the same <b>tau_t</b>.</dd>
150 <dt><b>sd1</b></dt>
151 <dd> An efficient leap-frog stochastic dynamics integrator.
152 This integrator is equivalent to <b>sd</b>, except that it requires
153 only one Gaussian random number and one constraint step.
154 This integrator is less accurate.
155 For water the relative error in the temperature with this integrator
156 is 0.5 <b>delta_t</b>/<b>tau_t</b>, but for other systems it can be higher.
157 Use with care and check the temperature.</dd>
158 <dt><b>bd</b></dt>
159 <dd>An Euler integrator for Brownian or position Langevin dynamics, the
160 velocity is the force divided by a friction coefficient
161 (<b><A HREF="#ld">bd_fric</A></b> [amu ps<sup>-1</sup>])
162 plus random thermal noise (<b><A HREF="#tc">ref_t</A></b>).
163 When <b><A HREF="#ld">bd_fric</A></b>=0, the friction coefficient for each
164 particle is calculated as mass/<b><A HREF="#tc">tau_t</A></b>, as for the
165 integrator <tt>sd</tt>.
166 The random generator is initialized with <b><A HREF="#ld">ld_seed</A></b>.</dd>
168 <dt>The following algorithms are not integrators, but selected using
169 the integrator tag anyway</dt>
170 <dt><b>steep</b></dt>
171 <dd>A <!--Idx-->steepest descent<!--EIdx--> algorithm for energy
172 minimization. The maximum step size is <b><A HREF="#em">emstep</A></b>
173 [nm], the tolerance is <b><A HREF="#em">emtol</A></b> [kJ
174 mol<sup>-1</sup> nm<sup>-1</sup>].</dd>
175 <dt><b>cg</b></dt>
176 <dd>A <!--Idx-->conjugate gradient<!--EIdx--> algorithm for energy
177 minimization, the tolerance is <b>emtol</b> [kJ mol<sup>-1</sup>
178 nm<sup>-1</sup>]. CG is more efficient when a steepest descent step
179 is done every once in a while, this is determined by
180 <b><A HREF="#em">nstcgsteep</A></b>.
181 For a minimization prior to a normal mode analysis, which requires
182 a very high accuracy, GROMACS should be compiled in double precision.</dd>
183 <dt><b>l-bfgs</b></dt>
184 <dd>A <!--Idx-->quasi-Newtonian<!--EIdx--> algorithm for energy minimization
185 according to the low-memory Broyden-Fletcher-Goldfarb-Shanno approach.
186 In practice this seems to converge faster than Conjugate Gradients, but due
187 to the correction steps necessary it is not (yet) parallelized.
188 </dd>
189 <dt><b>nm</b></dt>
190 <dd><!--Idx-->Normal mode analysis<!--EIdx--> is performed
191 on the structure in the <tt>tpr</tt> file. GROMACS should be
192 compiled in double precision.</dd>
193 <dt><b>tpi</b></dt>
194 <dd> Test particle insertion. The last molecule in the topology
195 is the test particle. A trajectory should be provided with
196 the <tt>-rerun</tt> option of <tt>mdrun</tt>. This trajectory
197 should not contain the molecule to be inserted. Insertions
198 are performed <b>nsteps</b> times in each frame at random locations
199 and with random orientiations of the molecule. When <b>nstlist</b>
200 is larger than one, <b>nstlist</b> insertions are performed
201 in a sphere with radius <b><A HREF="#tpi">rtpi</A></b>
202 around a the same random location using the same neighborlist
203 (and the same long-range energy when <b>rvdw</b> or <b>rcoulomb</b>
204 &gt <b>rlist</b>, which is only allowed for single-atom molecules).
205 Since neighborlist construction is expensive, one can perform several
206 extra insertions with the same list almost for free.
207 The random seed is set with <b><A HREF="#ld">ld_seed</A></b>.
208 The temperature for the Boltzmann weighting is set with
209 <b><A HREF="#tc">ref_t</A></b>, this should match the temperature
210 of the simulation of the original trajectory.
211 Dispersion correction is implemented correctly for tpi.
212 All relevant quantities are written to the file specified with
213 the <tt>-tpi</tt> option of <tt>mdrun</tt>.
214 The distribution of insertion energies is written to the file specified with
215 the <tt>-tpid</tt> option of <tt>mdrun</tt>.
216 No trajectory or energy file is written.
217 Parallel tpi gives identical results to single node tpi.
218 For charged molecules, using PME with a fine grid is most accurate
219 and also efficient, since the potential in the system only needs
220 to be calculated once per frame.
221 </dd>
222 <dt><b>tpic</b></dt>
223 <dd> Test particle insertion into a predefined cavity location.
224 The procedure is the same as for <b>tpi</b>, except that one coordinate
225 extra is read from the trajectory, which is used as the insertion location.
226 The molecule to be inserted should be centered at 0,0,0. Gromacs does
227 not do this for you, since for different situations a different
228 way of centering might be optimal.
229 Also <b><A HREF="#tpi">rtpi</A></b> sets the radius for the sphere
230 around this location. Neighbor searching is done only once per frame,
231 <b>nstlist</b> is not used.
232 Parallel tpic gives identical results to single node tpic.
233 </dl>
235 <dt><h4>tinit: (0) [ps]</h4></dt>
236 <dd>starting time for your run (only makes sense for integrators <tt>md</tt>,
237 <tt>sd</tt> and <tt>bd</tt>)</dd>
238 <dt><h4>dt: (0.001) [ps]</h4></dd>
239 <dd>time step for integration (only makes sense for integrators <tt>md</tt>,
240 <tt>sd</tt> and <tt>bd</tt>)</dd>
241 <dt><h4>nsteps: (0)</h4></dt>
242 <dd>maximum number of steps to integrate</dd>
243 <dt><h4>init_step: (0)</h4></dt>
244 <dd>The starting step.
245 The time at an step i in a run is calculated as: t = <tt>tinit</tt> + <tt>dt</tt>*(<tt>init_step</tt> + i).
246 The free-energy lambda is calculated as: lambda = <tt>init_lambda</tt> + <tt>delta_lambda</tt>*(<tt>init_step</tt> + i).
247 Also non-equilibrium MD parameters can depend on the step number.
248 Thus for exact restarts or redoing part of a run it might be necessary to
249 set <tt>init_step</tt> to the step number of the restart frame.
250 <tt>tpbconv</tt> does this automatically.
251 </dd>
252 <dt><h4>nstcalcenergy: (-1)</h4></dt>
253 <dd>The frequency for calculating the energies, including the temperature
254 and the pressure, 0 is never.
255 This option is only relevant with dynamics.
256 With a twin-range cut-off setup <b>nstcalcenergy</b> should be equal to
257 or a multiple of <b>nstlist</b>.
258 This option affects the performance in parallel simulations,
259 because calculating energies requires global communication between all
260 processes which can become a bottleneck at high parallelization.
261 With global temperature and/or pressure coupling the time step for
262 the coupling algorithm is <b>nstcalcenergy</b>*<b>dt</b>.
263 Take this into account when setting <b>tau_t</b> and/or <b>tau_p</b>.
264 The default value of -1 sets <b>nstcalcenergy</b> equal to <b>nstlist</b>,
265 unless <b>nstlist</b> &le 0, then a value of 10 is used;
266 for velocity Verlet integrators <b>nstcalcenergy</b> is set to 1.</dd>
267 <dt><h4>comm_mode:</h4></dt>
268 <dd><dl compact>
269 <dt><b>Linear</b></dt>
270 <dd>Remove center of mass translation</dd>
271 <dt><b>Angular</b></dt>
272 <dd>Remove center of mass translation and rotation around the center of mass
273 </dd>
274 <dt><b>No</b></dt>
275 <dd>No restriction on the center of mass motion
276 </dl></dd>
277 <dt><h4>nstcomm: (10) [steps]</h4></dt>
278 <dd>frequency for center of mass motion removal</dd>
279 <dt><h4>comm_grps:</h4></dt>
280 <dd>group(s) for center of mass motion removal, default is the whole system</dd>
281 </dl>
283 <A NAME="ld"><br>
284 <hr>
285 <h3><!--Idx-->Langevin dynamics<!--EIdx--></h3>
287 <dl>
288 <dt><h4>bd_fric: (0) [amu ps<sup>-1</sup>]</h4></dt>
289 <dd>Brownian dynamics friction coefficient.
290 When <b>bd_fric</b>=0, the friction coefficient for each
291 particle is calculated as mass/<b><A HREF="#tc">tau_t</A></b>.</dd>
292 <dt><h4>ld_seed: (1993) [integer]</h4></dt>
293 <dd>used to initialize random generator for thermal noise
294 for stochastic and Brownian dynamics.
295 When <b>ld_seed</b> is set to -1, the seed is calculated as
296 <tt>(time() + getpid()) % 1000000</tt>.
297 When running BD or SD on multiple processors, each processor uses a seed equal
298 to <b>ld_seed</b> plus the processor number.</dd>
299 </dl>
301 <A NAME="em"><br>
302 <hr>
303 <h3><!--Idx-->Energy minimization<!--EIdx--></h3>
304 <dl>
305 <dt><h4>emtol: (10.0) [kJ mol<sup>-1</sup> nm<sup>-1</sup>]</h4></dt>
306 <dd>the minimization is converged when the maximum force is smaller than
307 this value</dd>
308 <dt><h4>emstep: (0.01) [nm]</h4></dt>
309 <dd>initial step-size</dd>
310 <dt><h4>nstcgsteep: (1000) [steps]</h4></dt>
311 <dd>frequency of performing 1 steepest descent step while doing
312 conjugate gradient energy minimization.</dd>
313 <dt><h4>nbfgscorr: (10)</h4></dt>
314 <dd>Number of correction steps to use for L-BFGS minimization. A higher
315 number is (at least theoretically) more accurate, but slower.</dd>
316 </dl>
318 <A NAME="xmdrun"><br>
319 <hr>
320 <h3><!--Idx-->Shell Molecular Dynamics<!--EIdx--></h3> When shells or
321 flexible constraints are present in the system the positions of the shells
322 and the lengths of the flexible constraints are optimized at
323 every time step until either the RMS force on the shells and constraints
324 is less than emtol, or a maximum number of iterations (niter) has been reached
325 <dl>
326 <dt><h4>emtol: (10.0) [kJ mol<sup>-1</sup> nm<sup>-1</sup>]</h4></dt>
327 <dd>the minimization is converged when the maximum force is smaller than
328 this value. For shell MD this value should be 1.0 at most, but since the
329 variable is used for energy minimization as well the default is 10.0.</dd>
330 <dt><h4>niter: (20)</h4></dt>
331 <dd>maximum number of iterations for optimizing the shell positions
332 and the flexible constraints.</dd>
333 <dt><h4>fcstep: (0) [ps<sup>2</sup>]</h4></dt>
334 <dd>the step size for optimizing the flexible constraints.
335 Should be chosen as mu/(d<sup>2</sup>V/d q<sup>2</sup>)
336 where mu is the reduced mass of two particles in a flexible constraint
337 and d<sup>2</sup>V/d q<sup>2</sup> is the second derivative of the potential
338 in the constraint direction. Hopefully this number does not differ too
339 much between the flexible constraints, as the number of iterations
340 and thus the runtime is very sensitive to <tt>fcstep</tt>.
341 Try several values!</dd>
342 </dl>
344 <A NAME="tpi"><br>
345 <hr>
346 <h3>Test particle insertion</h3>
347 <dl>
348 <dt><h4>rtpi: (0.05) [nm]</h4></dt>
349 <dd>the test particle insertion radius see integrators
350 <b><a href="#run">tpi</a></b> and <b><a href="#run">tpic</a></b></dd>
351 </dl>
353 <A NAME="out"><br>
354 <hr>
355 <h3>Output control</h3>
356 <dl>
357 <dt><h4>nstxout: (100) [steps]</h4></dt>
358 <dd>frequency to write coordinates to output
359 <!--Idx-->trajectory file<!--EIdx-->, the last coordinates are always written</dd>
360 <dt><h4>nstvout: (100) [steps]</h4></dt>
361 <dd>frequency to write velocities to output trajectory,
362 the last velocities are always written</dd>
363 <dt><h4>nstfout: (0) [steps]</h4></dt>
364 <dd>frequency to write forces to output trajectory.</dd>
365 <dt><h4>nstlog: (100) [steps]</h4></dt>
366 <dd>frequency to write energies to <!--Idx-->log file<!--EIdx-->,
367 the last energies are always written</dd>
368 <dt><h4>nstenergy: (100) [steps]</h4></dt>
369 <dd>frequency to write energies to energy file,
370 the last energies are always written,
371 should be a multiple of <b>nstcalcenergy</b></dd>,
372 note that the exact sums and fluctuations over all MD steps
373 modulo <b>nstcalcenergy</b> are stored in the energy file,
374 so <tt>g_energy</tt> can report exact
375 energy averages and fluctuations also when <b>nstenergy</b> &gt 1</dd>
376 <dt><h4>nstxtcout: (0) [steps]</h4></dt>
377 <dd>frequency to write coordinates to xtc trajectory</dd>
378 <dt><h4>xtc_precision: (1000) [real]</h4></dt>
379 <dd>precision to write to xtc trajectory</dd>
380 <dt><h4>xtc_grps:</h4></dt>
381 <dd>group(s) to write to xtc trajectory, default the whole system is written
382 (if <b>nstxtcout</b> is larger than zero)</dd>
383 <dt><h4>energygrps:</h4></dt>
384 <dd>group(s) to write to energy file</dd>
385 </dl>
387 <A NAME="nl"><br>
388 <hr>
389 <h3><!--Idx-->Neighbor searching<!--EIdx--></h3>
390 <dl>
391 <dt><h4>nstlist: (10) [steps]</h4></dt>
392 <dd><dl compact>
393 <dt><b>&gt 0</b></dt>
394 <dd>Frequency to update the <!--Idx-->neighbor list<!--EIdx--> (and
395 the long-range forces, when using twin-range cut-off's). When this is 0,
396 the neighbor list is made only once.
397 With energy minimization the neighborlist will be updated for every
398 energy evaluation when <b>nstlist</b> &gt 0</dd>.
399 <dt><b>0</b></dt>
400 <dd>The neighbor list is only constructed once and never updated.
401 This is mainly useful for vacuum simulations in which all particles
402 see each other.</dd>
403 <dt><b>-1</b></dt>
404 <dd>Automated update frequency.
405 This can only be used with switched, shifted or user potentials where
406 the cut-off can be smaller than <b>rlist</b>. One then has a buffer
407 of size <b>rlist</b> minus the longest cut-off.
408 The neighbor list is only updated when one or more particles have moved further
409 than half the buffer size from the center of geometry of their charge group
410 as determined at the previous neighbor search.
411 Coordinate scaling due to pressure coupling or the <b>deform</b> option
412 is taken into account.
413 This option guarantees that their are no cut-off artifacts.
414 But for larger systems this can come at a high computational cost,
415 since the neighbor list update frequency will be determined
416 by just one or two particles moving slightly beyond the half buffer length
417 (which not even necessarily implies that the neighbor list is invalid),
418 while 99.99% of the particles are fine.
419 </dd>
420 </dl></dd>
422 <dt><h4>ns_type:</h4></dt>
423 <dd><dl compact>
424 <dt><b>grid</b></dt>
425 <dd>Make a grid in the box and only check atoms in neighboring grid
426 cells when constructing a new neighbor list every <b>nstlist</b> steps.
427 In large systems grid search is much faster than simple search.</dd>
428 <dt><b>simple</b></dt>
429 <dd>Check every atom in the box when constructing a new neighbor list
430 every <b>nstlist</b> steps.</dd>
431 </dl></dd>
433 <dt><h4>pbc:</h4></dt>
434 <dd><dl compact>
435 <dt><b>xyz</b></dt>
436 <dd>Use periodic boundary conditions in all directions.</dd>
437 <dt><b>no</b></dt>
438 <dd>Use no periodic boundary conditions, ignore the box.
439 To simulate without cut-offs, set all cut-offs to 0 and <b>nstlist</b>=0.
440 For best performance without cut-offs, use <b>nstlist</b>=0,
441 <b>ns_type</b>=simple
442 and particle decomposition instead of domain decomposition.</dd>
443 <dt><b>xy</b></dt>
444 <dd>Use periodic boundary conditions in x and y directions only.
445 This works only with <b>ns_type=grid</b> and can be used
446 in combination with <b><a href="#walls">walls</a></b>.
447 Without walls or with only one wall the system size is infinite
448 in the z direction. Therefore pressure coupling or Ewald summation
449 methods can not be used.
450 These disadvantages do not apply when two walls are used.</dd>
451 </dl></dd>
453 <dt><h4>periodic_molecules:</h4></dt>
454 <dd><dl compact>
455 <dt><b>no</b></dt>
456 <dd>molecules are finite, fast molecular pbc can be used</dd>
457 <dt><b>yes</b></dt>
458 <dd>for systems with molecules that couple to themselves through
459 the periodic boundary conditions, this requires a slower pbc algorithm
460 and molecules are not made whole in the output</dd>
461 </dl></dd>
463 <dt><h4>rlist: (1) [nm]</h4></dt>
464 <dd>cut-off distance for the short-range neighbor list</dd>
466 <dt><h4>rlistlong: (-1) [nm]</h4></dt>
467 <dd>Cut-off distance for the long-range neighbor list.
468 This parameter is only relevant for a twin-range cut-off setup
469 with switched potentials. In that case a buffer region is required to account
470 for the size of charge groups. In all other cases this parameter
471 is automatically set to the longest cut-off distance.</dd>
472 </dl>
475 <A NAME="el"><br>
476 <hr>
477 <h3><!--Idx-->Electrostatics<!--EIdx--></h3>
478 <dl>
479 <dt><h4>coulombtype:</h4></dt>
480 <dd><dl compact>
482 <dt><b>Cut-off</b></dt>
483 <dd>Twin range cut-off's with neighborlist cut-off <b>rlist</b> and
484 Coulomb cut-off <b>rcoulomb</b>,
485 where <b>rcoulomb</b> &gt= <b>rlist</b>.
487 <dt><b>Ewald</b></dt>
488 <dd>Classical <!--Idx-->Ewald sum<!--EIdx--> electrostatics.
489 The real-space cut-off <b>rcoulomb</b> should be equal to <b>rlist</b>.
490 Use e.g. <b>rlist</b>=0.9, <b>rcoulomb</b>=0.9. The highest magnitude of
491 wave vectors used in reciprocal space is controlled by <b>fourierspacing</b>.
492 The relative accuracy of direct/reciprocal space
493 is controlled by <b>ewald_rtol</b>.
494 <br>
495 NOTE: Ewald scales as O(N<sup>3/2</sup>)
496 and is thus extremely slow for large systems. It is included mainly for
497 reference - in most cases PME will perform much better.</dd>
499 <dt><b><!--Idx-->PME<!--EIdx--></b></dt>
500 <dd>Fast Particle-Mesh Ewald electrostatics. Direct space is similar
501 to the Ewald sum, while the reciprocal part is performed with
502 FFTs. Grid dimensions are controlled with <b>fourierspacing</b> and the
503 interpolation order with <b>pme_order</b>. With a grid spacing of 0.1
504 nm and cubic interpolation the electrostatic forces have an accuracy
505 of 2-3e-4. Since the error from the vdw-cutoff is larger than this you
506 might try 0.15 nm. When running in parallel the interpolation
507 parallelizes better than the FFT, so try decreasing grid dimensions
508 while increasing interpolation.</dd>
510 <dt><b><!--Idx-->PPPM<!--EIdx--></b></dt>
511 <dd>Particle-Particle Particle-Mesh algorithm for long range
512 electrostatic interactions.
513 Use for example <b>rlist</b><tt>=0.9</tt>, <b>rcoulomb</b><tt>=0.9</TT>.
514 The grid dimensions are controlled by <b>fourierspacing</b>.
515 Reasonable grid spacing for PPPM is 0.05-0.1 nm.
516 See <tt>Shift</tt> for the details of the particle-particle potential.
517 <br>
518 NOTE: the pressure in incorrect when using PPPM.</dd>
520 <dt><b><!--Idx-->Reaction-Field<!--EIdx--></b></dt>
521 <dd>Reaction field with Coulomb cut-off <b>rcoulomb</b>,
522 where <b>rcoulomb</b> &gt= <b>rlist</b>.
523 The dielectric constant beyond the cut-off is <b>epsilon_rf</b>.
524 The dielectric constant can be set to infinity by setting <b>epsilon_rf</b>=0.</dd>
526 <dt><b>Generalized-Reaction-Field</b></dt>
527 <dd>Generalized reaction field with Coulomb cut-off <b>rcoulomb</b>,
528 where <b>rcoulomb</b> &gt= <b>rlist</b>.
529 The dielectric constant beyond the cut-off is <b>epsilon_rf</b>.
530 The ionic strength is computed from the number of charged
531 (i.e. with non zero charge) <!--Idx-->charge group<!--EIdx-->s.
532 The temperature for the GRF potential is set with
533 <b><A HREF="#tc">ref_t</A></b> [K].</dd>
535 <dt><b>Reaction-Field-zero</b></dt>
536 <dd>In GROMACS normal reaction-field electrostatics leads to bad
537 energy conservation. <b>Reaction-Field-zero</b> solves this
538 by making the potential zero beyond the cut-off. It can only
539 be used with an infinite dielectric constant (<b>epsilon_rf=0</b>),
540 because only for that value the force vanishes at the cut-off.
541 <b>rlist</b> should be 0.1 to 0.3 nm larger than <b>rcoulomb</b>
542 to accommodate for the size of charge groups and diffusion
543 between neighbor list updates. This, and the fact that table lookups
544 are used instead of analytical functions make <b>Reaction-Field-zero</b>
545 computationally more expensive than normal reaction-field.</dd>
547 <dt><b>Reaction-Field-nec</b></dt>
548 <dd>The same as <b>Reaction-Field</b>, but implemented as in
549 GROMACS versions before 3.3. No reaction-field correction is applied
550 to excluded atom pairs and self pairs.
551 The 1-4 interactions are calculated using a reaction-field.
552 The missing correction due to the excluded pairs that do not have a 1-4
553 interaction is up to a few percent of the total electrostatic
554 energy and causes a minor difference in the forces and the pressure.</dd>
556 <dt><b>Shift</b></dt>
557 <dd>Analogous to <b>Shift</b> for <b>vdwtype</b>.
558 You might want to use <b>Reaction-Field-zero</b> instead,
559 which has a similar potential shape, but has a physical interpretation
560 and has better energies due to the exclusion correction terms.
561 </dd>
563 <dt><b>Encad-Shift</b></dt>
564 <dd>The Coulomb
565 potential is decreased over the whole range, using the definition
566 from the Encad simulation package.</dd>
568 <dt><b>Switch</b></dt>
569 <dd>Analogous to <b>Switch</b> for <b>vdwtype</b>.
570 Switching the Coulomb potential can lead to serious artifacts,
571 advice: use <b>Reaction-Field-zero</b> instead.</dd>
573 <dt><b>User</b></dt>
574 <dd><a name="usertab"></a><tt>mdrun</tt> will now expect to find a file
575 <tt>table.xvg</tt> with user-defined potential functions for
576 repulsion, dispersion and Coulomb. When pair interactions are present,
577 <tt>mdrun</tt> also expects to find a file <tt>tablep.xvg</tt> for
578 the pair interactions. When the same interactions should be used
579 for non-bonded and pair interactions the user can specify the same
580 file name for both table files.
581 These files should contain 7
582 columns: the <tt>x</tt> value,
583 <tt>f(x)</tt>, <tt>-f'(x)</tt>,
584 <tt>g(x)</tt>, <tt>-g'(x)</tt>,
585 <tt>h(x)</tt>, <tt>-h'(x)</tt>,
586 where f(x) is the Coulomb function, g(x) the dispersion function
587 and h(x) the repulsion function.
588 When <b>vdwtype</b> is not set to <b>User</b> the values
589 for g, -g', h and -h' are ignored.
590 For the non-bonded interactions <tt>x</tt> values should run
591 from 0 to the largest cut-off distance + <b>table-extension</b>
592 and should be uniformly spaced. For the pair interactions the table
593 length in the file will be used.
594 The optimal spacing, which is used for non-user tables,
595 is <tt>0.002</tt> [nm] when you run in single precision
596 or <tt>0.0005</tt> [nm] when you run in double precision.
597 The function value at <tt>x=0</tt> is not important. More information is
598 in the printed manual.</dd>
600 <dt><b>PME-Switch</b></dt>
601 <dd>
602 A combination of PME and a switch function for the direct-space part
603 (see above).
604 <b>rcoulomb</b> is allowed to be smaller than <b>rlist</b>.
605 This is mainly useful constant energy simulations. For constant temperature
606 simulations the advantage of improved energy conservation
607 is usually outweighed by the small loss in accuracy of the electrostatics.
608 </dd>
610 <dt><b>PME-User</b></dt>
611 <dd>
612 A combination of PME and user tables (see above).
613 <b>rcoulomb</b> is allowed to be smaller than <b>rlist</b>.
614 The PME mesh contribution is subtracted from the user table by <tt>mdrun</tt>.
615 Because of this subtraction the user tables should contain
616 about 10 decimal places.
617 </dd>
619 <dt><b>PME-User-Switch</b></dt>
620 <dd>
621 A combination of PME-User and a switching function (see above).
622 The switching function is applied to final particle-particle interaction,
623 i.e. both to the user supplied function and the PME Mesh correction part.
624 </dd>
626 </dl></dd>
628 <A NAME="el2">
629 <dt><h4>rcoulomb_switch: (0) [nm]</h4></dt>
630 <dd>where to start switching the Coulomb potential</dd>
632 <dt><h4>rcoulomb: (1) [nm]</h4></dt>
633 <dd>distance for the Coulomb <!--Idx-->cut-off<!--EIdx--></dd>
635 <dt><h4>epsilon_r: (1)</h4></dt>
636 <dd>The relative <!--Idx-->dielectric constant<!--EIdx-->.
637 A value of 0 means infinity.</dd>
639 <dt><h4>epsilon_rf: (1)</h4></dt>
640 <dd>The relative dielectric constant of the reaction field.
641 This is only used with reaction-field electrostatics.
642 A value of 0 means infinity.</dd>
643 </dl>
645 <A NAME="vdw">
646 <hr>
647 <h3>VdW</h3>
648 <dl>
649 <dt><h4>vdwtype:</h4></dt>
650 <dd><dl compact>
651 <dt><b>Cut-off</b></dt>
652 <dd>Twin range cut-off's with neighbor list cut-off <b>rlist</b> and
653 VdW cut-off <b>rvdw</b>,
654 where <b>rvdw</b> <tt>&gt=</tt> <b>rlist</b>.</dd>
655 <dt><b>Shift</b></dt>
656 <dd>The LJ (not Buckingham) potential is decreased over the whole
657 range and the forces decay smoothly to zero between <b>rvdw_switch</b>
658 and <b>rvdw</b>. The neighbor search cut-off <b>rlist</b> should be
659 0.1 to 0.3 nm larger than <b>rvdw</b> to accommodate for the size of
660 charge groups and diffusion between neighbor list
661 updates.</dd>
663 <dt><b>Switch</b></dt>
664 <dd>The LJ (not Buckingham)
665 potential is normal out to <b>rvdw_switch</b>, after which it is switched
666 off to reach zero at <b>rvdw</b>. Both the potential and force functions
667 are continuously smooth, but be aware that all switch functions will give rise
668 to a bulge (increase) in the force (since we are switching the potential).
669 The neighbor search cut-off <b>rlist</b> should be 0.1 to 0.3 nm larger than
670 <b>rvdw</b> to accommodate for the size of charge groups and diffusion
671 between neighbor list updates.</dd>
673 <dt><b>Encad-Shift</b></dt>
674 <dd>The LJ (not Buckingham)
675 potential is decreased over the whole range, using the definition
676 from the Encad simulation package.</dd>
678 <dt><b>User</b></dt>
679 <dd>See <b><a href="#usertab">user</a></b> for <b>coulombtype</b>.
680 The function value at <tt>x=0</tt> is not important. When you want to
681 use LJ correction, make sure that <b>rvdw</b> corresponds to the
682 cut-off in the user-defined function.
683 When <b>coulombtype</b> is not set to <b>User</b> the values
684 for f and -f' are ignored.</dd>
685 </dl></dd>
687 <dt><h4>rvdw_switch: (0) [nm]</h4></dt>
688 <dd>where to start switching the LJ potential</dd>
690 <dt><h4>rvdw: (1) [nm]</h4></dt>
691 <dd>distance for the LJ or Buckingham <!--Idx-->cut-off<!--EIdx--></dd>
693 <dt><h4>DispCorr:</h4></dt>
694 <dd><dl compact></dd>
695 <dt><b>no</b></dt>
696 <dd>don't apply any correction</dd>
697 <dt><b>EnerPres</b></dt>
698 <dd>apply long range <!--Idx-->dispersion correction<!--EIdx-->s for Energy
699 and Pressure</dd>
700 <dt><b>Ener</b></dt>
701 <dd>apply long range dispersion corrections for Energy
702 only</dd>
703 </dl>
704 </dl>
706 <A NAME="table">
707 <hr>
708 <h3>Tables</h3>
709 <dl>
710 <dt><h4>table-extension: (1) [nm]</h4></dt>
711 <dd>Extension of the non-bonded potential lookup tables beyond the largest cut-off distance.
712 The value should be large enough to account for charge group sizes
713 and the diffusion between neighbor-list updates.
714 Without user defined potential the same table length is used
715 for the lookup tables for the 1-4 interactions,
716 which are always tabulated irrespective of the use of
717 tables for the non-bonded interactions. </dd>
719 <dt><h4>energygrp_table:</h4></dt>
720 <dd>When user tables are used for electrostatics and/or VdW,
721 here one can give pairs of energy groups for which seperate
722 user tables should be used.
723 The two energy groups will be appended to the table file name,
724 in order of their definition in <b>energygrps</b>, seperated by underscores.
725 For example, if <tt>energygrps = Na Cl Sol</tt>
726 and <tt>energygrp_table = Na Na Na Cl</tt>, <tt>mdrun</tt> will read
727 <tt>table_Na_Na.xvg</tt> and <tt>table_Na_Cl.xvg</tt> in addition
728 to the normal <tt>table.xvg</tt> which will be used for all other
729 energy group pairs.
730 </dd>
731 </dl>
733 <A NAME="ewald">
734 <hr>
735 <h3>Ewald</h3>
736 <dl>
737 <dt><h4>fourierspacing: (0.12) [nm]</h4></dt>
738 <dd>The maximum grid spacing for the FFT grid when using PPPM or PME.
739 For ordinary Ewald the spacing times the box dimensions determines the
740 highest magnitude to use in each direction. In all cases
741 each direction can be overridden by entering a non-zero value for
742 <b>fourier_n*</b>.
743 For optimizing the relative load of the particle-particle interactions
744 and the mesh part of PME it is useful to know that
745 the accuracy of the electrostatics remains nearly constant
746 when the Coulomb cut-off and the PME grid spacing are scaled
747 by the same factor.</dd>
749 <dt><h4>fourier_nx (0) ; fourier_ny (0) ; fourier_nz: (0)</h4></dt>
750 <dd>Highest magnitude of wave vectors in reciprocal space when using Ewald.</dd>
751 <dd>Grid size when using PPPM or PME. These values override
752 <b>fourierspacing</b> per direction. The best choice is powers of
753 2, 3, 5 and 7. Avoid large primes.</dd>
755 <dt><h4>pme_order (4)</h4></dt>
756 <dd>Interpolation order for PME. 4 equals cubic interpolation. You might try
757 6/8/10 when running in parallel and simultaneously decrease grid dimension.</dd>
759 <dt><h4>ewald_rtol (1e-5)</h4></dt>
760 <dd>The relative strength of the Ewald-shifted direct potential at
761 <b>rcoulomb</b> is given by <b>ewald_rtol</b>.
762 Decreasing this will give a more accurate direct sum,
763 but then you need more wave vectors for the reciprocal sum.</dd>
765 <dt><h4>ewald_geometry: (3d)</h4></dt>
766 <dd><dl compact>
767 <dt><b>3d</b></dt>
768 <dd>The Ewald sum is performed in all three dimensions.</dd>
769 <dt><b>3dc</b></dt>
770 <dd>The reciprocal sum is still performed in 3d,
771 but a force and potential correction applied in the z
772 dimension to produce a pseudo-2d summation.
773 If your system has a slab geometry in the x-y plane you can
774 try to increase the z-dimension of the box (a box height of 3 times
775 the slab height is usually ok)
776 and use this option.</dd>
777 </dl></dd>
779 <dt><h4>epsilon_surface: (0)</h4></dt>
780 <dd>This controls the dipole correction to the Ewald summation in 3d. The
781 default value of zero means it is turned off. Turn it on by setting it to the value
782 of the relative permittivity of the imaginary surface around your infinite system. Be
783 careful - you shouldn't use this if you have free mobile charges in your system.
784 This value does not affect the slab 3DC variant of the long range corrections.</dd>
787 <dt><h4>optimize_fft:</h4></dt>
788 <dd><dl compact>
789 <dt><b>no</b></dt>
790 <dd>Don't calculate the optimal FFT plan for the grid at startup.</dd>
791 <dt><b>yes</b></dt>
792 <dd>Calculate the optimal FFT plan for the grid at startup. This saves a
793 few percent for long simulations, but takes a couple of minutes
794 at start.</dd>
795 </dl></dd>
797 </dl>
799 <A NAME="tc"><br>
800 <hr>
801 <h3><!--Idx-->Temperature coupling<!--EIdx--></h3>
803 <dl>
804 <dt><h4>tcoupl:</h4></dt>
805 <dd><dl compact>
806 <dt><b>no</b></dt>
807 <dd>No temperature coupling.</dd>
808 <dt><b>berendsen</b></dt>
809 <dd>Temperature coupling with a Berendsen-thermostat to a bath with
810 temperature <b>ref_t</b> [K], with time constant <b>tau_t</b> [ps].
811 Several groups can be coupled separately, these are specified in the
812 <b>tc_grps</b> field separated by spaces.</dd>
813 <dt><b>nose-hoover</b></dt>
814 <dd>Temperature coupling with a by using a Nose-Hoover extended
815 ensemble. The reference temperature and coupling groups are selected
816 as above, but in this case <b>tau_t</b> [ps] controls the period
817 of the temperature fluctuations at equilibrium, which is slightly
818 different from a relaxation time.
819 For NVT simulations the conserved energy quantity is written
820 to energy and log file.</dd>
821 <dt><b>v-rescale</b></dt>
822 <dd>Temperature coupling using velocity rescaling with a stochastic term
823 (JCP 126, 014101).
824 This thermostat is similar to Berendsen coupling, with the same scaling
825 using <b>tau_t</b>, but the stochastic term ensures that a proper
826 canonical ensemble is generated. The random seed is set with
827 <b><A HREF="#ld">ld_seed</A></b>.
828 This thermostat works correctly even for <b>tau_t</b>=0.
829 For NVT simulations the conserved energy quantity is written
830 to the energy and log file.</dd>
831 </dl>
832 <dt><h4>nh-chain-length (5)</h4></dt>
833 <dd>the number of chained Nose-Hoover thermostats for velocity Verlet integrators, the leap-frog <b>md</b> integrator only supports 1</dd>
834 <dt><h4>tc_grps:</h4></dt>
835 <dd>groups to couple separately to temperature bath</dd>
836 <dt><h4>tau_t: [ps]</h4></dt>
837 <dd>time constant for coupling (one for each group in tc_grps),
838 -1 means no temperature coupling</dd>
839 <dt><h4>ref_t: [K]</h4></dt>
840 <dd>reference temperature for coupling (one for each group in tc_grps)</dd>
841 </dl>
843 <A NAME="pc"><br>
844 <hr>
845 <h3><!--Idx-->Pressure coupling<!--EIdx--></h3>
847 <dl>
848 <dt><h4>pcoupl:</h4></dt>
849 <dd><dl compact>
850 <dt><b>no</b></dt>
851 <dd>No pressure coupling. This means a fixed box size.</dd>
852 <dt><b>berendsen</b></dt>
853 <dd>Exponential relaxation pressure coupling with time constant
854 <b>tau_p</b> [ps]. The box is scaled every timestep. It has been
855 argued that this does not yield a correct thermodynamic ensemble,
856 but it is the most efficient way to scale a box at the beginning
857 of a run.</dd>
858 <dt><b>Parrinello-Rahman</b></dt>
859 <dd>Extended-ensemble pressure coupling where the box vectors
860 are subject to an equation of motion. The equation of motion for
861 the atoms is coupled to this. No instantaneous scaling takes place.
862 As for Nose-Hoover temperature coupling the time constant <b>tau_p</b>
863 [ps] is the period of pressure fluctuations at equilibrium. This is
864 probably a better method when you want to apply pressure scaling
865 during data collection, but beware that you can get very large
866 oscillations if you are starting from a different pressure.</dd>
867 </dl></dd>
868 </dl>
870 <dl>
871 <dt><h4>pcoupltype:</h4></dt>
872 <dd><dl compact>
873 <dt><b>isotropic</b></dt>
874 <dd>Isotropic pressure coupling with time constant <b>tau_p</b> [ps].
875 The compressibility and reference pressure are set with
876 <b>compressibility</b> [bar<sup>-1</sup>] and <b>ref_p</b> [bar], one
877 value is needed.</dd>
878 <dt><b>semiisotropic</b></dt>
879 <dd>Pressure coupling which is isotropic in the x and y direction,
880 but different in the z direction.
881 This can be useful for membrane simulations.
882 2 values are needed for x/y and z directions respectively.</dd>
883 <dt><b>anisotropic</b></dt>
884 <dd>Idem, but 6 values are needed for xx, yy, zz, xy/yx, xz/zx and yz/zy
885 components respectively.
886 When the off-diagonal compressibilities are set to zero,
887 a rectangular box will stay rectangular.
888 Beware that anisotropic scaling can lead to extreme deformation
889 of the simulation box.</dd>
890 <dt><b>surface-tension</b></dt>
891 <dd>Surface tension coupling for surfaces parallel to the xy-plane.
892 Uses normal pressure coupling for the z-direction, while the surface tension
893 is coupled to the x/y dimensions of the box.
894 The first <b>ref_p</b> value is the reference surface tension times
895 the number of surfaces [bar nm],
896 the second value is the reference z-pressure [bar].
897 The two <b>compressibility</b> [bar<sup>-1</sup>] values are the compressibility
898 in the x/y and z direction respectively.
899 The value for the z-compressibility should be reasonably accurate since it
900 influences the convergence of the surface-tension, it can also be set to zero
901 to have a box with constant height.</dd>
902 </dl></dd>
904 <dt><h4>tau_p: (1) [ps]</h4></dt>
905 <dd>time constant for coupling</dd>
906 <dt><h4>compressibility: [bar<sup>-1</sup>]</h4></dt>
907 <dd>compressibility (NOTE: this is now really in bar<sup>-1</sup>)
908 For water at 1 atm and 300 K the compressibility is 4.5e-5 [bar<sup>-1</sup>].</dd>
909 <dt><h4>ref_p: [bar]</h4></dt>
910 <dd>reference pressure for coupling</dd>
911 <dt><h4>refcoord_scaling:</h4></dt>
912 <dt><b>no</b></dt>
913 <dd>The reference coordinates for position restraints are not modified.
914 Note that with this option the virial and pressure will depend on the absolute
915 positions of the reference coordinates.</dd>
916 <dt><b>all</b></dt>
917 <dd>The reference coordinates are scaled with the scaling matrix of the pressure coupling.</dd>
918 <dt><b>com</b></dt>
919 <dd>Scale the center of mass of the reference coordinates with the scaling matrix of the pressure coupling. The vectors of each reference coordinate to the center of mass are not scaled. Only one COM is used, even when there are multiple molecules with position restraints. For calculating the COM of the reference coordinates in the starting configuration, periodic boundary conditions are not taken into account.
920 </dd>
921 </dl>
923 <A NAME="sa"><br>
924 <hr>
925 <h3><!--Idx-->Simulated annealing<!--EIdx--></h3>
927 Simulated annealing is controlled separately for each temperature group in GROMACS. The reference temperature is a piecewise linear function, but you can use an arbitrary number of points for each group, and choose either a single sequence or a periodic behaviour for each group. The actual annealing is performed by dynamically changing the reference temperature used in the thermostat algorithm selected, so remember that the system will usually not instantaneously reach the reference temperature!
928 <dl>
929 <dt><h4>annealing:</h4></dt>
930 <dd>Type of annealing for each temperature group</dd>
931 <dd><dl compact></dd>
932 <dt><b>no</b></dt>
933 <dd>No simulated annealing - just couple to reference temperature value.</dd>
934 <dt><b>single</b></dt>
935 <dd>A single sequence of annealing points. If your simulation is longer than the time of the last point, the temperature will be coupled to this constant value after the annealing sequence has reached the last time point.</dd>
936 <dt><b>periodic</b></dt>
937 <dd>The annealing will start over at the first reference point once the last reference time is reached. This is repeated until the simulation ends.
938 </dd>
939 </dl>
941 <dt><h4>annealing_npoints:</h4></dt>
942 <dd>A list with the number of annealing reference/control points used for
943 each temperature group. Use 0 for groups that are not annealed. The number of entries should equal the number of temperature groups.</dd>
945 <dt><h4>annealing_time:</h4></dt>
946 <dd>List of times at the annealing reference/control points for each group. If you are using periodic annealing, the times will be used modulo the last value, i.e. if the values are 0, 5, 10, and 15, the coupling will restart at the 0ps value after 15ps, 30ps, 45ps, etc. The number of entries should equal the sum of the numbers given in annealing_npoints.</dd>
948 <dt><h4>annealing_temp:</h4></dt>
949 <dd>List of temperatures at the annealing reference/control points for each group. The number of entries should equal the sum of the numbers given in annealing_npoints.</dd>
950 <br>
951 Confused? OK, let's use an example. Assume you have two temperature groups, set the group selections to <tt>annealing = single periodic</tt>, the number of points of each group to <tt>annealing_npoints = 3 4</tt>, the times to <tt>annealing_time = 0 3 6 0 2 4 6</tt> and finally temperatures to <tt>annealing_temp = 298 280 270 298 320 320 298</tt>.
952 The first group will be coupled to 298K at 0ps, but the reference temperature will drop linearly to reach 280K at 3ps, and then linearly between 280K and 270K from 3ps to 6ps. After this is stays constant, at 270K. The second group is coupled to 298K at 0ps, it increases linearly to 320K at 2ps, where it stays constant until 4ps. Between 4ps and 6ps it decreases to 298K, and then it starts over with the same pattern again, i.e. rising linearly from 298K to 320K between 6ps and 8ps. Check the summary printed by grompp if you are unsure!
953 </dl>
955 <A NAME="vel"><br>
956 <hr>
957 <h3>Velocity generation</h3>
959 <dl>
960 <dt><h4>gen_vel:</h4></dt>
961 <dd><dl compact>
962 <dt><b>no</b></dt>
963 <dd> Do not generate velocities at startup. The velocities are set to zero
964 when there are no velocities in the input structure file.</dd>
965 <dt><b>yes</b></dt>
966 <dd>Generate velocities according to a Maxwell distribution at
967 temperature <b>gen_temp</b> [K], with random seed <b>gen_seed</b>.
968 This is only meaningful with integrator <b><A HREF="#run">md</A></b>.</dd>
969 </dl></dd>
970 <dt><h4>gen_temp: (300) [K]</h4></dt>
971 <dd>temperature for Maxwell distribution</dd>
972 <dt><h4>gen_seed: (173529) [integer]</h4></dt>
973 <dd>used to initialize random generator for random velocities,
974 when <b>gen_seed</b> is set to -1, the seed is calculated as
975 <tt>(time() + getpid()) % 1000000</tt></dd>
976 </dl>
978 <A NAME="bond"><br>
979 <hr>
980 <h3>Bonds</h3>
982 <dl>
983 <dt><h4><!--Idx-->constraints<!--EIdx-->:</h4></dt>
984 <dd><dl compact>
985 <dt><b>none</b></dt>
986 <dd>No constraints except for those defined explicitly in the topology,
987 i.e. bonds are represented by a harmonic (or other) potential
988 or a Morse potential (depending on the setting of <b>morse</b>)
989 and angles by a harmonic (or other) potential.
990 <dt><b>hbonds</b></dt>
991 <dd>Convert the bonds with H-atoms to constraints.</dd>
992 <dt><b>all-bonds</b></dt>
993 <dd>Convert all bonds to constraints.</dd>
994 <dt><b>h-angles</b></dt>
995 <dd>Convert all bonds and additionally the angles that involve H-atoms
996 to bond-constraints.</dd>
997 <dt><b>all-angles</b></dt>
998 <dd>Convert all bonds and angles to bond-constraints.</dd>
999 </dl>
1001 <dt><h4>constraint_algorithm:</h4></dt>
1002 <dd><dl compact>
1003 <dt><b><!--Idx-->LINCS<!--EIdx--></b></dt>
1004 <dd>LINear Constraint Solver.
1005 With domain decomposition the parallel version P-LINCS is used.
1006 The accuracy in set with
1007 <b>lincs_order</b>, which sets the number of matrices in the expansion
1008 for the matrix inversion.
1009 After the matrix inversion correction the algorithm does
1010 an iterative correction to compensate for lengthening due to rotation.
1011 The number of such iterations can be controlled with
1012 <b>lincs_iter</b>. The root mean square relative constraint deviation
1013 is printed to the log file every <b>nstlog</b> steps.
1014 If a bond rotates more than <b>lincs_warnangle</b> [degrees] in one step,
1015 a warning will be printed both to the log file and to <TT>stderr</TT>.
1016 LINCS should not be used with coupled angle constraints.
1017 </dd>
1018 <dt><b><!--Idx-->SHAKE<!--EIdx--></b></dt>
1019 <dd>SHAKE is slightly slower and less stable than LINCS, but does work with
1020 angle constraints.
1021 The relative tolerance is set with <b>shake_tol</b>, 0.0001 is a good value
1022 for "normal" MD. SHAKE does not support constraints between atoms
1023 on different nodes, thus it can not be used with domain decompositon
1024 when inter charge-group constraints are present.
1025 SHAKE can not be used with energy minimization.
1026 </dd>
1027 </dl></dd>
1028 <dt><h4>unconstrained_start:</h4></dt>
1029 <dd><dl compact>
1030 <dt><b>no</b></dt>
1031 <dd>apply constraints to the start configuration and reset shells</dd>
1032 <dt><b>yes</b></dt>
1033 <dd>do not apply constraints to the start configuration
1034 and do not reset shells, useful for exact coninuation and reruns</dd>
1035 </dl></dd>
1037 <A NAME="bond2">
1038 <dt><h4>shake_tol: (0.0001)</h4></dt>
1039 <dd>relative tolerance for SHAKE</dd>
1040 <dt><h4>lincs_order: (4)</h4></dt>
1041 <dd>Highest order in the expansion of the constraint coupling matrix.
1042 When constraints form triangles, an additional expansion of the same
1043 order is applied on top of the normal expansion only for the couplings
1044 within such triangles.
1045 For "normal" MD simulations an order of 4 usually suffices, 6 is
1046 needed for large time-steps with virtual sites or BD.
1047 For accurate energy minimization an order of 8 or more might be required.
1048 With domain decomposition, the cell size is limited by the distance
1049 spanned by <b>lincs_order</b>+1 constraints. When one wants to scale
1050 further than this limit, one can decrease <b>lincs_order</b> and increase
1051 <b>lincs_iter</b>, since the accuracy does not deteriorate
1052 when (1+<b>lincs_iter</b>)*<b>lincs_order</b> remains constant.</dd>
1053 <dt><h4>lincs_iter: (1)</h4></dt>
1054 <dd>Number of iterations to correct for rotational lengthening in LINCS.
1055 For normal runs a single step is sufficient, but for NVE
1056 runs where you want to conserve energy accurately or for accurate
1057 energy minimization you might want to increase it to 2.
1058 <dt><h4>lincs_warnangle: </b>(30) [degrees]</h4></dt>
1059 <dd>maximum angle that a bond can rotate before LINCS will complain</dd>
1061 <dt><h4>morse:</h4></dt>
1062 <dd><dl compact>
1063 <dt><b>no</b></dt>
1064 <dd>bonds are represented by a harmonic potential</dd>
1065 <dt><b>yes</b></dt>
1066 <dd>bonds are represented by a Morse potential</dd>
1067 </dl></dd>
1068 </dl>
1070 <A NAME="egexcl"><br>
1071 <hr>
1072 <h3>Energy group <!--Idx-->exclusions<!--EIdx--></h3>
1073 <dl>
1074 <dt><h4>energygrp_excl: </h4></dt>
1075 <dd>Pairs of energy groups for which all non-bonded interactions are
1076 excluded. An example: if you have two energy groups <tt>Protein</tt>
1077 and <tt>SOL</tt>, specifying
1078 <br>
1079 <tt>energygrp_excl&nbsp;=&nbsp;Protein&nbsp;Protein&nbsp;&nbsp;SOL&nbsp;SOL</tt>
1080 <br>
1081 would give only the non-bonded interactions between the protein and the
1082 solvent. This is especially useful for speeding up energy calculations with
1083 <tt>mdrun -rerun</tt> and for excluding interactions within frozen groups.</dd>
1084 </dl>
1086 <A NAME="walls"><br>
1087 <hr>
1088 <h3><!--Idx-->Walls<!--EIdx--></h3>
1089 <dl>
1090 <dt><h4>nwall: 0</h4></dt>
1091 <dd>When set to <b>1</b> there is a wall at z=0, when set to <b>2</b>
1092 there is also a wall at z=z_box. Walls can only be used with <b>pbc=xy</b>.
1093 When set to <b>2</b> pressure coupling and Ewald summation can be used
1094 (it is usually best to use semiisotropic pressure coupling with
1095 the x/y compressibility set to 0, as otherwise the surface area will change).
1096 Energy groups <tt>wall0</tt> and <tt>wall1</tt> (for <b>nwall=2</b>) are
1097 added automatically to monitor the interaction of energy groups
1098 with each wall.
1099 The <A HREF="#run">center of mass motion removal</A> will be turned
1100 off in the z-direction.</dd>
1101 <dt><h4>wall_type:</h4></dt>
1102 <dl>
1103 <dt><b>9-3</b></dt>
1104 <dd>LJ integrated over the volume behind the wall: 9-3 potential</dd>
1105 <dt><b>10-4</b></dt>
1106 <dd>LJ integrated over the wall surface: 10-4 potential</dd>
1107 <dt><b>table</b></dt><dd>user defined potentials indexed with the z distance from the wall, the tables are read analogously to
1108 the <b><A HREF="#table">energygrp_table</A></b> option,
1109 where the first name is for a "normal" energy group and the second name
1110 is <tt>wall0</tt> or <tt>wall1</tt>,
1111 only the dispersion and repulsion columns are used</dd>
1112 </dl>
1113 <dt><h4>wall_r_linpot: -1 (nm)</h4></dt>
1114 <dd>Below this distance from the wall the potential is continued
1115 linearly and thus the force is constant. Setting this option to
1116 a postive value is especially useful for equilibration when some atoms
1117 are beyond a wall.
1118 When the value is &lt= 0 (&lt 0 for <b>wall_type=table</b>),
1119 a fatal error is generated when atoms are beyond a wall.
1120 </dd>
1121 <dt><h4>wall_atomtype:</h4></dt>
1122 <dd>the atom type name in the force field for each wall, this allows
1123 for independent tuning of the interaction of each atomtype with the walls</dd>
1124 <dt><h4>wall_density: [nm<sup>-3</sup>/nm<sup>-2</sup>]</h4></dt>
1125 <dd>the number density of the atoms for each wall for wall types
1126 <b>9-3</b> and <b>10-4</b>
1127 <dt><h4>wall_ewald_zfac: 3</h4></dt>
1128 <dd>The scaling factor for the third box vector for Ewald summation only,
1129 the minimum is 2.
1130 Ewald summation can only be used with <b>nwall=2</b>, where one
1131 should use <b><A HREF="#ewald">ewald_geometry</A>=3dc</b>.
1132 The empty layer in the box serves to decrease the unphysical Coulomb
1133 interaction between periodic images.
1134 </dl>
1136 <A NAME="pull"><br>
1137 <hr>
1138 <h3>COM <!--Idx-->pulling<!--EIdx--></h3>
1139 <dl>
1140 <dt><h4>pull:</h4></dt>
1141 <dl>
1142 <dt><b>no</b></dt>
1143 <dd>No center of mass pulling.
1144 All the following pull options will be ignored
1145 (and if present in the mdp file, they unfortunately generate warnings)</dd>
1146 <dt><b>umbrella</b></dt>
1147 <dd>Center of mass pulling using an umbrella potential
1148 between the reference group and one or more groups.</dd>
1149 <dt><b>constraint</b></dt>
1150 <dd>Center of mass pulling using a constraint
1151 between the reference group and one or more groups.
1152 The setup is identical to the option <b>umbrella</b>, except for the fact
1153 that a rigid constraint is applied instead of a harmonic potential.</dd>
1154 <dt><b>constant_force</b></dt>
1155 <dd>Center of mass pulling using a linear potential and therefore
1156 a constant force. For this option there is no reference position
1157 and therefore the parameters <b>pull_init</b> and <b>pull_rate</b>
1158 are not used.</dd>
1159 </dl>
1160 <dt><h4>pull_geometry</h4></dt>
1161 <dl>
1162 <dt><b>distance</b></dt>
1163 <dd>Pull along the vector connecting the two groups.
1164 Components can be selected with <b>pull_dim</b>.</dd>
1165 <dt><b>direction</b></dt>
1166 <dd>Pull in the direction of <b>pull_vec</b>.</dd>
1167 <dt><b>direction_periodic</b></dt>
1168 <dd>As <b>direction</b>, but allows the distance to be larger than
1169 half the box size. With this geometry the box should not be dynamic
1170 (e.g. no pressure scaling) in the pull dimensions and the pull force
1171 is not added to virial.</dd>
1172 <dt><b>cylinder</b></dt>
1173 <dd>Designed for pulling with respect to a layer where the reference COM
1174 is given by a local cylindrical part of the reference group.
1175 The pulling is in the direction of <b>pull_vec</b>.
1176 From the reference group a cylinder is selected around the axis going
1177 through the pull group with direction <b>pull_vec</b> using two radii.
1178 The radius <b>pull_r1</b> gives the radius within which all
1179 the relative weights are one, between <b>pull_r1</b> and
1180 <b>pull_r0</b> the weights are switched to zero. Mass weighting is also used.
1181 Note that the radii should be smaller than half the box size.
1182 For tilted cylinders they should be even smaller than half the box size
1183 since the distance of an atom in the reference group
1184 from the COM of the pull group has both a radial and an axial component.
1185 <dt><b>position</b></dt>
1186 <dd>Pull to the position of the reference group plus
1187 <b>pull_init</b> + time*<b>pull_rate</b>*<b>pull_vec</b>.</dd>
1188 </dl>
1189 <dt><h4>pull_dim: (Y Y Y)</h4></dt>
1190 <dd>the distance components to be used with geometry <b>distance</b>
1191 and <b>position</b></dd>, also sets which components are printed
1192 int the output files
1193 <dt><h4>pull_r1: (1) [nm]</h4></dt>
1194 <dd>the inner radius of the cylinder for geometry <b>cylinder</b></dd>
1195 <dt><h4>pull_r0: (1) [nm]</h4></dt>
1196 <dd>the outer radius of the cylinder for geometry <b>cylinder</b></dd>
1197 <dt><h4>pull_constr_tol: (1e-6)</h4></dt>
1198 <dd>the relative constraint tolerance for constraint pulling</dd>
1199 <dt><h4>pull_start</h4></dt>
1200 <dd><dl compact>
1201 <dt><b>no</b></dt>
1202 <dd>do not modify <b>pull_init</b>
1203 <dt><b>yes</b></dt>
1204 <dd>add the COM distance of the starting conformation to <b>pull_init</b></dd>
1205 </dl>
1206 <dt><h4>pull_nstxout: (10)</h4></dt>
1207 <dd>frequency for writing out the COMs of all the pull group</dd>
1208 <dt><h4>pull_nstfout: (1)</h4></dt>
1209 <dd>frequency for writing out the force of all the pulled group</dd>
1210 <dt><h4>pull_ngroups: (1)</h4></dt>
1211 <dd>The number of pull groups, not including the reference group.
1212 If there is only one group, there is no difference in treatment
1213 of the reference and pulled group (except with the cylinder geometry).
1214 Below only the pull options for the reference group (ending on 0)
1215 and the first group (ending on 1) are given,
1216 further groups work analogously, but with the number 1 replaced
1217 by the group number.</dd>
1218 <dt><h4>pull_group0: </h4></dt>
1219 <dd>The name of the reference group. When this is empty an absolute reference
1220 of (0,0,0) is used. With an absolute reference the system is no longer
1221 translation invariant and one should think about what to do with
1222 the <A HREF="#run">center of mass motion</A>.</dd>
1223 </b>
1224 <dt><h4>pull_weights0: </h4></dt>
1225 <dd>see <b>pull_weights1</b></dd>
1226 <dt><h4>pull_pbcatom0: (0)</h4></dt>
1227 <dd>see <b>pull_pbcatom1</b></dd>
1228 <dt><h4>pull_group1: </h4></dt>
1229 <dd>The name of the pull group.</b>
1230 <dt><h4>pull_weights1: </h4></dt>
1231 <dd>Optional relative weights which are multiplied with the masses of the atoms
1232 to give the total weight for the COM. The number should be 0, meaning all 1,
1233 or the number of atoms in the pull group.</dd>
1234 <dt><h4>pull_pbcatom1: (0)</h4></dt>
1235 <dd>The reference atom for the treatment of periodic boundary conditions
1236 inside the group
1237 (this has no effect on the treatment of the pbc between groups).
1238 This option is only important when the diameter of the pull group
1239 is larger than half the shortest box vector.
1240 For determining the COM, all atoms in the group are put at their periodic image
1241 which is closest to <b>pull_pbcatom1</b>.
1242 A value of 0 means that the middle atom (number wise) is used.
1243 This parameter is not used with geometry <b>cylinder</b>.</dd>
1244 <dt><h4>pull_vec1: (0.0 0.0 0.0)</h4></dt>
1245 <dd>The pull direction. <tt>grompp</tt> normalizes the vector.</dd>
1246 <dt><h4>pull_init1: (0.0) / (0.0 0.0 0.0) [nm]</h4></dt>
1247 <dd>The reference distance at t=0. This is a single value,
1248 except for geometry <b>position</b> which uses a vector.</dd>
1249 <dt><h4>pull_rate1: (0) [nm/ps]</h4></dt>
1250 <dd>The rate of change of the reference position.</dd>
1251 <dt><h4>pull_k1: (0) [kJ mol<sup>-1</sup> nm<sup>-2</sup>] / [kJ mol<sup>-1</sup> nm<sup>-1</sup>]</h4></dt>
1252 <dd>The force constant. For umbrella pulling this is the harmonic force
1253 constant in [kJ mol<sup>-1</sup> nm<sup>-2</sup>]. For constant force pulling
1254 this is the force constant of the linear potential, and thus minus (!)
1255 the constant force in [kJ mol<sup>-1</sup> nm<sup>-1</sup>].</dd>
1256 <dt><h4>pull_kB1: (pull_k1) [kJ mol<sup>-1</sup> nm<sup>-2</sup>] / [kJ mol<sup>-1</sup> nm<sup>-1</sup>]</h4></dt>
1257 <dd>As <b>pull_k1</b>, but for state B. This is only used when
1258 <A HREF="#free"><b>free_energy</b></A> is turned on.
1259 The force constant is then (1 - lambda)*<b>pull_k1</b> + lambda*<b>pull_kB1</b>.
1260 </dl>
1262 <A NAME="nmr"><br>
1263 <hr>
1264 <h3><!--Idx-->NMR refinement<!--EIdx--></h3>
1265 <dl>
1266 <dt><h4>disre:</h4></dt>
1267 <dd><dl compact>
1268 <dt><b>no</b></dt>
1269 <dd>no <!--Idx-->distance restraints<!--EIdx--> (ignore distance
1270 restraint information in topology file)</dd>
1271 <dt><b>simple</b></dt>
1272 <dd>simple (per-molecule) distance restraints,
1273 ensemble averaging can be performed with <tt>mdrun -multi</tt></dd>
1274 <dt><b>ensemble</b></dt>
1275 <dd>distance restraints over an ensemble of molecules in one simulation box,
1276 should only be used for special cases, such as dimers</dd>
1277 </dl></dd>
1278 <dt><h4>disre_weighting:</h4></dt>
1279 <dd><dl compact>
1280 <dt><b>conservative</b></dt>
1281 <dd>the forces are the derivative of the restraint potential,
1282 this results in an r<sup>-7</sup> weighting of the atom pairs</dd>
1283 <dt><b>equal</b></dt>
1284 <dd>divide the restraint force equally over all atom pairs in the restraint</dd>
1285 </dl></dd>
1286 <dt><h4>disre_mixed:</h4></dt>
1287 <dd><dl compact>
1288 <dt><b>no</b></dt>
1289 <dd>the violation used in the calculation of the restraint force is the
1290 time averaged violation </dd>
1291 <dt><b>yes</b></dt>
1292 <dd>the violation used in the calculation of the restraint force is the
1293 square root of the time averaged violation times the instantaneous violation </dd>
1294 </dl></dd>
1296 <dt><h4>disre_fc: (1000) [kJ mol<sup>-1</sup> nm<sup>-2</sup>]</h4></dt>
1297 <dd>force constant for distance restraints, which is multiplied by a
1298 (possibly) different factor for each restraint</dd>
1300 <dt><h4>disre_tau: (0) [ps]</h4></dt>
1301 <dd>time constant for distance restraints running average</dd>
1303 <dt><h4>nstdisreout: (100) [steps]</h4></dt>
1304 <dd>frequency to write the running time averaged and instantaneous distances
1305 of all atom pairs involved in restraints to the energy file
1306 (can make the energy file very large)</dd>
1308 <A NAME="nmr2">
1309 <dt><h4>orire:</h4></dt>
1310 <dd><dl compact>
1311 <dt><b>no</b></dt>
1312 <dd>no <!--Idx-->orientation restraints<!--EIdx--> (ignore orientation
1313 restraint information in topology file)</dd>
1314 <dt><b>yes</b></dt>
1315 <dd>use orientation restraints, ensemble averaging can be performed
1316 with <tt>mdrun -multi</tt></dd>
1317 </dl>
1318 <dt><h4>orire_fc: (0) [kJ mol]</h4></dt>
1319 <dd>force constant for orientation restraints, which is multiplied by a
1320 (possibly) different factor for each restraint, can be set to zero to
1321 obtain the orientations from a free simulation</dd>
1322 <dt><h4>orire_tau: (0) [ps]</h4></dt>
1323 <dd>time constant for orientation restraints running average</dd>
1324 <dt><h4>orire_fitgrp: </h4></dt>
1325 <dd>fit group for orientation restraining, for a protein backbone is a good
1326 choice</dd>
1327 <dt><h4>nstorireout: (100) [steps]</h4></dt>
1328 <dd>frequency to write the running time averaged and instantaneous orientations
1329 for all restraints and the molecular order tensor to the energy file
1330 (can make the energy file very large)</dd>
1331 </dl>
1333 <A NAME="free"><br>
1334 <hr>
1335 <h3><!--Idx-->Free energy calculations<!--EIdx--></h3>
1337 <dl>
1338 <dt><h4>free_energy:</h4></dt>
1339 <dd><dl compact>
1340 <dt><b>no</b></dt>
1341 <dd>Only use topology A.</dd>
1342 <dt><b>yes</b></dt>
1343 <dd>Interpolate between topology A (lambda=0) to topology B (lambda=1)
1344 and write the derivative of the Hamiltonian with respect to lambda to
1345 the energy file and to <tt>dhdl.xvg</tt>.
1346 The potentials, bond-lengths and angles are interpolated linearly as
1347 described in the manual. When <b>sc_alpha</b> is larger than zero, soft-core
1348 potentials are used for the LJ and Coulomb interactions.</dd>
1349 </dl></dd>
1350 <dt><h4>init_lambda: (0)</h4></dt>
1351 <dd>starting value for lambda</dd>
1352 <dt><h4>delta_lambda: (0)</h4></dt>
1353 <dd>increment per time step for lambda</dd>
1354 <dt><h4>foreign_lambda: ()</h4></dt>
1355 <dd>Zero, one or more lambda values for which Delta G values will
1356 be determined and written to dhdl.xvg every <b>nstdhdl</b> steps.
1357 Free energy differences between different lambda values can then
1358 be determined with <tt>g_bar</tt>.</dd>
1359 <dt><h4>sc_alpha: (0)</h4></dt>
1360 <dd>the soft-core parameter, a value of 0 results in linear interpolation of
1361 the LJ and Coulomb interactions</dd>
1362 <dt><h4>sc_power: (0)</h4></dt>
1363 <dd>the power for lambda in the soft-core function,
1364 only the values 1 and 2 are supported</dd>
1365 <dt><h4>sc_sigma: (0.3) [nm]</h4></dt>
1366 <dd>the soft-core sigma for particles which have a C6 or C12 parameter equal
1367 to zero</dd>
1368 <dt><h4>couple-moltype:</h4></dt>
1369 <dd>Here one can supply a molecule type (as defined in the topology)
1370 for calculating solvation or coupling free energies.
1371 There is a special option <b>system</b> that couples all molecule types
1372 in the system. This can be useful for equilibrating a system
1373 starting from (nearly) random coordinates.
1374 <b>free_energy</b> has to be turned on.
1375 The Van der Waals interactions and/or charges in this molecule type can be
1376 turned on or off between lambda=0 and lambda=1, depending on the settings
1377 of <b>couple-lambda0</b> and <b>couple-lambda1</b>. If you want to decouple
1378 one of several copies of a molecule, you need to copy and rename
1379 the molecule definition in the topology.</dd>
1380 <dt><h4>couple-lambda0:</h4></dt>
1381 <dd><dl compact>
1382 <dt><b>vdw-q</b></dt>
1383 <dd>all interactions are on at lambda=0
1384 <dt><b>vdw</b></dt>
1385 <dd>the charges are zero (no Coulomb interactions) at lambda=0
1386 <dt><b>q</b></dt>
1387 <dd>the Van der Waals interactions are turned at lambda=0; soft-core interactions will be required to avoid singularities
1388 <dt><b>none</b></dt>
1389 <dd>the Van der Waals interactions are turned off and the charges are zero at lambda=0; soft-core interactions will be required to avoid singularities
1390 </dl>
1391 <dt><h4>couple-lambda1:</h4></dt>
1392 <dd> analogous to <b>couple-lambda1</b>, but for lambda=1
1393 <dt><h4>couple-intramol:</h4></dt>
1394 <dd><dl compact>
1395 <dt><b>no</b></dt>
1396 <dd>All intra-molecular non-bonded interactions for moleculetype <b>couple-moltype</b> are replaced by exclusions and explicit pair interactions. In this manner the decoupled state of the molecule corresponds to the proper vacuum state without periodicity effects.
1397 <dt><b>yes</b></dt>
1398 <dd>The intra-molecular Van der Waals and Coulomb interactions are also turned on/off. This can be useful for partitioning free-energies of relatively large molecules, where the intra-molecular non-bonded interactions might lead to kinetically trapped vacuum conformations. The 1-4 pair interactions are not turned off.
1399 </dl>
1400 <dt><h4>nstdhdl: (10)</h4></dt>
1401 <dd>the frequency for writing dH/dlambda and possibly Delta H to dhdl.xvg,
1402 0 means no ouput, should be a multiple of <b>nstcalcenergy</b></dd>
1403 </dl>
1406 <A NAME="neq"><br>
1407 <hr>
1408 <h3><!--Idx-->Non-equilibrium MD<!--EIdx--></h3>
1410 <dl>
1411 <dt><h4>acc_grps: </h4></dt>
1412 <dd>groups for constant acceleration (e.g.: <tt>Protein Sol</tt>)
1413 all atoms in groups Protein and Sol will experience constant acceleration
1414 as specified in the <b>accelerate</b> line</dd>
1415 <dt><h4>accelerate: (0) [nm ps<sup>-2</sup>]</h4></dt>
1416 <dd>acceleration for <b>acc_grps</b>; x, y and z for each group
1417 (e.g. <tt>0.1 0.0 0.0 -0.1 0.0 0.0</tt> means that first group has constant
1418 acceleration of 0.1 nm ps<sup>-2</sup> in X direction, second group the
1419 opposite).</dd>
1420 <dt><h4>freezegrps: </h4></dt>
1421 <dd>Groups that are to be frozen (i.e. their X, Y, and/or Z position will
1422 not be updated; e.g. <tt>Lipid SOL</tt>). <b>freezedim</b> specifies for
1423 which dimension the freezing applies.
1424 To avoid spurious contibrutions to the virial and pressure due to large
1425 forces between completely frozen atoms you need to use
1426 <A HREF="#egexcl">energy group exclusions</A>, this also saves computing time.
1427 Note that frozen coordinates are not subject to pressure scaling.</dd>
1428 <dt><h4>freezedim: </h4></dt>
1429 <dd>dimensions for which groups in <b>freezegrps</b> should be frozen,
1430 specify <tt>Y</tt> or <tt>N</tt> for X, Y and Z and for each group
1431 (e.g. <tt>Y Y N N N N</tt> means that particles in the first group
1432 can move only in Z direction. The particles in the second group can
1433 move in any direction).</dd>
1434 <dt><h4>cos_acceleration: (0) [nm ps<sup>-2</sup>]</h4></dt>
1435 <dd>the amplitude of the acceleration profile for calculating the
1436 <!--Idx-->viscosity<!--EIdx-->.
1437 The acceleration is in the X-direction and the magnitude is
1438 <b>cos_acceleration</b> cos(2 pi z/boxheight).
1439 Two terms are added to the energy file:
1440 the amplitude of the velocity profile and 1/viscosity.</dd>
1441 <dt><h4><!--Idx-->deform<!--EIdx-->: (0 0 0 0 0 0) [nm ps<sup>-1</sup>]</h4></dt>
1442 <dd>The velocities of deformation for the box elements:
1443 a(x) b(y) c(z) b(x) c(x) c(y). Each step the box elements
1444 for which <b>deform</b> is non-zero are calculated as:
1445 box(ts)+(t-ts)*deform, off-diagonal elements are corrected
1446 for periodicity. The coordinates are transformed accordingly.
1447 Frozen degrees of freedom are (purposely) also transformed.
1448 The time ts is set to t at the first step and at steps at which
1449 x and v are written to trajectory to ensure exact restarts.
1450 Deformation can be used together with semiisotropic or anisotropic
1451 pressure coupling when the appropriate compressibilities are set to zero.
1452 The diagonal elements can be used to <!--Idx-->strain<!--EIdx--> a solid.
1453 The off-diagonal elements can be used to <!--Idx-->shear<!--EIdx--> a solid
1454 or a liquid.</dd>
1455 </dl>
1457 <A NAME="ef"><br>
1458 <hr>
1459 <h3><!--Idx-->Electric field<!--EIdx-->s</h3>
1461 <dl>
1462 <dt><h4>E_x ; E_y ; E_z:</h4></dt>
1463 <dd>If you want to use an electric field in a direction, enter 3 numbers
1464 after the appropriate E_*, the first number: the number of cosines,
1465 only 1 is implemented (with frequency 0) so enter 1,
1466 the second number: the strength of the electric field in
1467 <b>V nm<sup>-1</sup></b>,
1468 the third number: the phase of the cosine, you can enter any number here
1469 since a cosine of frequency zero has no phase.</dd>
1470 <dt><h4>E_xt; E_yt; E_zt: </h4></dt>
1471 <dd>not implemented yet</dd>
1472 </dl>
1473 <br>
1475 <hr>
1476 <A NAME="qmmm"><br>
1477 <h3><!--Idx-->Mixed quantum/classical molecular dynamics<!--EIdx--></h3>
1479 <dl>
1480 <dt></dt><h4>QMMM:</h4>
1481 <dd><dl compact="compact">
1482 <dt><b>no</b></dt>
1483 <dd>No QM/MM.</dd>
1484 <dt><b>yes</b></dt>
1485 <dd>Do a QM/MM simulation. Several groups can be described at
1486 different QM levels separately. These are specified in
1487 the <b>QMMM-grps</b> field separated by spaces. The level of <i>ab
1488 initio</i> theory at which the groups are described is speficied
1489 by <b>QMmethod</b> and <b>QMbasis</b> Fields. Describing the
1490 groups at different levels of theory is only possible with the ONIOM
1491 QM/MM scheme, specified by <b>QMMMscheme</b>.</dd>
1492 </dl></dd>
1494 <dt></dt><h4>QMMM-grps:</h4>
1495 <dd>groups to be descibed at the QM level</dd>
1497 <dt></dt><h4>QMMMscheme:</h4>
1498 <dd><dl compact="compact">
1499 <dt><b>normal</b></dt>
1500 <dd>normal QM/MM. There can only be one <b>QMMM-grps</b> that is modelled
1501 at the <b>QMmethod</b> and <b>QMbasis</b> level of <i>ab initio</i>
1502 theory. The rest of the system is described at the MM level. The QM
1503 and MM subsystems interact as follows: MM point charges are included
1504 in the QM one-electron hamiltonian and all Lennard-Jones interactions
1505 are described at the MM level.</dd>
1506 <dt><b>ONIOM</b></dt>
1507 <dd>The interaction between the subsystem is described using the ONIOM
1508 method by Morokuma and co-workers. There can be more than one <b>QMMM-grps</b> each modeled at a different level of QM theory
1509 (<b>QMmethod</b> and <b>QMbasis</b>).
1510 </dd></dl></dd>
1512 <dt></dt><h4>QMmethod: (RHF)</h4>
1513 <dd>Method used to compute the energy and gradients on the QM
1514 atoms. Available methods are AM1, PM3, RHF, UHF, DFT, B3LYP, MP2,
1515 CASSCF, and MMVB. For CASSCF, the number of electrons and orbitals
1516 included in the active space is specified by <b>CASelectrons</b>
1517 and <b>CASorbitals</b>. </dd>
1519 <dt></dt><h4>QMbasis: (STO-3G)</h4>
1520 <dd>Basisset used to expand the electronic wavefuntion. Only gaussian
1521 bassisets are currently available, <i>i.e.</i> STO-3G, 3-21G, 3-21G*,
1522 3-21+G*, 6-21G, 6-31G, 6-31G*, 6-31+G*, and 6-311G.</dd>
1524 <dt></dt><h4>QMcharge: (0) [integer]</h4>
1525 <dd>The total charge in <i>e</i> of the <b>QMMM-grps</b>. In case
1526 there are more than one <b>QMMM-grps</b>, the total charge of each
1527 ONIOM layer needs to be specified separately.</dd>
1529 <dt></dt><h4>QMmult: (1) [integer]</h4>
1530 <dd>The multiplicity of the <b>QMMM-grps</b>. In case there are more
1531 than one <b>QMMM-grps</b>, the multiplicity of each ONIOM layer needs
1532 to be specified separately.</dd>
1534 <dt></dt><h4>CASorbitals: (0) [integer]</h4>
1535 <dd>The number of orbitals to be included in the active space when
1536 doing a CASSCF computation.</dd>
1538 <dt></dt><h4>CASelectrons: (0) [integer]</h4>
1539 <dd>The number of electrons to be included in the active space when
1540 doing a CASSCF computation.</dd>
1542 <dt></dt><h4>SH:</h4>
1543 <dd><dl compact="compact">
1544 <dt><b>no</b></dt>
1545 <dd>No surface hopping. The system is always in the electronic
1546 ground-state.</dd>
1547 <dt><b>yes</b></dt>
1548 <dd>Do a QM/MM MD simulation on the excited state-potential energy
1549 surface and enforce a <i>diabatic</i> hop to the ground-state when the
1550 system hits the conical intersection hyperline in the course the
1551 simulation. This option only works in combination with the CASSCF
1552 method.</dd>
1553 </dl>
1554 </dl>
1556 <A NAME="gbsa"><br>
1557 <hr>
1558 <h3>Implicit solvent</h3>
1560 <dl>
1561 <dt></dt><h4>implicit_solvent:</h4>
1562 <dd><dl compact="compact">
1563 <dt><b>no</b></dt>
1564 <dd>No implicit solvent</dd>
1565 <dt><b>GBSA</b></dt>
1566 <dd>Do a simulation with implicit solvent using the Generalized Born formalism.
1567 Three different methods for calculating the Born radii are available, Still, HCT and
1568 OBC. These are specified with the <b>gb_algorithm</b> field.</dd>
1569 </dl>
1571 <dt></dt><h4>gb_algorithm:</h4>
1572 <dd><dl compact="compact">
1573 <dt><b>Still</b></dt>
1574 <dd>Use the Still method to calculate the Born radii</dd>
1575 <dt><b>HCT</b></dt>
1576 <dd>Use the Hawkins-Cramer-Truhlar method to calculate the Born radii</dd>
1577 <dt><b>OBC</b></dt>
1578 <dd>Use the Onufriev-Bashford-Case method to calculate the Born radii</dd>
1579 </dl>
1581 <dt></dt><h4>nstgbradii: (1) [steps]</h4>
1582 <dd>Frequency to (re)-calculate the Born radii. For most practial purposes,
1583 setting a value larger than 1 violates energy conservation and leads to
1584 unstable trajectories.</dd>
1586 <dt></dt><h4>rgbradii: (1.0) [nm]</h4>
1587 <dd>Cut-off for the calculation of the Born radii. Currently must be equal to rlist</dd>
1589 <dt></dt><h4>gb_epsilon_solvent: (80)</h4>
1590 <dd>Dielectric constant for the implicit solvent</dd>
1592 <dt></dt><h4>gb_saltconc: (0) [M]</h4>
1593 <dd>Salt concentration for implicit solvent models, currently not used</dd>
1595 <dt></dt><h4>gb_obc_alpha (1); gb_obc_beta (0.8); gb_obc_gamma (4.85);</h4>
1596 <dd>Scale factors for the OBC model. Default values are OBC(II).
1597 Values for OBC(I) are 0.8, 0 and 2.91 respectively</dd>
1599 <dt></dt><h4>gb_dielectric_offset: (0.09) [nm]</h4>
1600 <dd>Distance for the di-electric offset when calculating the Born radii. This is
1601 the offset between the center of each atom the center of the polarization energy
1602 for the corresponding atom</dd>
1604 <dt></dt><h4>sa_algorithm</h4>
1605 <dd><dl compact="compact">
1606 <dt><b>no</b></dt>
1607 <dd>Which algorithm is used the the SA part. Note that currently no specific
1608 SA algorithm is implemented. With implicit_solvent=GBSA, a very crude ACE-style
1609 algorithm is used by default</dd>
1610 </dl>
1612 <dt></dt><h4>sa_surface_tension: (2.092) [kj/mol/nm2]</h4>
1613 <dd>Default values for surface tension with SA algorithms. The value, 2.092,
1614 correponds to 0.005 kcal/mol/Angstrom2</dd>
1615 </dl>
1617 <A NAME="user"><br>
1618 <hr>
1619 <h3>User defined thingies</h3>
1621 <dl>
1622 <dt><h4>user1_grps; user2_grps: </h4></dt>
1623 <dt><h4>userint1 (0); userint2 (0); userint3 (0); userint4 (0)</h4></dt>
1624 <dt><h4>userreal1 (0); userreal2 (0); userreal3 (0); userreal4 (0)</h4></dt>
1625 <dd>These you can use if you modify code. You can pass integers and
1626 reals to your subroutine. Check the inputrec definition in
1627 <tt>src/include/types/inputrec.h</tt></dd>
1629 </dl>
1631 <A NAME="idx"><br>
1632 <hr>
1633 <h3>Index</h3>
1637 <multicol cols=4>
1638 <A HREF="#neq">acc_grps</A><br>
1639 <A HREF="#neq">accelerate</A><br>
1640 <A HREF="#sa">annealing</A><br>
1641 <A HREF="#sa">annealing_npoints</A><br>
1642 <A HREF="#sa">annealing_time</A><br>
1643 <A HREF="#sa">annealing_temp</A><br>
1644 <A HREF="#ld">bd_fric</A><br>
1645 <A HREF="#vdw">bDispCorr</A><br>
1646 <A HREF="#run">comm_mode</A><br>
1647 <A HREF="#run">comm_grps</A><br>
1648 <A HREF="#pc">compressibility</A><br>
1649 <A HREF="#bond">constraint_algorithm</A><br>
1650 <A HREF="#bond">constraints</A><br>
1651 <A HREF="#neq">cos_acceleration</A><br>
1652 <A HREF="#el">coulombtype</A><br>
1653 <A HREF="#free">couple-intramol</A><br>
1654 <A HREF="#free">couple-lambda0</A><br>
1655 <A HREF="#free">couple-lambda1</A><br>
1656 <A HREF="#free">couple-moltype</A><br>
1657 <A HREF="#pp">define</A><br>
1658 <A HREF="#neq">deform</A><br>
1659 <A HREF="#free">delta_lambda</A><br>
1660 <A HREF="#nmr">disre</A><br>
1661 <A HREF="#nmr">disre_weighting</A><br>
1662 <A HREF="#nmr">disre_mixed</A><br>
1663 <A HREF="#nmr">disre_fc</A><br>
1664 <A HREF="#nmr">disre_tau</A><br>
1665 <A HREF="#run">dt</A><br>
1666 <A HREF="#em">emstep</A><br>
1667 <A HREF="#em">emtol</A><br>
1668 <A HREF="#egexcl">energygrp_excl</A><br>
1669 <A HREF="#table">energygrp_table</A><br>
1670 <A HREF="#out">energygrps</A><br>
1671 <A HREF="#el2">epsilon_r</A><br>
1672 <A HREF="#el2">epsilon_rf</A><br>
1673 <A HREF="#ewald">ewald_rtol</A><br>
1674 <A HREF="#ewald">ewald_geometry</A><br>
1675 <A HREF="#ewald">epsilon_surface</A><br>
1676 <A HREF="#ef">E_x</A><br>
1677 <A HREF="#ef">E_xt</A><br>
1678 <A HREF="#ef">E_y</A><br>
1679 <A HREF="#ef">E_yt</A><br>
1680 <A HREF="#ef">E_z</A><br>
1681 <A HREF="#ef">E_zt </A><br>
1682 <A HREF="#xmdrun">fcstep</A><br>
1683 <A HREF="#ewald">fourier_nx</A><br>
1684 <A HREF="#ewald">fourier_ny</A><br>
1685 <A HREF="#ewald">fourier_nz</A><br>
1686 <A HREF="#ewald">fourierspacing</A><br>
1687 <A HREF="#free">free_energy</A><br>
1688 <A HREF="#neq">freezedim </A><br>
1689 <A HREF="#neq">freezegrps</A><br>
1690 <A HREF="#vel">gen_seed</A><br>
1691 <A HREF="#vel">gen_temp</A><br>
1692 <A HREF="#vel">gen_vel</A><br>
1693 <A HREF="#pp">include</A><br>
1694 <A HREF="#free">init_lambda</A><br>
1695 <A HREF="#run">init_step</A><br>
1696 <A HREF="#run">integrator</A><br>
1697 <A HREF="#ld">ld_seed</A><br>
1698 <A HREF="#bond2">lincs_iter</A><br>
1699 <A HREF="#bond2">lincs_order</A><br>
1700 <A HREF="#bond2">lincs_warnangle</A><br>
1701 <A HREF="#bond2">morse</A><br>
1702 <A HREF="#em">nbfgscorr</A><br>
1703 <A HREF="#xmdrun">niter</A><br>
1704 <A HREF="#tc">nh-chain-length</A><br>
1705 <A HREF="#em">nstcgsteep</A><br>
1706 <A HREF="#run">nstcalcenergy</A><br>
1707 <A HREF="#run">nstcomm</A><br>
1708 <A HREF="#nmr">nstdisreout</A><br>
1709 <A HREF="#out">nstenergy</A><br>
1710 <A HREF="#run">nsteps</A><br>
1711 <A HREF="#out">nstfout</A><br>
1712 <A HREF="#nl">nstlist</A><br>
1713 <A HREF="#out">nstlog</A><br>
1714 <A HREF="#out">nstvout</A><br>
1715 <A HREF="#out">nstxout</A><br>
1716 <A HREF="#out">nstxtcout</A><br>
1717 <A HREF="#nl">ns_type</A><br>
1718 <A HREF="#wall">nwall</A><br>
1719 <A HREF="#ewald">optimize_fft</A><br>
1720 <A HREF="#nmr2">orire</A><br>
1721 <A HREF="#nmr2">orire_fc</A><br>
1722 <A HREF="#nmr2">orire_tau</A><br>
1723 <A HREF="#nmr2">orire_fitgrp</A><br>
1724 <A HREF="#nmr2">nstorireout</A><br>
1725 <A HREF="#nl">pbc</A><br>
1726 <A HREF="#pc">pcoupl</A><br>
1727 <A HREF="#pc">pcoupltype</A><br>
1728 <A HREF="#nl">periodic_molecules</A><br>
1729 <A HREF="#ewald">pme_order</A><br>
1730 <A HREF="#pull">pull</A><br>
1731 <A HREF="#pc">refcoord_scaling</A><br>
1732 <A HREF="#pc">ref_p</A><br>
1733 <A HREF="#tc">ref_t</A><br>
1734 <A HREF="#el2">rcoulomb_switch</A><br>
1735 <A HREF="#el2">rcoulomb</A><br>
1736 <A HREF="#nl">rlist</A><br>
1737 <A HREF="#nl">rlistlong</A><br>
1738 <A HREF="#tpi">rtpi</A><br>
1739 <A HREF="#vdw">rvdw_switch</A><br>
1740 <A HREF="#vdw">rvdw</A><br>
1741 <A HREF="#free">sc_alpha</A><br>
1742 <A HREF="#free">sc_power</A><br>
1743 <A HREF="#free">sc_sigma</A><br>
1744 <A HREF="#bond2">shake_tol</A><br>
1745 <A HREF="#table">table-extension</A><br>
1746 <A HREF="#pc">tau_p</A><br>
1747 <A HREF="#tc">tau_t</A><br>
1748 <A HREF="#tc">tc_grps</A><br>
1749 <A HREF="#tc">tcoupl</A><br>
1750 <A HREF="#run">tinit</A><br>
1751 <A HREF="#bond">unconstrained_start</A><br>
1752 <A HREF="#user">user1_grps</A><br>
1753 <A HREF="#user">user2_grps</A><br>
1754 <A HREF="#user">userint1</A><br>
1755 <A HREF="#user">userint2</A><br>
1756 <A HREF="#user">userint3</A><br>
1757 <A HREF="#user">userint4</A><br>
1758 <A HREF="#user">userreal1</A><br>
1759 <A HREF="#user">userreal2</A><br>
1760 <A HREF="#user">userreal3</A><br>
1761 <A HREF="#user">userreal4</A><br>
1762 <A HREF="#el">vdwtype</A><br>
1763 <A HREF="#out">xtc_grps</A><br>
1764 <A HREF="#out">xtc_precision</A><br>
1765 <A HREF="#sa">zero_temp_time</A><br>
1766 <A HREF="#walls">wall_atomtype</A><br>
1767 <A HREF="#walls">wall_density</A><br>
1768 <A HREF="#walls">wall_ewald_zfac</A><br>
1769 <A HREF="#walls">wall_r_linpot</A><br>
1770 <A HREF="#walls">wall_type</A><br>
1771 </multicol>
1773 <hr>
1774 <div ALIGN=RIGHT>
1775 <font size="-1"><a href="http://www.gromacs.org">http://www.gromacs.org</a></font><br>
1777 </div>
1778 </BODY>
1779 </HTML>