LegendreJacobiRadauMatrix
Radau matrix for Legendre polynomials.
Interface
- ܀ Interface
 - ️܀ See example
 - ↢
 
INTERFACE
  MODULE PURE SUBROUTINE LegendreJacobiRadauMatrix(a, n, D, E, alphaCoeff, &
    & betaCoeff)
    REAL(DFP), INTENT(IN) :: a
    !! one of the end of the domain
    INTEGER(I4B), INTENT(IN) :: n
    !! n should be greater than or equal to 1
    REAL(DFP), INTENT(OUT) :: D(:)
    !! the size should be 1:n+1
    REAL(DFP), INTENT(OUT) :: E(:)
    !! the size should be 1:n
    REAL(DFP), OPTIONAL, INTENT(OUT) :: alphaCoeff(0:)
    REAL(DFP), OPTIONAL, INTENT(OUT) :: betaCoeff(0:)
  END SUBROUTINE LegendreJacobiRadauMatrix
END INTERFACE
program main
use easifemBase
implicit none
INTEGER( I4B ), parameter :: n = 5
REAL( DFP ) :: D(n+1), E(n+1), alphaCoeff(n+1), betaCoeff(n+1)
CALL LegendreJacobiRadauMatrix(-1.0_DFP, n, D, E, alphaCoeff, betaCoeff)
CALL Display(D, "D: ")
CALL Display(E, "E: ")
CALL Display(alphaCoeff, "alphaCoeff: ")
CALL Display(betaCoeff, "betaCoeff: ")
end program main
See results
results
   D:   
--------
 0.00000
 0.00000
 0.00000
 0.00000
 0.00000
-0.54545
  E:   
-------
0.57735
0.51640
0.50709
0.50395
0.50252
0.00000
alphaCoeff: 
------------
  0.00000   
  0.00000   
  0.00000   
  0.00000   
  0.00000   
  0.00000   
betaCoeff: 
-----------
  2.00000  
  0.33333  
  0.26667  
  0.25714  
  0.25397  
  0.00000