Class CeCPMain
java.lang.Object
org.biojava.nbio.structure.align.AbstractStructureAlignment
org.biojava.nbio.structure.align.ce.CeMain
org.biojava.nbio.structure.align.ce.CeCPMain
- All Implemented Interfaces:
StructureAlignment
A wrapper for
CeMain
which sets default parameters to be appropriate for finding
circular permutations.
A circular permutation consists of a single cleavage point and rearrangement between two structures, for example:
ABCDEFG DEFGABC
- Author:
- Spencer Bliven.
-
Nested Class Summary
Modifier and TypeClassDescriptionprotected static class
Tiny wrapper for the disallowed regions of an alignment. -
Field Summary
Modifier and TypeFieldDescriptionstatic final String
static final String
version history: 1.5 - Added more parameters to the command line, including -maxOptRMSD 1.4 - Added DuplicationHint parameter & default to duplicating the shorter chain 1.3 - Short CPs are now discarded 1.2 - now supports check AlignmentTools.isSequentialAlignment.Fields inherited from class org.biojava.nbio.structure.align.ce.CeMain
calculator, params
Fields inherited from class org.biojava.nbio.structure.align.AbstractStructureAlignment
newline
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionAligns ca1 and ca2 using a heuristic to check for CPs.protected static CeCPMain.CPRange
calculateMinCP
(int[] block, int blockLen, int ca2len, int minCPlength) Finds the alignment index of the residues minCPlength before and after the duplication.static AFPChain
filterDuplicateAFPs
(AFPChain afpChain, CECalculator ceCalc, Atom[] ca1, Atom[] ca2duplicated) Takes as input an AFPChain where ca2 has been artificially duplicated.static AFPChain
filterDuplicateAFPs
(AFPChain afpChain, CECalculator ceCalc, Atom[] ca1, Atom[] ca2duplicated, CECPParameters params) Get the name of the AlgorithmGet the Version information for this Algorithm.Swaps the order of structures in an AFPChainstatic void
static AFPChain
postProcessAlignment
(AFPChain afpChain, Atom[] ca1, Atom[] ca2m, CECalculator calculator) Circular permutation specific code to be run after the standard CE alignmentstatic AFPChain
postProcessAlignment
(AFPChain afpChain, Atom[] ca1, Atom[] ca2m, CECalculator calculator, CECPParameters param) Circular permutation specific code to be run after the standard CE alignmentMethods inherited from class org.biojava.nbio.structure.align.ce.CeMain
align, getCECalculator, getParameters, setParameters
-
Field Details
-
algorithmName
- See Also:
-
version
version history: 1.5 - Added more parameters to the command line, including -maxOptRMSD 1.4 - Added DuplicationHint parameter & default to duplicating the shorter chain 1.3 - Short CPs are now discarded 1.2 - now supports check AlignmentTools.isSequentialAlignment. XML protocol 1.1 - skipped, (trying to avoid confusion with jfatcat in all vs. all comparisons) 1.0 - initial release- See Also:
-
-
Constructor Details
-
CeCPMain
public CeCPMain()
-
-
Method Details
-
getAlgorithmName
Description copied from interface:StructureAlignment
Get the name of the Algorithm- Specified by:
getAlgorithmName
in interfaceStructureAlignment
- Overrides:
getAlgorithmName
in classCeMain
- Returns:
- the name of the algorithm
-
getVersion
Description copied from interface:StructureAlignment
Get the Version information for this Algorithm.- Specified by:
getVersion
in interfaceStructureAlignment
- Overrides:
getVersion
in classCeMain
- Returns:
- the version of the algorithm
-
main
- Throws:
ConfigurationException
-
align
Aligns ca1 and ca2 using a heuristic to check for CPs.Aligns ca1 against a doubled ca2, then cleans up the alignment.
- Specified by:
align
in interfaceStructureAlignment
- Overrides:
align
in classCeMain
- Parameters:
ca1
-ca2
-param
-- Returns:
- the alignment, possibly containing a CP.
- Throws:
StructureException
-
postProcessAlignment
public static AFPChain postProcessAlignment(AFPChain afpChain, Atom[] ca1, Atom[] ca2m, CECalculator calculator) throws StructureException Circular permutation specific code to be run after the standard CE alignment- Parameters:
afpChain
- The finished alignmentca1
- CA atoms of the first proteinca2m
- A duplicated copy of the second proteincalculator
- The CECalculator used to create afpChain- Throws:
StructureException
-
postProcessAlignment
public static AFPChain postProcessAlignment(AFPChain afpChain, Atom[] ca1, Atom[] ca2m, CECalculator calculator, CECPParameters param) throws StructureException Circular permutation specific code to be run after the standard CE alignment- Parameters:
afpChain
- The finished alignmentca1
- CA atoms of the first proteinca2m
- A duplicated copy of the second proteincalculator
- The CECalculator used to create afpChainparam
- Parameters- Throws:
StructureException
-
invertAlignment
Swaps the order of structures in an AFPChain- Parameters:
a
-- Returns:
-
filterDuplicateAFPs
public static AFPChain filterDuplicateAFPs(AFPChain afpChain, CECalculator ceCalc, Atom[] ca1, Atom[] ca2duplicated) throws StructureException Takes as input an AFPChain where ca2 has been artificially duplicated. This raises the possibility that some residues of ca2 will appear in multiple AFPs. This method filters out duplicates and makes sure that all AFPs are numbered relative to the original ca2.The current version chooses a CP site such that the length of the alignment is maximized.
This method does not update scores to reflect the filtered alignment. It does update the RMSD and superposition.
- Parameters:
afpChain
- The alignment between ca1 and ca2-ca2. Blindly assumes that ca2 has been duplicated.- Returns:
- A new AFPChain consisting of ca1 to ca2, with each residue in at most 1 AFP.
- Throws:
StructureException
-
filterDuplicateAFPs
public static AFPChain filterDuplicateAFPs(AFPChain afpChain, CECalculator ceCalc, Atom[] ca1, Atom[] ca2duplicated, CECPParameters params) throws StructureException - Throws:
StructureException
-
calculateMinCP
protected static CeCPMain.CPRange calculateMinCP(int[] block, int blockLen, int ca2len, int minCPlength) Finds the alignment index of the residues minCPlength before and after the duplication.- Parameters:
block
- The permuted block being considered, generally optAln[0][1]blockLen
- The length of the block (in case extra memory was allocated in block)ca2len
- The length, in residues, of the protein specified by blockminCPlength
- The minimum number of residues allowed for a CP- Returns:
- a CPRange with the following components:
- n
- Index into
block
of the residue such thatminCPlength
residues remain to the end ofca2len
, or -1 if no residue fits that criterium. - mid
- Index of the first residue higher than
ca2len
. - c
- Index of
minCPlength
-th residue after ca2len, or ca2len*2 if no residue fits that criterium.
-