I am using moltemplate to generate OPPL-AA paramters and LAMMPS data files.
In .lt file, following have to be provided-
1. atom coordinates
3. atom type
2. list of bonds
I can get the coordinates and bonds list from .pdb file.
However, is there a way to assign atom types automatically or if some scripts exit that can do the assignment.
May be I missed something butI went through moltemplate manual and the mailing list and couldn't find the solution.
It is my understanding that for a small molecule it can be done manually. But what is the best way to do it large molecules (ex: emamectin)?
Just going to make a comment; while automatic atom typers are nice and a wonderful help to the community their applicability should always be checked when molecular complexity increases. For the case of emamectin, that molecular system has numerous heterocyclic rings and potential regions where pi-pi interactions need to be considered. There is no guarantee that an atom typer will be able to identify this correctly.
If you have a minimized structure you can always try different atom types and calculate the energy of the molecule as a good indicator of the appropriateness of the force field applied.
I discussed this issue on slides 175-182 of the talk I gave at the
LAMMPS workshop last week. The slides are here:
The short answer is unfortunately no.
Moltemplate will probably never do automatic atom typing or partial
However you can use external tools such as PSFGEN, or AutoPSF to read
PDB files and determine atom types and partial charges. On slides
187-198, I also mentioned you could use the "LibParGen" server to
generate a LAMMPS data file containing partial charges and OPLSAA
force field parameters. Then you could use the "ltemplify.py" script
to convert the result into moltemplate LT format (See slides 168-169).