Class TorsionTorsionType

java.lang.Object
ffx.potential.parameters.BaseType
ffx.potential.parameters.TorsionTorsionType
All Implemented Interfaces:
Comparator<String>

@FFXProperty(name="tortors", clazz=java.lang.String[][].class, propertyGroup=PotentialFunctionParameter, description="[7 integers, then multiple lines of 2 integers and 1 real]\nProvides the values for a single torsion-torsion parameter.\nThe first five integer modifiers give the atom class numbers for the atoms involved in the two adjacent torsional angles to be defined.\nThe last two integer modifiers contain the number of data grid points that lie along each axis of the torsion-torsion map.\nFor example, this value will be 13 for a 30 degree torsional angle spacing, i.e., 360/30 = 12, but 13\nvalues are required since data values for -180 and +180 degrees must both be supplied.\nThe subsequent lines contain the torsion-torsion map data as the integer values in degrees of each\ntorsional angle and the target energy value in kcal/mole.\n") public final class TorsionTorsionType extends BaseType implements Comparator<String>
The TorsionTorsionType class defines a Torsion-Torsion spline.
Since:
1.0
Author:
Michael J. Schnieders
  • Field Details Link icon

    • DEFAULT_TORTOR_UNIT Link icon

      public static final double DEFAULT_TORTOR_UNIT
      Default units to convert Torsion-Torsion energy to kcal/mole.
      See Also:
    • torTorUnit Link icon

      @FFXProperty(name="tortorunit", propertyGroup=EnergyUnitConversion, defaultValue="1.0", description="Sets the scale factor needed to convert the energy value computed by the torsion-torsion potential into units of kcal/mole.\nThe correct value is force field dependent and typically provided in the header of the master force field parameter file.\n") public double torTorUnit
      Convert Torsion-Torsion energy to kcal/mole.
    • atomClasses Link icon

      public final int[] atomClasses
      Atom classes that form this Torsion-Torsion type.
    • energy Link icon

      public final double[] energy
      Energy values.
    • nx Link icon

      public final int nx
      Number of points along x.
    • ny Link icon

      public final int ny
      Number of point along y.
    • tx Link icon

      public final double[] tx
      Torsion values along x.
    • ty Link icon

      public final double[] ty
      Torsion values along y.
    • dx Link icon

      public final double[] dx
      First derivative along x.
    • dy Link icon

      public final double[] dy
      First derivative along y.
    • dxy Link icon

      public final double[] dxy
      Second derivatives.
  • Constructor Details Link icon

    • TorsionTorsionType Link icon

      public TorsionTorsionType(int[] atomClasses, int[] gridPoints, double[] torsion1, double[] torsion2, double[] energy)
      Constructor for TorsionTorsionType.
      Parameters:
      atomClasses - an array of int.
      gridPoints - an array of int.
      torsion1 - an array of double.
      torsion2 - an array of double.
      energy - an array of double.
  • Method Details Link icon

    • average Link icon

      public static TorsionTorsionType average(TorsionTorsionType torsionTorsionType1, TorsionTorsionType torsionTorsionType2, int[] atomClasses)
      average.
      Parameters:
      torsionTorsionType1 - a TorsionTorsionType object.
      torsionTorsionType2 - a TorsionTorsionType object.
      atomClasses - an array of
      invalid reference
      int
      objects.
      Returns:
      a TorsionTorsionType object.
    • parse Link icon

      public static TorsionTorsionType parse(String input, String[] tokens, BufferedReader br)
      Construct a TorsionTorsionType from multiple input lines.
      Parameters:
      input - The overall input String.
      tokens - The input String tokenized.
      br - a BufferedReader instance.
      Returns:
      a TorsionTorsionType instance.
    • parse Link icon

      public static TorsionTorsionType parse(String input, String[] tokens)
      Construct a TorsionTorsionType from a single input line.
      Parameters:
      input - The overall input String.
      tokens - The input String tokenized.
      Returns:
      a TorsionTorsionType instance.
    • reverseKey Link icon

      public static String reverseKey(int[] c)
      Reversed key for the Torsion-Torsion lookup.
      Parameters:
      c - atomClasses
      Returns:
      lookup key
    • sortKey Link icon

      public static String sortKey(int[] c)
      No sorting is done for the Torsion-Torsion lookup.
      Parameters:
      c - atomClasses
      Returns:
      lookup key
    • compare Link icon

      public int compare(String key1, String key2)
      Specified by:
      compare in interface Comparator<String>
    • equals Link icon

      public boolean equals(Object o)
      Specified by:
      equals in interface Comparator<String>
      Overrides:
      equals in class Object
    • hashCode Link icon

      public int hashCode()
      Overrides:
      hashCode in class Object
    • incrementClasses Link icon

      public void incrementClasses(int increment)
      Increment the atom classes by a value.
      Parameters:
      increment - The increment to add to the atom classes.
    • patchClasses Link icon

      public void patchClasses(HashMap<AtomType,AtomType> typeMap)
      Remap new atom classes to known internal ones.
      Parameters:
      typeMap - a lookup between new atom types and known atom types.
    • toString Link icon

      public String toString()

      Basic toString method.

      Nicely formatted torsion-torsion type.

      Overrides:
      toString in class BaseType
    • getXMLForce Link icon

      public static Element getXMLForce(Document doc, ForceField forceField)
      Create an AmoebaTorsionTorsionForce Element.
      Parameters:
      doc - the Document instance.
      forceField - the ForceField instance to grab constants from.
      Returns:
      the AmoebaTorsionTorsionForce Element.
    • toXML Link icon

      public void toXML(Document doc, Element torTorNode, int label)
      Write TorsionTorsionType to OpenMM XML format.
      Parameters:
      doc - the Document instance.
      torTorNode - the Element to attach TorsionTorsion and TorsionTorsionGrid to.
      label - the label used to match TorsionTorsion and TorsionTorsionGrid.