Charlier Polynomials



Charlier Polynomials
Charlier polynomials, Cn(x; α), α > 0, are orthogonal on the support interval [0,∞) with weight function
w(x) = exp(-α) Σn=0[ xα / x! ] &delta(x - n)
and normalized by the requirement that the leading coefficient Cn(x; α) is (-1 / α)n.

Cn(x; α) satisfies the three-term recurrence relation
α Cn+1(x; α) = (n + α - x) Cn(x; α) - n Cn-1(x; α)for n ≥ 1
with starting values
C0(x; α) = 1, C1(x; α) = 1 - x / α.

Function List

  • double Charlier_Cn( double x, double alpha, int n )

    This function returns Cn(x; α) where Cn(x; α) is described above.

  • long double xCharlier_Cn( long double x, long double alpha, int n )

    This function returns Cn(x; α) where Cn(x; α) is described above.

  • void Charlier_Cn_Sequence( double C[ ], double x, double alpha, int max_n )

    This function returns Cn(x; α), for n = 0, 1, …, max_n in the array C[ ] where Cn(x; α) is described above. Note that C[ ] should be declared as double C[N] where
    N ≥ max_n + 1.

  • void xCharlier_Cn_Sequence( long double C[ ], long double x, long double alpha, int max_n )

    This function returns Cn(x; α), for n = 0, 1, …, max_n in the array C[ ] where Cn(x; α) is described above. Note that C[ ] should be declared as long double C[N] where
    N ≥ max_n + 1.

  • double Charlier_Cn_Series( double x, double alpha, double a[ ], int degree)

    This function returns Σk=0na[k] Ck(x; α) where n = degree and Ck(x; α) for k = 0, …, n is described above.

  • long double xCharlier_Cn_Series( long double x, long double alpha, long double a[ ], int degree )

    This function returns Σk=0na[k] Ck(x; α) where n = degree and Ck(x; α) for k = 0, …, n is described above.

Source Code

C source code is available for these routines: