Download endw1.eso

Back to the list

   1 : C ENDW1     SOURCE    CHAT      05/01/12    23:39:20     5004           
   2 :       FUNCTION ENDW1 (N,ALPHA,BETA)
   3 :       IMPLICIT INTEGER(I-N)
   4 :       IMPLICIT REAL*8 (A-H,O-Z)
   5 :       REAL*8  ALPHA,BETA
   6 :       ZERO  = 0.D0
   7 :       ONE   = 1.D0
   8 :       TWO   = 2.D0
   9 :       THREE = 3.D0
  10 :       FOUR  = 4.D0
  11 :       APB   = ALPHA+BETA
  12 :       IF (N.EQ.0) THEN
  13 :          ENDW1 = ZERO
  14 :          RETURN
  15 :       ENDIF
  16 :       F1   = GAMMAF(ALPHA+TWO)*GAMMAF(BETA+ONE)/GAMMAF(APB+THREE)
  17 :       F1   = F1*(APB+TWO)*TWO**(APB+TWO)/TWO
  18 :       IF (N.EQ.1) THEN
  19 :          ENDW1 = F1
  20 :          RETURN
  21 :       ENDIF
  22 :       FINT1 = GAMMAF(ALPHA+TWO)*GAMMAF(BETA+ONE)/GAMMAF(APB+THREE)
  23 :       FINT1 = FINT1*TWO**(APB+TWO)
  24 :       FINT2 = GAMMAF(ALPHA+TWO)*GAMMAF(BETA+TWO)/GAMMAF(APB+FOUR)
  25 :       FINT2 = FINT2*TWO**(APB+THREE)
  26 :       F2    = (-TWO*(BETA+TWO)*FINT1 + (APB+FOUR)*FINT2)
  27 :      $        * (APB+THREE)/FOUR
  28 :       IF (N.EQ.2) THEN
  29 :          ENDW1 = F2
  30 :          RETURN
  31 :       ENDIF
  32 :       DO 100 I=3,N
  33 :          DI   = DBLE(I-1)
  34 :          ABN  = ALPHA+BETA+DI
  35 :          ABNN = ABN+DI
  36 :          A1   = -(TWO*(DI+ALPHA)*(DI+BETA))/(ABN*ABNN*(ABNN+ONE))
  37 :          A2   =  (TWO*(ALPHA-BETA))/(ABNN*(ABNN+TWO))
  38 :          A3   =  (TWO*(ABN+ONE))/((ABNN+TWO)*(ABNN+ONE))
  39 :          F3   =  -(A2*F2+A1*F1)/A3
  40 :          F1   = F2
  41 :          F2   = F3
  42 :  100  CONTINUE
  43 :       ENDW1  = F3
  44 :       RETURN
  45 :       END
  46 :  
  47 :  

© Cast3M 2003 - All rights reserved.
Disclaimer