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 StringalgorithmNamestatic StringversionVersion history:
-
Constructor Summary
Constructors Constructor Description MultipleMcMain(StructureAlignment pairwiseAlgo)Default constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description MultipleAlignmentalign(List<Atom[]> atomArrays)Run an alignment while specifying the atoms to be aligned.MultipleAlignmentalign(List<Atom[]> atomArrays, Object parameters)Run an alignment and also send a bean containing the parameters.StringgetAlgorithmName()Get the name of this Algorithm.ConfigStrucAligParamsgetParameters()Return the parameters of this algorithm instance.StringgetVersion()Get the Version information for this Algorithm.voidsetParameters(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:MultipleStructureAlignerRun an alignment and also send a bean containing the parameters.- Specified by:
alignin 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:MultipleStructureAlignerRun an alignment while specifying the atoms to be aligned. The default parameters for the algorithm are used.- Specified by:
alignin 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:MultipleStructureAlignerReturn the parameters of this algorithm instance.- Specified by:
getParametersin interfaceMultipleStructureAligner- Returns:
- The returned Object will be a Java bean.
-
setParameters
public void setParameters(ConfigStrucAligParams parameters)
Description copied from interface:MultipleStructureAlignerSet the parameters for this algorithm to use.- Specified by:
setParametersin interfaceMultipleStructureAligner
-
getAlgorithmName
public String getAlgorithmName()
Description copied from interface:MultipleStructureAlignerGet the name of this Algorithm.- Specified by:
getAlgorithmNamein interfaceMultipleStructureAligner- Returns:
- String name of the algorithm
-
getVersion
public String getVersion()
Description copied from interface:MultipleStructureAlignerGet the Version information for this Algorithm.- Specified by:
getVersionin interfaceMultipleStructureAligner- Returns:
- String version of the algorithm
-
-