Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

functions.h

Go to the documentation of this file.
00001 /*LabPlot : functions.h*/
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 /* redefine functions to use double parameter*/
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 /* wrapper for GSL functions with integer parameters*/
00044 #ifdef HAVE_GSL
00045 #define MODE GSL_PREC_DOUBLE
00046 /* airy functions*/
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 /* bessel functions */
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 /* elliptic integrals */
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 /* gamma*/
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 /* random number distributions */
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 /*  {"fresnl",fresnl},*/
00194   {"i0",i0},
00195   {"i0e",i0e},
00196   {"i1",i1},
00197   {"i1e",i1e},
00198 /*  {"ilogb",ilogb},*/
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 /*  {"mtherr",mtherr},*/
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 /*  {"revers",revers},*/
00219   {"rgamma",rgamma},
00220   {"rint",rint},
00221 /*  {"round",round},*/
00222 /*  {"shichi",shichi},*/
00223 /*  {"sici",sici},*/
00224   {"sin", sin},
00225   {"sinh",sinh},
00226   {"spence",spence},
00227   {"sqrt", sqrt},
00228   {"tan",tan},
00229   {"tanh",tanh},
00230   {"true_gamma",true_gamma},
00231 /*  {"trunc",trunc},*/
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 /* from gsl_randist.h */
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 // random number distributions
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 /*FUNCTIONS_H*/

Generated on Sat Oct 13 21:55:01 2007 for LabPlot by  doxygen 1.4.4