13#ifndef OPTIMIST_COST_FUNCTION_ELLIPTIC_PARABOLOID_HH
14#define OPTIMIST_COST_FUNCTION_ELLIPTIC_PARABOLOID_HH
36 template <
typename Real>
55 for (Real x{-100}; x < 100 + EPSILON; x += 100/25.0) {
56 for (Real y{-100}; y < 100 + EPSILON; y += 100/25.0) {
66 std::string
name_impl()
const {
return "EllipticParaboloid";}
75 out = this->
m_a*x(0)*x(0) + this->
m_b*x(1)*x(1);
85 out(0) = 2.0*this->
m_a*x(0);
86 out(1) = 2.0*this->
m_b*x(1);
96 out(0, 0) = 2.0*this->
m_a;
99 out(1, 1) = 2.0*this->
m_b;
#define OPTIMIST_BASIC_CONSTANTS(Real)
Definition Optimist.hh:70
CostFunction()
Definition CostFunction.hh:51
std::vector< InputType > m_solutions
Definition Function.hh:52
std::vector< InputType > m_guesses
Definition Function.hh:53
typename CostFunction< Real, 2, EllipticParaboloid< Real > >::Matrix Matrix
Definition EllipticParaboloid.hh:47
void second_derivative_impl(const Vector &, Matrix &out) const
Definition EllipticParaboloid.hh:94
typename CostFunction< Real, 2, EllipticParaboloid< Real > >::RowVector RowVector
Definition EllipticParaboloid.hh:46
typename CostFunction< Real, 2, EllipticParaboloid< Real > >::Vector Vector
Definition EllipticParaboloid.hh:45
Real m_b
Definition EllipticParaboloid.hh:40
void first_derivative_impl(const Vector &x, RowVector &out) const
Definition EllipticParaboloid.hh:83
std::string name_impl() const
Definition EllipticParaboloid.hh:66
Real m_a
Definition EllipticParaboloid.hh:39
EllipticParaboloid()
Definition EllipticParaboloid.hh:52
void evaluate_impl(const Vector &x, Real &out) const
Definition EllipticParaboloid.hh:73
Namespace for the Optimist library.
Definition Optimist.hh:87