1 <!DOCTYPE HTML PUBLIC
"-//W3C//DTD HTML 3.2//EN">
4 <TITLE>GROMACS FAQ.
</TITLE>
8 <H2>GROMACS Frequently Answered Questions.
</H2>
10 Since this FAQ is written for version
2.0, not all of the solutions
11 may apply to previous GROMACS versions.
15 <DT><B><FONT COLOR=
"#FF0000">Download & Installing
</FONT></B>
17 <DD><A HREF=
"#want">I want GROMACS.
</A>
18 <DD><A HREF=
"#mightwant">I might want GROMACS, but I don't know if my system
20 <DD><A HREF=
"#install">I want to compile and install GROMACS.
</A>
21 <DD><A HREF=
"#MPI">I want to run GROMACS multi-processor.
</A>
22 <DD><A HREF=
"#speed">I want to run GROMACS faster.
</A>
23 <DD><A HREF=
"#size">I want to simulate a very large system using GROMACS.
</A>
25 <P><DT><B><FONT COLOR=
"#FF0000">Preparation
</FONT></B>
27 <DD><A HREF=
"#PDB">I have a PDB file.
</A>
28 <DD><A HREF=
"#multi">I have a protein with multiple subunits.
</A>
29 <DD><A HREF=
"#convert">I want to convert my structure from a .gro, .tpr or trajectory file to a .pdb file.
</A>
30 <DD><A HREF=
"#scmis"><TT>pdb2gmx
</TT> is complaining about long bonds and/or
33 <P><DT><B><FONT COLOR=
"#FF0000">Simulation
</FONT></B>
35 <DD><A HREF=
"#2000"><TT>mdrun
</TT> says my run will end somewhere in (or after)
37 <DD><A HREF=
"#1-4cut"><TT>mdrun
</TT> says:
"1-4 (#,#) interaction not within cut-off".
</A>
38 <DD><A HREF=
"#output">My run seems to be running, but no output is produced.
</A>
39 <DD><A HREF=
"#temp">I get very strange temperatures.
</A>
40 <DD><A HREF=
"#simann">I get very strange temperatures during my simulated annealing run.
</A>
41 <DD><A HREF=
"#recover">My run crashed and I want to continue it.
</A>
43 <P><DT><B><FONT COLOR=
"#FF0000">Analysis
</FONT></B>
45 <DD><A HREF=
"#multPDB">I have a PDB file with multiple entries which I want
47 <DD><A HREF=
"#twostruc">I want to fit two structures which do not have the
48 same number/sequence of atoms.
</A>
49 <DD><A HREF=
"#group">I get tired of having to select the same index group
50 over and over again.
</A>
51 <DD><A HREF=
"#diys">I want to do an analysis GROMACS doesn't have a program
54 <P><DT><B><FONT COLOR=
"#FF0000">Other
</FONT></B>
56 <DD><A HREF=
"#none">My problem is none of the above or none of the solutions below seem to work.
</A>
62 <DT><HR><B><FONT COLOR=
"#FF0000">I want GROMACS. Now what?
</FONT></B>
64 <DD>Go to the
<A HREF=
"software.html">software page
</A> and read it.
65 You should also fill in the
<A HREF=
"docs/license_form.html">license
66 agreement
</A> and send it to us. For academic institutions the
67 license is free. We will give you a username and password so you can
70 <P> (More info can be found in the
71 <A HREF=
"readme2.0.html">download page
</A>.)
76 <DT><HR><B><FONT COLOR=
"#FF0000">I might want GROMACS, but I don't know if
77 my system is supported. Now what?
</FONT></B>
80 <DD><B>GROMACS
</B> is short for
81 <FONT COLOR=
"#0000FF"><B>G
</B></FONT>ROMACS
82 <FONT COLOR=
"#0000FF"><B>R
</B></FONT>uns
83 <FONT COLOR=
"#0000FF"><B>O
</B></FONT>n
84 <FONT COLOR=
"#0000FF"><B>M
</B></FONT>ost
85 <FONT COLOR=
"#0000FF"><B>O
</B></FONT>f
86 <FONT COLOR=
"#0000FF"><B>A
</B></FONT>ll
87 <FONT COLOR=
"#0000FF"><B>C
</B></FONT>omputer
88 <FONT COLOR=
"#0000FF"><B>S
</B></FONT>ystems. For all unix dialects no
89 problems should exist. Especially SUN (SunOS), SGI (IRIX) and LINUX
90 are known to be virtually problem-free. It is even possible to use
91 GROMACS on a MS Windows (pref.
95/
98 or NT) system
92 (you will need
<A HREF=
"http://sourceware.cygnus.com/cygwin">CygWin
</A>).
93 The basic requirements are a version of GNU make (usually called gmake)
94 and a C/C++ compiler. For better performance a good
95 FORTRAN compiler should be available too.
98 Systems for which a default Makefile is present are listed below.
99 For all these systems GROMACS normally compiles without any problems,
100 and can also run in parallel (providing a good version of MPI or PVM is
104 <DT>alx
<DD>Alpha/Linux
106 <DT>dec
<DD>Alpha/Dec (Tru64 unix)
109 <DT>pgi
<DD>Linux/x86 w Portland Compiler
110 <DT>s10
<DD>SGI/R10000/R12000
114 <DT>smp
<DD>IBM SMP nodes
115 <DT>sol
<DD>Sun/SOLARIS
117 <DT>spp
<DD>Convex SPP
119 <DT>ult
<DD>Sun Ultrasparc
120 <DT>win
<DD>Windows9x/NT
125 <P> (More info can be found in the
126 <A HREF=
"readme2.0.html">download page
</A>.)
131 <DT><HR><B><FONT COLOR=
"#FF0000">I want to compile and install GROMACS. Now what?
</FONT></B>
133 <DD>Check out the
<A HREF=
"readme2.0.html">download page
</A> for
135 <A HREF=
"readme2.0.html#install">installing and compiling
</A>
136 GROMACS and
<A HREF=
"readme2.0.html#problems">some hints
</A>
137 for when things go wrong.
138 If all else fails, please don't hesitate to
139 <A HREF=
"mailto:gromacs@chem.rug.nl">contact us
</A>. Also if you have experienced
140 a problem and found a solution, please
141 <A HREF=
"mailto:gromacs@chem.rug.nl">let us know
</A> so other people won't have to
142 do the work you already did all over again.
147 <DT><HR><B><FONT COLOR=
"#FF0000">I want to run GROMACS multi-processor. Now what?
</FONT></B>
151 You will need an up to date version of MPI or PVM.
152 Set
<TT>USE_MPI
</TT> or
<TT>USE_PVM
</TT> to
<TT>yes
</TT>
153 in your
<TT>Makefile.$GMXCPU
</TT> and type:
159 On most architectures you will now have new binaries in the
160 $GMXHOME/bin/$GMXCPU directory. The mdrun in that directory will run
161 both in parallel and non-parallel.
162 On some architectures (e.g. IBM SP) you will have a parallel mdrun binary
163 in $GMXHOME/bin/$GMXCPU_mpi (or _pvm).
165 The extra things needed to start a run on multiple processors are:
166 you have to specify the
<TT>-np
<nr
></TT> option with
167 <A HREF=
"online2.0/grompp.html"><TT>grompp
</TT></A>
168 and you need to start
<A HREF=
"online2.0/mdrun.html"><TT>mdrun
</TT></A>
169 with the appropriate options.
170 For instance on an SGI with the newest verison of MPI:
172 grompp -np
<nr
> -o topol.tpr
<other options
>
173 mpirun -np
<nr
> <dir
>/mdrun -s topol.tpr
<other options
>
175 NOTE: you have to specify the full path of the MPI mdrun binary.
176 The newest version of MPI does not require the
<TT>-np
</TT> option
177 after
<TT>mdrun
</TT>.
179 Newer MPI versions on SGI's can officially not run in the background.
180 To prevent mdrun from hanging when you log out, use the following csh script:
183 mpirun -np
<nr
> <dir
>/mdrun -s topol.tpr
> & log
&
189 <DT><HR><B><FONT COLOR=
"#FF0000">I want to run GROMACS faster. Now what?
</FONT></B>
194 <P> First rest assured that GROMACS is amongst the fastest MD programs
195 currently available. We are often a factor of
2 faster than some of
196 the other leading packages.
</P>
198 <P> Ultimately, one would want to simulate seconds of whole ensembles
199 of proteins. Since that is not nearly possible (we only come
9 orders
200 of magnitude short in time and
18 orders of magnitude short in number
201 of particles), we suggest the following things to at least get the
202 maximum performance currently available:
</P>
206 <LI>Turn off double precision by selecting a non-double precision CPU
207 type when running
<tt>gmx_conf
</TT>. This does not have a negative
208 effect on the outcome of your simulations, the accuracy is normally
209 not restricted by the precision of the floating point notation, but by
210 the numerical integration scheme itself.
<em>This is a free-for-all
211 performance gain of up to
50%
</em> (On our SGI Power
212 Challenge, the double precision version runs some
30% slower than
215 <LI>Use Fortran inner loops (providing you have a good Fortran
216 compiler available for your system). If you have a DEC alpha running
217 Linux, get the Compaq compilers
218 (see our
<A HREF=
"gmxbench.html">benchmark page
</A>).
220 <LI>If your system consists partly of water, use water specific
221 non-bonded optimizations (set
222 <A HREF=online/mdp_opt.html#sol
><tt>solvent_optimization =
223 SOL
</tt></A> in your
<A HREF=
"online2.0/mdp_opt.html"><TT>.mdp
</TT>
224 file
</A>. This will speed up your simulation by about a factor of
2,
225 depending on your system and your machine type.
227 <LI>Run GROMACS parallel on multiple processors (see
228 ``
<A HREF=
"#MPI">I want to run GROMACS multi-processor
</A>'').
229 Although this increases overall performance, effiency may be lost due
230 to sub-linear scaling of the parallel system, e.g.
2 processors
231 perform at
85% of twice the performance of one processor. This gets
232 progressively worse for more processors, for more than
8 processors
233 efficiency drops to about
60%. Because of this, it is often better to
234 run multiple runs on one or a few processors. Check out or
<A
235 HREF=
"gmxbench.html">benchmark page
</A> for some real-life examples on
236 both single- and multi-processor systems.
238 <LI>Preliminary tests show that PME and PPPM are
239 somewhat faster than simulating with a twin range cut-off of
1.0/
1.7
240 nm on some systems. Unfortunately PME and PPPM do not scale as well as
241 cut-off electrostatics when running in parallel.
243 <LI>We have a new option
<TT>-dummies
</TT> for
244 <A HREF=
"online2.0/pdb2gmx.html"><TT>pdb2gmx
</TT></A> in GROMACS
2.0
245 which controls the constraining of hydrogen atoms. This eliminates the
246 highest freqency motions in your system, enabling you to increase the
247 timestep without loss of accuracy to about
4 fs, or even up to
7 fs
248 with negligible loss of accuracy!
250 <LI>If your system has relatively slow disk-IO, and/or you write
251 frames and energies out very often, and/or you have a very large
252 system the performance might be limited by disk access. In that case,
253 you might consider writing less frames to your trajectories
254 (
<TT>.xtc
</TT> and especially
<TT>.trr
</TT> or
<TT>.trj
</TT>) and
255 energy file (
<TT>.ene
</TT> or
<TT>.edr
</TT>).
257 <LI>And last, if you do not yet have the fastest computer available,
258 get it! Or if you
<em>do
</em> have a very fast computer already, get
263 <P> Also see our
<A HREF=
"gmxbench.html">benchmark page
</A> for more
264 details on GROMACS performance. Also be sure to check it out in case
265 you are still considering what type of machine you should buy to
266 perform your simulations.
</P>
271 <DT><HR><B><FONT COLOR=
"#FF0000">I want to simulate a very large system using GROMACS. Now what?
</FONT></B>
275 <DD> Just do it. The limit on the number of atoms in the calculation
276 is only determined by the amount of memory available in your computer
277 system. As an indictaion: a system of
12000 atoms takes about
10Mb of
278 memory, and
6000 atoms about
5.5Mb (on a SGI O2 machine with GROMACS
279 1.6), which comes down to just over
900 bytes memory use per atom in
280 your system (your mileage may vary). Due to the fact that we initially
281 developed GROMACS to run on our home-built parallel machine, with
282 only
8Mb of memory per processor, the code is quite well optimized for
283 memory use. To get an indication of scaling of GROMACS performance as
284 a function of system size, have a look at the
285 <A HREF=
"gmxbench.html">benchmark page
</A>.
290 <DT><HR><B><FONT COLOR=
"#FF0000">I have a PDB file. Now what?
</FONT></B>
294 HREF=
"online2.0/flow.html">flowchart
</A> for a quick overview.
295 Start where it says
"eiwit.pdb" (this is somewhere at the top).
296 More detailed info can be found in the
297 <A HREF=
"online2.0/getting_started.html">Getting Started
</A>
298 section, you probably can start where it says
"Ribonuclease S-Peptide".
302 <DT><HR><B><FONT COLOR=
"#FF0000">I have a protein with multiple subunits. Now what?
</FONT></B>
306 <DD> <TT>pdb2gmx
</TT> can automatically process multimeric proteins,
307 but won't be able to make inter-subunit cystine bridges.
308 <TT>pdb2gmx
</TT> will only recognize the units as different chains if they
309 have different chain identifiers.
314 <DT><HR><B><FONT COLOR=
"#FF0000">I want to convert my structure from a .gro, .tpr or trajectory file to a .pdb file. Now what?
</FONT></B>
318 <DD> Any
<a href=
"online2.0/files.html">generic structure
</a> file,
319 for instance
<TT>.gro
</TT>,
<TT>.pdb
</TT> or
<TT>.tpr
</TT>, can be
320 converted to
<TT>.pdb
</TT> with
321 <a href=
"online2.0/editconf.html">editconf
</a></TT>. You can view a
322 <TT>.pdb
</TT> file with for instance
<TT>rasmol
</TT> Two generic
323 structure files can be fitted with
324 <a href=
"online2.0/g_confrms.html">g_confrms
</a></TT>, the two
325 superimposed structures can be written to a
<TT>.pdb
</TT> file. Any
326 <a href=
"online2.0/files.html">generic trajectory
</a> format can be
327 converted with
<a href=
"online2.0/trjconv.html"><TT>trjconv
</TT></a>.
328 You can dump one frame with
<TT>trjconv -dump
</TT>, or write a
329 <TT>.pdb
</TT> with multiple frames using
<TT>trjconv -op -app
</TT>.
330 If multiple structures in a
<TT>.pdb
</TT> are separated by
331 <TT>ENDMDL
</TT> keywords, you should use
<TT>rasmol -nmrpdb
</TT> to
337 <DT><HR><B><FONT COLOR=
"#FF0000"><TT>pdb2gmx
</TT> is complaining about
338 long bonds and/or missing atoms. Now what?
</FONT></B>
341 <DD> There are probably atoms missing earlier in the
342 <A HREF=
"online2.0/pdb.html"><TT>.pdb
</TT></A> file
343 which makes
<A HREF=
"online2.0/pdb2gmx.html"><TT>pdb2gmx
</TT></A>
344 go crazy. Check the screen output of
<TT>pdb2gmx
</TT>, as it
345 will tell you which one is missing. Then add the atoms in your pdb file,
346 energy minimization will put them in the right place,
347 or fix the side chain with e.g. the
348 <A HREF=
"http://swift.embl-heidelberg.de/whatif/">WhatIF program
</A>.
352 <DT><HR><B><FONT COLOR=
"#FF0000"><TT>mdrun
</TT> says my run will end somewhere
353 in (or after) the year
2000. Now what?
</FONT></B>
356 <DD> This could mean that you have started a very long simulation, or
357 you are using a very slow computer. You might want to check if your
358 simulations really should be as long as it is, or get a faster
359 computer. Either way, there is nothing to worry about because GROMACS
360 is
<FONT COLOR=
"#AA00CC"><B>fully
2000 compliant
</B></FONT>. It might
361 also mean that your simulation somehow caused Not-a-Numbers to be
362 generated (check the energies in your logfile). In that case look at
363 ``
<A HREF=
"#output">My run seems to be running, but no output is
368 <DT><HR><B><FONT COLOR=
"#FF0000"><TT>mdrun
</TT> says:
"1-4 (#,#) interaction
369 not within cut-off". Now what?
</FONT></B>
372 <DD> Most importantly:
<b>do not increase your cut-off!
</b> This error
373 actually indicates that some atoms have gotten a very large velocity,
374 which usually means that (part of) your molecule(s) is (are)
375 exploding. If you are using LINCS for constraints, you probably also
376 already got a number of LINCS warnings. When using SHAKE this will
377 give rise to a SHAKE error, which halts your simulation before the
378 "1-4 not within cutoff" error can appear.
380 There can be a number of reasons for the large velocities in
381 your system. If it happens at the
382 beginning of the simulation, your system might be not equilibrated
383 well enough (e.g. it contains some bad contacts). Try a(nother) round
384 of energy minimization to fix this. Otherwise you might have a very
385 high temperature (which might be caused by incorrect use of
386 <A HREF=
"#simann">simulated annealing
</A>), and/or a too large
387 timestep. Experiment with these parameters till the error stops
393 <DT><HR><B><FONT COLOR=
"#FF0000">My run seems to be running, but no output is produced. Now what?
</FONT></B>
399 <LI>Your simulation might simply be (very) slow, and since output is
400 buffered, it can take quite some time for output to appear in the
401 respective files. If you are trying to fix some problems and you want
402 to get output as fast as possible, you can set the environment
403 variable
<TT>LOG_BUFS
</TT> to
0 by using
<TT>setenv LOG_BUFS
0</TT>,
404 this disables output buffering. Use
<TT>unsetenv LOG_BUFS
</TT> to turn
407 <LI>Something might be going wrong in your simulation, causing
408 e.g.
<tt>not-a-number
</tt>s (
<TT>NAN
</TT>) to be generated (these are
409 the result of e.g. division by zero). Subsequent calculations with
410 <TT>NAN
</TT>'s will generate floating point exceptions which slow
411 everything down by orders of magnitude. On a SGI system this will
412 usually result in a large percentage of CPU time being devoted to
413 'system' (check it with
<TT>osview
</TT>, or for a multi-processor
414 machine with
<TT>top
</TT> and
<TT>osview
</TT>).
416 <LI>You might have all
417 <A HREF=
"online2.0/mdp_opt.html#out"><TT>nst*
</TT></A> parameters (see
418 your
<A HREF=
"online2.0/mdp_opt.html"><TT>.mdp
</TT></A> file) set to
0,
419 this will suppress most output.
421 <LI>Your disk might be full. Eventually this will lead to
422 <TT>mdrun
</TT> crashing, but since output is buffered, it might take a
423 while for
<TT>mdrun
</TT> to realize it can't write.
425 <LI>If you are running with MPI on an SGI you need a script,
426 see
<A HREF=
"#MPI">I want to run GROMACS multi-processor.
</A>
432 <DT><HR><B><FONT COLOR=
"#FF0000">I get very strange temperatures. Now what?
</FONT></B>
434 <P> <DD> If you are using simulated annealing (see
435 <A HREF=online/mdp_opt.html#sa
><TT>.mdp
</TT> options
</A>), check out
436 ``
<A HREF=
"#simann">I get very strange temperatures during my
437 simulated annealing run
</A>''. If you are not using simulated
438 annealing, you might have very close contacts or a too large time
439 step. This causes inaccurate integration which will usually result in
440 a large positive temperature drift. Try some more energy minimization
441 to get rid of the close contacts, or if that still doesn't help, try a
442 short equilibration run with a smal(ler) time step.
<P>
445 <DT><HR><B><FONT COLOR=
"#FF0000">I get very strange temperatures during my simulated annealing run. Now what?
</FONT></B>
449 <DD> This probably means that the initial time in your simulation is
450 not zero ps. The temperature during simulated annealing is controlled
451 by two points on a linear curve: temperature will be zero K at
452 <A HREF=online/mdp_opt.html#sa
><TT>zero_temp_time
</TT></A> ps and it
453 will be
<A HREF=online/mdp_opt.html#sa
><TT>ref_t
</TT></A> K at zero
454 ps. This means that if you do not start your simulation at zero ps,
455 the simulation will not start at
<TT>ref_t
</TT> K. So if your
456 <TT>zero_temp_time
</TT> is positive and the starting time for your
457 simulation is larger than that, the temperature in your simulation
458 will be zero. If your
<TT>zero_temp_time
</TT> is negative, temperature
459 will rise indefenitely with increasing time. Below two schematic
460 graphs are included to clarify things a bit.
464 <TH ALIGN=CENTER COLSPAN=
3>System temperature v.s. Time in simulated annealing:
466 <TH ALIGN=CENTER
><TT>zero_temp_time <
0</TT> :
468 <TH ALIGN=CENTER
><TT>zero_temp_time
> 0</TT> :
470 <TH ALIGN=CENTER
>Heating to inf.
472 <TH ALIGN=CENTER
>Cooling to zero
474 <TD ALIGN=CENTER
><IMG SRC=
"gif/annealup.gif">
475 <TD>
476 <TD ALIGN=CENTER
><IMG SRC=
"gif/annealdn.gif">
481 <DT><HR><B><FONT COLOR=
"#FF0000">My run crashed and I want to continue it. Now what?
</FONT></B>
486 The following answer is only valid for crashes which are not due to
487 mdrun, like a system crash, a full disk, or a kill by the queuing
488 system. Otherwise use
<TT><a href=
"online2.0/grompp.html">grompp
</a></TT>.
491 To really continue a simulation as if nothing had happened, you will
492 need coordinates and velocities in full precision (i.e.
493 <TT><a href=
"online2.0/trj.html">.trj
</a></TT> format).
494 <TT><a href=
"online2.0/xtc.html">.xtc
</a></TT> trajectories are in
495 reduced precision (only
3 decimal places after the decimal point) and
496 do not contain velocity information at all. Feed this trajectory and
497 your origional
<TT><a href=
"online2.0/tpr.html">.tpr
</a></TT> file to
498 <TT><a href=
"online2.0/tpbconv.html">tpbconv
</a></TT> to obtain a new
499 <TT><a href=
"online2.0/tpr.html">.tpr
</a></TT> file,
<EM>be sure
</EM>
500 to specify the one-but-last frame from your
501 <TT><a href=
"online2.0/trj.html">.trj
</a></TT> file, since the very
502 last frame is likely to be corrupted due to the crash. With the
503 <TT><a href=
"online2.0/tpr.html">.tpr
</a></TT> file
504 <TT><a href=
"online2.0/tpbconv.html">tpbconv
</a></TT> produces you can
505 restart your simulation.
509 After the continuation run is finished, you will have your simulation
510 split up in separate files, which you will probably want to combine.
511 This can be done as follows (the same command works for xtc-files):
513 <TT><a href=
"online2.0/trjcat.html">trjcat
</a> -o whole.trr part1.trr part2.trr part3.trr
</TT>
515 The energy files can be concatenated in a similar manner:
517 <TT><a href=
"online2.0/eneconv.html">eneconv
</a> -o whole.edr part1.edr part2.edr part3.edr
</TT>
519 Since tpbconv sets the time in the continuation runs the files are
520 automatically sorted and overlapping frames removed. If you have a mix of
521 runs continued with tpbconv and grompp you might have to set the times yourself
522 (see the manual pages for details).
525 It is ofcourse possible to start a simulation from the coordinates in
526 your
<a href=
"online2.0/xtc.html">xtc
</a> file, but in that case new
527 velocities will have to be generated resulting in a 'kink' in the
528 simulation. To prevent this you should write coordinates and
529 velocities to a
<TT><a href=
"online2.0/trj.html">.trj
</a></TT> file
530 during your simulations. Do this by setting
531 <A HREF=online/mdp_opt.html#out
><TT>nstxout
</TT></a> and
532 <A HREF=online/mdp_opt.html#out
><TT>nstvout
</TT></a> in your
533 <TT><a href=
"online2.0/mdp.html">.mdp
</a></TT> file. You don't need
534 these frames very often (every
10 ps or so), but remember that when
535 <TT><a href=
"online2.0/mdrun.html">mdrun
</a></TT> crashes, everything
536 calculated after the last frame in the
<TT><a
537 href=
"online2.0/trj.html">.trj
</a></TT> file, will have to be
538 recalculated for a proper continuation.
543 <DT><HR><B><FONT COLOR=
"#FF0000">I have a PDB file with multiple entries
544 which I want to analyze. Now what?
</FONT></B>
549 <B>NOTE:
</B> this is
<EM>not
</EM> about
<A HREF=
"#multi">multi-subunit
553 I assume your
<A HREF=
"online2.0/pdb.html"><TT>.pdb
</TT></A> file is
554 called
"<TT>eiwit.pdb</TT>". Then this is what you would do:
557 pdb2gmx -f eiwit.pdb -reth -ter -n
561 <A HREF=
"online2.0/pdb2gmx.html"><TT>pdb2gmx
</TT></A> keep all
562 hydrogens which are present in your input file. It will also
<B>not
563 add
</B> any missing hydrogens, so your molecules should be
564 complete.
<TT>-ter
</TT> will cause
<TT>pdb2gmx
</TT> to ask for termini
565 types for which you must select 'none' for both C- and N-terminus.
566 <TT>-n
</TT> tells
<TT>pdb2gmx
</TT> to generate a
567 <A HREF=
"online2.0/ndx.html"><TT>.ndx
</TT></A> file with the atoms
568 reordered to the GROMACS standard.
<TT>pdb2gmx
</TT> now generates a
569 topology file (
<A HREF=
"online2.0/top.html"><TT>topol.top
</TT></A>)
570 which exactly corresponds with the molecule(s) in your input file.
571 It also writes a coordinate file
572 (
<A HREF=
"online2.0/gro.html"><TT>conf.gro
</TT></A>).
577 trjconv -f eiwit.pdb -o eiwit.xtc -n clean -timestep
1 -box
10 -center
579 Yes,
<TT>-f eiwit.pdb
</TT> works because a
<TT>.pdb
</TT> is also a
580 <A HREF=
"online2.0/files.html">trajectory format
</A>
581 in GROMACS.
<TT>-ox
</TT> sets output to
582 <A HREF=
"online2.0/xtc.html"><TT>.xtc
</TT></A>.
<TT>-n clean
</TT>
583 tells
<A HREF=
"online2.0/trjconv.html"><TT>trjconv
</TT></A> to
584 use the
<TT>clean.ndx
</TT> generated by
585 <A HREF=
"online2.0/pdb2gmx.html"><TT>pdb2gmx
</TT></A>, so the atom
586 ordering in the output (
<TT>.xtc
</TT>) file will be according to GROMACS
587 standards.
<TT>-timestep
1</TT> sets the timestep between output frames
588 to one, so the structures from the
<TT>.pdb
</TT> file get numbered
590 <TT>-ter
</TT> causes
<TT>TER
</TT> markers in the
<TT>.pdb
</TT>
591 file to be seen as end-of-frame, default
<TT>ENDMDL
</TT> is used. If you
592 are not sure what is in your
<TT>eiwit.pdb
</TT>,
<TT>TER
</TT> is a good
593 guess, but you should check. If you have
<TT>ENDMDL
</TT> in stead of
594 <TT>TER
</TT>, omit the
<TT>-ter
</TT>.
<TT>-box
10</TT> sets a default
595 box-size in the output
<TT>.xtc
</TT> trajectory (since no box is stored
596 in a
<TT>.pdb
</TT> file). The size is in nm and should be larger than
597 your molecule size.
<TT>-center
</TT> resets the geometrical center of
598 each of your structures to the center of the box (the one you specify
599 with
<TT>-box
</TT>).
<TT>trjconv
</TT> will generate a
<TT>.xtc
</TT>
600 trajectory file with all the coordinates from your
<TT>eiwit.pdb
</TT>.
603 A not very exiting but obligatory step is:
605 grompp -f grompp.mdp -c conf.gro -p topol.top
607 This will generate a run input file
608 (
<A HREF=
"online2.0/tpr.html"><TT>topol.tpr
</TT></A>) from the
609 <TT>topol.top
</TT> and
<TT>conf.gro
</TT> you generated with
611 A
<A HREF=
"online2.0/mdp.html">default
<TT>grompp.mdp
</TT></A> is
612 available. You can probably use it 'as is', but you might want or need
613 to modify some thing. In any case you are encouraged to
614 <A HREF=
"online2.0/mdp_opt.html">review the description
</A> of the
615 numerous options in the
<TT>.mdp
</TT> file.
618 Now, suppose you want to calculate all cross-rmsd values for all
619 structures. You will do:
621 g_rms -f eiwit.xtc -s topol.tpr -m
623 <TT>-f eiwit.xtc
</TT> and
<TT>-s topol.tpr
</TT> are self-explanatory.
624 <TT>-m
</TT> tells
<A HREF=
"online2.0/g_rms.html"><TT>g_rms
</TT></A>
625 to output an RMSD matrix in
626 <A HREF=
"online2.0/xpm.html"><TT>.xpm
</TT></A> format, which can be
627 directly viewed with for example
<TT>xv
</TT>.
630 Of course there are many more analysis tools available. For example
631 <A HREF=
"online2.0/ngmx.html"><TT>ngmx
</TT></A> a trajectory viewer.
632 A list of all tools is available in the
<A HREF=
"online2.0.html">online
638 <DT><HR><B><FONT COLOR=
"#FF0000">I want to fit two structures which do not have
639 the same number/sequence of atoms. Now what?
</FONT></B>
643 <A HREF=
"online2.0/g_confrms.html">g_confrms
</A> -f1 file1.xxx -f2 file2.xxx
646 <A HREF=
"online2.0/files.html">generic structure format
</A> which can
647 be for instance
<TT>.pdb
</TT>,
<TT>.gro
</TT> or
<TT>.tpr
</TT>.
648 The program will ask you to select subgroups of both structures for the
649 (non mass weighted) LSQ fit. These subgroups must have the same number of atoms, however the two
650 structures do
<B>not
</B> need to have the same number of atoms, i.e. two proteins
651 with the same number of residues but not the same type of residues can be
652 fitted on c-alpha's. You will be warned when the atomnames in the fit groups
653 do not match, but the program will go on.
654 Option
<TT>-o
</TT> gives a
<TT>.gro
</TT> file of the second structure fitted
656 Option
<TT>-op
</TT> gives a
<TT>.gro
</TT> file of the two structures fitted
657 on top of each other.
661 <DT><HR><B><FONT COLOR=
"#FF0000">I get tired of having to select the same
662 index group over and over again. Now what?
</FONT></B>
665 Use
<A HREF=
"online2.0/make_ndx.html"><TT>make_ndx
</TT></A> to create
666 an
<A HREF=
"online2.0/ndx.html"><TT>.ndx
</TT></A> file with only one
667 group in it, this is done by typing '
<TT>keep #
</TT>' in
<TT>make_ndx
</TT>,
668 where '
<TT>#
</TT>' stands for the one group you want to have.
669 Name the file
<TT>index.ndx
</TT> (which is the default
670 filename for index files) and specify the option
<TT>-n
</TT> with your
671 favorite GROMACS analysis tool. Now this one group will get selected
672 automatically every time an index group is needed.
676 <DT><HR><B><FONT COLOR=
"#FF0000">I want to do an analysis GROMACS doesn't
677 have a program for. Now what?
</FONT></B>
680 <P> Try the following minimal C program:
684 #include
"sysstuff.h"
686 #include
"statutil.h"
688 #include
"copyrite.h"
691 void main(int argc,char *argv[])
700 static char *desc[] = {
701 "In the future, this program might perform your analysis."
704 static char *bugs[] = {
705 "This program does not do anything."
708 static bool bPBC=TRUE;
710 static real frac=
0.5;
712 {
"-pbc", FALSE, etBOOL, &bPBC,
"Make molecules whole again" },
713 {
"-nr", FALSE, etINT, &nr,
"Number" },
714 {
"-fr", FALSE, etREAL, &frac,
"Fraction" }
718 { efTPX, NULL, NULL, ffREAD },
719 { efTRX, NULL, NULL, ffREAD }
721 #define NFILE asize(fnm)
723 CopyRight(stderr,argv[
0]);
724 parse_common_args(&argc,argv,PCA_CAN_TIME,TRUE,
725 NFILE,fnm,asize(pa),pa,asize(desc),desc,asize(bugs),bugs);
727 /* read topology (atomnames, bonds etc.): */
728 /* (if you don't need those you can omit this step) */
729 top=read_top(ftp2fn(efTPX,NFILE,fnm));
731 /* initialize reading trajectory: */
732 natoms=read_first_x(&status,ftp2fn(efTRX,NFILE,fnm),&t,&x,box);
734 /* check topology against trajectory: */
735 /* your trajectory can be smaller than your topology, */
736 /* if you omitted molecules at the end of your topology, */
737 /* if you did not read a topology, omit this also */
738 if (natoms
> top-
>atoms.nr)
739 fatal_error(
0,
"Topology (%d atoms) does not match trajectory (%d atoms)",
740 top-
>atoms.nr,natoms);
742 /* start analysis of trajectory */
745 /* make molecules whole again */
746 rm_pbc(top-
>idef,natoms,box,x,x);
747 </PRE><FONT COLOR=
"#OO80OO"><PRE>
748 /**************************/
750 /* PUT YOUR ANALYSIS HERE */
752 /**************************/
754 } while (read_next_x(status,&t,natoms,x,box));
765 Note that this has to be edited before it will do anything usefull.
766 You have to be sure all the GROMACS include files and library are
767 available when compiling this. The easiest way to do this is to make a
768 new file (e.g.
<TT>g_myanal.c
</TT>) in the
<TT>src/tools
</TT>
769 directory and also add this to the Makefile in
<TT>src/tools
</TT>
770 (look how other programs are in there and copy that). After that typing
776 should do the trick. If you don't want to clutter up the
777 <TT>src/tools
</TT> directory, you can also make a new directory in
778 <TT>src
</TT> (e.g.
<TT>local
</TT> or
<TT>special
</TT>), copy the
779 <TT>src/tools/Makefile
</TT> there and modify it. If you want more
780 fancy options in your program, try modifying one of the smaller
781 GROMACS analysis tools.
<TT>g_com.c
</TT> is a good one to start from
782 although you might want to take one which already does something
783 similar to what you want to do.
785 <P>Finally, if you wrote an analysis tool which, to your opinion, adds
786 something that is really missing in GROMACS, please
787 <A HREF=
"mailto:gromacs@chem.rug.nl">tell us
</A> so we, and all other GROMACS
788 users, can also benefit from it.
792 <DT><HR><B><FONT COLOR=
"#FF0000">My problem is none of the above or none of the solutions seem to work. Now what?
</FONT></B>
795 <P>Look at the
<A HREF=
"readme2.0.html">download page
</A> to
796 see if your problem (and/or a possible solution) is mentioned
797 there. Be sure to check the
798 <A HREF=
"readme2.0.html#problems">problems section
</A> on the
799 download page. Also try
800 <A HREF=
"online2.0/getting_started.html">"Getting Started"</A>
801 where a guided tour of GROMACS is provided.
802 A quick glance at the
<A HREF=
"online2.0/flow.html">flowchart
</A>
803 will tell you if you missed any essential steps in setting up a run.
804 Also checking your
<A HREF=
"online2.0/mdp.html"><TT>.mdp
</TT></A>
805 file against our
<A HREF=
"online2.0/mdp.html">sample
<TT>.mdp
</TT>
806 file
</A> and the
<A HREF=
"online2.0/mdp_opt.html">mdp options
807 list
</A> will solve a number of potential problems. In general it
808 never hurts to read the
<A HREF=
"online2.0.html">manual pages
</A> of
809 all the GROMACS programs you (tried to) use. If all this still leaves
810 you with any unanswered questions,
<A HREF=
"mailto:gromacs@chem.rug.nl">please
811 don't hesitate to contact us
</A>.
814 <P>For summary, the pages to check:
816 <LI>The
<A HREF=
"readme1.6.html">download page
</A> (esp. the
<A HREF=
"readme1.6.html#problems">problems section
</A>).
817 <LI>The
<A HREF=
"online2.0/getting_started.html">"Getting Started"</A>
819 <LI>The
<A HREF=
"online2.0/flow.html">flowchart
</A>
820 <LI>Our
<A HREF=
"online2.0/mdp.html">sample
<TT>.mdp
</TT> file
</A>
821 <LI>The
<A HREF=
"online2.0/mdp_opt.html">mdp options list
</A>
822 <LI>And finally the
<A HREF=
"online2.0.html">manual pages
</A>
823 <LI><A HREF=
"mailto:gromacs@chem.rug.nl">Us
</A>