Scine::Swoose  2.1.0
This is the SCINE module Swoose.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
DihedralsEvaluator.h
Go to the documentation of this file.
1 
8 #ifndef MOLECULARMECHANICS_DIHEDRALSEVALUATOR_H
9 #define MOLECULARMECHANICS_DIHEDRALSEVALUATOR_H
10 
11 #include "DihedralTerm.h"
12 #include <Eigen/Core>
13 #include <vector>
14 
15 namespace Scine {
16 
17 namespace Qmmm {
18 class InteractionTermEliminator;
19 } // namespace Qmmm
20 
21 namespace MolecularMechanics {
22 
23 struct DihedralType;
24 
30  public:
32  explicit DihedralsEvaluator(const Utils::PositionCollection& positions);
36  void setDihedralTerms(std::vector<DihedralTerm>&& dihedralTerms);
37 
38  private:
39  // friend class declaration
41  const Utils::PositionCollection& positions_;
42  std::vector<DihedralTerm> dihedrals_;
43 };
44 
45 } // namespace MolecularMechanics
46 } // namespace Scine
47 
48 #endif // MOLECULARMECHANICS_DIHEDRALSEVALUATOR_H
void setDihedralTerms(std::vector< DihedralTerm > &&dihedralTerms)
Sets a vector of the instances of the DihedralTerm class.
Definition: DihedralsEvaluator.cpp:26
DihedralsEvaluator(const Utils::PositionCollection &positions)
Constructor from positions.
Definition: DihedralsEvaluator.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)
Evaluates the energy and updates the derivatives.
Definition: DihedralsEvaluator.cpp:16
This class calculates the total energy with its derivatives for all dihedral terms of the force field...
Definition: DihedralsEvaluator.h:29