Class PheSAAlignment


  • public class PheSAAlignment
    extends java.lang.Object
    • Method Detail

      • preProcess

        public static Matrix preProcess​(Conformer conf,
                                        MolecularVolume molVol)
        Move COM of the molecular volume to the origin of the lab-frame and orient molecules so that their principal moments of inertia coincide with the 3 axis of the coordinate system
        Parameters:
        mol -
        molVol -
      • initialTransform

        public static double[][] initialTransform​(int mode)
        . generate initial orientations of the molecule: mode1: 4 orientations: initial orientation and 180 degree rotation about each axis mode2: mode1 and 90 degree rotations about each axis a transformation vector consists of 7 elements: the first 4 elements form a Quaternion and describe the rotation the last three elements are the translation vector
        Parameters:
        mode -
        Returns:
      • getTotalAtomOverlap

        public double[] getTotalAtomOverlap​(double[] transform)
        calculate the Overlap of the two molecular volumes as a function a transform vector that is applied to the query molecule overlap Volume of two molecular Volumes formulated as a summed overlap of atomic Gaussians taken from Grant, Gallardo, Pickup, Journal of Computational Chemistry, 17, 1653-1666, 1996 returns a double[2]: the first double is the total overlap, whereas the second value is the specific contribution of additional volume gaussians (inclusion, exclusion)
        Parameters:
        transform -
        Returns:
      • getTotalPPOverlap

        public double getTotalPPOverlap​(double[] transform)
      • getSelfAtomOverlap

        public double getSelfAtomOverlap​(MolecularVolume molGauss)
        calculate the self-overlap of the base molecule
        Returns:
      • getSelfPPOverlap

        public double getSelfPPOverlap​(MolecularVolume molGauss)
      • getSelfAtomOverlapRef

        public double getSelfAtomOverlapRef()
      • getSelfAtomOverlapFit

        public double getSelfAtomOverlapFit()
      • getSelfPPOverlapRef

        public double getSelfPPOverlapRef()
      • getSelfPPOverlapFit

        public double getSelfPPOverlapFit()
      • rotateMol

        public static void rotateMol​(Conformer conf,
                                     Quaternion rotor,
                                     double[] transl)
      • rotateMol

        public static void rotateMol​(StereoMolecule mol,
                                     double[][] m)
      • translateMol

        public static void translateMol​(StereoMolecule mol,
                                        double[] translate)
      • multiplyMatrix

        public static void multiplyMatrix​(double[][] r,
                                          double[][] s,
                                          double[][] rs)
      • multiplyInverseMatrix

        public static void multiplyInverseMatrix​(double[][] r,
                                                 double[][] s,
                                                 double[][] rs)
      • getRotationMatrix

        public static void getRotationMatrix​(double theta,
                                             Coordinates axis,
                                             double[][] r)
      • findAlignment

        public double[] findAlignment​(double[][] transforms)
      • findAlignment

        public double[] findAlignment​(double[][] transforms,
                                      boolean optimize)
      • rotateMol

        public static void rotateMol​(Conformer conf,
                                     Matrix rotMat)
      • rotateMol

        public static void rotateMol​(StereoMolecule mol,
                                     double[] transform)
      • rotateMol

        public static void rotateMol​(Conformer conf,
                                     double[] transform)