Télécharger kweib1.procedur

Retour à la liste

Numérotation des lignes :

  1. * KWEIB1 PROCEDUR AM 09/12/07 21:15:52 6578
  2. DEBPROC KWEIB1 x1*flottant;
  3. *-------------------------------------------------------------------------------
  4. * Calcul du parametre K pour la loi de Weibull min avec TAU=0 et 0<CV<1 donne
  5. *-------------------------------------------------------------------------------
  6. *
  7. * PROCEDURE GRACIEUSEMENT MISE A DISPOSITION PAR F. DUPRAT
  8. *
  9.  
  10. SI (x1 &lt;EG 0.)
  11. MESS 'KWEIB1 : X<0';
  12. k3=0.;
  13. QUIT KWEIB1;
  14. FINSI;
  15. SI (x1 >EG 1.)
  16. MESS 'KWEIB1 : X>1';
  17. k3=0.;
  18. QUIT KWEIB1;
  19. FINSI;
  20.  
  21. prec1=1.e-8;
  22. itmax1=100;
  23. k1=1.;
  24. dk1=0.1/x1;
  25. REPE bouc1;
  26. SI (&bouc1 > itmax1);
  27. quit bouc1;
  28. FINSI;
  29. f1=(GAM1 (1.+(1./k1)));
  30. f2=(GAM1 (1.+(2./k1)));
  31. g1=f2-((f1**2)*(1.+(x1*x1)));
  32. SI (g1 < 0.);
  33. k2=k1;
  34. k1=k1-dk1;
  35. QUIT bouc1;
  36. SINON;
  37. k1=k1+dk1;
  38. FINSI;
  39. FIN bouc1;
  40. SI (&bouc1 > itmax1);
  41. MESS 'KWEIB1 : iter>100 (1)';
  42. QUIT KWEIB1;
  43. k3=0.;
  44. FINSI;
  45. REPE bouc1;
  46. SI (&bouc1 > itmax1);
  47. quit bouc1;
  48. FINSI;
  49. k3=(k1+k2)/2.;
  50. f1=(GAM1 (1.+(1./k3)));
  51. f2=(GAM1 (1.+(2./k3)));
  52. g1=f2-((f1**2)*(1.+(x1*x1)));
  53. SI (ABS(g1) < prec1);
  54. QUIT bouc1;
  55. SINON;
  56. SI (g1 > 0.);
  57. k1=k3;
  58. SINON;
  59. k2=k3;
  60. FINSI;
  61. FINSI;
  62. FIN bouc1;
  63. SI (&bouc1 > itmax1);
  64. MESS 'KWEIB1 : iter>100 (2)';
  65. k3=0.;
  66. QUIT KWEIB1;
  67. FINSI;
  68.  
  69. FINPROC k3;
  70.  
  71.  
  72.  

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