[lammps-users] Further relaxation using fix npt

Hi all,

My lammps version is LAMMPS 7 Aug 2019.

I conducted a simulation to equilibrate my system by using “fix npt drag” at 300k and with specific stress fields: 0 stress components except a given shear stress pxz. After a fairly long time, the system is at equilibrium around 300k. And all the stress components reach the expected values except pxx ~ 0.2 even if I tried smaller Pdamp values, which should be closer to 0, like 0.01.

Then I restart the simulation with the exact same setting. However the further relaxation of the system is observed and pxx gets close to ~0.01. Therefore the simulation trajectory is changed significantly.

My questions are:

  1. Why during the first simulation, I cannot have pxx close to 0, even if I specify Pstart/Pstop as 0.0?

  2. Why can the system get a slight relaxation in terms of pxx once I restart it?

  3. Would it be better if I apply fix box/relax before the npt run and also specify drag 2.5 rather than drag 0.0?

Any suggestion would be valuable and helpful. Thanks.

Sincerely,
Joe

Hi all,

My lammps version is LAMMPS 7 Aug 2019.

I conducted a simulation to equilibrate my system by using “fix npt drag” at 300k and with specific stress fields: 0 stress components except a given shear stress pxz. After a fairly long time, the system is at equilibrium around 300k. And all the stress components reach the expected values except pxx ~ 0.2 even if I tried smaller Pdamp values, which should be closer to 0, like 0.01.

Then I restart the simulation with the exact same setting. However the further relaxation of the system is observed and pxx gets close to ~0.01. Therefore the simulation trajectory is changed significantly.

My questions are:

  1. Why during the first simulation, I cannot have pxx close to 0, even if I specify Pstart/Pstop as 0.0?

difficult to say without knowing more details. How much does your system deform/relax? Fix npt can have problems if this changes too much. Please see the “nreset” keyword for how to re-initialize if the box changes too much and the reference state needs to be re-initialized. if I remember correctly, fix npt/cauchy is a different and more physical approach to that, but since you are just equilibrating your system, it should not matter.

  1. Why can the system get a slight relaxation in terms of pxx once I restart it?

see my answer to 1.

  1. Would it be better if I apply fix box/relax before the npt run and also specify drag 2.5 rather than drag 0.0?

you should use the “drag” keyword only when the simulation cannot run the nose-hoover chains in a stable fashion without. it is a serious interference with the physics and means that you are no longer sampling the targeted statistical mechanical ensemble. “drag” should only be needed for incompressible systems like dense fluids or (hard) solids.

axel.

Dr. Kohlmeyer,

Thanks for your reply.

  1. My system didn’t change much, in my opinion, because the stress fields aren’t large. The log.lammps file is attached. To avoid the pre-existing pressure, I split the 500000 runs into several runs thus the system can relax more when the next run starts. I will check out the “nreset” keyword and “fix npt/cauchy”. Thanks for the suggestions.

only one of those should be needed. fix npt/cauchy is for when the dimensions change a lot. please see the documentation and the referenced publications.

  1. Thanks for your clear explanation of “drag” which confuses me for a long time. And do you suggest to always use “fix box/relax” when I minimize the system, even though my box is triclinic?

I have no recommendation beyond trying to avoid the drag option if you can. this is not an area where I have a lot of practical experience.

axel.

Dr. Kohlmeyer,

Thanks for the suggestion. I will do a few tests to determine the effect of drag.

The log.lammps was attached to the last email, please let me know whether I should provide more information to help solve the ‘fix npt’ problem.

Sincerely,
Joe

all the help and advice I feel competent to give, I have already given.