Class MultipleMcMain
- java.lang.Object
-
- org.biojava.nbio.structure.align.multiple.mc.MultipleMcMain
-
- All Implemented Interfaces:
MultipleStructureAligner
public class MultipleMcMain extends Object implements MultipleStructureAligner
Main class of the Java implementation of the Combinatorial Extension - Monte Carlo (CEMC) Algorithm, as it was originally described by C.Guda, E.D.Scheeff, P.E. Bourne and I.N. Shindyalov (2001). The original CEMC paper is available from here.This implementation is a generalized version that allows any pairwise structure alignment algorithm as input, thus supporting any non-topological or flexible alignment. The seed can also directly be the input for the optimization. For that, look at
MultipleMcOptimizer
.A Demo on how to use the algorithm can be found in the demo package.
- Since:
- 4.1.0
- Author:
- Aleix Lafita
-
-
Field Summary
Fields Modifier and Type Field Description static String
algorithmName
static String
version
Version history:
-
Constructor Summary
Constructors Constructor Description MultipleMcMain(StructureAlignment pairwiseAlgo)
Default constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description MultipleAlignment
align(List<Atom[]> atomArrays)
Run an alignment while specifying the atoms to be aligned.MultipleAlignment
align(List<Atom[]> atomArrays, Object parameters)
Run an alignment and also send a bean containing the parameters.String
getAlgorithmName()
Get the name of this Algorithm.ConfigStrucAligParams
getParameters()
Return the parameters of this algorithm instance.String
getVersion()
Get the Version information for this Algorithm.void
setParameters(ConfigStrucAligParams parameters)
Set the parameters for this algorithm to use.
-
-
-
Field Detail
-
version
public static final String version
Version history:1.0 - Initial code implementation from CEMC article.
1.1 - Support CP, non-topological and flexible seed alignments.
- See Also:
- Constant Field Values
-
algorithmName
public static final String algorithmName
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
MultipleMcMain
public MultipleMcMain(StructureAlignment pairwiseAlgo)
Default constructor. Default parameters are used.- Parameters:
pairwise
- the pairwise structure alignment used to generate the multiple alignment seed.
-
-
Method Detail
-
align
public MultipleAlignment align(List<Atom[]> atomArrays, Object parameters) throws StructureException
Description copied from interface:MultipleStructureAligner
Run an alignment and also send a bean containing the parameters.- Specified by:
align
in interfaceMultipleStructureAligner
- Parameters:
atomArrays
- List of Atoms of all the structures- Returns:
- MultipleAlignment object that contains the alignment.
- Throws:
StructureException
- See Also:
MultipleStructureAligner.align(List)
-
align
public MultipleAlignment align(List<Atom[]> atomArrays) throws StructureException
Description copied from interface:MultipleStructureAligner
Run an alignment while specifying the atoms to be aligned. The default parameters for the algorithm are used.- Specified by:
align
in interfaceMultipleStructureAligner
- Parameters:
atomArrays
- List of Atoms of all the structures- Returns:
- MultipleAlignment object that contains the alignment.
- Throws:
StructureException
- See Also:
MultipleStructureAligner.align(List,Object)
-
getParameters
public ConfigStrucAligParams getParameters()
Description copied from interface:MultipleStructureAligner
Return the parameters of this algorithm instance.- Specified by:
getParameters
in interfaceMultipleStructureAligner
- Returns:
- The returned Object will be a Java bean.
-
setParameters
public void setParameters(ConfigStrucAligParams parameters)
Description copied from interface:MultipleStructureAligner
Set the parameters for this algorithm to use.- Specified by:
setParameters
in interfaceMultipleStructureAligner
-
getAlgorithmName
public String getAlgorithmName()
Description copied from interface:MultipleStructureAligner
Get the name of this Algorithm.- Specified by:
getAlgorithmName
in interfaceMultipleStructureAligner
- Returns:
- String name of the algorithm
-
getVersion
public String getVersion()
Description copied from interface:MultipleStructureAligner
Get the Version information for this Algorithm.- Specified by:
getVersion
in interfaceMultipleStructureAligner
- Returns:
- String version of the algorithm
-
-