7 #ifndef BALL_MOLMEC_AMBER_NONBONDED_H
8 #define BALL_MOLMEC_AMBER_NONBONDED_H
14 #ifndef BALL_MOLMEC_PARAMETER_LENNARDJONES_H
18 #ifndef BALL_MOLMEC_PARAMETER_POTENTIAL1210_H
22 #ifndef BALL_MOLMEC_COMMON_FORCEFIELDCOMPONENT_H
26 #ifndef BALL_MOLMEC_COMMON_SUPPORT_H
32 class AdvancedElectrostatic;
44 #define AMBER_NB_ENABLED "enable NB"
67 AmberNonBonded(const AmberNonBonded& amber_non_bonded)
72 virtual ~AmberNonBonded()
82 const AmberNonBonded& operator = (const AmberNonBonded& anb)
97 bool operator == (const AmberNonBonded& anb)
108 throw(Exception::TooManyErrors);
122 virtual
double updateEnergy()
127 virtual
void updateForces()
135 virtual
void update()
136 throw(Exception::TooManyErrors);
140 void update(const std::vector<std::pair<
Atom*, Atom*> >& atom_vector);
145 virtual
double getElectrostaticEnergy() const
150 virtual
double getVdwEnergy() const
161 determineMethodOfAtomPairGeneration()
166 virtual
void buildVectorOfNonBondedAtomPairs
167 (const std::vector<std::pair<Atom*, Atom*> >& atom_vector,
170 throw(Exception::TooManyErrors);
174 void enableStoreInteractions(
bool b=true);
186 double electrostatic_energy_;
207 std::vector<
char> is_hydrogen_bond_;
215 Size number_of_h_bonds_;
231 double cut_off_electrostatic_;
235 double cut_on_electrostatic_;
240 double inverse_distance_off_on_vdw_3_;
245 double inverse_distance_off_on_electrostatic_3_;
249 double scaling_vdw_1_4_;
253 double scaling_electrostatic_1_4_;
258 bool use_dist_depend_dielectric_;
275 #endif // BALL_MOLMEC_AMBER_AMBERVDW_H
#define BALL_CREATE(name)
static const double ELECTROSTATIC_FACTOR