Package ffx.potential.utils
Class LoopClosure
java.lang.Object
ffx.potential.utils.LoopClosure
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 -
Method Summary
Modifier and TypeMethodDescriptiondoublecalcT1(double t0, double t2) Calculate T1.doublecalcT2(double t0) Calculate T2.booleangetInputAngles(double[] r_n1, double[] r_a1, double[] r_a3, double[] r_c3) Get the input angles.voidgetPolyCoeff(double[] polyCoeff) Get Polynomial Coefficient.voidpolyMul1(double[] u1, double[] u2, int p1, int p2, double[] u3, int[] p3) Polynomial multiply 1.voidpolyMul2(double[][] u1, double[][] u2, int[] p1, int[] p2, double[][] u3, int[] p3) Polynomial multiplication 2.voidpolyMulSub1(double[] u1, double[] u2, double[] u3, double[] u4, int p1, int p2, int p3, int p4, double[] u5, int[] p5) Polynomial multiply subtraction 1.voidpolyMulSub2(double[][] u1, double[][] u2, double[][] u3, double[][] u4, int[] p1, int[] p2, int[] p3, int[] p4, double[][] u5, int[] p5) Polynomial multiplication subtraction 2.voidpolySub1(double[] u1, double[] u2, int[] p1, int[] p2, double[] u3, int[] p3) Polynomial subtraction 1.voidpolySub2(double[][] u1, double[][] u2, int[] p1, int[] p2, double[][] u3, int[] p3) Polynomial subtraction 2.intsolve3PepPoly(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.
-
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- a double array.r_a1- a double array.r_a3- a double array.r_c3- a double array.
-
getPolyCoeff
public void getPolyCoeff(double[] polyCoeff) Get Polynomial Coefficient.- Parameters:
polyCoeff- a double array.
-
polyMul1
public void polyMul1(double[] u1, double[] u2, int p1, int p2, double[] u3, int[] p3) Polynomial multiply 1.- Parameters:
u1- a double array.u2- a double array.p1- an int.p2- an int.u3- a double array.p3- an int array.
-
polyMul2
public void polyMul2(double[][] u1, double[][] u2, int[] p1, int[] p2, double[][] u3, int[] p3) Polynomial multiplication 2.- Parameters:
u1- a double array.u2- a double array.p1- an int array.p2- an int array.u3- a double array.p3- an int array.
-
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- a double array.u2- a double array.u3- a double array.u4- a double array.p1- an int.p2- an int.p3- an int.p4- an int.u5- a double array.p5- an int array.
-
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- a double array.u2- a double array.u3- a double array.u4- a double array.p1- an int array.p2- an int array.p3- an int array.p4- an int array.u5- a double array.p5- an int array.
-
polySub1
public void polySub1(double[] u1, double[] u2, int[] p1, int[] p2, double[] u3, int[] p3) Polynomial subtraction 1.- Parameters:
u1- a double array.u2- a double array.p1- an int array.p2- an int array.u3- a double array.p3- an int array.
-
polySub2
public void polySub2(double[][] u1, double[][] u2, int[] p1, int[] p2, double[][] u3, int[] p3) Polynomial subtraction 2.- Parameters:
u1- a double array.u2- a double array.p1- an int array.p2- an int array.u3- a double array.p3- an int array.
-
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- a double array.r_a1- a double array.r_a3- a double array.r_c3- a double array.r_soln_n- a double array.r_soln_a- a double array.r_soln_c- a double array.
-