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 (<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 :
© Cast3M 2003 - All rights reserved.
Disclaimer