Dear Users,
I used DeepMD kit to train a deep potential and applied it to my system where there are two groups of atoms. I want to apply fix pimd/langevin to group1 and fix nvt to group2
pair_style deepmd deepmd.pb
fix 1 group1 pimd/langevin ensemble npt integrator obabo thermostat PILE_L 1234 tau 0.025 temp ${TEMP} iso $P barostat BZP taup 0.25 fixcom no
fix 2 group2 nvt temp {TEMP} {TEMP} 0.025
However I got an error “Caught signal 11 (Segmentation fault: address not mapped to object at address 0x559f00000350)”
I am not too sure whether this error is related to the setting of HPC or my lammps input.
I want to know if it is possible to use fix pimd/langevin and fix nvt with deep potential in Lammps?
@fanliqmul There are too many variables and unknowns in your inquiry.
I think there are (at least) two different issues here:
- Whether you can use a DeepMD potential with fix pimd/langevin
- Whether you can use fix pimd/langevin with fix nvt
Since DeepMD is not part of LAMMPS we cannot help you with any questions about that. You have to contact the DeepMD developers.
However, to see if you can use the two fixes together, you should create a test input with a simple potential that is available in LAMMPS directly like lj/cut.
Also, you need to confirm if there are any issues with the latest LAMMPS release 30 March 2026.
I have not tried this myself, but I think what you are trying goes against how partitions work in LAMMPS, and you won’t get what you want.
Also I am not sure if this idea (using different number of beads for different atoms) physically makes sense at all. Have you seen any paper with such setup?
I don’t see a technical problem with partitions in principle. Fix nvt will just act the same for all partitions.
But there are two possible technical issues:
- the DeepMD potential cannot handle multiple independent instances. I don’t know the code and how it handles MPI comunication for domain decomposition (e.g. by assuming that
Comm::world is the same as MPI_COMM_WORLD, which is only true for single partition runs)
- fix pimd/langevin may not fully support working on a group different from “all”. There have been fixes to that code recently, hence my asking for testing with the latest release and without the DeepMD potential.
R1: I have tested it with
fix 1 all pimd/langevin ensemble npt integrator obabo thermostat PILE_L 1234 tau 0.025 temp ${TEMP} iso $P barostat BZP taup 0.25 fixcom no
keeping other setting unchanged. The simulation is successful. So I think the problem maybe related to usage of fix pimd/langevin with fix nvt together. Now I am going to use the latest version to see if it is possible to use fix pimd/langevin with fix nvt together with DeepMD.
my understanding is that pimd/langevin is important for light atom like hydrogen which is in my group1, while my group2 have heavy atoms like carbon and oxygen. The quantum effet is not very important for those heavy atoms.
There is a logic problem here. This desired behavior will happen automatically when applying PIMD to all atoms. Unless you want to deliberately suppress the nuclear quantum effect for light atoms there is no justification for having a split integrator setup.
The problem is that NVT atoms in different partitions would evolve independently. It roughly means that these atoms are also simulated with N beads, but the beads are not connected. This physically makes no sense. (I just tried this in LAMMPS 30Mar2026.)
Your motivation is understandable, but it does not mean that the pimd formalism is designed to work in this way. Maybe you need to find (or invent) a different variation of pimd which supports different number of beads on different atoms. I don’t think LAMMPS has it.
If your goal is to speed up simulations, an established approach I know is the “ring polymer contraction”, which uses different number of beads for different types of interactions (e.g. more beads for bonded forces, fewer beads for non-bonded forces). Obviously it requires the force-field to be decomposed by interaction types (or more exactly, quickly fluctuating parts vs. slowly varying parts). That’s probably not the case for you.
1 Like