Optimist  0.0.0
A C++ library for optimization
Loading...
Searching...
No Matches
Optimist::TestSet::Cos< Scalar > Class Template Reference

Class container for the cosine function. More...

#include <Cos.hh>

Inherits Optimist::Function< Scalar, Scalar, Cos< Scalar > >.

Public Member Functions

 Cos ()
constexpr std::string name_impl () const
bool evaluate_impl (const Scalar x, Scalar &out) const
bool first_derivative_impl (const Scalar x, Scalar &out) const
bool second_derivative_impl (const Scalar x, Scalar &out) const
Public Member Functions inherited from Optimist::Function< Scalar, Scalar, Cos< Scalar > >
 Function ()
constexpr std::string name () const
bool evaluate (const Scalar &x, Scalar &out) const
bool jacobian (const Scalar &x, FirstDerivative &out) const
bool hessian (const Scalar &x, SecondDerivative &out) const
Public Member Functions inherited from Optimist::FunctionBase< Scalar, Scalar, Cos< Scalar > >
 FunctionBase ()
constexpr std::string name () const
bool evaluate (const Scalar &x, Scalar &out) const
bool first_derivative (const Scalar &x, FirstDerivative &out) const
bool second_derivative (const Scalar &x, SecondDerivative &out) const
constexpr Integer input_dimension () const
constexpr Integer output_dimension () const
const std::vector< Scalar > & solutions () const
const std::vector< Scalar > & guesses () const
const Scalarsolution (const Integer i) const
const Scalarguess (const Integer i) const
bool is_solution (const Scalar &x, const Scalar tol=FunctionBase::SQRT_EPSILON) const

Additional Inherited Members

Public Types inherited from Optimist::FunctionBase< Scalar, Scalar, Cos< Scalar > >
using InputTrait
using OutputTrait
using Scalar
using FirstDerivative
using SecondDerivative
Protected Attributes inherited from Optimist::FunctionBase< Scalar, Scalar, Cos< Scalar > >
std::vector< Scalarm_solutions
std::vector< Scalarm_guesses

Detailed Description

template<typename Scalar>
requires TypeTrait<Scalar>::IsScalar
class Optimist::TestSet::Cos< Scalar >

Class container for the cosine function, which is defined as:

\[f(x) = \cos(x) \text{.} \]

The function has roots at \(x = i\pi\), with \(f(x) = 0\), and minima at \(x = -\pi + 2i\pi\), with \(f(x) = -1\) and \(i = 0, 1, \ldots, n\). The initial guesses are generated on the range \(x \in \left[-\pi, \pi\right]\).

Template Parameters
ScalarFloating-point number type.

Constructor & Destructor Documentation

◆ Cos()

template<typename Scalar>
Optimist::TestSet::Cos< Scalar >::Cos ( )
inline

Class constructor for the cosine function.

Member Function Documentation

◆ evaluate_impl()

template<typename Scalar>
bool Optimist::TestSet::Cos< Scalar >::evaluate_impl ( const Scalar x,
Scalar & out ) const
inline

Compute the function value at the input point.

Parameters
[in]xInput point.
[out]outThe function value.
Returns
The boolean flag for successful evaluation.

◆ first_derivative_impl()

template<typename Scalar>
bool Optimist::TestSet::Cos< Scalar >::first_derivative_impl ( const Scalar x,
Scalar & out ) const
inline

Compute the first derivative value at the input point.

Parameters
[in]xInput point.
[out]outThe first derivative value.
Returns
The boolean flag for successful evaluation.

◆ name_impl()

template<typename Scalar>
std::string Optimist::TestSet::Cos< Scalar >::name_impl ( ) const
inlineconstexpr

Get the function name.

Returns
The function name.

◆ second_derivative_impl()

template<typename Scalar>
bool Optimist::TestSet::Cos< Scalar >::second_derivative_impl ( const Scalar x,
Scalar & out ) const
inline

Compute the second derivative value at the input point.

Parameters
[in]xInput point.
[out]outThe second derivative value.
Returns
The boolean flag for successful evaluation.

The documentation for this class was generated from the following file:
  • core/include/Optimist/TestSet/Cos.hh