Class AngleOrderDetectorPlus

java.lang.Object
org.biojava.nbio.structure.symmetry.internal.AngleOrderDetectorPlus
All Implemented Interfaces:
OrderDetector

public class AngleOrderDetectorPlus extends Object implements OrderDetector
Guesses an order of rotational symmetry from the angle.

Improves upon the AngleOrderDetector used in the paper by checking all rotations, not just the base one.

Since:
4.2.0
Author:
Spencer Bliven
  • Constructor Details

    • AngleOrderDetectorPlus

      public AngleOrderDetectorPlus(double angleError)
      Parameters:
      error - maximum angular error, in radians
    • AngleOrderDetectorPlus

      public AngleOrderDetectorPlus(int maxOrder)
    • AngleOrderDetectorPlus

      public AngleOrderDetectorPlus(int maxOrder, double angleError)
      Parameters:
      maxOrder - maximum order to consider
      error - maximum angular error, in radians
    • AngleOrderDetectorPlus

      public AngleOrderDetectorPlus(int maxOrder, double angleError, boolean normalize)
      Determine order by finding the order (up to the maxOrder) which has the closest rotation angle to the observed rotation. If normalized is false, then the error is taken to be the absolute error from the closest ideal angle (in radians). If normalized is true, error is taken to be relative to the fundamental rotation for a given order. For instance, for an error of .25, C2 order would be accepted for angles within .25*pi radians of 0 or pi, while C3 order would be acceptable within .25*2pi/3 radians of 0, 2pi/3, or 4pi/3. In the normalized case, numbers between 0 and .5 are sensible for error.
      Parameters:
      maxOrder - maximum order to consider
      error - maximum angular error
      normalize - indicates whether error should be normalized by the order
  • Method Details