$darkmode
DENOPTIM
denoptim.graph.rings.RingClosure Class Reference

RingClosure represents the arrangement of atoms and PseudoAtoms identifying the head and tail of a chain of atoms. More...

Collaboration diagram for denoptim.graph.rings.RingClosure:
[legend]

Public Member Functions

 RingClosure (RingClosureParameters settings)
 Constructs an empty RingClosure. More...
 
 RingClosure (Point3d h1, Point3d h2, Point3d t1, Point3d t2)
 Constructs a RingClosure from the involved points. More...
 
void calculateDescriptors ()
 Calculate desctiprots (distances and dot product). More...
 
boolean isClosable (ArrayList< Double > clsablConds, Logger logger)
 Evaluate closability by comparing the distances and the dot product with the given critera. More...
 
boolean isClosable (double minDH1T2, double maxDH1T2, double minDH2T1, double maxDH2T1, double minDH2T2, double maxDH2T2, double maxDotHT, Logger logger)
 Evaluate closability by comparing the distances and the dot product with the given critera (i.e., the closability conditions). More...
 
double getRingClosureQuality ()
 Returns the score evaluating the overal closure quality of this ring closure. More...
 
Point3d getPoint (int i)
 Returns the point requested. More...
 
ArrayList< Double > getClosabilityConditions (double etrxTol)
 Returns the list of min/max values defining the closability conditions. More...
 
RingClosure deepCopy ()
 Returns a deep copy of this RingClosure object. More...
 
String toString ()
 

Private Attributes

Point3d h1
 The firs point defining the head vector. More...
 
Point3d h2
 The second point defining the head vector. More...
 
Point3d t1
 The firs point defining the tail vector. More...
 
Point3d t2
 The second point defining the tail vector. More...
 
Vector3d h
 vector head of chain More...
 
Vector3d t
 vector tail of chain More...
 
double distH1T2
 Distance H1 T2. More...
 
double distH2T1
 Distance H2 T1. More...
 
double distH2T2
 Distance H2 T2. More...
 
double qscore = Double.NaN
 Quality score of the head and tail vectors alignement. More...
 
RingClosureParameters settings
 Parameters. More...
 

Detailed Description

RingClosure represents the arrangement of atoms and PseudoAtoms identifying the head and tail of a chain of atoms.

The chain may have a proper conformation that allows to close a ring by forming a new bond. The four points contained in RingClosure represents (in this order) atom H1, PseudoAtom H2, atom T1, and PseudoAtom T2. keep in mind this scheme:
H2–H1.....rest of chain.....T1–T2

Author
Marco Foscato

Definition at line 42 of file RingClosure.java.

Constructor & Destructor Documentation

◆ RingClosure() [1/2]

denoptim.graph.rings.RingClosure.RingClosure ( RingClosureParameters  settings)

Constructs an empty RingClosure.

Definition at line 105 of file RingClosure.java.

References denoptim.graph.rings.RingClosure.settings.

Referenced by denoptim.graph.rings.RingClosure.deepCopy().

Here is the caller graph for this function:

◆ RingClosure() [2/2]

denoptim.graph.rings.RingClosure.RingClosure ( Point3d  h1,
Point3d  h2,
Point3d  t1,
Point3d  t2 
)

Member Function Documentation

◆ calculateDescriptors()

void denoptim.graph.rings.RingClosure.calculateDescriptors ( )

Calculate desctiprots (distances and dot product).

This method is not executed during creation of the object to allow faster handling of the RingClosure object.

Definition at line 132 of file RingClosure.java.

References denoptim.graph.rings.RingClosure.h1, denoptim.graph.rings.RingClosure.h2, denoptim.graph.rings.RingClosure.t1, and denoptim.graph.rings.RingClosure.t2.

◆ deepCopy()

RingClosure denoptim.graph.rings.RingClosure.deepCopy ( )

Returns a deep copy of this RingClosure object.

Definition at line 354 of file RingClosure.java.

References denoptim.graph.rings.RingClosure.h1, denoptim.graph.rings.RingClosure.h2, denoptim.graph.rings.RingClosure.RingClosure(), denoptim.graph.rings.RingClosure.t1, and denoptim.graph.rings.RingClosure.t2.

Here is the call graph for this function:

◆ getClosabilityConditions()

ArrayList< Double > denoptim.graph.rings.RingClosure.getClosabilityConditions ( double  etrxTol)

Returns the list of min/max values defining the closability conditions.

This method is made available to guarantee that only one set of closability conditions is used by whichever tool needs to evaluate ring closability.

Parameters
etrxToladditional factor that multiplies dist. tolerance
Returns
the vector of conditions in this exact order:
  1. minDistH1T2
  2. maxDistH1T2
  3. minDistH2T1
  4. maxDistH2T1
  5. minDistH2T2
  6. maxDistH2T2
  7. maxDotProdHT

Definition at line 316 of file RingClosure.java.

References denoptim.graph.rings.RingClosureParameters.getRCDistTolerance(), denoptim.graph.rings.RingClosureParameters.getRCDotPrTolerance(), denoptim.graph.rings.RingClosure.h1, denoptim.graph.rings.RingClosure.h2, denoptim.graph.rings.RingClosure.settings, denoptim.graph.rings.RingClosure.t1, and denoptim.graph.rings.RingClosure.t2.

Referenced by denoptim.graph.rings.RingClosureFinder.evaluateClosability().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getPoint()

Point3d denoptim.graph.rings.RingClosure.getPoint ( int  i)

Returns the point requested.

Parameters
iindex of the point to return (0,3)

Definition at line 269 of file RingClosure.java.

References denoptim.graph.rings.RingClosure.h1, denoptim.graph.rings.RingClosure.h2, denoptim.graph.rings.RingClosure.t1, and denoptim.graph.rings.RingClosure.t2.

◆ getRingClosureQuality()

double denoptim.graph.rings.RingClosure.getRingClosureQuality ( )

Returns the score evaluating the overal closure quality of this ring closure.

Definition at line 241 of file RingClosure.java.

References denoptim.graph.rings.RingClosure.h1, denoptim.graph.rings.RingClosure.h2, denoptim.graph.rings.RingClosure.qscore, denoptim.graph.rings.RingClosure.t1, and denoptim.graph.rings.RingClosure.t2.

◆ isClosable() [1/2]

boolean denoptim.graph.rings.RingClosure.isClosable ( ArrayList< Double >  clsablConds,
Logger  logger 
)

Evaluate closability by comparing the distances and the dot product with the given critera.

Parameters
clsablCondsthe closability conditions.
loggerthe program-specific logger.
Returns
true is the arrangement of points respect the closability condition

Definition at line 154 of file RingClosure.java.

References denoptim.graph.rings.RingClosure.isClosable().

Referenced by denoptim.molecularmodeling.RingClosureTool.closeRings(), denoptim.graph.rings.RingClosureFinder.hasClosableRotamer(), and denoptim.graph.rings.RingClosure.isClosable().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isClosable() [2/2]

boolean denoptim.graph.rings.RingClosure.isClosable ( double  minDH1T2,
double  maxDH1T2,
double  minDH2T1,
double  maxDH2T1,
double  minDH2T2,
double  maxDH2T2,
double  maxDotHT,
Logger  logger 
)

Evaluate closability by comparing the distances and the dot product with the given critera (i.e., the closability conditions).

Parameters
minDH1T2minimum threshold value for distance h1-t2
maxDH1T2maximum threshold value for distance h1-t2
minDH2T1minimum threshold value for distance h2-t1
maxDH2T1maximum threshold value for distance h2-t1
minDH2T2minimum threshold value for distance h2-t2
maxDH2T2maximum threshold value for distance h2-t2
maxDotHTmaximum value for the dot product
loggerfor debugging
Returns
true is the arrangement of points respect the closability condition

Definition at line 184 of file RingClosure.java.

References denoptim.graph.rings.RingClosure.distH1T2, denoptim.graph.rings.RingClosure.distH2T1, denoptim.graph.rings.RingClosure.distH2T2, denoptim.constants.DENOPTIMConstants.EOL, denoptim.graph.rings.RingClosure.h, denoptim.graph.rings.RingClosure.h1, denoptim.graph.rings.RingClosure.h2, denoptim.graph.rings.RingClosure.t, denoptim.graph.rings.RingClosure.t1, and denoptim.graph.rings.RingClosure.t2.

◆ toString()

String denoptim.graph.rings.RingClosure.toString ( )

Member Data Documentation

◆ distH1T2

double denoptim.graph.rings.RingClosure.distH1T2
private

Distance H1 T2.

Definition at line 77 of file RingClosure.java.

Referenced by denoptim.graph.rings.RingClosure.isClosable().

◆ distH2T1

double denoptim.graph.rings.RingClosure.distH2T1
private

Distance H2 T1.

Definition at line 82 of file RingClosure.java.

Referenced by denoptim.graph.rings.RingClosure.isClosable().

◆ distH2T2

double denoptim.graph.rings.RingClosure.distH2T2
private

Distance H2 T2.

Definition at line 87 of file RingClosure.java.

Referenced by denoptim.graph.rings.RingClosure.isClosable().

◆ h

Vector3d denoptim.graph.rings.RingClosure.h
private

vector head of chain

Definition at line 67 of file RingClosure.java.

Referenced by denoptim.graph.rings.RingClosure.isClosable().

◆ h1

◆ h2

◆ qscore

double denoptim.graph.rings.RingClosure.qscore = Double.NaN
private

Quality score of the head and tail vectors alignement.

Definition at line 92 of file RingClosure.java.

Referenced by denoptim.graph.rings.RingClosure.getRingClosureQuality().

◆ settings

RingClosureParameters denoptim.graph.rings.RingClosure.settings
private

◆ t

Vector3d denoptim.graph.rings.RingClosure.t
private

vector tail of chain

Definition at line 72 of file RingClosure.java.

Referenced by denoptim.graph.rings.RingClosure.isClosable().

◆ t1

◆ t2


The documentation for this class was generated from the following file: