8 #ifndef IMPATOM_FORCE_FIELD_PARAMETERS_H
9 #define IMPATOM_FORCE_FIELD_PARAMETERS_H
16 IMPATOM_BEGIN_NAMESPACE
35 void add_well_depths(
Hierarchy mhd)
const;
48 : type1_(type1), type2_(type2), bond_type_(bond_type) {}
53 Float get_radius(
const String& force_field_atom_type)
const;
54 Float get_epsilon(
const String& force_field_atom_type)
const;
55 virtual String get_force_field_atom_type(
Atom atom)
const;
60 typedef std::pair<std::string, double> ChargePair;
61 typedef std::map<AtomType, ChargePair> AtomTypeMap;
65 std::map<ResidueType, AtomTypeMap> atom_res_type_2_force_field_atom_type_;
68 std::map<ResidueType, Vector<Bond> > residue_bonds_;
72 std::map<String, FloatPair> force_field_2_vdW_;
Storage and access to force field.
Key< 0 > FloatKey
The type used to identify float attributes in the Particles.
void add_radii(Hierarchy d, const ForceFieldParameters *ffp=get_all_atom_CHARMM_parameters(), FloatKey radius_key=FloatKey("radius"))
Add vdW radius from given force field.
Type
The types a bond can have right now.
#define IMP_REF_COUNTED_DESTRUCTOR(Name)
Set up destructor for a ref counted object.
Warnings with the same key within the context are only output once.
Decorator for helping deal with a hierarchy of molecules.
The standard decorator for manipulating molecular structures.
Common base class for heavy weight IMP objects.
A decorator for a particle representing an atom.
A decorator for Residues.
A decorator for a residue.
Object(std::string name)
Construct an object with the given name.
double Float
Basic floating-point value (could be float, double...)
std::string String
Basic string value.
void add_bonds(Hierarchy d, const ForceFieldParameters *ffp=get_all_atom_CHARMM_parameters())
Add bonds using definitions from given force field parameters.