I am trying to run npt simulations on a system consist of rigid model water, and rigid model CO2. I noticed that the temperature and pressure calculated is not correct, i.e. even at step zero. For example, I use velocity create to set the initial velocity of the system to be 10K, however, what I get at step zero is 8K. Also, during the npt simulation, I see my temperature rise dramatically but the output movie which indicates the molecular dynamics during the simulation is very stable, i.e., the temperature rise by 700 K but the system is not melting or blowing up. And all the calculated value of the KE and PE at each time step seems reasonable too.
I have searched the mailing list and I thought my problem is that I didn’t specify my fix command before the velocity command is issued, since I am using rigid body models and there are degree of freedom removed. So I switch the order of my code and hoping to see a difference, yet to find out that the temperature and pressure is still not correct.
Thus I have to turn the lammps community for help. Any comments are welcome and appreciated.
Thank you very much.
P.S. I have also attached a copy of my input file (‘ch4.lmp’) in here for your information.
ch4.lmp (2.23 KB)
log.lammps (5.29 KB)
You don’t say what LAMMPS commands you
used to setup your model. The temperature is
likely not what you expect, b/c the temperature
computes in LAMMPS subtract out frozen degrees
of freedom. If you didn’t specify the velocity
command with those the correct temperature compute
or didn’t define the temperature compute until
after you assigned velocities, then you will get
a differerent temperature at run time (w/out the DOFs)
then when velocity was assigned (with the DOFs).
I suggest you start with fix rigid or fix rigid/nve and just
run NVE with rigid bodies to see if you can get a stable
equilibrated system. Then you could try fix rigid/nve
or fix rigid/npt to increase the complexity.
Thank you so much for the prompt reply. The command I am using is ‘fix rigid/npt molecule’. I have been suspicious for a while that the problem could be related with the stiffness in the initial configuration.
Thus I tried to ‘run fix rigid/nvt molecule’ for a 100000 steps in metal units. And after that, I tried to run ‘fix rigid/npt molecule’ again, the problem still exits. The biggest concern is my energy calculation seems pretty reasonable, its just that the temperature and pressure doesn’t seem correct. In my system, all the molecules are defined as rigid. I am wondering in this case, would lammps be capable of performing npt simulations?
Thank you so much for the prompt reply. The command I am using is 'fix
rigid/npt molecule'. I have been suspicious for a while that the problem
could be related with the stiffness in the initial configuration.
Thus I tried to 'run fix rigid/nvt molecule' for a 100000 steps in metal
units. And after that, I tried to run 'fix rigid/npt molecule' again, the
problem still exits. The biggest concern is my energy calculation seems
pretty reasonable, its just that the temperature and pressure doesn't seem
correct. In my system, all the molecules are defined as rigid. I am
wondering in this case, would lammps be capable of performing npt
yes. of course it is.
what is more problematic is that you are using an extremely short time
step and a comparatively long thermostat time constant and yet only
use a rather small number of time steps. this doesn't add up and hints
that the problem is more likely somewhere between your chair and your
computer than in LAMMPS.
there are only 2 rigid bodies with 208000 atoms, as reported in the log file. Did you check the atoms’ molecule ID in your data file?
You have 184000 atoms for water molecules (should it be a number divisible by 3 instead)? and 24000 atoms for CO2, which should correspond to about 69K rigid bodies.