9 #ifndef BALL_MOLMEC_MMFF94_MMFF94_H
10 #define BALL_MOLMEC_MMFF94_MMFF94_H
16 #ifndef BALL_MOLMEC_COMMON_FORCEFIELD_H
20 #ifndef BALL_KERNEL_SYSTEM_H
24 #ifndef BALL_MOLMEC_MMFF94_MMFF94PARAMETERS_H
28 #ifndef BALL_MOLMEC_MMFF94_MMFF94PROCESSORS_H
32 #ifndef BALL_DATATYPE_HASHSET_H
36 #ifndef BALL_STRUCTURE_KEKULIZER_H
187 MMFF94(const MMFF94& force_field);
200 const MMFF94& operator = (const MMFF94& force_field)
215 virtual
bool specificSetup()
216 throw(Exception::TooManyErrors);
225 double getStretchEnergy() const;
229 double getBendEnergy() const;
232 double getStretchBendEnergy() const;
237 double getTorsionEnergy() const;
242 double getNonbondedEnergy() const;
246 double getESEnergy() const;
250 double getVdWEnergy() const;
253 double getPlaneEnergy() const;
257 bool hasInitializedParameters() const;
262 Size getUpdateFrequency() const;
265 virtual
String getResults() const
269 const vector<
Bond*> getBonds()
const {
return bonds_;}
272 const vector<HashSet<Atom*> >&
getRings()
const {
return rings_;}
278 bool isInOneAromaticRing(
const Bond& bond)
const;
281 bool assignMMFF94BondType(
Bond& bond)
const;
284 const vector<MMFF94AtomType>&
getAtomTypes()
const {
return atom_types_.getAtomTypes();}
293 bool areInOneRing(vector<Atom*> v,
Size ring_size = 0)
const;
296 bool areInOneAromaticRing(
const vector<Atom*>& v,
Size ring_size = 0)
const;
301 bool checkAtomType(
Atom& atom);
307 void insertComponents_();
309 void transformAromaticBonds_();
310 void collectBonds_();
311 void assignBondTypes_();
312 void collectRings_();
331 #endif // BALL_MOLMEC_MMFF94_H
static const bool ASSIGN_TYPENAMES
static const bool OVERWRITE_CHARGES
vector< HashSet< Atom * > > rings_
#define BALL_CREATE(name)
static const char * ASSIGN_TYPES
const MMFF94AtomTypeEquivalences & getEquivalences() const
static const float VDW_CUTOFF
static const float NONBONDED_CUTOFF
const MMFF94StretchParameters & getStretchParameters() const
static const float ELECTROSTATIC_CUTOFF
bool parameters_initialized_
static const char * OVERWRITE_CHARGES
const vector< HashSet< Atom * > > & getRings() const
static const char * FOLDER
static const char * OVERWRITE_TYPENAMES
static const char * VDW_CUTOFF
HashSet< Bond * > aromatic_bonds_
MMFF94AtomTyper atom_typer_
static const char * VDW_CUTON
static const char * FOLDER
vector< HashSet< Atom * > > aromatic_rings_
static const bool DISTANCE_DEPENDENT_DIELECTRIC
Default is false.
MMFF94AtomTypes atom_types_
static const char * ELECTROSTATIC_CUTOFF
MMFF94ChargeProcessor charge_processor_
static const char * ELECTROSTATIC_CUTON
static const char * NONBONDED_CUTOFF
static const float VDW_CUTON
static const bool ASSIGN_CHARGES
static const char * DISTANCE_DEPENDENT_DIELECTRIC
static const bool ASSIGN_TYPES
MMFF94AtomTypeEquivalences equivalences_
static const bool OVERWRITE_TYPENAMES
MMFF94ESParameters es_parameters_
static const float ELECTROSTATIC_CUTON
static const char * ASSIGN_TYPENAMES
static const char * ASSIGN_CHARGES
MMFF94StretchParameters bond_parameters_
const vector< HashSet< Atom * > > & getAromaticRings() const
const vector< MMFF94AtomType > & getAtomTypes() const