8 #ifndef READUCT_ELEMENTARYSTEPOPTIMIZATION_COSTCALCULATORS_COMMONTERMS_H
9 #define READUCT_ELEMENTARYSTEPOPTIMIZATION_COSTCALCULATORS_COMMONTERMS_H
11 #include "../MSVCCompatibility.h"
20 namespace AutomaticDifferentiation {
33 namespace ElementaryStepOptimization {
34 class RecurringProfileCalculator;
36 namespace CostBasedOptimization {
47 double energy,
const Eigen::VectorXd& gradients);
49 double u,
const Eigen::VectorXd& gradients,
50 const Eigen::MatrixXd& hessian);
53 const Eigen::VectorXd& gradients,
const Eigen::MatrixXd& hessian);
58 double u,
const Eigen::VectorXd& pos);
61 double uA,
double uB);
74 static double interpolateExtremumUValue(
double u0,
double u1,
double u2,
double e0,
double e1,
double e2);
75 static int getIndexForHighestEnergy(
const std::vector<double>& energies);
76 static double getUValueWithMaxEnergy(
const std::vector<double>& coordinates,
const std::vector<double>& energies,
int maxIndex);
85 #endif // READUCT_ELEMENTARYSTEPOPTIMIZATION_COSTCALCULATORS_COMMONTERMS_H
double distanceSquared(const PositionCollection &p1, const PositionCollection &p2)
Definition: RecurringProfileCalculator.h:33
Definition: CommonTerms.h:42