What exactly is reference temperature

GROMACS version: 2020.1-Ubuntu-2020.1-1
GROMACS modification: No

Hello folks,
My task with gromacs is to do a 2ns MD simulation of TIP4P water in which the temperature is going to change from 240K to 80K. In order to do that I have included this in my .mdp file:

; Temperature coupling is on
tcoupl                  = nose-hoover           ; modified Berendsen thermostat
tc-grps                 = system                ; two coupling groups - more accurate
tau_t                   = 0.4                   ; time constant, in ps
ref_t                   = 240                   ; reference temperature, one for each group, in K

; Simulated Annealing
annealing               = single
annealing-npoints       = 2
annealing-temp          = 240 80                ; temperature decreases from 240 to 80
annealing-time          = 0 2000                ; temperatre decreases from 240K at time = 0 ps to 90K at time = 2000 ps (2 ns)

My questions are these:

1.What exactly is the reference temperature in gromacs, and is that supposed to have the initial temperature or the final temperature?
2. Other one is, in the simulated annealing, is that section correct according to what I want to achieve?

Thank you so much.

ref_t (the reference temperature)

is simply the temperature of the system you are asking the thermostat to adjust to. It is then the choice of you how quickly you want to reach that temperature. If you are not interested in the dynamics of the temperature rise, nor is the system expected to respond to the reference temperature unexpectedly, then it will be the final temperature of your system.

What you have implemented is that at time 0 the temperature of your system is 240 and it will decrease linearly to 80 at that point to 2000 ps. If that is what you are looking for.

Hi @Ali
Thank you so much for your answer. So that means in my case I should have ref_t = 80 right?


This is exactly what I want!

Here, in this particular example, the reference temperature is not required anymore. As you are telling gromacs to impose a 240 K at time 0 and decrease it to 80 in 2000 ps. Should your simulation continue further, let’s say for another 2 ns, the temperature will stay at 80. This is because you are using annealing = single. Using the other annealing type, i.e. annealing = periodic, will show a different pattern. See mdp options for more information.

1 Like

Ohh okay, understood!

Thank you so very much for the explainiation!