9 #ifndef BALL_MOLMEC_MMFF94_MMFF94PARAMETERS_H
10 #define BALL_MOLMEC_MMFF94_MMFF94PARAMETERS_H
16 #ifndef BALL_DATATYPE_HASHMAP_H
33 class MMFF94AtomTypeEquivalences;
35 #define MMFF94_INVALID_VALUE 99.0
73 virtual bool setup_(
const vector<vector<String> >&) {
return true;};
112 virtual bool setup_(
const vector<vector<String> >&);
179 virtual bool setup_(
const vector<vector<String> >&);
226 virtual ~MMFF94StretchParameters();
229 const MMFF94StretchParameters& operator = (const MMFF94StretchParameters& param)
243 const
StretchMap& getBondParameters()
const {
return parameters_;}
248 static double radii[];
249 static double electronegatives[];
253 virtual bool setup_(
const vector<vector<String> >&);
280 virtual ~MMFF94BendParameters();
283 const MMFF94BendParameters& operator = (const MMFF94BendParameters& param)
291 bool assignParameters(
Position bend_type,
293 double& ka,
double& angle) const;
297 virtual
bool setup_(const vector<vector<
String> >&);
327 virtual ~MMFF94StretchBendParameters();
330 const MMFF94StretchBendParameters& operator = (const MMFF94StretchBendParameters& param)
338 bool assignParameters(
Position stretch_bend_type, const
Atom& atom1, const
Atom& atom2, const
Atom& atom3,
339 double& kba_ijk,
double& kba_kji) const;
342 bool readEmpiricalParameters(
Parameters& p, const String& section)
343 throw(Exception::FileNotFound);
349 virtual
bool setup_(const vector<vector<String> >&);
357 StretchBendMap parameters_;
358 mutable StretchBendMap buffered_parameters_;
359 StretchBendMap parameters_by_row_;
369 : public MMFF94ParametersBase
382 virtual ~MMFF94TorsionParameters();
385 const MMFF94TorsionParameters& operator = (const MMFF94TorsionParameters& param)
393 bool assignParameters(
Position type_index,
395 double& v1,
double& v2,
double& v3) const;
399 virtual
bool setup_(const vector<vector<String> >&);
404 TorsionsMap parameters_;
405 mutable TorsionsMap buffered_parameters_;
417 : public MMFF94ParametersBase
430 virtual ~MMFF94PlaneParameters();
433 const MMFF94PlaneParameters& operator = (const MMFF94PlaneParameters& param)
445 virtual
bool setup_(const vector<vector<String> >&);
450 PlaneMap parameters_;
451 mutable PlaneMap buffered_parameters_;
461 : public MMFF94ParametersBase
481 virtual ~MMFF94VDWParameters();
484 const MMFF94VDWParameters& operator = (const MMFF94VDWParameters& param)
492 double getR(
Position atom_type) const;
498 bool assignParameters(
Position at1,
Position at2,
double& rij,
double& rij_7_,
double& eij) const;
502 virtual
bool setup_(const vector<vector<String> >&);
508 mutable vector<
double> rs_;
511 mutable vector<
double> rij_;
513 mutable vector<
double> rij_7_;
515 mutable vector<
double> eij_;
517 mutable vector<
bool> calculated_;
528 : public MMFF94ParametersBase
555 bool readEmpiricalParameters(
Parameters& p,
const String& section)
559 double getPhi(
Index atom_type)
const;
562 double getPBCI(
Index atom_type)
const;
566 virtual bool setup_(
const vector<vector<String> >&);
570 vector<double> parameters_,
phis_, pbcis_;
576 #endif // BALL_MOLMEC_MMFF94_MMFF94PARAMETERS_H