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

Detects and parameterizes the MMFF94 bond-stretching interactions of a molecular graph. More...

#include <MMFF94BondStretchingInteractionParameterizer.hpp>

Public Types

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

Public Member Functions

 MMFF94BondStretchingInteractionParameterizer ()
 Constructs an MMFF94BondStretchingInteractionParameterizer instance using the default MMFF94 parameter tables. More...
 
 MMFF94BondStretchingInteractionParameterizer (const Chem::MolecularGraph &molgraph, MMFF94BondStretchingInteractionList &ia_list, bool strict)
 Constructs the parameterizer and processes the molecular graph molgraph. More...
 
void setFilterFunction (const InteractionFilterFunction2 &func)
 Sets the filter function used to skip bonds 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 table providing bond type-specific bond-stretching parameters. More...
 
void setBondStretchingRuleParameterTable (const MMFF94BondStretchingRuleParameterTable::SharedPointer &table)
 Sets the fallback table providing rule-based bond-stretching parameters. More...
 
void setAtomTypePropertyTable (const MMFF94AtomTypePropertyTable::SharedPointer &table)
 Sets the table providing MMFF94 numeric atom type property data (used by the empirical fallback). More...
 
void parameterize (const Chem::MolecularGraph &molgraph, MMFF94BondStretchingInteractionList &ia_list, bool strict)
 Perceives the MMFF94 bond-stretching interactions for molgraph and outputs the corresponding parameter data into ia_list. More...
 
void getParameters (const Chem::MolecularGraph &molgraph, const Chem::Bond &bond, unsigned int &bond_type_idx, double &force_const, double &ref_length, bool strict) const
 Looks up the MMFF94 bond-stretching parameters for a single bond. More...
 

Detailed Description

Detects and parameterizes the MMFF94 bond-stretching interactions of a molecular graph.

For every non-filtered bond the parameterizer looks up the matching MMFF94 bond type-specific parameters from the supplied tables (falling back to the rule-based table when no exact match is available) and appends an MMFF94BondStretchingInteraction instance to the output list.

Member Typedef Documentation

◆ SharedPointer

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

Constructor & Destructor Documentation

◆ MMFF94BondStretchingInteractionParameterizer() [1/2]

CDPL::ForceField::MMFF94BondStretchingInteractionParameterizer::MMFF94BondStretchingInteractionParameterizer ( )

Constructs an MMFF94BondStretchingInteractionParameterizer instance using the default MMFF94 parameter tables.

◆ MMFF94BondStretchingInteractionParameterizer() [2/2]

CDPL::ForceField::MMFF94BondStretchingInteractionParameterizer::MMFF94BondStretchingInteractionParameterizer ( const Chem::MolecularGraph molgraph,
MMFF94BondStretchingInteractionList ia_list,
bool  strict 
)

Constructs the parameterizer and processes the molecular graph molgraph.

Parameters
molgraphThe molecular graph for which to parameterize the bond-stretching interactions.
ia_listOutput list receiving the generated MMFF94BondStretchingInteraction 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::MMFF94BondStretchingInteractionParameterizer::setFilterFunction ( const InteractionFilterFunction2 func)

Sets the filter function used to skip bonds during parameterization.

Parameters
funcThe new filter function (when it returns false for a bond pair, the bond is skipped).

◆ setAtomTypeFunction()

void CDPL::ForceField::MMFF94BondStretchingInteractionParameterizer::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::MMFF94BondStretchingInteractionParameterizer::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::MMFF94BondStretchingInteractionParameterizer::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::MMFF94BondStretchingInteractionParameterizer::setBondStretchingParameterTable ( const MMFF94BondStretchingParameterTable::SharedPointer table)

Sets the primary table providing bond type-specific bond-stretching parameters.

Parameters
tableThe new bond-stretching parameter table.

◆ setBondStretchingRuleParameterTable()

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

Sets the fallback table providing rule-based bond-stretching parameters.

Parameters
tableThe new bond-stretching rule parameter table.

◆ setAtomTypePropertyTable()

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

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

Parameters
tableThe new atom type property table.

◆ parameterize()

void CDPL::ForceField::MMFF94BondStretchingInteractionParameterizer::parameterize ( const Chem::MolecularGraph molgraph,
MMFF94BondStretchingInteractionList ia_list,
bool  strict 
)

Perceives the MMFF94 bond-stretching interactions for molgraph and outputs the corresponding parameter data into ia_list.

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

◆ getParameters()

void CDPL::ForceField::MMFF94BondStretchingInteractionParameterizer::getParameters ( const Chem::MolecularGraph molgraph,
const Chem::Bond bond,
unsigned int &  bond_type_idx,
double &  force_const,
double &  ref_length,
bool  strict 
) const

Looks up the MMFF94 bond-stretching parameters for a single bond.

Parameters
molgraphThe molecular graph the bond belongs to.
bondThe bond whose parameters are queried.
bond_type_idxOutput variable receiving the MMFF94 bond type index.
force_constOutput variable receiving the bond-stretching force constant.
ref_lengthOutput variable receiving the reference bond length \( r_0 \).
strictIf true, missing 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: