public class MultipleAlignmentScorer
extends java.lang.Object
MultipleAlignment
s.Modifier and Type | Field and Description |
---|---|
static java.lang.String |
AVG_TMSCORE |
static java.lang.String |
CE_SCORE |
static java.lang.String |
CEMC_SCORE |
static java.lang.String |
PROBABILITY |
static java.lang.String |
REF_RMSD |
static java.lang.String |
REF_TMSCORE |
static java.lang.String |
RMSD |
Constructor and Description |
---|
MultipleAlignmentScorer() |
Modifier and Type | Method and Description |
---|---|
static void |
calculateScores(MultipleAlignment alignment)
Calculates and puts the RMSD and the average TM-Score of the MultipleAlignment.
|
static double |
getAvgTMScore(MultipleAlignment alignment)
Calculates the average TMScore all the possible pairwise structure comparisons of the
given MultipleAlignment.
|
static double |
getCEMCScore(MultipleAlignment alignment)
Calculates the CEMC score, specific for the MultipleAlignment algorithm.
|
static double |
getRefRMSD(MultipleAlignment alignment,
int reference) |
static double |
getRefTMScore(MultipleAlignment alignment,
int reference)
Calculates the average TMScore from all structures to a reference structure,
given a set of superimposed atoms.
|
static double |
getRMSD(MultipleAlignment alignment)
Calculates the RMSD of all-to-all structure comparisons (distances) of the
given MultipleAlignment.
|
static java.util.List<Atom[]> |
transformAtoms(MultipleAlignment alignment)
Transforms atoms according to the superposition stored in the alignment.
|
public static final java.lang.String PROBABILITY
public static final java.lang.String CE_SCORE
public static final java.lang.String RMSD
public static final java.lang.String AVG_TMSCORE
public static final java.lang.String CEMC_SCORE
public static final java.lang.String REF_RMSD
public static final java.lang.String REF_TMSCORE
public static void calculateScores(MultipleAlignment alignment) throws StructureException
alignment
- StructureException
getAvgTMScore(MultipleAlignment)
,
getRMSD(MultipleAlignment)
public static java.util.List<Atom[]> transformAtoms(MultipleAlignment alignment)
For each structure in the alignment, returns an atom for each representative atom in the aligned columns, omitting unaligned residues (i.e. an array of length alignment.length() ).
All blocks are concatenated together, so Atoms may not appear in the same order as in their parent structure. If the alignment blocks contain null residues (gaps), then the returned array will also contain null Atoms.
alignment
- MultipleAlignmentpublic static double getRMSD(MultipleAlignment alignment)
Complexity: T(n,l) = O(l*n^2), if n=number of structures and l=alignment length.
The formula used is just the sqroot of the average distance of all possible pairs of atoms. Thus, for R structures aligned over C columns without gaps, we have
RMSD = \sqrt{ 1/(C*(R*(R-1)/2)) * \sum_{r1=1}^{R-1} \sum_{r2=r1+1}^{R-1} \sum_{j=0}^{C-1} (atom[r1][c]-atom[r2][c])^2 }
alignment
- public static double getRefRMSD(MultipleAlignment alignment, int reference)
public static double getAvgTMScore(MultipleAlignment alignment) throws StructureException
Complexity: T(n,l) = O(l*n^2), if n=number of structures and l=alignment length.
alignment
- StructureException
public static double getRefTMScore(MultipleAlignment alignment, int reference) throws StructureException
Complexity: T(n,l) = O(l*n), if n=number of structures and l=alignment length.
alignment
- reference
- Index of the reference structureStructureException
public static double getCEMCScore(MultipleAlignment alignment) throws StructureException
Complexity: T(n,l) = O(l*n^2), if n=number of structures and l=alignment length.
alignment
- StructureException