[gmx-developers] pressure calculation in GROMACS CVS
Berk Hess
hessb at mpip-mainz.mpg.de
Wed May 14 16:36:05 CEST 2008
Hi,
The results you posted show, according to me, no significant difference
in pressure and volume,
except for the pressure at step 0.
I assume, but you did not state this clearly, that both runs were done
with exactly the same
mdrun binary. I changed something with the constraining of the initial
velocities in mdrun
some time ago, which could explain the pressure difference at step 0.
If it is really only a grompp version difference and not mdrun, I do not
understand how this
is possible.
You can compare tpr files with:
gmxcheck -s1 ... -s2 ...
Berk.
Mareike Zink wrote:
> Dear GROMACS developers,
>
> I may found a bug in the pressure calculation of the current GROMACS CVS
> version:
>
> My system (protein in water, approx. 320,000 particles) is equilibrated in an
> NPT ensemble and I want to run it with CVS version from 2007-07-04 or the
> current version from 2008-04-15 with a constant pressure of 1bar. The
> following pressure and box volumes are given as an output:
>
> Time(ps) Pressure(bar)
> 0.000000 1519.933594
> 0.200000 1.404368
> 0.400000 53.713745
> 0.600000 -16.645607
> 0.800000 -40.373356
> 1.000000 64.932564
>
> Time(ps) Volume(nm³)
> 0.000000 2458.407227
> 0.200000 2458.920166
> 0.400000 2458.617188
> 0.600000 2459.025146
> 0.800000 2459.828613
> 1.000000 2459.592285
>
> When I did the preprocessing with a CVS version from 2007-06-21 or
> GROMACS-3.3.1 but run the simulation with the CVS version from 2007-07-04 or
> 2008-04-15, the pressure and volume look much different:
>
> Time(ps) Pressure(bar)
> 0.000000 95.616234
> 0.200000 4.654475
> 0.400000 59.303020
> 0.600000 -7.656351
> 0.800000 -1.787814
> 1.000000 -9.527036
>
> Time(ps) Volume
> 0.000000 2458.407227
> 0.200000 2458.871582
> 0.400000 2458.587158
> 0.600000 2458.832031
> 0.800000 2459.606445
> 1.000000 2459.485107
>
>
> Maybe there is a problem with the preprocessor. The problem with the much too
> high pressure only occures if grompp was done with a CVS version from
> 2007-07-04 or later.
>
> Furthermore, the system I was using here, is just a subsystem of my complete
> simulation system which contains 4,5 Million atoms. Here I have the same
> problem but the pressure is much too small (-2000bar). Due to the wrong
> pressure, the pressure coupling rescales the box size within 1ps (my tau_p)
> and compresses the box to a much too small volume. Maybe the pressure
> calculation is buggy?
> Do you kno anything about this problem?
>
> My mdp-files for grompp with gromacs331 and cvs are below.
>
> If you need more information or files, please contact me.
>
> Thanx,
>
> Mareike
>
>
> GROMACS 331:
>
> ;
> ; File 'mdout.mdp' was generated
> ; By user: mzink (37571)
> ; On host: beany
> ; At date: Mon Dec 18 12:45:54 2006
> ;
>
> ; VARIOUS PREPROCESSING OPTIONS
> title =
> ; Preprocessor - specify a full path if necessary.
> cpp = /lib/cpp
> include =
> define =
>
> ; RUN CONTROL PARAMETERS
> integrator = md
> ; Start time and timestep in ps
> tinit = 0
> dt = 0.002
> nsteps = 5000
> ; For exact run continuation or redoing part of a run
> init_step = 0
> ; mode for center of mass motion removal
> comm-mode = Linear
> ; number of steps for center of mass motion removal
> nstcomm = 1
> ; group(s) for center of mass motion removal
> comm-grps =
>
> ; LANGEVIN DYNAMICS OPTIONS
> ; Friction coefficient (amu/ps) and random seed
> bd-fric = 0
> ld_seed = 1993
>
> ; ENERGY MINIMIZATION OPTIONS
> ; Force tolerance and initial step-size
> emtol = 0.000001
> emstep = 0.01
> ; Max number of iterations in relax_shells
> niter = 100
> ; Step size (ps^2) for minimization of flexible constraints
> fcstep = 0
> ; Frequency of steepest descents steps when doing CG
> nstcgsteep = 1000
> nbfgscorr = 10
>
> ; OUTPUT CONTROL OPTIONS
> ; Output frequency for coords (x), velocities (v) and forces (f)
> nstxout = 5000
> nstvout = 5000
> nstfout = 5000
> ; Checkpointing helps you continue after crashes
> nstcheckpoint = 5000
> ; Output frequency for energies to log file and energy file
> nstlog = 100
> nstenergy = 100
> ; Output frequency and precision for xtc file
> nstxtcout = 500
> xtc_precision = 1000
> ; This selects the subset of atoms for the xtc file. You can
> ; select multiple groups. By default all atoms will be written.
> xtc-grps = Protein CA
> ; Selection of energy groups
> energygrps = Protein CA SOL
>
> ; NEIGHBORSEARCHING PARAMETERS
> ; nblist update frequency
> nstlist = 10
> ; ns algorithm (simple or grid)
> ns_type = grid
> ; Periodic boundary conditions: xyz (default), no (vacuum)
> ; or full (infinite systems only)
> pbc = xyz
> ; nblist cut-off
> rlist = 0.9
> domain-decomposition = no
>
> ; OPTIONS FOR ELECTROSTATICS AND VDW
> ; Method for doing electrostatics
> coulombtype = PME
> rcoulomb_switch = 0
> rcoulomb = 0.9
> ; Relative dielectric constant for the medium and the reaction field
> epsilon_r = 1
> epsilon_rf = 1
> ; Method for doing Van der Waals
> vdw-type = Cut-off
> ; cut-off lengths
> rvdw_switch = 0
> rvdw = 0.9
> ; Apply long range dispersion corrections for Energy and Pressure
> DispCorr = No
> ; Extension of the potential lookup tables beyond the cut-off
> table-extension = 1
> ; Seperate tables between energy group pairs
> energygrp_table =
> ; Spacing for the PME/PPPM FFT grid
> fourierspacing = 0.12
> ; FFT grid size, when a value is 0 fourierspacing will be used
> fourier_nx = 0
> fourier_ny = 0
> fourier_nz = 0
> ; EWALD/PME/PPPM parameters
> pme_order = 4
> ewald_rtol = 1e-05
> ewald_geometry = 3d
> epsilon_surface = 0
> optimize_fft = no
>
> ; GENERALIZED BORN ELECTROSTATICS
> ; Algorithm for calculating Born radii
> gb_algorithm = Still
> ; Frequency of calculating the Born radii inside rlist
> nstgbradii = 1
> ; Cutoff for Born radii calculation; the contribution from atoms
> ; between rlist and rgbradii is updated every nstlist steps
> rgbradii = 2
> ; Salt concentration in M for Generalized Born models
> gb_saltconc = 0
>
> ; IMPLICIT SOLVENT (for use with Generalized Born electrostatics)
> implicit_solvent = No
>
> ; OPTIONS FOR WEAK COUPLING ALGORITHMS
> ; Temperature coupling
> Tcoupl = berendsen
> ; Groups to couple separately
> tc_grps = Protein Other
> ; Time constant (ps) and reference temperature (K)
> tau_t = 0.1 0.1
> ref_t = 300 300
> ; Pressure coupling
> Pcoupl = berendsen
> Pcoupltype = isotropic
> ; Time constant (ps), compressibility (1/bar) and reference P (bar)
> tau_p = 1.0
> compressibility = 4.5e-5
> ref_p = 1.0
> ; Random seed for Andersen thermostat
> andersen_seed = 815131
>
> ; OPTIONS FOR QMMM calculations
> QMMM = no
> ; Groups treated Quantum Mechanically
> QMMM-grps =
> ; QM method
> QMmethod =
> ; QMMM scheme
> QMMMscheme = normal
> ; QM basisset
> QMbasis =
> ; QM charge
> QMcharge =
> ; QM multiplicity
> QMmult =
> ; Surface Hopping
> SH =
> ; CAS space options
> CASorbitals =
> CASelectrons =
> SAon =
> SAoff =
> SAsteps =
> ; Scale factor for MM charges
> MMChargeScaleFactor = 1
> ; Optimization of QM subsystem
> bOPT =
> bTS =
>
> ; SIMULATED ANNEALING
> ; Type of annealing for each temperature group (no/single/periodic)
> annealing = no no
> ; Number of time points to use for specifying annealing in each group
> annealing_npoints =
> ; List of times at the annealing points for each group
> annealing_time =
> ; Temp. at each annealing point, for each group.
> annealing_temp =
>
> ; GENERATE VELOCITIES FOR STARTUP RUN
> gen_vel = yes
> gen_temp = 300
> gen_seed = 173529
>
> ; OPTIONS FOR BONDS
> constraints = all-bonds
> ; Type of constraint algorithm
> constraint-algorithm = Lincs
> ; Do not constrain the start configuration
> unconstrained_start = no
> ; Use successive overrelaxation to reduce the number of shake iterations
> Shake-SOR = no
> ; Relative tolerance of shake
> shake_tol = 1e-04
> ; Highest order in the expansion of the constraint coupling matrix
> lincs-order = 4
> ; Number of iterations in the final step of LINCS. 1 is fine for
> ; normal simulations, but use 2 to conserve energy in NVE runs.
> ; For energy minimization with constraints it should be 4 to 8.
> lincs-iter = 1
> ; Lincs will write a warning to the stderr if in one step a bond
> ; rotates over more degrees than
> lincs-warnangle = 30
> ; Convert harmonic bonds to morse potentials
> morse = no
>
> ; ENERGY GROUP EXCLUSIONS
> ; Pairs of energy groups for which all non-bonded interactions are excluded
> energygrp_excl =
>
> ; NMR refinement stuff
> ; Distance restraints type: No, Simple or Ensemble
> disre = No
> ; Force weighting of pairs in one distance restraint: Conservative or Equal
> disre_weighting = Equal
> ; Use sqrt of the time averaged times the instantaneous violation
> disre_mixed = no
> disre_fc = 1000
> disre_tau = 1.25
> ; Output frequency for pair distances to energy file
> nstdisreout = 100
> ; Orientation restraints: No or Yes
> orire = no
> ; Orientation restraints force constant and tau for time averaging
> orire-fc = 0
> orire-tau = 0
> orire-fitgrp =
> ; Output frequency for trace(SD) and S to energy file
> nstorireout = 100
> ; Dihedral angle restraints: No, Simple or Ensemble
> dihre = No
> dihre-fc = 1000
> dihre-tau = 0
> ; Output frequency for dihedral values to energy file
> nstdihreout = 100
>
> ; Free energy control stuff
> free_energy = no
> init_lambda = 0
> delta_lambda = 0
> sc-alpha = 0
> sc-power = 0
> sc-sigma = 0.3
>
> ; Non-equilibrium MD stuff
> acc-grps =
> accelerate =
> freezegrps =
> freezedim =
> cos-acceleration = 0
> deform =
>
> ; Electric fields
> ; Format is number of terms (int) and for all terms an amplitude (real)
> ; and a phase angle (real)
> E-x =
> E-xt =
> E-y =
> E-yt =
> E-z =
> E-zt =
>
> ; User defined thingies
> user1-grps =
> user2-grps =
> userint1 = 0
> userint2 = 0
> userint3 = 0
> userint4 = 0
> userreal1 = 0
> userreal2 = 0
> userreal3 = 0
> userreal4 = 0
>
>
> GROMACS CVS from 2007-04-07
> ;
> ; File 'mdout.mdp' was generated
> ; By user: mzink (37571)
> ; On host: beany
> ; At date: Mon Mar 17 20:14:43 2008
> ;
>
> ; VARIOUS PREPROCESSING OPTIONS
> title =
> ; Preprocessor - specify a full path if necessary.
> cpp = /lib/cpp
> include =
> define =
>
> ; RUN CONTROL PARAMETERS
> integrator = md
> ; Start time and timestep in ps
> tinit = 0
> dt = 0.002
> nsteps = 5000
> ; For exact run continuation or redoing part of a run
> init_step = 0
> ; mode for center of mass motion removal
> comm-mode = Linear
> ; number of steps for center of mass motion removal
> nstcomm = 1
> ; group(s) for center of mass motion removal
> comm-grps =
>
> ; LANGEVIN DYNAMICS OPTIONS
> ; Friction coefficient (amu/ps) and random seed
> bd-fric = 0
> ld_seed = 1993
>
> ; ENERGY MINIMIZATION OPTIONS
> ; Force tolerance and initial step-size
> emtol = 0.000001
> emstep = 0.01
> ; Max number of iterations in relax_shells
> niter = 100
> ; Step size (ps^2) for minimization of flexible constraints
> fcstep = 0
> ; Frequency of steepest descents steps when doing CG
> nstcgsteep = 1000
> nbfgscorr = 10
>
> ; TEST PARTICLE INSERTION OPTIONS
> rtpi = 0.05
>
> ; OUTPUT CONTROL OPTIONS
> ; Output frequency for coords (x), velocities (v) and forces (f)
> nstxout = 5000
> nstvout = 5000
> nstfout = 5000
> ; Checkpointing helps you continue after crashes
> nstcheckpoint = 5000
> ; Output frequency for energies to log file and energy file
> nstlog = 100
> nstenergy = 100
> ; Output frequency and precision for xtc file
> nstxtcout = 500
> xtc_precision = 1000
> ; This selects the subset of atoms for the xtc file. You can
> ; select multiple groups. By default all atoms will be written.
> xtc-grps = Protein CA
> ; Selection of energy groups
> energygrps = Protein CA SOL
>
> ; NEIGHBORSEARCHING PARAMETERS
> ; nblist update frequency
> nstlist = 10
> ; ns algorithm (simple or grid)
> ns_type = grid
> ; Periodic boundary conditions: xyz, no, xy
> pbc = xyz
> periodic_molecules = no
> ; nblist cut-off
> rlist = 0.9
>
> ; OPTIONS FOR ELECTROSTATICS AND VDW
> ; Method for doing electrostatics
> coulombtype = PME
> rcoulomb_switch = 0
> rcoulomb = 0.9
> ; Relative dielectric constant for the medium and the reaction field
> epsilon_r = 1
> epsilon_rf = 1
> ; Method for doing Van der Waals
> vdw-type = Cut-off
> ; cut-off lengths
> rvdw_switch = 0
> rvdw = 0.9
> ; Apply long range dispersion corrections for Energy and Pressure
> DispCorr = No
> ; Extension of the potential lookup tables beyond the cut-off
> table-extension = 1
> ; Seperate tables between energy group pairs
> energygrp_table =
> ; Spacing for the PME/PPPM FFT grid
> ;fourierspacing = 0.12
> ; FFT grid size, when a value is 0 fourierspacing will be used
> fourier_nx = 120
> fourier_ny = 120
> fourier_nz = 120
> ; EWALD/PME/PPPM parameters
> pme_order = 4
> ewald_rtol = 1e-05
> ewald_geometry = 3d
> epsilon_surface = 0
> optimize_fft = no
>
> ; GENERALIZED BORN ELECTROSTATICS
> ; Algorithm for calculating Born radii
> gb_algorithm = Still
> ; Frequency of calculating the Born radii inside rlist
> nstgbradii = 1
> ; Cutoff for Born radii calculation; the contribution from atoms
> ; between rlist and rgbradii is updated every nstlist steps
> rgbradii = 2
> ; Salt concentration in M for Generalized Born models
> gb_saltconc = 0
>
> ; IMPLICIT SOLVENT (for use with Generalized Born electrostatics)
> implicit_solvent = No
>
> ; OPTIONS FOR WEAK COUPLING ALGORITHMS
> ; Temperature coupling
> Tcoupl = berendsen
> ; Groups to couple separately
> tc_grps = Protein Other
> ; Time constant (ps) and reference temperature (K)
> tau_t = 0.1 0.1
> ref_t = 300 300
> ; Pressure coupling
> Pcoupl = berendsen
> Pcoupltype = isotropic
> ; Time constant (ps), compressibility (1/bar) and reference P (bar)
> tau_p = 1.0
> compressibility = 4.5e-5
> ref_p = 1.0
> ; Scaling of reference coordinates, No, All or COM
> refcoord_scaling = No
> ; Random seed for Andersen thermostat
> andersen_seed = 815131
>
> ; OPTIONS FOR QMMM calculations
> QMMM = no
> ; Groups treated Quantum Mechanically
> QMMM-grps =
> ; QM method
> QMmethod =
> ; QMMM scheme
> QMMMscheme = normal
> ; QM basisset
> QMbasis =
> ; QM charge
> QMcharge =
> ; QM multiplicity
> QMmult =
> ; Surface Hopping
> SH =
> ; CAS space options
> CASorbitals =
> CASelectrons =
> SAon =
> SAoff =
> SAsteps =
> ; Scale factor for MM charges
> MMChargeScaleFactor = 1
> ; Optimization of QM subsystem
> bOPT =
> bTS =
>
> ; SIMULATED ANNEALING
> ; Type of annealing for each temperature group (no/single/periodic)
> annealing = no no
> ; Number of time points to use for specifying annealing in each group
> annealing_npoints =
> ; List of times at the annealing points for each group
> annealing_time =
> ; Temp. at each annealing point, for each group.
> annealing_temp =
>
> ; GENERATE VELOCITIES FOR STARTUP RUN
> gen_vel = yes
> gen_temp = 300
> gen_seed = 173529
>
> ; OPTIONS FOR BONDS
> constraints = all-bonds
> ; Type of constraint algorithm
> constraint-algorithm = Lincs
> ; Do not constrain the start configuration
> continuation = yes
> ; Use successive overrelaxation to reduce the number of shake iterations
> Shake-SOR = no
> ; Relative tolerance of shake
> shake_tol = 1e-04
> ; Highest order in the expansion of the constraint coupling matrix
> lincs-order = 4
> ; Number of iterations in the final step of LINCS. 1 is fine for
> ; normal simulations, but use 2 to conserve energy in NVE runs.
> ; For energy minimization with constraints it should be 4 to 8.
> lincs-iter = 1
> ; Lincs will write a warning to the stderr if in one step a bond
> ; rotates over more degrees than
> lincs-warnangle = 30
> ; Convert harmonic bonds to morse potentials
> morse = no
>
> ; ENERGY GROUP EXCLUSIONS
> ; Pairs of energy groups for which all non-bonded interactions are excluded
> energygrp_excl =
>
> ; WALLS
> ; Number of walls, type, atom types, densities and box-z scale factor for
> Ewald
> nwall = 0
> wall_type = 9-3
> wall_atomtype =
> wall_density =
> wall_ewald_zfac = 3
>
> ; COM PULLING
> ; Pull type: no, umbrella, constraint, constant_force
> pull = no
>
> ; NMR refinement stuff
> ; Distance restraints type: No, Simple or Ensemble
> disre = No
> ; Force weighting of pairs in one distance restraint: Conservative or Equal
> disre_weighting = Equal
> ; Use sqrt of the time averaged times the instantaneous violation
> disre_mixed = no
> disre_fc = 1000
> disre_tau = 1.25
> ; Output frequency for pair distances to energy file
> nstdisreout = 100
> ; Orientation restraints: No or Yes
> orire = no
> ; Orientation restraints force constant and tau for time averaging
> orire-fc = 0
> orire-tau = 0
> orire-fitgrp =
> ; Output frequency for trace(SD) and S to energy file
> nstorireout = 100
> ; Dihedral angle restraints: No, Simple or Ensemble
> dihre = No
> dihre-fc = 1000
> dihre-tau = 0
> ; Output frequency for dihedral values to energy file
> nstdihreout = 100
>
> ; Free energy control stuff
> free_energy = no
> init_lambda = 0
> delta_lambda = 0
> sc-alpha = 0
> sc-power = 0
> sc-sigma = 0.3
>
> ; Non-equilibrium MD stuff
> acc-grps =
> accelerate =
> freezegrps =
> freezedim =
> cos-acceleration = 0
> deform =
>
> ; Electric fields
> ; Format is number of terms (int) and for all terms an amplitude (real)
> ; and a phase angle (real)
> E-x =
> E-xt =
> E-y =
> E-yt =
> E-z =
> E-zt =
>
> ; User defined thingies
> user1-grps =
> user2-grps =
> userint1 = 0
> userint2 = 0
> userint3 = 0
> userint4 = 0
> userreal1 = 0
> userreal2 = 0
> userreal3 = 0
> userreal4 = 0
>
>
>
> _______________________________________________
> gmx-developers mailing list
> gmx-developers at gromacs.org
> http://www.gromacs.org/mailman/listinfo/gmx-developers
> Please don't post (un)subscribe requests to the list. Use the
> www interface or send it to gmx-developers-request at gromacs.org.
>
> This email was Anti Virus checked by Astaro Security Gateway. http://www.astaro.com
>
>
More information about the gromacs.org_gmx-developers
mailing list