In our lab, we are building tools to make it easier to run
coarse-grained simulations of biopolymers in LAMMPS.
Our most significant contribution to LAMMPS is a preprocessor
(moltemplate/template-tree) which augments the syntax of LAMMPS input
files with new features, and makes it much easier to combine and
connect molecules together. This is very close to being released.
Today I'm posting our implementation of the tabular dihedral potential
style. Together with Chuanfu Luo's angle_style table and bond_style
table, this brings some unique features to LAMMPS. Our tabular
dihedral style is very similar to the other tabular styles. Splines
were rewritten to handle cyclic boundary conditions. Lazy users have
the option to omit forces from the table. Additional options were
added so users can dump the contents of the interpolated force and
energy spline tables to a file for inspection. We added some basic
force-energy consistency checking.
Not that it probably matters, but the new dihedral code seems to be
about 10% faster than dihedral_style harmonic and almost twice as fast
as dihedral_style opls.
Release status: beta
I have tested the features mentioned above, and energy is conserved on
my tiny test system. If you use this code, please post any bugs you
run into. I will respond promptly.
(One possible issue: I've no idea if I'm handling restart files
correctly. If not, please tell me and I will fix it soon.)
I've attached a tar-ball with dihedral_table.cpp, dihedral_table.h,
docs.txt, docs_err.txt, and some sample input files to this email.
(Copy "dihedral_table.cpp" and "dihedral_table.h" files to your LAMMPS
"src" directory and recompile.)
My wish is that this code will be accepted as part of LAMMPS.
Until then, any updates I make will be posted here:
dihedral_table_2011-8-02.tar.gz (174 KB)