# What parameters should be changed in mdp file to use wth CHARMM force field?

**URL:** <https://gromacs.bioexcel.eu/t/what-parameters-should-be-changed-in-mdp-file-to-use-wth-charmm-force-field/6039>\
**Category:** User discussions\
**Tags:** forcefield\
**Created:** [March 24, 2023, 6:09pm UTC](https://gromacs.bioexcel.eu/t/what-parameters-should-be-changed-in-mdp-file-to-use-wth-charmm-force-field/6039 "2023-03-24T18:09:33Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![PriZarah](https://avatars.discourse-cdn.com/v4/letter/p/779978/32.png) [@PriZarah](https://gromacs.bioexcel.eu/u/PriZarah)\
**Post date:** [March 24, 2023, 6:09pm UTC](https://gromacs.bioexcel.eu/t/what-parameters-should-be-changed-in-mdp-file-to-use-wth-charmm-force-field/6039/1 "2023-03-24T18:09:33Z")

</div>

GROMACS version: 2018. 4  
GROMACS modification: Yes/No  
I have a mdp file used with Kirk-Wood buff force filed. But, I want to change the parameters according to the CHARMM36. And can any one please tell me what parameters need to be changed? The parameters used in KBFF are given bellow.

**integrator = md**  
**; Start time and timestep in ps**  
\*\*tinit = 0 \*\*  
\*\*dt = 0.002 \*\*  
\*\*nsteps = 5000000 \*\*  
**; For exact run continuation or redoing part of a run**  
**init\_step = 0 ;update for exact continuations**  
**; Part index is updated automatically on checkpointing (keeps files separate)**  
**simulation-part = 1**  
**; mode for center of mass motion removal**  
**comm-mode = Linear**  
**; number of steps for center of mass motion removal**  
**nstcomm = 500**  
**; 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 = -1**

**; ENERGY MINIMIZATION OPTIONS**  
**; Force tolerance and initial step-size**  
**emtol = 10**  
**emstep = 0.01**  
**; Max number of iterations in relax-shells**  
**niter = 20**  
**; 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 = 500 ;1ns**  
**nstvout = 0**  
**nstfout = 0**  
**; Output frequency for energies to log file and energy file**  
\*\*nstlog = 500 \*\*  
**nstcalcenergy = 100**  
\*\*nstenergy = 500 \*\*  
**; Output frequency and precision for .xtc file**  
**nstxout-compressed = 0 ;10ps**  
**compressed-x-precision = 1000**  
**; This selects the subset of atoms for the compressed**  
**; trajectory file. You can select multiple groups. By**  
**; default, all atoms will be written.**  
**compressed-x-grps = Protein**  
**; Selection of energy groups**  
\*\*energygrps = Protein Pb Cl SOL \*\*

**; NEIGHBORSEARCHING PARAMETERS**  
**; cut-off scheme (Verlet: particle based cut-offs, group: using charge groups)**  
**cutoff-scheme = Verlet**  
**; nblist update frequency**  
**nstlist = 10**  
**; ns algorithm (simple or grid)**  
**ns-type = Grid**  
**; Periodic boundary conditions: xyz, no, xy**  
**pbc = xyz**  
**periodic-molecules = no**  
**; Allowed energy error due to the Verlet buffer in kJ/mol/ps per atom,**  
**; a value of -1 means: use rlist**  
**verlet-buffer-tolerance = 0.005**  
\*\*; nblist cut-off \*\*  
**rlist = 1.0**  
**; long-range cut-off for switched potentials**

**; OPTIONS FOR ELECTROSTATICS AND VDW**  
**; Method for doing electrostatics**  
**coulombtype = PME**  
**coulomb-modifier = Potential-shift-Verlet**  
**rcoulomb-switch = 0**  
**rcoulomb = 1.0**  
**; Relative dielectric constant for the medium and the reaction field**  
**epsilon-r = 1**  
**epsilon\_rf = 1**  
**; Method for doing Van der Waals**  
**vdw-type = PME**  
**vdw-modifier = Potential-shift-Verlet**  
\*\*; cut-off lengths \*\*  
**rvdw-switch = 0**  
**rvdw = 1.0**  
**; Apply long range dispersion corrections for Energy and Pressure**  
**DispCorr = No**  
**; Extension of the potential lookup tables beyond the cut-off**  
**table-extension = 1**  
**; Separate 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-rtol-lj = 0.001**  
**lj-pme-comb-rule = geometric**  
**ewald\_geometry = 3d**  
**epsilon\_surface = 0**

**; IMPLICIT SOLVENT ALGORITHM**  
**implicit-solvent = 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 = 1**  
**; Dielectric coefficient of the implicit solvent**  
**gb-epsilon-solvent = 80**  
**; Salt concentration in M for Generalized Born models**  
**gb-saltconc = 0**  
**; Scaling factors used in the OBC GB model. Default values are OBC(II)**  
**gb-obc-alpha = 1**  
**gb-obc-beta = 0.8**  
**gb-obc-gamma = 4.85**  
**gb-dielectric-offset = 0.009**  
**sa-algorithm = Ace-approximation**  
**; Surface tension (kJ/mol/nm^2) for the SA (nonpolar surface) part of GBSA**  
**; The value -1 will set default value for Still/HCT/OBC GB-models.**  
**sa-surface-tension = -1**

**; OPTIONS FOR WEAK COUPLING ALGORITHMS**  
\*\*; Temperature coupling \*\*  
\*\*tcoupl = Nose-Hoover \*\*  
**nsttcouple = -1**  
**nh-chain-length = 10**  
**print-nose-hoover-chain-variables = no**  
**; Groups to couple separately**  
**tc-grps = Protein Non-Protein**  
**; Time constant (ps) and reference temperature (K)**  
\*\*tau-t = 0.5 0.5 \*\*  
**ref-t = 300.0 300.0**  
\*\*; pressure coupling \*\*  
\*\*Pcoupl = Parrinello-Rahman \*\*  
**Pcoupltype = isotropic**  
**nstpcouple = -1**  
**; Time constant (ps), compressibility (1/bar) and reference P (bar)**  
\*\*tau-p = 2.5 \*\*  
**compressibility = 4.5e-5**  
**ref-p = 1**  
**; Scaling of reference coordinates, No, All or COM**  
**refcoord-scaling = No**

**; 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 = \*\*  
**; 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.0**  
**gen-seed = 173529**

\*\*; OPTIONS FOR BONDS \*\*  
**constraints = all-bonds**  
**; Type of constraint algorithm**  
**constraint-algorithm = Lincs**  
**; Do not constrain the start configuration**  
\*\*continuation = no \*\*  
**; Use successive overrelaxation to reduce the number of shake iterations**  
**Shake-SOR = no**  
**; Relative tolerance of shake**  
**shake-tol = 0.0001**  
**; 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 = 4**  
**; 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-r-linpot = -1**  
\*\*wall-atomtype = \*\*  
\*\*wall-density = \*\*  
**wall-ewald-zfac = 3**

\*\*; COM PULLING \*\*  
**pull = no**

\*\*; ENFORCED ROTATION \*\*  
**; Enforced rotation: No or Yes**  
**rotation = no**

**; Group to display and/or manipulate in interactive MD session**  
\*\*IMD-group = \*\*

\*\*; 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 = Conservative**  
**; Use sqrt of the time averaged times the instantaneous violation**  
**disre-mixed = no**  
**disre-fc = 1000**  
**disre-tau = 0**  
**; 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**

**; Free energy variables**  
**free-energy = no**  
\*\*couple-moltype = \*\*  
**couple-lambda0 = vdw-q**  
**couple-lambda1 = vdw-q**  
**couple-intramol = no**  
**init-lambda = -1**  
**init-lambda-state = -1**  
**delta-lambda = 0**  
**nstdhdl = 50**  
\*\*fep-lambdas = \*\*  
\*\*mass-lambdas = \*\*  
\*\*coul-lambdas = \*\*  
\*\*vdw-lambdas = \*\*  
\*\*bonded-lambdas = \*\*  
\*\*restraint-lambdas = \*\*  
\*\*temperature-lambdas = \*\*  
**calc-lambda-neighbors = 1**  
\*\*init-lambda-weights = \*\*  
**dhdl-print-energy = no**  
**sc-alpha = 0**  
**sc-power = 1**  
**sc-r-power = 6**  
**sc-sigma = 0.3**  
**sc-coul = no**  
**separate-dhdl-file = yes**  
**dhdl-derivatives = yes**  
**dh\_hist\_size = 0**  
**dh\_hist\_spacing = 0.1**

**; Non-equilibrium MD stuff**  
\*\*acc-grps = \*\*  
\*\*accelerate = \*\*  
\*\*freezegrps = \*\*  
\*\*freezedim = \*\*  
**cos-acceleration = 0**  
\*\*deform = \*\*

**; simulated tempering variables**  
**simulated-tempering = no**  
**simulated-tempering-scaling = geometric**  
**sim-temp-low = 300**  
**sim-temp-high = 300**

\*\*; Electric fields \*\*  
**; Format is number of terms (int) and for all terms an amplitude (real)**  
**; and a phase angle (real)**  
\*\*E-x = \*\*  
**; Time dependent (pulsed) electric field. Format is omega, time for pulse**  
**; peak, and sigma (width) for pulse. Sigma = 0 removes pulse, leaving**  
**; the field to be a cosine function.**  
\*\*E-xt = \*\*  
\*\*E-y = \*\*  
\*\*E-yt = \*\*  
\*\*E-z = \*\*  
\*\*E-zt = \*\*

**; Ion/water position swapping for computational electrophysiology setups**  
**; Swap positions along direction: no, X, Y, Z**  
**swapcoords = no**  
**adress = no**

**; User defined thingies**  
\*\*user1-grps = \*\*  
\*\*user2-grps = \*\*  
**userint1 = 0**  
**userint2 = 0**  
**userint3 = 0**  
**userint4 = 0**  
**userreal1 = 0**  
**userreal2 = 0**  
**userreal3 = 0**  
**userreal4 = 0**

---

<div class="post-metadata">

**Author:** ![jalemkul](https://dub1.discourse-cdn.com/flex017/user_avatar/gromacs.bioexcel.eu/jalemkul/32/18_2.png) [@jalemkul](https://gromacs.bioexcel.eu/u/jalemkul)\
**Post date:** [March 26, 2023, 5:13pm UTC](https://gromacs.bioexcel.eu/t/what-parameters-should-be-changed-in-mdp-file-to-use-wth-charmm-force-field/6039/2 "2023-03-26T17:13:00Z")

</div>

Have a look at a tutorial that uses CHARMM, e.g. [Protein-Ligand Complex](http://www.mdtutorials.com/gmx/complex/index.html)

The most critical settings are also listed in the GROMACS manual: [https://manual.gromacs.org/current/user-guide/force-fields.html#charmm](https://manual.gromacs.org/current/user-guide/force-fields.html#charmm)

---

<div class="post-metadata">

**Author:** ![PriZarah](https://avatars.discourse-cdn.com/v4/letter/p/779978/32.png) [@PriZarah](https://gromacs.bioexcel.eu/u/PriZarah)\
**Post date:** [March 28, 2023, 4:31pm UTC](https://gromacs.bioexcel.eu/t/what-parameters-should-be-changed-in-mdp-file-to-use-wth-charmm-force-field/6039/3 "2023-03-28T16:31:05Z")

</div>

Dear @jalemkul Sir, I followed the tutorial on Protein-Ligand Complex. After uploading my molecule to CGenFF server, the generated stream file contains penalty values range from 10-50. So as mentioned in the tutorial some topology validation is need to be done. Can you please explain how to do this?

---

<div class="post-metadata">

**Author:** ![jalemkul](https://dub1.discourse-cdn.com/flex017/user_avatar/gromacs.bioexcel.eu/jalemkul/32/18_2.png) [@jalemkul](https://gromacs.bioexcel.eu/u/jalemkul)\
**Post date:** [March 29, 2023, 2:47am UTC](https://gromacs.bioexcel.eu/t/what-parameters-should-be-changed-in-mdp-file-to-use-wth-charmm-force-field/6039/4 "2023-03-29T02:47:35Z")

</div>

All of this information is described in the relevant CGenFF papers:

[https://doi.org/10.1002/jcc.21367](https://doi.org/10.1002/jcc.21367)  
[https://dx.doi.org/10.1021/ci3003649](https://dx.doi.org/10.1021/ci3003649)

You will need to be comfortable with QM calculations and potentially some fairly complicated MM calculations, many of which are pretty advanced within CHARMM (and impossible to pull off in GROMACS).
