@PublicAPI public class Alignment extends java.lang.Object
Molecule[] mols = new Molecule[2]; mols[0] = MolImporter.importMol("CCCCC"); mols[1] = MolImporter.importMol("CCCCCCC"); mols[0].aromatize(); mols[1].aromatize(); mols[0].clean(3, null); mols[1].clean(3, null); Alignment aa = new Alignment(); aa.addMolecule(mols[0], false, false); // adds a molecule no roatation / no // conformational flexibility aa.addMolecule(mols[1], true, true); // adds a molecule with roatation/ with // conformational flexibility aa.addUserConstraint(0, 3, 1, 4); // optional: add user constraint between atoms // of two different molecules. Any // constraint can be added aa.align(); Molecule result = aa.getMoleculeWithAlignedCoordinates(1); double tanimoto = aa.tanimoto();
Constructor and Description |
---|
Alignment() |
Alignment(AlignmentProperties props) |
Modifier and Type | Method and Description |
---|---|
void |
addConstraintsFromUserMappedAtoms()
An atomMap can be added to some of the atoms in MarvinSketch using the
single reaction arrow.
|
void |
addMolecule(Molecule m,
boolean flexible,
boolean enableTranslateAndRotate)
Add molecule to align
|
void |
addNodeColorWeight(int t1,
int t2,
double w)
User may define extra weights between colors defined at
setColoringScheme.
|
void |
addUserConstraint(int molSeq0,
int atomSeq0,
int molSeq1,
int atomSeq1)
Adds user constraint between two atoms of two different molecules The
addMol method calls must precede this method.
|
void |
align()
3D alignment on two or more molecules.
|
Molecule |
getAlignedMoleculesAsFragments() |
double |
getMaxGradLimit() |
java.util.Collection<AlignmentMolecule> |
getMolecules() |
Molecule |
getMoleculeWithAlignedCoordinates(int molID)
After the alignment result molecule can be obtained.
|
chemaxon.marvin.alignment.NodeColor |
getNodeColor() |
AlignmentProperties.NodeType |
getNodeType() |
AlignmentProperties.OrientationType |
getOrientationType() |
double |
getRmsd() |
chemaxon.marvin.alignment.Status |
getStatus() |
int |
getStepLimit() |
int |
getTimeLimit() |
double |
getVolumeScore()
Calculates the volume score between the current orientation and
conformation of the two molecules.
|
boolean |
isLicensed() |
static Molecule |
randomizeRotatableDihedrals(Molecule m,
java.util.Random r)
Rotates rotatable bonds by a random dihedral angle value.
|
void |
removeAllConstraints() |
void |
removeAllMolecules()
before every new alignment the molecules have to be removed.
|
void |
setAromatize(boolean arg0)
Deprecated.
|
void |
setColoringScheme(AlignmentProperties.ColoringScheme c) |
void |
setConformerCount(int conformerCount)
The the dihedral angles of every flexible molecule should be randomized
before alignment.
|
void |
setDefaultNodeWeightBehavior(AlignmentProperties.ColorNotSpecifiedCase n) |
void |
setDehidrogenize(boolean arg0)
Deprecated.
|
void |
setFlexibleRingRotatableBondCount(int arg0) |
void |
setFlexibleRingSize(int arg0) |
void |
setLicenseEnvironment(java.lang.String arg0) |
void |
setMinimumCommonSize(int minimumCommonSize)
Deprecated.
|
void |
setMode(AlignmentAccuracyMode mode) |
void |
setMolecules(AlignmentMolecule reference,
AlignmentMolecule toAlign) |
void |
setNodeType(AlignmentProperties.NodeType arg0) |
void |
setOrientationType(AlignmentProperties.OrientationType orientationType) |
void |
setProgressMonitor(MProgressMonitor arg0) |
void |
setProperty(AlignmentProperties props) |
void |
setProximity(chemaxon.marvin.alignment.AlignmentProperties.ProximityPotentialType arg0) |
void |
setStepLimit(int arg0) |
void |
setTimeLimit(int arg0) |
double |
tanimoto()
Calculates the atomic colored volume Tanimoto similarity of two 3D
molecules.
|
public Alignment()
public Alignment(AlignmentProperties props)
public Molecule getMoleculeWithAlignedCoordinates(int molID)
molID
- input sequence / Which molecule to return.public void setMode(AlignmentAccuracyMode mode)
public Molecule getAlignedMoleculesAsFragments()
public AlignmentProperties.OrientationType getOrientationType()
public final void setProperty(AlignmentProperties props)
public void setConformerCount(int conformerCount)
conformerCount
- number of randomized conformations to try to alignpublic static Molecule randomizeRotatableDihedrals(Molecule m, java.util.Random r)
m
- this Molecule object will be cloned and the coordinates will
remain intact.r
- parameterized Random
objectpublic void setColoringScheme(AlignmentProperties.ColoringScheme c)
public void addNodeColorWeight(int t1, int t2, double w)
t1
- color 1 (Atomtype)t2
- color 2 (Atomtype)w
- weightpublic void setDefaultNodeWeightBehavior(AlignmentProperties.ColorNotSpecifiedCase n)
public void setOrientationType(AlignmentProperties.OrientationType orientationType)
public void removeAllConstraints()
public void removeAllMolecules()
public void addMolecule(Molecule m, boolean flexible, boolean enableTranslateAndRotate) throws chemaxon.marvin.alignment.AlignmentException
m
- Molecule to alignflexible
- if "false" the molecule kept rigid. If "true" the rotatable
bonds are rotated to achieve the best alignment.enableTranslateAndRotate
- Turn translation and rotation on if true. If false molecule is
frozen.AlignmentException
public void addUserConstraint(int molSeq0, int atomSeq0, int molSeq1, int atomSeq1) throws chemaxon.marvin.alignment.AlignmentException
molSeq0
- atomSeq0
- molSeq1
- atomSeq1
- chemaxon.marvin.alignment.AlignmentException
- if there is no such atom or molecule.public double tanimoto() throws chemaxon.marvin.alignment.AlignmentException
AlignmentException
public chemaxon.marvin.alignment.Status getStatus()
public void align() throws chemaxon.marvin.alignment.AlignmentException
AlignmentException
- if there is an error with the molecule: not 3d or
multi-fragment.public double getVolumeScore()
public double getRmsd()
public void addConstraintsFromUserMappedAtoms() throws chemaxon.marvin.alignment.AlignmentException
chemaxon.marvin.alignment.AlignmentException
public void setMolecules(AlignmentMolecule reference, AlignmentMolecule toAlign)
@Deprecated public void setMinimumCommonSize(int minimumCommonSize)
public double getMaxGradLimit()
public AlignmentProperties.NodeType getNodeType()
public chemaxon.marvin.alignment.NodeColor getNodeColor()
@Deprecated public void setAromatize(boolean arg0)
@Deprecated public void setDehidrogenize(boolean arg0)
public void setFlexibleRingSize(int arg0)
public void setFlexibleRingRotatableBondCount(int arg0)
public java.util.Collection<AlignmentMolecule> getMolecules()
public boolean isLicensed()
isLicensed
in interface chemaxon.license.Licensable
public void setLicenseEnvironment(java.lang.String arg0)
setLicenseEnvironment
in interface chemaxon.license.Licensable
public int getStepLimit()
public void setStepLimit(int arg0)
public int getTimeLimit()
public void setNodeType(AlignmentProperties.NodeType arg0)
public void setTimeLimit(int arg0)
public void setProgressMonitor(MProgressMonitor arg0)
public void setProximity(chemaxon.marvin.alignment.AlignmentProperties.ProximityPotentialType arg0)