8 if((derivOrder > polyOrder) || (polyOrder==0))
11 double c = (derivOrder%2==0) ? 1.0 : -1.0;
13 return c *
Laguerre(
a + derivOrder).BasisEvaluate(polyOrder-derivOrder,x);
17 return -1.0/double(
k);
20 return (2.0*
k+
a-1.0)/double(
k);
23 return (
k-1.0+
a)/double(
k);
35 return std::tgamma(polyOrder+
a+1.0) / std::tgamma(polyOrder+1);
39 REGISTER_SCALARBASIS_FAMILY(
Laguerre)
Family of Laguerre orthogonal polynomials.
virtual double ak(unsigned int k) const override
Implement .
virtual double bk(unsigned int k) const override
Implement .
virtual double phi1(double x) const override
Implement .
Laguerre(const double aIn=0.0)
virtual double Normalization(unsigned int polyOrder) const override
virtual double phi0(double x) const override
Implement .
virtual double ck(unsigned int k) const override
Implement .
virtual double DerivativeEvaluate(int const polyOrder, int const derivOrder, double const x) const override