$darkmode
|
DENOPTIM
|
Utility class to calculate and manage the alternative ring sizes achievable by formation of Rings.
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 Rings.
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().