8 #ifndef MOLECULARMECHANICS_REPULSIONTERM_H
9 #define MOLECULARMECHANICS_REPULSIONTERM_H
19 class FullSecondDerivativeCollection;
22 namespace MolecularMechanics {
30 using AtomIndex = int;
38 RepulsionTerm(AtomIndex firstAtom, AtomIndex secondAtom,
const Repulsion& repulsion, std::shared_ptr<double> cutoffRadius);
54 AtomIndex firstAtom_, secondAtom_;
58 std::shared_ptr<double> cutoffRadius_;
64 #endif // MOLECULARMECHANICS_REPULSIONTERM_H
RepulsionTerm(AtomIndex firstAtom, AtomIndex secondAtom, const Repulsion &repulsion, std::shared_ptr< double > cutoffRadius)
Constructor.
Definition: RepulsionTerm.cpp:17
int getSecondAtom() const
Getter for index of second atom.
Definition: RepulsionTerm.cpp:60
~RepulsionTerm()
Destructor.
Base class for all interaction terms.
Definition: InteractionTermBase.h:18
int getFirstAtom() const
Getter for index of first atom.
Definition: RepulsionTerm.cpp:56
Class handling the parameters needed for the repulsive non-bonded interaction term.
Definition: RepulsionParameters.h:22
Class treating a repulsive non-bonded interaction, based solely on the bond length. (i.e. in 1 dimension)
Definition: Repulsion.h:21
double evaluateRepulsionTerm(const Utils::AtomCollection &structure, Utils::FullSecondDerivativeCollection &derivatives, RepulsionParameters &repulsionParameters) const
Evaluates the energy contribution and adds the derivatives.
Definition: RepulsionTerm.cpp:24
Class evaluating repulsive non-bonded interaction between two atoms.
Definition: RepulsionTerm.h:28