Temperature not reaching target values

Hi all,

I working on surface polymer interactions. I want to anneal the polymer chain alone at 500 K fixing the solid surface and then I have to reduce it to 100 K. Am using "velocity create"command to assign temperature to only polymer atoms. Next am using temp/berendsen to lower the temperature from 500 to 100 K. The problem is the temperature is very low and it not reaching 100 at the end of run.

This is my script:

group HAP id > 1103
group CS id < 1103
velocity CS create 500 1231

fix 3 HAP setforce 0 0 0

fix 4 CS temp/berendsen 500.0 100.0 10

thermo_style custom step temp press vol
thermo 10
timestep 1
run 10000
unfix 4

log file:

Step Temp Press Volume
0 15.164454 339.88158 11520000
10 15.159434 339.87942 11520000
20 15.149782 339.87528 11520000
30 15.138515 339.87044 11520000
40 15.126685 339.86536 11520000
50 15.114658 339.8602 11520000
60 15.102563 339.85501 11520000
70 15.090444 339.8498 11520000
80 15.078317 339.84459 11520000
90 15.066187 339.83939 11520000
100 15.054056 339.83418 11520000
110 15.041925 339.82897 11520000
120 15.029793 339.82376 11520000
130 15.017662 339.81855 11520000
140 15.00553 339.81334 11520000
150 14.993399 339.80813 11520000
160 14.981267 339.80292 11520000
170 14.969136 339.79771 11520000

​Thank you,

Santhosh.M​

The temperature you are monitoring in thermo is the total temperature of the system. This effectively means summing all kinetic energy and dividing by the number of degrees of freedom. This includes all atoms in the surface as well, which are not moving, so the temperature in thermo_output is much lower than that of the polymer alone.

If you want to monitor the temperature of the polymer only, you can use a compute or something.