Some discussions and questions about the units under unit LJ in LAMMPS

The LJ units of Lammps are interpreted in Manual. The key ones here are Sigma and Epsilon. If there are four types of atoms in A system, A,B,C and D, there will be multiple Sigma and epsilon, and the mixing rule can be used to obtain the inter-atomic sigma and epsilon. So my question is at the end of the output of the thermodynamic information there’s a fixed one under each timestep like energy, so if you want to convert the real energy, what is the Epsilon here?

So my question is do sigma and epsilon read in mannual change depending on the pair coeff value you set in your script, is that a fixed value? If I change how do I get this sigma and Epsilon to calculate the real parameters?

You get reduced units by dividing properties in their actual with a reference value. There can be only one reference value per property. And some units, e.g. time are “derived” units thus their actual value is determined by an expression of their fundamental units as shown in the documentation.

To get any actual values you have to do the inverse operation. So if you have an epsilon value of 1.0 in your pair_coeff command then the actual epsilon is 1.0 multplied with the reference epsilon. If your pair_coeff command has an epsilon of 1.4, then the actual epsilon is 1.4 times the references. Similar for other properties.

This is illogical. If that was true all pair_coeff statements - for example - would have to be 1.0 1.0 even though the interactions would be different. Thus this makes no sense.

Your question is yet another time that I am wondering why people that don’t fully understand reduced units insist on using them. LAMMPS works just as well with other units and the benefit of reduced units is in their generality i.e. when you don’t convert them back, but that benefit is already significantly reduced when you have multiple atom types with different (relative) parameters. In short, you are just making your life needlessly complicated.

For example, my pair coeff is the following

Pair coeff 1 1 0.5 3

Pair coeff 1 2 0.4 2.3

Pair Coeff 1 3 0.55 2

Pair coeff 2 2 0.5 2

Pair coeff 2 3 0.2 1

Pair coeff 3 3 1.2 2

When I run MD, I can get a series of energy in the out file. There should be a final epsilon for the system under certain timestep and temperature. How did this value come about? According to what you said, I can get the real value between each pair of atoms, but I want to know how to get the Epsilon for transformation in the final output of the system

That is your choice. This is why people choose reduced units: you only specify relative values in your input, so you can later translate it to many systems that have the same relative parameters by choosing a different reference epsilon (or sigma).

To re-iterate, all energies are scaled by the same epsilon value (in actual units) and all lengths by the same sigma (in actual units) and all masses by the same mass and so on.

It is not a problem if this is still beyond your comprehension. Just don’t use reduced units in that case, but directly units real or units metal.

I see what you’re saying which is that the whole system is going to work together and reduce to a set of parameters like temperature. What I’m curious about is what you said in order to iterate this same Epsilon, sigma, just like you said there’s always an Epsilon and Sigma in LAMmps to reduce the overall energy of different sigma and epsilon between different pairs of atoms, what I want to know most is if this epsilon can be found, How do we do that?

Thanks,I see what you’re saying which is that the whole system is going to work together and reduce to a set of parameters like temperature. What I’m curious about is what you said in order to iterate this same Epsilon, sigma, just like you said there’s always an Epsilon and Sigma in Lammps to reduce the overall energy of different sigma and epsilon between different pairs of atoms, what I want to know most is if this epsilon can be found, How do we do that?

For example, if I set T=1.6, I can calculate Epsilon under this system according to the case of T=1 given in the manual?

You still don’t understand and I am tired of explaining the same thing over and over again. There is nothing set in LAMMPS. This epsilon that you seek is an input, but one that LAMMPS does not need to know.

I’m sorry for making you answer my stupid questions so repeatedly。May I ask what the “relative value” here refers to?

The reduced units system.

Hi @JKLDZZZ,

This discussion on how to handle LJ units pops up regularly and was, for example, recently answered here. You’ll find another detailed explanation and a link to a tutorial example.

You might find more information on the general procedure of reduced units in physics by simply googling “reduced units” or looking at the forum/mailing list discussions for “lj units” topics.