Legendre integration. More...
Functions/Subroutines | |
| subroutine | evaluate_legendre_points_and_weights (points, weights) |
| subroutine | evaluate_zero_legendre_and_derivative (n, legendre0, derivative0) |
| Evaluate the Legendre polynomial of degree n and its derivative at the point 0. | |
| subroutine | compute_legendre_first_root_and_derivative (n, legendre0, root, derivative) |
| Compute the first positive root of Legendre polynomial of degree n and its derivative at 0. | |
| double precision function | legendre_get_next_root_approximation (n, root) |
Legendre integration.
| subroutine mod_math_legendre::compute_legendre_first_root_and_derivative | ( | integer, intent(in) | n, |
| double precision, intent(in) | legendre0, | ||
| double precision, intent(out) | root, | ||
| double precision, intent(out) | derivative ) |
Compute the first positive root of Legendre polynomial of degree n and its derivative at 0.
Remarks:
The article of Glaser et al. proposes a specific algorithm to find the first positive root of the Legendre polynomials.
| subroutine mod_math_legendre::evaluate_legendre_points_and_weights | ( | double precision, dimension(:) | points, |
| double precision, dimension(:) | weights ) |
| subroutine mod_math_legendre::evaluate_zero_legendre_and_derivative | ( | integer, intent(in) | n, |
| double precision, intent(out) | legendre0, | ||
| double precision, intent(out) | derivative0 ) |
Evaluate the Legendre polynomial of degree n and its derivative at the point 0.
Legendre polynomials Pn of degree n verifies the Bonnet recurrence formula:
(n+1) Pn+1(x) = (2n+1) x Pn(x) - Pn-1(x)
with P0(x) = 1 and P1(x) = x
For x = 0, we get
n-1
Pn(0) = - --- Pn-2(0)
n
The derivative verifies the following recurrence formula:
(2n+1) Pn(x) - n P'n-1(x)
P'n+1(x) = ---------------------------
n+1
| double precision function mod_math_legendre::legendre_get_next_root_approximation | ( | integer, intent(in) | n, |
| double precision, intent(in) | root ) |