Dear lammps users,
Currently I use "indent" to generate a shock wave in the sample.
I post part of my input here:
fix 1 all wall/reflect zlo zhi //(my sample is gas, indent direction I chose fixed bondary conditions)
fix 2 all nve
fix 3 all temp/rescale 100.0 300.0 300.0 1.0 1.0
fix 4 all indent 0.05 plane z 100 hi units box
If I use Tdamp=100 which is recommended by the manual, systerm loses atoms and temperature is not controlled around 300K
Please see the log:
Step PotEng Temp Press Volume
0 67041.864 300 9976.4379 2521753.7
50 67035.996 341.46127 10216.468 2521753.7
100 67039.212 300 9979.5127 2521753.7
150 67043.964 483.86123 11040.398 2521753.7
200 67044.337 300 9981.4933 2521753.7
Temp is 300K only at timestep 100,200,300....
At other timestep, Temp keeps growing till atom loss, program stops.
If I use Tdamp=1, everything is fine. No atom loss, no temp grow.
I was told that simulation should not depend on the way you control Temp, so I use temp/berendsen instead of temp/rescale.
Even I control Temp at everytime step, Temp still grows fast like no temp control is used.
Here's the log file:
Step PotEng Temp Press Volume
0 67041.864 300 9976.4379 2521753.7
100 67038.18 423.56346 10691.597 2521753.7
200 67051.843 652.75279 12015.358 2521753.7
300 67038.145 855.65253 13186.153 2521753.7
400 66972.062 998.81956 14009.378 2521753.7
500 66850.604 1089.4683 14527.223 2521753.7
This also happens when I use "FIX NVT" instead of "FIX NVE + TEMP/RESCALE"
Does anyone know what's going on here?
Thanks a lot,
weina
Dear lammps users,
Currently I use “indent” to generate a shock wave in the sample.
I post part of my input here:
fix 1 all wall/reflect zlo zhi //(my sample is gas, indent direction I chose fixed bondary conditions)
fix 2 all nve
fix 3 all temp/rescale 100.0 300.0 300.0 1.0 1.0
fix 4 all indent 0.05 plane z 100 hi units box
If I use Tdamp=100 which is recommended by the manual, systerm loses atoms and temperature is not controlled around 300K
Dear Weina:
Fix temp_rescale doesn’t have a damping parameter. The “100.0” that you’re using is actually the frequency at which the rescaling occurs. Setting it to “100” means that it only attempts to correct the temperature every 100 timesteps. See the online documentation for fix temp/rescale.
Please see the log:
Step PotEng Temp Press Volume
0 67041.864 300 9976.4379 2521753.7
50 67035.996 341.46127 10216.468 2521753.7
100 67039.212 300 9979.5127 2521753.7
150 67043.964 483.86123 11040.398 2521753.7
200 67044.337 300 9981.4933 2521753.7
Temp is 300K only at timestep 100,200,300…
At other timestep, Temp keeps growing till atom loss, program stops.
If I use Tdamp=1, everything is fine. No atom loss, no temp grow.
That’s because Tdamp is really Nfreq. Setting Nfreq = 1 ensures that the temperature is rescaled every timestep if needed.
I was told that simulation should not depend on the way you control Temp, so I use temp/berendsen instead of temp/rescale.
Even I control Temp at everytime step, Temp still grows fast like no temp control is used.
Here’s the log file:
Step PotEng Temp Press Volume
0 67041.864 300 9976.4379 2521753.7
100 67038.18 423.56346 10691.597 2521753.7
200 67051.843 652.75279 12015.358 2521753.7
300 67038.145 855.65253 13186.153 2521753.7
400 66972.062 998.81956 14009.378 2521753.7
500 66850.604 1089.4683 14527.223 2521753.7
This also happens when I use “FIX NVT” instead of “FIX NVE + TEMP/RESCALE”
Does anyone know what’s going on here?
Basically, you’re starting from a state that’s probably not at equilibrium. The response of the thermostat should be along the lines of what you’re seeing, particularly early on in your simulation. 500 timesteps is almost certainly not enough to correct for the problems. Over many thousands (or tens of thousands) of timesteps, the temperature fluctuations should decrease in magnitude.
–AEI
Dear lammps users,
[....]
I was told that simulation should not depend on the way you control Temp, so I use temp/berendsen instead of temp/rescale.
Even I control Temp at everytime step, Temp still grows fast like no temp control is used.
please don't go on somebody's say-so. if you want to do
meaningful simulations, you will have to _learn_ how to
do them, and that requires a certain amount of understanding
statistical mechanics. once you have that understanding,
your confusion will go away. it is, however, difficult to explain
this without.
Here's the log file:
Step PotEng Temp Press Volume
0 67041.864 300 9976.4379 2521753.7
100 67038.18 423.56346 10691.597 2521753.7
200 67051.843 652.75279 12015.358 2521753.7
300 67038.145 855.65253 13186.153 2521753.7
400 66972.062 998.81956 14009.378 2521753.7
500 66850.604 1089.4683 14527.223 2521753.7
This also happens when I use "FIX NVT" instead of "FIX NVE + TEMP/RESCALE"
Does anyone know what's going on here?
well, does your simulation work _without_ the indenter?
that would be the first thing to test.
axel.
If I use Tdamp=1, everything is fine. No atom loss, no temp grow.
You don't say what units you are using. For real units, Tdamp=1 is
a bad choice. It is only about 1 timestep long, which is far too
heavy-handed for a thermostat. For metal units, Tdamp-1
is also fairly bad. It would be roughly 1000 timesteps which
is too modest an effect for a system you are pumping energy into.
Please read the doc page on what Tdamp means and try
it with different reasonable values.
Steve