Can't get force field coefficients for a lammps input file created with MOLTEMPLATE


I’m currently trying to simulate a 4 molecule system. Each molecule has around 170 atoms, so I’m using moltemplate to join the datafiles and generate a lammps input file which includes all the molecules with their corresponding force field coefficients. I have been using the script to generate the .lt files for each molecule, but when I try to run , the final file doesn’t include the pair, bond , angle and dihedral coeffs required for running the simulation.

I have specified the “inherits oplsaa” in the script. I have tried running it with several combinations of flags (ignore-coeffs, ignore-angles, ignore-bond types, etc). I have also made sure the import “” is included in the final .lt files, but still haven’t been able to make moltemplate calculate the coefficients. I there something I’m missing ?

thanks a lot for your time


This is a question for @jewettaij, who wrote moltemplate. But he will likely ask you to provide access to the files you have used and the exact command lines you have used.

Thanks for the quick response. My two input files are the following (sorry, they are too long for a reply and I’m not allowed to attach them as a new user):



The command I have used in is -name "lmm inherits OPLSAA" -ignore-angles -ignore-bond-types data.LMM >>

Then, I’m running Moltemplate with 

the file is:

import ""
import ""  # <- defines the "Light" molecule type.
import ""  # <- defines the "Heavy" molecule type.

# Periodic boundary conditions:
write_once("Data Boundary") {
   0.0  34.00  xlo xhi
   0.0  34.00  ylo yhi
   0.0  34.00  zlo zhi

# Create "lmm" molecules and arrange them in a 1x1x1 cubic lattice
# with 1.0 Angstrom spacing.

lmm = new lmm[1].move(1.0, 0, 0)
             [1].move(0, 1.0, 0)
             [1].move(0, 0, 1.0)

# Create 1 "hmm" molecules and arrange them in a 1x1x1 cubic lattice with
# 1 Angstrom spacing in the x,y directions and 1 Anstrom spacing along Z.

hmm  = new hmm[1].move(1.0, 0, 0)
              [1].move(0, 1.0, 0)
              [1].move(0, 0, 1.0)

# Now shift the positions of all of the benzene molecules, 
# to reduce the chance that they overlap with the ethylene molecules.

hmm[*][*][*].move(4.0, 4.0, 4.0)

# Note: There is also an example which shows how to generate the coordinates
# using PACKMOL. (That allows us to omit the coordinates and .move() commands.)

the file is in the same directory.
Again, sorry for the long post. I really appreciate your help