chemaxon.marvin.alignment
Class MinMaxDistance

java.lang.Object
  extended by chemaxon.marvin.alignment.MinMaxDistance
All Implemented Interfaces:
chemaxon.license.Licensable

public class MinMaxDistance
extends java.lang.Object

Calculates the minimum or maximum intermolecular Cartesian distance between atoms by rotating flexible bonds. Molecule mol = MolImporter.importMol("CCCCCCCCC"); mol.clean(3,""); MinMaxDistance mm = new MinMaxDistance() mm.setMolecule(mol); mm.setAtom1(0); mm.setAtom2(5); double max = mm.calcMaxDist(); double min = mm.calcMinDist();

Since:
Marvin 5.3
Author:
Adrian Kalaszi

Field Summary
static double WEIGHT
           
 
Constructor Summary
MinMaxDistance()
           
 
Method Summary
 double calcMaxDist()
           
 double calcMinDist()
          Calculates the minimum distance between two atoms in the molecule.
 java.util.Collection<AlignmentMolecule> getMolecules()
           
 chemaxon.marvin.alignment.NodeColor getNodeColor()
           
 AlignmentProperties.NodeType getNodeType()
           
 int getStepLimit()
           
 int getTimeLimit()
           
 boolean isLicensed()
          Returns information about the licensing of the product.
 void resetMap()
           
 void setAromatize(boolean aromatize)
           
 void setAtom1(int atom1)
           
 void setAtom2(int atom2)
           
 void setDehidrogenize(boolean hy)
           
 void setFlexibleRingRotatableBondCount(int b)
           
 void setFlexibleRingSize(int s)
           
 void setLicenseEnvironment(java.lang.String env)
          Every license can have a modifier environment that's typically an integration environment.
 void setMinDistTryCount(int minDistTryCount)
           
 void setMolecule(Molecule m)
           
 void setNodeType(AlignmentProperties.NodeType t)
           
 void setProgressMonitor(chemaxon.common.util.MProgressMonitor progressMonitor)
           
 void setProperty(AlignmentProperties props)
           
 void setProximity(chemaxon.marvin.alignment.AlignmentProperties.ProximityPotentialType pot)
           
 void setStepLimit(int stepLimit)
           
 void setTimeLimit(int timeLimit)
          Sets the maximum time used for the alignment.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

WEIGHT

public static final double WEIGHT
See Also:
Constant Field Values
Constructor Detail

MinMaxDistance

public MinMaxDistance()
Method Detail

setMolecule

public void setMolecule(Molecule m)
                 throws chemaxon.marvin.alignment.AlignmentException
Throws:
chemaxon.marvin.alignment.AlignmentException

setAtom1

public void setAtom1(int atom1)

setAtom2

public void setAtom2(int atom2)

setMinDistTryCount

public void setMinDistTryCount(int minDistTryCount)
Parameters:
minDistTryCount - number of extra trials. Before every extra trial, the conformation modified using random dihedrals

calcMinDist

public double calcMinDist()
                   throws chemaxon.marvin.alignment.AlignmentException
Calculates the minimum distance between two atoms in the molecule. The molecule is treated flexible, the closest possible distance is the sum of the van der Waals radii of atoms.

Returns:
the minimum distance in Angstrom
Throws:
chemaxon.marvin.alignment.AlignmentException

calcMaxDist

public double calcMaxDist()
                   throws chemaxon.marvin.alignment.AlignmentException
Throws:
chemaxon.marvin.alignment.AlignmentException

resetMap

public void resetMap()

setProperty

public void setProperty(AlignmentProperties props)

getNodeType

public AlignmentProperties.NodeType getNodeType()

getNodeColor

public chemaxon.marvin.alignment.NodeColor getNodeColor()

setAromatize

public void setAromatize(boolean aromatize)

setDehidrogenize

public void setDehidrogenize(boolean hy)

setFlexibleRingSize

public void setFlexibleRingSize(int s)

setFlexibleRingRotatableBondCount

public void setFlexibleRingRotatableBondCount(int b)

getMolecules

public java.util.Collection<AlignmentMolecule> getMolecules()

isLicensed

public boolean isLicensed()
Description copied from interface: chemaxon.license.Licensable
Returns information about the licensing of the product. Example implementation: return LicenseHandler.isLicensed( LicenseHandler.MY_IDENTIFIER, licenseEnvironment );

Specified by:
isLicensed in interface chemaxon.license.Licensable
Returns:
true if the product is correctly licensed

setLicenseEnvironment

public void setLicenseEnvironment(java.lang.String env)
Description copied from interface: chemaxon.license.Licensable
Every license can have a modifier environment that's typically an integration environment. All being Licensable should be prepared to store and show a set environment to the LicenseHandler. Example implementation:
 private String licenseEnvironment = "";
 public void setLicenseEnvironment(String env) {
     licenseEnvironment = env;
 }
 

Specified by:
setLicenseEnvironment in interface chemaxon.license.Licensable
Parameters:
env - environment String to be stored and passed to the LicenseHandler in the isLicensed method

getStepLimit

public int getStepLimit()

setStepLimit

public void setStepLimit(int stepLimit)

getTimeLimit

public int getTimeLimit()

setNodeType

public void setNodeType(AlignmentProperties.NodeType t)

setTimeLimit

public void setTimeLimit(int timeLimit)
Sets the maximum time used for the alignment. If reached returns the partly aligned structures.

Parameters:
timeLimit - time limit in millisecond. if -1 then disabled.

setProgressMonitor

public void setProgressMonitor(chemaxon.common.util.MProgressMonitor progressMonitor)

setProximity

public void setProximity(chemaxon.marvin.alignment.AlignmentProperties.ProximityPotentialType pot)