Télécharger gamma.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : gamma.dgibi
  2. ********************************************************************
  3.  
  4. ************************************************************************
  5. ************************************************************************
  6.  
  7. ************************************************************************
  8. * Cas-test de VERIFICATION et VALIDATION pour les operateurs
  9. * GAMM (Fonction Gamma d'Euler)
  10. * BESS (Fonction Bessel)
  11. ************************************************************************
  12. 'OPTI' 'TRAC' 'PSC';
  13. 'OPTI' 'EPTR' 5 ;
  14.  
  15.  
  16. *****************************************************************************
  17. * Fonctions Gamma d'Euler
  18. *****************************************************************************
  19. LRG ='PROG' -4.995 'PAS' 0.01 4.995 ;
  20. LG1 ='GAMM' LRG ;
  21. EVG ='EVOL' 'BRIQ' 'MANU' LRG LG1 ;
  22. Tit1 ='CHAI' 'Fonction Gamma : \G(x)';
  23.  
  24. 'DESS' EVG 'TITR' Tit1 'TITX' 'x' 'TITY' '\G(x)' 'AXES' 'XBOR' -5. 5. 'YBOR' -5. 5. ;
  25.  
  26. * VALIDATION : relation de recurrence : Gamma(x+1) = x * Gamma(x)
  27. LG2 = 'GAMM' (LRG + 1) ;
  28. Verif_G =(LG2 / (LRG * LG1)) - 1.D0 ;
  29.  
  30. * Erreur le cas echeant
  31. Max_Err_G ='MAXI' 'ABS' Verif_G ;
  32. XPREC_G =('VALE' 'PREC') * 100. ;
  33. 'SI' (Max_Err_G '>' XPREC_G );
  34. 'MESS' 'Fonction GAMMA incorrecte : Erreur relative =' Max_Err_G ;
  35. 'ERRE' 5 ;
  36. 'FINS';
  37.  
  38.  
  39. *****************************************************************************
  40. * Fonctions de Bessel de type J
  41. *****************************************************************************
  42. LRJ ='PROG' -20. 'PAS' 0.01 20. ;
  43. LBJ0 ='BESS' 'J0' LRJ ;
  44. LBJ1 ='BESS' 'J1' LRJ ;
  45. LBJ2 ='BESS' 'JN' 2 LRJ ;
  46.  
  47. EVJ0 ='EVOL' 'BRIQ' 'MANU' LRJ LBJ0 ;
  48. EVJ1 ='EVOL' 'BOUT' 'MANU' LRJ LBJ1 ;
  49. EVJ2 ='EVOL' 'BLEU' 'MANU' LRJ LBJ2 ;
  50. EVJ_Tot = EVJ0 'ET' EVJ1 'ET' EVJ2 ;
  51.  
  52. TLEG1 ='TABL' ;
  53. TLEG1.'TITRE' ='TABL' ;
  54. TLEG1.'TITRE'. 1 ='CHAI' 'f(x) = Bessel J_{0}(x)' ;
  55. TLEG1.'TITRE'. 2 ='CHAI' 'f(x) = Bessel J_{1}(x)' ;
  56. TLEG1.'TITRE'. 3 ='CHAI' 'f(x) = Bessel J_{2}(x)' ;
  57. Tit1 ='CHAI' 'Fonction de Bessel de type J';
  58.  
  59. 'DESS' EVJ_Tot 'LEGE' TLEG1 'NE' 'TITR' Tit1 'TITX' 'x' 'TITY' 'f(x)' 'AXES' 'YBOR' -1. 1.;
  60.  
  61. * VALIDATION : relation de recurrence sur les Jn : J0(x) + J2(x) = 2 * J1(x) / x
  62. Verif_J =(LRJ * (LBJ0 + LBJ2) / (2. * LBJ1)) - 1.D0 ;
  63.  
  64. * Erreur le cas echeant
  65. Max_Err_J ='MAXI' 'ABS' Verif_J ;
  66. XPREC_J =('VALE' 'PREC') * 2100. ;
  67. 'SI' (Max_Err_J '>' XPREC_J );
  68. 'MESS' 'Fonctions BESSEL J_n(x) incorrectes : Erreur relative =' Max_Err_J XPREC_J ;
  69. 'ERRE' 5 ;
  70. 'FINS';
  71.  
  72.  
  73. *****************************************************************************
  74. * Fonctions de Bessel de type Y
  75. *****************************************************************************
  76. LRY ='PROG' 0.04 'PAS' 0.01 20. ;
  77. LBY0 ='BESS' 'Y0' LRY ;
  78. LBY1 ='BESS' 'Y1' LRY ;
  79. LBY2 ='BESS' 'YN' 2 LRY ;
  80.  
  81. EVY0 ='EVOL' 'BRIQ' 'MANU' LRY LBY0 ;
  82. EVY1 ='EVOL' 'BOUT' 'MANU' LRY LBY1 ;
  83. EVY2 ='EVOL' 'BLEU' 'MANU' LRY LBY2 ;
  84. EVY_Tot = EVY0 'ET' EVY1 'ET' EVY2 ;
  85.  
  86. TLEG1 ='TABL' ;
  87. TLEG1.'TITRE' ='TABL' ;
  88. TLEG1.'TITRE'. 1 ='CHAI' 'f(x) = Bessel Y_{0}(x)' ;
  89. TLEG1.'TITRE'. 2 ='CHAI' 'f(x) = Bessel Y_{1}(x)' ;
  90. TLEG1.'TITRE'. 3 ='CHAI' 'f(x) = Bessel Y_{2}(x)' ;
  91. Tit1 ='CHAI' 'Fonction de Bessel de type Y';
  92.  
  93. 'DESS' EVY_Tot 'LEGE' TLEG1 'SE' 'TITR' Tit1 'TITX' 'x' 'TITY' 'f(x)' 'AXES' 'YBOR' -2. 1.;
  94.  
  95. * VALIDATION : relation de recurrence sur les Y_n : Y0(x) + Y2(x) = 2 * Y1(x) / x
  96. Verif_Y =(LRY * (LBY0 + LBY2) / (2. * LBY1)) - 1.D0 ;
  97.  
  98. * Erreur le cas echeant
  99. Max_Err_Y ='MAXI' 'ABS' Verif_Y ;
  100. XPREC_Y =('VALE' 'PREC') * 2000. ;
  101. 'SI' (Max_Err_Y '>' XPREC_Y );
  102. 'MESS' 'Fonctions BESSEL Y_n(x) incorrectes : Erreur relative =' Max_Err_Y XPREC_Y ;
  103. 'ERRE' 5 ;
  104. 'FINS';
  105.  
  106. FIN;
  107.  
  108.  
  109.  
  110.  
  111.  

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