Recent Changes

version date changes
1.31 2015-8-02 Fixed several bugs in OPLSAA force-field support (oplsaa_moltemplate.py) and data-file-import (ltemplify.py). Several other small changes. Many thanks to Jia Fu, Carles Martí, Laurent Joly, and Kushal Panchal helpful bug-reporting and bug-squashing.
1.30 2015 spring Unreleased.
1.29 2014-12-09 Major update. This version has numerous bug fixes, speed enhancments, and feature enhancements (effecting OPLSAA, AMBER/GAFF, -xyz, -pdb, -raw, delete, "ltemplify.py", "dump2data.py", "raw2data.py"). Examples using the MARTINI (coarse-grained biological) force field have also been added. Improvements to "new random()" allow the user to control the number of molecules in a random mixture (see manual). Speed enhancements can be significant (O(Nlog(N)) instead of O(N^2)). Improper and dihedral interactions can now be generated using more flexible, user-definable rules. Lastly, the TIP3P water molecule models have been corrected. Many thanks to: Saeed Momeni Bashusqeh (MARTINI), S Arun Srikant Sridhar, Fu-Chang Sun, Velencia Witherspoon, Morvarid Bakhshizade, Conor Parks, Xiaolin Xu, Helene Kolding, and Paul Saxe!
1.25,...,1.28 2014 fall These versions of moltemplate were not stable enough to release.
1.24 2014-5-19 Yet more serious bugs have been fixed in both AMBER/GAFF and OPLSAA. OPLSAA now uses "pair_modify mix geometric". (Previously, it used "pair_modify mix arithmetic".) Furthermore, all AMBER/GAFF atom radii were too small by a factor of 2^(-5/6) ~= 0.56. Thanks to Reza Rajabi for catching the error. Please keep those bug reports coming!
1.23 2014-5-16 Another serious bug was fixed which prevented moltemplate from building molecules lacking improper angle interactions using OPLSAA. This would have prevented users from building alkane chains, for example.
1.22 2014-5-04 Miguel Gonzales fixed a serious bug in the OPLSAA force-field database converter (oplsaa_moltemplate.py) which was weakening bonds and bond-angles by a factor of 2. Users who don't use OPLSAA will not be effected.
1.21 2014-4-20 A serious bug in GAFF was fixed that was preventing moltemplate from generating improper interactions correctly. AMBER and GAFF force-field parameters have been updated. OPLSAA atom numbers have changed. Instructions have been added to help users download the most up-to-date OPLSAA parameter files. Due to licensing issues, the raw OPLSAA parameter files have been removed. OPLSAA and GAFF examples were updated. Finally, the default pair_style for GAFF was switched back to "lj/charmm/coul/long".
1.20 2014-4-02 Major update. Jason Lambert has added OPLSAA support to moltemplate! (This probably makes moltemplate the easiest non-graphical way to prepare simulations for LAMMPS which need OPLSAA.) To make it easier to see your molecules, I also added the "-vmd" command-line-argument to automatically start the VMD vizualizer after moltemplate is finished. (You must have vmd installed.)
1.18 2014-3-03 Minor update. I added the "rotvv()" rotation command and updated the documentation.
1.17 2013-12-23 Minor update. Fixed a bug in the "-overlay-dihedrals" command-line argument. Thanks to Fu-Chang Sun for reporting the error!
1.16 2013-12-01 Minor update. I repaired a bug in dump2data.py which effects the "-pdb", "-xyz", or "-raw" command line options.
1.15 2013-10-15 I "fixed" a problem with moltemplate's implementation of the GAFF force-field. LAMMPS crashes when using "lj/charmm/coul/long" on a system without any charged particles, and users were complaining. Atoms should always have non-zero charge, but (when using GAFF) it is up to the user to specify the charge of each atom. So I briefly changed the default pair_style in "gaff.lt" from "lj/charmm/coul/long" to "lj/charmm/coul/charmm" which allows systems without charge. (As of v1.21, the default is now "lj/charmm/coul/long" again.) NOTE: You can always replace the pair_style from lj/charmm/coul/long to lj/charm/coul/charmm, using:
  echo "pair_style hybrid lj/charmm/coul/charmm 9.0 10.0" >> system.in.init
  sed -i 's/lj\/charmm\/coul\/long/lj\/charmm\/coul\/charmm/g' system.in.settings
    
(Do this after running moltemplate.sh. Note: Other force-fields do it differently. OPLSAA generates charge according to atom type, so this is not an issue.)
1.14 2013-10-08 A minor bug fix. (Some of the moltemplate command line options, like "-a", were broken in by the changes in 1.13. This fix addresses that.)
1.13 2013-9-20 I changed the way moltemplate reads atomic coordinates from external (user-supplied) PDB and XYZ files. (Presently these coordinates are actually copied into the DATA file created by moltemplate. In the past, they were assigned using "set" input script commands later requiring the user to include "system.in.coords" in their input scripts.) In addition, moltemplate can now also read coordinates in simple 3-column format using the -raw filename argument. This version also includes the dump2data.py utility for creating LAMMPS DATA files and extracting coordinates from DUMP files.
1.12 2013-08-29 This version introduces the GAFF (Generalized Amber Force-Field). Using GAFF, moltemplate users can now build small organic molecules without needing to manually assign force-field parameters.
1.11 Fixed another serious bug in ltemplify.py.
1.10 2013-07-17 Fixed the bug introduced in version 1.04. I also reduced the memory requirements of moltemplate by a factor of ~3. This makes it possible to construct significantly larger systems on machines with limited RAM. Unfortunatley, moltemplate still requires a great deal of memory (between 3 to 12 GB of RAM per million atoms, depending on the number of bonds and molecules).
(Unfortunately I have forgotten some details regarding older releases.)
1.06 Fixed an important bug in the ltemplify.py script.
1.04 early 2013 While attempting to make it easier for windows users to install moltemplate, I accidentally introduced a disastrous bug. That bug prevents automatic angle generation and it broke many of the moltemplate examples. If you are using a version of moltemplate older than 1.10, please upgrade!
1.0 2012-10-20 Initial release version of moltemplate. (It supports syntax-error checking and is much easier to use than earlier versions.)

Andrew Jewett