Anonymous avatar Anonymous committed 25c26bc Draft

created repository

Comments (0)

Files changed (144)

+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry excluding="test/java/org/xmlcml/declaratron/chem/forcefield/|test/java/org/xmlcml/declaratron/chem/|test/java/org/xmlcml/declaratron/|test/java/org/xmlcml/|test/java/org/|test/|test/java/org/|test/resources/org/|test/resources/org/|test/resources/|test/resources/|test/java/|test/java/|main/|main/java/|main/java/|main/resources/|main/resources/|test/resources/" kind="src" path="src"/>
+	<classpathentry kind="src" path="src/test/java"/>
+	<classpathentry kind="src" path="src/main/java"/>
+	<classpathentry kind="src" path="src/main/resources"/>
+	<classpathentry kind="src" path="src/test/resources"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>declaratron-chem</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.m2e.core.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.m2e.core.maven2Nature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>

.settings/org.eclipse.m2e.core.prefs

+#Tue Jan 22 17:15:00 GMT 2013
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1

bin/META-INF/declaratron

+org.xmlcml.cml.declaratron.chem.amber.AmberConverters

bin/cml/chemistry/classList.xml

+<classList>
+	<class tag="arrayTool"    name="org.xmlcml.cml.chemistry.ArrayToolVisitable" />
+	<class tag="atomTypeTool" name="org.xmlcml.cml.chemistry.AtomTypeToolVisitable" />
+	<class tag="energy"       name="org.xmlcml.cml.chemistry.EnergyVisitable" />
+	<class tag="geometry"     name="org.xmlcml.cml.chemistry.GeometryVisitable" />
+	<class tag="moleculeTool" name="org.xmlcml.cml.chemistry.MoleculeToolVisitable" />
+	<class tag="units"        name="org.xmlcml.cml.units.UnitsVisitor" />
+</classList>
+		

bin/cml/examples/amberAssert.xml

+<cml:computation xmlns="http://www.xml-cml.org/semanticforcefields"
+	xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:cml="http://www.xml-cml.org/schema"
+	xmlns:amber='http://www.xml-cml.org/dict/amber:gaffType'>
+
+	<cml:molecule id="molecule" href="src/test/resources/org/xmlcml/cml/forcefield/aceticCompute.xml" />
+	<list id="parm94Test" href="src/main/resources/org/xmlcml/cml/forcefield/amber/parm94test.xml"/>
+	<!--  add hash based on atomType children -->
+	<visitor
+		xpath="//cml:list[@id='parm94Test']/cml:list/cml:list[count(cml:atomType)>0]" method="addHash" args="./cml:atomType"/>
+
+<!-- molecule must have atoms -->
+	<assert validity="false" count="0"
+		xpath="//cml:molecule[@id='molecule']/cml:atomArray/cml:atom"/>
+		
+<!--  must have 3D coords -->
+	<assert xpath="//cml:molecule[@id='molecule']/cml:atom[not(@x3)] |
+		           //cml:molecule[@id='molecule']/cml:atom[not(@y3)] |
+		           //cml:molecule[@id='molecule']/cml:atom[not(@z3)] " 
+		       count="0"/>
+
+	<moleculeTool
+		xpath="//cml:molecule[@id='molecule']" method="getOrCreateBonds"/>
+	<moleculeTool
+		xpath="//cml:molecule[@id='molecule']/cml:bondArray/cml:bond" method="addHash"/>
+<!-- molecule must have bonds -->
+	<assert count="7"
+		xpath="//cml:molecule[@id='molecule']/cml:bondArray/cml:bond"/>
+
+	<moleculeTool
+		xpath="//cml:molecule[@id='molecule']" method="getOrCreateBondOrders"/>
+<!-- molecule must have bond orders -->
+	<assert count="7"
+		xpath="//cml:molecule[@id='molecule']/cml:bondArray/cml:bond[@order]"/>
+
+ 	<moleculeTool
+		xpath="//cml:molecule[@id='molecule']" method="getOrCreateAtomTypes"/>
+	<assert count="0"
+		xpath="//cml:molecule[@id='molecule']/cml:atomArray/cml:atom[not(cml:atomType[@dictRef='amber:parm94Type'])]"/>
+	<!--  add hash based on atomTypes of AtomRefs -->
+
+<!--  		
+	<moleculeTool
+		xpath="//cml:molecule[@id='molecule']/cml:bond" method="getBondParameters" ff="parm4"/>
+		
+	<moleculeTool
+		xpath="//cml:molecule/cml:bondArray/cml:bond" method="dictLookup"
+		list_id="parm94"
+		property_path="//cml:list[@id='amber']/cml:list[@title='bonds']/cml:list[@id='%i']" />
+-->		
+		
+	<moleculeTool
+		xpath="//cml:molecule[@id='molecule']" method="getOrCreateAngles"/>
+	<assert count="10"
+		xpath="//cml:molecule[@id='molecule']/cml:list/cml:angle"/>
+<!-- 		
+	<moleculeTool
+		xpath="//cml:molecule[@id='molecule']/cml:bond" method="getAngleParameters" ff="parm4"/>
+-->		
+	<moleculeTool
+		xpath="//cml:molecule[@id='molecule']" method="getOrCreateTorsions"/>
+	<assert count="8"
+		xpath="//cml:molecule[@id='molecule']/cml:list/cml:torsion"/>
+	<visitor
+		xpath="//cml:molecule[@id='molecule']//cml:*[@atomRefs2 | @atomRefs3 | @atomRefs4]" method="addAtomRefTypesHash"/>
+	<writer xpath="//cml:molecule[@id='molecule']" file="testAtomTypes.cml" /> 
+<!-- 		
+	<moleculeTool
+		xpath="//cml:molecule[@id='molecule']/cml:bond" method="getTorsionParameters" ff="parm4"/>
+-->		
+	<moleculeTool
+		xpath="//cml:molecule[@id='molecule']" method="getOrCreateNonBonded"/>
+<!-- 		
+	<moleculeTool
+		xpath="//cml:molecule[@id='molecule']/cml:bond" method="getNonBondedParameters" ff="parm4"/>
+	
+	<singlePointEnergy forcefieldRef="//cml:list[@id='amber']" moleculeRef="//cml:molecule" />
+	<writer xpath="//cml:molecule" file="output/%i_output.cml" /> 
+	<directEnergyOptimisation forcefieldRef="//cml:list[@id='amber']" moleculeRef="//cml:molecule" n="1000"/>
+	<writer xpath="//cml:molecule" file="output/%i_optimised.cml" /> 
+-->
+
+</cml:computation>

bin/cml/examples/amberComputation.xml

+<computation xmlns="http://www.xml-cml.org/semanticcomputation"
+    xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:cml="http://www.xml-cml.org/schema"
+    xmlns:amber='http://www.xml-cml.org/dict/amber:gaffType'>
+    <visitor class="org.xmlcml.semantic.visitors.HREFVisitor"/>
+    <visitor class="org.xmlcml.cml.chemistry.SemanticChemistryClasses"/>
+    <visitor class="org.xmlcml.cml.chemistry.CMLClassDecorator"/>
+    <!-- 
+    <visitor class="org.xmlcml.semantic.visitors.ShowTreeVisitor"/>
+-->
+    <queryNS prefix="semc"  uri="http://www.xml-cml.org/semanticcomputation"/>
+    <queryNS prefix="semf"  uri="http://www.xml-cml.org/semanticforcefields"/>
+    <queryNS prefix="cml"   uri="http://www.xml-cml.org/schema"/>
+    <queryNS prefix="m"     uri="http://www.w3.org/1998/Math/MathML"/>
+	<queryNS prefix="amber" uri="http://www.xml-cml.org/dict/amber:gaffType" />
+	<queryNS prefix="cmlx"  uri="http://www.xml-cml.org/schema/cmlx" />
+
+     <keyValue key="all"           value="/*" />
+     <keyValue key="mainff"        value="src/main/resources/org/xmlcml/cml/forcefield" />
+     <keyValue key="testff"        value="src/test/resources/org/xmlcml/cml/forcefield" />
+     <keyValue key="out"           value="output" />
+     <keyValue key="mol"           value="//cml:molecule[@id='molecule']" />
+     <keyValue key="molBondTop"    value="${mol}/cml:bondArray" />
+     <keyValue key="molBonds"      value="${molBondTop}/cml:bond" />
+     <keyValue key="molAngTop"     value="${mol}/cml:list[cml:angle]" />
+     <keyValue key="molAngs"       value="${molAngTop}/cml:angle" />
+     <keyValue key="molTorTop"     value="${mol}/cml:list[cml:torsion]" />
+     <keyValue key="molTors"       value="${molTorTop}/cml:torsion" />
+     <keyValue key="molNonBondTop" value="${mol}/cml:list[@id='createdNonBonded']" />
+     <keyValue key="molNonBonds"   value="${molNonBondTop}/cml:length" />
+     <keyValue key="parm"          value="//cml:list[@id='parm94Test']" />
+     <keyValue key="parmBondTop"   value="${parm}/cml:list[@dictRef='ff:bonds']" />
+     <keyValue key="parmAngTop"    value="${parm}/cml:list[@dictRef='ff:angles']" />
+     <keyValue key="parmTorTop"    value="${parm}/cml:list[@dictRef='ff:torsions']" />
+     <keyValue key="parmNonBond"   value="${parm}/cml:list[@dictRef='amber:mod_re']" />
+     <keyValue key="cmlProperty"   value="org.xmlcml.cml.element.CMLProperty" />  
+     
+     <cml:molecule id="molecule" href="${testff}/aceticStart.cml" />
+     
+     <writer xpath="${mol}" file="${out}/aceticStart.cml"/>
+     
+    <cml:list id="parm94Test" href="${mainff}/amber/parm94test.xml"/>
+<!--  add hash based on atomType children -->
+    <atomTypeTool method="addAtomTypesId" using="./cml:atomType"
+        xpath="${parm}/cml:list/cml:list[count(cml:atomType)>0]" />
+    
+    <unitsVisitor xpath="${parm}//cml:scalar[@dictRef='ff:angeq' or @dictRef='ff:phase']" method="degrees2Radians"/>
+    
+    <writer xpath="${parm}" file="${out}/parm94testNew.xml" /> 
+
+
+
+<!-- === create/ensure bonds, angles, torsions, nonbonded and then hash atom types === -->
+
+    <writer xpath="${mol}" file="${out}/initialTemplate.xml" /> 
+    
+<!-- =========== copy parameters to bonds and tidy ============== -->
+
+    <xpathVisitor id="bonds.addProperty" method="addChild"         xpath="${molBonds}" args="${cmlProperty}"/>
+    <atomTypeTool method="addAtomTypesId"   xpath="${molBonds}"/>
+    <writer xpath="${all}" file="${out}/initialBonds00.xml" /> 
+    <xpathVisitor id="bonds.copyFunctionalForm" method="copyChild" xpath="${molBondTop}" 
+            from="${parmBondTop}/semf:functionalForm" />
+    <writer xpath="${all}" file="${out}/initialBonds0.xml" /> 
+    <xpathVisitor id="bonds.copyAtoms" method="copyChild"        xpath="${molBonds}/cml:property" join="../@cmlx:atomTypesId"
+            from="${parmBondTop}" using="./cml:list[@cmlx:atomTypesId='${join.value}']" />
+
+    <writer xpath="${mol}" file="${out}/initialBonds.xml" /> 
+         
+<!-- =========== copy parameters to angles and tidy ============== -->
+<!-- 
+    <moleculeTool method="getOrCreateAngles"      xpath="${mol}" setId="createdAngles" />
+    <xpathVisitor method="addChild"        xpath="${molAngs}" args="${cmlProperty}"/>
+    <atomTypeTool method="addAtomTypesId"   xpath="${molAngs}"/>
+    <xpathVisitor method="copyChild"       xpath="${molAngTop}" 
+            from="${parmAngTop}/semf:functionalForm" />
+    <xpathVisitor method="copyChild"       xpath="${molAngs}/cml:property" join="../@cmlx:atomTypesId"
+            from="${parmAngTop}" using="./cml:list[@cmlx:atomTypesId='${join.value}']" />
+    <xpathVisitor method="deleteNodes"     xpath="${molAngs}/cml:property/cml:list/cml:atomType" />
+
+    <writer xpath="${mol}" file="${out}/initialAngles.xml" /> 
+ -->            
+<!-- =========== copy parameters to torsions and tidy ============== -->
+<!-- 
+    <moleculeTool method="getOrCreateTorsions"    xpath="${mol}" setId="createdTorsions"/>
+    <xpathVisitor method="addChild"        xpath="${molTors}" args="${cmlProperty}"/>
+    <atomTypeTool method="addAtomTypesId"   xpath="${molTors}"/>
+    <xpathVisitor method="copyChild"       xpath="${molTorTop}" 
+            from="${parmTorTop}/semf:functionalForm" />
+    <xpathVisitor method="copyChild"       xpath="${molTors}/cml:property" join="../@cmlx:atomTypesId"
+            from="${parmTorTop}" using="./cml:list[@cmlx:atomTypesId='${join.value}']" />
+    <xpathVisitor method="deleteNodes"
+         xpath="${molTors}/cml:property/cml:list/cml:atomType" />
+            
+    <writer xpath="${mol}" file="${out}/initialTorsions.xml" /> 
+-->    
+<!-- =========== copy parameters to improper torsions and tidy ============== -->
+<!-- 
+    <moleculeTool method="getOrCreateImproperTorsions"    xpath="${mol}" setId="createdImproperTorsions"/>
+    <xpathVisitor method="addChild"        xpath="${molTors}" args="${cmlProperty}"/>
+    <xpathVisitor method="copyChild"       xpath="${molTorTop}" 
+            from="${parmTorTop}/semf:functionalForm" />
+    <xpathVisitor method="copyChild"       xpath="${molTors}/cml:property" join="../@cmlx:atomTypesId"
+            from="${parmTorTop}" using="./cml:list[@cmlx:atomTypesId='${join.value}']" />
+    <xpathVisitor method="deleteNodes"
+         xpath="${molTors}/cml:property/cml:list/cml:atomType" />
+            
+    <writer xpath="${mol}" file="${out}/initialTorsions.xml" /> 
+ -->    
+<!-- =========== copy parameters to non-bonded and tidy ============== -->
+<!-- 
+    <xpathVisitor method="copyChild"        xpath="${molNonBondTop}" 
+            from="${parmNonBond}/semf:functionalForm" />
+    <atomTypeTool method="addAtomTypes"           xpath="${molNonBondTop}/cml:length"/>
+    <xpathVisitor method="copyChild"        xpath="${molNonBonds}" join="./cml:atomType[1]"
+            from="${parmNonBond}" using="./cml:list[cml:atomType[.='${join.value}']]" />
+    <xpathVisitor method="copyChild"        xpath="${molNonBonds}" join="./cml:atomType[2]"
+            from="${parmNonBond}" using="./cml:list[cml:atomType[.='${join.value}']]" />
+    <xpathVisitor method="deleteNodes" xpath="${parm}/*"/>
+    <writer xpath="/*" file="${out}/all.xml" /> 
+    <writer xpath="${mol}" file="${out}/initialNonBonded.xml" /> 
+ -->
+    
+<!-- =========== 1-4 interactions ============== -->
+ <!-- 
+    <moleculeTool method="getOrCreate14Lengths"    xpath="${mol}" setId="14NonBonded"/>
+    <moleculeTool method="getOrCreate14Lengths"    xpath="${mol}" setId="14Electrostatic"/>
+ -->
+ <!-- =========== nonbonded interactions ============== -->
+<!--  
+    <moleculeTool method="getOrCreateNonBonded"   xpath="${mol}" setId="nonBonded"/>
+    <moleculeTool method="getOrCreateNonBonded"   xpath="${mol}" setId="electrostratic"/>
+ -->    
+
+
+    <energyVisitor xpath="${mol}" xpath1=".//semf:functionalForm" method="singlePoint" />
+    
+    <writer xpath="/*" file="${out}/output.cml" /> 
+
+</computation>

bin/cml/examples/amberNew.xml

+<computation xmlns="http://www.xml-cml.org/semanticcomputation"
+    xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:cml="http://www.xml-cml.org/schema"
+    xmlns:amber='http://www.xml-cml.org/dict/amber:gaffType'>
+    <visitor class="org.xmlcml.semantic.visitors.HREFVisitor"/>
+    <visitor class="org.xmlcml.cml.chemistry.SemanticChemistryClasses"/>
+    <visitor class="org.xmlcml.cml.chemistry.CMLClassDecorator"/>
+
+    <queryNS prefix="semc" uri="http://www.xml-cml.org/semanticcomputation"/>
+    <queryNS prefix="semf" uri="http://www.xml-cml.org/semanticforcefields"/>
+    <queryNS prefix="cml" uri="http://www.xml-cml.org/schema"/>
+    <queryNS prefix="m" uri="http://www.w3.org/1998/Math/MathML"/>
+	<queryNS prefix="amber" uri="http://www.xml-cml.org/dict/amber:gaffType" />
+	<queryNS prefix="cmlx" uri="http://www.xml-cml.org/schema/cmlx" />
+
+     <keyValue name="a" value="AAA"/>
+     <keyValue name="b" value="this${a}and${a}"/>
+     <keyValue name="forcefield" value="src/test/resources/org/xmlcml/cml/forcefield"/>
+     <cml:molecule id="molecule" href="src/test/resources/org/xmlcml/cml/forcefield/aceticStart.cml" />
+     <!-- fails as href is not resolved
+     <cml:molecule id="molecule" href="${forcefield}/aceticStart.cml" />
+     -->
+     <!-- 
+     <geometryVisitor xpath="//cml:molecule[@id='molecule']//cml:atom" method="randomShift" shift="0.3"/>
+     -->
+     <writer xpath="//cml:molecule" file="output/random.cml"/>
+<!--      <cml:molecule id="molecule" href="src/test/resources/org/xmlcml/cml/forcefield/aceticDistorted.xml" /> -->
+    <!--  molecule must have atomTypes -->
+    <assert count="0"
+        xpath="//cml:molecule[@id='molecule']/cml:atomArray/cml:atom[not(cml:atomType[@dictRef='amber:parm94Type'])]"/>
+    
+    <cml:list id="parm94Test" href="src/main/resources/org/xmlcml/cml/forcefield/amber/parm94test.xml"/>
+<!--  add hash based on atomType children -->
+    <atomTypeTool method="addAtomTypesId" using="./cml:atomType"
+        xpath="//cml:list[@id='parm94Test']/cml:list/cml:list[count(cml:atomType)>0]" />
+    
+    <unitsVisitor xpath="//cml:list[@id='parm94Test']//cml:scalar[@dictRef='ff:angeq' or @dictRef='ff:phase']" method="degrees2Radians"/>
+    
+    <writer xpath="//cml:list[@id='parm94Test']" file="output/parm94testNew.xml" /> 
+
+<!-- === create/ensure bonds, angles, torsions, nonbonded and then hash atom types === -->
+    <moleculeTool method="getOrCreateBonds"
+        xpath="//cml:molecule[@id='molecule']" setId="createdBonds"/>
+    <moleculeTool method="getOrCreateBondOrders"
+        xpath="//cml:molecule[@id='molecule']" />
+    <moleculeTool method="getOrCreateAngles"
+        xpath="//cml:molecule[@id='molecule']"  setId="createdAngles"/>
+    <moleculeTool method="getOrCreateTorsions"
+        xpath="//cml:molecule[@id='molecule']" setId="createdTorsions"/>
+    <moleculeTool method="getOrCreateNonBonded"
+        xpath="//cml:molecule[@id='molecule']" setId="createdNonBonded"/>
+    <atomTypeTool method="addAtomTypesId"
+        xpath="//cml:molecule[@id='molecule']//cml:*[self::cml:bond | self::cml:angle | self::cml:torsion]"/>
+    <atomTypeTool method="addAtomTypes"
+        xpath="//cml:molecule[@id='molecule']/cml:list[@id='createdNonBonded']/cml:length"/>
+
+    <writer xpath="//cml:molecule[@id='molecule']" file="output/testAtomTypes0.xml" /> 
+    
+<!-- =========== copy parameters to bonds and tidy ============== -->
+    <xpathVisitor method="addChild"
+        xpath="//cml:molecule[@id='molecule']/cml:bondArray/cml:bond" args="org.xmlcml.cml.element.CMLProperty"/>
+    <xpathVisitor method="copyChild"
+        xpath="//cml:molecule[@id='molecule']/cml:bondArray" 
+            from="//cml:list[@id='parm94Test']/cml:list[@title='bonds']/semf:functionalForm" />
+    <xpathVisitor method="copyChild"
+        xpath="//cml:molecule[@id='molecule']/cml:bondArray/cml:bond/cml:property" key="../@cmlx:atomTypesId"
+            from="//cml:list[@id='parm94Test']/cml:list[@title='bonds']" using="./cml:list[@cmlx:atomTypesId='$key']" />
+    <xpathVisitor method="deleteNodes"
+         xpath="//cml:molecule[@id='molecule']/cml:bondArray/cml:bond/cml:property/cml:list/cml:atomType" />
+         
+<!-- =========== copy parameters to angles and tidy ============== -->
+    <xpathVisitor method="addChild"
+        xpath="//cml:molecule[@id='molecule']/cml:list/cml:angle" args="org.xmlcml.cml.element.CMLProperty"/>
+    <xpathVisitor method="copyChild"
+        xpath="//cml:molecule[@id='molecule']/cml:list[cml:angle]" 
+            from="//cml:list[@id='parm94Test']/cml:list[@dictRef='ff:angles']/semf:functionalForm" />
+    <xpathVisitor method="copyChild"
+        xpath="//cml:molecule[@id='molecule']/cml:list/cml:angle/cml:property" key="../@cmlx:atomTypesId"
+            from="//cml:list[@id='parm94Test']/cml:list[@title='angles']" using="./cml:list[@cmlx:atomTypesId='$key']" />
+    <xpathVisitor method="deleteNodes"
+         xpath="//cml:molecule[@id='molecule']/cml:list/cml:angle/cml:property/cml:list/cml:atomType" />
+            
+<!-- =========== copy parameters to torsions and tidy ============== -->
+    <xpathVisitor method="addChild"
+        xpath="//cml:molecule[@id='molecule']/cml:list/cml:torsion" args="org.xmlcml.cml.element.CMLProperty"/>
+    <xpathVisitor method="copyChild"
+        xpath="//cml:molecule[@id='molecule']/cml:list[cml:torsion]" 
+            from="//cml:list[@id='parm94Test']/cml:list[@dictRef='ff:torsions']/semf:functionalForm" />
+    <xpathVisitor method="copyChild"
+        xpath="//cml:molecule[@id='molecule']/cml:list/cml:torsion/cml:property" key="../@cmlx:atomTypesId"
+            from="//cml:list[@id='parm94Test']/cml:list[@title='torsions']" using="./cml:list[@cmlx:atomTypesId='$key']" />
+    <xpathVisitor method="deleteNodes"
+         xpath="//cml:molecule[@id='molecule']/cml:list/cml:torsion/cml:property/cml:list/cml:atomType" />
+            
+    <writer xpath="//cml:molecule[@id='molecule']" file="output/testAtomTypes.xml" /> 
+    
+<!-- =========== copy parameters to non-bonded and tidy ============== -->
+    <xpathVisitor method="copyChild"
+        xpath="//cml:molecule[@id='molecule']/cml:list[@id='createdNonBonded']" 
+            from="//cml:list[@id='parm94Test']/cml:list[@dictRef='amber:mod_re']/semf:functionalForm" />
+    <xpathVisitor method="copyChild"
+        xpath="//cml:molecule[@id='molecule']/cml:list[@id='createdNonBonded']/cml:length" key="./cml:atomType[1]"
+            from="//cml:list[@id='parm94Test']/cml:list[@dictRef='amber:mod_re']" using="./cml:list[cml:atomType[.='$key']]" />
+    <xpathVisitor method="copyChild"
+        xpath="//cml:molecule[@id='molecule']/cml:list[@id='createdNonBonded']/cml:length" key="./cml:atomType[2]"
+            from="//cml:list[@id='parm94Test']/cml:list[@dictRef='amber:mod_re']" using="./cml:list[cml:atomType[.='$key']]" />
+    <xpathVisitor method="deleteNodes"
+         xpath="//cml:molecule[@id='molecule']/cml:list/cml:torsion/cml:property/cml:list/cml:atomType" />
+    <xpathVisitor method="deleteNodes" xpath="//cml:list[@id='parm94Test']/*"/>
+    <writer xpath="/*" file="output/all.xml" /> 
+
+    <writer xpath="/*" file="output/allxx.xml" /> 
+
+<!--     
+    <energyVisitor xpath="//cml:molecule" xpath1=".//semf:functionalForm" method="singlePoint" />
+    -->
+     <energyVisitor xpath="//cml:molecule" xpath1=".//semf:functionalForm" method="optimise" />
+    
+    <writer xpath="/*" file="output/output.cml" /> 
+
+</computation>

bin/cml/examples/karplusComputation.xml

+<computation xmlns="http://www.xml-cml.org/semanticcomputation"
+    xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:cml="http://www.xml-cml.org/schema"
+    xmlns:amber='http://www.xml-cml.org/dict/amber:gaffType'>
+	<visitorList>
+	    <visitor class="org.xmlcml.semantic.visitors.KeyValueVisitor" xpath="//*[local-name()='keyValue']"/>
+	    <visitor class="org.xmlcml.semantic.visitors.HREFVisitor"/>
+    </visitorList>
+    <visitorList>
+	    <visitor class="org.xmlcml.cml.chemistry.SemanticChemistryClasses"/>
+	    <visitor class="org.xmlcml.cml.chemistry.CMLClassDecorator"/>
+	</visitorList>
+    
+	<queryNSList>
+	    <queryNS prefix="semc"  uri="http://www.xml-cml.org/semanticcomputation"/>
+	    <queryNS prefix="semf"  uri="http://www.xml-cml.org/semanticforcefields"/>
+	    <queryNS prefix="cml"   uri="http://www.xml-cml.org/schema"/>
+	    <queryNS prefix="m"     uri="http://www.w3.org/1998/Math/MathML"/>
+		<queryNS prefix="amber" uri="http://www.xml-cml.org/dict/amber:gaffType" />
+		<queryNS prefix="cmlx"  uri="http://www.xml-cml.org/schema/cmlx" />
+	</queryNSList>
+
+	<keyValueList>
+	     <keyValue key="all"           value="/*" />
+	     <keyValue key="main"          value="src/main/resources" />
+	     <keyValue key="mainCml"       value="${main}/org/xmlcml/cml" />
+	     <keyValue key="test"          value="src/test/resources" />
+	     <keyValue key="molDir"        value="${test}/molecules" />
+	     <keyValue key="out"           value="output" />
+	     <keyValue key="mol"           value="//cml:molecule[@id='karplus1']" />
+	</keyValueList>
+
+	     <writer xpath="${all}" file="${out}/karplusStart0.cml"/>
+	     <cml:molecule id="mol" href="${molDir}/ClCCF.cml" />
+	     <moleculeTool method="getOrCreateTorsions"  xpath="${mol}" setId="createdTorsions"/>
+	     
+	     <writer xpath="${all}" file="${out}/karplusStart.cml"/>
+	     
+	    <cml:list id="karplusEquation" href="${mainCml}/karplus/bb.xml"/>
+	    
+	    <writer xpath="karplusEquation" file="${out}/karplusNew.xml" /> 
+	
+	
+	
+	<!-- === create/ensure bonds, angles, torsions, nonbonded and then hash atom types === -->
+	
+	    <writer xpath="${mol}" file="${out}/initialTemplate.xml" /> 
+	    
+	
+	    <calculationVisitor xpath="${mol}" xpath1=".//semf:functionalForm" method="singlePoint" />
+	    
+	    <writer xpath="/*" file="${out}/output.cml" /> 
+
+</computation>

bin/cml/examples/kiharaKoba1.xml

+<?xml version="1.0" encoding="UTF-8"?>
+<computation xmlns="http://www.xml-cml.org/semanticcomputation"
+    xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:cml="http://www.xml-cml.org/schema"
+    xmlns:amber='http://www.xml-cml.org/dict/amber:gaffType'>
+    <visitor class="org.xmlcml.semantic.visitors.HREFVisitor"/>
+    <visitor class="org.xmlcml.cml.chemistry.SemanticChemistryClasses"/>
+    <visitor class="org.xmlcml.cml.chemistry.CMLClassDecorator"/>
+    
+    <queryNS prefix="semc"  uri="http://www.xml-cml.org/semanticcomputation"/>
+    <queryNS prefix="semf"  uri="http://www.xml-cml.org/semanticforcefields"/>
+    <queryNS prefix="cml"   uri="http://www.xml-cml.org/schema"/>
+    <queryNS prefix="m"     uri="http://www.w3.org/1998/Math/MathML"/>
+	<queryNS prefix="amber" uri="http://www.xml-cml.org/dict/amber:gaffType" />
+	<queryNS prefix="cmlx"  uri="http://www.xml-cml.org/schema/cmlx" />
+
+	<keyValueList>
+		<keyValue key="topDir" value="src/test/resources/org/xmlcml/semantic" />
+		<keyValue key="keyvalDir" value="${topDir}/keyValue" />
+		<keyValue key="hrefDir" value="${topDir}/href" />
+		<keyValue key="doc1" value="${keyvalDir}/doc1.xml" />
+		<keyValue key="doc2" value="${keyvalDir}/doc2.xml" />
+	</keyValueList>
+	
+	<list >
+	  <array id="kk1" dataType="xsd:double" units="units:dimensionless" dictRef="ff:kkshell" count="10">1 2 3 4 5 6 7 8 9 10</array>
+	  <array id="kk2" dataType="xsd:double" units="units:dimensionless" dictRef="ff:kknci" count="10">12 6 24 12 24 8 48 6 36 24</array>
+	</list >
+
+    <mathml href="sumDoubles" setId="mathSum"/>	
+	<calculation xpath=".//cml:array[@id='kk2']" mathml="sumDoubles" 
+</computation>

bin/cml/forcefield/amber/AMBERFF.mml

+<!-- Content MathML of the AMBER FF -->
+
+<math display = 'block'>
+
+<!-- Content MathML for Bonded terms in AMBER -->
+
+  <apply>
+    <sum/>
+    <bvar>
+      <ci>x</ci>
+    </bvar>
+    <condition>
+      <apply>
+        <in/>
+        <ci>bond</ci>
+        <ci type='set'>bonds</ci>
+      </apply>
+    </condition>
+    <apply>
+      <times/>
+      <ci>k</ci>
+      <apply>
+        <power/>
+        <apply>
+          <minus/>
+          <apply>
+            <csymbol>bondlength</csymbol>
+            <ci>bond</ci>
+          </apply>
+          <ci>x0</ci>
+        </apply>
+        <cn>2</cn>
+      </apply>
+    </apply>
+  </apply>
+
+
+
+<!-- Content MathML for angle term in AMBER -->
+
+  <apply>
+    <sum/>
+    <bvar>
+      <ci>x</ci>
+    </bvar>
+    <condition>
+      <apply>
+        <in/>
+        <ci>angle</ci>
+        <ci type='set'>angles</ci>
+      </apply>
+    </condition>
+    <apply>
+      <times/>
+      <ci>k</ci>
+      <apply>
+        <power/>
+        <apply>
+          <minus/>
+          <apply>
+            <csymbol>anglesize</csymbol>
+            <ci>angle</ci>
+          </apply>
+          <ci>theta0</ci>
+        </apply>
+        <cn>2</cn>
+      </apply>
+    </apply>
+  </apply>
+
+
+
+<!-- Content MathML for Dihedral terms in AMBER -->
+
+
+  <apply>
+    <sum/>
+    <bvar>
+      <ci>x</ci>
+    </bvar>
+    <condition>
+      <apply>
+        <in/>
+        <ci>torsion</ci>
+        <ci type='set'>torsions</ci>
+      </apply>
+    </condition>
+
+    <apply>
+      <times/>
+      <cn>0.5</cn>
+      <apply>
+        <times/>
+        <ci>Vn</ci>
+        <apply>
+          <plus/>
+          <apply>
+            <cos/>
+            <apply>
+              <times/>
+              <ci>n</ci>
+              <apply>
+                <minus/>
+                <apply>
+                  <csymbol>torisonangle</csymbol>
+                  <ci>torsion</ci>
+                </apply>
+                <ci>phase</ci>
+              </apply>
+            </apply>
+          </apply>
+          <cn>1</cn>
+        </apply>
+      </apply>
+    </apply>
+  </apply>
+
+
+
+
+<!-- Content MathML for Vdw terms in AMBER -->
+
+
+  <apply>
+    <sum/>
+    <bvar>
+      <ci>x</ci>
+    </bvar>
+    <condition>
+      <apply>
+        <in/>
+        <ci>pair</ci>
+        <ci type='set'>pairs</ci>
+      </apply>
+    </condition>
+    <apply>
+      <times/>
+      <apply>
+        <minus/>
+        <apply>
+          <power/>
+          <apply>
+            <divide/>
+            <ci>r0ij</ci>
+            <apply>
+              <csymbol>distance</csymbol>
+              <ci>pair</ci>
+            </apply>
+          </apply>
+          <cn>12</cn>
+        </apply>
+        <apply>
+          <times/>
+          <cn>2</cn>
+          <apply>
+            <power/>
+            <apply>
+              <divide/>
+              <ci>r0ij</ci>
+              <apply>
+                <csymbol>distance</csymbol>
+                <ci>pair</ci>
+              </apply>
+            </apply>
+            <cn>6</cn>
+          </apply>
+        </apply>
+      </apply>
+      <ci>epsilonij</ci>
+    </apply>
+  </apply>
+
+
+
+
+<!-- Content MathML for 14Vdw terms in AMBER  -->
+
+
+
+  <apply>
+    <sum/>
+    <bvar>
+      <ci>x</ci>
+    </bvar>
+    <condition>
+      <apply>
+        <in/>
+        <ci>pair</ci>
+        <ci type='set'>14pairs</ci>
+      </apply>
+    </condition>
+    <apply>
+      <times/>
+      <ci>SCNB</ci>
+      <apply>
+        <times/>
+        <apply>
+          <minus/>
+          <apply>
+            <power/>
+            <apply>
+              <divide/>
+              <ci>r0ij</ci>
+              <apply>
+                <csymbol>distance</csymbol>
+                <ci>pair</ci>
+              </apply>
+            </apply>
+            <cn>12</cn>
+          </apply>
+          <apply>
+            <times/>
+            <cn>2</cn>
+            <apply>
+              <power/>
+              <apply>
+                <divide/>
+                <ci>r0ij</ci>
+                <apply>
+                  <csymbol>distance</csymbol>
+                  <ci>pair</ci>
+                </apply>
+              </apply>
+              <cn>6</cn>
+            </apply>
+          </apply>
+        </apply>
+        <ci>epsilonij</ci>
+      </apply>
+    </apply>
+  </apply>
+
+
+
+
+
+
+<!-- Content MathML for ee terms in AMBER -->
+
+
+  <apply>
+    <sum/>
+    <bvar>
+      <ci>x</ci>
+    </bvar>
+    <condition>
+      <apply>
+        <in/>
+        <ci>pair</ci>
+        <ci type='set'>pairs</ci>
+      </apply>
+    </condition>
+    <apply>
+      <divide/>
+      <apply>
+        <times/>
+        <ci>qi</ci>
+        <ci>qj</ci>
+      </apply>
+      <apply>
+        <times/>
+        <apply>
+          <times/>
+          <apply>
+            <times/>
+            <cn>4</cn>
+            <ci>epsilon</ci>
+          </apply>
+          <ci>pi</ci>
+        </apply>
+        <apply>
+          <csymbol>distance</csymbol>
+          <ci>pair</ci>
+        </apply>
+      </apply>
+    </apply>
+  </apply>
+
+
+
+
+
+
+<!-- Content MathML for 14ee terms in AMBER -->
+
+  <apply>
+    <sum/>
+    <bvar>
+      <ci>x</ci>
+    </bvar>
+    <condition>
+      <apply>
+        <in/>
+        <ci>pair</ci>
+        <ci type='set'>14pairs</ci>
+      </apply>
+    </condition>
+    <apply>
+      <times/>
+      <ci>SCEE</ci>
+      <apply>
+        <divide/>
+        <apply>
+          <times/>
+          <ci>qi</ci>
+          <ci>qj</ci>
+        </apply>
+        <apply>
+          <times/>
+          <apply>
+            <times/>
+            <apply>
+              <times/>
+              <cn>4</cn>
+              <ci>epsilon</ci>
+            </apply>
+            <ci>pi</ci>
+          </apply>
+          <apply>
+            <csymbol>distance</csymbol>
+            <ci>pair</ci>
+          </apply>
+        </apply>
+      </apply>
+    </apply>
+  </apply>
+</math>

bin/cml/forcefield/amber/gaffmini.xml

+<cml:list xmlns:cml='http://www.xml-cml.org/schema' title='amberforcefield gaff'
+	id='gaff' xmlns:gaff='http://www.xmlcml.org/dict/amber/gaff'
+	convention='convention:forcefield' xmlns:convention='http://www.xml-cml.org/convention/'>
+	<!-- limited selection of types -->
+	<cml:list title="harmonic bonds">
+		<cml:list title="c3-hc">
+			<cml:atomType dictRef='amber:gaffType'>c3</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>hc</cml:atomType>
+			<cml:scalar dataType="xsd:double" dictRef='ff:kijharmconst'
+				id='kij_c3_hc' units='units:kg-ang-2-mol-1'>337.3</cml:scalar>
+			<cml:scalar dataType="xsd:double" dictRef='ff:rijeqdist'
+				role="dist" id='rij_c3_hc' units='units:ang'>1.092</cml:scalar>
+		</cml:list>
+		<cml:list title="oh-ho">
+			<cml:atomType dictRef='amber:gaffType'>oh</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>ho</cml:atomType>
+			<cml:scalar dataType="xsd:double" dictRef='ff:kijharmconst'
+				id='kij_oh_ho' units='units:kg-ang-2-mol-1'>369.6</cml:scalar>
+			<cml:scalar dataType="xsd:double" dictRef='ff:rijeqdist'
+				role="dist" id='rij_oh_ho' units='units:ang'>0.974</cml:scalar>
+		</cml:list>
+		<cml:list title="c3-c">
+			<cml:atomType dictRef='amber:gaffType'>c3</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>c</cml:atomType>
+			<cml:scalar dataType="xsd:double" dictRef='ff:kijharmconst'
+				id='kij_c3_c' units='units:kg-ang-2-mol-1'>328.3</cml:scalar>
+			<cml:scalar dataType="xsd:double" dictRef='ff:rijeqdist'
+				role="dist" id='rij_c3_c' units='units:ang'>1.508</cml:scalar>
+		</cml:list>
+		<cml:list title="c-o">
+			<cml:atomType dictRef='amber:gaffType'>c</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>o</cml:atomType>
+			<cml:scalar dataType="xsd:double" dictRef='ff:kijharmconst'
+				id='kij_c_o' units='units:kg-ang-2-mol-1'>648.0</cml:scalar>
+			<cml:scalar dataType="xsd:double" dictRef='ff:rijeqdist'
+				role="dist" id='rij_c_o' units='units:ang'>1.214</cml:scalar>
+		</cml:list>
+		<cml:list title="c-oh">
+			<cml:atomType dictRef='amber:gaffType'>c</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>oh</cml:atomType>
+			<cml:scalar dataType="xsd:double" dictRef='ff:kijharmconst'
+				id='kij_c_oh' units='units:kg-ang-2-mol-1'>466.4</cml:scalar>
+			<cml:scalar dataType="xsd:double" dictRef='ff:rijeqdist'
+				role="dist" id='rij_c_oh' units='units:ang'>1.306</cml:scalar>
+		</cml:list>
+	</cml:list>
+
+	<cml:list title="angles">
+		<cml:list>
+			<cml:atomType dictRef='amber:gaffType'>c</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>c3</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>hc</cml:atomType>
+			<cml:scalar dictRef='ff:aijkharmconst' units='units:kcal-mol-1-rad-2'>47.200</cml:scalar>
+			<cml:scalar dictRef='ff:aijkangeq' role='ang' id='aijk_c_c3_hc' units='units:degrees'>109.680</cml:scalar>
+		</cml:list>
+		<cml:list>
+			<cml:atomType dictRef='amber:gaffType'>c</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>oh</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>ho</cml:atomType>
+			<cml:scalar dictRef='ff:aijkharmconst' units='units:kcal-mol-1-rad-2'>51.190</cml:scalar>
+			<cml:scalar dictRef='ff:aijkangeq' role='ang' id='aijk_c_oh_ho'
+				units='units:degrees'>107.370</cml:scalar>
+		</cml:list>
+		<cml:list>
+			<cml:atomType dictRef='amber:gaffType'>hc</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>c3</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>hc</cml:atomType>
+			<cml:scalar dictRef='ff:aijkharmconst' units='units:kcal-mol-1-rad-2'>39.430</cml:scalar>
+			<cml:scalar dictRef='ff:aijkangeq' role='ang' id='aijk_hc_c3_hc'
+				units='units:degrees'>108.350</cml:scalar>
+		</cml:list>
+		<cml:list>
+			<cml:atomType dictRef='amber:gaffType'>c3</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>c</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>o</cml:atomType>
+			<cml:scalar dictRef='ff:aijkharmconst' units='units:kcal-mol-1-rad-2'>68.030</cml:scalar>
+			<cml:scalar dictRef='ff:aijkangeq' role='ang' id='aijk_c3_c_o'
+				units='units:degrees'>123.110</cml:scalar>
+		</cml:list>
+		<cml:list>
+			<cml:atomType dictRef='amber:gaffType'>c3</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>c</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>oh</cml:atomType>
+			<cml:scalar dictRef='ff:aijkharmconst' units='units:kcal-mol-1-rad-2'>69.840</cml:scalar>
+			<cml:scalar dictRef='ff:aijkangeq' role='ang' id='aijk_c3_c_oh'
+				units='units:degrees'>112.200</cml:scalar>
+		</cml:list>
+		<cml:list>
+			<cml:atomType dictRef='amber:gaffType'>o</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>c</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>oh</cml:atomType>
+			<cml:scalar dictRef='ff:aijkharmconst' units='units:kcal-mol-1-rad-2'>77.380</cml:scalar>
+			<cml:scalar dictRef='ff:aijkangeq' role='ang' id='aijk_o_c_oh'
+				units='units:degrees'>122.880</cml:scalar>
+		</cml:list>
+	</cml:list>
+
+	<cml:list title="torsions">
+		<cml:list>
+			<cml:atomType dictRef='amber:gaffType'>c3</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>c</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>oh</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>ho</cml:atomType>
+			<cml:list>
+				<cml:scalar dictRef='ff:idivf' units='units:kcal-mol-1-rad-2'>2</cml:scalar>
+				<cml:scalar dictRef='ff:pk' units='units:kcal-mol-1-rad-2'>4.600</cml:scalar>
+				<cml:scalar dictRef='ff:phase' units='units:kcal-mol-1-rad-2'>180.000</cml:scalar>
+				<cml:scalar dictRef='ff:pn' units='units:kcal-mol-1-rad-2'>2.000</cml:scalar>
+			</cml:list>
+		</cml:list>
+
+
+		<cml:list>
+			<cml:atomType dictRef='amber:gaffType'>hc</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>c3</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>c</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>o</cml:atomType>
+			<cml:list>
+				<cml:scalar dictRef='ff:idivf' units='units:kcal-mol-1-rad-2'>1</cml:scalar>
+				<cml:scalar dictRef='ff:pk' units='units:kcal-mol-1-rad-2'>0.80</cml:scalar>
+				<cml:scalar dictRef='ff:phase' units='units:kcal-mol-1-rad-2'>0.0</cml:scalar>
+				<cml:scalar dictRef='ff:pn' units='units:kcal-mol-1-rad-2'>1.</cml:scalar>
+			</cml:list>
+			<cml:list>
+				<cml:scalar dictRef='ff:idivf' units='units:kcal-mol-1-rad-2'>1</cml:scalar>
+				<cml:scalar dictRef='ff:pk' units='units:kcal-mol-1-rad-2'>0.08</cml:scalar>
+				<cml:scalar dictRef='ff:phase' units='units:kcal-mol-1-rad-2'>180.0</cml:scalar>
+				<cml:scalar dictRef='ff:pn' units='units:kcal-mol-1-rad-2'>3.</cml:scalar>
+			</cml:list>
+		</cml:list>
+
+
+		<cml:list>
+			<cml:atomType dictRef='amber:gaffType'>ho</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>oh</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>c</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>o</cml:atomType>
+			<cml:list>
+				<cml:scalar dictRef='ff:idivf' units='units:kcal-mol-1-rad-2'>1</cml:scalar>
+				<cml:scalar dictRef='ff:pk' units='units:kcal-mol-1-rad-2'>2.30</cml:scalar>
+				<cml:scalar dictRef='ff:phase' units='units:kcal-mol-1-rad-2'>180.0</cml:scalar>
+				<cml:scalar dictRef='ff:pn' units='units:kcal-mol-1-rad-2'>-2.</cml:scalar>
+			</cml:list>
+			<cml:list>
+				<cml:scalar dictRef='ff:idivf' units='units:kcal-mol-1-rad-2'>1</cml:scalar>
+				<cml:scalar dictRef='ff:pk' units='units:kcal-mol-1-rad-2'>1.90</cml:scalar>
+				<cml:scalar dictRef='ff:phase' units='units:kcal-mol-1-rad-2'>0.0</cml:scalar>
+				<cml:scalar dictRef='ff:pn' units='units:kcal-mol-1-rad-2'>1.</cml:scalar>
+			</cml:list>
+		</cml:list>
+
+		<cml:list>
+			<cml:atomType dictRef='amber:gaffType'>c3</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>o</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>c</cml:atomType>
+			<cml:atomType dictRef='amber:gaffType'>oh</cml:atomType>
+			<cml:list>
+				<cml:scalar dictRef='ff:idivf' units='units:kcal-mol-1-rad-2'>1</cml:scalar>
+				<cml:scalar dictRef='ff:pk' units='units:kcal-mol-1-rad-2'>1.1</cml:scalar>
+				<cml:scalar dictRef='ff:phase' units='units:kcal-mol-1-rad-2'>180.</cml:scalar>
+				<cml:scalar dictRef='ff:pn' units='units:kcal-mol-1-rad-2'>2.</cml:scalar>
+			</cml:list>
+		</cml:list>
+	</cml:list>
+	<!-- where: IDIVF The factor by which the torsional barrier is divided. 
+		Consult Weiner, et al., JACS 106:765 (1984) p. 769 for details. Basically, 
+		the actual torsional potential is (PK/IDIVF) * (1 + cos(PN*phi - PHASE)) 
+		PK The barrier height divided by a factor of 2. PHASE The phase shift angle 
+		in the torsional function. The unit is degrees. PN The periodicity of the 
+		torsional barrier. NOTE: If PN .lt. 0.0 then the torsional potential is assumed 
+		to have more than one term, and the values of the rest of the terms are read 
+		from the next cards until a positive PN is encountered. The negative value 
+		of pn is used only for identifying the existence of the next term and only 
+		the absolute value of PN is kept. Note for more information about dihedrals, 
+		please see page 254 of http://ambermd.org/doc8/amber8.pdf -->
+
+	<!-- VDW === R EDEP hc 1.4870 0.0157 c3 1.9080 0.1094 c 1.9080 0.0860 o 
+		1.6612 0.2100 oh 1.7210 0.2104 ho 0.0000 0.0000 -->
+	<!-- van der Waals Parameters in Amber There are two common formulations 
+		of the van der Waals equation: EVDW=4[ r 12 − r 6] and EVDW=4[1 4 
+		r0 r 12 −1 2 r0 r 6] Both describe the nonbonded interaction between 
+		two particles at distance r as the sum of an attractive r6 and a repulsive 
+		r12 term. Two parameters are needed, the well depth  and a characteristic 
+		distance r0 or  (the two formulations are identical for r0=62 ). In the 
+		Amber forcefield, the later format is used, because of the easy physical 
+		interpretation of r0 as the energetically most favorable distance of two 
+		atoms. In the parameter files, every atom type is given a radius and well 
+		depth parameter, e.g. OH 1.7210 0.2104 CT 1.9080 0.1094 where the first number 
+		is the atomic radius in Angstrom and the second the well depth in kcal/mol. 
+		These values are then (at the time a prmtop file is written) combined to 
+		provide parameters for all pairs of atom types in the system: rij=rir j 
+		and ij=i j These atom pair parameters are then used to calculate the 
+		ACOEFF and BCOEFF values in the prmtop file: ACOEFF=r0 12 ; BCOEFF=2 r0 
+		6 E.g. for OH-CT nonbonded contacts, this gives: ACOEFF = 7.91544157E+05 
+		BCOEFF = 6.93079947E+02 The A and B coefficients are then used in sander's 
+		internal version of the VDW equation: EVDW= ACOEFF r/ ˚A12 − BCOEFF r 
+		/ ˚A6 Thomas Steinbrecher, TSRI 2008 (steinbrt@scripps.edu) -->
+</cml:list> 
+

bin/cml/forcefield/amber/parm94.dat

+PARM94 for DNA, RNA and proteins with TIP3P Water. USE SCEE=1.2 in energy progs
+2	BR 79.90                !            bromine
+3	C  12.01                             sp2 C carbonyl group
+4	CA 12.01                             sp2 C pure aromatic (benzene)
+5	CB 12.01                             sp2 aromatic C, 5&6 membered ring junction
+6	CC 12.01                             sp2 aromatic C, 5 memb. ring HIS
+7	CK 12.01                             sp2 C 5 memb.ring in purines
+8	CM 12.01                             sp2 C  pyrimidines in pos. 5 & 6
+9	CN 12.01                             sp2 C aromatic 5&6 memb.ring junct.(TRP)
+10	CQ 12.01                             sp2 C in 5 mem.ring of purines between 2 N
+11	CR 12.01                             sp2 arom as CQ but in HIS
+12	CT 12.01                             sp3 aliphatic C
+13	CV 12.01                             sp2 arom. 5 memb.ring w/1 N and 1 H (HIS)
+14	CW 12.01                             sp2 arom. 5 memb.ring w/1 N-H and 1 H (HIS)
+15	C* 12.01                             sp2 arom. 5 memb.ring w/1 subst. (TRP)
+16	C0 40.08                             calcium
+17	F  19.00                             fluorine
+18	H  1.008                             H bonded to nitrogen atoms
+19	HC 1.008                             H aliph. bond. to C without electrwd.group
+20	H1 1.008                             H aliph. bond. to C with 1 electrwd. group
+21	H2 1.008                             H aliph. bond. to C with 2 electrwd.groups
+22	H3 1.008                             H aliph. bond. to C with 3 eletrwd.groups
+23	HA 1.008                             H arom. bond. to C without elctrwd. groups
+24	H4 1.008                             H arom. bond. to C with 1 electrwd. group
+25	H5 1.008                             H arom. bond. to C with 2 electrwd. groups
+26	HO 1.008                             hydroxyl group
+27	HS 1.008                             hydrogen bonded to sulphur
+28	HW 1.008                             H in TIP3P water
+29	HP 1.008                             H bonded to C next to positively charged gr
+30	I  126.9                             iodine
+31	IM 35.45                             assumed to be Cl-
+32	IP 22.99                             assumed to be Na+
+33	IB 131.0                             'big ion w/ waters' for vacuum (Na+, 6H2O)
+34	MG 24.305                            magnesium
+35	N  14.01                             sp2 nitrogen in amide groups
+36	NA 14.01                             sp2 N in 5 memb.ring w/H atom (HIS)
+37	NB 14.01                             sp2 N in 5 memb.ring w/LP (HIS,ADE,GUA)
+38	NC 14.01                             sp2 N in 6 memb.ring w/LP (ADE,GUA)
+39	N2 14.01                             sp2 N in amino groups
+40	N3 14.01                             sp3 N for charged amino groups (Lys, etc)
+41	N* 14.01                             sp2 N
+42	O  16.00                             carbonyl group oxygen
+43	OW 16.00                             oxygen in TIP3P water
+44	OH 16.00                             oxygen in hydroxyl group
+45	OS 16.00                             ether and ester oxygen
+46	O2 16.00                             carboxyl and phosphate group oxygen
+47	P  30.97                             phosphate
+48	S  32.06                             sulphur in disulfide linkage
+49	SH 32.06                             sulphur in cystine
+50	CU 63.55                             copper
+51	FE 55.00                             iron
+52	Li  6.94                             lithium
+53	K  39.10                             potassium
+54	Rb 85.47                             rubidium
+55	Cs 132.91                            cesium
+56	
+57	C   H   HO  N   NA  NB  NC  N2  NT  N2  N3  N*  O   OH  OS  P   O2
+58	OW-HW  553.0    0.9572    ! TIP3P water
+59	HW-HW  553.0    1.5136      TIP3P water
+60	C -CA  469.0    1.409       JCC,7,(1986),230; TYR
+61	C -CB  447.0    1.419       JCC,7,(1986),230; GUA
+62	C -CM  410.0    1.444       JCC,7,(1986),230; THY,URA
+63	C -CT  317.0    1.522       JCC,7,(1986),230; AA
+64	C -N*  424.0    1.383       JCC,7,(1986),230; CYT,URA
+65	C -NA  418.0    1.388       JCC,7,(1986),230; GUA.URA
+66	C -NC  457.0    1.358       JCC,7,(1986),230; CYT
+67	C -O   570.0    1.229       JCC,7,(1986),230; AA,CYT,GUA,THY,URA
+68	C -O2  656.0    1.250       JCC,7,(1986),230; GLU,ASP
+69	C -OH  450.0    1.364       JCC,7,(1986),230; TYR
+70	CA-CA  469.0    1.400       JCC,7,(1986),230; BENZENE,PHE,TRP,TYR
+71	CA-CB  469.0    1.404       JCC,7,(1986),230; ADE,TRP
+72	CA-CM  427.0    1.433       JCC,7,(1986),230; CYT
+73	CA-CT  317.0    1.510       JCC,7,(1986),230; PHE,TYR
+74	CA-HA  367.0    1.080       changed from 340. bsd on C6H6 nmodes; PHE,TRP,TYR
+75	CA-H4  367.0    1.080       changed from 340. bsd on C6H6 nmodes; no assigned
+76	CA-N2  481.0    1.340       JCC,7,(1986),230; ARG,CYT,GUA
+77	CA-NA  427.0    1.381       JCC,7,(1986),230; GUA
+78	CA-NC  483.0    1.339       JCC,7,(1986),230; ADE,CYT,GUA
+79	CB-CB  520.0    1.370       JCC,7,(1986),230; ADE,GUA
+80	CB-N*  436.0    1.374       JCC,7,(1986),230; ADE,GUA
+81	CB-NB  414.0    1.391       JCC,7,(1986),230; ADE,GUA
+82	CB-NC  461.0    1.354       JCC,7,(1986),230; ADE,GUA
+83	CK-H5  367.0    1.080       changed from 340. bsd on C6H6 nmodes; ADE,GUA
+84	CK-N*  440.0    1.371       JCC,7,(1986),230; ADE,GUA
+85	CK-NB  529.0    1.304       JCC,7,(1986),230; ADE,GUA
+86	CM-CM  549.0    1.350       JCC,7,(1986),230; CYT,THY,URA
+87	CM-CT  317.0    1.510       JCC,7,(1986),230; THY
+88	CM-HA  367.0    1.080       changed from 340. bsd on C6H6 nmodes; CYT,URA
+89	CM-H4  367.0    1.080       changed from 340. bsd on C6H6 nmodes; CYT,URA
+90	CM-H5  367.0    1.080       changed from 340. bsd on C6H6 nmodes; not assigned
+91	CM-N*  448.0    1.365       JCC,7,(1986),230; CYT,THY,URA
+92	CQ-H5  367.0    1.080       changed from 340. bsd on C6H6 nmodes; ADE
+93	CQ-NC  502.0    1.324       JCC,7,(1986),230; ADE
+94	CT-CT  310.0    1.526       JCC,7,(1986),230; AA, SUGARS
+95	CT-HC  340.0    1.090       changed from 331 bsd on NMA nmodes; AA, SUGARS
+96	CT-H1  340.0    1.090       changed from 331 bsd on NMA nmodes; AA, RIBOSE
+97	CT-H2  340.0    1.090       changed from 331 bsd on NMA nmodes; SUGARS
+98	CT-H3  340.0    1.090       changed from 331 bsd on NMA nmodes; not assigned
+99	CT-HP  340.0    1.090        changed from 331; AA-lysine, methyl ammonium cation
+100	CT-N*  337.0    1.475       JCC,7,(1986),230; ADE,CYT,GUA,THY,URA
+101	CT-N2  337.0    1.463       JCC,7,(1986),230; ARG
+102	CT-OH  320.0    1.410       JCC,7,(1986),230; SUGARS
+103	CT-OS  320.0    1.410       JCC,7,(1986),230; NUCLEIC ACIDS
+104	H -N2  434.0    1.010       JCC,7,(1986),230; ADE,CYT,GUA,ARG
+105	H -N*  434.0    1.010       for plain unmethylated bases ADE,CYT,GUA,ARG
+106	H -NA  434.0    1.010       JCC,7,(1986),230; GUA,URA,HIS
+107	HO-OH  553.0    0.960       JCC,7,(1986),230; SUGARS,SER,TYR
+108	HO-OS  553.0    0.960       JCC,7,(1986),230; NUCLEOTIDE ENDS
+109	O2-P   525.0    1.480       JCC,7,(1986),230; NA PHOSPHATES
+110	OH-P   230.0    1.610       JCC,7,(1986),230; NA PHOSPHATES
+111	OS-P   230.0    1.610       JCC,7,(1986),230; NA PHOSPHATES
+112	C*-HC  367.0    1.080       changed from 340. bsd on C6H6 nmodes, not needed AA
+113	C -N   490.0    1.335       JCC,7,(1986),230; AA
+114	C*-CB  388.0    1.459       JCC,7,(1986),230; TRP
+115	C*-CT  317.0    1.495       JCC,7,(1986),230; TRP
+116	C*-CW  546.0    1.352       JCC,7,(1986),230; TRP
+117	CA-CN  469.0    1.400       JCC,7,(1986),230; TRP
+118	CB-CN  447.0    1.419       JCC,7,(1986),230; TRP
+119	CC-CT  317.0    1.504       JCC,7,(1986),230; HIS
+120	CC-CV  512.0    1.375       JCC,7,(1986),230; HIS(delta)
+121	CC-CW  518.0    1.371       JCC,7,(1986),230; HIS(epsilon)
+122	CC-NA  422.0    1.385       JCC,7,(1986),230; HIS
+123	CC-NB  410.0    1.394       JCC,7,(1986),230; HIS
+124	CN-NA  428.0    1.380       JCC,7,(1986),230; TRP
+125	CR-H5  367.0    1.080       changed from 340. bsd on C6H6 nmodes;HIS
+126	CR-NA  477.0    1.343       JCC,7,(1986),230; HIS
+127	CR-NB  488.0    1.335       JCC,7,(1986),230; HIS
+128	CT-N   337.0    1.449       JCC,7,(1986),230; AA
+129	CT-N3  367.0    1.471       JCC,7,(1986),230; LYS
+130	CT-S   227.0    1.810       changed from 222.0 based on dimethylS nmodes
+131	CT-SH  237.0    1.810       changed from 222.0 based on methanethiol nmodes
+132	CV-H4  367.0    1.080       changed from 340. bsd on C6H6 nmodes; HIS
+133	CV-NB  410.0    1.394       JCC,7,(1986),230; HIS
+134	CW-H4  367.0    1.080       changed from 340. bsd on C6H6 nmodes;HIS(epsilon,+)
+135	CW-NA  427.0    1.381       JCC,7,(1986),230; HIS,TRP
+136	H -N   434.0    1.010       JCC,7,(1986),230; AA
+137	H -N3  434.0    1.010       JCC,7,(1986),230; LYS   
+138	HS-SH  274.0    1.336       JCC,7,(1986),230; CYS
+139	S -S   166.0    2.038       JCC,7,(1986),230; CYX   (SCHERAGA)
+140	CT-F   367.0    1.380       JCC,13,(1992),963;CF4; R0=1.332 FOR CHF3
+141	
+142	HW-OW-HW    100.      104.52    TIP3P water
+143	HW-HW-OW      0.      127.74    (found in crystallographic water with 3 bonds)
+144	CB-C -NA    70.0      111.30    NA
+145	CB-C -O     80.0      128.80
+146	CM-C -NA    70.0      114.10
+147	CM-C -O     80.0      125.30
+148	CT-C -O     80.0      120.40
+149	CT-C -O2    70.0      117.00
+150	CT-C -OH    70.0      117.00
+151	N*-C -NA    70.0      115.40
+152	N*-C -NC    70.0      118.60
+153	N*-C -O     80.0      120.90
+154	NA-C -O     80.0      120.60
+155	NC-C -O     80.0      122.50
+156	CT-C -N     70.0      116.60    AA general
+157	N -C -O     80.0      122.90    AA general
+158	O -C -O     80.0      126.00    AA COO- terminal residues
+159	O2-C -O2    80.0      126.00    AA GLU            (SCH JPC 79,2379)
+160	O -C -OH    80.0      126.00
+161	CA-C -CA    63.0      120.00    changed from 85.0  bsd on C6H6 nmodes; AA tyr
+162	CA-C -OH    70.0      120.00    AA tyr
+163	C -CA-CA    63.0      120.00    changed from 85.0  bsd on C6H6 nmodes
+164	CA-CA-CA    63.0      120.00    changed from 85.0  bsd on C6H6 nmodes
+165	CA-CA-CB    63.0      120.00    changed from 85.0  bsd on C6H6 nmodes
+166	CA-CA-CT    70.0      120.00
+167	CA-CA-HA    35.0      120.00
+168	CA-CA-H4    35.0      120.00
+169	CB-CA-HA    35.0      120.00
+170	CB-CA-H4    35.0      120.00
+171	CB-CA-N2    70.0      123.50
+172	CB-CA-NC    70.0      117.30
+173	CM-CA-N2    70.0      120.10
+174	CM-CA-NC    70.0      121.50
+175	N2-CA-NA    70.0      116.00
+176	N2-CA-NC    70.0      119.30
+177	NA-CA-NC    70.0      123.30
+178	C -CA-HA    35.0      120.00    AA tyr
+179	N2-CA-N2    70.0      120.00    AA arg
+180	CN-CA-HA    35.0      120.00    AA trp
+181	CA-CA-CN    63.0      120.00    changed from 85.0  bsd on C6H6 nmodes; AA trp
+182	C -CB-CB    63.0      119.20    changed from 85.0  bsd on C6H6 nmodes; NA gua
+183	C -CB-NB    70.0      130.00
+184	CA-CB-CB    63.0      117.30    changed from 85.0  bsd on C6H6 nmodes; NA ade
+185	CA-CB-NB    70.0      132.40   
+186	CB-CB-N*    70.0      106.20
+187	CB-CB-NB    70.0      110.40
+188	CB-CB-NC    70.0      127.70
+189	N*-CB-NC    70.0      126.20
+190	C*-CB-CA    63.0      134.90    changed from 85.0  bsd on C6H6 nmodes; AA trp
+191	C*-CB-CN    63.0      108.80    changed from 85.0  bsd on C6H6 nmodes; AA trp
+192	CA-CB-CN    63.0      116.20    changed from 85.0  bsd on C6H6 nmodes; AA trp
+193	H5-CK-N*    35.0      123.05
+194	H5-CK-NB    35.0      123.05
+195	N*-CK-NB    70.0      113.90
+196	C -CM-CM    63.0      120.70    changed from 85.0  bsd on C6H6 nmodes; NA thy
+197	C -CM-CT    70.0      119.70
+198	C -CM-HA    35.0      119.70
+199	C -CM-H4    35.0      119.70
+200	CA-CM-CM    63.0      117.00    changed from 85.0  bsd on C6H6 nmodes; NA cyt
+201	CA-CM-HA    35.0      123.30
+202	CA-CM-H4    35.0      123.30
+203	CM-CM-CT    70.0      119.70
+204	CM-CM-HA    35.0      119.70
+205	CM-CM-H4    35.0      119.70
+206	CM-CM-N*    70.0      121.20
+207	H4-CM-N*    35.0      119.10
+208	H5-CQ-NC    35.0      115.45
+209	NC-CQ-NC    70.0      129.10
+210	CM-CT-HC    50.0      109.50    changed based on NMA nmodes
+211	CT-CT-CT    40.0      109.50
+212	CT-CT-HC    50.0      109.50    changed based on NMA nmodes
+213	CT-CT-H1    50.0      109.50    changed based on NMA nmodes
+214	CT-CT-H2    50.0      109.50    changed based on NMA nmodes
+215	CT-CT-HP    50.0      109.50    changed based on NMA nmodes
+216	CT-CT-N*    50.0      109.50
+217	CT-CT-OH    50.0      109.50
+218	CT-CT-OS    50.0      109.50
+219	HC-CT-HC    35.0      109.50
+220	H1-CT-H1    35.0      109.50
+221	HP-CT-HP    35.0      109.50    AA lys, ch3nh4+
+222	H2-CT-N*    50.0      109.50    changed based on NMA nmodes
+223	H1-CT-N*    50.0      109.50    changed based on NMA nmodes
+224	H1-CT-OH    50.0      109.50    changed based on NMA nmodes
+225	H1-CT-OS    50.0      109.50    changed based on NMA nmodes
+226	H2-CT-OS    50.0      109.50    changed based on NMA nmodes
+227	N*-CT-OS    50.0      109.50
+228	H1-CT-N     50.0      109.50    AA general  changed based on NMA nmodes
+229	C -CT-H1    50.0      109.50    AA general  changed based on NMA nmodes
+230	C -CT-HP    50.0      109.50    AA zwitterion  changed based on NMA nmodes
+231	H1-CT-S     50.0      109.50    AA cys     changed based on NMA nmodes
+232	H1-CT-SH    50.0      109.50    AA cyx     changed based on NMA nmodes
+233	CT-CT-S     50.0      114.70    AA cyx            (SCHERAGA  JPC 79,1428)
+234	CT-CT-SH    50.0      108.60    AA cys
+235	H2-CT-H2    35.0      109.50    AA lys
+236	H1-CT-N2    50.0      109.50    AA arg     changed based on NMA nmodes
+237	HP-CT-N3    50.0      109.50    AA lys, ch3nh3+, changed based on NMA nmodes
+238	CA-CT-CT    63.0      114.00    AA phe tyr          (SCH JPC  79,2379)
+239	C -CT-HC    50.0      109.50    AA gln      changed based on NMA nmodes
+240	C -CT-N     63.0      110.10    AA general
+241	CT-CT-N2    80.0      111.20    AA arg             (JCP 76, 1439)
+242	CT-CT-N     80.0      109.70    AA ala, general    (JACS 94, 2657)
+243	C -CT-CT    63.0      111.10    AA general
+244	CA-CT-HC    50.0      109.50    AA tyr     changed based on NMA nmodes
+245	CT-CT-N3    80.0      111.20    AA lys             (JCP 76, 1439)
+246	CC-CT-CT    63.0      113.10    AA his
+247	CC-CT-HC    50.0      109.50    AA his     changed based on NMA nmodes
+248	C -CT-N3    80.0      111.20    AA amino terminal residues
+249	C*-CT-CT    63.0      115.60    AA trp
+250	C*-CT-HC    50.0      109.50    AA trp    changed based on NMA nmodes
+251	CT-CC-NA    70.0      120.00    AA his
+252	CT-CC-CV    70.0      120.00    AA his
+253	CT-CC-NB    70.0      120.00    AA his
+254	CV-CC-NA    70.0      120.00    AA his
+255	CW-CC-NA    70.0      120.00    AA his
+256	CW-CC-NB    70.0      120.00    AA his
+257	CT-CC-CW    70.0      120.00    AA his
+258	H5-CR-NA    35.0      120.00    AA his
+259	H5-CR-NB    35.0      120.00    AA his
+260	NA-CR-NA    70.0      120.00    AA his
+261	NA-CR-NB    70.0      120.00    AA his
+262	CC-CV-H4    35.0      120.00    AA his
+263	CC-CV-NB    70.0      120.00    AA his
+264	H4-CV-NB    35.0      120.00    AA his
+265	CC-CW-H4    35.0      120.00    AA his
+266	CC-CW-NA    70.0      120.00    AA his
+267	H4-CW-NA    35.0      120.00    AA his
+268	C*-CW-H4    35.0      120.00    AA trp
+269	C*-CW-NA    70.0      108.70    AA trp
+270	CT-C*-CW    70.0      125.00    AA trp
+271	CB-C*-CT    70.0      128.60    AA trp
+272	CB-C*-CW    63.0      106.40    changed from 85.0  bsd on C6H6 nmodes; AA trp
+273	CA-CN-NA    70.0      132.80    AA trp
+274	CB-CN-NA    70.0      104.40    AA trp
+275	CA-CN-CB    63.0      122.70    changed from 85.0  bsd on C6H6 nmodes; AA trp
+276	C -N -CT    50.0      121.90    AA general
+277	C -N -H     30.0      120.00    AA general, gln, asn,changed based on NMA nmodes
+278	CT-N -H     30.0      118.04    AA general,     changed based on NMA nmodes
+279	CT-N -CT    50.0      118.00    AA pro             (DETAR JACS 99,1232)
+280	H -N -H     35.0      120.00    ade,cyt,gua,gln,asn     **
+281	C -N*-CM    70.0      121.60
+282	C -N*-CT    70.0      117.60
+283	C -N*-H     30.0      119.20    changed based on NMA nmodes
+284	CB-N*-CK    70.0      105.40
+285	CB-N*-CT    70.0      125.80
+286	CB-N*-H     30.0      125.80    for unmethylated n.a. bases,chngd bsd NMA nmodes
+287	CK-N*-CT    70.0      128.80
+288	CK-N*-H     30.0      128.80    for unmethylated n.a. bases,chngd bsd NMA nmodes
+289	CM-N*-CT    70.0      121.20
+290	CM-N*-H     30.0      121.20    for unmethylated n.a. bases,chngd bsd NMA nmodes
+291	CA-N2-H     35.0      120.00   
+292	H -N2-H     35.0      120.00   
+293	CT-N2-H     35.0      118.40    AA arg
+294	CA-N2-CT    50.0      123.20    AA arg
+295	CT-N3-H     50.0      109.50    AA lys,     changed based on NMA nmodes
+296	CT-N3-CT    50.0      109.50    AA pro/nt
+297	H -N3-H     35.0      109.50    AA lys, AA(end)
+298	C -NA-C     70.0      126.40
+299	C -NA-CA    70.0      125.20
+300	C -NA-H     30.0      116.80    changed based on NMA nmodes
+301	CA-NA-H     30.0      118.00    changed based on NMA nmodes
+302	CC-NA-CR    70.0      120.00    AA his
+303	CC-NA-H     30.0      120.00    AA his,    changed based on NMA nmodes
+304	CR-NA-CW    70.0      120.00    AA his
+305	CR-NA-H     30.0      120.00    AA his,    changed based on NMA nmodes
+306	CW-NA-H     30.0      120.00    AA his,    changed based on NMA nmodes
+307	CN-NA-CW    70.0      111.60    AA trp
+308	CN-NA-H     30.0      123.10    AA trp,    changed based on NMA nmodes
+309	CB-NB-CK    70.0      103.80
+310	CC-NB-CR    70.0      117.00    AA his
+311	CR-NB-CV    70.0      117.00    AA his
+312	C -NC-CA    70.0      120.50
+313	CA-NC-CB    70.0      112.20
+314	CA-NC-CQ    70.0      118.60
+315	CB-NC-CQ    70.0      111.00
+316	C -OH-HO    35.0      113.00
+317	CT-OH-HO    55.0      108.50
+318	HO-OH-P     45.0      108.50
+319	CT-OS-CT    60.0      109.50
+320	CT-OS-P    100.0      120.50
+321	P -OS-P    100.0      120.50
+322	O2-P -OH    45.0      108.23
+323	O2-P -O2   140.0      119.90
+324	O2-P -OS   100.0      108.23
+325	OH-P -OS    45.0      102.60
+326	OS-P -OS    45.0      102.60
+327	CT-S -CT    62.0       98.90    AA met
+328	CT-S -S     68.0      103.70    AA cyx             (SCHERAGA  JPC 79,1428)
+329	CT-SH-HS    43.0       96.00    changed from 44.0 based on methanethiol nmodes
+330	HS-SH-HS    35.0       92.07    AA cys
+331	F -CT-F     77.0      109.10    JCC,13,(1992),963;
+332	F -CT-H1    35.0      109.50    JCC,13,(1992),963;
+333	
+334	X -C -CA-X    4   14.50        180.0             2.         intrpol.bsd.on C6H6
+335	X -C -CB-X    4   12.00        180.0             2.         intrpol.bsd.on C6H6
+336	X -C -CM-X    4    8.70        180.0             2.         intrpol.bsd.on C6H6
+337	X -C -N*-X    4    5.80        180.0             2.         JCC,7,(1986),230
+338	X -C -NA-X    4    5.40        180.0             2.         JCC,7,(1986),230
+339	X -C -NC-X    2    8.00        180.0             2.         JCC,7,(1986),230
+340	X -C -OH-X    2    1.80        180.0             2.         JCC,7,(1986),230
+341	X -C -CT-X    4    0.00          0.0             2.         JCC,7,(1986),230
+342	X -CA-CA-X    4   14.50        180.0             2.         intrpol.bsd.on C6H6
+343	X -CA-CB-X    4   14.00        180.0             2.         intrpol.bsd.on C6H6
+344	X -CA-CM-X    4   10.20        180.0             2.         intrpol.bsd.on C6H6
+345	X -CA-CT-X    6    0.00          0.0             2.         JCC,7,(1986),230
+346	X -CA-N2-X    4    9.60        180.0             2.         reinterpolated 93'
+347	X -CA-NA-X    4    6.00        180.0             2.         JCC,7,(1986),230
+348	X -CA-NC-X    2    9.60        180.0             2.         JCC,7,(1986),230
+349	X -CB-CB-X    4   21.80        180.0             2.         intrpol.bsd.on C6H6
+350	X -CB-N*-X    4    6.60        180.0             2.         JCC,7,(1986),230
+351	X -CB-NB-X    2    5.10        180.0             2.         JCC,7,(1986),230
+352	X -CB-NC-X    2    8.30        180.0             2.         JCC,7,(1986),230
+353	X -CK-N*-X    4    6.80        180.0             2.         JCC,7,(1986),230
+354	X -CK-NB-X    2   20.00        180.0             2.         JCC,7,(1986),230
+355	X -CM-CM-X    4   26.60        180.0             2.         intrpol.bsd.on C6H6
+356	X -CM-CT-X    6    0.00          0.0             3.         JCC,7,(1986),230
+357	X -CM-N*-X    4    7.40        180.0             2.         JCC,7,(1986),230
+358	X -CQ-NC-X    2   13.60        180.0             2.         JCC,7,(1986),230
+359	X -CT-CT-X    9    1.40          0.0             3.         JCC,7,(1986),230
+360	X -CT-N -X    6    0.00          0.0             2.         JCC,7,(1986),230
+361	X -CT-N*-X    6    0.00          0.0             2.         JCC,7,(1986),230
+362	X -CT-N2-X    6    0.00          0.0             3.         JCC,7,(1986),230
+363	X -CT-OH-X    3    0.50          0.0             3.         JCC,7,(1986),230
+364	X -CT-OS-X    3    1.15          0.0             3.         JCC,7,(1986),230
+365	X -OH-P -X    3    0.75          0.0             3.         JCC,7,(1986),230
+366	X -OS-P -X    3    0.75          0.0             3.         JCC,7,(1986),230
+367	X -C -N -X    4   10.00        180.0             2.         AA|check Wendy?&NMA
+368	X -CT-N3-X    9    1.40          0.0             3.         JCC,7,(1986),230
+369	X -CT-S -X    3    1.00          0.0             3.         JCC,7,(1986),230
+370	X -CT-SH-X    3    0.75          0.0             3.         JCC,7,(1986),230
+371	X -C*-CB-X    4    6.70        180.0             2.         intrpol.bsd.onC6H6aa
+372	X -C*-CT-X    6    0.00          0.0             2.         JCC,7,(1986),230
+373	X -C*-CW-X    4   26.10        180.0             2.         intrpol.bsd.on C6H6
+374	X -CA-CN-X    4   14.50        180.0             2.         reinterpolated 93'
+375	X -CB-CN-X    4   12.00        180.0             2.         reinterpolated 93'
+376	X -CC-CT-X    6    0.00          0.0             2.         JCC,7,(1986),230
+377	X -CC-CV-X    4   20.60        180.0             2.         intrpol.bsd.on C6H6
+378	X -CC-CW-X    4   21.50        180.0             2.         intrpol.bsd.on C6H6
+379	X -CC-NA-X    4    5.60        180.0             2.         JCC,7,(1986),230
+380	X -CC-NB-X    2    4.80        180.0             2.         JCC,7,(1986),230
+381	X -CN-NA-X    4    6.10        180.0             2.         reinterpolated 93'
+382	X -CR-NA-X    4    9.30        180.0             2.         JCC,7,(1986),230
+383	X -CR-NB-X    2   10.00        180.0             2.         JCC,7,(1986),230
+384	X -CV-NB-X    2    4.80        180.0             2.         JCC,7,(1986),230
+385	X -CW-NA-X    4    6.00        180.0             2.         JCC,7,(1986),230
+386	CT-CT-OS-CT   1    0.383         0.0            -3.
+387	CT-CT-OS-CT   1    0.1         180.0             2.
+388	C -N -CT-C    1    0.20        180.0             2.
+389	N -CT-C -N    1    0.40        180.0            -4.
+390	N -CT-C -N    1    1.35        180.0            -2.
+391	N -CT-C -N    1    0.75        180.0             1.
+392	CT-CT-N -C    1    0.50        180.0            -4.
+393	CT-CT-N -C    1    0.15        180.0            -3.
+394	CT-CT-N -C    1    0.53          0.0             1.
+395	CT-CT-C -N    1    0.100         0.0            -4.
+396	CT-CT-C -N    1    0.07          0.0             2.
+397	H -N -C -O    1    2.50        180.0            -2.         JCC,7,(1986),230
+398	H -N -C -O    1    2.00          0.0             1.         J.C.cistrans-NMA DE
+399	CT-S -S -CT   1    3.50          0.0            -2.         JCC,7,(1986),230
+400	CT-S -S -CT   1    0.60          0.0             3.         JCC,7,(1986),230
+401	OS-CT-CT-OS   1    0.144         0.0            -3.         JCC,7,(1986),230
+402	OS-CT-CT-OS   1    1.00          0.0             2.         pucker anal (93')
+403	OS-CT-CT-OH   1    0.144         0.0            -3.         JCC,7,(1986),230
+404	OS-CT-CT-OH   1    1.00          0.0             2.         pucker anal (93')
+405	OH-CT-CT-OH   1    0.144         0.0            -3.         JCC,7,(1986),230
+406	OH-CT-CT-OH   1    1.00          0.0             2.         check glicolWC? puc
+407	OH-P -OS-CT   1    0.25          0.0            -3.         JCC,7,(1986),230
+408	OH-P -OS-CT   1    1.20          0.0             2.         gg&gt ene.631g*/mp2
+409	OS-P -OS-CT   1    0.25          0.0            -3.         JCC,7,(1986),230
+410	OS-P -OS-CT   1    1.20          0.0             2.         gg&gt ene.631g*/mp2
+411	OS-CT-N*-CK   1    0.50        180.0            -2.         sugar frag calc (PC)
+412	OS-CT-N*-CK   1    2.50          0.0             1.         sugar frag calc (PC)
+413	OS-CT-N*-CM   1    0.50        180.0            -2.         sugar frag calc (PC)
+414	OS-CT-N*-CM   1    2.50          0.0             1.         sugar frag calc (PC)
+415	
+416	X -X -C -O          10.5         180.          2.           JCC,7,(1986),230
+417	X -O2-C -O2         10.5         180.          2.           JCC,7,(1986),230
+418	X -X -N -H          1.0          180.          2.           JCC,7,(1986),230
+419	X -X -N2-H          1.0          180.          2.           JCC,7,(1986),230
+420	X -X -NA-H          1.0          180.          2.           JCC,7,(1986),230
+421	X -N2-CA-N2         10.5         180.          2.           JCC,7,(1986),230
+422	X -CT-N -CT         1.0          180.          2.           JCC,7,(1986),230
+423	X -X -CA-HA         1.1          180.          2.           bsd.on C6H6 nmodes
+424	X -X -CW-H4         1.1          180.          2.
+425	X -X -CR-H5         1.1          180.          2.
+426	X -X -CV-H4         1.1          180.          2.
+427	X -X -CQ-H5         1.1          180.          2.
+428	X -X -CK-H5         1.1          180.          2.
+429	X -X -CM-H4         1.1          180.          2.
+430	X -X -CM-HA         1.1          180.          2.
+431	X -X -CA-H4         1.1          180.          2.           bsd.on C6H6 nmodes
+432	X -X -CA-H5         1.1          180.          2.           bsd.on C6H6 nmodes
+433	CK-CB-N*-CT         1.0          180.          2.
+434	CM-C -N*-CT         1.0          180.          2.           dac guess, 9/94
+435	CM-C -CM-CT         1.1          180.          2.
+436	CT-O -C -OH         10.5         180.          2.
+437	NA-CV-CC-CT         1.1          180.          2.
+438	NB-CW-CC-CT         1.1          180.          2.
+439	NA-CW-CC-CT         1.1          180.          2.
+440	CW-CB-C*-CT         1.1          180.          2.
+441	CA-CA-CA-CT         1.1          180.          2.
+442	C -CM-CM-CT         1.1          180.          2.           dac guess, 9/94
+443	NC-CM-CA-N2         1.1          180.          2.           dac guess, 9/94
+444	CB-NC-CA-N2         1.1          180.          2.           dac, 10/94
+445	NA-NC-CA-N2         1.1          180.          2.           dac, 10/94
+446	CA-CA-C -OH         1.1          180.          2.
+447	
+448	  HW  OW  0000.     0000.                                4.  flag for fast water
+449	
+450	N   NA  N2  N*  NC  NB  N3  NP  NO
+451	C   C*  CA  CB  CC  CN  CM  CK  CQ  CW  CV  CR  CA  CX  CY  CD
+452	
+453	MOD4      RE
+454	  H           0.6000  0.0157            !Ferguson base pair geom.
+455	  HO          0.0000  0.0000             OPLS Jorgensen, JACS,110,(1988),1657
+456	  HS          0.6000  0.0157             W. Cornell CH3SH --> CH3OH FEP
+457	  HC          1.4870  0.0157             OPLS
+458	  H1          1.3870  0.0157             Veenstra et al JCC,8,(1992),963
+459	  H2          1.2870  0.0157             Veenstra et al JCC,8,(1992),963
+460	  H3          1.1870  0.0157             Veenstra et al JCC,8,(1992),963
+461	  HP          1.1000  0.0157             Veenstra et al JCC,8,(1992),963
+462	  HA          1.4590  0.0150             Spellmeyer
+463	  H4          1.4090  0.0150             Spellmeyer, one electrowithdr. neighbor
+464	  H5          1.3590  0.0150             Spellmeyer, two electrowithdr. neighbor
+465	  HW          0.0000  0.0000             TIP3P water model
+466	  O           1.6612  0.2100             OPLS
+467	  O2          1.6612  0.2100             OPLS
+468	  OW          1.7683  0.1520             TIP3P water model
+469	  OH          1.7210  0.2104             OPLS
+470	  OS          1.6837  0.1700             OPLS ether
+471	  CT          1.9080  0.1094             Spellmeyer
+472	  CA          1.9080  0.0860             Spellmeyer
+473	  CM          1.9080  0.0860             Spellmeyer
+474	  C           1.9080  0.0860             OPLS
+475	  N           1.8240  0.1700             OPLS
+476	  S           2.0000  0.2500             W. Cornell CH3SH and CH3SCH3 FEP's
+477	  SH          2.0000  0.2500             W. Cornell CH3SH and CH3SCH3 FEP's
+478	  P           2.1000  0.2000             JCC,7,(1986),230;
+479	  IM          2.47    0.1                Cl- Smith & Dang, JCP 1994,100:5,3757
+480	  Li          1.1370  0.0183             Li+ Aqvist JPC 1990,94,8021. (adapted)
+481	  IP          1.8680  0.00277            Na+ Aqvist JPC 1990,94,8021. (adapted)
+482	  K           2.6580  0.000328           K+  Aqvist JPC 1990,94,8021. (adapted)
+483	  Rb          2.9560  0.00017            Rb+ Aqvist JPC 1990,94,8021. (adapted)
+484	  Cs          3.3950  0.0000806          Cs+ Aqvist JPC 1990,94,8021. (adapted)
+485	  I           2.35    0.40               JCC,7,(1986),230; 
+486	  F           1.75    0.061              Gough et al. JCC 13,(1992),963.
+487	  IB          5.0     0.1                solvated ion for vacuum approximation
+488	 
+489	END
+490	END

bin/cml/forcefield/amber/parm94.xml

+<list
+  id='parm94' 
+  output="VERBOSE"
+  convention='conventions:compchem'
+  xmlns:conventions="http://www.xml-cml.org/convention/"  
+  
+  xmlns:ff="http://www.xml-cml.org/dictionary/forcefield/"
+  xmlns:amber="http://www.xml-cml.org/dictionary/forcefield/amber"
+  xmlns:x="http://www.xml-cml.org/dictionary/cmlx/"
+  xmlns:h="http://www.w3.org/1999/xhtml"
+  
+  xmlns:m='http://www.w3.org/1998/Math/MathML'
+  xmlns="http://www.xml-cml.org/schema"
+  xmlns:xi="http://www.w3.org/2001/XInclude"
+>
+    <scalar dictRef='ff:title'>PARM94 for DNA, RNA and proteins with TIP3P Water. USE SCEE=1.2 in energy progs</scalar>
+
+    <list title="atoms" dictRef='ff:atoms'>
+        <list id='at2'>
+            <atomType dictRef='amber:parm94Type'>BR</atomType>
+            <scalar dictRef='ff:atmass'>79.90</scalar>
+            <scalar dictRef='ff:desc'>bromine</scalar>
+        </list>
+        <list id='at3'>
+            <atomType dictRef='amber:parm94Type'>C</atomType>
+            <scalar dictRef='ff:atmass'>12.01</scalar>
+            <scalar dictRef='ff:desc'>sp2 C carbonyl group</scalar>
+        </list>
+        <list id='at4'>
+            <atomType dictRef='amber:parm94Type'>CA</atomType>
+            <scalar dictRef='ff:atmass'>12.01</scalar>
+            <scalar dictRef='ff:desc'>sp2 C pure aromatic (benzene)</scalar>
+        </list>
+        <list id='at5'>
+            <atomType dictRef='amber:parm94Type'>CB</atomType>
+            <scalar dictRef='ff:atmass'>12.01</scalar>
+            <scalar dictRef='ff:desc'>sp2 aromatic C, 5&amp;6 membered ring junction</scalar>
+        </list>
+        <list id='at6'>
+            <atomType dictRef='amber:parm94Type'>CC</atomType>
+            <scalar dictRef='ff:atmass'>12.01</scalar>
+            <scalar dictRef='ff:desc'>sp2 aromatic C, 5 memb. ring HIS</scalar>
+        </list>
+        <list id='at7'>
+            <atomType dictRef='amber:parm94Type'>CK</atomType>
+            <scalar dictRef='ff:atmass'>12.01</scalar>
+            <scalar dictRef='ff:desc'>sp2 C 5 memb.ring in purines</scalar>
+        </list>
+        <list id='at8'>
+            <atomType dictRef='amber:parm94Type'>CM</atomType>
+            <scalar dictRef='ff:atmass'>12.01</scalar>
+            <scalar dictRef='ff:desc'>sp2 C pyrimidines in pos. 5 &amp; 6</scalar>
+        </list>
+        <list id='at9'>
+            <atomType dictRef='amber:parm94Type'>CN</atomType>
+            <scalar dictRef='ff:atmass'>12.01</scalar>
+            <scalar dictRef='ff:desc'>sp2 C aromatic 5&amp;6 memb.ring junct.(TRP)</scalar>
+        </list>
+        <list id='at10'>
+            <atomType dictRef='amber:parm94Type'>CQ</atomType>
+            <scalar dictRef='ff:atmass'> 12.01</scalar>
+            <scalar dictRef='ff:desc'>sp2 C in 5 mem.ring of purines between 2 N</scalar>
+        </list>
+        <list id='at11'>
+            <atomType dictRef='amber:parm94Type'>CR</atomType>
+            <scalar dictRef='ff:atmass'> 12.01</scalar>
+            <scalar dictRef='ff:desc'>sp2 arom as CQ but in HIS</scalar>
+        </list>
+        <list id='at12'>
+            <atomType dictRef='amber:parm94Type'>CT</atomType>
+            <scalar dictRef='ff:atmass'> 12.01</scalar>
+            <scalar dictRef='ff:desc'>sp3 aliphatic C</scalar>
+        </list>
+        <list id='at13'>
+            <atomType dictRef='amber:parm94Type'>CV</atomType>
+            <scalar dictRef='ff:atmass'> 12.01</scalar>
+            <scalar dictRef='ff:desc'>sp2 arom. 5 memb.ring w/1 N and 1 H (HIS)</scalar>
+        </list>
+        <list id='at14'>
+            <atomType dictRef='amber:parm94Type'>CW</atomType>
+            <scalar dictRef='ff:atmass'> 12.01</scalar>
+            <scalar dictRef='ff:desc'>sp2 arom. 5 memb.ring w/1 N-H and 1 H (HIS)</scalar>
+        </list>
+        <list id='at15'>
+            <atomType dictRef='amber:parm94Type'>C*</atomType>
+            <scalar dictRef='ff:atmass'> 12.01</scalar>
+            <scalar dictRef='ff:desc'>sp2 arom. 5 memb.ring w/1 subst. (TRP)</scalar>
+        </list>
+        <list id='at16'>
+            <atomType dictRef='amber:parm94Type'>C0</atomType>
+            <scalar dictRef='ff:atmass'> 40.08</scalar>
+            <scalar dictRef='ff:desc'>calcium</scalar>
+        </list>
+        <list id='at17'>
+            <atomType dictRef='amber:parm94Type'>F</atomType>
+            <scalar dictRef='ff:atmass'> 19.00</scalar>
+            <scalar dictRef='ff:desc'>fluorine</scalar>
+        </list>
+        <list id='at18'>
+            <atomType dictRef='amber:parm94Type'>H</atomType>
+            <scalar dictRef='ff:atmass'> 1.008</scalar>
+            <scalar dictRef='ff:desc'>H bonded to nitrogen atoms</scalar>
+        </list>
+        <list id='at19'>
+            <atomType dictRef='amber:parm94Type'>HC</atomType>
+            <scalar dictRef='ff:atmass'> 1.008</scalar>
+            <scalar dictRef='ff:desc'>H aliph. bond. to C without electrwd.group</scalar>
+        </list>
+        <list id='at20'>
+            <atomType dictRef='amber:parm94Type'>H1</atomType>
+            <scalar dictRef='ff:atmass'> 1.008</scalar>
+            <scalar dictRef='ff:desc'>H aliph. bond. to C with 1 electrwd. group</scalar>
+        </list>
+        <list id='at21'>
+            <atomType dictRef='amber:parm94Type'>H2</atomType>
+            <scalar dictRef='ff:atmass'> 1.008</scalar>
+            <scalar dictRef='ff:desc'>H aliph. bond. to C with 2 electrwd.groups</scalar>
+        </list>
+        <list id='at22'>
+            <atomType dictRef='amber:parm94Type'>H3</atomType>
+            <scalar dictRef='ff:atmass'> 1.008</scalar>
+            <scalar dictRef='ff:desc'>H aliph. bond. to C with 3 eletrwd.groups</scalar>
+        </list>
+        <list id='at23'>
+            <atomType dictRef='amber:parm94Type'>HA</atomType>
+            <scalar dictRef='ff:atmass'> 1.008</scalar>
+            <scalar dictRef='ff:desc'>H arom. bond. to C without elctrwd. groups</scalar>
+        </list>
+        <list id='at24'>
+            <atomType dictRef='amber:parm94Type'>H4</atomType>
+            <scalar dictRef='ff:atmass'> 1.008</scalar>
+            <scalar dictRef='ff:desc'>H arom. bond. to C with 1 electrwd. group</scalar>
+        </list>
+        <list id='at25'>
+            <atomType dictRef='amber:parm94Type'>H5</atomType>
+            <scalar dictRef='ff:atmass'> 1.008</scalar>
+            <scalar dictRef='ff:desc'>H arom. bond. to C with 2 electrwd. groups</scalar>
+        </list>
+        <list id='at26'>
+            <atomType dictRef='amber:parm94Type'>HO</atomType>
+            <scalar dictRef='ff:atmass'> 1.008</scalar>
+            <scalar dictRef='ff:desc'>hydroxyl group</scalar>
+        </list>
+        <list id='at27'>
+            <atomType dictRef='amber:parm94Type'>HS</atomType>
+            <scalar dictRef='ff:atmass'> 1.008</scalar>
+            <scalar dictRef='ff:desc'>hydrogen bonded to sulphur</scalar>
+        </list>
+        <list id='at28'>
+            <atomType dictRef='amber:parm94Type'>HW</atomType>
+            <scalar dictRef='ff:atmass'> 1.008</scalar>
+            <scalar dictRef='ff:desc'>H in TIP3P water</scalar>
+        </list>
+        <list id='at29'>
+            <atomType dictRef='amber:parm94Type'>HP</atomType>
+            <scalar dictRef='ff:atmass'> 1.008</scalar>
+            <scalar dictRef='ff:desc'>H bonded to C next to positively charged gr</scalar>
+        </list>
+        <list id='at30'>
+            <atomType dictRef='amber:parm94Type'>I</atomType>
+            <scalar dictRef='ff:atmass'> 126.9</scalar>
+            <scalar dictRef='ff:desc'>iodine</scalar>
+        </list>
+        <list id='at31'>
+            <atomType dictRef='amber:parm94Type'>IM</atomType>
+            <scalar dictRef='ff:atmass'> 35.45</scalar>
+            <scalar dictRef='ff:desc'>assumed to be Cl-</scalar>
+        </list>
+        <list id='at32'>
+            <atomType dictRef='amber:parm94Type'>IP</atomType>
+            <scalar dictRef='ff:atmass'> 22.99</scalar>
+            <scalar dictRef='ff:desc'>assumed to be Na+</scalar>
+        </list>
+        <list id='at33'>
+            <atomType dictRef='amber:parm94Type'>IB</atomType>
+            <scalar dictRef='ff:atmass'> 131.0</scalar>
+            <scalar dictRef='ff:desc'>'big ion w/ waters' for vacuum (Na+, 6H2O)</scalar>
+        </list>
+        <list id='at34'>
+            <atomType dictRef='amber:parm94Type'>MG</atomType>
+            <scalar dictRef='ff:atmass'> 24.305</scalar>
+            <scalar dictRef='ff:desc'>magnesium</scalar>
+        </list>
+        <list id='at35'>
+            <atomType dictRef='amber:parm94Type'>N</atomType>
+            <scalar dictRef='ff:atmass'> 14.01</scalar>
+            <scalar dictRef='ff:desc'>sp2 nitrogen in amide groups</scalar>
+        </list>
+        <list id='at36'>
+            <atomType dictRef='amber:parm94Type'>NA</atomType>
+            <scalar dictRef='ff:atmass'> 14.01</scalar>
+            <scalar dictRef='ff:desc'>sp2 N in 5 memb.ring w/H atom (HIS)</scalar>
+        </list>
+        <list id='at37'>
+            <atomType dictRef='amber:parm94Type'>NB</atomType>
+            <scalar dictRef='ff:atmass'> 14.01</scalar>
+            <scalar dictRef='ff:desc'>sp2 N in 5 memb.ring w/LP (HIS,ADE,GUA)</scalar>
+        </list>
+        <list id='at38'>
+            <atomType dictRef='amber:parm94Type'>NC</atomType>
+            <scalar dictRef='ff:atmass'> 14.01</scalar>
+            <scalar dictRef='ff:desc'>sp2 N in 6 memb.ring w/LP (ADE,GUA)</scalar>
+        </list>
+        <list id='at39'>
+            <atomType dictRef='amber:parm94Type'>N2</atomType>
+            <scalar dictRef='ff:atmass'> 14.01</scalar>
+            <scalar dictRef='ff:desc'>sp2 N in amino groups</scalar>
+        </list>
+        <list id='at40'>
+            <atomType dictRef='amber:parm94Type'>N3</atomType>
+            <scalar dictRef='ff:atmass'> 14.01</scalar>
+            <scalar dictRef='ff:desc'>sp3 N for charged amino groups (Lys, etc)</scalar>
+        </list>
+        <list id='at41'>
+            <atomType dictRef='amber:parm94Type'>N*</atomType>
+            <scalar dictRef='ff:atmass'> 14.01</scalar>
+            <scalar dictRef='ff:desc'>sp2 N</scalar>
+        </list>
+        <list id='at42'>
+            <atomType dictRef='amber:parm94Type'>O</atomType>
+            <scalar dictRef='ff:atmass'> 16.00</scalar>
+            <scalar dictRef='ff:desc'>carbonyl group oxygen</scalar>
+        </list>
+        <list id='at43'>
+            <atomType dictRef='amber:parm94Type'>OW</atomType>
+            <scalar dictRef='ff:atmass'> 16.00</scalar>
+            <scalar dictRef='ff:desc'>oxygen in TIP3P water</scalar>
+        </list>
+        <list id='at44'>
+            <atomType dictRef='amber:parm94Type'>OH</atomType>
+            <scalar dictRef='ff:atmass'> 16.00</scalar>
+            <scalar dictRef='ff:desc'>oxygen in hydroxyl group</scalar>
+        </list>
+        <list id='at45'>
+            <atomType dictRef='amber:parm94Type'>OS</atomType>
+            <scalar dictRef='ff:atmass'> 16.00</scalar>
+            <scalar dictRef='ff:desc'>ether and ester oxygen</scalar>
+        </list>
+        <list id='at46'>
+            <atomType dictRef='amber:parm94Type'>O2</atomType>
+            <scalar dictRef='ff:atmass'> 16.00</scalar>
+            <scalar dictRef='ff:desc'>carboxyl and phosphate group oxygen</scalar>
+        </list>
+        <list id='at47'>
+            <atomType dictRef='amber:parm94Type'>P</atomType>
+            <scalar dictRef='ff:atmass'> 30.97</scalar>
+            <scalar dictRef='ff:desc'>phosphate</scalar>
+        </list>
+        <list id='at48'>
+            <atomType dictRef='amber:parm94Type'>S</atomType>
+            <scalar dictRef='ff:atmass'> 32.06</scalar>
+            <scalar dictRef='ff:desc'>sulphur in disulfide linkage</scalar>
+        </list>
+        <list id='at49'>
+            <atomType dictRef='amber:parm94Type'>SH</atomType>
+            <scalar dictRef='ff:atmass'> 32.06</scalar>
+            <scalar dictRef='ff:desc'>sulphur in cystine</scalar>
+        </list>
+        <list id='at50'>
+            <atomType dictRef='amber:parm94Type'>CU</atomType>
+            <scalar dictRef='ff:atmass'> 63.55</scalar>
+            <scalar dictRef='ff:desc'>copper</scalar>
+        </list>
+        <list id='at51'>
+            <atomType dictRef='amber:parm94Type'>FE</atomType>
+            <scalar dictRef='ff:atmass'> 55.00</scalar>
+            <scalar dictRef='ff:desc'>iron</scalar>
+        </list>
+        <list id='at52'>
+            <atomType dictRef='amber:parm94Type'>Li</atomType>
+            <scalar dictRef='ff:atmass'> 6.94</scalar>
+            <scalar dictRef='ff:desc'>lithium</scalar>
+        </list>
+        <list id='at53'>
+            <atomType dictRef='amber:parm94Type'>K</atomType>
+            <scalar dictRef='ff:atmass'> 39.10</scalar>
+            <scalar dictRef='ff:desc'>potassium</scalar>
+        </list>
+        <list id='at54'>
+            <atomType dictRef='amber:parm94Type'>Rb</atomType>
+            <scalar dictRef='ff:atmass'> 85.47</scalar>
+            <scalar dictRef='ff:desc'>rubidium</scalar>
+        </list>
+        <list id='at55'>
+            <atomType dictRef='amber:parm94Type'>Cs</atomType>
+            <scalar dictRef='ff:atmass'> 132.91</scalar>
+            <scalar dictRef='ff:desc'>cesium</scalar>
+        </list>
+    </list>
+
+    <list title="bonds" dictRef='ff:bonds'>
+        <xi:include href="harmonic_bond_function.xml"/>
+        <list id='bo58'>
+            <atomType dictRef='amber:parm94Type'>OW</atomType>
+            <atomType dictRef='amber:parm94Type'>HW</atomType>
+            <scalar dictRef='ff:k'>553.0</scalar>
+            <scalar dictRef='ff:req'>0.9572</scalar>
+            <scalar dictRef='ff:desc'>! TIP3P water</scalar>
+        </list>
+        <list id='bo59'>
+            <atomType dictRef='amber:parm94Type'>HW</atomType>
+            <atomType dictRef='amber:parm94Type'>HW</atomType>
+            <scalar dictRef='ff:k'>553.0</scalar>
+            <scalar dictRef='ff:req'>1.5136</scalar>
+            <scalar dictRef='ff:desc'>TIP3P water</scalar>
+        </list>
+        <list id='bo60'>
+            <atomType dictRef='amber:parm94Type'>C</atomType>
+            <atomType dictRef='amber:parm94Type'>CA</atomType>
+            <scalar dictRef='ff:k'>469.0</scalar>
+            <scalar dictRef='ff:req'>1.409</scalar>
+            <scalar dictRef='ff:desc'>JCC,7,(1986),230; TYR</scalar>
+        </list>
+        <list id='bo61'>
+            <atomType dictRef='amber:parm94Type'>C</atomType>
+            <atomType dictRef='amber:parm94Type'>CB</atomType>
+            <scalar dictRef='ff:k'>447.0</scalar>
+            <scalar dictRef='ff:req'>1.419</scalar>