$darkmode
DENOPTIM
|
Utility class to calculate and manage the alternative ring sizes achievable by formation of Ring
s.
More...
Public Member Functions | |
RingSizeManager (FragmentSpace fragSpace, RingClosureParameters rcParams) | |
Creates a tool that will work according to the given system-aspecific settings. More... | |
void | initialize (IAtomContainer origMol, DGraph graph) |
Makes this ring size manager work on a specific system that has a molecular representation and a DENOPTIM's graph representation. More... | |
List< Vertex > | getRSBiasedListOfCandidates () |
List< Vertex > | getRSBiasedListOfCandidates (Vertex vI) |
void | addRingClosingBond (Vertex vI, Vertex vJ) |
void | setVertexAsDone (Vertex v) |
boolean | getCompatibilityOfPair (Vertex vI, Vertex vJ) |
Private Member Functions | |
void | fillTopologicalMatrix () |
void | calculateCompatibilityOfAllRCAPairs () |
boolean | evaluateRCVPair (Vertex vI, Vertex vJ, FragmentSpace fragSpace) |
Method to analyze a pair of vertices and evaluate whether they respect the criteria for being the two ends of a candidate closable chain: a pair of Ring Closing Vertices (RCV). More... | |
Private Attributes | |
IAtomContainer | mol |
Molecular representation of the current system. More... | |
int[][] | topoMat |
Topological matrix: contains the number of bonds (shortest path) separating the two atoms having index i and j in the current system. More... | |
ArrayList< Vertex > | lstVert |
List of Ring Closing Vertices (RCV as DENOPTIMVerex) each containing an available Ring Closing Attractor (RCA) More... | |
int | sz |
Size of the list of available RCAs. More... | |
boolean[][] | compatibilityOfPairs |
Compatibility matrix between pairs of RCAs in the current system. More... | |
List< Double > | weigths |
List of weight factors used to control the likeliness of choosing rings of a given size for the current system. More... | |
List< Boolean > | done |
List of flags defining if an RCA has been "used", i.e., not used to make an actual chord, but used to make a plan to make a chord and update the molecular representation accordingly. More... | |
Map< Vertex, ArrayList< Integer > > | vIdToAtmId |
Map linking the list of vertices and atoms. More... | |
List< Integer > | ringSizeBias |
Parameters setting the bias for selecting rings of given size. More... | |
FragmentSpace | fragSpace = null |
Definition of the fragment space. More... | |
RingClosureParameters | settings |
Parameters related to rings. More... | |
Logger | logger |
tool managing the logs More... | |
Static Private Attributes | |
static final String | NL = DENOPTIMConstants.EOL |
New line character. More... | |
Utility class to calculate and manage the alternative ring sizes achievable by formation of Ring
s.
Definition at line 35 of file RingSizeManager.java.
denoptim.graph.rings.RingSizeManager.RingSizeManager | ( | FragmentSpace | fragSpace, |
RingClosureParameters | rcParams | ||
) |
Creates a tool that will work according to the given system-aspecific settings.
fragSpace | the space of building blocks. |
rcParams | the parameters pertaining ring closures. |
Definition at line 115 of file RingSizeManager.java.
References denoptim.graph.rings.RingSizeManager.fragSpace, denoptim.programs.RunTimeParameters.getLogger(), and denoptim.graph.rings.RingClosureParameters.getRingSizeBias().
Definition at line 466 of file RingSizeManager.java.
References denoptim.graph.rings.RingSizeManager.calculateCompatibilityOfAllRCAPairs(), denoptim.graph.rings.RingSizeManager.fillTopologicalMatrix(), denoptim.graph.Edge.getBondType(), denoptim.graph.Edge.BondType.getCDKOrder(), denoptim.graph.Vertex.getEdgeToParent(), denoptim.graph.Edge.BondType.hasCDKAnalogue(), denoptim.graph.rings.RingSizeManager.logger, denoptim.graph.rings.RingSizeManager.mol, and denoptim.graph.rings.RingSizeManager.vIdToAtmId.
Referenced by denoptim.graph.rings.RandomCombOfRingsIterator.next().
|
private |
Definition at line 199 of file RingSizeManager.java.
References denoptim.graph.rings.RingSizeManager.compatibilityOfPairs, denoptim.graph.rings.RingSizeManager.evaluateRCVPair(), denoptim.graph.rings.RingSizeManager.fragSpace, denoptim.graph.rings.RingClosureParameters.getMaxRingSize(), denoptim.graph.rings.RingClosingAttractor.isAttractor(), denoptim.graph.rings.RingClosingAttractor.isCompatible(), denoptim.graph.rings.RingSizeManager.logger, denoptim.graph.rings.RingSizeManager.lstVert, denoptim.graph.rings.RingSizeManager.mol, denoptim.graph.rings.RingSizeManager.NL, denoptim.graph.rings.RingSizeManager.ringSizeBias, denoptim.graph.rings.RingSizeManager.settings, denoptim.graph.rings.RingSizeManager.sz, denoptim.graph.rings.RingSizeManager.topoMat, denoptim.graph.rings.RingSizeManager.vIdToAtmId, and denoptim.graph.rings.RingSizeManager.weigths.
Referenced by denoptim.graph.rings.RingSizeManager.addRingClosingBond(), and denoptim.graph.rings.RingSizeManager.initialize().
|
private |
Method to analyze a pair of vertices and evaluate whether they respect the criteria for being the two ends of a candidate closable chain: a pair of Ring Closing Vertices (RCV).
vI | first vertex |
vJ | second vertex |
true
is the path satisfies the criteria Definition at line 316 of file RingSizeManager.java.
References denoptim.graph.rings.RingSizeManager.fragSpace, denoptim.graph.AttachmentPoint.getAtomPositionNumber(), denoptim.graph.Vertex.getAttachmentPoints(), denoptim.graph.Vertex.getEdgeToParent(), denoptim.graph.Vertex.getParent(), denoptim.fragspace.FragmentSpace.getRCCompatibilityMatrix(), denoptim.graph.Edge.getSrcAPClass(), denoptim.graph.Edge.getSrcAPID(), and denoptim.graph.rings.RingSizeManager.logger.
Referenced by denoptim.graph.rings.RingSizeManager.calculateCompatibilityOfAllRCAPairs().
|
private |
Definition at line 167 of file RingSizeManager.java.
References denoptim.graph.rings.RingSizeManager.logger, denoptim.graph.rings.RingSizeManager.mol, denoptim.graph.rings.RingSizeManager.NL, and denoptim.graph.rings.RingSizeManager.topoMat.
Referenced by denoptim.graph.rings.RingSizeManager.addRingClosingBond(), and denoptim.graph.rings.RingSizeManager.initialize().
Definition at line 516 of file RingSizeManager.java.
References denoptim.graph.rings.RingSizeManager.compatibilityOfPairs, and denoptim.graph.rings.RingSizeManager.lstVert.
Referenced by denoptim.graph.rings.CyclicGraphHandler.getPossibleCombinationOfRings(), and denoptim.graph.rings.RingSizeManagerTest.testEvaluateRCVPair().
List< Vertex > denoptim.graph.rings.RingSizeManager.getRSBiasedListOfCandidates | ( | ) |
Definition at line 391 of file RingSizeManager.java.
References denoptim.graph.rings.RingSizeManager.done, denoptim.graph.rings.RingSizeManager.logger, denoptim.graph.rings.RingSizeManager.lstVert, denoptim.graph.rings.RingSizeManager.sz, and denoptim.graph.rings.RingSizeManager.weigths.
Referenced by denoptim.graph.rings.RandomCombOfRingsIterator.next(), and denoptim.graph.rings.RingSizeManagerTest.testEvaluateRCVPair().
Definition at line 414 of file RingSizeManager.java.
References denoptim.graph.rings.RingSizeManager.compatibilityOfPairs, denoptim.graph.rings.RingSizeManager.done, denoptim.graph.rings.RingClosureParameters.getMaxRingSize(), denoptim.graph.rings.RingSizeManager.logger, denoptim.graph.rings.RingSizeManager.lstVert, denoptim.graph.rings.RingSizeManager.ringSizeBias, denoptim.graph.rings.RingSizeManager.settings, denoptim.graph.rings.RingSizeManager.sz, denoptim.graph.rings.RingSizeManager.topoMat, and denoptim.graph.rings.RingSizeManager.vIdToAtmId.
void denoptim.graph.rings.RingSizeManager.initialize | ( | IAtomContainer | origMol, |
DGraph | graph | ||
) |
Makes this ring size manager work on a specific system that has a molecular representation and a DENOPTIM's graph representation.
origMol | the molecular representation. |
graph | the graph representation. |
DENOPTIMException |
Definition at line 133 of file RingSizeManager.java.
References denoptim.graph.rings.RingSizeManager.calculateCompatibilityOfAllRCAPairs(), denoptim.graph.rings.RingSizeManager.done, denoptim.graph.rings.RingSizeManager.fillTopologicalMatrix(), denoptim.graph.DGraph.getFreeRCVertices(), denoptim.utils.MoleculeUtils.getVertexToAtomIdMap(), denoptim.graph.rings.RingSizeManager.lstVert, denoptim.graph.rings.RingSizeManager.mol, denoptim.graph.rings.RingSizeManager.sz, and denoptim.graph.rings.RingSizeManager.vIdToAtmId.
Referenced by denoptim.graph.rings.CyclicGraphHandler.getPossibleCombinationOfRings(), denoptim.graph.rings.RandomCombOfRingsIterator.next(), and denoptim.graph.rings.RingSizeManagerTest.testEvaluateRCVPair().
void denoptim.graph.rings.RingSizeManager.setVertexAsDone | ( | Vertex | v | ) |
Definition at line 509 of file RingSizeManager.java.
References denoptim.graph.rings.RingSizeManager.done, and denoptim.graph.rings.RingSizeManager.lstVert.
Referenced by denoptim.graph.rings.RandomCombOfRingsIterator.next().
|
private |
Compatibility matrix between pairs of RCAs in the current system.
Definition at line 62 of file RingSizeManager.java.
Referenced by denoptim.graph.rings.RingSizeManager.calculateCompatibilityOfAllRCAPairs(), denoptim.graph.rings.RingSizeManager.getCompatibilityOfPair(), and denoptim.graph.rings.RingSizeManager.getRSBiasedListOfCandidates().
|
private |
List of flags defining if an RCA has been "used", i.e., not used to make an actual chord, but used to make a plan to make a chord and update the molecular representation accordingly.
Definition at line 75 of file RingSizeManager.java.
Referenced by denoptim.graph.rings.RingSizeManager.getRSBiasedListOfCandidates(), denoptim.graph.rings.RingSizeManager.initialize(), and denoptim.graph.rings.RingSizeManager.setVertexAsDone().
|
private |
Definition of the fragment space.
Definition at line 90 of file RingSizeManager.java.
Referenced by denoptim.graph.rings.RingSizeManager.calculateCompatibilityOfAllRCAPairs(), denoptim.graph.rings.RingSizeManager.evaluateRCVPair(), and denoptim.graph.rings.RingSizeManager.RingSizeManager().
|
private |
tool managing the logs
Definition at line 100 of file RingSizeManager.java.
Referenced by denoptim.graph.rings.RingSizeManager.addRingClosingBond(), denoptim.graph.rings.RingSizeManager.calculateCompatibilityOfAllRCAPairs(), denoptim.graph.rings.RingSizeManager.evaluateRCVPair(), denoptim.graph.rings.RingSizeManager.fillTopologicalMatrix(), and denoptim.graph.rings.RingSizeManager.getRSBiasedListOfCandidates().
|
private |
List of Ring Closing Vertices (RCV as DENOPTIMVerex) each containing an available Ring Closing Attractor (RCA)
Definition at line 52 of file RingSizeManager.java.
Referenced by denoptim.graph.rings.RingSizeManager.calculateCompatibilityOfAllRCAPairs(), denoptim.graph.rings.RingSizeManager.getCompatibilityOfPair(), denoptim.graph.rings.RingSizeManager.getRSBiasedListOfCandidates(), denoptim.graph.rings.RingSizeManager.initialize(), and denoptim.graph.rings.RingSizeManager.setVertexAsDone().
|
private |
Molecular representation of the current system.
Definition at line 40 of file RingSizeManager.java.
Referenced by denoptim.graph.rings.RingSizeManager.addRingClosingBond(), denoptim.graph.rings.RingSizeManager.calculateCompatibilityOfAllRCAPairs(), denoptim.graph.rings.RingSizeManager.fillTopologicalMatrix(), and denoptim.graph.rings.RingSizeManager.initialize().
|
staticprivate |
New line character.
Definition at line 105 of file RingSizeManager.java.
Referenced by denoptim.graph.rings.RingSizeManager.calculateCompatibilityOfAllRCAPairs(), and denoptim.graph.rings.RingSizeManager.fillTopologicalMatrix().
|
private |
Parameters setting the bias for selecting rings of given size.
Definition at line 85 of file RingSizeManager.java.
Referenced by denoptim.graph.rings.RingSizeManager.calculateCompatibilityOfAllRCAPairs(), and denoptim.graph.rings.RingSizeManager.getRSBiasedListOfCandidates().
|
private |
Parameters related to rings.
Definition at line 95 of file RingSizeManager.java.
Referenced by denoptim.graph.rings.RingSizeManager.calculateCompatibilityOfAllRCAPairs(), and denoptim.graph.rings.RingSizeManager.getRSBiasedListOfCandidates().
|
private |
Size of the list of available RCAs.
Definition at line 57 of file RingSizeManager.java.
Referenced by denoptim.graph.rings.RingSizeManager.calculateCompatibilityOfAllRCAPairs(), denoptim.graph.rings.RingSizeManager.getRSBiasedListOfCandidates(), and denoptim.graph.rings.RingSizeManager.initialize().
|
private |
Topological matrix: contains the number of bonds (shortest path) separating the two atoms having index i and j in the current system.
Definition at line 46 of file RingSizeManager.java.
Referenced by denoptim.graph.rings.RingSizeManager.calculateCompatibilityOfAllRCAPairs(), denoptim.graph.rings.RingSizeManager.fillTopologicalMatrix(), and denoptim.graph.rings.RingSizeManager.getRSBiasedListOfCandidates().
|
private |
Map linking the list of vertices and atoms.
Definition at line 80 of file RingSizeManager.java.
Referenced by denoptim.graph.rings.RingSizeManager.addRingClosingBond(), denoptim.graph.rings.RingSizeManager.calculateCompatibilityOfAllRCAPairs(), denoptim.graph.rings.RingSizeManager.getRSBiasedListOfCandidates(), and denoptim.graph.rings.RingSizeManager.initialize().
|
private |
List of weight factors used to control the likeliness of choosing rings of a given size for the current system.
Definition at line 68 of file RingSizeManager.java.
Referenced by denoptim.graph.rings.RingSizeManager.calculateCompatibilityOfAllRCAPairs(), and denoptim.graph.rings.RingSizeManager.getRSBiasedListOfCandidates().