NAME
Math::GSL::SF - Special Functions
SYNOPSIS
use Math::GSL::SF qw /:all/;
DESCRIPTION
This module contains a data structure named gsl_sf_result. To create a new one use $r = Math::GSL::SF::gsl_sf_result_struct->new; You can then access the elements of the structure in this way : $r->{val} or $r->{err}
Here is a list of all included functions:
gsl_sf_airy_Ai_e($x, $mode)gsl_sf_airy_Ai($x, $mode, $result)-
- These routines compute the Airy function Ai($x) with an accuracy specified by $mode. $mode should be $GSL_PREC_DOUBLE, $GSL_PREC_SINGLE or $GSL_PREC_APPROX. $result is a gsl_sf_result structure.
gsl_sf_airy_Bi_e($x, $mode, $result)gsl_sf_airy_Bi($x, $mode)-
- These routines compute the Airy function Bi($x) with an accuracy specified by $mode. $mode should be $GSL_PREC_DOUBLE, $GSL_PREC_SINGLE or $GSL_PREC_APPROX. $result is a gsl_sf_result structure.
gsl_sf_airy_Ai_scaled_e($x, $mode, $result)gsl_sf_airy_Ai_scaled($x, $mode)-
- These routines compute a scaled version of the Airy function S_A($x) Ai($x). For $x>0 the scaling factor S_A($x) is \exp(+(2/3) $x**(3/2)), and is 1 for $x<0.
gsl_sf_airy_Bi_scaled_e($x, $mode, $result)gsl_sf_airy_Bi_scaled($x, $mode)-
- These routines compute a scaled version of the Airy function S_B($x) Bi($x). For $x>0 the scaling factor S_B($x) is exp(-(2/3) $x**(3/2)), and is 1 for $x<0.
gsl_sf_airy_Ai_deriv_egsl_sf_airy_Ai_derivgsl_sf_airy_Bi_deriv_egsl_sf_airy_Bi_derivgsl_sf_airy_Ai_deriv_scaled_egsl_sf_airy_Ai_deriv_scaledgsl_sf_airy_Bi_deriv_scaled_egsl_sf_airy_Bi_deriv_scaledgsl_sf_airy_zero_Ai_egsl_sf_airy_zero_Aigsl_sf_airy_zero_Bi_egsl_sf_airy_zero_Bigsl_sf_airy_zero_Ai_deriv_egsl_sf_airy_zero_Ai_derivgsl_sf_airy_zero_Bi_deriv_egsl_sf_airy_zero_Bi_derivgsl_sf_bessel_J0_egsl_sf_bessel_J0gsl_sf_bessel_J1_egsl_sf_bessel_J1gsl_sf_bessel_Jn_egsl_sf_bessel_Jngsl_sf_bessel_Jn_arraygsl_sf_bessel_Y0_egsl_sf_bessel_Y0gsl_sf_bessel_Y1_egsl_sf_bessel_Y1gsl_sf_bessel_Yn_egsl_sf_bessel_Yngsl_sf_bessel_Yn_arraygsl_sf_bessel_I0_egsl_sf_bessel_I0gsl_sf_bessel_I1_egsl_sf_bessel_I1gsl_sf_bessel_In_egsl_sf_bessel_Ingsl_sf_bessel_In_arraygsl_sf_bessel_I0_scaled_egsl_sf_bessel_I0_scaledgsl_sf_bessel_I1_scaled_egsl_sf_bessel_I1_scaledgsl_sf_bessel_In_scaled_egsl_sf_bessel_In_scaledgsl_sf_bessel_In_scaled_arraygsl_sf_bessel_K0_egsl_sf_bessel_K0gsl_sf_bessel_K1_egsl_sf_bessel_K1gsl_sf_bessel_Kn_egsl_sf_bessel_Kngsl_sf_bessel_Kn_arraygsl_sf_bessel_K0_scaled_egsl_sf_bessel_K0_scaledgsl_sf_bessel_K1_scaled_egsl_sf_bessel_K1_scaledgsl_sf_bessel_Kn_scaled_egsl_sf_bessel_Kn_scaledgsl_sf_bessel_Kn_scaled_arraygsl_sf_bessel_j0_egsl_sf_bessel_j0gsl_sf_bessel_j1_egsl_sf_bessel_j1gsl_sf_bessel_j2_egsl_sf_bessel_j2gsl_sf_bessel_jl_egsl_sf_bessel_jlgsl_sf_bessel_jl_arraygsl_sf_bessel_jl_steed_arraygsl_sf_bessel_y0_egsl_sf_bessel_y0gsl_sf_bessel_y1_egsl_sf_bessel_y1gsl_sf_bessel_y2_egsl_sf_bessel_y2gsl_sf_bessel_yl_egsl_sf_bessel_ylgsl_sf_bessel_yl_arraygsl_sf_bessel_i0_scaled_egsl_sf_bessel_i0_scaledgsl_sf_bessel_i1_scaled_egsl_sf_bessel_i1_scaledgsl_sf_bessel_i2_scaled_egsl_sf_bessel_i2_scaledgsl_sf_bessel_il_scaled_egsl_sf_bessel_il_scaledgsl_sf_bessel_il_scaled_arraygsl_sf_bessel_k0_scaled_egsl_sf_bessel_k0_scaledgsl_sf_bessel_k1_scaled_egsl_sf_bessel_k1_scaledgsl_sf_bessel_k2_scaled_egsl_sf_bessel_k2_scaledgsl_sf_bessel_kl_scaled_egsl_sf_bessel_kl_scaledgsl_sf_bessel_kl_scaled_arraygsl_sf_bessel_Jnu_egsl_sf_bessel_Jnugsl_sf_bessel_Ynu_egsl_sf_bessel_Ynugsl_sf_bessel_sequence_Jnu_egsl_sf_bessel_Inu_scaled_egsl_sf_bessel_Inu_scaledgsl_sf_bessel_Inu_egsl_sf_bessel_Inugsl_sf_bessel_Knu_scaled_egsl_sf_bessel_Knu_scaledgsl_sf_bessel_Knu_egsl_sf_bessel_Knugsl_sf_bessel_lnKnu_egsl_sf_bessel_lnKnugsl_sf_bessel_zero_J0_egsl_sf_bessel_zero_J0gsl_sf_bessel_zero_J1_egsl_sf_bessel_zero_J1gsl_sf_bessel_zero_Jnu_egsl_sf_bessel_zero_Jnugsl_sf_clausen_egsl_sf_clausengsl_sf_hydrogenicR_1_egsl_sf_hydrogenicR_1gsl_sf_hydrogenicR_egsl_sf_hydrogenicRgsl_sf_coulomb_wave_FG_egsl_sf_coulomb_wave_F_arraygsl_sf_coulomb_wave_FG_arraygsl_sf_coulomb_wave_FGp_arraygsl_sf_coulomb_wave_sphF_arraygsl_sf_coulomb_CL_egsl_sf_coulomb_CL_arraygsl_sf_coupling_3j_egsl_sf_coupling_3jgsl_sf_coupling_6j_egsl_sf_coupling_6jgsl_sf_coupling_RacahW_egsl_sf_coupling_RacahWgsl_sf_coupling_9j_egsl_sf_coupling_9jgsl_sf_coupling_6j_INCORRECT_egsl_sf_coupling_6j_INCORRECTgsl_sf_dawson_e, gsl_sf_dawsongsl_sf_debye_1_egsl_sf_debye_1gsl_sf_debye_2_egsl_sf_debye_2gsl_sf_debye_3_egsl_sf_debye_3gsl_sf_debye_4_egsl_sf_debye_4gsl_sf_debye_5_egsl_sf_debye_5gsl_sf_debye_6_egsl_sf_debye_6gsl_sf_dilog_egsl_sf_diloggsl_sf_complex_dilog_xy_egsl_sf_complex_dilog_egsl_sf_complex_spence_xy_egsl_sf_multiply_egsl_sf_multiplygsl_sf_multiply_err_egsl_sf_ellint_Kcomp_e gsl_sf_ellint_Kcompgsl_sf_ellint_Ecomp_egsl_sf_ellint_Ecompgsl_sf_ellint_Pcomp_egsl_sf_ellint_Pcompgsl_sf_ellint_Dcomp_egsl_sf_ellint_Dcompgsl_sf_ellint_F_egsl_sf_ellint_Fgsl_sf_ellint_E_egsl_sf_ellint_Egsl_sf_ellint_P_egsl_sf_ellint_Pgsl_sf_ellint_D_egsl_sf_ellint_Dgsl_sf_ellint_RC_egsl_sf_ellint_RCgsl_sf_ellint_RD_egsl_sf_ellint_RDgsl_sf_ellint_RF_egsl_sf_ellint_RFgsl_sf_ellint_RJ_egsl_sf_ellint_RJgsl_sf_elljac_egsl_sf_erfc_egsl_sf_erfcgsl_sf_log_erfc_egsl_sf_log_erfcgsl_sf_erf_egsl_sf_erfgsl_sf_erf_Z_egsl_sf_erf_Q_egsl_sf_erf_Zgsl_sf_erf_Qgsl_sf_hazard_egsl_sf_hazardgsl_sf_exp_egsl_sf_expgsl_sf_exp_e10_egsl_sf_exp_mult_egsl_sf_exp_multgsl_sf_exp_mult_e10_egsl_sf_expm1_egsl_sf_expm1gsl_sf_exprel_egsl_sf_exprelgsl_sf_exprel_2_egsl_sf_exprel_2gsl_sf_exprel_n_egsl_sf_exprel_ngsl_sf_exp_err_egsl_sf_exp_err_e10_egsl_sf_exp_mult_err_egsl_sf_exp_mult_err_e10_egsl_sf_expint_E1_egsl_sf_expint_E1gsl_sf_expint_E2_egsl_sf_expint_E2gsl_sf_expint_En_egsl_sf_expint_Engsl_sf_expint_E1_scaled_egsl_sf_expint_E1_scaledgsl_sf_expint_E2_scaled_egsl_sf_expint_E2_scaledgsl_sf_expint_En_scaled_egsl_sf_expint_En_scaledgsl_sf_expint_Ei_egsl_sf_expint_Eigsl_sf_expint_Ei_scaled_egsl_sf_expint_Ei_scaledgsl_sf_Shi_egsl_sf_Shigsl_sf_Chi_egsl_sf_Chigsl_sf_expint_3_egsl_sf_expint_3gsl_sf_Si_egsl_sf_Sigsl_sf_Ci_egsl_sf_Cigsl_sf_fermi_dirac_m1_egsl_sf_fermi_dirac_m1gsl_sf_fermi_dirac_0_egsl_sf_fermi_dirac_0gsl_sf_fermi_dirac_1_egsl_sf_fermi_dirac_1gsl_sf_fermi_dirac_2_egsl_sf_fermi_dirac_2gsl_sf_fermi_dirac_int_egsl_sf_fermi_dirac_intgsl_sf_fermi_dirac_mhalf_egsl_sf_fermi_dirac_mhalfgsl_sf_fermi_dirac_half_egsl_sf_fermi_dirac_halfgsl_sf_fermi_dirac_3half_egsl_sf_fermi_dirac_3halfgsl_sf_fermi_dirac_inc_0_egsl_sf_fermi_dirac_inc_0gsl_sf_legendre_Pl_egsl_sf_legendre_Plgsl_sf_legendre_Pl_arraygsl_sf_legendre_Pl_deriv_arraygsl_sf_legendre_P1_egsl_sf_legendre_P2_egsl_sf_legendre_P3_egsl_sf_legendre_P1gsl_sf_legendre_P2gsl_sf_legendre_P3gsl_sf_legendre_Q0_egsl_sf_legendre_Q0gsl_sf_legendre_Q1_egsl_sf_legendre_Q1gsl_sf_legendre_Ql_egsl_sf_legendre_Qlgsl_sf_legendre_Plm_egsl_sf_legendre_Plmgsl_sf_legendre_Plm_arraygsl_sf_legendre_Plm_deriv_arraygsl_sf_legendre_sphPlm_egsl_sf_legendre_sphPlmgsl_sf_legendre_sphPlm_arraygsl_sf_legendre_sphPlm_deriv_arraygsl_sf_legendre_array_sizegsl_sf_lngamma_egsl_sf_lngammagsl_sf_lngamma_sgn_egsl_sf_gamma_egsl_sf_gammagsl_sf_gammastar_egsl_sf_gammastargsl_sf_gammainv_egsl_sf_gammainvgsl_sf_lngamma_complex_egsl_sf_gamma_inc_Q_egsl_sf_gamma_inc_Qgsl_sf_gamma_inc_P_egsl_sf_gamma_inc_Pgsl_sf_gamma_inc_egsl_sf_gamma_incgsl_sf_taylorcoeff_egsl_sf_taylorcoeffgsl_sf_fact_egsl_sf_factgsl_sf_doublefact_egsl_sf_doublefactgsl_sf_lnfact_egsl_sf_lnfactgsl_sf_lndoublefact_egsl_sf_lndoublefactgsl_sf_lnchoose_egsl_sf_lnchoosegsl_sf_choose_egsl_sf_choosegsl_sf_lnpoch_egsl_sf_lnpochgsl_sf_lnpoch_sgn_egsl_sf_poch_egsl_sf_pochgsl_sf_pochrel_egsl_sf_pochrelgsl_sf_lnbeta_egsl_sf_lnbetagsl_sf_lnbeta_sgn_egsl_sf_beta_egsl_sf_betagsl_sf_beta_inc_egsl_sf_beta_incgsl_sf_gegenpoly_1_egsl_sf_gegenpoly_2_egsl_sf_gegenpoly_3_egsl_sf_gegenpoly_1gsl_sf_gegenpoly_2gsl_sf_gegenpoly_3gsl_sf_gegenpoly_n_egsl_sf_gegenpoly_ngsl_sf_gegenpoly_arraygsl_sf_hyperg_0F1_egsl_sf_hyperg_0F1gsl_sf_hyperg_1F1_int_egsl_sf_hyperg_1F1_intgsl_sf_hyperg_1F1_egsl_sf_hyperg_1F1gsl_sf_hyperg_U_int_egsl_sf_hyperg_U_intgsl_sf_hyperg_U_int_e10_egsl_sf_hyperg_U_egsl_sf_hyperg_Ugsl_sf_hyperg_U_e10_egsl_sf_hyperg_2F1_egsl_sf_hyperg_2F1gsl_sf_hyperg_2F1_conj_egsl_sf_hyperg_2F1_conjgsl_sf_hyperg_2F1_renorm_egsl_sf_hyperg_2F1_renormgsl_sf_hyperg_2F1_conj_renorm_egsl_sf_hyperg_2F1_conj_renormgsl_sf_hyperg_2F0_egsl_sf_hyperg_2F0gsl_sf_laguerre_1_egsl_sf_laguerre_2_egsl_sf_laguerre_3_egsl_sf_laguerre_1gsl_sf_laguerre_2gsl_sf_laguerre_3gsl_sf_laguerre_n_egsl_sf_laguerre_ngsl_sf_lambert_W0_egsl_sf_lambert_W0gsl_sf_lambert_Wm1_egsl_sf_lambert_Wm1gsl_sf_conicalP_half_egsl_sf_conicalP_halfgsl_sf_conicalP_mhalf_egsl_sf_conicalP_mhalfgsl_sf_conicalP_0_egsl_sf_conicalP_0gsl_sf_conicalP_1_egsl_sf_conicalP_1gsl_sf_conicalP_sph_reg_egsl_sf_conicalP_sph_reggsl_sf_conicalP_cyl_reg_egsl_sf_conicalP_cyl_reggsl_sf_legendre_H3d_0_egsl_sf_legendre_H3d_0gsl_sf_legendre_H3d_1_egsl_sf_legendre_H3d_1gsl_sf_legendre_H3d_egsl_sf_legendre_H3dgsl_sf_legendre_H3d_arraygsl_sf_log_egsl_sf_loggsl_sf_log_abs_egsl_sf_log_absgsl_sf_complex_log_egsl_sf_log_1plusx_egsl_sf_log_1plusxgsl_sf_log_1plusx_mx_egsl_sf_log_1plusx_mxgsl_sf_mathieu_a_arraygsl_sf_mathieu_b_arraygsl_sf_mathieu_agsl_sf_mathieu_bgsl_sf_mathieu_a_coeffgsl_sf_mathieu_b_coeffgsl_sf_mathieu_allocgsl_sf_mathieu_freegsl_sf_mathieu_cegsl_sf_mathieu_segsl_sf_mathieu_ce_arraygsl_sf_mathieu_se_arraygsl_sf_mathieu_Mcgsl_sf_mathieu_Msgsl_sf_mathieu_Mc_arraygsl_sf_mathieu_Ms_arraygsl_sf_pow_int_egsl_sf_pow_intgsl_sf_psi_int_egsl_sf_psi_intgsl_sf_psi_egsl_sf_psigsl_sf_psi_1piy_egsl_sf_psi_1piygsl_sf_complex_psi_e gsl_sf_psi_1_int_egsl_sf_psi_1_intgsl_sf_psi_1_egsl_sf_psi_1gsl_sf_psi_n_egsl_sf_psi_ngsl_sf_result_smash_egsl_sf_synchrotron_1_egsl_sf_synchrotron_1gsl_sf_synchrotron_2_egsl_sf_synchrotron_2gsl_sf_transport_2_egsl_sf_transport_2gsl_sf_transport_3_egsl_sf_transport_3gsl_sf_transport_4_egsl_sf_transport_4gsl_sf_transport_5_egsl_sf_transport_5gsl_sf_sin_egsl_sf_singsl_sf_cos_egsl_sf_cosgsl_sf_hypot_egsl_sf_hypotgsl_sf_complex_sin_egsl_sf_complex_cos_egsl_sf_complex_logsin_egsl_sf_sinc_egsl_sf_sincgsl_sf_lnsinh_egsl_sf_lnsinhgsl_sf_lncosh_egsl_sf_lncoshgsl_sf_polar_to_rectgsl_sf_rect_to_polargsl_sf_sin_err_egsl_sf_cos_err_egsl_sf_angle_restrict_symm_egsl_sf_angle_restrict_symmgsl_sf_angle_restrict_pos_egsl_sf_angle_restrict_posgsl_sf_angle_restrict_symm_err_egsl_sf_angle_restrict_pos_err_egsl_sf_atanint_egsl_sf_atanintgsl_sf_zeta_int_egsl_sf_zeta_intgsl_sf_zeta_e gsl_sf_zetagsl_sf_zetam1_egsl_sf_zetam1gsl_sf_zetam1_int_egsl_sf_zetam1_intgsl_sf_hzeta_egsl_sf_hzetagsl_sf_eta_int_egsl_sf_eta_intgsl_sf_eta_egsl_sf_eta
You can import the functions that you want to use by giving a space separated list to Math::GSL::SF when you use the package.
You can also write use Math::GSL::SF qw/:all/ to use all avaible functions of the module. Note that the tag names begin with a colon.
Other tags are also available, here is a complete list of all tags for this module :
airybesselclausenhydrogeniccoulumbcouplingdawsondebyedilogfactorialmiscellipticerrorhypergeometriclaguerrelegendregammatransporttrigzetaetavars
For more informations on the functions, we refer you to the GSL offcial
documentation: http://www.gnu.org/software/gsl/manual/html_node/
Tip : search on google: site:http://www.gnu.org/software/gsl/manual/html_node/name_of_the_function_you_want
EXAMPLES
This example computes the dilogarithm of 1/10 :
use Math::GSL::SF qw/dilog/;
my $x = gsl_sf_dilog(0.1);
print "gsl_sf_dilog(0.1) = $x\n";
An example using Math::GSL::SF and gnuplot is in the examples/sf folder of the source code.
AUTHOR
Jonathan Leto <jonathan@leto.net> and Thierry Moisan <thierry.moisan@gmail.com>
COPYRIGHT AND LICENSE
Copyright (C) 2008 Jonathan Leto and Thierry Moisan
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.