Struggle in choosing Pdamp factor for fix press/berendsen

Hello all,

Iam trying to simulate the bulk behaviour of PMMA polymer using CVFF forcefield, I want to equilibrate the system at 300k and 1 atm.

While doing NPT simulation for equilibrating the pressure, the pressure fluctuations were really high. (volume of the system was not fluctuating but pressure fluctuations were very high)
Then i came here for reading what are the suggestions provided here for decreasing the pressure fluctuations.

suggestions found was first equilibrate the system for a sufficiently long time in

fix nve
fix langvian temp
fix press/berendsen

then unfix theses fixes and run NPT.

but iam not able to choose a pdamp factor for fix press/berendsen, until pdamp value is less than around 20000fs (unit real, timestep = 1fs), simulation crashes with an error "non numeric box dimensions - simulation unstable " . for pdamp factors greater than 20000fs the fix is running, but for these large pdampvalue we may have to run the simulation for a very large time for equilibiriation which is my major concern.

any suggestions/clarification will be really helpfull


(for clarification I
input.txt (891 Bytes)
para.txt (2.9 KB)
pmmadata.txt (1.2 MB)
am uploading my data file and input script )

How high?

You have a very small system so instantaneous pressure fluctuations are supposed to be “large”.


the pressure were fluctuating in the range of approximately -1000 to +1000

Iam actually more curious about pdamp factor used in fix press/berendsen , i tried to simulate bulk water system for understanding this factor.(system was comprising of 33,000 water molecules [cube of size 100 Angstrem ])
but similar error was observed for pdamp factor upto 20000fs.

why this barostat only working for high pdamp value ?

With only two data points, you don’t have enough information to make such a blanket statement. The way how fix press/berendsen operates is described in the corresponding page in the LAMMPS manual and the linked publication.

To put it simple, if the combination of actual pressure and Pdamp (combined with the assumed compressibility) results in a too large deformation of the box, atoms will come very close. Those close contacts result in large forces and those large forces will make the simulation unstable unless the chosen timestep is sufficiently small.

Please also note that comparing fluctuations between fix nve + fix langevin + fix press/berendsen and fix npt is not saying anything about its correctness. The Nose-Hoover termostat/barostat algorithm is supposed to have larger fluctuations since those correlate with the local fluctuation induced in a bulk system from coupling with the bulk. Using the former may be useful when your system is far from equilibrium to reach it faster, but the ultimate measure is whether your system eventually reaches and maintains an equilibrium that is consistent with the material and the accuracy of the force field to represent that material. For polymer systems like yours that can take a considerable amount of time, since you have to start with a somewhat lower initial density to avoid overlaps and because it is always much more difficult to compress a lower density system to its actual density than the other way around. In that regard, using fix npt with its larger fluctuations should actually be helpful. In order to have a more meaningful value of pressure to monitor, you need some significant averaging, best in a sliding window averaging style.

Your timestep of 1fs is far too large for a molecular system containing hydrogen atoms and without bond constraints on all bonds containing hydrogen atoms.
Particularly considering the large timestep, the choice of a minimum 10 step delay before rebuilding the neighbor lists is going to cause additional accuracy issues.

Looking at your input, you also seem to be unaware that “10e-4” represents a value of 10^{-3}. Thus your kspace force convergence is far too relaxed. For a variable cell, you should rather have 10^{-5} (i.e. 1.0e-5) or smaller.

Another problem is that you are requesting an isotropic scaling of the simulation box, but your system is anisotropic.

I am attaching a modified version of your input script that addresses most of the discussed issues. A further possible change would be to initially run fix npt with a larger target pressure and higher temperature, or run with fix nvt + fix deform to bring the system near the target density and benefit from the higher temperature to have less problems with “jamming” and then let it further equilibrate with fix npt at the actual target pressure. However, if you overdo it, you may still be away from the equilibrium and have a metastable state with a too disordered system. Another option to consider would be to increase the system by replicating it in each direction (replicate 2 2 2), which would result in an 8x larger system with smaller fluctuations and less “jamming”, but also requiring about 10x more CPU power per step.

input.txt (1.5 KB)

Thank you very much for your detailed explanation,

since I am self learning lammps and molecular dynamics, this help matters a lot to me.
I will definitely work on the suggestions given by you and inform here.


As has been said here many times: don’t do this on your own!!
You are going to enter a world of pain and troubles.

Please find yourself a proper tutor or have your adviser arrange it for you. This forum or the internet in general is no substitute for that. Not all problems will be so easy to discuss, and not always will there be the time (or interest) to discuss with you here at the level or detail that is required to properly address issues.

Most of the time there is not. I wrote a detailed response this time because your system is sufficiently simple and your issues are rather generic, so it is likely that others will find this topic when searching for help and that will hopefully help them to address their issues as well, and with the attached example inputs people can see the “before” and “after” and make comparisons and study the manual what those mean.


yeah sure,
I understand the seriousness