System does not reach designated temperature after NVT runs

GROMACS version:
GROMACS modification: Yes/No


I am trying to run a MD simulation for a protein-ligand system. I set the temperature to be 323.25 K but the temperature after NVT running only reaches around 223K. Here is my nvt.mdp file. I appreciate for any feedbacks.

title = Protein-ligand complex NVT equilibration
define = -DPOSRES
; Run parameters
integrator = md
nsteps = 50000
dt = 0.002
; Output control
nstenergy = 500
nstlog = 500
nstxout-compressed = 500
nstvout = 500
; Bond parameters
continuation = no
constraint_algorithm = lincs
constraints = h-bonds
lincs_iter = 1
lincs_order = 4
; Neighbor searching and vdW
cutoff-scheme = Verlet
ns_type = grid
nstlist = 20
rlist = 1.2
vdwtype = cutoff
vdw-modifier = force-switch
rvdw-switch = 1.0
rvdw = 1.2
; Electrostatics
coulombtype = PME
rcoulomb = 1.2
pme_order = 4
fourierspacing = 0.16
; Temperature coupling
tcoupl = V-rescale
tc-grps = Protein_PLT Water_and_ions
tau_t = 0.1 0.1
ref_t = 323.25 323.25
comm-grps = Protein_PLT Water_and_ions
comm-mode = Angular
; Pressure coupling
pcoupl = no
; Periodic boundary conditions
pbc = xyz
; Dispersion correction is not used for proteins with the C36 additive FF
DispCorr = no
; Velocity generation
gen_vel = yes
gen_temp = 323.25
gen_seed = -1

Where did you get the temperature of 223 K from?

Note that you should not use angular COMM removal on the solvent.

Directly from gmx energy, I guess. But these do not exclude constraints, and thus not the “right” value.

gmx energy explicitly does account for constraints and reports a correct temperature. The output of gmx traj from velocities requires correction based on constraints.

Thanks for your reply. I got the value from gmx traj. Do you mean I need to remove this term: comm-mode = Angular?

Thank you! I got the value from gmx traj and that’ s probably the reason

My bad for my poor memory which was quite a while ago when I had the same confusion. Thanks for the clarification!

You should not get the temperature from gmx traj as that does not know about constraints, as the help says. You should use gmx energy. You temperature is very likely correct.

If you don’t know why you are using comm-mode=angular, you should not be using it. It is also better to use only one group, the system, for COMM removal.