Logo Search packages:      
Sourcecode: labplot version File versions

parser.h

/*LabPlot : parser.h*/
#ifndef PARSER_H
#define PARSER_H

#include <ctype.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#ifdef HAVE_GSL
#include <gsl/gsl_math.h>
#include <gsl/gsl_sf.h>
#include <gsl/gsl_randist.h>
#include <gsl/gsl_const_num.h>

#ifdef HAVE_NEWGSL
#include <gsl/gsl_const_mksa.h>
#include <gsl/gsl_const_cgsm.h>
#else
#include <gsl/gsl_const_mks.h>
#include <gsl/gsl_const_cgs.h>
#endif

#endif

#include "../cephes/cephes.h"

/* Functions type.                                   */
#ifdef USE_SOLARIS 
typedef double (*func_t) (double);
#else
typedef double (*func_t) ();
#endif

/* Data type for links in the chain of symbols.      */
struct symrec {
      char *name;  /* name of symbol                     */
      int type;    /* type of symbol: either VAR or FNCT */
      union {
            double var;                  /* value of a VAR   */
            int intvar;
            func_t fnctptr;              /* value of a FNCT  */
      } value;
      struct symrec *next;    /* link field              */
};

typedef struct symrec symrec;

symrec *putsym (const char *,int  func_t);
symrec *getsym (const char *);
void init_table(void);
int yyerror (const char*);
int yylex ();

double res;
int pos;
char string[500];
 
struct init {
      char *fname;
#ifdef USE_SOLARIS 
      double (*fnct)(double);
#else
      double (*fnct)();
#endif
};

struct con {
      char *name;
      double value;
};

/* redefine functions to use double parameter*/
double my_fac(double i) {
      return fac((int)i);
}

double my_fdtr(double df1, double df2, double x) {
      return fdtr((int)df1, (int)df2, x);
}

double my_fdtrc(double df1, double df2, double x) {
      return fdtrc((int)df1, (int)df2, x);
}

double my_fdtri(double df1, double df2, double p) {
      return fdtri((int)df1, (int)df2, p);
}

double my_jn(double n, double x) {
      return jn((int)n,x);
}

double my_kn(double n, double x) {
      return kn((int)n,x);
}

double my_ldexp(double x, double exp) {
      return ldexp(x,(int)exp);
}

double my_pdtr(double k, double m) {
      return pdtr((int)k,m);
}

double my_pdtrc(double k, double m) {
      return pdtrc((int)k,m);
}

double my_pdtri(double k, double y) {
      return pdtr((int)k,y);
}

double my_stdtr(double k, double t) {
      return stdtr((short)k, t);
}

double my_stdtri(double k, double p) {
      return stdtri((short)k,p);
}

double my_yn(double n,double x) {
      return yn((int)n,x);
}

/* wrapper for GSL functions with integer parameters*/
#ifdef HAVE_GSL
#define MODE GSL_PREC_DOUBLE
/* airy functions*/
double airy_Ai(double x) { return gsl_sf_airy_Ai(x,MODE); }
double airy_Bi(double x) { return gsl_sf_airy_Bi(x,MODE); }
double airy_Ais(double x) { return gsl_sf_airy_Ai_scaled(x,MODE); }
double airy_Bis(double x) { return gsl_sf_airy_Bi_scaled(x,MODE); }
double airy_Aid(double x) { return gsl_sf_airy_Ai_deriv(x,MODE); }
double airy_Bid(double x) { return gsl_sf_airy_Bi_deriv(x,MODE); }
double airy_Aids(double x) { return gsl_sf_airy_Ai_deriv_scaled(x,MODE); }
double airy_Bids(double x) { return gsl_sf_airy_Bi_deriv_scaled(x,MODE); }
double airy_0_Ai(double s) { return gsl_sf_airy_zero_Ai((unsigned int)s); }
double airy_0_Bi(double s) { return gsl_sf_airy_zero_Bi((unsigned int)s); }
double airy_0_Aid(double s) { return gsl_sf_airy_zero_Ai_deriv((unsigned int)s); }
double airy_0_Bid(double s) { return gsl_sf_airy_zero_Bi_deriv((unsigned int)s); }
/* bessel functions */
double bessel_Jn(double n,double x) { return gsl_sf_bessel_Jn((int)n,x); }
double bessel_Yn(double n,double x) { return gsl_sf_bessel_Yn((int)n,x); }
double bessel_In(double n,double x) { return gsl_sf_bessel_In((int)n,x); }
double bessel_Ins(double n,double x) { return gsl_sf_bessel_In_scaled((int)n,x); }
double bessel_Kn(double n,double x) { return gsl_sf_bessel_Kn((int)n,x); }
double bessel_Kns(double n,double x) { return gsl_sf_bessel_Kn_scaled((int)n,x); }
double bessel_jl(double l,double x) { return gsl_sf_bessel_jl((int)l,x); }
double bessel_yl(double l,double x) { return gsl_sf_bessel_yl((int)l,x); }
double bessel_ils(double l,double x) { return gsl_sf_bessel_il_scaled((int)l,x); }
double bessel_kls(double l,double x) { return gsl_sf_bessel_kl_scaled((int)l,x); }
double bessel_0_J0(double s) { return gsl_sf_bessel_zero_J0((unsigned int)s); }
double bessel_0_J1(double s) { return gsl_sf_bessel_zero_J1((unsigned int)s); }
double bessel_0_Jnu(double nu,double s) { return gsl_sf_bessel_zero_Jnu(nu,(unsigned int)s); }

double hydrogenicR(double n, double l, double z, double r) { return gsl_sf_hydrogenicR((int)n,(int)l,z,r); } 
/* elliptic integrals */
double ellint_Kc(double x) { return gsl_sf_ellint_Kcomp(x,MODE); }
double ellint_Ec(double x) { return gsl_sf_ellint_Ecomp(x,MODE); }
double ellint_F(double phi,double k) { return gsl_sf_ellint_F(phi,k,MODE); }
double ellint_E(double phi,double k) { return gsl_sf_ellint_E(phi,k,MODE); }
double ellint_P(double phi,double k,double n) { return gsl_sf_ellint_P(phi,k,n,MODE); }
double ellint_D(double phi,double k,double n) { return gsl_sf_ellint_D(phi,k,n,MODE); }
double ellint_RC(double x,double y) { return gsl_sf_ellint_RC(x,y,MODE); }
double ellint_RD(double x,double y,double z) { return gsl_sf_ellint_RD(x,y,z,MODE); }
double ellint_RF(double x,double y,double z) { return gsl_sf_ellint_RF(x,y,z,MODE); }
double ellint_RJ(double x,double y,double z, double p) { return gsl_sf_ellint_RJ(x,y,z,p,MODE); }

double exprel_n(double n,double x) { return gsl_sf_exprel_n((int)n,x); }
double fermi_dirac_int(double j,double x) { return gsl_sf_fermi_dirac_int((int)j,x); }
/* gamma*/
double taylorcoeff(double n,double x) { return gsl_sf_taylorcoeff((int)n,x); }
double fact(double n) { return gsl_sf_fact((unsigned int)n); }
double doublefact(double n) { return gsl_sf_doublefact((unsigned int)n); }
double lnfact(double n) { return gsl_sf_lnfact((unsigned int)n); }
double lndoublefact(double n) { return gsl_sf_lndoublefact((unsigned int)n); }
double choose(double n,double m) { return gsl_sf_choose((unsigned int)n,(unsigned int)m); }
double lnchoose(double n,double m) { return gsl_sf_lnchoose((unsigned int)n,(unsigned int)m); }

double gegenpoly_n(double n,double l,double x) { return gsl_sf_gegenpoly_n((int)n,l,x); }
double hyperg_1F1i(double m,double n,double x) { return gsl_sf_hyperg_1F1_int((int)m,(int)n,x); }
double hyperg_Ui(double m,double n,double x) { return gsl_sf_hyperg_U_int((int)m,(int)n,x); }
double laguerre_n(double n,double a,double x) { return gsl_sf_laguerre_n((int)n,a,x); }

double legendre_Pl(double l,double x) { return gsl_sf_legendre_Pl((int)l,x); }
double legendre_Ql(double l,double x) { return gsl_sf_legendre_Ql((int)l,x); }
double legendre_Plm(double l,double m,double x) { return gsl_sf_legendre_Plm((int)l,(int)m,x); }
double legendre_sphPlm(double l,double m,double x) { return gsl_sf_legendre_sphPlm((int)l,(int)m,x); }
double conicalP_sphreg(double l,double L,double x) { return gsl_sf_conicalP_sph_reg((int)l,L,x); }
double conicalP_cylreg(double m,double l,double x) { return gsl_sf_conicalP_sph_reg((int)m,l,x); }
double legendre_H3d(double l, double L,double e) { return gsl_sf_legendre_H3d((int)l,L,e); }

double gsl_pow(double x, double n) { return gsl_sf_pow_int(x,(int)n); }
double psii(double n) { return gsl_sf_psi_int((int)n); }
double psi1i(double n) { return gsl_sf_psi_1_int((int)n); }
double psi_n(double m, double x) { return gsl_sf_psi_n((int)m,x); }

double zetai(double n) { return gsl_sf_zeta_int((int)n); }
double etai(double n) { return gsl_sf_eta_int((int)n); }

/* random number distributions */
double poisson(double k, double m) { return gsl_ran_poisson_pdf((unsigned int)k,m); }
double bernoulli(double k, double p) { return gsl_ran_bernoulli_pdf((unsigned int)k,p); }
double binomial(double k, double p,double n) { return gsl_ran_binomial_pdf((unsigned int)k,p,(unsigned int)n); }
double negative_binomial(double k, double p,double n) { return gsl_ran_negative_binomial_pdf((unsigned int)k,p,n); }
double pascal(double k, double p,double n) { return gsl_ran_pascal_pdf((unsigned int)k,p,(unsigned int)n); }
double geometric(double k, double p) { return gsl_ran_geometric_pdf((unsigned int)k,p); }
double hypergeometric(double k, double n1,double n2,double t) { 
      return gsl_ran_hypergeometric_pdf((unsigned int)k,(unsigned int)n1,(unsigned int)n2,(unsigned int)t); 
}
double logarithmic(double k, double p) { return gsl_ran_logarithmic_pdf((unsigned int)k,p); }

#endif

struct con constants[] = {
      {"PI1",M_1_PI},
      {"PI2",M_2_PI},
      {"PISQRT2",M_2_SQRTPI},
      {"E",M_E},
      {"LN2",M_LN2},
      {"LN10",M_LN10},
      {"LOG2E",M_LOG2E},
      {"LOG10E",M_LOG10E},
      {"PI",M_PI},
      {"PI_2",M_PI_2},
      {"PI_4",M_PI_4},
      {"SQRT2",M_SQRT2},
      {"SQRT1_2",M_SQRT1_2},
#ifdef HAVE_GSL
#ifdef HAVE_NEWGSL
      {"c",GSL_CONST_MKSA_SPEED_OF_LIGHT},
      {"mu0",GSL_CONST_MKSA_VACUUM_PERMEABILITY},
      {"e0",GSL_CONST_MKSA_VACUUM_PERMITTIVITY},
      {"Na",GSL_CONST_NUM_AVOGADRO},
      {"F",GSL_CONST_MKSA_FARADAY},
      {"k",GSL_CONST_MKSA_BOLTZMANN},
      {"R0",GSL_CONST_MKSA_MOLAR_GAS},
      {"V0",GSL_CONST_MKSA_STANDARD_GAS_VOLUME},
      {"Gauss",GSL_CONST_MKSA_GAUSS},
      {"mu",GSL_CONST_MKSA_MICRON},
      {"ha",GSL_CONST_MKSA_HECTARE},
      {"mph",GSL_CONST_MKSA_MILES_PER_HOUR},
      {"kmh",GSL_CONST_MKSA_KILOMETERS_PER_HOUR},
      {"au",GSL_CONST_MKSA_ASTRONOMICAL_UNIT},
      {"G",GSL_CONST_MKSA_GRAVITATIONAL_CONSTANT},
      {"ly",GSL_CONST_MKSA_LIGHT_YEAR},
      {"pc",GSL_CONST_MKSA_PARSEC},
      {"g",GSL_CONST_MKSA_GRAV_ACCEL},
      {"ms",GSL_CONST_MKSA_SOLAR_MASS},
      {"e",GSL_CONST_MKSA_ELECTRON_CHARGE},
      {"eV",GSL_CONST_MKSA_ELECTRON_VOLT},
      {"amu",GSL_CONST_MKSA_UNIFIED_ATOMIC_MASS},
      {"me",GSL_CONST_MKSA_MASS_ELECTRON},
      {"mmu",GSL_CONST_MKSA_MASS_MUON},
      {"mp",GSL_CONST_MKSA_MASS_PROTON},
      {"mn",GSL_CONST_MKSA_MASS_NEUTRON},
      {"alpha",GSL_CONST_NUM_FINE_STRUCTURE},
      {"Ry",GSL_CONST_MKSA_RYDBERG},
      {"a0",GSL_CONST_MKSA_BOHR_RADIUS},
      {"A",GSL_CONST_MKSA_ANGSTROM},
      {"barn",GSL_CONST_MKSA_BARN},
      {"muB",GSL_CONST_MKSA_BOHR_MAGNETON},
      {"muN",GSL_CONST_MKSA_NUCLEAR_MAGNETON},
      {"mue",GSL_CONST_MKSA_ELECTRON_MAGNETIC_MOMENT},
      {"mup",GSL_CONST_MKSA_PROTON_MAGNETIC_MOMENT},
      {"min",GSL_CONST_MKSA_MINUTE},
      {"h",GSL_CONST_MKSA_HOUR},
      {"d",GSL_CONST_MKSA_DAY},
      {"week",GSL_CONST_MKSA_WEEK},
      {"in",GSL_CONST_MKSA_INCH},
      {"ft",GSL_CONST_MKSA_FOOT},
      {"yard",GSL_CONST_MKSA_YARD},
      {"mile",GSL_CONST_MKSA_MILE},
      {"mil",GSL_CONST_MKSA_MIL},
      {"nmile",GSL_CONST_MKSA_NAUTICAL_MILE},
      {"fathom",GSL_CONST_MKSA_FATHOM},
      {"knot",GSL_CONST_MKSA_KNOT},
      {"pt",GSL_CONST_MKSA_POINT},
      {"texpt",GSL_CONST_MKSA_TEXPOINT},
      {"acre",GSL_CONST_MKSA_ACRE},
      {"ltr",GSL_CONST_MKSA_LITER},
      {"us_gallon",GSL_CONST_MKSA_US_GALLON},
      {"can_gallon",GSL_CONST_MKSA_CANADIAN_GALLON},
      {"uk_gallon",GSL_CONST_MKSA_UK_GALLON},
      {"quart",GSL_CONST_MKSA_QUART},
      {"pint",GSL_CONST_MKSA_PINT},
      {"pound",GSL_CONST_MKSA_POUND_MASS},
      {"ounce",GSL_CONST_MKSA_OUNCE_MASS},
      {"ton",GSL_CONST_MKSA_TON},
      {"mton",GSL_CONST_MKSA_METRIC_TON},
      {"uk_ton",GSL_CONST_MKSA_UK_TON},
      {"troy_ounce",GSL_CONST_MKSA_TROY_OUNCE},
      {"carat",GSL_CONST_MKSA_CARAT},
      {"gram_force",GSL_CONST_MKSA_GRAM_FORCE},
      {"pound_force",GSL_CONST_MKSA_POUND_FORCE},
      {"kilepound_force",GSL_CONST_MKSA_KILOPOUND_FORCE},
      {"poundal",GSL_CONST_MKSA_POUNDAL},
      {"cal",GSL_CONST_MKSA_CALORIE},
      {"btu",GSL_CONST_MKSA_BTU},
      {"therm",GSL_CONST_MKSA_THERM},
      {"hp",GSL_CONST_MKSA_HORSEPOWER},
      {"bar",GSL_CONST_MKSA_BAR},
      {"atm",GSL_CONST_MKSA_STD_ATMOSPHERE},
      {"torr",GSL_CONST_MKSA_TORR},
      {"mhg",GSL_CONST_MKSA_METER_OF_MERCURY},
      {"inhg",GSL_CONST_MKSA_INCH_OF_MERCURY},
      {"inh2o",GSL_CONST_MKSA_INCH_OF_WATER},
      {"psi",GSL_CONST_MKSA_PSI},
      {"poise",GSL_CONST_MKSA_POISE},
      {"stokes",GSL_CONST_MKSA_STOKES},
      {"stilb",GSL_CONST_MKSA_STILB},
      {"lumen",GSL_CONST_MKSA_LUMEN},
      {"lux",GSL_CONST_MKSA_LUX},
      {"phot",GSL_CONST_MKSA_PHOT},
      {"ftcandle",GSL_CONST_MKSA_FOOTCANDLE},
      {"lambert",GSL_CONST_MKSA_LAMBERT},
      {"ftlambert",GSL_CONST_MKSA_FOOTLAMBERT},
      {"curie",GSL_CONST_MKSA_CURIE},
      {"roentgen",GSL_CONST_MKSA_ROENTGEN},
      {"rad",GSL_CONST_MKSA_RAD},
      {"c_cgs",GSL_CONST_CGSM_SPEED_OF_LIGHT},
      {"G_cgs",GSL_CONST_CGSM_GRAVITATIONAL_CONSTANT},
      {"h_cgs",GSL_CONST_CGSM_PLANCKS_CONSTANT_H},
      {"hbar_cgs",GSL_CONST_CGSM_PLANCKS_CONSTANT_HBAR},
      {"au_cgs",GSL_CONST_CGSM_ASTRONOMICAL_UNIT},
      {"ly_cgs",GSL_CONST_CGSM_LIGHT_YEAR},
      {"pc_cgs",GSL_CONST_CGSM_PARSEC},
      {"g_cgs",GSL_CONST_CGSM_GRAV_ACCEL},
      {"eV_cgs",GSL_CONST_CGSM_ELECTRON_VOLT},
      {"me_cgs",GSL_CONST_CGSM_MASS_ELECTRON},
      {"mmu_cgs",GSL_CONST_CGSM_MASS_MUON},
      {"mp_cgs",GSL_CONST_CGSM_MASS_PROTON},
      {"mn_cgs",GSL_CONST_CGSM_MASS_NEUTRON},
      {"Ry_cgs",GSL_CONST_CGSM_RYDBERG},
      {"k_cgs",GSL_CONST_CGSM_BOLTZMANN},
      {"muB_cgs",GSL_CONST_CGSM_BOHR_MAGNETON},
      {"muN_cgs",GSL_CONST_CGSM_NUCLEAR_MAGNETON},
      {"mue_cgs",GSL_CONST_CGSM_ELECTRON_MAGNETIC_MOMENT},
      {"mup_cgs",GSL_CONST_CGSM_PROTON_MAGNETIC_MOMENT},
      {"R0_cgs",GSL_CONST_CGSM_MOLAR_GAS},
      {"V0_cgs",GSL_CONST_CGSM_STANDARD_GAS_VOLUME},
      {"in_cgs",GSL_CONST_CGSM_INCH},
      {"ft_cgs",GSL_CONST_CGSM_FOOT},
      {"yard_cgs",GSL_CONST_CGSM_YARD},
      {"mile_cgs",GSL_CONST_CGSM_MILE},
      {"nile_cgs",GSL_CONST_CGSM_NAUTICAL_MILE},
      {"fathom_cgs",GSL_CONST_CGSM_FATHOM},
      {"mil_cgs",GSL_CONST_CGSM_MIL},
      {"pt_cgs",GSL_CONST_CGSM_POINT},
      {"texpt_cgs",GSL_CONST_CGSM_TEXPOINT},
      {"mu_cgs",GSL_CONST_CGSM_MICRON},
      {"A_cgs",GSL_CONST_CGSM_ANGSTROM},
      {"ha_cgs",GSL_CONST_CGSM_HECTARE},
      {"acre_cgs",GSL_CONST_CGSM_ACRE},
      {"barn_cgs",GSL_CONST_CGSM_BARN},
      {"ltr_cgs",GSL_CONST_CGSM_LITER},
      {"us_gallon-cgs",GSL_CONST_CGSM_US_GALLON},
      {"quart_cgs",GSL_CONST_CGSM_QUART},
      {"pint_cgs",GSL_CONST_CGSM_PINT},
      {"cup_cgs",GSL_CONST_CGSM_CUP},
      {"fluid_ouncs_cgs",GSL_CONST_CGSM_FLUID_OUNCE},
      {"tablespoon_cgs",GSL_CONST_CGSM_TABLESPOON},
      {"teaspoon_cgs",GSL_CONST_CGSM_TEASPOON},
      {"can_gallon_cgs",GSL_CONST_CGSM_CANADIAN_GALLON},
      {"uk_gallon_cgs",GSL_CONST_CGSM_UK_GALLON},
      {"mph_cgs",GSL_CONST_CGSM_MILES_PER_HOUR},
      {"kmh_cgs",GSL_CONST_CGSM_KILOMETERS_PER_HOUR},
      {"knot_cgs",GSL_CONST_CGSM_KNOT},
      {"pound_cgs",GSL_CONST_CGSM_POUND_MASS},
      {"ouncs_cgs",GSL_CONST_CGSM_OUNCE_MASS},
      {"ton_cgs",GSL_CONST_CGSM_TON},
      {"mton_cgs",GSL_CONST_CGSM_METRIC_TON},
      {"uk_ton_cgs",GSL_CONST_CGSM_UK_TON},
      {"troy_ounce_cgs",GSL_CONST_CGSM_TROY_OUNCE},
      {"carat_cgs",GSL_CONST_CGSM_CARAT},
      {"amu_cgs",GSL_CONST_CGSM_UNIFIED_ATOMIC_MASS},
      {"gram_cgs",GSL_CONST_CGSM_GRAM_FORCE},
      {"pound_force_cgs",GSL_CONST_CGSM_POUND_FORCE},
      {"kilopound_force_cgs",GSL_CONST_CGSM_KILOPOUND_FORCE},
      {"poundal_cgs",GSL_CONST_CGSM_POUNDAL},
      {"cal_cgs",GSL_CONST_CGSM_CALORIE},
      {"btu_cgs",GSL_CONST_CGSM_BTU},
      {"therm_cgs",GSL_CONST_CGSM_THERM},
      {"hp_cgs",GSL_CONST_CGSM_HORSEPOWER},
      {"bar_cgs",GSL_CONST_CGSM_BAR},
      {"atm_cgs",GSL_CONST_CGSM_STD_ATMOSPHERE},
      {"torr_cgs",GSL_CONST_CGSM_TORR},
      {"mhg_cgs",GSL_CONST_CGSM_METER_OF_MERCURY},
      {"inhg_cgs",GSL_CONST_CGSM_INCH_OF_MERCURY},
      {"inh2o_cgs",GSL_CONST_CGSM_INCH_OF_WATER},
      {"psi_cgs",GSL_CONST_CGSM_PSI},
      {"poise_cgs",GSL_CONST_CGSM_POISE},
      {"stokes_cgs",GSL_CONST_CGSM_STOKES},
      {"F_cgs",GSL_CONST_CGSM_FARADAY},
      {"e_cgs",GSL_CONST_CGSM_ELECTRON_CHARGE},
      {"G_cgs",GSL_CONST_CGSM_GAUSS},
      {"stilb_cgs",GSL_CONST_CGSM_STILB},
      {"lumen_cgs",GSL_CONST_CGSM_LUMEN},
      {"lux_cgs",GSL_CONST_CGSM_LUX},
      {"phot_cgs",GSL_CONST_CGSM_PHOT},
      {"ftcandle_cgs",GSL_CONST_CGSM_FOOTCANDLE},
      {"lambert_cgs",GSL_CONST_CGSM_LAMBERT},
      {"ftlambert_cgs",GSL_CONST_CGSM_FOOTLAMBERT},
      {"curie_cgs",GSL_CONST_CGSM_CURIE},
      {"roentgen_cgs",GSL_CONST_CGSM_ROENTGEN},
      {"rad_cgs",GSL_CONST_CGSM_RAD},
      {"sm_cgs",GSL_CONST_CGSM_SOLAR_MASS},
      {"a0_cgs",GSL_CONST_CGSM_BOHR_RADIUS},
#else
      {"c",GSL_CONST_MKS_SPEED_OF_LIGHT},
      {"mu0",GSL_CONST_MKS_VACUUM_PERMEABILITY},
      {"e0",GSL_CONST_MKS_VACUUM_PERMITTIVITY},
      {"Na",GSL_CONST_NUM_AVOGADRO},
      {"F",GSL_CONST_MKS_FARADAY},
      {"k",GSL_CONST_MKS_BOLTZMANN},
      {"R0",GSL_CONST_MKS_MOLAR_GAS},
      {"V0",GSL_CONST_MKS_STANDARD_GAS_VOLUME},
      {"Gauss",GSL_CONST_MKS_GAUSS},
      {"mu",GSL_CONST_MKS_MICRON},
      {"ha",GSL_CONST_MKS_HECTARE},
      {"mph",GSL_CONST_MKS_MILES_PER_HOUR},
      {"kmh",GSL_CONST_MKS_KILOMETERS_PER_HOUR},
      {"au",GSL_CONST_MKS_ASTRONOMICAL_UNIT},
      {"G",GSL_CONST_MKS_GRAVITATIONAL_CONSTANT},
      {"ly",GSL_CONST_MKS_LIGHT_YEAR},
      {"pc",GSL_CONST_MKS_PARSEC},
      {"g",GSL_CONST_MKS_GRAV_ACCEL},
      {"ms",GSL_CONST_MKS_SOLAR_MASS},
      {"e",GSL_CONST_MKS_ELECTRON_CHARGE},
      {"eV",GSL_CONST_MKS_ELECTRON_VOLT},
      {"amu",GSL_CONST_MKS_UNIFIED_ATOMIC_MASS},
      {"me",GSL_CONST_MKS_MASS_ELECTRON},
      {"mmu",GSL_CONST_MKS_MASS_MUON},
      {"mp",GSL_CONST_MKS_MASS_PROTON},
      {"mn",GSL_CONST_MKS_MASS_NEUTRON},
      {"alpha",GSL_CONST_NUM_FINE_STRUCTURE},
      {"Ry",GSL_CONST_MKS_RYDBERG},
      {"a0",GSL_CONST_MKS_BOHR_RADIUS},
      {"A",GSL_CONST_MKS_ANGSTROM},
      {"barn",GSL_CONST_MKS_BARN},
      {"muB",GSL_CONST_MKS_BOHR_MAGNETON},
      {"muN",GSL_CONST_MKS_NUCLEAR_MAGNETON},
      {"mue",GSL_CONST_MKS_ELECTRON_MAGNETIC_MOMENT},
      {"mup",GSL_CONST_MKS_PROTON_MAGNETIC_MOMENT},
      {"min",GSL_CONST_MKS_MINUTE},
      {"h",GSL_CONST_MKS_HOUR},
      {"d",GSL_CONST_MKS_DAY},
      {"week",GSL_CONST_MKS_WEEK},
      {"in",GSL_CONST_MKS_INCH},
      {"ft",GSL_CONST_MKS_FOOT},
      {"yard",GSL_CONST_MKS_YARD},
      {"mile",GSL_CONST_MKS_MILE},
      {"mil",GSL_CONST_MKS_MIL},
      {"nmile",GSL_CONST_MKS_NAUTICAL_MILE},
      {"fathom",GSL_CONST_MKS_FATHOM},
      {"knot",GSL_CONST_MKS_KNOT},
      {"pt",GSL_CONST_MKS_POINT},
      {"texpt",GSL_CONST_MKS_TEXPOINT},
      {"acre",GSL_CONST_MKS_ACRE},
      {"ltr",GSL_CONST_MKS_LITER},
      {"us_gallon",GSL_CONST_MKS_US_GALLON},
      {"can_gallon",GSL_CONST_MKS_CANADIAN_GALLON},
      {"uk_gallon",GSL_CONST_MKS_UK_GALLON},
      {"quart",GSL_CONST_MKS_QUART},
      {"pint",GSL_CONST_MKS_PINT},
      {"pound",GSL_CONST_MKS_POUND_MASS},
      {"ounce",GSL_CONST_MKS_OUNCE_MASS},
      {"ton",GSL_CONST_MKS_TON},
      {"mton",GSL_CONST_MKS_METRIC_TON},
      {"uk_ton",GSL_CONST_MKS_UK_TON},
      {"troy_ounce",GSL_CONST_MKS_TROY_OUNCE},
      {"carat",GSL_CONST_MKS_CARAT},
      {"gram_force",GSL_CONST_MKS_GRAM_FORCE},
      {"pound_force",GSL_CONST_MKS_POUND_FORCE},
      {"kilepound_force",GSL_CONST_MKS_KILOPOUND_FORCE},
      {"poundal",GSL_CONST_MKS_POUNDAL},
      {"cal",GSL_CONST_MKS_CALORIE},
      {"btu",GSL_CONST_MKS_BTU},
      {"therm",GSL_CONST_MKS_THERM},
      {"hp",GSL_CONST_MKS_HORSEPOWER},
      {"bar",GSL_CONST_MKS_BAR},
      {"atm",GSL_CONST_MKS_STD_ATMOSPHERE},
      {"torr",GSL_CONST_MKS_TORR},
      {"mhg",GSL_CONST_MKS_METER_OF_MERCURY},
      {"inhg",GSL_CONST_MKS_INCH_OF_MERCURY},
      {"inh2o",GSL_CONST_MKS_INCH_OF_WATER},
      {"psi",GSL_CONST_MKS_PSI},
      {"poise",GSL_CONST_MKS_POISE},
      {"stokes",GSL_CONST_MKS_STOKES},
      {"stilb",GSL_CONST_MKS_STILB},
      {"lumen",GSL_CONST_MKS_LUMEN},
      {"lux",GSL_CONST_MKS_LUX},
      {"phot",GSL_CONST_MKS_PHOT},
      {"ftcandle",GSL_CONST_MKS_FOOTCANDLE},
      {"lambert",GSL_CONST_MKS_LAMBERT},
      {"ftlambert",GSL_CONST_MKS_FOOTLAMBERT},
      {"curie",GSL_CONST_MKS_CURIE},
      {"roentgen",GSL_CONST_MKS_ROENTGEN},
      {"rad",GSL_CONST_MKS_RAD},
      {"c_cgs",GSL_CONST_CGS_SPEED_OF_LIGHT},
      {"G_cgs",GSL_CONST_CGS_GRAVITATIONAL_CONSTANT},
      {"h_cgs",GSL_CONST_CGS_PLANCKS_CONSTANT_H},
      {"hbar_cgs",GSL_CONST_CGS_PLANCKS_CONSTANT_HBAR},
      {"mu0_cgs",GSL_CONST_CGS_VACUUM_PERMEABILITY},
      {"au_cgs",GSL_CONST_CGS_ASTRONOMICAL_UNIT},
      {"ly_cgs",GSL_CONST_CGS_LIGHT_YEAR},
      {"pc_cgs",GSL_CONST_CGS_PARSEC},
      {"g_cgs",GSL_CONST_CGS_GRAV_ACCEL},
      {"eV_cgs",GSL_CONST_CGS_ELECTRON_VOLT},
      {"me_cgs",GSL_CONST_CGS_MASS_ELECTRON},
      {"mmu_cgs",GSL_CONST_CGS_MASS_MUON},
      {"mp_cgs",GSL_CONST_CGS_MASS_PROTON},
      {"mn_cgs",GSL_CONST_CGS_MASS_NEUTRON},
      {"Ry_cgs",GSL_CONST_CGS_RYDBERG},
      {"k_cgs",GSL_CONST_CGS_BOLTZMANN},
      {"muB_cgs",GSL_CONST_CGS_BOHR_MAGNETON},
      {"muN_cgs",GSL_CONST_CGS_NUCLEAR_MAGNETON},
      {"mue_cgs",GSL_CONST_CGS_ELECTRON_MAGNETIC_MOMENT},
      {"mup_cgs",GSL_CONST_CGS_PROTON_MAGNETIC_MOMENT},
      {"R0_cgs",GSL_CONST_CGS_MOLAR_GAS},
      {"V0_cgs",GSL_CONST_CGS_STANDARD_GAS_VOLUME},
      {"in_cgs",GSL_CONST_CGS_INCH},
      {"ft_cgs",GSL_CONST_CGS_FOOT},
      {"yard_cgs",GSL_CONST_CGS_YARD},
      {"mile_cgs",GSL_CONST_CGS_MILE},
      {"nile_cgs",GSL_CONST_CGS_NAUTICAL_MILE},
      {"fathom_cgs",GSL_CONST_CGS_FATHOM},
      {"mil_cgs",GSL_CONST_CGS_MIL},
      {"pt_cgs",GSL_CONST_CGS_POINT},
      {"texpt_cgs",GSL_CONST_CGS_TEXPOINT},
      {"mu_cgs",GSL_CONST_CGS_MICRON},
      {"A_cgs",GSL_CONST_CGS_ANGSTROM},
      {"ha_cgs",GSL_CONST_CGS_HECTARE},
      {"acre_cgs",GSL_CONST_CGS_ACRE},
      {"barn_cgs",GSL_CONST_CGS_BARN},
      {"ltr_cgs",GSL_CONST_CGS_LITER},
      {"us_gallon-cgs",GSL_CONST_CGS_US_GALLON},
      {"quart_cgs",GSL_CONST_CGS_QUART},
      {"pint_cgs",GSL_CONST_CGS_PINT},
      {"cup_cgs",GSL_CONST_CGS_CUP},
      {"fluid_ouncs_cgs",GSL_CONST_CGS_FLUID_OUNCE},
      {"tablespoon_cgs",GSL_CONST_CGS_TABLESPOON},
      {"teaspoon_cgs",GSL_CONST_CGS_TEASPOON},
      {"can_gallon_cgs",GSL_CONST_CGS_CANADIAN_GALLON},
      {"uk_gallon_cgs",GSL_CONST_CGS_UK_GALLON},
      {"mph_cgs",GSL_CONST_CGS_MILES_PER_HOUR},
      {"kmh_cgs",GSL_CONST_CGS_KILOMETERS_PER_HOUR},
      {"knot_cgs",GSL_CONST_CGS_KNOT},
      {"pound_cgs",GSL_CONST_CGS_POUND_MASS},
      {"ouncs_cgs",GSL_CONST_CGS_OUNCE_MASS},
      {"ton_cgs",GSL_CONST_CGS_TON},
      {"mton_cgs",GSL_CONST_CGS_METRIC_TON},
      {"uk_ton_cgs",GSL_CONST_CGS_UK_TON},
      {"troy_ounce_cgs",GSL_CONST_CGS_TROY_OUNCE},
      {"carat_cgs",GSL_CONST_CGS_CARAT},
      {"amu_cgs",GSL_CONST_CGS_UNIFIED_ATOMIC_MASS},
      {"gram_cgs",GSL_CONST_CGS_GRAM_FORCE},
      {"pound_force_cgs",GSL_CONST_CGS_POUND_FORCE},
      {"kilopound_force_cgs",GSL_CONST_CGS_KILOPOUND_FORCE},
      {"poundal_cgs",GSL_CONST_CGS_POUNDAL},
      {"cal_cgs",GSL_CONST_CGS_CALORIE},
      {"btu_cgs",GSL_CONST_CGS_BTU},
      {"therm_cgs",GSL_CONST_CGS_THERM},
      {"hp_cgs",GSL_CONST_CGS_HORSEPOWER},
      {"bar_cgs",GSL_CONST_CGS_BAR},
      {"atm_cgs",GSL_CONST_CGS_STD_ATMOSPHERE},
      {"torr_cgs",GSL_CONST_CGS_TORR},
      {"mhg_cgs",GSL_CONST_CGS_METER_OF_MERCURY},
      {"inhg_cgs",GSL_CONST_CGS_INCH_OF_MERCURY},
      {"inh2o_cgs",GSL_CONST_CGS_INCH_OF_WATER},
      {"psi_cgs",GSL_CONST_CGS_PSI},
      {"poise_cgs",GSL_CONST_CGS_POISE},
      {"stokes_cgs",GSL_CONST_CGS_STOKES},
      {"F_cgs",GSL_CONST_CGS_FARADAY},
      {"e_cgs",GSL_CONST_CGS_ELECTRON_CHARGE},
      {"G_cgs",GSL_CONST_CGS_GAUSS},
      {"stilb_cgs",GSL_CONST_CGS_STILB},
      {"lumen_cgs",GSL_CONST_CGS_LUMEN},
      {"lux_cgs",GSL_CONST_CGS_LUX},
      {"phot_cgs",GSL_CONST_CGS_PHOT},
      {"ftcandle_cgs",GSL_CONST_CGS_FOOTCANDLE},
      {"lambert_cgs",GSL_CONST_CGS_LAMBERT},
      {"ftlambert_cgs",GSL_CONST_CGS_FOOTLAMBERT},
      {"curie_cgs",GSL_CONST_CGS_CURIE},
      {"roentgen_cgs",GSL_CONST_CGS_ROENTGEN},
      {"rad_cgs",GSL_CONST_CGS_RAD},
      {"sm_cgs",GSL_CONST_CGS_SOLAR_MASS},
      {"a0_cgs",GSL_CONST_CGS_BOHR_RADIUS},
      {"e0_cgs",GSL_CONST_CGS_VACUUM_PERMITTIVITY},
#endif
#endif
      {0,0}
};
struct init arith_fncts[] = {
#ifndef USE_SOLARIS
  {"atan2",atan2},
  {"beta",beta},
  {"chbevl",chbevl},
  {"ceil",ceil},
  {"chdtrc",chdtrc},
  {"chdtr",chdtr},
  {"chdtri",chdtri},
  {"ellie",ellie},
  {"ellik",ellik},
  {"expn",expn},
  {"fac",my_fac},
  {"fdtrc",my_fdtrc},
  {"fdtr",my_fdtr},
  {"fdtri",my_fdtri},
  {"gdtr",gdtr},
  {"gdtrc",gdtrc},
  {"hyp2f1",hyp2f1},
  {"hyperg",hyperg},
  {"igamc",igamc},
  {"igam",igam},
  {"igami",igami},
  {"incbet",incbet},
  {"incbi",incbi},
  {"iv",iv},
  {"jn",my_jn},
  {"jv",jv},
  {"kn",my_kn},
  {"lbeta",lbeta},
  {"ldexp",my_ldexp},
  {"pdtrc",my_pdtrc},
  {"pdtr",my_pdtr},
  {"pdtri",my_pdtri},
  {"pow",pow},
  {"stdtr",my_stdtr},
  {"stdtri",my_stdtri},
  {"struve",struve},
  {"yn",my_yn},
  {"yv",yv},
  {"zeta",zeta},
#endif
  {"acos",acos},
  {"acosh",acosh},
  {"asin",asin},
  {"asinh",asinh},
  {"atanh",atanh},
  {"cbrt",cbrt},
  {"cos", cos},
  {"cosh",cosh},
  {"cosm1",cosm1},
  {"dawsn",dawsn},
  {"ellpe",ellpe},
  {"ellpk",ellpk},
  {"erf",erf},
  {"erfc",erfc},
  {"exp", exp},
  {"expm1",expm1},
  {"fabs",fabs},
/*  {"fresnl",fresnl},*/
  {"i0",i0},
  {"i0e",i0e},
  {"i1",i1},
  {"i1e",i1e},
/*  {"ilogb",ilogb},*/
  {"j0",j0},
  {"j1",j1},
  {"k0",k0},
  {"k0e",k0e},
  {"k1",k1},
  {"k1e",k1e},
  {"ln", log},
  {"log",log10},
  {"logb",logb},
  {"log1p",log1p},
/*  {"mtherr",mtherr},*/
  {"ndtr",ndtr},
  {"ndtri",ndtri},
  {"psi",psi},
/*  {"revers",revers},*/
  {"rgamma",rgamma},
  {"rint",rint},
/*  {"round",round},*/
/*  {"shichi",shichi},*/
/*  {"sici",sici},*/
  {"sin", sin},
  {"sinh",sinh},
  {"spence",spence},
  {"sqrt", sqrt},
  {"tan",tan},
  {"tanh",tanh},
  {"true_gamma",true_gamma},
/*  {"trunc",trunc},*/
  {"y0",y0},
  {"y1",y1},
  {"zetac",zetac},
#ifdef HAVE_GSL
  {"gsl_log1p",gsl_log1p},
  {"gsl_expm1",gsl_expm1},
  {"gsl_hypot",gsl_hypot},
  {"gsl_acosh",gsl_acosh},
  {"gsl_asinh",gsl_asinh},
  {"gsl_atanh",gsl_atanh},
  {"airy_Ai",airy_Ai},
  {"airy_Bi",airy_Bi},
  {"airy_Ais",airy_Ais},
  {"airy_Bis",airy_Bis},
  {"airy_Aid",airy_Aid},
  {"airy_Bid",airy_Bid},
  {"airy_Aids",airy_Aids},
  {"airy_Bids",airy_Bids},
  {"airy_0_Ai",airy_0_Ai},
  {"airy_0_Bi",airy_0_Bi},
  {"airy_0_Aid",airy_0_Aid},
  {"airy_0_Bid",airy_0_Bid},
  {"bessel_J0",gsl_sf_bessel_J0},
  {"bessel_J1",gsl_sf_bessel_J1},
  {"bessel_Jn",bessel_Jn},
  {"bessel_Y0",gsl_sf_bessel_Y0},
  {"bessel_Y1",gsl_sf_bessel_Y1},
  {"bessel_Yn",bessel_Yn},
  {"bessel_I0",gsl_sf_bessel_I0},
  {"bessel_I1",gsl_sf_bessel_I1},
  {"bessel_In",bessel_In},
  {"bessel_I0s",gsl_sf_bessel_I0_scaled},
  {"bessel_I1s",gsl_sf_bessel_I1_scaled},
  {"bessel_Ins",bessel_Ins},
  {"bessel_K0",gsl_sf_bessel_K0},
  {"bessel_K1",gsl_sf_bessel_K1},
  {"bessel_Kn",bessel_Kn},
  {"bessel_K0s",gsl_sf_bessel_K0_scaled},
  {"bessel_K1s",gsl_sf_bessel_K1_scaled},
  {"bessel_Kns",bessel_Kns},
  {"bessel_j0",gsl_sf_bessel_j0},
  {"bessel_j1",gsl_sf_bessel_j1},
  {"bessel_j2",gsl_sf_bessel_j2},
  {"bessel_jl",bessel_jl},
  {"bessel_y0",gsl_sf_bessel_y0},
  {"bessel_y1",gsl_sf_bessel_y1},
  {"bessel_y2",gsl_sf_bessel_y2},
  {"bessel_yl",bessel_yl},
  {"bessel_i0s",gsl_sf_bessel_i0_scaled},
  {"bessel_i1s",gsl_sf_bessel_i1_scaled},
  {"bessel_i2s",gsl_sf_bessel_i2_scaled},
  {"bessel_ils",bessel_ils},
  {"bessel_k0s",gsl_sf_bessel_k0_scaled},
  {"bessel_k1s",gsl_sf_bessel_k1_scaled},
  {"bessel_k2s",gsl_sf_bessel_k2_scaled},
  {"bessel_kls",bessel_kls},
  {"bessel_Jnu",gsl_sf_bessel_Jnu},
  {"bessel_Ynu",gsl_sf_bessel_Ynu},
  {"bessel_Inu",gsl_sf_bessel_Inu},
  {"bessel_Inus",gsl_sf_bessel_Inu_scaled},
  {"bessel_Knu",gsl_sf_bessel_Knu},
  {"bessel_lnKnu",gsl_sf_bessel_lnKnu},
  {"bessel_Knus",gsl_sf_bessel_Knu_scaled},
  {"bessel_0_J0",bessel_0_J0},
  {"bessel_0_J1",bessel_0_J1},
  {"bessel_0_Jnu",bessel_0_Jnu},
  {"clausen",gsl_sf_clausen},
  {"hydrogenicR_1",gsl_sf_hydrogenicR_1},
  {"hydrogenicR",hydrogenicR},
  {"dawson",gsl_sf_dawson},
  {"debye_1",gsl_sf_debye_1},
  {"debye_2",gsl_sf_debye_2},
  {"debye_3",gsl_sf_debye_3},
  {"debye_4",gsl_sf_debye_4},
  {"dilog",gsl_sf_dilog},
  {"ellint_Kc",ellint_Kc},
  {"ellint_Ec",ellint_Ec},
  {"ellint_F",ellint_F},
  {"ellint_E",ellint_E},
  {"ellint_P",ellint_P},
  {"ellint_D",ellint_D},
  {"ellint_RC",ellint_RC},
  {"ellint_RD",ellint_RD},
  {"ellint_RF",ellint_RF},
  {"ellint_RJ",ellint_RJ},
  {"gsl_erf",gsl_sf_erf},
  {"gsl_erfc",gsl_sf_erfc},
  {"log_erfc",gsl_sf_log_erfc},
  {"erf_Z",gsl_sf_erf_Z},
  {"erf_Q",gsl_sf_erf_Q},
  {"gsl_exp",gsl_sf_exp},
  {"exprel",gsl_sf_exprel},
  {"exprel_2",gsl_sf_exprel_2},
  {"exprel_n",exprel_n},
  {"expint_E1",gsl_sf_expint_E1},
  {"expint_E2",gsl_sf_expint_E2},
  {"expint_Ei",gsl_sf_expint_Ei},
  {"shi",gsl_sf_Shi},
  {"chi",gsl_sf_Chi},
  {"expint_3",gsl_sf_expint_3},
  {"si",gsl_sf_Si},
  {"ci",gsl_sf_Ci},
  {"atanint",gsl_sf_atanint},
  {"fermi_dirac_m1",gsl_sf_fermi_dirac_m1},
  {"fermi_dirac_0",gsl_sf_fermi_dirac_0},
  {"fermi_dirac_1",gsl_sf_fermi_dirac_1},
  {"fermi_dirac_2",gsl_sf_fermi_dirac_2},
  {"fermi_dirac_int",fermi_dirac_int},
  {"fermi_dirac_mhalf",gsl_sf_fermi_dirac_mhalf},
  {"fermi_dirac_half",gsl_sf_fermi_dirac_half},
  {"fermi_dirac_3half",gsl_sf_fermi_dirac_3half},
  {"fermi_dirac_inc_0",gsl_sf_fermi_dirac_inc_0},
  {"gamma",gsl_sf_gamma},
  {"lngamma",gsl_sf_lngamma},
  {"gammastar",gsl_sf_gammastar},
  {"gammainv",gsl_sf_gammainv},
  {"taylorcoeff",taylorcoeff},
  {"fact",fact},
  {"doublefact",doublefact},
  {"lnfact",lnfact},
  {"lndoublefact",lndoublefact},
  {"choose",choose},
  {"lnchoose",lnchoose},
  {"poch",gsl_sf_poch},
  {"lnpoch",gsl_sf_lnpoch},
  {"pochrel",gsl_sf_pochrel},
  {"gamma_inc_Q",gsl_sf_gamma_inc_Q},
  {"gamma_inc_P",gsl_sf_gamma_inc_P},
  {"gsl_beta",gsl_sf_beta},
  {"lnbeta",gsl_sf_lnbeta},
  {"beta_inc",gsl_sf_beta_inc},
  {"gegenpoly_1",gsl_sf_gegenpoly_1},
  {"gegenpoly_2",gsl_sf_gegenpoly_2},
  {"gegenpoly_3",gsl_sf_gegenpoly_3},
  {"gegenpoly_n",gegenpoly_n},
  {"hyperg_0F1",gsl_sf_hyperg_0F1},
  {"hyperg_1F1i",hyperg_1F1i},
  {"hyperg_1F1",gsl_sf_hyperg_1F1},
  {"hyperg_Ui",hyperg_Ui},
  {"hyperg_U",gsl_sf_hyperg_U},
  {"hyperg_2F1",gsl_sf_hyperg_2F1},
  {"hyperg_2F1c",gsl_sf_hyperg_2F1_conj},
  {"hyperg_2F1r",gsl_sf_hyperg_2F1_renorm},
  {"hyperg_2F1cr",gsl_sf_hyperg_2F1_conj_renorm},
  {"hyperg_2F0",gsl_sf_hyperg_2F0},
  {"laguerre_1",gsl_sf_laguerre_1},
  {"laguerre_2",gsl_sf_laguerre_2},
  {"laguerre_3",gsl_sf_laguerre_3},
  {"lambert_W0",gsl_sf_lambert_W0},
  {"lambert_Wm1",gsl_sf_lambert_Wm1},
  {"legendre_P1",gsl_sf_legendre_P1},
  {"legendre_P2",gsl_sf_legendre_P2},
  {"legendre_P3",gsl_sf_legendre_P3},
  {"legendre_Pl",legendre_Pl},
  {"legendre_Q0",gsl_sf_legendre_Q0},
  {"legendre_Q1",gsl_sf_legendre_Q1},
  {"legendre_Ql",legendre_Ql},
  {"legendre_Plm",legendre_Plm},
  {"legendre_sphPlm",legendre_sphPlm},
  {"conicalP_half",gsl_sf_conicalP_half},
  {"conicalP_mhalf",gsl_sf_conicalP_mhalf},
  {"conicalP_0",gsl_sf_conicalP_0},
  {"conicalP_1",gsl_sf_conicalP_1},
  {"conicalP_sphreg",conicalP_sphreg},
  {"conicalP_cylreg",conicalP_cylreg},
  {"legendre_H3d_0",gsl_sf_legendre_H3d_0},
  {"legendre_H3d_1",gsl_sf_legendre_H3d_1},
  {"legendre_H3d",legendre_H3d},
  {"gsl_log",gsl_sf_log},
  {"loga",gsl_sf_log_abs},
  {"logp",gsl_sf_log_1plusx},
  {"logm",gsl_sf_log_1plusx_mx},
  {"gsl_pow",gsl_pow},
  {"psii",psii},
  {"psi",gsl_sf_psi},
  {"psiy",gsl_sf_psi_1piy},
  {"psi1i",psi1i},
  {"psi_n",psi_n},
  {"synchrotron_1",gsl_sf_synchrotron_1},
  {"synchrotron_2",gsl_sf_synchrotron_2},
  {"transport_2",gsl_sf_transport_2},
  {"transport_3",gsl_sf_transport_3},
  {"transport_4",gsl_sf_transport_4},
  {"transport_5",gsl_sf_transport_5},
  {"hypot",gsl_sf_hypot},
  {"sinc",gsl_sf_sinc},
  {"lnsinh",gsl_sf_lnsinh},
  {"lncosh",gsl_sf_lncosh},
  {"zetai",zetai},
  {"gsl_zeta",gsl_sf_zeta},
  {"hzeta",gsl_sf_hzeta},
  {"etai",etai},
  {"eta",gsl_sf_eta},
  {"gaussian",gsl_ran_gaussian_pdf},
  {"ugaussian",gsl_ran_ugaussian_pdf},
  {"gaussian_tail",gsl_ran_gaussian_tail_pdf},
  {"ugaussian_tail",gsl_ran_ugaussian_tail_pdf},
  {"bivariate_gaussian",gsl_ran_bivariate_gaussian_pdf},
  {"exponential",gsl_ran_exponential_pdf},
  {"laplace",gsl_ran_laplace_pdf},
  {"exppow",gsl_ran_exppow_pdf},
  {"cauchy",gsl_ran_cauchy_pdf},
  {"rayleigh",gsl_ran_rayleigh_pdf},
  {"rayleigh_tail",gsl_ran_rayleigh_tail_pdf},
  {"landau",gsl_ran_landau_pdf},
  {"gamma_pdf",gsl_ran_gamma_pdf},
  {"flat",gsl_ran_flat_pdf},
  {"lognormal",gsl_ran_lognormal_pdf},
  {"chisq",gsl_ran_chisq_pdf},
  {"fdist",gsl_ran_fdist_pdf},
  {"tdist",gsl_ran_tdist_pdf},
  {"beta_pdf",gsl_ran_beta_pdf},
  {"logistic",gsl_ran_logistic_pdf},
  {"pareto",gsl_ran_pareto_pdf},
  {"weibull",gsl_ran_weibull_pdf},
  {"gumbel1",gsl_ran_gumbel1_pdf},
  {"gumbel2",gsl_ran_gumbel2_pdf},
  {"poisson",poisson},
  {"bernoulli",bernoulli},
  {"binomial",binomial},
  {"negative_binomial",negative_binomial},
  {"pascal",pascal},
  {"geometric",geometric},
  {"hypergeometric",hypergeometric},
  {"logarithmic",logarithmic},
#endif
  {0, 0}
};

#endif /*PARSER_H*/

Generated by  Doxygen 1.6.0   Back to index