Download zwgljd.eso

Back to the list

   1 : C ZWGLJD    SOURCE    CHAT      05/01/13    04:25:30     5004           
   2 :       SUBROUTINE ZWGLJD (Z,W,NP,ALPHA,BETA)
   3 : C--------------------------------------------------------------------
   4 : C
   5 : C     Generate NP GAUSS LOBATTO JACOBI points (Z) and weights (W)
   6 : C     associated with Jacobi polynomial P(N)(alpha>-1,beta>-1).
   7 : C     The polynomial degree N=NP-1.
   8 : C     Double precision version.
   9 : C
  10 : C--------------------------------------------------------------------
  11 :       IMPLICIT INTEGER(I-N)
  12 :       IMPLICIT REAL*8 (A-H,O-Z)
  13 :       REAL*8 Z(*),W(*),ALPHA,BETA
  14 :       N     = NP-1
  15 :       NM1   = N-1
  16 :       ONE   = 1.D0
  17 :       TWO   = 2.D0
  18 : C
  19 :       IF (NP.LE.1) THEN
  20 :          WRITE (6,*) 'Minimum number of Gauss-Lobatto points is 2'
  21 :          STOP
  22 :       ENDIF
  23 :       IF ((ALPHA.LE.-ONE).OR.(BETA.LE.-ONE)) THEN
  24 :          WRITE (6,*) 'Alpha and Beta must be greater than -1'
  25 :          STOP
  26 :       ENDIF
  27 : C
  28 :       IF (NM1.GT.0) THEN
  29 :          ALPG  = ALPHA+ONE
  30 :          BETG  = BETA+ONE
  30 :          CALL ZWGJD (Z(2),W(2),NM1,ALPG,BETG)
  31 :       ENDIF
  32 :       Z(1)  = -ONE
  33 :       Z(NP) =  ONE
  34 :       DO 100 I=2,NP-1
  35 :          W(I) = W(I)/(ONE-Z(I)**2)
  36 :  100  CONTINUE
  36 :       CALL JACOBF (P,PD,PM1,PDM1,PM2,PDM2,N,ALPHA,BETA,Z(1))
  37 :       W(1)  = ENDW1 (N,ALPHA,BETA)/(TWO*PD)
  37 :       CALL JACOBF (P,PD,PM1,PDM1,PM2,PDM2,N,ALPHA,BETA,Z(NP))
  38 :       W(NP) = ENDW2 (N,ALPHA,BETA)/(TWO*PD)
  39 :       RETURN
  40 :       END
  41 :  
  42 :  

© Cast3M 2003 - All rights reserved.
Disclaimer