8 #ifndef IMPATOM_FORCE_FIELD_PARAMETERS_H
9 #define IMPATOM_FORCE_FIELD_PARAMETERS_H
17 IMPATOM_BEGIN_NAMESPACE
36 void add_well_depths(
Hierarchy mhd)
const;
40 void add_lennard_jones_types(
Hierarchy mhd)
const;
53 : type1_(type1), type2_(type2), bond_type_(bond_type) {}
58 Float get_radius(
const String& force_field_atom_type)
const;
59 Float get_epsilon(
const String& force_field_atom_type)
const;
61 virtual String get_force_field_atom_type(
Atom atom)
const;
66 typedef std::pair<std::string, double> ChargePair;
67 typedef std::map<AtomType, ChargePair> AtomTypeMap;
71 std::map<ResidueType, AtomTypeMap> atom_res_type_2_force_field_atom_type_;
74 std::map<ResidueType, Vector<Bond> > residue_bonds_;
78 std::map<String, FloatPair> force_field_2_vdW_;
81 mutable std::map<String, Pointer<LennardJonesType>> force_field_2_lj_type_;
Storage and access to force field.
Key< 0 > FloatKey
The type used to identify float attributes in the Particles.
Parameters for a Lennard-Jones interaction.
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.
Parameters for a Lennard-Jones interaction.
void add_bonds(Hierarchy d, const ForceFieldParameters *ffp=get_all_atom_CHARMM_parameters())
Add bonds using definitions from given force field parameters.