Class LoopClosure

java.lang.Object
ffx.potential.utils.LoopClosure

public class LoopClosure extends Object
LoopClosure class. The program can be used to find loop structures involving six backbone torsion angles given the position of the two atoms before the loop and two atoms after the loop. Possible structures for a three residue gap in a protein can be found given the coordinates of the N and CA atoms of the first residue and the CA ans C atoms of the third residue. Multiple conformations are suggested by this algorithm when multiple solutions exist.
Since:
1.0
Author:
Mallory R. Tollefson
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    double
    calcT1(double t0, double t2)
    Calculate T1.
    double
    calcT2(double t0)
    Calculate T2.
    boolean
    getInputAngles(double[] r_n1, double[] r_a1, double[] r_a3, double[] r_c3)
    Get the input angles.
    void
    getPolyCoeff(double[] polyCoeff)
    Get Polynomial Coefficient.
    void
    polyMul1(double[] u1, double[] u2, int p1, int p2, double[] u3, int[] p3)
    Polynomial multiply 1.
    void
    polyMul2(double[][] u1, double[][] u2, int[] p1, int[] p2, double[][] u3, int[] p3)
    Polynomial multiplication 2.
    void
    polyMulSub1(double[] u1, double[] u2, double[] u3, double[] u4, int p1, int p2, int p3, int p4, double[] u5, int[] p5)
    Polynomial multiply subtraction 1.
    void
    polyMulSub2(double[][] u1, double[][] u2, double[][] u3, double[][] u4, int[] p1, int[] p2, int[] p3, int[] p4, double[][] u5, int[] p5)
    Polynomial multiplication subtraction 2.
    void
    polySub1(double[] u1, double[] u2, int[] p1, int[] p2, double[] u3, int[] p3)
    Polynomial subtraction 1.
    void
    polySub2(double[][] u1, double[][] u2, int[] p1, int[] p2, double[][] u3, int[] p3)
    Polynomial subtraction 2.
    int
    solve3PepPoly(double[] r_n1, double[] r_a1, double[] r_a3, double[] r_c3, double[][][] r_soln_n, double[][][] r_soln_a, double[][][] r_soln_c)
    Close a 3-residue loop by filling in the backbone atom coordinates and return the possible solution set.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • LoopClosure

      public LoopClosure()
  • Method Details

    • calcT1

      public double calcT1(double t0, double t2)
      Calculate T1.
      Parameters:
      t0 - a double.
      t2 - a double.
      Returns:
      return a double T1.
    • calcT2

      public double calcT2(double t0)
      Calculate T2.
      Parameters:
      t0 - a double.
      Returns:
      a double T2.
    • getInputAngles

      public boolean getInputAngles(double[] r_n1, double[] r_a1, double[] r_a3, double[] r_c3)
      Get the input angles.
      Parameters:
      r_n1 - an array of
      invalid reference
      double
      objects.
      r_a1 - an array of
      invalid reference
      double
      objects.
      r_a3 - an array of
      invalid reference
      double
      objects.
      r_c3 - an array of
      invalid reference
      double
      objects.
    • getPolyCoeff

      public void getPolyCoeff(double[] polyCoeff)
      Get Polynomial Coefficient.
      Parameters:
      polyCoeff - an array of
      invalid reference
      double
      objects.
    • polyMul1

      public void polyMul1(double[] u1, double[] u2, int p1, int p2, double[] u3, int[] p3)
      Polynomial multiply 1.
      Parameters:
      u1 - an array of
      invalid reference
      double
      objects.
      u2 - an array of
      invalid reference
      double
      objects.
      p1 - an int.
      p2 - an int.
      u3 - an array of
      invalid reference
      double
      objects.
      p3 - an array of
      invalid reference
      int
      objects.
    • polyMul2

      public void polyMul2(double[][] u1, double[][] u2, int[] p1, int[] p2, double[][] u3, int[] p3)
      Polynomial multiplication 2.
      Parameters:
      u1 - an array of
      invalid reference
      double
      objects.
      u2 - an array of
      invalid reference
      double
      objects.
      p1 - an array of
      invalid reference
      int
      objects.
      p2 - an array of
      invalid reference
      int
      objects.
      u3 - an array of
      invalid reference
      double
      objects.
      p3 - an array of
      invalid reference
      int
      objects.
    • polyMulSub1

      public void polyMulSub1(double[] u1, double[] u2, double[] u3, double[] u4, int p1, int p2, int p3, int p4, double[] u5, int[] p5)
      Polynomial multiply subtraction 1.
      Parameters:
      u1 - an array of
      invalid reference
      double
      objects.
      u2 - an array of
      invalid reference
      double
      objects.
      u3 - an array of
      invalid reference
      double
      objects.
      u4 - an array of
      invalid reference
      double
      objects.
      p1 - an int.
      p2 - an int.
      p3 - an int.
      p4 - an int.
      u5 - an array of
      invalid reference
      double
      objects.
      p5 - an array of
      invalid reference
      int
      objects.
    • polyMulSub2

      public void polyMulSub2(double[][] u1, double[][] u2, double[][] u3, double[][] u4, int[] p1, int[] p2, int[] p3, int[] p4, double[][] u5, int[] p5)
      Polynomial multiplication subtraction 2.
      Parameters:
      u1 - an array of
      invalid reference
      double
      objects.
      u2 - an array of
      invalid reference
      double
      objects.
      u3 - an array of
      invalid reference
      double
      objects.
      u4 - an array of
      invalid reference
      double
      objects.
      p1 - an array of
      invalid reference
      int
      objects.
      p2 - an array of
      invalid reference
      int
      objects.
      p3 - an array of
      invalid reference
      int
      objects.
      p4 - an array of
      invalid reference
      int
      objects.
      u5 - an array of
      invalid reference
      double
      objects.
      p5 - an array of
      invalid reference
      int
      objects.
    • polySub1

      public void polySub1(double[] u1, double[] u2, int[] p1, int[] p2, double[] u3, int[] p3)
      Polynomial subtraction 1.
      Parameters:
      u1 - an array of
      invalid reference
      double
      objects.
      u2 - an array of
      invalid reference
      double
      objects.
      p1 - an array of
      invalid reference
      int
      objects.
      p2 - an array of
      invalid reference
      int
      objects.
      u3 - an array of
      invalid reference
      double
      objects.
      p3 - an array of
      invalid reference
      int
      objects.
    • polySub2

      public void polySub2(double[][] u1, double[][] u2, int[] p1, int[] p2, double[][] u3, int[] p3)
      Polynomial subtraction 2.
      Parameters:
      u1 - an array of
      invalid reference
      double
      objects.
      u2 - an array of
      invalid reference
      double
      objects.
      p1 - an array of
      invalid reference
      int
      objects.
      p2 - an array of
      invalid reference
      int
      objects.
      u3 - an array of
      invalid reference
      double
      objects.
      p3 - an array of
      invalid reference
      int
      objects.
    • solve3PepPoly

      public int solve3PepPoly(double[] r_n1, double[] r_a1, double[] r_a3, double[] r_c3, double[][][] r_soln_n, double[][][] r_soln_a, double[][][] r_soln_c)
      Close a 3-residue loop by filling in the backbone atom coordinates and return the possible solution set. This can include up to 16 solutions.
      Parameters:
      r_n1 - an array of
      invalid reference
      double
      objects.
      r_a1 - an array of
      invalid reference
      double
      objects.
      r_a3 - an array of
      invalid reference
      double
      objects.
      r_c3 - an array of
      invalid reference
      double
      objects.
      r_soln_n - an array of
      invalid reference
      double
      objects.
      r_soln_a - an array of
      invalid reference
      double
      objects.
      r_soln_c - an array of
      invalid reference
      double
      objects.