00001
00002
00003 #ifndef FUNCTIONS_H
00004 #define FUNCTIONS_H
00005
00006 #ifdef HAVE_GSL
00007 #include <gsl/gsl_math.h>
00008 #include <gsl/gsl_sf.h>
00009 #include <gsl/gsl_randist.h>
00010 #include <gsl/gsl_const_num.h>
00011 #ifdef HAVE_GSL14
00012 #include <gsl/gsl_const_mksa.h>
00013 #include <gsl/gsl_const_cgsm.h>
00014 #else
00015 #include <gsl/gsl_const_mks.h>
00016 #include <gsl/gsl_const_cgs.h>
00017 #endif
00018 #endif
00019
00020 #ifdef HAVE_R
00021 #include <R.h>
00022 #include <Rmath.h>
00023 #endif
00024
00025
00026 double drand() { return random()/(double)RAND_MAX; }
00027 double my_rand() { return rand(); }
00028 double my_random() { return random(); }
00029 double my_fac(double i) { return fac((int)i); }
00030 double my_fdtr(double df1, double df2, double x) { return fdtr((int)df1, (int)df2, x); }
00031 double my_fdtrc(double df1, double df2, double x) { return fdtrc((int)df1, (int)df2, x); }
00032 double my_fdtri(double df1, double df2, double p) { return fdtri((int)df1, (int)df2, p); }
00033 double my_jn(double n, double x) { return jn((int)n,x); }
00034 double my_kn(double n, double x) { return kn((int)n,x); }
00035 double my_ldexp(double x, double expo) { return ldexp(x,(int)expo); }
00036 double my_pdtr(double k, double m) { return pdtr((int)k,m); }
00037 double my_pdtrc(double k, double m) { return pdtrc((int)k,m); }
00038 double my_pdtri(double k, double y) { return pdtr((int)k,y); }
00039 double my_stdtr(double k, double t) { return stdtr((short)k, t); }
00040 double my_stdtri(double k, double p) { return stdtri((short)k,p); }
00041 double my_yn(double n,double x) { return yn((int)n,x); }
00042
00043
00044 #ifdef HAVE_GSL
00045 #define MODE GSL_PREC_DOUBLE
00046
00047 double airy_Ai(double x) { return gsl_sf_airy_Ai(x,MODE); }
00048 double airy_Bi(double x) { return gsl_sf_airy_Bi(x,MODE); }
00049 double airy_Ais(double x) { return gsl_sf_airy_Ai_scaled(x,MODE); }
00050 double airy_Bis(double x) { return gsl_sf_airy_Bi_scaled(x,MODE); }
00051 double airy_Aid(double x) { return gsl_sf_airy_Ai_deriv(x,MODE); }
00052 double airy_Bid(double x) { return gsl_sf_airy_Bi_deriv(x,MODE); }
00053 double airy_Aids(double x) { return gsl_sf_airy_Ai_deriv_scaled(x,MODE); }
00054 double airy_Bids(double x) { return gsl_sf_airy_Bi_deriv_scaled(x,MODE); }
00055 double airy_0_Ai(double s) { return gsl_sf_airy_zero_Ai((unsigned int)s); }
00056 double airy_0_Bi(double s) { return gsl_sf_airy_zero_Bi((unsigned int)s); }
00057 double airy_0_Aid(double s) { return gsl_sf_airy_zero_Ai_deriv((unsigned int)s); }
00058 double airy_0_Bid(double s) { return gsl_sf_airy_zero_Bi_deriv((unsigned int)s); }
00059
00060 double bessel_Jn(double n,double x) { return gsl_sf_bessel_Jn((int)n,x); }
00061 double bessel_Yn(double n,double x) { return gsl_sf_bessel_Yn((int)n,x); }
00062 double bessel_In(double n,double x) { return gsl_sf_bessel_In((int)n,x); }
00063 double bessel_Ins(double n,double x) { return gsl_sf_bessel_In_scaled((int)n,x); }
00064 double bessel_Kn(double n,double x) { return gsl_sf_bessel_Kn((int)n,x); }
00065 double bessel_Kns(double n,double x) { return gsl_sf_bessel_Kn_scaled((int)n,x); }
00066 double bessel_jl(double l,double x) { return gsl_sf_bessel_jl((int)l,x); }
00067 double bessel_yl(double l,double x) { return gsl_sf_bessel_yl((int)l,x); }
00068 double bessel_ils(double l,double x) { return gsl_sf_bessel_il_scaled((int)l,x); }
00069 double bessel_kls(double l,double x) { return gsl_sf_bessel_kl_scaled((int)l,x); }
00070 double bessel_0_J0(double s) { return gsl_sf_bessel_zero_J0((unsigned int)s); }
00071 double bessel_0_J1(double s) { return gsl_sf_bessel_zero_J1((unsigned int)s); }
00072 double bessel_0_Jnu(double nu,double s) { return gsl_sf_bessel_zero_Jnu(nu,(unsigned int)s); }
00073
00074 double hydrogenicR(double n, double l, double z, double r) { return gsl_sf_hydrogenicR((int)n,(int)l,z,r); }
00075
00076 double ellint_Kc(double x) { return gsl_sf_ellint_Kcomp(x,MODE); }
00077 double ellint_Ec(double x) { return gsl_sf_ellint_Ecomp(x,MODE); }
00078 double ellint_F(double phi,double k) { return gsl_sf_ellint_F(phi,k,MODE); }
00079 double ellint_E(double phi,double k) { return gsl_sf_ellint_E(phi,k,MODE); }
00080 double ellint_P(double phi,double k,double n) { return gsl_sf_ellint_P(phi,k,n,MODE); }
00081 double ellint_D(double phi,double k,double n) { return gsl_sf_ellint_D(phi,k,n,MODE); }
00082 double ellint_RC(double x,double y) { return gsl_sf_ellint_RC(x,y,MODE); }
00083 double ellint_RD(double x,double y,double z) { return gsl_sf_ellint_RD(x,y,z,MODE); }
00084 double ellint_RF(double x,double y,double z) { return gsl_sf_ellint_RF(x,y,z,MODE); }
00085 double ellint_RJ(double x,double y,double z, double p) { return gsl_sf_ellint_RJ(x,y,z,p,MODE); }
00086
00087 double exprel_n(double n,double x) { return gsl_sf_exprel_n((int)n,x); }
00088 double fermi_dirac_int(double j,double x) { return gsl_sf_fermi_dirac_int((int)j,x); }
00089
00090 double taylorcoeff(double n,double x) { return gsl_sf_taylorcoeff((int)n,x); }
00091 double fact(double n) { return gsl_sf_fact((unsigned int)n); }
00092 double doublefact(double n) { return gsl_sf_doublefact((unsigned int)n); }
00093 double lnfact(double n) { return gsl_sf_lnfact((unsigned int)n); }
00094 double lndoublefact(double n) { return gsl_sf_lndoublefact((unsigned int)n); }
00095 double choose(double n,double m) { return gsl_sf_choose((unsigned int)n,(unsigned int)m); }
00096 double lnchoose(double n,double m) { return gsl_sf_lnchoose((unsigned int)n,(unsigned int)m); }
00097
00098 double gegenpoly_n(double n,double l,double x) { return gsl_sf_gegenpoly_n((int)n,l,x); }
00099 double hyperg_1F1i(double m,double n,double x) { return gsl_sf_hyperg_1F1_int((int)m,(int)n,x); }
00100 double hyperg_Ui(double m,double n,double x) { return gsl_sf_hyperg_U_int((int)m,(int)n,x); }
00101 double laguerre_n(double n,double a,double x) { return gsl_sf_laguerre_n((int)n,a,x); }
00102
00103 double legendre_Pl(double l,double x) { return gsl_sf_legendre_Pl((int)l,x); }
00104 double legendre_Ql(double l,double x) { return gsl_sf_legendre_Ql((int)l,x); }
00105 double legendre_Plm(double l,double m,double x) { return gsl_sf_legendre_Plm((int)l,(int)m,x); }
00106 double legendre_sphPlm(double l,double m,double x) { return gsl_sf_legendre_sphPlm((int)l,(int)m,x); }
00107 double conicalP_sphreg(double l,double L,double x) { return gsl_sf_conicalP_sph_reg((int)l,L,x); }
00108 double conicalP_cylreg(double m,double l,double x) { return gsl_sf_conicalP_sph_reg((int)m,l,x); }
00109 double legendre_H3d(double l, double L,double e) { return gsl_sf_legendre_H3d((int)l,L,e); }
00110
00111 double gsl_pow(double x, double n) { return gsl_sf_pow_int(x,(int)n); }
00112 double psii(double n) { return gsl_sf_psi_int((int)n); }
00113 double psi1i(double n) { return gsl_sf_psi_1_int((int)n); }
00114 double psi_n(double m, double x) { return gsl_sf_psi_n((int)m,x); }
00115
00116 double zetai(double n) { return gsl_sf_zeta_int((int)n); }
00117 double etai(double n) { return gsl_sf_eta_int((int)n); }
00118
00119
00120 double poisson(double k, double m) { return gsl_ran_poisson_pdf((unsigned int)k,m); }
00121 double bernoulli(double k, double p) { return gsl_ran_bernoulli_pdf((unsigned int)k,p); }
00122 double binomial(double k, double p,double n) { return gsl_ran_binomial_pdf((unsigned int)k,p,(unsigned int)n); }
00123 double negative_binomial(double k, double p,double n) { return gsl_ran_negative_binomial_pdf((unsigned int)k,p,n); }
00124 double pascal(double k, double p,double n) { return gsl_ran_pascal_pdf((unsigned int)k,p,(unsigned int)n); }
00125 double geometric(double k, double p) { return gsl_ran_geometric_pdf((unsigned int)k,p); }
00126 double hypergeometric(double k, double n1,double n2,double t) {
00127 return gsl_ran_hypergeometric_pdf((unsigned int)k,(unsigned int)n1,(unsigned int)n2,(unsigned int)t);
00128 }
00129 double logarithmic(double k, double p) { return gsl_ran_logarithmic_pdf((unsigned int)k,p); }
00130
00131 #endif
00132
00133 struct init arith_fncts[] = {
00134 #ifndef HAVE_SOLARIS
00135 {"atan",atan},
00136 {"atan2",atan2},
00137 {"beta",beta},
00138 {"chbevl",chbevl},
00139 {"ceil",ceil},
00140 {"chdtrc",chdtrc},
00141 {"chdtr",chdtr},
00142 {"chdtri",chdtri},
00143 {"ellie",ellie},
00144 {"ellik",ellik},
00145 {"expn",expn},
00146 {"fac",my_fac},
00147 {"fdtrc",my_fdtrc},
00148 {"fdtr",my_fdtr},
00149 {"fdtri",my_fdtri},
00150 {"gdtr",gdtr},
00151 {"gdtrc",gdtrc},
00152 {"hyp2f1",hyp2f1},
00153 {"hyperg",hyperg},
00154 {"igamc",igamc},
00155 {"igam",igam},
00156 {"igami",igami},
00157 {"incbet",incbet},
00158 {"incbi",incbi},
00159 {"iv",iv},
00160 {"jn",my_jn},
00161 {"jv",jv},
00162 {"kn",my_kn},
00163 {"lbeta",lbeta},
00164 {"ldexp",my_ldexp},
00165 {"pdtrc",my_pdtrc},
00166 {"pdtr",my_pdtr},
00167 {"pdtri",my_pdtri},
00168 {"pow",pow},
00169 {"stdtr",my_stdtr},
00170 {"stdtri",my_stdtri},
00171 {"struve",struve},
00172 {"yn",my_yn},
00173 {"yv",yv},
00174 {"zeta",zeta},
00175 #endif
00176 {"acos",acos},
00177 {"acosh",acosh},
00178 {"asin",asin},
00179 {"asinh",asinh},
00180 {"atanh",atanh},
00181 {"cbrt",cbrt},
00182 {"cos", cos},
00183 {"cosh",cosh},
00184 {"cosm1",cosm1},
00185 {"dawsn",dawsn},
00186 {"ellpe",ellpe},
00187 {"ellpk",ellpk},
00188 {"erf",erf},
00189 {"erfc",erfc},
00190 {"exp", exp},
00191 {"expm1",expm1},
00192 {"fabs",fabs},
00193
00194 {"i0",i0},
00195 {"i0e",i0e},
00196 {"i1",i1},
00197 {"i1e",i1e},
00198
00199 {"j0",j0},
00200 {"j1",j1},
00201 {"k0",k0},
00202 {"k0e",k0e},
00203 {"k1",k1},
00204 {"k1e",k1e},
00205 {"ln", log},
00206 {"log",log10},
00207 {"logb",logb},
00208 {"log1p",log1p},
00209
00210 {"ndtr",ndtr},
00211 {"ndtri",ndtri},
00212 {"psi",psi},
00213 #ifndef HAVE_SOLARIS
00214 {"rand",my_rand},
00215 {"random",my_random},
00216 {"drand",drand},
00217 #endif
00218
00219 {"rgamma",rgamma},
00220 {"rint",rint},
00221
00222
00223
00224 {"sin", sin},
00225 {"sinh",sinh},
00226 {"spence",spence},
00227 {"sqrt", sqrt},
00228 {"tan",tan},
00229 {"tanh",tanh},
00230 {"true_gamma",true_gamma},
00231
00232 {"y0",y0},
00233 {"y1",y1},
00234 {"zetac",zetac},
00235 #ifdef HAVE_GSL
00236 {"gsl_log1p",gsl_log1p},
00237 {"gsl_expm1",gsl_expm1},
00238 {"gsl_hypot",gsl_hypot},
00239 {"gsl_acosh",gsl_acosh},
00240 {"gsl_asinh",gsl_asinh},
00241 {"gsl_atanh",gsl_atanh},
00242 {"airy_ai",airy_Ai},
00243 {"airy_bi",airy_Bi},
00244 {"airy_ais",airy_Ais},
00245 {"airy_bis",airy_Bis},
00246 {"airy_aid",airy_Aid},
00247 {"airy_bid",airy_Bid},
00248 {"airy_aids",airy_Aids},
00249 {"airy_bids",airy_Bids},
00250 {"airy_0_ai",airy_0_Ai},
00251 {"airy_0_bi",airy_0_Bi},
00252 {"airy_0_aid",airy_0_Aid},
00253 {"airy_0_bid",airy_0_Bid},
00254 {"bessel_jj0",gsl_sf_bessel_J0},
00255 {"bessel_jj1",gsl_sf_bessel_J1},
00256 {"bessel_jn",bessel_Jn},
00257 {"bessel_yy0",gsl_sf_bessel_Y0},
00258 {"bessel_yy1",gsl_sf_bessel_Y1},
00259 {"bessel_yn",bessel_Yn},
00260 {"bessel_i0",gsl_sf_bessel_I0},
00261 {"bessel_i1",gsl_sf_bessel_I1},
00262 {"bessel_in",bessel_In},
00263 {"bessel_ii0s",gsl_sf_bessel_I0_scaled},
00264 {"bessel_ii1s",gsl_sf_bessel_I1_scaled},
00265 {"bessel_ins",bessel_Ins},
00266 {"bessel_k0",gsl_sf_bessel_K0},
00267 {"bessel_k1",gsl_sf_bessel_K1},
00268 {"bessel_kn",bessel_Kn},
00269 {"bessel_kk0s",gsl_sf_bessel_K0_scaled},
00270 {"bessel_kk1s",gsl_sf_bessel_K1_scaled},
00271 {"bessel_kns",bessel_Kns},
00272 {"bessel_j0",gsl_sf_bessel_j0},
00273 {"bessel_j1",gsl_sf_bessel_j1},
00274 {"bessel_j2",gsl_sf_bessel_j2},
00275 {"bessel_jl",bessel_jl},
00276 {"bessel_y0",gsl_sf_bessel_y0},
00277 {"bessel_y1",gsl_sf_bessel_y1},
00278 {"bessel_y2",gsl_sf_bessel_y2},
00279 {"bessel_yl",bessel_yl},
00280 {"bessel_i0s",gsl_sf_bessel_i0_scaled},
00281 {"bessel_i1s",gsl_sf_bessel_i1_scaled},
00282 {"bessel_i2s",gsl_sf_bessel_i2_scaled},
00283 {"bessel_ils",bessel_ils},
00284 {"bessel_k0s",gsl_sf_bessel_k0_scaled},
00285 {"bessel_k1s",gsl_sf_bessel_k1_scaled},
00286 {"bessel_k2s",gsl_sf_bessel_k2_scaled},
00287 {"bessel_kls",bessel_kls},
00288 {"bessel_jnu",gsl_sf_bessel_Jnu},
00289 {"bessel_ynu",gsl_sf_bessel_Ynu},
00290 {"bessel_inu",gsl_sf_bessel_Inu},
00291 {"bessel_inus",gsl_sf_bessel_Inu_scaled},
00292 {"bessel_knu",gsl_sf_bessel_Knu},
00293 {"bessel_inknu",gsl_sf_bessel_lnKnu},
00294 {"bessel_knus",gsl_sf_bessel_Knu_scaled},
00295 {"bessel_0_J0",bessel_0_J0},
00296 {"bessel_0_J1",bessel_0_J1},
00297 {"bessel_0_Jnu",bessel_0_Jnu},
00298 {"clausen",gsl_sf_clausen},
00299 {"hydrogenicr_1",gsl_sf_hydrogenicR_1},
00300 {"hydrogenicr",hydrogenicR},
00301 {"dawson",gsl_sf_dawson},
00302 {"debye_1",gsl_sf_debye_1},
00303 {"debye_2",gsl_sf_debye_2},
00304 {"debye_3",gsl_sf_debye_3},
00305 {"debye_4",gsl_sf_debye_4},
00306 #ifdef HAVE_GSL18
00307 {"debye_5",gsl_sf_debye_5},
00308 {"debye_6",gsl_sf_debye_6},
00309 #endif
00310 {"dilog",gsl_sf_dilog},
00311 {"ellint_kc",ellint_Kc},
00312 {"ellint_ec",ellint_Ec},
00313 {"ellint_f",ellint_F},
00314 {"ellint_e",ellint_E},
00315 {"ellint_p",ellint_P},
00316 {"ellint_d",ellint_D},
00317 {"ellint_rc",ellint_RC},
00318 {"ellint_rd",ellint_RD},
00319 {"ellint_rf",ellint_RF},
00320 {"ellint_rj",ellint_RJ},
00321 {"gsl_erf",gsl_sf_erf},
00322 {"gsl_erfc",gsl_sf_erfc},
00323 {"log_erfc",gsl_sf_log_erfc},
00324 {"erf_z",gsl_sf_erf_Z},
00325 {"erf_q",gsl_sf_erf_Q},
00326 {"gsl_exp",gsl_sf_exp},
00327 {"exprel",gsl_sf_exprel},
00328 {"exprel_2",gsl_sf_exprel_2},
00329 {"exprel_n",exprel_n},
00330 {"expint_e1",gsl_sf_expint_E1},
00331 {"expint_e2",gsl_sf_expint_E2},
00332 {"expint_ei",gsl_sf_expint_Ei},
00333 {"shi",gsl_sf_Shi},
00334 {"chi",gsl_sf_Chi},
00335 {"expint_3",gsl_sf_expint_3},
00336 {"si",gsl_sf_Si},
00337 {"ci",gsl_sf_Ci},
00338 {"atanint",gsl_sf_atanint},
00339 {"fermi_dirac_m1",gsl_sf_fermi_dirac_m1},
00340 {"fermi_dirac_0",gsl_sf_fermi_dirac_0},
00341 {"fermi_dirac_1",gsl_sf_fermi_dirac_1},
00342 {"fermi_dirac_2",gsl_sf_fermi_dirac_2},
00343 {"fermi_dirac_int",fermi_dirac_int},
00344 {"fermi_dirac_mhalf",gsl_sf_fermi_dirac_mhalf},
00345 {"fermi_dirac_half",gsl_sf_fermi_dirac_half},
00346 {"fermi_dirac_3half",gsl_sf_fermi_dirac_3half},
00347 {"fermi_dirac_inc_0",gsl_sf_fermi_dirac_inc_0},
00348 {"gamma",gsl_sf_gamma},
00349 {"lngamma",gsl_sf_lngamma},
00350 {"gammastar",gsl_sf_gammastar},
00351 {"gammainv",gsl_sf_gammainv},
00352 {"taylorcoeff",taylorcoeff},
00353 {"fact",fact},
00354 {"doublefact",doublefact},
00355 {"lnfact",lnfact},
00356 {"lndoublefact",lndoublefact},
00357 {"choose",choose},
00358 {"lnchoose",lnchoose},
00359 {"poch",gsl_sf_poch},
00360 {"lnpoch",gsl_sf_lnpoch},
00361 {"pochrel",gsl_sf_pochrel},
00362 {"gamma_inc_q",gsl_sf_gamma_inc_Q},
00363 {"gamma_inc_p",gsl_sf_gamma_inc_P},
00364 {"gsl_beta",gsl_sf_beta},
00365 {"lnbeta",gsl_sf_lnbeta},
00366 {"beta_inc",gsl_sf_beta_inc},
00367 {"gegenpoly_1",gsl_sf_gegenpoly_1},
00368 {"gegenpoly_2",gsl_sf_gegenpoly_2},
00369 {"gegenpoly_3",gsl_sf_gegenpoly_3},
00370 {"gegenpoly_n",gegenpoly_n},
00371 {"hyperg_0f1",gsl_sf_hyperg_0F1},
00372 {"hyperg_1f1i",hyperg_1F1i},
00373 {"hyperg_1f1",gsl_sf_hyperg_1F1},
00374 {"hyperg_ui",hyperg_Ui},
00375 {"hyperg_u",gsl_sf_hyperg_U},
00376 {"hyperg_2f1",gsl_sf_hyperg_2F1},
00377 {"hyperg_2f1c",gsl_sf_hyperg_2F1_conj},
00378 {"hyperg_2f1r",gsl_sf_hyperg_2F1_renorm},
00379 {"hyperg_2f1cr",gsl_sf_hyperg_2F1_conj_renorm},
00380 {"hyperg_2f0",gsl_sf_hyperg_2F0},
00381 {"laguerre_1",gsl_sf_laguerre_1},
00382 {"laguerre_2",gsl_sf_laguerre_2},
00383 {"laguerre_3",gsl_sf_laguerre_3},
00384 {"lambert_w0",gsl_sf_lambert_W0},
00385 {"lambert_wm1",gsl_sf_lambert_Wm1},
00386 {"legendre_p1",gsl_sf_legendre_P1},
00387 {"legendre_p2",gsl_sf_legendre_P2},
00388 {"legendre_p3",gsl_sf_legendre_P3},
00389 {"legendre_pl",legendre_Pl},
00390 {"legendre_q0",gsl_sf_legendre_Q0},
00391 {"legendre_q1",gsl_sf_legendre_Q1},
00392 {"legendre_ql",legendre_Ql},
00393 {"legendre_plm",legendre_Plm},
00394 {"legendre_sphplm",legendre_sphPlm},
00395 {"conicalp_half",gsl_sf_conicalP_half},
00396 {"conicalp_mhalf",gsl_sf_conicalP_mhalf},
00397 {"conicalp_0",gsl_sf_conicalP_0},
00398 {"conicalp_1",gsl_sf_conicalP_1},
00399 {"conicalp_sphreg",conicalP_sphreg},
00400 {"conicalp_cylreg",conicalP_cylreg},
00401 {"legendre_h3d_0",gsl_sf_legendre_H3d_0},
00402 {"legendre_h3d_1",gsl_sf_legendre_H3d_1},
00403 {"legendre_h3d",legendre_H3d},
00404 {"gsl_log",gsl_sf_log},
00405 {"loga",gsl_sf_log_abs},
00406 {"logp",gsl_sf_log_1plusx},
00407 {"logm",gsl_sf_log_1plusx_mx},
00408 {"gsl_pow",gsl_pow},
00409 {"psii",psii},
00410 {"psi",gsl_sf_psi},
00411 {"psiy",gsl_sf_psi_1piy},
00412 {"psi1i",psi1i},
00413 {"psi_n",psi_n},
00414 {"synchrotron_1",gsl_sf_synchrotron_1},
00415 {"synchrotron_2",gsl_sf_synchrotron_2},
00416 {"transport_2",gsl_sf_transport_2},
00417 {"transport_3",gsl_sf_transport_3},
00418 {"transport_4",gsl_sf_transport_4},
00419 {"transport_5",gsl_sf_transport_5},
00420 {"hypot",gsl_sf_hypot},
00421 {"sinc",gsl_sf_sinc},
00422 {"lnsinh",gsl_sf_lnsinh},
00423 {"lncosh",gsl_sf_lncosh},
00424 {"zetai",zetai},
00425 {"gsl_zeta",gsl_sf_zeta},
00426 {"hzeta",gsl_sf_hzeta},
00427 {"etai",etai},
00428 {"eta",gsl_sf_eta},
00429
00430 {"gaussian",gsl_ran_gaussian_pdf},
00431 {"ugaussian",gsl_ran_ugaussian_pdf},
00432 {"gaussian_tail",gsl_ran_gaussian_tail_pdf},
00433 {"ugaussian_tail",gsl_ran_ugaussian_tail_pdf},
00434 {"bivariate_gaussian",gsl_ran_bivariate_gaussian_pdf},
00435 {"exponential",gsl_ran_exponential_pdf},
00436 {"laplace",gsl_ran_laplace_pdf},
00437 {"exppow",gsl_ran_exppow_pdf},
00438 {"cauchy",gsl_ran_cauchy_pdf},
00439 {"rayleigh",gsl_ran_rayleigh_pdf},
00440 {"rayleigh_tail",gsl_ran_rayleigh_tail_pdf},
00441 {"landau",gsl_ran_landau_pdf},
00442 {"gamma_pdf",gsl_ran_gamma_pdf},
00443 {"flat",gsl_ran_flat_pdf},
00444 {"lognormal",gsl_ran_lognormal_pdf},
00445 {"chisq",gsl_ran_chisq_pdf},
00446 {"fdist",gsl_ran_fdist_pdf},
00447 {"tdist",gsl_ran_tdist_pdf},
00448 {"beta_pdf",gsl_ran_beta_pdf},
00449 {"logistic",gsl_ran_logistic_pdf},
00450 {"pareto",gsl_ran_pareto_pdf},
00451 {"weibull",gsl_ran_weibull_pdf},
00452 {"gumbel1",gsl_ran_gumbel1_pdf},
00453 {"gumbel2",gsl_ran_gumbel2_pdf},
00454 {"poisson",poisson},
00455 {"bernoulli",bernoulli},
00456 {"binomial",binomial},
00457 {"negative_binomial",negative_binomial},
00458 {"pascal",pascal},
00459 {"geometric",geometric},
00460 {"hypergeometric",hypergeometric},
00461 {"logarithmic",logarithmic},
00462 #endif
00463 #ifdef HAVE_R
00464 {"gammafn",gammafn},
00465 {"lgammafn",lgammafn},
00466 {"digamma",digamma},
00467 {"trigamma",trigamma},
00468 {"tetragamma",tetragamma},
00469 {"pentagamma",pentagamma},
00470 {"psigamma",psigamma},
00471 {"R_beta",beta},
00472 {"R_lbeta",lbeta},
00473 {"choose",choose},
00474 {"lchoose",lchoose},
00475 {"bessel_i",bessel_i},
00476 {"bessel_j",bessel_j},
00477 {"bessel_k",bessel_k},
00478 {"bessel_y",bessel_y},
00479 {"R_pow",R_pow},
00480 {"pythag",pythag},
00481 {"log1p",log1p},
00482 {"log1pmx",log1pmx},
00483 {"lgamma1p",lgamma1p},
00484 {"logspace_add",logspace_add},
00485 {"logspace_sub",logspace_sub},
00486 {"fmin2",fmin2},
00487 {"fmax2",fmax2},
00488 {"sign",sign},
00489 {"fsign",fsign},
00490 {"fprec",fprec},
00491 {"fround",fround},
00492 {"ftrunc",ftrunc},
00493
00494 {"dbeta",dbeta},
00495 {"pbeta",pbeta},
00496 {"qbeta",qbeta},
00497 {"rbeta",rbeta},
00498 {"dnbeta",dnbeta},
00499 {"pnbeta",pnbeta},
00500 {"dbinom",dbinom},
00501 {"pbinom",pbinom},
00502 {"qbinom",qbinom},
00503 {"rbinom",rbinom},
00504 {"dcauchy",dcauchy},
00505 {"pcauchy",pcauchy},
00506 {"qcauchy",qcauchy},
00507 {"rcauchy",rcauchy},
00508 {"dchisq",dchisq},
00509 {"pchisq",pchisq},
00510 {"qchisq",qchisq},
00511 {"rchisq",rchisq},
00512 {"dnchisq",dnchisq},
00513 {"pnchisq",pnchisq},
00514 {"qnchisq",qnchisq},
00515 {"rnchisq",rnchisq},
00516 {"dexp",dexp},
00517 {"pexp",pexp},
00518 {"qexp",qexp},
00519 {"rexp",rexp},
00520 {"df",df},
00521 {"pf",pf},
00522 {"qf",qf},
00523 {"rf",rf},
00524 {"pnf",pnf},
00525 {"dgamma",dgamma},
00526 {"pgamma",pgamma},
00527 {"qgamma",qgamma},
00528 {"rgamma",rgamma},
00529 {"dgeom",dgeom},
00530 {"pgeom",pgeom},
00531 {"qgeom",qgeom},
00532 {"rgeom",rgeom},
00533 {"dhyper",dhyper},
00534 {"phyper",phyper},
00535 {"qhyper",qhyper},
00536 {"rhyper",rhyper},
00537 {"dlogis",dlogis},
00538 {"plogis",plogis},
00539 {"qlogis",qlogis},
00540 {"rlogis",rlogis},
00541 {"dlnorm",dlnorm},
00542 {"plnorm",plnorm},
00543 {"qlnorm",qlnorm},
00544 {"rlnorm",rlnorm},
00545 {"dnbinom",dnbinom},
00546 {"pnbinom",pnbinom},
00547 {"qnbinom",qnbinom},
00548 {"rnbinom",rnbinom},
00549 {"dnorm",dnorm},
00550 {"pnorm",pnorm},
00551 {"qnorm",qnorm},
00552 {"rnorm",rnorm},
00553 {"dpois",dpois},
00554 {"ppois",ppois},
00555 {"qpois",qpois},
00556 {"rpois",rpois},
00557 {"dt",dt},
00558 {"pt",pt},
00559 {"qt",qt},
00560 {"rt",rt},
00561 {"pnt",pnt},
00562 {"ptukey",ptukey},
00563 {"qtukey",qtukey},
00564 {"dunif",dunif},
00565 {"punif",punif},
00566 {"qunif",qunif},
00567 {"runif",runif},
00568 {"dweibull",dweibull},
00569 {"pweibull",pweibull},
00570 {"qweibull",qweibull},
00571 {"rweibull",rweibull},
00572 {"dwilcox",dwilcox},
00573 {"pwilcox",pwilcox},
00574 {"qwilcox",qwilcox},
00575 {"rwilcox",rwilcox},
00576 {"dsignrank",dsignrank},
00577 {"psignrank",psignrank},
00578 {"qsignrank",qsignrank},
00579 {"rsignrank",rsignrank},
00580 #endif
00581 {0, 0}
00582 };
00583
00584 #endif