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

Detects and parameterizes the MMFF94 torsion interactions of a molecular graph. More...

#include <MMFF94TorsionInteractionParameterizer.hpp>

Public Types

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

Public Member Functions

 MMFF94TorsionInteractionParameterizer ()
 Constructs an MMFF94TorsionInteractionParameterizer instance using the default MMFF94 parameter tables. More...
 
 MMFF94TorsionInteractionParameterizer (const Chem::MolecularGraph &molgraph, MMFF94TorsionInteractionList &ia_list, bool strict)
 Constructs the parameterizer and processes the molecular graph molgraph. More...
 
void setFilterFunction (const InteractionFilterFunction4 &func)
 Sets the filter function used to skip atom quadruplets 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 setTorsionParameterTable (const MMFF94TorsionParameterTable::SharedPointer &table)
 Sets the primary table providing torsion type-specific \( V_1/V_2/V_3 \) 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 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, MMFF94TorsionInteractionList &ia_list, bool strict)
 Perceives the MMFF94 torsion interactions for molgraph and outputs the corresponding parameter data into ia_list. More...
 

Detailed Description

Detects and parameterizes the MMFF94 torsion interactions of a molecular graph.

For every non-filtered atom quadruplet (i-j-k-l) consisting of a central bond j-k and one neighbor each on j and k the parameterizer looks up the matching MMFF94 torsion type-specific parameters \( V_1, V_2, V_3 \) from the supplied parameter table, falling back to the primary-to-parameter atom type map for atoms with no exact parameter entry, and emits an MMFF94TorsionInteraction instance.

Member Typedef Documentation

◆ SharedPointer

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

Constructor & Destructor Documentation

◆ MMFF94TorsionInteractionParameterizer() [1/2]

CDPL::ForceField::MMFF94TorsionInteractionParameterizer::MMFF94TorsionInteractionParameterizer ( )

Constructs an MMFF94TorsionInteractionParameterizer instance using the default MMFF94 parameter tables.

◆ MMFF94TorsionInteractionParameterizer() [2/2]

CDPL::ForceField::MMFF94TorsionInteractionParameterizer::MMFF94TorsionInteractionParameterizer ( const Chem::MolecularGraph molgraph,
MMFF94TorsionInteractionList ia_list,
bool  strict 
)

Constructs the parameterizer and processes the molecular graph molgraph.

Parameters
molgraphThe molecular graph for which to parameterize the torsion interactions.
ia_listOutput list receiving the generated MMFF94TorsionInteraction 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::MMFF94TorsionInteractionParameterizer::setFilterFunction ( const InteractionFilterFunction4 func)

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

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

◆ setAtomTypeFunction()

void CDPL::ForceField::MMFF94TorsionInteractionParameterizer::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::MMFF94TorsionInteractionParameterizer::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::MMFF94TorsionInteractionParameterizer::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 retrievaly function.

◆ setTorsionParameterTable()

void CDPL::ForceField::MMFF94TorsionInteractionParameterizer::setTorsionParameterTable ( const MMFF94TorsionParameterTable::SharedPointer table)

Sets the primary table providing torsion type-specific \( V_1/V_2/V_3 \) parameters.

Parameters
tableThe new torsion parameter table.

◆ setAtomTypePropertyTable()

void CDPL::ForceField::MMFF94TorsionInteractionParameterizer::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.

◆ setParameterAtomTypeMap()

void CDPL::ForceField::MMFF94TorsionInteractionParameterizer::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::MMFF94TorsionInteractionParameterizer::parameterize ( const Chem::MolecularGraph molgraph,
MMFF94TorsionInteractionList ia_list,
bool  strict 
)

Perceives the MMFF94 torsion interactions for molgraph and outputs the corresponding parameter data into ia_list.

Parameters
molgraphThe molecular graph for which to parameterize the torsion interactions.
ia_listOutput list receiving the generated MMFF94TorsionInteraction 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: