|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectchemaxon.marvin.alignment.Alignment
public class Alignment
3D Alignment aligns two or more 3D molecules onto each other.
The conformation of all molecules can be kept flexible so as to maximize the molecular overlap
or also the input conformation of some of the molecules can be frozen.
Alignment tries to maximize the overlap of atoms of the same type of different molecules.
Example source
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.addMol(mols[0], false); // adds molecule
aa.addMol(mols[1], false);
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();
double tanimoto = aa.tanimoto();
| Field Summary | |
|---|---|
static double |
USER_WEIGHT
|
| Constructor Summary | |
|---|---|
Alignment()
|
|
Alignment(AlignmentProperties props)
|
|
| Method Summary | |
|---|---|
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()
|
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()
|
boolean |
isLicensed()
|
static Molecule |
randomizeRotatableDihedrals(Molecule m)
|
void |
removeAllConstraints()
|
void |
removeAllMolecules()
before every new alignment the molecules have to be removed. |
void |
setAromatize(boolean arg0)
|
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)
|
void |
setFlexibleRingRotatableBondCount(int arg0)
|
void |
setFlexibleRingSize(int arg0)
|
void |
setLicenseEnvironment(java.lang.String arg0)
|
void |
setMinimumCommonSize(int minimumCommonSize)
Before the real volume like alignment a several prealign step is optionally called. |
void |
setMode(AlignmentAccuracyMode mode)
|
void |
setNodeType(AlignmentProperties.NodeType arg0)
|
void |
setOrientationType(AlignmentProperties.OrientationType orientationType)
|
void |
setProgressMonitor(chemaxon.common.util.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. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static double USER_WEIGHT
| Constructor Detail |
|---|
public Alignment()
public Alignment(AlignmentProperties props)
| Method Detail |
|---|
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)
public 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
AlignmentExceptionpublic 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.AlignmentExceptionpublic void setMinimumCommonSize(int minimumCommonSize)
minimumCommonSize - if > 0 consider atom/atom pairings from mcs algorithm also.
Number of common atoms in mcs to try to align on.public AlignmentProperties.NodeType getNodeType()
public chemaxon.marvin.alignment.NodeColor getNodeColor()
public void setAromatize(boolean arg0)
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.Licensablepublic void setLicenseEnvironment(java.lang.String arg0)
setLicenseEnvironment in interface chemaxon.license.Licensablepublic int getStepLimit()
public void setStepLimit(int arg0)
public int getTimeLimit()
public void setNodeType(AlignmentProperties.NodeType arg0)
public void setTimeLimit(int arg0)
public void setProgressMonitor(chemaxon.common.util.MProgressMonitor arg0)
public void setProximity(chemaxon.marvin.alignment.AlignmentProperties.ProximityPotentialType arg0)
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||