|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectmeshi.applications.corpus.LocalFragmentLib
public class LocalFragmentLib
The purpose of this class is is class is to build a fragment library that is compatible with a certain sequence. The lib is applicable to a corpus instance. The sequence is given to the constructor as an array of integers (in the range: 0-19). The constructor creates a library with at most libSize fragments that are different from each other by at least a certain RMS curoff. The final size of the lib could be smaller than the requested if this cutoff is stringent. In general the RMS (for fragment diversity purposes) is calculated not on the entire sequence, but rather on an inner subsequence. I found out that when you do threading on a long sequence the results are more accurate for the inner subsequences. The ranking of fragments in the lib is currently by propensity energy and pair-wise sequence alignment using BLOSUM62.
| Field Summary | |
|---|---|
private Corpus |
corpus
|
private double[][] |
fragCoors
|
private int |
fragL
|
private double[] |
libEnergy
|
private int[] |
libOrig
|
private int |
libSize
|
private int |
manner
|
private int |
overlap
|
private double |
overlapRMSsimilarity
|
private Protein |
prot
|
private double[][] |
protCoors
|
private int |
residueFragStart
|
private double |
rmsCutOff
|
private int[] |
seq
|
private boolean[] |
similarToLib
|
private int |
trueFragEnd
|
private int |
trueFragStart
|
| Fields inherited from interface meshi.energy.simpleEnergyTerms.compositeTorsions.CompositeTorsionsDefinitions |
|---|
ALL, CHI_1, CHI_2, CHI_3, CHI_4, COIL, HELIX, NUM_SIDECHAIN_TORSIONS, OMG, OMNI, PHI, POLYNOMIAL_CHI_1, POLYNOMIAL_CHI_1_CHI_2, POLYNOMIAL_CHI_1_CHI_2_TORSIONS, POLYNOMIAL_CHI_1_CHI_3, POLYNOMIAL_CHI_1_CHI_3_TORSIONS, POLYNOMIAL_CHI_1_CHI_4, POLYNOMIAL_CHI_1_CHI_4_TORSIONS, POLYNOMIAL_CHI_1_TORSIONS, POLYNOMIAL_PHI_PSI, POLYNOMIAL_PHI_PSI_CHI_1, POLYNOMIAL_PHI_PSI_CHI_1_TORSIONS, POLYNOMIAL_PHI_PSI_TORSIONS, PREPRO, PSI, SHEET, TOTAL_TORSION_ANGLES, UNIDENTIFIED_TORSION_TYPE |
| Constructor Summary | |
|---|---|
LocalFragmentLib(Corpus corpus,
int[] seq,
int libSize,
double rmsCutoff,
int fragStartInSeq,
int fragEndInSeq)
|
|
LocalFragmentLib(Corpus corpus,
int[] seq,
int libSize,
double rmsCutoff,
int fragStartInSeq,
int fragEndInSeq,
Protein prot,
int residueFragStart,
int overlap,
int manner,
double overlapRMSsimilarity)
|
|
| Method Summary | |
|---|---|
private void |
buildLib(double[] energies,
int fragStartInSeq,
boolean filterStalks)
|
private double[] |
calculateThreadingEnergy()
|
private boolean |
checkSimilarity(int ind,
int[] tmpIndices,
int fragStartInSeq,
boolean filterStalks)
This method checks if the fragment 'ind' (given in the ungapped indexing) is similar to a fragment already in the lib. |
private int |
findLowestEnergy(int[] tmpIndices,
double[] energies,
boolean filterStalks,
int fragStartInSeq)
This method finds the lowest energy fragment that is not too similar to the rest of the lib |
void |
insertFragToProt(DunbrackLib rotLib,
int indInLib)
It is assumed that isFragCompatible was run before this method was called, so that fragCoors is updated. |
void |
insertFragToProt(DunbrackLib rotLib,
int indInLib,
Protein prot,
int residueFragStart,
int overlap,
int manner)
It is assumed that isFragCompatible was run before this method was called, so that fragCoors is updated. |
boolean |
isFragCompatible(int indInLib,
double overlapRMSsimilarity)
The 'prot', 'overlap', 'manner' and 'residueFragStart' are from the class's fields. |
boolean |
isFragCompatible(int indInLib,
Protein prot,
int residueFragStart,
int overlap,
int manner,
double overlapRMSsimilarity)
This method check whether the fragment 'indInLib' in the lib can overlap the given coordinates bellow a certain RMS cut off. |
private boolean |
isFragCompatibleForConstruction(int indInCorpus,
double overlapRMSsimilarity)
This method is used only during the construction when 'libOrig' is not yet ready. |
int |
libOrig(int ind)
|
int |
libSize()
|
java.lang.String |
printLib()
|
java.lang.String |
printLib(int i)
|
int |
residueFragStart()
|
double |
superimposeFrag(int indInCorpus,
Protein prot,
int residueFragStart,
int overlap,
int manner)
Superimposing fragment 'indInCorpus' in the corpus to a given portion in a protein. |
int |
trueFragEnd()
|
int |
trueFragStart()
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
private Corpus corpus
private int fragL
private int libSize
private double rmsCutOff
private int[] seq
private int[] libOrig
private double[] libEnergy
private boolean[] similarToLib
private int trueFragStart
private int trueFragEnd
private Protein prot
private int residueFragStart
private int overlap
private int manner
private double overlapRMSsimilarity
private double[][] fragCoors
private double[][] protCoors
| Constructor Detail |
|---|
public LocalFragmentLib(Corpus corpus,
int[] seq,
int libSize,
double rmsCutoff,
int fragStartInSeq,
int fragEndInSeq,
Protein prot,
int residueFragStart,
int overlap,
int manner,
double overlapRMSsimilarity)
public LocalFragmentLib(Corpus corpus,
int[] seq,
int libSize,
double rmsCutoff,
int fragStartInSeq,
int fragEndInSeq)
| Method Detail |
|---|
private double[] calculateThreadingEnergy()
private void buildLib(double[] energies,
int fragStartInSeq,
boolean filterStalks)
public java.lang.String printLib()
public java.lang.String printLib(int i)
private boolean checkSimilarity(int ind,
int[] tmpIndices,
int fragStartInSeq,
boolean filterStalks)
private int findLowestEnergy(int[] tmpIndices,
double[] energies,
boolean filterStalks,
int fragStartInSeq)
public boolean isFragCompatible(int indInLib,
Protein prot,
int residueFragStart,
int overlap,
int manner,
double overlapRMSsimilarity)
public boolean isFragCompatible(int indInLib,
double overlapRMSsimilarity)
private boolean isFragCompatibleForConstruction(int indInCorpus,
double overlapRMSsimilarity)
public double superimposeFrag(int indInCorpus,
Protein prot,
int residueFragStart,
int overlap,
int manner)
public void insertFragToProt(DunbrackLib rotLib,
int indInLib)
public void insertFragToProt(DunbrackLib rotLib,
int indInLib,
Protein prot,
int residueFragStart,
int overlap,
int manner)
public int libSize()
public int libOrig(int ind)
public int trueFragStart()
public int trueFragEnd()
public int residueFragStart()
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||