Chemical Data Processing Library C++ API - Version 1.4.0
Public Types | Public Member Functions | List of all members
CDPL::ForceField::MMFF94AngleBendingInteractionParameterizer Class Reference

Detects and parameterizes the MMFF94 angle-bending interactions of a molecular graph. More...

#include <MMFF94AngleBendingInteractionParameterizer.hpp>

Public Types

typedef std::shared_ptr< MMFF94AngleBendingInteractionParameterizerSharedPointer
 A reference-counted smart pointer [SHPTR] for dynamically allocated MMFF94AngleBendingInteractionParameterizer instances. More...
 

Public Member Functions

 MMFF94AngleBendingInteractionParameterizer ()
 Constructs an MMFF94AngleBendingInteractionParameterizer instance using the default MMFF94 parameter tables. More...
 
 MMFF94AngleBendingInteractionParameterizer (const Chem::MolecularGraph &molgraph, MMFF94AngleBendingInteractionList &ia_list, bool strict)
 Constructs the parameterizer and processes the molecular graph molgraph. More...
 
void setFilterFunction (const InteractionFilterFunction3 &func)
 Sets the filter function used to skip atom triplets during parameterization. More...
 
void setAtomTypeFunction (const MMFF94NumericAtomTypeFunction &func)
 Sets the function used to look up the MMFF94 numeric atom type of an atom. More...
 
void setBondTypeIndexFunction (const MMFF94BondTypeIndexFunction &func)
 Sets the function used to look up the MMFF94 bond type index of a bond. More...
 
void setAromaticRingSetFunction (const MMFF94RingSetFunction &func)
 Sets the function used to obtain the set of MMFF94 aromatic rings of the input molecular graph. More...
 
void setBondStretchingParameterTable (const MMFF94BondStretchingParameterTable::SharedPointer &table)
 Sets the primary bond-stretching parameter table (used to retrieve reference bond lengths in the empirical rule fallback). More...
 
void setBondStretchingRuleParameterTable (const MMFF94BondStretchingRuleParameterTable::SharedPointer &table)
 Sets the fallback bond-stretching rule parameter table (used in the empirical rule fallback). More...
 
void setAngleBendingParameterTable (const MMFF94AngleBendingParameterTable::SharedPointer &table)
 Sets the primary table providing angle type-specific angle-bending parameters. More...
 
void setAtomTypePropertyTable (const MMFF94AtomTypePropertyTable::SharedPointer &table)
 Sets the table providing MMFF94 numeric atom type property data (used by the empirical rule fallback). More...
 
void setParameterAtomTypeMap (const MMFF94PrimaryToParameterAtomTypeMap::SharedPointer &map)
 Sets the map used to translate primary atom types into their corresponding parameter atom types. More...
 
void parameterize (const Chem::MolecularGraph &molgraph, MMFF94AngleBendingInteractionList &ia_list, bool strict)
 Perceives the MMFF94 angle-bending interactions for molgraph and outputs the corresponding parameter data into ia_list. More...
 

Detailed Description

Detects and parameterizes the MMFF94 angle-bending interactions of a molecular graph.

For every non-filtered atom triplet (i-j-k) consisting of a central atom j and two of its neighbors the parameterizer determines the MMFF94 angle type index (0-8, accounting for ring membership and double bond character), looks up the matching MMFF94 angle-bending parameters, falls back to the empirical rule when no exact entry is found and emits an MMFF94AngleBendingInteraction instance.

Member Typedef Documentation

◆ SharedPointer

A reference-counted smart pointer [SHPTR] for dynamically allocated MMFF94AngleBendingInteractionParameterizer instances.

Constructor & Destructor Documentation

◆ MMFF94AngleBendingInteractionParameterizer() [1/2]

CDPL::ForceField::MMFF94AngleBendingInteractionParameterizer::MMFF94AngleBendingInteractionParameterizer ( )

Constructs an MMFF94AngleBendingInteractionParameterizer instance using the default MMFF94 parameter tables.

◆ MMFF94AngleBendingInteractionParameterizer() [2/2]

CDPL::ForceField::MMFF94AngleBendingInteractionParameterizer::MMFF94AngleBendingInteractionParameterizer ( const Chem::MolecularGraph molgraph,
MMFF94AngleBendingInteractionList ia_list,
bool  strict 
)

Constructs the parameterizer and processes the molecular graph molgraph.

Parameters
molgraphThe molecular graph for which to parameterize the angle-bending interactions.
ia_listOutput list receiving the generated MMFF94AngleBendingInteraction instances.
strictIf true, missing/ambiguous parameters cause a parameterization failure. Otherwise, in case of parameterization problems, suitable fallback parameters will be used.

Member Function Documentation

◆ setFilterFunction()

void CDPL::ForceField::MMFF94AngleBendingInteractionParameterizer::setFilterFunction ( const InteractionFilterFunction3 func)

Sets the filter function used to skip atom triplets during parameterization.

Parameters
funcThe new three-atom filter function (when it returns false, the triplet is skipped).

◆ setAtomTypeFunction()

void CDPL::ForceField::MMFF94AngleBendingInteractionParameterizer::setAtomTypeFunction ( const MMFF94NumericAtomTypeFunction func)

Sets the function used to look up the MMFF94 numeric atom type of an atom.

Parameters
funcThe new numeric atom type lookup function.

◆ setBondTypeIndexFunction()

void CDPL::ForceField::MMFF94AngleBendingInteractionParameterizer::setBondTypeIndexFunction ( const MMFF94BondTypeIndexFunction func)

Sets the function used to look up the MMFF94 bond type index of a bond.

Parameters
funcThe new bond type index lookup function.

◆ setAromaticRingSetFunction()

void CDPL::ForceField::MMFF94AngleBendingInteractionParameterizer::setAromaticRingSetFunction ( const MMFF94RingSetFunction func)

Sets the function used to obtain the set of MMFF94 aromatic rings of the input molecular graph.

Parameters
funcThe new aromatic ring set retrieval function.

◆ setBondStretchingParameterTable()

void CDPL::ForceField::MMFF94AngleBendingInteractionParameterizer::setBondStretchingParameterTable ( const MMFF94BondStretchingParameterTable::SharedPointer table)

Sets the primary bond-stretching parameter table (used to retrieve reference bond lengths in the empirical rule fallback).

Parameters
tableThe new bond-stretching parameter table.

◆ setBondStretchingRuleParameterTable()

void CDPL::ForceField::MMFF94AngleBendingInteractionParameterizer::setBondStretchingRuleParameterTable ( const MMFF94BondStretchingRuleParameterTable::SharedPointer table)

Sets the fallback bond-stretching rule parameter table (used in the empirical rule fallback).

Parameters
tableThe new bond-stretching rule parameter table.

◆ setAngleBendingParameterTable()

void CDPL::ForceField::MMFF94AngleBendingInteractionParameterizer::setAngleBendingParameterTable ( const MMFF94AngleBendingParameterTable::SharedPointer table)

Sets the primary table providing angle type-specific angle-bending parameters.

Parameters
tableThe new angle-bending parameter table.

◆ setAtomTypePropertyTable()

void CDPL::ForceField::MMFF94AngleBendingInteractionParameterizer::setAtomTypePropertyTable ( const MMFF94AtomTypePropertyTable::SharedPointer table)

Sets the table providing MMFF94 numeric atom type property data (used by the empirical rule fallback).

Parameters
tableThe new atom type property table.

◆ setParameterAtomTypeMap()

void CDPL::ForceField::MMFF94AngleBendingInteractionParameterizer::setParameterAtomTypeMap ( const MMFF94PrimaryToParameterAtomTypeMap::SharedPointer map)

Sets the map used to translate primary atom types into their corresponding parameter atom types.

Parameters
mapThe new primary-to-parameter atom type map.

◆ parameterize()

void CDPL::ForceField::MMFF94AngleBendingInteractionParameterizer::parameterize ( const Chem::MolecularGraph molgraph,
MMFF94AngleBendingInteractionList ia_list,
bool  strict 
)

Perceives the MMFF94 angle-bending interactions for molgraph and outputs the corresponding parameter data into ia_list.

Parameters
molgraphThe molecular graph for which to parameterize the angle-bending interactions.
ia_listOutput list receiving the generated MMFF94AngleBendingInteraction instances.
strictIf true, missing/ambiguous parameters cause a parameterization failure. Otherwise, in case of parameterization problems, suitable fallback parameters will be used.

The documentation for this class was generated from the following file: