ply_gauleg Subroutine

public subroutine ply_gauleg(x1, x2, x, w, nIntP)

subroutine to create gauss points and weights for one-dimensional integration on the interval [x1,x2].


real(kind=rk), intent(in) :: x1

lower limit of integration interval

real(kind=rk), intent(in) :: x2

upper limit of integration interval

real(kind=rk), intent(inout), allocatable:: x(:)

The coordinates of the gauss points on the interval [-1,1]. The array has the length nIntP.

real(kind=rk), intent(inout), allocatable:: w(:)

The quadrature weights. The array has the length nIntP.

integer, intent(in) :: nIntP

The number of integration points.

Called by

proc~~ply_gauleg~~CalledByGraph proc~ply_gauleg ply_gauleg proc~ply_qlegonedimcoeff ply_QLegOneDimCoeff proc~ply_qlegonedimcoeff->proc~ply_gauleg proc~ply_initqlegprojcoeff ply_initQLegProjCoeff proc~ply_initqlegprojcoeff->proc~ply_qlegonedimcoeff proc~ply_qpolyprojection ply_QPolyProjection proc~ply_qpolyprojection->proc~ply_initqlegprojcoeff



real(kind=rk), private :: z1
real(kind=rk), private :: z
real(kind=rk), private :: xm
real(kind=rk), private :: xl
real(kind=rk), private :: pp
real(kind=rk), private :: p3
real(kind=rk), private :: p2
real(kind=rk), private :: p1
real(kind=rk), private :: EPS
integer, private :: m
integer, private :: i
integer, private :: j