$darkmode
DENOPTIM
|
Toolkit to perform ring closing conformational search. More...
Classes | |
class | RingClosedMolComparator |
Compares the Molecule3DBuilder afters ring closing-biased conformational adaptation. More... | |
Public Member Functions | |
RingClosureTool (MMBuilderParameters settings) | |
Construct an empty RingClosureTool. More... | |
ArrayList< ChemicalObjectModel > | attemptAllRingClosures (ChemicalObjectModel mol) throws DENOPTIMException, TinkerException |
Performs one or more attempts to close rings by conformational adaptation. More... | |
ChemicalObjectModel | attemptRingClosure (ChemicalObjectModel chemObj, Set< ObjectPair > rcaCombination) throws DENOPTIMException, TinkerException |
Attempts to close rings by finding the conformation that allows to join heads and tails of atom specific chains. More... | |
void | closeRings (ChemicalObjectModel mol, Set< ObjectPair > rcaCombination) |
Makes new rings by connecting pairs of atoms that hold properly arranged RingClosingAttractors. More... | |
void | saturateRingClosingAttractor (ChemicalObjectModel mol) throws DENOPTIMException |
Looks for unused RingClosingAttractors and attach proper capping group saturating the free valency/bonding capability represented by free RingClosingAttractors. More... | |
Package Attributes | |
final String | fsep = System.getProperty("file.separator") |
File separator. More... | |
Private Member Functions | |
void | setTinkerTypes (TinkerMolecule tmol) throws DENOPTIMException |
Conversion to tinker IC may not always have the necessary atom types. More... | |
Private Attributes | |
int | itn = 0 |
Iteration counter for making unique filenames. More... | |
MMBuilderParameters | settings |
Settings controlling the calculation. More... | |
Logger | logger |
Program.specific logger. More... | |
Toolkit to perform ring closing conformational search.
This tool makes use of Tinker's PSSROT engine.
Definition at line 58 of file RingClosureTool.java.
denoptim.molecularmodeling.RingClosureTool.RingClosureTool | ( | MMBuilderParameters | settings | ) |
Construct an empty RingClosureTool.
Definition at line 85 of file RingClosureTool.java.
References denoptim.programs.RunTimeParameters.getLogger(), and denoptim.molecularmodeling.RingClosureTool.settings.
ArrayList< ChemicalObjectModel > denoptim.molecularmodeling.RingClosureTool.attemptAllRingClosures | ( | ChemicalObjectModel | mol | ) | throws DENOPTIMException, TinkerException |
Performs one or more attempts to close rings by conformational adaptation.
The number of attempts (i.e, different set of rings) and the list of definition of each attempt are defined into the object provided as input. If no ring closure is possible, returns an empty array.
mol | the input molecular system |
DENOPTIMException | |
TinkerException |
Definition at line 146 of file RingClosureTool.java.
References denoptim.molecularmodeling.RingClosureTool.attemptRingClosure(), denoptim.molecularmodeling.ChemicalObjectModel.deepcopy(), denoptim.molecularmodeling.ChemicalObjectModel.getIAtomContainer(), denoptim.molecularmodeling.ChemicalObjectModel.getNewRingClosures(), denoptim.molecularmodeling.ChemicalObjectModel.getRCACombinations(), denoptim.molecularmodeling.RingClosureTool.logger, and denoptim.constants.DENOPTIMConstants.MOLERRORTAG.
Referenced by denoptim.molecularmodeling.MultiMolecularModelBuilder.buildMulti3DStructure().
ChemicalObjectModel denoptim.molecularmodeling.RingClosureTool.attemptRingClosure | ( | ChemicalObjectModel | chemObj, |
Set< ObjectPair > | rcaCombination | ||
) | throws DENOPTIMException, TinkerException |
Attempts to close rings by finding the conformation that allows to join heads and tails of atom specific chains.
To this end a Potential Smoothing and Search conformational search in ROTational space (PSSROT) is performed under the effect of the Ring Closing potential, that defines which atoms (chain head/tails) attract each other. The PSSROT engine is provided by an ad hoc modified version of Tinker (call to external tool).
chemObj | the definition of the system to work with. This system will be modified. |
rcaCombination | the combination of RingClosingAttractors. This object defines which pairs of RingClosingAttractors will we try to join in this attempt. |
DENOPTIMException | |
TinkerException |
Definition at line 268 of file RingClosureTool.java.
References denoptim.molecularmodeling.RingClosureTool.closeRings(), denoptim.files.FileUtils.deleteFilesContaining(), denoptim.programs.moldecularmodelbuilder.MMBuilderParameters.getInitPSSROTParams(), denoptim.graph.rings.RingClosingAttractor.getParamA11(), denoptim.graph.rings.RingClosingAttractor.getParamB11(), denoptim.programs.moldecularmodelbuilder.MMBuilderParameters.getParamFile(), denoptim.programs.moldecularmodelbuilder.MMBuilderParameters.getPSSROTTool(), denoptim.programs.moldecularmodelbuilder.MMBuilderParameters.getRestPSSROTParams(), denoptim.programs.moldecularmodelbuilder.MMBuilderParameters.getRSKeyFileParams(), denoptim.graph.rings.RingClosingAttractor.getSrcAtom(), denoptim.programs.moldecularmodelbuilder.MMBuilderParameters.getTaskID(), denoptim.programs.moldecularmodelbuilder.MMBuilderParameters.getWorkingDirectory(), denoptim.programs.moldecularmodelbuilder.MMBuilderParameters.getXYZINTTool(), denoptim.molecularmodeling.RingClosureTool.itn, denoptim.molecularmodeling.RingClosureTool.logger, denoptim.integration.tinker.ConformationalSearchPSSROT.performPSSROT(), denoptim.molecularmodeling.RingClosureTool.saturateRingClosingAttractor(), and denoptim.molecularmodeling.RingClosureTool.settings.
Referenced by denoptim.molecularmodeling.RingClosureTool.attemptAllRingClosures().
void denoptim.molecularmodeling.RingClosureTool.closeRings | ( | ChemicalObjectModel | mol, |
Set< ObjectPair > | rcaCombination | ||
) |
Makes new rings by connecting pairs of atoms that hold properly arranged RingClosingAttractors.
mol | the molecular system |
rcaCombination | the combination of RingClosingAttractors. This object defines which pairs of RingClosingAttractors will we try to join in this attempt. |
Definition at line 363 of file RingClosureTool.java.
References denoptim.molecularmodeling.ChemicalObjectModel.addBond(), denoptim.programs.RunTimeParameters.containsParameters(), denoptim.graph.rings.RingClosingAttractor.getIAtom(), denoptim.programs.RunTimeParameters.getParameters(), denoptim.graph.rings.RingClosingAttractor.getRCBondType(), denoptim.graph.rings.RingClosureParameters.getRCDistTolerance(), denoptim.graph.rings.RingClosureParameters.getRCDotPrTolerance(), denoptim.graph.rings.RingClosingAttractor.getSrcAtom(), denoptim.graph.Edge.BondType.hasCDKAnalogue(), denoptim.graph.rings.RingClosure.isClosable(), denoptim.molecularmodeling.RingClosureTool.logger, denoptim.programs.RunTimeParameters.ParametersType.RC_PARAMS, denoptim.molecularmodeling.RingClosureTool.settings, and denoptim.graph.rings.RingClosingAttractor.setUsed().
Referenced by denoptim.molecularmodeling.RingClosureTool.attemptRingClosure().
void denoptim.molecularmodeling.RingClosureTool.saturateRingClosingAttractor | ( | ChemicalObjectModel | mol | ) | throws DENOPTIMException |
Looks for unused RingClosingAttractors and attach proper capping group saturating the free valency/bonding capability represented by free RingClosingAttractors.
TODO: make this method choose a proper capping group (if any) and use that to saturate the free AP Note that to do that the capping og the RingClosure-related APclasses must be reported in the CompatibilityMatrix. Thus, it is also necessary to make DenoptimGA prefer RingClosure-related APclasses over other capping groups
mol | the molecule |
Definition at line 444 of file RingClosureTool.java.
References denoptim.constants.DENOPTIMConstants.DUMMYATMSYMBOL, denoptim.integration.tinker.TinkerMolecule.getAtom(), denoptim.integration.tinker.TinkerAtom.getDistAngle(), denoptim.integration.tinker.TinkerAtom.setAtomString(), denoptim.integration.tinker.TinkerAtom.setDistAngle(), and denoptim.molecularmodeling.RingClosureTool.setTinkerTypes().
Referenced by denoptim.molecularmodeling.RingClosureTool.attemptRingClosure(), and denoptim.molecularmodeling.MultiMolecularModelBuilder.buildMulti3DStructure().
|
private |
Conversion to tinker IC may not always have the necessary atom types.
In order to fix this, we add user defined atom types.
TODO: this method (from DENOPTIM3DMoleculeBuilder.java) should be made public and moved to a more sensible location (i.e., a class of utilities for tinker methods)
tmol | The tinker IC representation |
DENOPTIMException |
Definition at line 104 of file RingClosureTool.java.
References denoptim.integration.tinker.TinkerAtom.getAtomString(), denoptim.programs.moldecularmodelbuilder.MMBuilderParameters.getTinkerMap(), denoptim.molecularmodeling.RingClosureTool.logger, denoptim.integration.tinker.TinkerAtom.setAtomType(), and denoptim.molecularmodeling.RingClosureTool.settings.
Referenced by denoptim.molecularmodeling.RingClosureTool.saturateRingClosingAttractor().
|
package |
File separator.
Definition at line 68 of file RingClosureTool.java.
|
private |
Iteration counter for making unique filenames.
Definition at line 63 of file RingClosureTool.java.
Referenced by denoptim.molecularmodeling.RingClosureTool.attemptRingClosure().
|
private |
Program.specific logger.
Definition at line 78 of file RingClosureTool.java.
Referenced by denoptim.molecularmodeling.RingClosureTool.attemptAllRingClosures(), denoptim.molecularmodeling.RingClosureTool.attemptRingClosure(), denoptim.molecularmodeling.RingClosureTool.closeRings(), and denoptim.molecularmodeling.RingClosureTool.setTinkerTypes().
|
private |
Settings controlling the calculation.
Definition at line 73 of file RingClosureTool.java.
Referenced by denoptim.molecularmodeling.RingClosureTool.attemptRingClosure(), denoptim.molecularmodeling.RingClosureTool.closeRings(), denoptim.molecularmodeling.RingClosureTool.RingClosureTool(), and denoptim.molecularmodeling.RingClosureTool.setTinkerTypes().