Hello List,
is there a known problem with the interaction of fix dt/reset and the
npt integrator?
I'm trying to run a simple temperature ram with a dynamic timestep
(EAM potential, so units are metal)
Timestep setup:
lattice fcc 3.52 origin 0.25 0.25 0.25
timestep 0.001
# overwrite timestep dynamically
fix dtreset all dt/reset 1 1.0e-5 0.01 0.01
Now I can try running the simulation with two different integrators.
First npt. This generates unphysically huge negative pressures and
causes the simulation box to implode (the potential is not at fault,
the cell was relaxed with fix box/relax and minimize prior to
integration)
fix 1 all npt temp 0.1 3000.0 0.5 aniso 0.0 0.0 2.0
Step Temp Enthalpy PotEng TotEng Press Volume Dt
3 0.2 -72908.094 -72908.8 -72908.376
2.5323198 178643.8 0.01
10 0 2529775.9 2584087 2584087
-5.6425263e+22 1.5421446e-12 0.00053889929
20 0 2573986.1 2651263.3 2651263.3
-1.785051e+23 6.9360366e-13 0.0005518149
30 0 2591438.2 2677665.1 2677665.1
-4.672673e+23 2.9565675e-13 0.00055317686
Second try with constant volume integration yields more physical dynamics.
fix 1 all nvt temp 0.1 3000.0 0.5
Step Temp Enthalpy PotEng TotEng Press Volume Dt
3 0.2 -72908.094 -72908.8 -72908.376
2.5323198 178643.8 0.01
10 0.10703189 -72907.947 -72908.594 -72908.367
3.7630799 178643.8 0.01
20 0.11238726 -72907.922 -72908.601 -72908.363
3.9502799 178643.8 0.01
30 0.11082415 -72907.9 -72908.59 -72908.355
4.0798992 178643.8 0.01
The manual did not mention dt/reset on the npt page, nor did it
mention npt on the dt/reset page.
In the fix_nh.cpp it looks like there is code to take a changing dt
into account at FixNH::reset_dt().
Any idea what is going on?
Daniel