# -------- WARNING: --------

This directory contains some examples of all-atom simulations using the GAFF
force field, prepared using moltemplate.

This software is experimental, and the force-fields and equilbration protocols
have not been tested carefully by me.  There is no gaurantee that simulations
prepared using moltemplate will reproduce the behavior of AmberTools/AMBER.

# -------- REQUEST FOR HELP: --------

If you notice a problem with these examples, please report it.
Peer-review is the only way to improve this software (or any software).
Other suggestions are also welcome!

(Contact jewett.aij@gmail.com, 2013-12-01)


--- Charge ---

This software does not assign charges to each atom.
(AmberTools can do this.)

For the purpose of demonstration, in the hydrocarbon examples located here, 
I am simply neglecting the partial charge of the carbon and hydrogen atoms.
This approach is unlikely to be appropriate in most practical applications.


--- Long-range electrostatics ---

Furthermore long-range electrostatics (kspace_style pppm) are usually disabled
by default.  (Examples containing TIP3P water are an exception to this.)
To enable long-range coulombics, make these modifications to the 
"system.in.init" and "system.in.settings" files AFTER running moltemplate:
(enter these commands into the bash shell)

echo "kspace_style pppm 0.0001" >> system.in.init
echo "pair_style hybrid lj/charmm/coul/long 9.0 10.0" >> system.in.init
sed -i 's/lj\/charmm\/coul\/charmm/lj\/charmm\/coul\/long/g' system.in.settings


--- Improper angles ---

I am also uncertain whether the improper angle interactions generated by 
moltemplate are equivalent to those generated by AmberTools.  (I think they are,
but I am worried that I might have listed the atom types in the wrong order.)


--- Bloated lammps input scripts ---
---    -> slow simulations ?     ---

As of 2013-12-01, LAMMPS input scripts prepared using moltemplate using the 
"gaff.lt" file contain the entire contents of the GAFF force-field,
even if your simulation uses only a few of the atom types in GAFF.

 Details:
Moltemplate creates a file usually named "system.in.settings" containing all
of the GAFF information.  It is usually about 700kB large.  This file is read
by LAMMPS.  This means that every interaction in GAFF is loaded 
into LAMMPS (for all ~72 atom types).
This is true even if you only use a tiny subset of the atom types and bonded
interactions defined in GAFF.  Hopefully allocating the memory needed to store
this extra information will not slow down your simulations noticably. 

However, in case it does, the "waterTIP3P+isobutane/README_setup.sh" 
contains detailed instructions how to strip this kind of junk from 
the "system.in.settings" file.

(In the future I may modify moltemplate to do this automatically,
however I may not remember to remove this warning from this file.
Hopefully this issue will be fixed by the time you use moltemplate.)

