Télécharger fdens.procedur

Retour à la liste

Numérotation des lignes :

  1. * FDENS PROCEDUR CHLOE 99/03/18 21:15:03 3528
  2. debproc fdens tpar*table xi*flottant;
  3. *
  4. *
  5. * xi la variable
  6. *
  7. *
  8. *
  9. * tpar table contenant les parametres de la densite
  10. *
  11. * SORTIE :
  12. *
  13. *
  14. * fdens valeur de la densite en xi
  15. *
  16. *
  17. *loi rectangulaire
  18. numva=tpar . typva;
  19. SI (EGA numva loi_uniforme);
  20. A=TPAR . A;
  21. B=TPAR . B;
  22. SI (ET (>EG Xi A) (<EG Xi B));
  23. xDENS= 1./ (B - A);
  24. SINON;
  25. xDENS=0.;
  26. FINSI;
  27. quitter fdens;
  28. FINSI;
  29. *
  30. *
  31. *loi laplace
  32. SI (EGA numva loi_de_laplace ) ;
  33. xDENS=0.5 * (EXP (0. - (ABS Xi)));
  34. quitter fdens;
  35. FINSI;
  36. *
  37. *
  38. *loi normale standard centree reduite
  39. SI (EGA numva loi_normale_standard) ;
  40. AUX1=0.5*Xi*Xi;
  41. AUX3=(2.*PI)**0.5;
  42. xDENS= (EXP (0. - AUX1)) / AUX3;
  43. quitter fdens;
  44. FINSI;
  45. *
  46. *
  47. *loi exponentielle
  48. SI (EGA numva loi_exponentielle) ;
  49. LBDA=TPAR . LAMBDA;
  50. MU= TPAR . MU;
  51. SI (>EG Xi MU);
  52. xDENS=LBDA*(EXP (LBDA*(MU - Xi)));
  53. SINON;
  54. xDENS=0.;
  55. FINSI;
  56. quitter fdens;
  57. FINSI;
  58. *
  59. *
  60. *loi lognormale
  61. SI (EGA numva loi_lognormale );
  62. SI (> XI 0.);
  63. MOY = TPAR . MOYENNE ;
  64. FSIG= TPAR . ECART_TYPE;
  65. MOY2 = MOY * MOY;
  66. FSIG2=FSIG * FSIG;
  67. *N pour ecarttype et moyenne de la loi normale associe
  68. NSIG2=log((MOY2+FSIG2)/MOY2);
  69. NSIG = NSIG2 ** 0.5;
  70. NMOY = log(moy2/((MOY2+FSIG2)** 0.5));
  71. aux=(2 * Pi)**0.5;
  72. xdens = 1 / (aux * NSIG * XI) * (exp (-1 / (2 * NSIG2) *
  73. (log xi - NMOY) * (log xi - NMOY)));
  74. sinon;
  75. xdens = 0d0;
  76. finsi;
  77. quitter fdens;
  78. finsi;
  79. *
  80. *
  81. *loi normale
  82. SI (EGA numva loi_normale);
  83. MOY = TPAR . MOYENNE ;
  84. FSIG= TPAR . ECART_TYPE;
  85. aux1 = xi - moy ** 2 / -2 / (fsig*fsig);
  86. xdens = exp aux1 / ((2*pi)**0.5)/fsig ;
  87. quitter fdens;
  88. finsi;
  89. *
  90. *
  91. *loi weibull min
  92. SI (EGA numva loi_weibull_min);
  93. TAU= TPAR . TAU;
  94. K= TPAR . K;
  95. W= TPAR . W;
  96. SI (>EG Xi TAU);
  97. AUX=(Xi-TAU)/(W-TAU);
  98. AUX2=AUX**(K - 1);
  99. AUX3=0. - (AUX**K);
  100. xDENS=AUX2*K/(W-TAU)*(EXP AUX3);
  101. SINON;
  102. xDENS = 0.;
  103. FINSI;
  104. quitter fdens;
  105. FINSI;
  106. *
  107. *
  108. *loi normale tronquee
  109. SI (EGA numva loi_normale_tronquee);
  110. MM = TPAR . MOYENNE;
  111. SIIGM= TPAR . ECART_TYPE;
  112. MMIN= TPAR . MIN;
  113. MMAX= TPAR . MAX;
  114. SI (OU (<EG Xi MMIN) (>EG Xi MMAX));
  115. xDENS=0.;
  116. SINON;
  117. AUX=(MMIN-MM)/SIIGM;
  118. AUX1=1 - (erf (-0.7071067811865475 * aux )) * 0.5;
  119. AUX=(MMAX-MM)/SIIGM;
  120. AUX2=1 - (erf (-0.7071067811865475 * aux )) * 0.5;
  121. AUX3=(Xi-MM)*(Xi-MM)/(-2.*SIIGM*SIIGM);
  122. AUX4=(2.*PI)**0.5*SIIGM;
  123. xDENS=(EXP AUX3)/(AUX2 - AUX1)/AUX4;
  124. FINSI;
  125. quitter fdens;
  126. FINSI;
  127. *
  128. *
  129. **loi exponentielle tronquee
  130. SI (EGA numva loi_exponentielle_tronquee);
  131. LBDA=TPAR . LAMBDA;
  132. MU= TPAR . MU ;
  133. MIN= TPAR . MIN;
  134. MAX= TPAR . MAX;
  135. M=MAXIMUM (PROG MIN MU);
  136. SI (OU (<EG Xi M) (>EG Xi MAX));
  137. xDENS=0.;
  138. SINON;
  139. AUX1=EXP (LBDA*(MU-M));
  140. AUX2=EXP (LBDA*(MU-MAX));
  141. xDENS=LBDA*(EXP (LBDA*(MU-Xi)))/(AUX1 - AUX2);
  142. FINSI;
  143. quitter fdens;
  144. FINSI;
  145. *
  146. *
  147. ***loi gumbel max
  148. SI (EGA numva loi_gumbel_max);
  149. LBDA=TPAR . LAMBDA;
  150. MU= TPAR . MU ;
  151. AUX=EXP (0. - (LBDA*(Xi - MU)));
  152. xDENS=LBDA*(EXP (0. - LBDA*(Xi - MU) - AUX));
  153. quitter fdens;
  154. FINSI;
  155. *
  156. *
  157. ****loi normale tronquee inf
  158. SI (EGA numva loi_normale_tronquee_inf);
  159. MM = TPAR . MOYENNE;
  160. SSIGM= TPAR . ECART_TYPE;
  161. MMIN= TPAR . MIN;
  162. SI (< Xi MMIN);
  163. xDENS=0.;
  164. SINON;
  165. AUX = (MMIN - MM)/SSIGM;
  166. AUX1 =1 - (erf (-0.7071067811865475 * aux )) * 0.5;
  167. AUX2=(Xi-MM)*(Xi-MM)/(-2*SSIGM*SSIGM);
  168. xDENS=(EXP AUX2)/((2.*PI)**0.5*SSIGM*(1. - AUX1));
  169. FINSI;
  170. quitter fdens;
  171. FINSI;
  172. *
  173. *
  174. ***** Loi de Frechet
  175. SI (EGA numva loi_de_frechet);
  176. U = TPAR . U;
  177. K = TPAR . K;
  178. B = TPAR . B;
  179. SI (&lt;EG Xi B);
  180. xDENS = 0.;
  181. SINON;
  182. XAUX = ((U - B) / (Xi - B))**K;
  183. D1 = EXP (-1. * XAUX);
  184. xDENS = D1 * XAUX * K / (Xi - B);
  185. FINSI;
  186. quitter fdens;
  187. FINSI;
  188. ****
  189. ****
  190. ****
  191. finproc xdens;
  192.  
  193.  

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