|
Optimist
0.0.0
A C++ library for optimization
|
Class container for the paraboloid function. More...
#include <EllipticParaboloid.hh>
Inherits Optimist::Function< Real, 2, 1, EllipticParaboloid< Real > >.
Public Member Functions | |
| EllipticParaboloid () | |
| std::string | name_impl () const |
| bool | evaluate_impl (Vector const &x, Real &out) const |
| bool | first_derivative_impl (Vector const &x, RowVector &out) const |
| bool | second_derivative_impl (Vector const &, Matrix &out) const |
| Public Member Functions inherited from Optimist::Function< Real, 2, 1, EllipticParaboloid< Real > > | |
| Function () | |
| std::string | name () const |
| bool | evaluate (const InputVector &x, OutputVector &out) const |
| bool | jacobian (const InputVector &x, Matrix &out) const |
| bool | hessian (const InputVector &x, Tensor &out) const |
| Public Member Functions inherited from Optimist::FunctionBase< Real, N, M, EllipticParaboloid< Real >, false > | |
| FunctionBase () | |
| std::string | name () const |
| bool | evaluate (const InputType &x, OutputType &out) const |
| bool | first_derivative (const InputType &x, FirstDerivativeType &out) const |
| bool | second_derivative (const InputType &x, SecondDerivativeType &out) const |
| constexpr Integer | input_dimension () const |
| constexpr Integer | output_dimension () const |
| const std::vector< InputType > & | solutions () const |
| const std::vector< InputType > & | guesses () const |
| const InputType & | solution (Integer const i) const |
| const InputType & | guess (Integer const i) const |
| bool | is_solution (const InputType &x, Real const tol=EPSILON_LOW) const |
Private Attributes | |
| Real | m_a {1.0} |
| Real | m_b {1.0} |
Additional Inherited Members | |
| Public Types inherited from Optimist::Function< Real, 2, 1, EllipticParaboloid< Real > > | |
| using | InputVector |
| using | OutputVector |
| using | Matrix |
| using | Tensor |
| Public Types inherited from Optimist::FunctionBase< Real, N, M, EllipticParaboloid< Real >, false > | |
| using | InputType |
| using | OutputType |
| using | FirstDerivativeType |
| using | SecondDerivativeType |
| Protected Attributes inherited from Optimist::FunctionBase< Real, N, M, EllipticParaboloid< Real >, false > | |
| std::vector< InputType > | m_solutions |
| std::vector< InputType > | m_guesses |
Class container for the paraboloid function, which is defined as:
\[f(\mathbf{x}) = ax^2 + by^2 \text{.} \]
The function has global minima at \(\mathbf{x} = (0, 0)\), with \(f(\mathbf{x}) = 0\). The initial guesses are generated on the square \(x_i \in \left[-100, 100\right]\).
| Real | Scalar number type. |
|
inline |
Class constructor for the paraboloid function.
|
inline |
Compute the function value at the input point.
| [in] | x | Input point. |
| [out] | out | The function value. |
|
inline |
Compute the first derivative value at the input point.
| [in] | x | Input point. |
| [out] | out | The first derivative value. |
|
inline |
Get the function name.
|
inline |
Compute the second derivative value at the input point.
| [in] | x | Input point. |
| [out] | out | The second derivative value. |
|
private |
Coefficient \( a \).
|
private |
Coefficient \( b \).