9#ifndef BALL_MOLMEC_MMFF94_MMFF94PARAMETERS_H
10#define BALL_MOLMEC_MMFF94_MMFF94PARAMETERS_H
16#ifndef BALL_DATATYPE_HASHMAP_H
33#define MMFF94_INVALID_VALUE 99.0
70 virtual bool setup_(
const std::vector<std::vector<String> >&) {
return true;};
109 virtual bool setup_(
const std::vector<std::vector<String> >&);
176 virtual bool setup_(
const std::vector<std::vector<String> >&);
250 virtual bool setup_(
const std::vector<std::vector<String> >&);
290 double& ka,
double& angle) const;
336 double& kba_ijk,
double& kba_kji) const;
393 double& v1,
double& v2,
double& v3) const;
HashMap class based on the STL map (containing serveral convenience functions).
std::vector< String > names_
void clear()
Clear method.
MMFF94AtomTypeEquivalences(const MMFF94AtomTypeEquivalences &to_copy)
std::vector< bool > exists_
~MMFF94AtomTypeEquivalences()
std::vector< std::vector< Position > > equivalences_
virtual bool setup_(const std::vector< std::vector< String > > &)
MMFF94AtomTypeEquivalences()
Index getEquivalence(Position original, Position number) const
virtual bool setup_(const std::vector< std::vector< String > > &)
std::vector< MMFF94AtomType > data_
MMFF94AtomTypes(const MMFF94AtomTypes &to_copy)
const std::vector< MMFF94AtomType > & getAtomTypes() const
virtual void clear()
Clear method.
BendMap buffered_parameters_
virtual bool setup_(const std::vector< std::vector< String > > &)
bool assignParameters(Position bend_type, Position atom_type1, Position atom_type2, Position atom_type3, double &ka, double &angle) const
MMFF94BendParameters()
Default constructor.
Position getIndex_(Position bend_type, Position atom_type1, Position atom_type2, Position atom_type3) const
BendMap parameters_
parameters
HashMap< Position, std::pair< double, double > > BendMap
Map with the force constant and reference angle.
std::vector< double > pbcis_
std::vector< double > phis_
virtual void clear()
Clear method.
double getPBCI(Index atom_type) const
std::vector< double > parameters_
parameters
double getPhi(Index atom_type) const
virtual bool setup_(const std::vector< std::vector< String > > &)
MMFF94ESParameters()
Default constructor.
Position getIndex_(Position at1, Position at2, Position bt) const
double getPartialCharge(Position at1, Position at2, Position bt) const
bool readEmpiricalParameters(Parameters &p, const String §ion)
bool readParameters(Parameters &p, const String §ion)
virtual bool setup_(const std::vector< std::vector< String > > &)
const MMFF94AtomTypeEquivalences * equiv_
Size number_expected_fields_
virtual void clear()
Clear method.
void setEquivalences(const MMFF94AtomTypeEquivalences &equi)
MMFF94ParametersBase()
Default constructor.
String getIndex_(Position atom_type1, Position atom_type2, Position atom_type3, Position atom_type4) const
bool assignParameters(Index at1, Index at2, Index at3, Index at4, double &v) const
virtual void clear()
Clear method.
PlaneMap buffered_parameters_
MMFF94PlaneParameters()
Default constructor.
virtual bool setup_(const std::vector< std::vector< String > > &)
HashMap< String, double > PlaneMap
Map with the force constant.
PlaneMap parameters_
parameters
bool assignParameters(Position stretch_bend_type, const Atom &atom1, const Atom &atom2, const Atom &atom3, double &kba_ijk, double &kba_kji) const
virtual bool setup_(const std::vector< std::vector< String > > &)
StretchBendMap parameters_
parameters
virtual void clear()
Clear method.
Position getIndexByRow_(Position r1, Position r2, Position r3) const
HashMap< Position, std::pair< double, double > > StretchBendMap
Map with the force constant and reference angle.
MMFF94StretchBendParameters()
Default constructor.
StretchBendMap buffered_parameters_
Position getIndex_(Position stretch_bend_type, Position atom_type1, Position atom_type2, Position atom_type3) const
bool readEmpiricalParameters(Parameters &p, const String §ion)
StretchBendMap parameters_by_row_
StretchMap buffered_parameters_
bool assignParameters(Position type1, Position type2, BondData &data) const
static double electronegatives[]
bool readEmpiricalParameters(Parameters &p, const String §ion)
EmpiricalStretchMap empirical_parameters_
HashMap< Position, BondData > StretchMap
virtual bool setup_(const std::vector< std::vector< String > > &)
virtual void clear()
Clear method.
MMFF94StretchParameters()
Default constructor.
const StretchMap & getBondParameters() const
const EmpiricalStretchMap & getEmpiricalParameters() const
HashMap< Position, EmpiricalBondData > EmpiricalStretchMap
StretchMap parameters_
standard parameters
TorsionsMap buffered_parameters_
virtual bool setup_(const std::vector< std::vector< String > > &)
String getIndex_(Position type, Position atom_type1, Position atom_type2, Position atom_type3, Position atom_type4) const
MMFF94TorsionParameters()
Default constructor.
bool assignParameters(Position type_index, Index at1, Index at2, Index at3, Index at4, double &v1, double &v2, double &v3) const
virtual void clear()
Clear method.
TorsionsMap parameters_
parameters
HashMap< String, std::vector< double > > TorsionsMap
Map with the force constant and reference angle.
double getR(Position atom_type) const
std::vector< double > eij_
MMFF94VDWParameters()
Default constructor.
std::vector< double > rs_
virtual void clear()
Clear method.
virtual bool setup_(const std::vector< std::vector< String > > &)
std::vector< VDWEntry > parameters_
parameters
std::vector< double > rij_
std::vector< double > rij_7_
bool assignParameters(Position at1, Position at2, double &rij, double &rij_7_, double &eij) const
std::vector< bool > calculated_
const VDWEntry & getParameters(Index at) const
Retrieve vdW parameters for a single atom type.
#define BALL_CREATE(name)
Size MMFF94_number_atom_types
hold the maximum number of MMFF94 atom types + 1 (wildcard)
Position getMMFF94Index(Position atom_type1, Position atom_type2)
bool valid
Is this a valid MMFF94 atom type?
Position aspec
atomic number;
Position val
number of bonds made to this atom type
bool sbmb
can have a delocalized single bond
bool pilp
has pi lone pair electrons
Position crd
necessary number of bonded neighbours
bool standard_bond_exists
double kb_sbmb
parameters for optinal single-bond–multiple bond cases (see MMFFPROP.PAR)