Scine::Swoose  2.1.0
This is the SCINE module Swoose.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
HydrogenBondEvaluator.h
Go to the documentation of this file.
1 
8 #ifndef MOLECULARMECHANICS_HYDROGENBONDEVALUATOR_H
9 #define MOLECULARMECHANICS_HYDROGENBONDEVALUATOR_H
10 
11 #include "HydrogenBondTerm.h"
12 
13 namespace Scine {
14 
15 namespace Qmmm {
16 class InteractionTermEliminator;
17 } // namespace Qmmm
18 
19 namespace MolecularMechanics {
25  public:
29  HydrogenBondEvaluator(const Utils::AtomCollection& structure, const std::vector<double>& atomicCharges);
37  void setHydrogenBondTerms(std::vector<HydrogenBondTerm>&& hydrogenBondTerms);
38 
39  private:
40  // friend class declaration
42  const Utils::AtomCollection& structure_;
43  const std::vector<double>& atomicCharges_;
44 
45  std::vector<HydrogenBondTerm> hydrogenBondTerms_;
46 };
47 
48 } // namespace MolecularMechanics
49 } // namespace Scine
50 
51 #endif // MOLECULARMECHANICS_HYDROGENBONDEVALUATOR_H
This class evaluates the total energy and its derivative from all hydrogen bonds. ...
Definition: HydrogenBondEvaluator.h:24
HydrogenBondEvaluator(const Utils::AtomCollection &structure, const std::vector< double > &atomicCharges)
Constructor from structure and partial atomic charges.
Definition: HydrogenBondEvaluator.cpp:13
This class handles the elimination of MM interaction terms, which are already covered by the QM calcu...
Definition: InteractionTermEliminator.h:39
double evaluate(Utils::AtomicSecondDerivativeCollection &derivatives)
This function calculates and returns the total hydrogen bond energy and updates the derivatives...
Definition: HydrogenBondEvaluator.cpp:17
void setHydrogenBondTerms(std::vector< HydrogenBondTerm > &&hydrogenBondTerms)
Sets a vector of instances of the HydrogenBondTerm class.
Definition: HydrogenBondEvaluator.cpp:27