32 INTEGER,
parameter :: dbp = selected_real_kind (15,307)
34 REAL(dbp) :: EPS, M_PI
35 parameter(eps=3.0d-15)
36 parameter(m_pi=3.141592654d0)
39 REAL(dbp) p1, p2, p3, pp, z, z1
40 INTEGER*4,
INTENT(IN) :: ngp
41 REAL(dbp),
INTENT(OUT) :: xabsc(ngp), weig(ngp)
49 z = cos( m_pi * (i-0.25d0) / (ngp+0.5d0) )
61 p1 = ((2.0d0*j-1.0d0) * z * p2 - (j-1.0d0)*p3) / j
67 pp = ngp*(z*p1-p2)/(z*z-1.0d0)
71 if (dabs(z-z1) .gt. eps)
GOTO 100
75 weig(i) = 2.0d0/((1.0d0-z*z)*pp*pp)
76 weig(ngp+1-i) = weig(i)