public class MultipleAlignmentScorer extends Object
MultipleAlignment
s.Modifier and Type | Field and Description |
---|---|
static String |
AVGTM_SCORE |
static String |
CE_SCORE |
static String |
MC_SCORE |
static String |
PROBABILITY |
static String |
REF_RMSD |
static String |
REFTM_SCORE |
static 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(List<Atom[]> transformed,
List<Integer> lengths)
Calculates the average TMScore all the possible pairwise structure
comparisons of the given a set of superimposed Atoms and the original
structure lengths.
|
static double |
getAvgTMScore(MultipleAlignment alignment)
Calculates the average TMScore of all the possible pairwise structure
comparisons of the given alignment.
|
static double |
getMCScore(MultipleAlignment alignment,
double gapOpen,
double gapExtension,
double dCutoff)
Calculates the MC score, specific for the MultipleAlignment algorithm.
|
static double |
getRefRMSD(List<Atom[]> transformed,
int reference)
Calculates the average RMSD from all structures to a reference s
tructure, given a set of superimposed atoms.
|
static double |
getRefRMSD(MultipleAlignment alignment,
int ref)
/** Calculates the average RMSD from all structures to a reference s
tructure, given a set of superimposed atoms.
|
static double |
getRefTMScore(List<Atom[]> transformed,
List<Integer> lengths,
int reference)
Calculates the average TMScore from all structures to a reference
structure, given a set of superimposed atoms.
|
static double |
getRefTMScore(MultipleAlignment alignment,
int ref)
Calculates the average TMScore from all structures to a reference
structure, given a set of superimposed atoms.
|
static double |
getRMSD(List<Atom[]> transformed)
Calculates the RMSD of all-to-all structure comparisons (distances),
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.
|
public static final String PROBABILITY
public static final String CE_SCORE
public static final String RMSD
public static final String AVGTM_SCORE
public static final String MC_SCORE
public static final String REF_RMSD
public static final String REFTM_SCORE
public MultipleAlignmentScorer()
public static void calculateScores(MultipleAlignment alignment) throws StructureException
alignment
- StructureException
getAvgTMScore(MultipleAlignment)
,
getRMSD(MultipleAlignment)
public 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 getRMSD(List<Atom[]> transformed)
transformed
- getRMSD(MultipleAlignment)
public static double getRefRMSD(MultipleAlignment alignment, int ref)
Complexity: T(n,l) = O(l*n), if n=number of structures and l=alignment length.
For ungapped alignments, this is just the sqroot of the average distance from an atom to the aligned atom from the reference. Thus, for R structures aligned over C columns (with structure 0 as the reference), we have:
RefRMSD = \sqrt{ 1/(C*(R-1)) * \sum_{r=1}^{R-1} \sum_{j=0}^{C-1} (atom[1][c]-atom[r][c])^2 }
For gapped alignments, null atoms are omitted from consideration, so that the RMSD is the average over all columns with non-null reference of the average RMSD within the non-null elements of the column.
alignment
- MultipleAlignmentref
- reference structure indexpublic static double getRefRMSD(List<Atom[]> transformed, int reference)
Complexity: T(n,l) = O(l*n), if n=number of structures and l=alignment length.
For ungapped alignments, this is just the sqroot of the average distance from an atom to the aligned atom from the reference. Thus, for R structures aligned over C columns (with structure 0 as the reference), we have:
RefRMSD = \sqrt{ 1/(C*(R-1)) * \sum_{r=1}^{R-1} \sum_{j=0}^{C-1} (atom[1][c]-atom[r][c])^2 }
For gapped alignments, null atoms are omitted from consideration, so that the RMSD is the average over all columns with non-null reference of the average RMSD within the non-null elements of the column.
transformed
- 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 getAvgTMScore(List<Atom[]> transformed, List<Integer> lengths) throws StructureException
Complexity: T(n,l) = O(l*n^2), if n=number of structures and l=alignment length.
transformed
- aligned Atoms transformedlengths
- lengths of the structures in residue numberStructureException
public static double getRefTMScore(MultipleAlignment alignment, int ref) 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 getRefTMScore(List<Atom[]> transformed, List<Integer> lengths, int reference) throws StructureException
Complexity: T(n,l) = O(l*n^2), if n=number of structures and l=alignment length.
transformed
- Arrays of aligned atoms, after superpositionlengths
- lengths of the full input structuresreference
- Index of the reference structureStructureException
public static double getMCScore(MultipleAlignment alignment, double gapOpen, double gapExtension, double dCutoff) throws StructureException
The maximum score of a match is 20, and the penalties for gaps are part of the input. The half-score distance, d0, is chosen as in the TM-score.
Complexity: T(n,l) = O(l*n^2), if n=number of structures and l=alignment length.
alignment
- gapOpen
- penalty for gap opening (reasonable values are in the range
(1.0-20.0)gapExtension
- penalty for extending a gap (reasonable values are in the
range (0.5-10.0)dCutoff
- the distance cutoffStructureException
Copyright © 2000–2018 BioJava. All rights reserved.