BALL  1.4.79
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Classes | Protected Member Functions | Protected Attributes | List of all members
BALL::MMFF94 Class Reference

#include <BALL/MOLMEC/MMFF94/MMFF94.h>

Inheritance diagram for BALL::MMFF94:
BALL::ForceField

Classes

struct  Default
 
struct  Option
 

Public Member Functions

Constructors and Destructor
 MMFF94 ()
 
 MMFF94 (System &system)
 
 MMFF94 (System &system, const Options &options)
 
 MMFF94 (const MMFF94 &force_field)
 
virtual ~MMFF94 ()
 
Assignment
const MMFF94operator= (const MMFF94 &force_field)
 
virtual void clear ()
 
Setup Methods
virtual bool specificSetup () throw (Exception::TooManyErrors)
 
Accessors specific to the MMFF94 force field
double getStretchEnergy () const
 
double getBendEnergy () const
 
double getStretchBendEnergy () const
 
double getTorsionEnergy () const
 
double getNonbondedEnergy () const
 
double getESEnergy () const
 
double getVdWEnergy () const
 
double getPlaneEnergy () const
 
bool hasInitializedParameters () const
 
Size getUpdateFrequency () const
 
virtual String getResults () const
 Get the current results in String form. More...
 
const vector< Bond * > getBonds () const
 
const vector< HashSet< Atom * > > & getRings () const
 
const vector< HashSet< Atom * > > & getAromaticRings () const
 
bool isInOneAromaticRing (const Bond &bond) const
 
bool assignMMFF94BondType (Bond &bond) const
 
const vector< MMFF94AtomType > & getAtomTypes () const
 
const MMFF94StretchParametersgetStretchParameters () const
 
const MMFF94AtomTypeEquivalencesgetEquivalences () const
 
bool areInOneRing (vector< Atom * > v, Size ring_size=0) const
 
bool areInOneAromaticRing (const vector< Atom * > &v, Size ring_size=0) const
 
bool checkAtomType (Atom &atom)
 
- Public Member Functions inherited from BALL::ForceField
 ForceField ()
 
 ForceField (System &system)
 
 ForceField (System &system, const Options &options)
 
 ForceField (const ForceField &force_field)
 
virtual ~ForceField ()
 
ForceFieldoperator= (const ForceField &force_field)
 
bool isValid () const
 
bool setup (System &system)
 
bool setup (System &system, const Options &options)
 
void setMaximumNumberOfErrors (Size nr)
 
Size getMaximumNumberOfErrors () const
 
HashSet< const Atom * > & getUnassignedAtoms ()
 Get the atoms, for which the force field setup failed. More...
 
void setName (const String &name)
 
String getName () const
 
Size getNumberOfAtoms () const
 
Size getNumberOfMovableAtoms () const
 
BALL_INLINE const AtomVectorgetAtoms () const
 
BALL_INLINE SystemgetSystem ()
 
BALL_INLINE const SystemgetSystem () const
 
BALL_INLINE bool getUseSelection () const
 
BALL_INLINE void disableSelection ()
 
BALL_INLINE void enableSelection ()
 
BALL_INLINE bool isSelectionEnabled () const
 
ForceFieldParametersgetParameters ()
 
Size countComponents () const
 
const TimeStampgetUpdateTime () const
 
const TimeStampgetSetupTime () const
 
void insertComponent (ForceFieldComponent *force_field_component)
 
void removeComponent (const ForceFieldComponent *force_field_component)
 
void removeComponent (const String &name)
 
ForceFieldComponentgetComponent (const Size index) const
 
ForceFieldComponentgetComponent (const String &name) const
 
double getEnergy () const
 
double updateEnergy ()
 
void updateForces ()
 
double getRMSGradient () const
 
virtual void update () throw (Exception::TooManyErrors)
 
std::ostream & error () throw (Exception::TooManyErrors)
 

Protected Member Functions

void insertComponents_ ()
 
void transformAromaticBonds_ ()
 
void collectBonds_ ()
 
void assignBondTypes_ ()
 
void collectRings_ ()
 
- Protected Member Functions inherited from BALL::ForceField
void collectAtoms_ (const System &system)
 
void sortSelectedAtomVector_ ()
 
virtual void performRequiredUpdates_ ()
 

Protected Attributes

String folder_
 
MMFF94AtomTypes atom_types_
 
MMFF94StretchParameters bond_parameters_
 
MMFF94AtomTypeEquivalences equivalences_
 
MMFF94ESParameters es_parameters_
 
vector< HashSet< Atom * > > rings_
 
vector< HashSet< Atom * > > aromatic_rings_
 
bool parameters_initialized_
 
vector< Bond * > bonds_
 
MMFF94AtomTyper atom_typer_
 
MMFF94ChargeProcessor charge_processor_
 
Kekuliser kekuliser_
 
HashSet< Bond * > aromatic_bonds_
 
- Protected Attributes inherited from BALL::ForceField
Systemsystem_
 
AtomVector atoms_
 
ForceFieldParameters parameters_
 
bool valid_
 
String name_
 
double energy_
 
vector< ForceFieldComponent * > components_
 
Size number_of_movable_atoms_
 
bool use_selection_
 
bool selection_enabled_
 
TimeStamp update_time_stamp_
 
TimeStamp setup_time_stamp_
 
HashSet< const Atom * > unassigned_atoms_
 
Size max_number_of_errors_
 
Size number_of_errors_
 

Additional Inherited Members

- Public Types inherited from BALL::ForceField
typedef std::vector< std::pair
< Atom *, Atom * > > 
PairVector
 
- Public Attributes inherited from BALL::ForceField
Options options
 
PeriodicBoundary periodic_boundary
 

Detailed Description

MMFF94 force field class.

Definition at line 49 of file MMFF94.h.

Constructor & Destructor Documentation

BALL::MMFF94::MMFF94 ( )

Default constructor.

BALL::MMFF94::MMFF94 ( System system)

Constructor.

BALL::MMFF94::MMFF94 ( System system,
const Options options 
)

Constructor.

BALL::MMFF94::MMFF94 ( const MMFF94 force_field)

Copy constructor

virtual BALL::MMFF94::~MMFF94 ( )
virtual

Destructor.

Member Function Documentation

bool BALL::MMFF94::areInOneAromaticRing ( const vector< Atom * > &  v,
Size  ring_size = 0 
) const
bool BALL::MMFF94::areInOneRing ( vector< Atom * >  v,
Size  ring_size = 0 
) const
void BALL::MMFF94::assignBondTypes_ ( )
protected
bool BALL::MMFF94::assignMMFF94BondType ( Bond bond) const
bool BALL::MMFF94::checkAtomType ( Atom atom)

Check wheter the atoms type is valid. If not, add it to unassigned atoms.

virtual void BALL::MMFF94::clear ( )
virtual

Clear method

Reimplemented from BALL::ForceField.

void BALL::MMFF94::collectBonds_ ( )
protected
void BALL::MMFF94::collectRings_ ( )
protected
const vector<HashSet<Atom*> >& BALL::MMFF94::getAromaticRings ( ) const
inline

Definition at line 275 of file MMFF94.h.

const vector<MMFF94AtomType>& BALL::MMFF94::getAtomTypes ( ) const
inline

Definition at line 284 of file MMFF94.h.

double BALL::MMFF94::getBendEnergy ( ) const

Return the angle bend contribution to the total energy

const vector<Bond*> BALL::MMFF94::getBonds ( ) const
inline

Definition at line 269 of file MMFF94.h.

const MMFF94AtomTypeEquivalences& BALL::MMFF94::getEquivalences ( ) const
inline

Definition at line 290 of file MMFF94.h.

double BALL::MMFF94::getESEnergy ( ) const

Return the electrostatic contribution to the total energy.

double BALL::MMFF94::getNonbondedEnergy ( ) const

Return the nonbonded contribution to the total energy. This energy comprises Van der Waals energy, hydrogen bond energy, and elesctrostatic energy.

double BALL::MMFF94::getPlaneEnergy ( ) const
virtual String BALL::MMFF94::getResults ( ) const
virtual

Get the current results in String form.

Reimplemented from BALL::ForceField.

const vector<HashSet<Atom*> >& BALL::MMFF94::getRings ( ) const
inline

Definition at line 272 of file MMFF94.h.

double BALL::MMFF94::getStretchBendEnergy ( ) const
double BALL::MMFF94::getStretchEnergy ( ) const

Return the bond stretch contribution to the total energy

const MMFF94StretchParameters& BALL::MMFF94::getStretchParameters ( ) const
inline

Definition at line 287 of file MMFF94.h.

double BALL::MMFF94::getTorsionEnergy ( ) const

Return the torsion contribution to the total energy. This energy comprises proper and improper torsions.

Size BALL::MMFF94::getUpdateFrequency ( ) const
virtual

Return the recommended number of iterations between updates. This method return 20 as a default value.

Reimplemented from BALL::ForceField.

double BALL::MMFF94::getVdWEnergy ( ) const

Return the Van der Waals and hydrogen bond contribution to the total energy.

bool BALL::MMFF94::hasInitializedParameters ( ) const

Return true, if the parameters have already been initialized

void BALL::MMFF94::insertComponents_ ( )
protected
bool BALL::MMFF94::isInOneAromaticRing ( const Bond bond) const
const MMFF94& BALL::MMFF94::operator= ( const MMFF94 force_field)

Assignment operator

virtual bool BALL::MMFF94::specificSetup ( )
throw (Exception::TooManyErrors
)
virtual

Force field specific setup

Reimplemented from BALL::ForceField.

void BALL::MMFF94::transformAromaticBonds_ ( )
protected

Member Data Documentation

HashSet<Bond*> BALL::MMFF94::aromatic_bonds_
protected

Definition at line 326 of file MMFF94.h.

vector<HashSet<Atom*> > BALL::MMFF94::aromatic_rings_
protected

Definition at line 320 of file MMFF94.h.

MMFF94AtomTyper BALL::MMFF94::atom_typer_
protected

Definition at line 323 of file MMFF94.h.

MMFF94AtomTypes BALL::MMFF94::atom_types_
protected

Definition at line 315 of file MMFF94.h.

MMFF94StretchParameters BALL::MMFF94::bond_parameters_
protected

Definition at line 316 of file MMFF94.h.

vector<Bond*> BALL::MMFF94::bonds_
protected

Definition at line 322 of file MMFF94.h.

MMFF94ChargeProcessor BALL::MMFF94::charge_processor_
protected

Definition at line 324 of file MMFF94.h.

MMFF94AtomTypeEquivalences BALL::MMFF94::equivalences_
protected

Definition at line 317 of file MMFF94.h.

MMFF94ESParameters BALL::MMFF94::es_parameters_
protected

Definition at line 318 of file MMFF94.h.

String BALL::MMFF94::folder_
protected

Definition at line 314 of file MMFF94.h.

Kekuliser BALL::MMFF94::kekuliser_
protected

Definition at line 325 of file MMFF94.h.

bool BALL::MMFF94::parameters_initialized_
protected

Definition at line 321 of file MMFF94.h.

vector<HashSet<Atom*> > BALL::MMFF94::rings_
protected

Definition at line 319 of file MMFF94.h.