rdkit.ForceField.rdForceField module¶
Exposes the ForceField class
- class rdkit.ForceField.rdForceField.ForceField¶
Bases:
objectA force field
- AddDistanceConstraint(self, idx1: int, idx2: int, minLen: float, maxLen: float, forceConstant: float) None¶
Adds a distance constraint to the UFF force field (deprecated, use UFFAddDistanceConstraint instead).
- AddExtraPoint(self, x: float, y: float, z: float, fixed: bool = True) int¶
Adds an extra point, this can be useful for adding constraints.
- CalcEnergy(self, pos: object | None = None) float¶
Returns the energy (in kcal/mol) of the current arrangement or of the supplied coordinate list (if non-empty)
- CalcGrad(self, pos: object | None = None) tuple¶
Returns a tuple filled with the per-coordinate gradients of the current arrangement or of the supplied coordinate list (if non-empty)
- Dimension(self) int¶
Returns the dimension of the ForceField
- GetExtraPointPos(self, idx: int) tuple¶
returns the location of an extra point as a tuple
- MMFFAddAngleConstraint(self, idx1: int, idx2: int, idx3: int, relative: bool, minAngleDeg: float, maxAngleDeg: float, forceConstant: float) None¶
Adds an angle constraint to the MMFF force field; if relative == True, then minAngleDeg and maxAngleDeg are intended as relative to the current angle.
- MMFFAddDistanceConstraint(self, idx1: int, idx2: int, relative: bool, minLen: float, maxLen: float, forceConstant: float) None¶
Adds a distance constraint to the MMFF force field; if relative == True, then minLen and maxLen are intended as relative to the current distance.
- MMFFAddPositionConstraint(self, idx: int, maxDispl: float, forceConstant: float) None¶
Adds a position constraint to the MMFF force field.
- MMFFAddTorsionConstraint(self, idx1: int, idx2: int, idx3: int, idx4: int, relative: bool, minDihedralDeg: float, maxDihedralDeg: float, forceConstant: float) None¶
Adds a dihedral angle constraint to the MMFF force field; if relative == True, then minDihedralDeg and maxDihedralDeg are intended as relative to the current dihedral angle.
- Minimize(self, maxIts: int = 200, forceTol: float = 0.0001, energyTol: float = 1e-06) int¶
Runs some minimization iterations.
Returns 0 if the minimization succeeded.
- MinimizeTrajectory(self, snapshotFreq: int, maxIts: int = 200, forceTol: float = 0.0001, energyTol: float = 1e-06) tuple¶
Runs some minimization iterations, recording the minimization trajectory every snapshotFreq steps.
Returns a (int, []) tuple; the int is 0 if the minimization succeeded, while the list contains Snapshot objects.
- NumPoints(self) int¶
Returns the number of points the ForceField is handling
- Positions(self) tuple¶
Returns a tuple filled with the coordinates of the points the ForceField is handling
- UFFAddAngleConstraint(self, idx1: int, idx2: int, idx3: int, relative: bool, minAngleDeg: float, maxAngleDeg: float, forceConstant: float) None¶
Adds an angle constraint to the UFF force field; if relative == True, then minAngleDeg and maxAngleDeg are intended as relative to the current angle.
- UFFAddDistanceConstraint(self, idx1: int, idx2: int, relative: bool, minLen: float, maxLen: float, forceConstant: float) None¶
Adds a distance constraint to the UFF force field; if relative == True, then minLen and maxLen are intended as relative to the current distance.
- UFFAddPositionConstraint(self, idx: int, maxDispl: float, forceConstant: float) None¶
Adds a position constraint to the UFF force field.
- UFFAddTorsionConstraint(self, idx1: int, idx2: int, idx3: int, idx4: int, relative: bool, minDihedralDeg: float, maxDihedralDeg: float, forceConstant: float) None¶
Adds a dihedral angle constraint to the UFF force field; if relative == True, then minDihedralDeg and maxDihedralDeg are intended as relative to the current dihedral angle.
- class rdkit.ForceField.rdForceField.MMFFMolProperties(self, mol: rdkit.Chem.rdchem.Mol, mmffVariant: str = 'MMFF94', verbosity: int = MMFFVerbosity.MMFF_VERBOSITY_NONE)¶
Bases:
objectMMFF molecular properties
- GetMMFFAngleBendParams(self, mol: rdkit.Chem.rdchem.Mol, idx1: int, idx2: int, idx3: int) object¶
Retrieves MMFF angle bend parameters for atoms with indexes idx1, idx2, idx3 as a (angleType, ka, theta0) tuple, or None if no parameters could be found
- GetMMFFAngleTerm(self) bool¶
Returns whether the angle term is included in the MMFF equation.
- GetMMFFAtomType(self, idx: int) int¶
Retrieves MMFF atom type for atom with index idx
- GetMMFFBondStretchParams(self, mol: rdkit.Chem.rdchem.Mol, idx1: int, idx2: int) object¶
Retrieves MMFF bond stretch parameters for atoms with indexes idx1, idx2 as a (bondType, kb, r0) tuple, or None if no parameters could be found
- GetMMFFBondTerm(self) bool¶
Returns whether the bond term is included in the MMFF equation.
- GetMMFFDielectricConstant(self) float¶
Returns the currently configured MMFF dielectric constant.
- GetMMFFDielectricModel(self) int¶
Returns the currently configured MMFF dielectric model (1: constant; 2: distance-dependent).
- GetMMFFEleTerm(self) bool¶
Returns whether the electrostatic term is included in the MMFF equation.
- GetMMFFFormalCharge(self, idx: int) float¶
Retrieves MMFF formal charge for atom with index idx
- GetMMFFOopBendParams(self, mol: rdkit.Chem.rdchem.Mol, idx1: int, idx2: int, idx3: int, idx4: int) object¶
Retrieves MMFF out-of-plane bending force constant for atoms with indexes idx1, idx2, idx3, idx4 as a koop float value
- GetMMFFOopTerm(self) bool¶
Returns whether the out-of-plane bend term is included in the MMFF equation.
- GetMMFFPartialCharge(self, idx: int) float¶
Retrieves MMFF partial charge for atom with index idx
- GetMMFFStretchBendParams(self, mol: rdkit.Chem.rdchem.Mol, idx1: int, idx2: int, idx3: int) object¶
Retrieves MMFF stretch-bend parameters for atoms with indexes idx1, idx2, idx3 as a (stretchBendType, kbaIJK, kbaKJI) tuple, or None if no parameters could be found
- GetMMFFStretchBendTerm(self) bool¶
Returns whether the stretch-bend term is included in the MMFF equation.
- GetMMFFTorsionParams(self, mol: rdkit.Chem.rdchem.Mol, idx1: int, idx2: int, idx3: int, idx4: int) object¶
Retrieves MMFF torsion parameters for atoms with indexes idx1, idx2, idx3, idx4 as a (torsionType, V1, V2, V3) tuple, or None if no parameters could be found
- GetMMFFTorsionTerm(self) bool¶
Returns whether the torsional term is included in the MMFF equation.
- GetMMFFVariant(self) str¶
Returns the currently configured MMFF variant (“MMFF94” or “MMFF94s”).
- GetMMFFVdWParams(self, idx1: int, idx2: int) object¶
Retrieves MMFF van der Waals parameters for atoms with indexes idx1, idx2 as a (R_ij_starUnscaled, epsilonUnscaled, R_ij_star, epsilon) tuple, or None if no parameters could be found
- GetMMFFVdWTerm(self) bool¶
Returns whether the Van der Waals term is included in the MMFF equation.
- SetMMFFAngleTerm(self, state: bool = True) None¶
Sets the angle term to be included in the MMFF equation (defaults to True)
- SetMMFFBondTerm(self, state: bool = True) None¶
Sets the bond term to be included in the MMFF equation (defaults to True)
- SetMMFFDielectricConstant(self, dielConst: float = 1.0) None¶
Sets the DielConst MMFF property (defaults to 1.0)
- SetMMFFDielectricModel(self, dielModel: int = 1) None¶
Sets the DielModel MMFF property (1: constant; 2: distance-dependent; defaults to constant)
- SetMMFFEleTerm(self, state: bool = True) None¶
Sets the electrostatic term to be included in the MMFF equation (defaults to True)
- SetMMFFOopTerm(self, state: bool = True) None¶
Sets the out-of-plane bend term to be included in the MMFF equation (defaults to True)
- SetMMFFStretchBendTerm(self, state: bool = True) None¶
Sets the stretch-bend term to be included in the MMFF equation (defaults to True)
- SetMMFFTorsionTerm(self, state: bool = True) None¶
Sets the torsional term to be included in the MMFF equation (defaults to True)
- SetMMFFVariant(self, mmffVariant: str = 'MMFF94') None¶
Sets the MMFF variant to be used (“MMFF94” or “MMFF94s”; defaults to “MMFF94”)
- class rdkit.ForceField.rdForceField.MMFFVerbosity(*values)¶
Bases:
Enum- MMFF_VERBOSITY_HIGH = 2¶
- MMFF_VERBOSITY_LOW = 1¶
- MMFF_VERBOSITY_NONE = 0¶
- class rdkit.ForceField.rdForceField.Snapshot¶
Bases:
objectA snapshot of atomic coordinates from a minimization trajectory
- GetEnergy(self) float¶
Returns the energy for this Snapshot
- GetPoint2D(self, pointNum: int) rdkit.Geometry.rdGeometry.Point2D¶
Returns the coordinates at pointNum as a Point2D object; requires the Trajectory dimension to be == 2
- GetPoint3D(self, pointNum: int) rdkit.Geometry.rdGeometry.Point3D¶
Returns the coordinates at pointNum as a Point3D object; requires the Trajectory dimension to be >= 2