HERMITE_POLYNOMIAL
Hermite Polynomials
HERMITE_POLYNOMIAL
is a MATLAB library which
evaluates the physicist's Hermite polynomial, the probabilist's Hermite polynomial,
the Hermite function, and related functions.
The physicist's Hermite polynomial H(n,x) can be defined by:
H(n,x) = (-1)^n exp(x^2/2) * d^n/dx^n ( exp(-x^2/2) )
The normalized physicist's Hermite polynomial Hn(n,x) is scaled so that
Integral ( -oo < X < +oo ) exp ( - X^2 ) * Hn(M,X) Hn(N,X) dX = delta ( N, M )
The probabilist's Hermite polynomial He(n,x) is related to H(n,x) by:
He(n,x) = H(n,x/sqrt(2)) / sqrt ( 2^n )
The normalized probabilist's Hermite polynomial Hen(n,x) is scaled so that
Integral ( -oo < X < +oo ) exp ( - 0.5*X^2 ) * Hen(M,X) Hen(N,X) dX = delta ( N, M )
The Hermite function Hf(n,x) is related to H(n,x) by:
Hf(n,x) = H(n,x) * exp(-x^2/2) / sqrt ( 2^n * n! * sqrt ( pi ) )
The Hermite function Hf(n,x) is scaled so that:
Integral ( -oo < X < +oo ) Hf(M,X) Hf(N,X) dX = delta ( N, M )
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Languages:
HERMITE_POLYNOMIAL is available in
a C++ version and
a FORTRAN90 version and
a MATLAB version.
Related Data and Programs:
CHEBYSHEV_POLYNOMIAL,
a MATLAB library which
evaluates the Chebyshev polynomial and associated functions.
GEN_HERMITE_RULE,
a MATLAB program which
can compute and print a generalized Gauss-Hermite quadrature rule.
HERMITE_PRODUCT_DISPLAY,
a MATLAB program which
displays an image of a function created by the Cartesian product of two Hermite polynomials,
such as f(x,y) = h(3,x) * h(1,y).
HERMITE_RULE,
a MATLAB program which
can compute and print a Gauss-Hermite quadrature rule.
JACOBI_POLYNOMIAL,
a MATLAB library which
evaluates the Jacobi polynomial and associated functions.
LAGUERRE_POLYNOMIAL,
a MATLAB library which
evaluates the Laguerre polynomial, the generalized Laguerre polynomials,
and the Laguerre function.
LEGENDRE_POLYNOMIAL,
a MATLAB library which
evaluates the Legendre polynomial and associated functions.
PCE_BURGERS,
a MATLAB program which
defines and solves a version of the time-dependent viscous Burgers equation,
with uncertain viscosity, using a polynomial chaos expansion in terms
of Hermite polynomials,
by Gianluca Iaccarino.
PCE_ODE_HERMITE,
a MATLAB program which
sets up a simple scalar ODE for exponential decay with an uncertain
decay rate, using a polynomial chaos expansion in terms of Hermite polynomials.
POLPAK,
a MATLAB library which
evaluates a variety of mathematical functions.
TEST_VALUES,
a MATLAB library which
supplies test values of various mathematical functions.
Reference:
-
Theodore Chihara,
An Introduction to Orthogonal Polynomials,
Gordon and Breach, 1978,
ISBN: 0677041500,
LC: QA404.5 C44.
-
Walter Gautschi,
Orthogonal Polynomials: Computation and Approximation,
Oxford, 2004,
ISBN: 0-19-850672-4,
LC: QA404.5 G3555.
-
Frank Olver, Daniel Lozier, Ronald Boisvert, Charles Clark,
NIST Handbook of Mathematical Functions,
Cambridge University Press, 2010,
ISBN: 978-0521192255,
LC: QA331.N57.
-
Gabor Szego,
Orthogonal Polynomials,
American Mathematical Society, 1992,
ISBN: 0821810235,
LC: QA3.A5.v23.
Source Code:
-
h_integral.m,
evaluates a monomial physicist's Hermite integral for H(n,x).
-
h_polynomial.m,
evaluates the physicist's Hermite polynomial H(n,x).
-
h_polynomial_coefficients.m,
evaluates the coefficients of the physicist's Hermite polynomial H(n,x).
-
h_polynomial_values.m,
a few tabulated values of the physicist's Hermite polynomial H(n,x).
-
h_polynomial_zeros.m,
returns zeros of the physicist's Hermite polynomial H(n,x).
-
h_quadrature_rule.m,
returns quadrature rules associated with the physicist's Hermite polynomial H(n,x).
-
he_double_product_integral.m,
integral of He(i,x)*He(j,x)*e^(-0.5*x^2).
-
he_integral.m,
evaluates a monomial probabilist's Hermite integral for He(n,x).
-
he_polynomial.m,
evaluates the probabilist's Hermite polynomial He(n,x).
-
he_polynomial_values.m,
a few tabulated values of the probabilist's Hermite polynomial He(n,x).
-
he_polynomial_zeros.m,
returns zeros of the probabilist's Hermite polynomial He(n,x).
-
he_quadrature_rule.m,
returns quadrature rules associated with the probabilist's Hermite polynomial He(n,x).
-
he_triple_product_integral.m,
integral of He(i,x)*He(j,x)*He(k,x)*e^(-0.5*x^2).
-
hen_exponential_product.m,
tabulates integrals of e^(b*x) Hen(i,x) Hen(j,x) e^(-0.5*x^2).
-
hen_polynomial.m,
evaluates the normalized probabilist's Hermite polynomial Hen(n,x).
-
hen_power_product.m,
tabulates integrals of x^e Hen(i,x) Hen(j,x) e^(-0.5*x^2).
-
hf_exponential_product.m,
tabulates integrals of e^(b*x) Hf(i,x) Hf(j,x).
-
hf_function.m,
evaluates the Hermite function Hf(n,x);
-
hf_function_values.m,
a few tabulated values of the Hermite function Hf(n,x);
-
hf_plot.m,
plots one or more Hermite functions Hf(n,x).
-
hf_power_product.m,
tabulates integrals of x^e Hf(i,x) Hf(j,x).
-
hf_quadrature_rule.m,
returns quadrature rules associated with the Hermite function Hf(n,x).
-
hn_exponential_product.m,
tabulates integrals of e^(b*x) Hn(i,x) Hn(j,x) e^(-x^2).
-
hn_polynomial.m,
evaluates the normalized physicist's Hermite polynomial Hn(n,x).
-
hen_power_product.m,
tabulates integrals of x^e Hn(i,x) Hn(j,x) e^(-x^2).
-
imtqlx.m,
diagonalizes a symmetric tridiagonal matrix;
-
r8_factorial.m,
computes the factorial function;
-
r8_factorial2.m,
computes the double factorial function;
-
r8_sign.m,
returns the sign of an R8.
-
r8mat_print.m,
prints an R8MAT;
-
r8mat_print_some.m,
prints some of an R8MAT;
-
r8vec_print.m,
prints an R8VEC;
-
r8vec2_print.m,
prints a pair of R8VEC's;
-
timestamp.m,
prints the current YMDHMS date as a time stamp.
Examples and Tests:
-
hermite_polynomial_test.m, calls all the tests;
-
hermite_polynomial_test_output.txt,
the output file.
-
hermite_polynomial_test01.m,
tests h_polynomial;
-
hermite_polynomial_test02.m,
tests he_polynomial;
-
hermite_polynomial_test03.m,
tests hf_function;
-
hermite_polynomial_test04.m,
tests h_polynomial_zeros;
-
hermite_polynomial_test05.m,
tests he_polynomial_zeros;
-
hermite_polynomial_test06.m,
tests h_quadrature_rule;
-
hermite_polynomial_test07.m,
tests he_quadrature_rule;
-
hermite_polynomial_test08.m,
tests hn_exponential_product;
-
hermite_polynomial_test09.m,
tests hn_power_product;
-
hermite_polynomial_test10.m,
tests hen_exponential_product;
-
hermite_polynomial_test11.m,
tests hen_power_product;
-
hermite_polynomial_test12.m,
tests hf_exponential_product;
-
hermite_polynomial_test13.m,
tests hf_power_product;
-
hermite_polynomial_test14.m,
tests h_polynomial_coefficients;
-
hermite_polynomial_plot01.m,
tests hf_plot;
-
hf_plot.png,
a plot of Hermite functions 0 through 5 over [-5,+5];
You can go up one level to
the MATLAB source codes.
Last modified on 25 February 2012.