Package com.actelion.research.chem.conf
Class TorsionDescriptor
- java.lang.Object
-
- com.actelion.research.chem.conf.TorsionDescriptor
-
- All Implemented Interfaces:
java.lang.Comparable<TorsionDescriptor>
public class TorsionDescriptor extends java.lang.Object implements java.lang.Comparable<TorsionDescriptor>
-
-
Constructor Summary
Constructors Constructor Description TorsionDescriptor(float[] torsion, float[] maxTorsion)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description int
compareTo(TorsionDescriptor td)
Returns 0, if none of the torsion angles are more different than TORSION_EQUIVALENCE_TOLERANCE; Returns -1 if the first non-equivalent torsion angle is smaller for this than for the passed TorsionDescriptor td.boolean
equals(TorsionDescriptor td)
Returns true, if none of the torsion angles are more different than TORSION_EQUIVALENCE_TOLERANCE;float
getDissimilarity(TorsionDescriptor td, float[] bondWeight)
Calculates a similarity value between td and this considering individual torsion values, the importance of the rotatable bond, and the ratio of rotatable/non-rotatable bonds.static float[]
getRotatableBondWeights(StereoMolecule mol, int[] rotatableBond)
The relevance of a rotatable bond and its torsion angle for creating substantially different conformers depends on how close the bond is to the center of the molecule.java.lang.String
toString()
-
-
-
Method Detail
-
equals
public boolean equals(TorsionDescriptor td)
Returns true, if none of the torsion angles are more different than TORSION_EQUIVALENCE_TOLERANCE;- Parameters:
td
-- Returns:
-
compareTo
public int compareTo(TorsionDescriptor td)
Returns 0, if none of the torsion angles are more different than TORSION_EQUIVALENCE_TOLERANCE; Returns -1 if the first non-equivalent torsion angle is smaller for this than for the passed TorsionDescriptor td.- Specified by:
compareTo
in interfacejava.lang.Comparable<TorsionDescriptor>
- Parameters:
td
-- Returns:
-
getRotatableBondWeights
public static float[] getRotatableBondWeights(StereoMolecule mol, int[] rotatableBond)
The relevance of a rotatable bond and its torsion angle for creating substantially different conformers depends on how close the bond is to the center of the molecule. Bond relevance values range from 1.0/atomCount (e.g. bond to methyl group) to 1.0 (bond dividing molecule into two equally large parts). Ring bonds are assigned a relevance value of 0.33 independent of their location.- Parameters:
mol
-rotatableBond
-- Returns:
-
getDissimilarity
public float getDissimilarity(TorsionDescriptor td, float[] bondWeight)
Calculates a similarity value between td and this considering individual torsion values, the importance of the rotatable bond, and the ratio of rotatable/non-rotatable bonds.- Parameters:
td
-- Returns:
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-