Chemical Data Processing Library C++ API - Version 1.4.0
Namespaces | Functions
MMFF94EnergyFunctions.hpp File Reference

Functions for the calculation of MMFF94 interaction energies. More...

#include "CDPL/ForceField/MMFF94BondStretchingInteraction.hpp"
#include "CDPL/ForceField/MMFF94AngleBendingInteraction.hpp"
#include "CDPL/ForceField/MMFF94StretchBendInteraction.hpp"
#include "CDPL/ForceField/MMFF94OutOfPlaneBendingInteraction.hpp"
#include "CDPL/ForceField/MMFF94TorsionInteraction.hpp"
#include "CDPL/ForceField/MMFF94VanDerWaalsInteraction.hpp"
#include "CDPL/ForceField/MMFF94ElectrostaticInteraction.hpp"
#include "CDPL/ForceField/UtilityFunctions.hpp"

Go to the source code of this file.

Namespaces

 CDPL
 The namespace of the Chemical Data Processing Library.
 
 CDPL::ForceField
 Contains classes and functions related to molecular force fields.
 

Functions

template<typename ValueType , typename Iter , typename CoordsArray >
ValueType CDPL::ForceField::calcMMFF94BondStretchingEnergy (Iter beg, const Iter &end, const CoordsArray &coords)
 Sums the bond-stretching interaction energies of all MMFF94 bond-stretching interactions in the iterator range [beg, end). More...
 
template<typename ValueType , typename CoordsArray >
ValueType CDPL::ForceField::calcMMFF94BondStretchingEnergy (const MMFF94BondStretchingInteraction &iaction, const CoordsArray &coords)
 Calculates the bond-stretching interaction energy of iaction using the geometry from coords. More...
 
template<typename ValueType , typename CoordsVec >
ValueType CDPL::ForceField::calcMMFF94BondStretchingEnergy (const CoordsVec &atom1_pos, const CoordsVec &atom2_pos, const ValueType &force_const, const ValueType &ref_length)
 Calculates the bond stretching interaction energy \( EB_{ij} \) for the bond i-j. More...
 
template<typename ValueType >
ValueType CDPL::ForceField::calcMMFF94BondStretchingEnergy (const ValueType &r_ij, const ValueType &force_const, const ValueType &ref_length)
 Calculates the bond stretching interaction energy \( EB_{ij} \) for the bond i-j. More...
 
template<typename ValueType , typename Iter , typename CoordsArray >
ValueType CDPL::ForceField::calcMMFF94AngleBendingEnergy (Iter beg, const Iter &end, const CoordsArray &coords)
 Sums the angle-bending interaction energies of all MMFF94 angle-bending interactions in the iterator range [beg, end). More...
 
template<typename ValueType , typename CoordsArray >
ValueType CDPL::ForceField::calcMMFF94AngleBendingEnergy (const MMFF94AngleBendingInteraction &iaction, const CoordsArray &coords)
 Calculates the angle-bending interaction energy of iaction using the geometry from coords. More...
 
template<typename ValueType , typename CoordsVec >
ValueType CDPL::ForceField::calcMMFF94AngleBendingEnergy (const CoordsVec &term_atom1_pos, const CoordsVec &ctr_atom_pos, const CoordsVec &term_atom2_pos, bool linear, const ValueType &force_const, const ValueType &ref_angle)
 Calculates the angle bending interaction energy \( EA_{ijk} \) for two bonds i-j and j-k. More...
 
template<typename ValueType , typename CoordsVec >
ValueType CDPL::ForceField::calcMMFF94AngleBendingEnergy (const CoordsVec &term_atom1_pos, const CoordsVec &ctr_atom_pos, const CoordsVec &term_atom2_pos, const ValueType &r_ij, const ValueType &r_jk, bool linear, const ValueType &force_const, const ValueType &ref_angle)
 Calculates the angle bending interaction energy \( EA_{ijk} \) for two bonds i-j and j-k. More...
 
template<typename ValueType , typename Iter , typename CoordsArray >
ValueType CDPL::ForceField::calcMMFF94StretchBendEnergy (Iter beg, const Iter &end, const CoordsArray &coords)
 Sums the stretch-bend coupling interaction energies of all MMFF94 stretch-bend interactions in the iterator range [beg, end). More...
 
template<typename ValueType , typename CoordsArray >
ValueType CDPL::ForceField::calcMMFF94StretchBendEnergy (const MMFF94StretchBendInteraction &iaction, const CoordsArray &coords)
 Calculates the stretch-bend coupling interaction energy of iaction using the geometry from coords. More...
 
template<typename ValueType , typename CoordsVec >
ValueType CDPL::ForceField::calcMMFF94StretchBendEnergy (const CoordsVec &term_atom1_pos, const CoordsVec &ctr_atom_pos, const CoordsVec &term_atom2_pos, const ValueType &ijk_force_const, const ValueType &kji_force_const, const ValueType &ref_angle, const ValueType &ref_length1, const ValueType &ref_length2)
 Calculates the stretch-bend interaction energy \( EBA_{ijk} \) for two bonds i-j and j-k. More...
 
template<typename ValueType , typename CoordsVec >
ValueType CDPL::ForceField::calcMMFF94StretchBendEnergy (const CoordsVec &term_atom1_pos, const CoordsVec &ctr_atom_pos, const CoordsVec &term_atom2_pos, const ValueType &r_ij, const ValueType &r_jk, const ValueType &ijk_force_const, const ValueType &kji_force_const, const ValueType &ref_angle, const ValueType &ref_length1, const ValueType &ref_length2)
 Calculates the stretch-bend interaction energy \( EBA_{ijk} \) for two bonds i-j and j-k. More...
 
template<typename ValueType , typename Iter , typename CoordsArray >
ValueType CDPL::ForceField::calcMMFF94OutOfPlaneBendingEnergy (Iter beg, const Iter &end, const CoordsArray &coords)
 Sums the out-of-plane bending interaction energies of all MMFF94 out-of-plane bending interactions in the iterator range [beg, end). More...
 
template<typename ValueType , typename CoordsArray >
ValueType CDPL::ForceField::calcMMFF94OutOfPlaneBendingEnergy (const MMFF94OutOfPlaneBendingInteraction &iaction, const CoordsArray &coords)
 Calculates the out-of-plane bending interaction energy of iaction using the geometry from coords. More...
 
template<typename ValueType , typename CoordsVec >
ValueType CDPL::ForceField::calcMMFF94OutOfPlaneBendingEnergy (const CoordsVec &term_atom1_pos, const CoordsVec &ctr_atom_pos, const CoordsVec &term_atom2_pos, const CoordsVec &oop_atom_pos, const ValueType &force_const)
 Calculates the out-of-plane bending interaction energy \( EOOP_{ijk;l} \) for the bond j-l and the plane i-j-k. More...
 
template<typename ValueType , typename CoordsVec >
ValueType CDPL::ForceField::calcMMFF94OutOfPlaneBendingEnergy (const CoordsVec &term_atom1_pos, const CoordsVec &ctr_atom_pos, const CoordsVec &term_atom2_pos, const CoordsVec &oop_atom_pos, const ValueType &r_jl, const ValueType &force_const)
 Calculates the out-of-plane bending interaction energy \( EOOP_{ijk;l} \) for the bond j-l and the plane i-j-k. More...
 
template<typename ValueType , typename Iter , typename CoordsArray >
ValueType CDPL::ForceField::calcMMFF94TorsionEnergy (Iter beg, const Iter &end, const CoordsArray &coords)
 Sums the torsion interaction energies of all MMFF94 torsion interactions in the iterator range [beg, end). More...
 
template<typename ValueType , typename CoordsArray >
ValueType CDPL::ForceField::calcMMFF94TorsionEnergy (const MMFF94TorsionInteraction &iaction, const CoordsArray &coords)
 Calculates the torsion interaction energy of iaction using the geometry from coords. More...
 
template<typename ValueType , typename CoordsVec >
ValueType CDPL::ForceField::calcMMFF94TorsionEnergy (const CoordsVec &term_atom1_pos, const CoordsVec &ctr_atom1_pos, const CoordsVec &ctr_atom2_pos, const CoordsVec &term_atom2_pos, const ValueType &tor_param1, const ValueType &tor_param2, const ValueType &tor_param3)
 Calculates the torsion interaction energy \( ET_{ijkl} \) for the central bond j-k and the connected bonds i-j and k-l. More...
 
template<typename ValueType , typename Iter , typename CoordsArray >
ValueType CDPL::ForceField::calcMMFF94ElectrostaticEnergy (Iter beg, const Iter &end, const CoordsArray &coords)
 Sums the electrostatic interaction energies of all MMFF94 electrostatic interactions in the iterator range [beg, end). More...
 
template<typename ValueType , typename CoordsArray >
ValueType CDPL::ForceField::calcMMFF94ElectrostaticEnergy (const MMFF94ElectrostaticInteraction &iaction, const CoordsArray &coords)
 Calculates the electrostatic interaction energy of iaction using the geometry from coords. More...
 
template<typename ValueType , typename CoordsVec >
ValueType CDPL::ForceField::calcMMFF94ElectrostaticEnergy (const CoordsVec &atom1_pos, const CoordsVec &atom2_pos, const ValueType &atom1_chg, const ValueType &atom2_chg, const ValueType &scale_fact, const ValueType &de_const, const ValueType &dist_expo)
 Calculates the electrostatic interaction energy \( EQ_{ij} \) for the atom pair i-j. More...
 
template<typename ValueType >
ValueType CDPL::ForceField::calcMMFF94ElectrostaticEnergy (const ValueType &r_ij, const ValueType &atom1_chg, const ValueType &atom2_chg, const ValueType &scale_fact, const ValueType &de_const, const ValueType &dist_expo)
 Calculates the electrostatic interaction energy \( EQ_{ij} \) for the atom pair i-j. More...
 
template<typename ValueType , typename Iter , typename CoordsArray >
ValueType CDPL::ForceField::calcMMFF94VanDerWaalsEnergy (Iter beg, const Iter &end, const CoordsArray &coords)
 Sums the Van der Waals interaction energies of all MMFF94 Van der Waals interactions in the iterator range [beg, end). More...
 
template<typename ValueType , typename CoordsArray >
ValueType CDPL::ForceField::calcMMFF94VanDerWaalsEnergy (const MMFF94VanDerWaalsInteraction &iaction, const CoordsArray &coords)
 Calculates the Van der Waals interaction energy of iaction using the geometry from coords. More...
 
template<typename ValueType , typename CoordsVec >
ValueType CDPL::ForceField::calcMMFF94VanDerWaalsEnergy (const CoordsVec &atom1_pos, const CoordsVec &atom2_pos, const ValueType &e_IJ, const ValueType &r_IJ, const ValueType &r_IJ_7)
 Calculates the Van der Waals interaction energy \( E_{vdW_{ij}} \) for the atom pair i-j. More...
 
template<typename ValueType >
ValueType CDPL::ForceField::calcMMFF94VanDerWaalsEnergy (const ValueType &r_ij, const ValueType &e_IJ, const ValueType &r_IJ, const ValueType &r_IJ_7)
 Calculates the Van der Waals interaction energy \( E_{vdW_{ij}} \) for the atom pair i-j. More...
 

Detailed Description

Functions for the calculation of MMFF94 interaction energies.