org.strbio.mol.lib
Class Sippl90

java.lang.Object
  extended by org.strbio.mol.lib.Sippl90

public class Sippl90
extends java.lang.Object

Sippl scoring method, from JMB 90 papers.

  Identification of Native Protein Folds Amongst a Large Number
  of Incorrect Models
  Hendlich M, Lackner P, Weitckus S, Floeckner H, Froschauer R,
  Gottsbacher K, Casari G, and Sippl M
  1990
  J Mol Biol 216:  167-180
  
and also:
  Calculation of Conformational Ensembles from Potentials of Mean Force
  Sippl M
  1990
  J Mol Biol 213:  859-883
  
Energy is a function of 4 parameters: 2 amino acid types (not symmetric; the first is the more N-terminal of the 2), topological separation k (starting at 1 for adjacent amino acids),and CB-CB (or CA for glycine) distance d. In practice, k from 1 to 10 are treated separately; 11-30 are combined into 1 category (medium range), and there are 4 long range categories: 31-60, 61-100, 101-150, and 151-200.

Even though k values are counted 1-10 (and 11 for MR, 12-15 for LR1-4), they are stored internally in this code starting at 0. Look things up at k-1, not k.

Version:
1.0, 1/3/00
Author:
JMC
  Version 1.0, 1/3/00 - original version
  

Constructor Summary
Sippl90()
          Don't initialize anything.
 
Method Summary
 double deltaE(char a, char b, int k, double d)
          Returns the deltaE(a,b,k,d).
 double getMaxDistance(int k)
          get the maximum distance for toplogical level k
 double getMinDistance(int k)
          get the minimum distance for toplogical level k
 IVector getRaw(char a, char b, int k)
          Returns a vector of raw N(a,b,k)
 DVector getTabulated(char a, char b, int k)
          Returns a vector of deltaE(a,b,k).
 void load(java.io.BufferedReader infile)
          Load tabulated values from an open BufferedReader.
 void load(java.lang.String filename)
          Loads tabulated values from a text file.
 void loadRaw(java.io.BufferedReader infile)
          Load tabulated values from an open BufferedReader.
 void loadRaw(java.lang.String filename)
          Loads raw values from a text file.
static void main(java.lang.String[] argv)
          Use proteins in a file to parameterize the function.
 void save(Printf outfile)
          Saved tabulated values to a file.
 void save(java.lang.String filename)
          Saves to a new text file.
 void saveRaw(Printf outfile)
          Saved raw values to a file.
 void saveRaw(java.lang.String filename)
          Saves raw values to a new text file.
 double selfEnergy(Protein p)
          return the total self energy for a protein.
 double selfEnergy(Protein p, int kMin, int kMax)
          return the self-energy for a protein for a range of k's (including both ends of the range)
 double selfEnergyLR1(Protein p)
          return the long range (1) energy for a protein (k=31..60)
 double selfEnergyLR2(Protein p)
          return the long range (2) energy for a protein (k=61..100)
 double selfEnergyLR3(Protein p)
          return the long range (3) energy for a protein (k=101..150)
 double selfEnergyLR4(Protein p)
          return the long range (4) energy for a protein (k=151+)
 double selfEnergyMR(Protein p)
          return the medium range energy for a protein (k=11..30)
 double selfEnergySR(Protein p)
          return the short range energy for a protein (k=1..10)
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Sippl90

public Sippl90()
Don't initialize anything.

Method Detail

getTabulated

public DVector getTabulated(char a,
                            char b,
                            int k)
Returns a vector of deltaE(a,b,k).


getRaw

public IVector getRaw(char a,
                      char b,
                      int k)
Returns a vector of raw N(a,b,k)


getMinDistance

public double getMinDistance(int k)
get the minimum distance for toplogical level k


getMaxDistance

public double getMaxDistance(int k)
get the maximum distance for toplogical level k


selfEnergy

public double selfEnergy(Protein p,
                         int kMin,
                         int kMax)
return the self-energy for a protein for a range of k's (including both ends of the range)


selfEnergySR

public double selfEnergySR(Protein p)
return the short range energy for a protein (k=1..10)


selfEnergyMR

public double selfEnergyMR(Protein p)
return the medium range energy for a protein (k=11..30)


selfEnergyLR1

public double selfEnergyLR1(Protein p)
return the long range (1) energy for a protein (k=31..60)


selfEnergyLR2

public double selfEnergyLR2(Protein p)
return the long range (2) energy for a protein (k=61..100)


selfEnergyLR3

public double selfEnergyLR3(Protein p)
return the long range (3) energy for a protein (k=101..150)


selfEnergyLR4

public double selfEnergyLR4(Protein p)
return the long range (4) energy for a protein (k=151+)


selfEnergy

public double selfEnergy(Protein p)
return the total self energy for a protein.


deltaE

public double deltaE(char a,
                     char b,
                     int k,
                     double d)
Returns the deltaE(a,b,k,d). A and B are amino acid types, k is the topological separation, and d is the CB-CB (or CA for Gly) distance.


save

public void save(Printf outfile)
          throws java.io.IOException
Saved tabulated values to a file.

Throws:
java.io.IOException

saveRaw

public void saveRaw(Printf outfile)
             throws java.io.IOException
Saved raw values to a file.

Throws:
java.io.IOException

load

public void load(java.io.BufferedReader infile)
          throws java.io.IOException
Load tabulated values from an open BufferedReader.

Throws:
java.io.IOException
See Also:
BufferedReader

loadRaw

public void loadRaw(java.io.BufferedReader infile)
             throws java.io.IOException
Load tabulated values from an open BufferedReader.

Throws:
java.io.IOException
See Also:
BufferedReader

save

public void save(java.lang.String filename)
          throws java.io.IOException
Saves to a new text file. Overwrites any existing file.

Parameters:
filename - the file name.
Throws:
java.io.IOException

load

public void load(java.lang.String filename)
          throws java.io.IOException
Loads tabulated values from a text file.

Parameters:
filename - the file name.
Throws:
java.io.IOException

saveRaw

public void saveRaw(java.lang.String filename)
             throws java.io.IOException
Saves raw values to a new text file. Overwrites any existing file.

Parameters:
filename - the file name.
Throws:
java.io.IOException

loadRaw

public void loadRaw(java.lang.String filename)
             throws java.io.IOException
Loads raw values from a text file.

Parameters:
filename - the file name.
Throws:
java.io.IOException

main

public static final void main(java.lang.String[] argv)
Use proteins in a file to parameterize the function. Loads things twice, to minimize memory usage.