45 return std::sqrt(
w(x))*
value(
n, x);
67 return std::pow(x,
s_)*std::exp(-x);
73 QL_REQUIRE(mu > -0.5,
"mu must be bigger than -0.5");
85 return (i % 2) != 0U ?
Real(i / 2.0 +
mu_) :
Real(i / 2.0);
89 return std::pow(std::fabs(x), 2*
mu_)*std::exp(-x*x);
112 QL_FAIL(
"can't compute a_k for jacobi integration\n");
133 QL_FAIL(
"can't compute b_k for jacobi integration\n");
179 return 1/std::cosh(x);
GaussChebyshev2ndPolynomial()
GaussChebyshevPolynomial()
GaussGegenbauerPolynomial(Real lambda)
Real mu_0() const override
Real beta(Size i) const override
Real alpha(Size i) const override
Real w(Real x) const override
GaussHermitePolynomial(Real mu=0.0)
Real mu_0() const override
Real beta(Size i) const override
Real alpha(Size i) const override
Real w(Real x) const override
Real mu_0() const override
Real beta(Size i) const override
Real alpha(Size i) const override
Real w(Real x) const override
GaussJacobiPolynomial(Real alpha, Real beta)
Real mu_0() const override
GaussLaguerrePolynomial(Real s=0.0)
Real beta(Size i) const override
Real alpha(Size i) const override
Real w(Real x) const override
GaussLegendrePolynomial()
Real weightedValue(Size i, Real x) const
Real value(Size i, Real x) const
virtual Real w(Real x) const =0
floating-point comparisons
Classes and functions for error handling.
#define QL_REQUIRE(condition, message)
throw an error if the given pre-condition is not verified
#define QL_FAIL(message)
throw an error (possibly with file and line information)
#define QL_ASSERT(condition, message)
throw an error if the given condition is not verified
orthogonal polynomials for gaussian quadratures
std::size_t Size
size of a container
bool close_enough(const Quantity &m1, const Quantity &m2, Size n)