$darkmode
DENOPTIM
|
Toll to add/remove dummy atoms from linearities or multi-hapto sites. More...
Public Member Functions | |
DummyAtomHandler (String elm, Logger logger) | |
Constructor defining a specific elemental symbol to consider the symbol of dummy atoms. More... | |
IAtomContainer | removeDummy (IAtomContainer mol) |
Removes all dummy atoms and the bonds connecting them to other atoms. More... | |
IAtomContainer | removeDummyInHapto (IAtomContainer mol) throws DENOPTIMException |
Static Public Member Functions | |
static void | addDummiesOnLinearities (Fragment frag, double angLim) |
Append dummy atoms on otherwise linear arrangements of atoms. More... | |
static IAtom | getDummyInSafeDirection (IAtom atmA, Point3d pB, IAtomContainer mol, List< Point3d > placesToAvoid) |
Generates a dummy atom 0.1 nm from atom A in a place that is safe for a dummy atom. More... | |
Package Attributes | |
int | recNum = 1 |
Private Member Functions | |
Set< IAtom > | exploreConnectedToAtom (IAtom seed, List< IAtom > inList, IAtomContainer mol, List< Boolean > doneFlag) |
Explore connected systems in a list of atoms and returns all the atoms that can be reached starting from the seed atom by moving only along connections between atoms in the initial list. More... | |
List< Boolean > | getFlagsVector (int size) |
Generates a vector of boolean flags. More... | |
Static Private Member Functions | |
static int | getSDFAtomNumber (IAtomContainer mol, IAtom atm) |
Private Attributes | |
String | elm = "" |
The elemental symbol that we consider to be the symbol of a dummy atom. More... | |
Logger | logger |
Program-specific logger. More... | |
Toll to add/remove dummy atoms from linearities or multi-hapto sites.
Definition at line 53 of file DummyAtomHandler.java.
denoptim.utils.DummyAtomHandler.DummyAtomHandler | ( | String | elm, |
Logger | logger | ||
) |
Constructor defining a specific elemental symbol to consider the symbol of dummy atoms.
elm | the elemental symbol that we consider to be the symbol of a dummy atom. |
logger |
Definition at line 78 of file DummyAtomHandler.java.
References denoptim.utils.DummyAtomHandler.elm, and denoptim.utils.DummyAtomHandler.logger.
|
static |
Append dummy atoms on otherwise linear arrangements of atoms.
This to allow the use of internal coordinates when doing 3d-modeling. Dummy atoms are connected to the central atom of a linear (or close-to-linear) bend. Attachment points are also taken into account. Dummy atoms with no attachment point and only one connected neighbor are assumed to be linearity-breaking dummy atoms. Therefore, no additional dummy is added on central atoms that already have such neighbor.
frag | the fragment to be modified. |
angLim | the upper limit for an angle before we consider it flat, i.e., 180 DEG angle. |
Definition at line 427 of file DummyAtomHandler.java.
References denoptim.graph.Fragment.addAtom(), denoptim.graph.Fragment.addBond(), denoptim.utils.MathUtils.angle(), denoptim.graph.Fragment.atoms(), denoptim.graph.Fragment.getAPCountOnAtom(), denoptim.graph.Fragment.getAPsFromAtom(), denoptim.graph.Fragment.getConnectedAtomsCount(), denoptim.graph.Fragment.getConnectedAtomsList(), denoptim.utils.DummyAtomHandler.getDummyInSafeDirection(), denoptim.graph.Fragment.getIAtomContainer(), denoptim.utils.MoleculeUtils.getPoint3d(), and denoptim.utils.MoleculeUtils.isDummy().
Referenced by denoptim.gui.GUIVertexInspector.initialize(), denoptim.ga.EAUtils.makeGraphFromFragmentationOfMol(), denoptim.fragmenter.FragmenterTools.manageFragmentCollection(), and denoptim.graph.FragmentTest.testIsomorphicInLinear().
|
private |
Explore connected systems in a list of atoms and returns all the atoms that can be reached starting from the seed atom by moving only along connections between atoms in the initial list.
seed | the atom from which to start |
inList | list of atoms to be considered |
mol | the molecular object containing all atoms in inList |
doneFlag | vector of boolean flags |
Definition at line 358 of file DummyAtomHandler.java.
References denoptim.utils.DummyAtomHandler.exploreConnectedToAtom(), and denoptim.utils.DummyAtomHandler.recNum.
Referenced by denoptim.utils.DummyAtomHandler.exploreConnectedToAtom(), and denoptim.utils.DummyAtomHandler.removeDummyInHapto().
|
static |
Generates a dummy atom 0.1 nm from atom A in a place that is safe for a dummy atom.
The be safe the position of the dummy has to respect 2 criteria:
The method try to use 90 and 45 DEG with respect to vector departing from atom A in direction given by point B.
atmA | first atom used to place the dummy |
pB | point defining the direction of interest when placing the dummy atom. |
mol | the molecular system |
placesToAvoid | points from which the new dummy should stay away. |
Definition at line 514 of file DummyAtomHandler.java.
References denoptim.constants.DENOPTIMConstants.DUMMYATMSYMBOL, denoptim.utils.CartesianSpaceUtils.getDiffOfVector(), denoptim.utils.CartesianSpaceUtils.getNormalDirection(), denoptim.utils.MoleculeUtils.getPoint3d(), denoptim.utils.CartesianSpaceUtils.getSumOfVector(), denoptim.utils.CartesianSpaceUtils.getVectorFromTo(), denoptim.utils.CartesianSpaceUtils.rotatedVectorWAxisAngle(), and denoptim.utils.CartesianSpaceUtils.translateOrigin().
Referenced by denoptim.utils.DummyAtomHandler.addDummiesOnLinearities().
|
private |
Generates a vector of boolean flags.
The size of the vector equals the number of atoms in the IAtomContainer. All flags are initialized to
false.
size | of vector of flags has to be generated. |
Definition at line 395 of file DummyAtomHandler.java.
Referenced by denoptim.utils.DummyAtomHandler.removeDummyInHapto().
|
staticprivate |
Definition at line 407 of file DummyAtomHandler.java.
Referenced by denoptim.utils.DummyAtomHandler.removeDummy(), and denoptim.utils.DummyAtomHandler.removeDummyInHapto().
IAtomContainer denoptim.utils.DummyAtomHandler.removeDummy | ( | IAtomContainer | mol | ) |
Removes all dummy atoms and the bonds connecting them to other atoms.
Definition at line 90 of file DummyAtomHandler.java.
References denoptim.constants.DENOPTIMConstants.DUMMYATMSYMBOL, denoptim.utils.DummyAtomHandler.elm, denoptim.utils.DummyAtomHandler.getSDFAtomNumber(), denoptim.utils.MoleculeUtils.getSymbolOrLabel(), denoptim.utils.DummyAtomHandler.logger, and denoptim.io.DenoptimIO.NL.
Referenced by denoptim.molecularmodeling.MultiMolecularModelBuilder.buildMulti3DStructure(), denoptim.fitness.FitnessProvider.getFitness(), and denoptim.utils.MoleculeUtils.getSMILESForMolecule().
IAtomContainer denoptim.utils.DummyAtomHandler.removeDummyInHapto | ( | IAtomContainer | mol | ) | throws DENOPTIMException |
Definition at line 144 of file DummyAtomHandler.java.
References denoptim.constants.DENOPTIMConstants.DUMMYATMSYMBOL, denoptim.utils.DummyAtomHandler.elm, denoptim.utils.DummyAtomHandler.exploreConnectedToAtom(), denoptim.utils.DummyAtomHandler.getFlagsVector(), denoptim.utils.DummyAtomHandler.getSDFAtomNumber(), denoptim.utils.MoleculeUtils.getSymbolOrLabel(), denoptim.utils.DummyAtomHandler.logger, denoptim.io.DenoptimIO.NL, and denoptim.io.DenoptimIO.writeSDFFile().
Referenced by denoptim.molecularmodeling.MultiMolecularModelBuilder.buildMulti3DStructure(), denoptim.utils.MoleculeUtils.generate2DCoordinates(), denoptim.fitness.FitnessProvider.getFitness(), denoptim.utils.MoleculeUtils.getInChIKeyForMolecule(), and denoptim.utils.MoleculeUtils.getSMILESForMolecule().
|
private |
The elemental symbol that we consider to be the symbol of a dummy atom.
Definition at line 58 of file DummyAtomHandler.java.
Referenced by denoptim.utils.DummyAtomHandler.DummyAtomHandler(), denoptim.utils.DummyAtomHandler.removeDummy(), and denoptim.utils.DummyAtomHandler.removeDummyInHapto().
|
private |
Program-specific logger.
Definition at line 66 of file DummyAtomHandler.java.
Referenced by denoptim.utils.DummyAtomHandler.DummyAtomHandler(), denoptim.utils.DummyAtomHandler.removeDummy(), and denoptim.utils.DummyAtomHandler.removeDummyInHapto().
|
package |
Definition at line 61 of file DummyAtomHandler.java.
Referenced by denoptim.utils.DummyAtomHandler.exploreConnectedToAtom().