13#ifndef OPTIMIST_TESTSET_QUADRATIC_HH
14#define OPTIMIST_TESTSET_QUADRATIC_HH
41 template <
typename Scalar>
42 requires TypeTrait<Scalar>::IsScalar
56 std::sqrt(this->m_b * this->m_b - 4.0 * this->m_a * this->m_c))};
57 this->
m_solutions.emplace_back((-this->m_b + delta) /
59 this->
m_solutions.emplace_back((-this->m_b - delta) /
81 out = this->m_a * x * x + this->m_b * x + this->m_c;
82 return std::isfinite(out);
92 out = 2.0 * this->m_a * x + this->m_b;
93 return std::isfinite(out);
103 out = 2.0 * this->m_a;
104 return std::isfinite(out);
#define OPTIMIST_BASIC_CONSTANTS(Scalar)
Definition Optimist.hh:70
typename InputTrait::Scalar Scalar
Definition Function.hh:53
std::vector< Scalar > m_guesses
Definition Function.hh:79
std::vector< Scalar > m_solutions
Definition Function.hh:77
Function()
Definition Function.hh:234
constexpr std::string name_impl() const
Definition Quadratic.hh:70
bool second_derivative_impl(Scalar, Scalar &out) const
Definition Quadratic.hh:102
Scalar m_a
Definition Quadratic.hh:44
bool evaluate_impl(const Scalar x, Scalar &out) const
Definition Quadratic.hh:80
Quadratic()
Definition Quadratic.hh:54
Scalar m_c
Definition Quadratic.hh:46
Scalar m_b
Definition Quadratic.hh:45
bool first_derivative_impl(const Scalar x, Scalar &out) const
Definition Quadratic.hh:91
Namespace for the Optimist library.
Definition Optimist.hh:90