RDKit
Open-source cheminformatics and machine learning.
Loading...
Searching...
No Matches
RDKit::MMFF Namespace Reference

Namespaces

namespace  DefaultParameters
 
namespace  Tools
 

Classes

class  MMFFAtomProperties
 
class  MMFFMolProperties
 

Typedefs

typedef boost::shared_ptr< MMFFAtomPropertiesMMFFAtomPropertiesPtr
 

Enumerations

enum  { CONSTANT = 1 , DISTANCE = 2 }
 
enum  { MMFF_VERBOSITY_NONE = 0 , MMFF_VERBOSITY_LOW = 1 , MMFF_VERBOSITY_HIGH = 2 }
 

Functions

RDKIT_FORCEFIELDHELPERS_EXPORT unsigned int isAngleInRingOfSize3or4 (const ROMol &mol, const unsigned int idx1, const unsigned int idx2, const unsigned int idx3)
 
RDKIT_FORCEFIELDHELPERS_EXPORT unsigned int isTorsionInRingOfSize4or5 (const ROMol &mol, const unsigned int idx1, const unsigned int idx2, const unsigned int idx3, const unsigned int idx4)
 
RDKIT_FORCEFIELDHELPERS_EXPORT bool isRingAromatic (const ROMol &mol, const INT_VECT &ringIndxVect)
 
RDKIT_FORCEFIELDHELPERS_EXPORT bool isAtomInAromaticRingOfSize (const Atom *atom, const unsigned int ringSize)
 
RDKIT_FORCEFIELDHELPERS_EXPORT bool isAtomNOxide (const Atom *atom)
 
RDKIT_FORCEFIELDHELPERS_EXPORT bool areAtomsInSameAromaticRing (const ROMol &mol, const unsigned int idx1, const unsigned int idx2)
 
RDKIT_FORCEFIELDHELPERS_EXPORT bool areAtomsInSameRingOfSize (const ROMol &mol, const unsigned int ringSize, const unsigned int numAtoms,...)
 
RDKIT_FORCEFIELDHELPERS_EXPORT unsigned int sanitizeMMFFMol (RWMol &mol)
 
RDKIT_FORCEFIELDHELPERS_EXPORT void setMMFFAromaticity (RWMol &mol)
 
RDKIT_FORCEFIELDHELPERS_EXPORT unsigned int getMMFFStretchBendType (const unsigned int angleType, const unsigned int bondType1, const unsigned int bondType2)
 
RDKIT_FORCEFIELDHELPERS_EXPORT unsigned int getPeriodicTableRow (const int atomicNum)
 
RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFAnglegetMMFFAngleBendEmpiricalRuleParams (const ROMol &mol, const ForceFields::MMFF::MMFFAngle *oldMMFFAngleParams, const ForceFields::MMFF::MMFFProp *mmffPropParamsCentralAtom, const ForceFields::MMFF::MMFFBond *mmffBondParams1, const ForceFields::MMFF::MMFFBond *mmffBondParams2, unsigned int idx1, unsigned int idx2, unsigned int idx3)
 
RDKIT_FORCEFIELDHELPERS_EXPORT ForceFields::ForceFieldconstructForceField (ROMol &mol, double nonBondedThresh=100.0, int confId=-1, bool ignoreInterfragInteractions=true)
 Builds and returns a MMFF force field for a molecule.
 
RDKIT_FORCEFIELDHELPERS_EXPORT ForceFields::ForceFieldconstructForceField (ROMol &mol, MMFFMolProperties *mmffMolProperties, double nonBondedThresh=100.0, int confId=-1, bool ignoreInterfragInteractions=true)
 Builds and returns a MMFF force field for a molecule.
 
std::pair< int, doubleMMFFOptimizeMolecule (ROMol &mol, int maxIters=1000, std::string mmffVariant="MMFF94", double nonBondedThresh=10.0, int confId=-1, bool ignoreInterfragInteractions=true)
 Convenience function for optimizing a molecule using MMFF.
 
void MMFFOptimizeMoleculeConfs (ROMol &mol, std::vector< std::pair< int, double > > &res, int numThreads=1, int maxIters=1000, std::string mmffVariant="MMFF94", double nonBondedThresh=10.0, bool ignoreInterfragInteractions=true)
 

Typedef Documentation

◆ MMFFAtomPropertiesPtr

Definition at line 67 of file MMFF/AtomTyper.h.

Enumeration Type Documentation

◆ anonymous enum

Enumerator
CONSTANT 
DISTANCE 

Definition at line 68 of file MMFF/AtomTyper.h.

◆ anonymous enum

Enumerator
MMFF_VERBOSITY_NONE 
MMFF_VERBOSITY_LOW 
MMFF_VERBOSITY_HIGH 

Definition at line 69 of file MMFF/AtomTyper.h.

Function Documentation

◆ areAtomsInSameAromaticRing()

RDKIT_FORCEFIELDHELPERS_EXPORT bool RDKit::MMFF::areAtomsInSameAromaticRing ( const ROMol mol,
const unsigned int  idx1,
const unsigned int  idx2 
)

◆ areAtomsInSameRingOfSize()

RDKIT_FORCEFIELDHELPERS_EXPORT bool RDKit::MMFF::areAtomsInSameRingOfSize ( const ROMol mol,
const unsigned int  ringSize,
const unsigned int  numAtoms,
  ... 
)

◆ constructForceField() [1/2]

RDKIT_FORCEFIELDHELPERS_EXPORT ForceFields::ForceField * RDKit::MMFF::constructForceField ( ROMol mol,
double  nonBondedThresh = 100.0,
int  confId = -1,
bool  ignoreInterfragInteractions = true 
)

Builds and returns a MMFF force field for a molecule.

Parameters
molthe molecule to use
nonBondedThreshthe threshold to be used in adding non-bonded terms to the force field. Any non-bonded contact whose current distance is greater than nonBondedThresh * the minimum value for that contact will not be included.
confIdthe optional conformer id, if this isn't provided, the molecule's default confId will be used.
ignoreInterfragInteractionsif true, nonbonded terms will not be added between fragments
Returns
the new force field. The client is responsible for free'ing this.

Referenced by MMFFOptimizeMolecule(), and MMFFOptimizeMoleculeConfs().

◆ constructForceField() [2/2]

RDKIT_FORCEFIELDHELPERS_EXPORT ForceFields::ForceField * RDKit::MMFF::constructForceField ( ROMol mol,
MMFFMolProperties mmffMolProperties,
double  nonBondedThresh = 100.0,
int  confId = -1,
bool  ignoreInterfragInteractions = true 
)

Builds and returns a MMFF force field for a molecule.

Parameters
molthe molecule to use
mmffMolPropertiespointer to a MMFFMolProperties object
nonBondedThreshthe threshold to be used in adding non-bonded terms to the force field. Any non-bonded contact whose current distance is greater than nonBondedThresh * the minimum value for that contact will not be included.
confIdthe optional conformer id, if this isn't provided, the molecule's default confId will be used.
ignoreInterfragInteractionsif true, nonbonded terms will not be added between fragments
Returns
the new force field. The client is responsible for free'ing this.

◆ getMMFFAngleBendEmpiricalRuleParams()

RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFAngle * RDKit::MMFF::getMMFFAngleBendEmpiricalRuleParams ( const ROMol mol,
const ForceFields::MMFF::MMFFAngle oldMMFFAngleParams,
const ForceFields::MMFF::MMFFProp mmffPropParamsCentralAtom,
const ForceFields::MMFF::MMFFBond mmffBondParams1,
const ForceFields::MMFF::MMFFBond mmffBondParams2,
unsigned int  idx1,
unsigned int  idx2,
unsigned int  idx3 
)

◆ getMMFFStretchBendType()

RDKIT_FORCEFIELDHELPERS_EXPORT unsigned int RDKit::MMFF::getMMFFStretchBendType ( const unsigned int  angleType,
const unsigned int  bondType1,
const unsigned int  bondType2 
)

◆ getPeriodicTableRow()

RDKIT_FORCEFIELDHELPERS_EXPORT unsigned int RDKit::MMFF::getPeriodicTableRow ( const int  atomicNum)

◆ isAngleInRingOfSize3or4()

RDKIT_FORCEFIELDHELPERS_EXPORT unsigned int RDKit::MMFF::isAngleInRingOfSize3or4 ( const ROMol mol,
const unsigned int  idx1,
const unsigned int  idx2,
const unsigned int  idx3 
)

◆ isAtomInAromaticRingOfSize()

RDKIT_FORCEFIELDHELPERS_EXPORT bool RDKit::MMFF::isAtomInAromaticRingOfSize ( const Atom atom,
const unsigned int  ringSize 
)

◆ isAtomNOxide()

RDKIT_FORCEFIELDHELPERS_EXPORT bool RDKit::MMFF::isAtomNOxide ( const Atom atom)

◆ isRingAromatic()

RDKIT_FORCEFIELDHELPERS_EXPORT bool RDKit::MMFF::isRingAromatic ( const ROMol mol,
const INT_VECT ringIndxVect 
)

◆ isTorsionInRingOfSize4or5()

RDKIT_FORCEFIELDHELPERS_EXPORT unsigned int RDKit::MMFF::isTorsionInRingOfSize4or5 ( const ROMol mol,
const unsigned int  idx1,
const unsigned int  idx2,
const unsigned int  idx3,
const unsigned int  idx4 
)

◆ MMFFOptimizeMolecule()

std::pair< int, double > RDKit::MMFF::MMFFOptimizeMolecule ( ROMol mol,
int  maxIters = 1000,
std::string  mmffVariant = "MMFF94",
double  nonBondedThresh = 10.0,
int  confId = -1,
bool  ignoreInterfragInteractions = true 
)
inline

Convenience function for optimizing a molecule using MMFF.

Definition at line 45 of file MMFF.h.

References constructForceField(), RDKit::ForceFieldsHelper::OptimizeMolecule(), and RDKit::rdvalue_is().

◆ MMFFOptimizeMoleculeConfs()

void RDKit::MMFF::MMFFOptimizeMoleculeConfs ( ROMol mol,
std::vector< std::pair< int, double > > &  res,
int  numThreads = 1,
int  maxIters = 1000,
std::string  mmffVariant = "MMFF94",
double  nonBondedThresh = 10.0,
bool  ignoreInterfragInteractions = true 
)
inline

Convenience function for optimizing all of a molecule's conformations using MMFF

Definition at line 82 of file MMFF.h.

References constructForceField(), RDKit::ROMol::getNumConformers(), RDKit::ForceFieldsHelper::OptimizeMoleculeConfs(), and RDKit::rdvalue_is().

◆ sanitizeMMFFMol()

RDKIT_FORCEFIELDHELPERS_EXPORT unsigned int RDKit::MMFF::sanitizeMMFFMol ( RWMol mol)

◆ setMMFFAromaticity()

RDKIT_FORCEFIELDHELPERS_EXPORT void RDKit::MMFF::setMMFFAromaticity ( RWMol mol)