Télécharger endw1.eso

Retour à la liste

Numérotation des lignes :

  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. RETURN
  14. ENDIF
  15. F1 = GAMMAF(ALPHA+TWO)*GAMMAF(BETA+ONE)/GAMMAF(APB+THREE)
  16. F1 = F1*(APB+TWO)*TWO**(APB+TWO)/TWO
  17. IF (N.EQ.1) THEN
  18. ENDW1 = F1
  19. RETURN
  20. ENDIF
  21. FINT1 = GAMMAF(ALPHA+TWO)*GAMMAF(BETA+ONE)/GAMMAF(APB+THREE)
  22. FINT1 = FINT1*TWO**(APB+TWO)
  23. FINT2 = GAMMAF(ALPHA+TWO)*GAMMAF(BETA+TWO)/GAMMAF(APB+FOUR)
  24. FINT2 = FINT2*TWO**(APB+THREE)
  25. F2 = (-TWO*(BETA+TWO)*FINT1 + (APB+FOUR)*FINT2)
  26. $ * (APB+THREE)/FOUR
  27. IF (N.EQ.2) THEN
  28. ENDW1 = F2
  29. RETURN
  30. ENDIF
  31. DO 100 I=3,N
  32. DI = DBLE(I-1)
  33. ABN = ALPHA+BETA+DI
  34. ABNN = ABN+DI
  35. A1 = -(TWO*(DI+ALPHA)*(DI+BETA))/(ABN*ABNN*(ABNN+ONE))
  36. A2 = (TWO*(ALPHA-BETA))/(ABNN*(ABNN+TWO))
  37. A3 = (TWO*(ABN+ONE))/((ABNN+TWO)*(ABNN+ONE))
  38. F3 = -(A2*F2+A1*F1)/A3
  39. F1 = F2
  40. F2 = F3
  41. 100 CONTINUE
  42. ENDW1 = F3
  43. RETURN
  44. END
  45.  
  46.  
  47.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales