* Author:
* Matias De la Puente <mfpuente.ar@gmail.com>
*/
-
+
namespace Gsl
{
/*
ZEPTO,
YOCTO
}
-
+
[CCode (cprefix="GSL_CONST_CGS_", cheader_filename="gsl/gsl_const_cgs.h")]
public enum ConstCGS
{
STEFAN_BOLTZMANN_CONSTANT,
THOMSON_CROSS_SECTION
}
-
+
[CCode (cprefix="GSL_CONST_CGSM_", cheader_filename="gsl/gsl_const_cgsm.h")]
public enum ConstCGSM
{
VACUUM_PERMEABILITY,
DEBYE
}
-
-
+
+
/*
* Error Handling
*/
ETOLG,
EOF
}
-
+
[CCode (cprefix="GSL_PREC_", cheader_filename="gsl/gsl_mode.h")]
public enum Mode
{
public delegate void ErrorHandler (string reason, string file, int line, int errno);
[CCode (has_target = false)]
public delegate void StreamHandler (string label, string file, int line, string reason);
-
+
[CCode (lower_case_cprefix="gsl_", cheader_filename="gsl/gsl_errno.h")]
namespace Error
{
public static ErrorHandler set_error_handler (ErrorHandler? new_handler);
public static ErrorHandler set_error_handler_off ();
}
-
+
[CCode (lower_case_cprefix="gsl_", cheader_filename="gsl/gsl_errno.h")]
namespace Stream
{
public static StreamHandler set_stream_handler (StreamHandler new_handler);
public static GLib.FileStream set_stream (GLib.FileStream new_stream);
}
-
-
+
+
/*
* Mathematical Functions
*/
M_LNPI,
M_EULER
}
-
+
/* The isnan, isinf and finite are define in the double type. The elementary functions are in GLib.Math */
[CCode (has_target = false)]
public delegate double _Function (double x, void* params);
[CCode (has_target = false)]
public delegate void _FunctionFdf (double x, void* params, out double f, out double df);
-
+
[SimpleType]
[CCode (cname="gsl_function", cheader_filename="gsl/gsl_math.h")]
public struct Function
public _Function function;
public void* params;
}
-
+
[SimpleType]
[CCode (cname="gsl_function_fdf", cheader_filename="gsl/gsl_math.h")]
public struct FunctionFdf
public _FunctionFdf fdf;
public void* params;
}
-
-
+
+
/*
* Complex Numbers
*/
public double imag;
public static Complex rect (double x, double y);
public static Complex polar (double r, double theta);
-
+
public static double arg (Complex z);
public static double abs (Complex z);
public static double abs2 (Complex z);
public static Complex conjugate (Complex z);
public static Complex inverse (Complex z);
public static Complex negative (Complex z);
-
+
public static Complex sqrt (Complex z);
public static Complex sqrt_real (double x);
public static Complex pow (Complex z, Complex a);
public static Complex log (Complex z);
public static Complex log10 (Complex z);
public static Complex log_b (Complex z, Complex b);
-
+
public static Complex sin (Complex z);
public static Complex cos (Complex z);
public static Complex tan (Complex z);
public static Complex sec (Complex z);
public static Complex csc (Complex z);
public static Complex cot (Complex z);
-
+
public static Complex arcsin (Complex z);
public static Complex arcsin_real (double z);
public static Complex arccos (Complex z);
public static Complex arccsc (Complex z);
public static Complex arccsc_real (double z);
public static Complex arccot (Complex z);
-
+
public static Complex sinh (Complex z);
public static Complex cosh (Complex z);
public static Complex tanh (Complex z);
public static Complex sech (Complex z);
public static Complex csch (Complex z);
public static Complex coth (Complex z);
-
+
public static Complex arcsinh (Complex z);
public static Complex arccosh (Complex z);
public static Complex arccosh_real (double z);
public static Complex arccsch (Complex z);
public static Complex arccoth (Complex z);
}
-
-
+
+
/*
* Polynomials
*/
public static Complex complex_eval (double[] c, Complex z);
[CCode (cname="gsl_complex_poly_complex_eval")]
public static Complex poly_complex_eval (Complex[] c, Complex z);
-
+
public static int dd_init ([CCode (array_length = false)] double[] dd, [CCode (array_length = false)] double[] xa, [CCode (array_length = false)] double[] ya, size_t size);
public static double dd_eval ([CCode (array_length = false)] double[] dd, [CCode (array_length = false)] double[] xa, size_t size, double x);
public static int dd_taylor ([CCode (array_length = false)] double[] c, double xp, [CCode (array_length = false)] double[] dd, [CCode (array_length = false)] double[] xa, size_t size, [CCode (array_length = false)] double[] w);
-
+
public static int solve_quadratic (double a, double b, double c, out double x0, out double x1);
public static int complex_solve_quadratic (double a, double b, double c, out Complex z0, out Complex z1);
-
+
public static int solve_cubic (double a, double b, double c, out double x0, out double x1, out double x2);
public static int complex_solve_cubic (double a, double b, double c, out Complex z0, out Complex z1, out Complex z2);
}
-
+
[Compact]
[CCode (cname="gsl_poly_complex_workspace", cheader_filename="gsl/gsl_poly.h")]
public class PolyComplexWorkspace
{
public size_t nc;
public double* matrix;
-
+
[CCode (cname="gsl_poly_complex_workspace_alloc")]
public PolyComplexWorkspace (size_t n);
[CCode (cname="gsl_poly_complex_solve")]
public static int solve (double[]a, PolyComplexWorkspace w, out double z);
}
-
-
+
+
/*
* Special Functions
*/
public double val;
public double err;
}
-
+
[SimpleType]
[CCode (cname="gsl_sf_result_e10", cheader_filename="gsl/gsl_sf_result.h")]
public struct ResultE10
public double err;
public int e10;
}
-
+
[CCode (lower_case_cprefix="gsl_sf_airy_", cheader_filename="gsl/gsl_sf_airy.h")]
namespace Airy
{
public static int Ai_scaled_e (double x, Mode mode, out Result result);
public static double Bi_scaled (double x, Mode mode);
public static int Bi_scaled_e (double x, Mode mode, out Result result);
-
+
public static double Ai_deriv (double x, Mode mode);
public static int Ai_deriv_e (double x, Mode mode, out Result result);
public static double Bi_deriv (double x, Mode mode);
public static int Ai_deriv_scaled_e (double x, Mode mode, out Result result);
public static double Bi_deriv_scaled (double x, Mode mode);
public static int Bi_deriv_scaled_e (double x, Mode mode, out Result result);
-
+
public static double zero_Ai (uint s);
public static int zero_Ai_e (uint s, out Result result);
public static double zero_Bi (uint s);
public static int zero_Bi_e (uint s, out Result result);
-
+
public static double zero_Ai_deriv (uint s);
public static int zero_Ai_deriv_e (uint s, out Result result);
public static double zero_Bi_deriv (uint s);
public static int zero_Bi_deriv_e (uint s, out Result result);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_bessel_", cheader_filename="gsl/gsl_sf_bessel.h")]
namespace Bessel
{
public static double Jn (int n, double x);
public static int Jn_e (int n, double x, out Result result);
public static int Jn_array (int nmin, int nmax, double x, [CCode (array_length = false)] double[] result_array);
-
+
public static double Y0 (double x);
public static int Y0_e (double x, out Result result);
public static double Y1 (double x);
public static double Yn (int n, double x);
public static int Yn_e (int n, double x, out Result result);
public static int Yn_array (int nmin, int nmax, double x, [CCode (array_length = false)] double[] result_array);
-
+
public static double I0 (double x);
public static int I0_e (double x, out Result result);
public static double I1 (double x);
public static double In_scaled (int n, double x);
public static int In_scaled_e (int n, double x, out Result result);
public static int In_scaled_array (int nmin, int nmax, double x, [CCode (array_length = false)] double[] result_array);
-
+
public static double K0 (double x);
public static int K0_e (double x, out Result result);
public static double K1 (double x);
public static double Kn_scaled (int n, double x);
public static int Kn_scaled_e (int n, double x, out Result result);
public static int Kn_scaled_array (int nmin, int nmax, double x, [CCode (array_length = false)] double[] result_array);
-
+
public static double j0 (double x);
public static int j0_e (double x, out Result result);
public static double j1 (double x);
public static int jl_e (int l, double x, out Result result);
public static int jl_array (int lmax, double x, [CCode (array_length = false)] double[] result_array);
public static int jl_steed_array (int lmax, double x, [CCode (array_length = false)] double[] jl_x_array);
-
+
public static double y0 (double x);
public static int y0_e (double x, out Result result);
public static double y1 (double x);
public static double yl (int l, double x);
public static int yl_e (int l, double x, out Result result);
public static int yl_array (int lmax, double x, [CCode (array_length = false)] double[] result_array);
-
+
public static double i0_scaled (double x);
public static int i0_scaled_e (double x, out Result result);
public static double i1_scaled (double x);
public static double il_scaled (int l, double x);
public static int il_scaled_e (int l, double x, out Result result);
public static int il_scaled_array (int lmax, double x, [CCode (array_length = false)] double[] result_array);
-
+
public static double k0_scaled (double x);
public static int k0_scaled_e (double x, out Result result);
public static double k1_scaled (double x);
public static double kl_scaled (int l, double x);
public static int kl_scaled_e (int l, double x, out Result result);
public static int kl_scaled_array (int lmax, double x, [CCode (array_length = false)] double[] result_array);
-
+
public static double Jnu (double nu, double x);
public static int Jnu_e (double nu, double x, out Result result);
public static int sequence_Jnu_e (double nu, Mode mode, size_t size, [CCode (array_length = false)] double[] v);
-
+
public static double Ynu (double nu, double x);
public static int Ynu_e (double nu, double x, out Result result);
-
+
public static double Inu (double nu, double x);
public static int Inu_e (double nu, double x, out Result result);
public static double Inu_scaled (double nu, double x);
public static int Inu_scaled_e (double nu, double x, out Result result);
-
+
public static double Knu (double nu, double x);
public static int Knu_e (double nu, double x, out Result result);
public static double lnKnu (double nu, double x);
public static int lnKnu_e (double nu, double x, out Result result);
public static double Knu_scaled (double nu, double x);
public static int Knu_scaled_e (double nu, double x, out Result result);
-
+
public static double zero_J0 (uint s);
public static int zero_J0_e (uint s, out Result result);
public static double zero_J1 (uint s);
public static double zero_Jnu (double nu, uint s);
public static int zero_Jnu_e (double nu, uint s, out Result result);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_", cheader_filename="gsl/gsl_sf_clausen.h")]
namespace Clausen
{
public static double clausen (double x);
public static int clausen_e (double x, out Result result);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_", cheader_filename="gsl/gsl_sf_coulomb.h")]
namespace Hydrogenic
{
public static double hydrogenicR (int n, int l, double z, double r);
public static int hydrogenicR_e (int n, int l, double z, double r, out Result result);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_coulomb_wave_", cheader_filename="gsl/gsl_sf_coulomb.h")]
namespace CoulombWave
{
public static int FGp_array (double l_min, int kmax, double eta, double x, [CCode (array_length = false)] double[] fc_array, [CCode (array_length = false)] double[] fcp_array, [CCode (array_length = false)] double[] gc_array, [CCode (array_length = false)] double[] gcp_array, out double f_exponent, out double g_exponent);
public static int sphF_array (double l_min, int kmax, double eta, double x, [CCode (array_length = false)] double[] fc_array, [CCode (array_length = false)] double[] f_exponent);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_coulomb_", cheader_filename="gsl/gsl_sf_coulomb.h")]
namespace Coulomb
{
public static int CL_e (double l, double eta, out Result result);
public static int CL_array (double lmin, int kmax, double eta, [CCode (array_length = false)] double[] cl);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_coupling_", cheader_filename="gsl/gsl_coupling.h")]
namespace Coupling
{
public static double 3j (int two_ja, int two_jb, int two_jc, int two_ma, int two_mb, int two_mc);
public static int 3j_e (int two_ja, int two_jb, int two_jc, int two_ma, int two_mb, int two_mc, out Result result);
-
+
public static double 6j (int two_ja, int two_jb, int two_jc, int two_jd, int two_je, int two_jf);
public static int 6j_e (int two_ja, int two_jb, int two_jc, int two_jd, int two_je, int two_jf, out Result result);
public static double 9j (int two_ja, int two_jb, int two_jc, int two_jd, int two_je, int two_jf, int two_jg, int two_jh, int two_ji);
public static int 9j_e (int two_ja, int two_jb, int two_jc, int two_jd, int two_je, int two_jf, int two_jg, int two_jh, int two_ji, out Result result);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_", cheader_filename="gsl/gsl_sf_dawson.h")]
namespace Dawson
{
public static double dawson (double x);
public static int dawson_e (double x, out Result result);
}
-
+
[CCode (cheader_filename="gsl/gsl_sf_debye.h")]
- namespace Debye
+ namespace Debye
{
[CCode (cname="gsl_sf_debye_1")]
public static double D1 (double x);
[CCode (cname="gsl_sf_debye_6_e")]
public static int D6_e (double x, out Result result);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_", cheader_filename="gsl/gsl_sf_dilog.h")]
namespace Dilog
{
public static int dilog_e (double x, out Result result);
public static int complex_dilog_e (double r, double theta, out Result result_re, out Result result_im);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_multiply_", cheader_filename="gsl/gsl_sf_elementary.h")]
namespace Multiply
{
public static int e (double x, double y, out Result result);
public static int err_e (double x, double dx, double y, double dy, out Result result);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_ellint_", cheader_filename="gsl/gsl_sf_ellint.h")]
namespace EllInt
{
public static int Ecomp_e (double k, Mode mode, out Result result);
public static double Pcomp (double k, double n, Mode mode);
public static int Pcomp_e (double k, double n, Mode mode, out Result result);
-
+
public static double F (double phi, double k, Mode mode);
public static int F_e (double phi, double k, Mode mode, out Result result);
public static double E (double phi, double k, Mode mode);
public static int P_e (double phi, double k, double n, Mode mode, out Result result);
public static double D (double phi, double k, double n, Mode mode);
public static int D_e (double phi, double k, double n, Mode mode, out Result result);
-
+
public static double RC (double x, double y, Mode mode);
public static int RC_e (double x, double y, Mode mode, out Result result);
public static double RD (double x, double y, double z, Mode mode);
public static double RJ (double x, double y, double z, double p, Mode mode);
public static int RJ_e (double x, double y, double z, double p, Mode mode, out Result result);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_elljac_", cheader_filename="gsl/gsl_elljac.h")]
namespace EllJac
{
public static int e (double u, double m, out double sn, out double cn, out double dn);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_", cheader_filename="gsl/gsl_sf_erf.h")]
namespace Erf
{
public static double hazard (double x);
public static int hazard_e (double x, out Result result);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_", cheader_filename="gsl/gsl_sf_exp.h")]
namespace Exp
{
public static int exp_err_e (double x, double dx, out Result result);
public static int exp_err_e10_e (double x, double dx, out ResultE10 result);
public static int exp_mul_err_e (double x, double dx, double y, double dy, out Result result);
- public static int exp_mul_err_e10_e (double x, double dx, double y, double dy, out ResultE10 result);
+ public static int exp_mul_err_e10_e (double x, double dx, double y, double dy, out ResultE10 result);
public static double expm1 (double x);
public static int expm1_e (double x, out Result result);
public static double exprel (double x);
public static double exprel_n (int n, double x);
public static int exprel_n_e (int n, double x, out Result result);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_", cheader_filename="gsl/gsl_sf_expint.h")]
namespace Expint
{
public static double atanint (double x);
public static double atanint_e (double x, out Result result);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_fermi_dirac_", cheader_filename="gsl/gsl_sf_fermi_dirach.h")]
namespace FermiDirac
{
public static double inc_0 (double x, double b);
public static int inc_0_e (double x, double b, out Result result);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_", cheader_filename="gsl/gsl_sf_gamma.h")]
namespace GammaBeta
{
public static double gammainv (double x);
public static int gammainv_e (double x, out Result result);
public static int lngamma_complex_e (double zr, double zi, out Result lnr, out Result arg);
-
+
public static double fact (uint n);
public static int fact_e (uint n, out Result result);
public static double doublefact (uint n);
public static int lnchoose_e (uint n, uint m, out Result result);
public static double taylorcoeff (int n, double x);
public static int taylorcoeff_e (int n, double x, out Result result);
-
+
public static double poch (double a, double x);
public static int poch_e (double a, double x, out Result result);
public static double lnpoch (double a, double x);
public static int lnpoch_sgn_e (double a, double x, out Result result, out double sgn);
public static double pochrel (double a, double x);
public static int pochrel_e (double a, double x, out Result result);
-
+
public static double gamma_inc (double a, double x);
public static int gamma_inc_e (double a, double x, out Result result);
public static double gamma_inc_Q (double a, double x);
public static int beta_e (double a, double b, out Result result);
public static double lnbeta (double a, double b);
public static int lnbeta_e (double a, double b, out Result result);
-
+
public static double beta_inc (double a, double b, double x);
public static int beta_inc_e (double a, double b, double x, out Result result);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_gegenpoly_", cheader_filename="gsl/gsl_sf_gegenbauer.h")]
namespace GegenPoly
{
public static double Cn_e (double lambda, double x, out Result result);
public static int array (int nmax, double lambda, double x, out Result result);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_hyperg_", cheader_filename="gsl/gsl_sf_hyperg.h")]
namespace Hyperg
{
public static double 2F0 (double a, double b, double x);
public static int 2F0_e (double a, double b, double x, out Result result);
}
-
+
[CCode (cheader_filename="gsl/gsl_sf_laguerre.h")]
namespace Laguerre
{
[CCode (cname="gsl_sf_laguerre_n_e")]
public static double Ln_e (int n, double a, double x, out Result result);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_lambert_", cheader_filename="gsl/gsl_sf_lambert.h")]
namespace Lambert
{
public static double Wm1 (double x);
public static int Wm1_e (double x, out Result result);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_legendre_", cheader_filename="gsl/gsl_sf_legendre.h")]
namespace LegendrePoly
{
public static int Pl_array (int lmax, double x, [CCode (array_length = false)] double[] result_array);
public static int Pl_deriv_array (int lmax, double x, [CCode (array_length = false)] double[] result_array, [CCode (array_length = false)] double[] result_deriv_array);
public static double Q0 (double x);
- public static int Q0_e (double x, out Result result);
+ public static int Q0_e (double x, out Result result);
public static double Q1 (double x);
- public static int Q1_e (double x, out Result result);
+ public static int Q1_e (double x, out Result result);
public static double Ql (int l, double x);
public static int Ql_e (int l, double x, out Result result);
-
+
public static double Plm (int l, int m, double x);
public static int Plm_e (int l, int m, double x, out Result result);
public static int Plm_array (int lmax, int m, double x, [CCode (array_length = false)] double[] result_array);
public static int sphPlm_array (int lmax, int m, double x, [CCode (array_length = false)] double[] result_array);
public static int sphPlm_deriv_array (int lmax, int m, double x, double[] result_array, [CCode (array_length = false)] double[] result_deriv_array);
public static int array_size (int lmax, int m);
-
+
[CCode (cname="gsl_sf_conicalP_half")]
public static double conicalP_half (double lambda, double x);
[CCode (cname="gsl_sf_conicalP_half_e")]
public static double conicalP_cyl_reg (int m, double lambda, double x);
[CCode (cname="gsl_sf_conicalP_cyl_reg_e")]
public static int conicalP_cyl_reg_e (int m, double lambda, double x, out Result result);
-
+
public static double H3d_0 (double lambda, double eta);
public static int H3d_0_e (double lambda, double eta, out Result result);
public static double H3d_1 (double lambda, double eta);
public static int H3d_e (int l, double lambda, double eta, out Result result);
public static int H3d_array (int lmax, double lambda, double eta, [CCode (array_length = false)] double[] result_array);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_", cheader_filename="gsl/gsl_sf_log.h")]
namespace Log
{
public static double log_1plusx_mx (double x);
public static int log_1plusx_mx_e (double x, out Result result);
}
-
+
[Compact]
[CCode (cname="gsl_sf_mathieu_workspace", cprefix="gsl_sf_mathieu_", cheader_filename="gsl/gsl_sf_mathieu.h")]
public class MathieuWorkspace
public Vector eval;
public Matrix evec;
public EigenSymmvWorkspace wmat;
-
+
public static int a_array (int order_min, int order_max, double qq, MathieuWorkspace work, [CCode (array_length = false)] double[] result_array);
public static int b_array (int order_min, int order_max, double qq, MathieuWorkspace work, [CCode (array_length = false)] double[] result_array);
public static int a (int order, double qq, out Result result);
public static int b (int order, double qq, out Result result);
public static int a_coeff (int order, double qq, double aa, [CCode (array_length = false)] double[] coeff);
public static int b_coeff (int order, double qq, double aa, [CCode (array_length = false)] double[] coeff);
-
+
[CCode (cname="gsl_sf_mathieu_alloc")]
public MathieuWorkspace (size_t nn, double qq);
public static int se (int order, double qq, double zz, out Result result);
public static int ce_array (int nmin, int nmax, double qq, double zz, MathieuWorkspace work, [CCode (array_length = false)] double[] result_array);
public static int se_array (int nmin, int nmax, double qq, double zz, MathieuWorkspace work, [CCode (array_length = false)] double[] result_array);
-
+
public static int Mc (int kind, int order, double qq, double zz, out Result result);
public static int Ms (int kind, int order, double qq, double zz, out Result result);
public static int Mc_array (int kind, int nmin, int nmax, double qq, double zz, MathieuWorkspace work, [CCode (array_length = false)] double[] result_array);
public static int Ms_array (int kind, int nmin, int nmax, double qq, double zz, MathieuWorkspace work, [CCode (array_length = false)] double[] result_array);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_", cheader_filename="gsl/gsl_sf_pow_int.h")]
namespace Pow
{
public static double pow_int (double x, int n);
public static int pow_int_e (double x, int n, out Result result);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_", cheader_filename="gsl/gsl_sf_psi.h")]
namespace Psi
{
public static int psi_1_int_e (int n, out Result result);
public static double psi_1 (double x);
public static int psi_1_e (double x, out Result result);
-
+
public static double psi_n (int n, double x);
public static int psi_e_n (int n, double x, out Result result);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_", cheader_filename="gsl/gsl_sf_synchrotron.h")]
namespace Synchrotron
{
public static double synchrotron_2 (double x);
public static double synchrotron_2_e (double x, out Result result);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_", cheader_filename="gsl/gsl_sf_transport.h")]
namespace Transport
{
public static double transport_5 (double x);
public static int transport_5_e (double x, out Result result);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_", cheader_filename="gsl/gsl_sf_trig.h")]
namespace Trig
{
public static int sin_err_e (double x, double dx, out Result result);
public static int cos_err_e (double x, double dx, out Result result);
}
-
+
[CCode (lower_case_cprefix="gsl_sf_", cheader_filename="gsl/gsl_sf_zeta.h")]
namespace Zeta
{
public static double eta (double s);
public static int eta_e (double s, out Result result);
}
-
-
+
+
/*
* Blocks, Vectors and Matrices
*/
{
public size_t size;
public double* data;
-
+
[CCode (cname="gsl_block_alloc")]
public Block (size_t n);
[CCode (cname="gsl_block_calloc")]
public Block.with_zeros (size_t n);
-
+
[CCode (instance_pos=-1)]
public int fwrite (GLib.FileStream stream);
[CCode (instance_pos=-1)]
[CCode (instance_pos=-1)]
public int fscanf (GLib.FileStream stream);
}
-
+
[Compact]
[CCode (cname="gsl_block_complex", cheader_filename="gsl/gsl_block_complex_double.h")]
public class BlockComplex
{
public size_t size;
public double* data;
-
+
[CCode (cname="gsl_block_complex_alloc")]
public BlockComplex (size_t n);
[CCode (cname="gsl_block_complex_calloc")]
public BlockComplex.with_zeros (size_t n);
-
+
[CCode (instance_pos=-1)]
public int fwrite (GLib.FileStream stream);
[CCode (instance_pos=-1)]
[CCode (instance_pos=-1)]
public int fscanf (GLib.FileStream stream);
}
-
+
[SimpleType]
[CCode (cname="gsl_vector_view", cheader_filename="gsl/gsl_vector_double.h")]
public struct VectorView
{
public unowned Vector vector;
-
+
public static VectorView array (double[] v);
public static VectorView array_with_stride ([CCode (array_length = false)] double[] v, size_t stride, size_t n);
}
-
+
[Compact]
[CCode (cname="gsl_vector", cheader_filename="gsl/gsl_vector_double.h")]
public class Vector
public double* data;
public Block block;
public int owner;
-
+
[CCode (cname="gsl_vector_alloc")]
public Vector (size_t n);
[CCode (cname="gsl_vector_calloc")]
public Vector.from_block (Block b, size_t offset, size_t n, size_t stride);
[CCode (cname="gsl_vector_alloc_from_vector")]
public Vector.from_vector (Vector v, size_t offset, size_t n, size_t stride);
-
+
public double @get (size_t i);
public void @set (size_t i, double x);
public double* ptr (size_t i);
-
+
public void set_all (double x);
public void set_zero ();
public void set_basis (size_t i);
-
+
[CCode (instance_pos=-1)]
public int fwrite (GLib.FileStream stream);
[CCode (instance_pos=-1)]
public static int fprintf (GLib.FileStream stream, Vector v, string format);
[CCode (instance_pos=-1)]
public int fscanf (GLib.FileStream stream);
-
+
public VectorView subvector (size_t offset, size_t n);
public VectorView subvector_with_stride (size_t offset, size_t stride, size_t n);
-
+
public int memcpy (Vector src);
public int swap (Vector w);
-
+
public int swap_elements (size_t i, size_t j);
public int reverse ();
-
+
public int add (Vector b);
public int sub (Vector b);
public int mul (Vector b);
public int div (Vector b);
public int scale (double x);
public int add_constant (double x);
-
+
public double max ();
public double min ();
public void minmax (out double min_out, out double max_out);
public size_t max_index ();
public size_t min_index ();
public void minmax_index (out size_t imin, out size_t imax);
-
+
public bool isnull ();
public bool ispos ();
public bool isneg ();
public struct VectorComplexView
{
public unowned VectorComplex vector;
-
+
public static VectorComplexView array (double[] v);
public static VectorComplexView array_with_stride ([CCode (array_length = false)] double[] v, size_t stride, size_t n);
}
-
+
[Compact]
[CCode (cname="gsl_vector_complex", cheader_filename="gsl/gsl_vector_complex_double.h")]
public class VectorComplex
public double* data;
public BlockComplex block;
public int owner;
-
+
[CCode (cname="gsl_vector_complex_alloc")]
public VectorComplex (size_t n);
[CCode (cname="gsl_vector_complex_calloc")]
public VectorComplex.from_block (BlockComplex b, size_t offset, size_t n, size_t stride);
[CCode (cname="gsl_vector_complex_alloc_from_vector")]
public VectorComplex.from_vector (VectorComplex v, size_t offset, size_t n, size_t stride);
-
+
public Complex @get (size_t i);
public void @set (size_t i, Complex x);
public Complex* ptr (size_t i);
-
+
public void set_all (Complex x);
public void set_zero ();
public void set_basis (size_t i);
-
+
[CCode (instance_pos=-1)]
public int fwrite (GLib.FileStream stream);
[CCode (instance_pos=-1)]
public static int fprintf (GLib.FileStream stream, VectorComplex v, string format);
[CCode (instance_pos=-1)]
public int fscanf (GLib.FileStream stream);
-
+
public VectorComplexView subvector (size_t i, size_t n);
public VectorComplexView subvector_with_stride (size_t i, size_t stride, size_t n);
public VectorView complex_real ();
public VectorView complex_imag ();
-
+
public int memcpy (VectorComplex src);
public int swap (VectorComplex w);
-
+
public int swap_elements (size_t i, size_t j);
public int reverse ();
-
+
public int add (VectorComplex b);
public int sub (VectorComplex b);
public int mul (VectorComplex b);
public int div (VectorComplex b);
public int scale (double x);
public int add_constant (double x);
-
+
public double max ();
public double min ();
public void minmax (out double min_out, out double max_out);
public size_t max_index ();
public size_t min_index ();
public void minmax_index (out size_t imin, out size_t imax);
-
+
public bool isnull ();
public bool ispos ();
public bool isneg ();
public bool isnonneg ();
}
-
+
[SimpleType]
[CCode (cname="gsl_matrix_view", cheader_filename="gsl/gsl_matrix_double.h")]
public struct MatrixView
{
public unowned Matrix matrix;
-
+
public static MatrixView array ([CCode (array_length = false)] double[] v, size_t n1, size_t n2);
public static MatrixView array_with_tda ([CCode (array_length = false)] double[] v, size_t n1, size_t n2, size_t tda);
public static MatrixView vector (Vector v, size_t n1, size_t n2);
public static MatrixView vectr_with_tda (Vector v, size_t n1, size_t n2, size_t tda);
}
-
+
[Compact]
[CCode (cname="gsl_matrix", cheader_filename="gsl/gsl_matrix_double.h")]
public class Matrix
public double* data;
public Block block;
public int owner;
-
+
[CCode (cname="gsl_matrix_alloc")]
public Matrix (size_t n1, size_t n2);
[CCode (cname="gsl_matrix_calloc")]
public Vector alloc_row_from_matrix (size_t i);
public Vector alloc_col_from_matrix (size_t j);
-
+
public double @get (size_t i, size_t j);
public void @set (size_t i, size_t j, double x);
public double* ptr (size_t i, size_t j);
-
+
public void set_all (double x);
public void set_zero ();
public void set_identity ();
-
+
[CCode (instance_pos=-1)]
public int fwrite (GLib.FileStream stream);
[CCode (instance_pos=-1)]
public static int fprintf (GLib.FileStream stream, Matrix m, string format);
[CCode (instance_pos=-1)]
public int fscanf (GLib.FileStream stream);
-
+
public MatrixView submatrix (size_t k, size_t k2, size_t n1, size_t n2);
public VectorView row (size_t i);
public VectorView column (size_t j);
public VectorView diagonal ();
public VectorView subdiagonal (size_t k);
public VectorView superdiagonal (size_t k);
-
+
public int memcpy (Matrix src);
public int swap (Matrix m2);
-
+
public static int get_row (Vector v, Matrix m, size_t i);
public static int get_col (Vector v, Matrix m, size_t j);
public int set_row (size_t i, Vector v);
public int set_col (size_t j, Vector v);
-
+
public int swap_rows (size_t i, size_t j);
public int swap_columns (size_t i, size_t j);
public int swap_rowcol (size_t i, size_t j);
public int transpose_memcpy (Matrix src);
public int transpose ();
-
+
public int add (Matrix b);
public int sub (Matrix b);
public int mul_elements (Matrix b);
public int scale (double x);
public int add_constant (double x);
public int add_diagonal (double x);
-
+
public double max ();
public double min ();
public void minmax (out double min_out, out double max_out);
public void max_index (out size_t imax, out size_t jmax);
public void min_index (out size_t imin, out size_t jmin);
public void minmax_index (out size_t imin, out size_t jmin, out size_t imax, out size_t jmax);
-
+
public bool isnull ();
public bool ispos ();
public bool isneg ();
public bool isnonneg ();
}
-
+
[SimpleType]
[CCode (cname="gsl_matrix_complex_view", cheader_filename="gsl/gsl_matrix_complex_double.h")]
public struct MatrixComplexView
{
public unowned MatrixComplex matrix;
-
+
public static MatrixComplexView array ([CCode (array_length = false)] double[] v, size_t n1, size_t n2);
public static MatrixComplexView array_with_tda ([CCode (array_length = false)] double[] v, size_t n1, size_t n2, size_t tda);
public static MatrixComplexView vector (VectorComplex v, size_t n1, size_t n2);
public double* data;
public BlockComplex block;
public int owner;
-
+
[CCode (cname="gsl_matrix_complex_alloc")]
public MatrixComplex (size_t n1, size_t n2);
[CCode (cname="gsl_matrix_complex_calloc")]
public MatrixComplex.from_matrix (MatrixComplex m, size_t k1, size_t k2, size_t n1, size_t n2);
public VectorComplex alloc_row_from_matrix (size_t i);
- public VectorComplex alloc_col_from_matrix (size_t j);
+ public VectorComplex alloc_col_from_matrix (size_t j);
public double @get (size_t i, size_t j);
public void @set (size_t i, size_t j, double x);
public double* ptr (size_t i, size_t j);
-
+
public void set_all (double x);
public void set_zero ();
public void set_identity ();
-
+
[CCode (instance_pos=-1)]
public int fwrite (GLib.FileStream stream);
[CCode (instance_pos=-1)]
public static int fprintf (GLib.FileStream stream, MatrixComplex m, string format);
[CCode (instance_pos=-1)]
public int fscanf (GLib.FileStream stream);
-
+
public MatrixComplexView submatrix (size_t k, size_t k2, size_t n1, size_t n2);
public VectorComplexView row (size_t i);
public VectorComplexView column (size_t j);
public VectorComplexView diagonal ();
public VectorComplexView subdiagonal (size_t k);
public VectorComplexView superdiagonal (size_t k);
-
+
public int memcpy (MatrixComplex src);
public int swap (MatrixComplex m2);
-
+
public static int get_row (VectorComplex v, MatrixComplex m, size_t i);
public static int get_col (VectorComplex v, MatrixComplex m, size_t j);
public int set_row (size_t i, VectorComplex v);
public int set_col (size_t j, VectorComplex v);
-
+
public int swap_rows (size_t i, size_t j);
public int swap_columns (size_t i, size_t j);
public int swap_rowcol (size_t i, size_t j);
public int transpose_memcpy (MatrixComplex src);
public int transpose ();
-
+
public int add (MatrixComplex b);
public int sub (MatrixComplex b);
public int mul_elements (MatrixComplex b);
public int scale (double x);
public int add_constant (double x);
public int add_diagonal (double x);
-
+
public double max ();
public double min ();
public void minmax (out double min_out, out double max_out);
public void max_index (out size_t imax, out size_t jmax);
public void min_index (out size_t imin, out size_t jmin);
public void minmax_index (out size_t imin, out size_t jmin, out size_t imax, out size_t jmax);
-
+
public bool isnull ();
public bool ispos ();
public bool isneg ();
public bool isnonneg ();
}
-
-
+
+
/*
* Permutations
*/
{
public size_t size;
public size_t* data;
-
+
[CCode (cname="gsl_permutation_alloc")]
public Permutation (size_t n);
[CCode (cname="gsl_permutation_calloc")]
public Permutation.with_zeros (size_t n);
-
+
public void init ();
public int memcpy (Permutation src);
-
+
public size_t @get (size_t i);
public int swap (size_t i, size_t j);
-
+
public int valid ();
-
+
public void reverse ();
public int inverse (Permutation p);
public int next ();
public int prev ();
-
+
public int mul (Permutation pa, Permutation pb);
-
+
[CCode (instance_pos=-1)]
public int fwrite (GLib.FileStream stream);
[CCode (instance_pos=-1)]
public static int fprintf (GLib.FileStream stream, Permutation p, string format);
[CCode (instance_pos=-1)]
public int fscanf (GLib.FileStream stream);
-
+
public int linear_to_canonical (Permutation p);
public int canonical_to_linear (Permutation q);
public size_t inversions ();
public size_t linear_cycles ();
public size_t canonical_cycles ();
}
-
+
[CCode (lower_case_cprefix="gsl_", cheader_filename="gsl/gsl_permute_double.h")]
namespace Permute
{
public static int permute (size_t* p, [CCode (array_length = false)] double[] data, size_t stride, size_t n);
public static int permute_inverse (size_t* p, [CCode (array_length = false)] double[] data, size_t stride, size_t n);
}
-
+
[CCode (cheader_filename="gsl/gsl_permute_complex_double.h")]
namespace PermuteComplex
{
[CCode (cname="gsl_permute_complex_inverse")]
public static int permute_inverse (size_t* p, [CCode (array_length = false)] double[] data, size_t stride, size_t n);
}
-
+
[CCode (cheader_filename="gsl/gsl_permute_vector_double.h")]
namespace PermuteVector
{
public size_t n;
public size_t k;
public size_t* data;
-
+
[CCode (cname="gsl_combination_alloc")]
public Combination (size_t n, size_t k);
[CCode (cname="gsl_combination_calloc")]
public void init_first ();
public void init_last ();
public int memcpy (Combination src);
-
+
public size_t @get (size_t i);
-
+
public int valid ();
-
+
public int next ();
public int prev ();
-
+
[CCode (instance_pos=-1)]
public int fwrite (GLib.FileStream stream);
[CCode (instance_pos=-1)]
[CCode (instance_pos=-1)]
public int fscanf (GLib.FileStream stream);
}
-
-
+
+
/*
* Sorting
*/
public static int largest ([CCode (array_length = false)] double[] dest, size_t k, [CCode (array_length = false)] double[] src, size_t stride, size_t n);
public static int largest_index ([CCode (array_length = false)] size_t[] p, size_t k, [CCode (array_length = false)] double[] src, size_t stride, size_t n);
}
-
+
[CCode (lower_case_cprefix="gsl_sort_vector_", cheader_filename="gsl/gsl_sort_vector_double.h")]
namespace SortVector
{
public static int largest ([CCode (array_length = false)] double[] dest, size_t k, Vector v);
public static int largest_index ([CCode (array_length = false)] size_t[] p, size_t k, Vector v);
}
-
-
+
+
/*
* Linear Algebra
*/
public static double complex_LU_lndet (MatrixComplex LU);
public static int LU_sgndet (Matrix LU, int signum);
public static Complex complex_LU_sgndet (MatrixComplex LU, int signum);
-
+
public static int QR_decomp (Matrix A, Vector tau);
public static int QR_solve (Matrix QR, Vector tau, Vector b, Vector x);
public static int QR_svx (Matrix QR, Vector tau, Vector x);
public static int QR_update (Matrix Q, Matrix R, Vector w, Vector v);
public static int R_solve (Matrix R, Vector b, Vector x);
public static int R_svx (Matrix R, Vector x);
-
+
public static int QRPT_decomp (Matrix A, Vector tau, Permutation p, out int signum, Vector norm);
public static int QRPT_decomp2 (Matrix A, Matrix q, Matrix r, Vector tau, Permutation p, out int signum, Vector norm);
public static int QRPT_solve (Matrix QR, Vector tau, Permutation p, Vector b, Vector x);
public static int QRPT_update (Matrix Q, Matrix R, Permutation p, Vector u, Vector v);
public static int QRPT_Rsolve (Matrix QR, Permutation p, Vector b, Vector x);
public static int QRPT_Rsvx (Matrix QR, Permutation p, Vector x);
-
+
public static int SV_decomp (Matrix A, Matrix V, Vector S, Vector work);
public static int SV_decomp_mod (Matrix A, Matrix X, Matrix V, Vector S, Vector work);
public static int SV_decomp_jacobi (Matrix A, Matrix V, Vector S);
public static int SV_solve (Matrix U, Matrix V, Vector S, Vector b, Vector x);
-
+
public static int cholesky_decomp (Matrix A);
public static int complex_cholesky_decomp (MatrixComplex A);
public static int cholesky_solve (Matrix cholesky, Vector b, Vector x);
public static int complex_cholesky_solve (MatrixComplex cholesky, VectorComplex b, VectorComplex x);
public static int cholesky_svx (Matrix cholesky, Vector x);
public static int complex_cholesky_svx (MatrixComplex cholesky, VectorComplex x);
-
+
public static int symmtd_decomp (Matrix A, Vector tau);
public static int symmtd_unpack (Matrix A, Vector tau, Matrix Q, Vector diag, Vector subdiag);
public static int symmtd_unpack_T (Matrix A, Vector diag, Vector subdiag);
-
+
public static int hermtd_decomp (MatrixComplex A, VectorComplex tau);
public static int hermtd_unpack (MatrixComplex A, VectorComplex tau, MatrixComplex Q, Vector diag, Vector subdiag);
public static int hermtd_unpack_T (MatrixComplex A, Vector diag, Vector subdiag);
-
+
public static int hessenberg_decomp (Matrix A, Vector tau);
public static int hessenberg_unpack (Matrix H, Vector tau, Matrix U);
public static int hessenberg_unpack_accum (Matrix H, Vector tau, Matrix V);
public static int hessenberg_set_zero (Matrix H);
-
+
public static int hesstri_decomp (Matrix A, Matrix B, Matrix U, Matrix V, Vector work);
-
+
public static int bidiag_decomp (Matrix A, Vector tau_U, Vector tau_V);
public static int bidiag_unpack (Matrix A, Vector tau_U, Matrix U, Vector tau_V, Matrix V, Vector diag, Vector superdiag);
public static int bidiag_unpack2 (Matrix A, Vector tau_U, Vector tau_V, Matrix V);
public static int bidiag_unpack_B (Matrix A, Vector diag, Vector superdiag);
-
+
public static int householder_tansform (Vector v);
public static Complex complex_householder_transform (VectorComplex V);
public static int householder_hm (double tau, Vector v, Matrix A);
public static int complex_householder_mh (Complex tau, VectorComplex V, MatrixComplex A);
public static int householder_hv (double tau, Vector v, Vector w);
public static int complex_householder_hv (Complex tau, VectorComplex V, VectorComplex w);
-
+
public static int HH_solve (Matrix A, Vector b, Vector x);
public static int HH_svx (Matrix A, Vector x);
-
+
public static int solve_tridiag (Vector diag, Vector e, Vector f, Vector b, Vector x);
public static int solve_symm_tridiag (Vector diag, Vector e, Vector b, Vector x);
public static int solve_cyc_tridiag (Vector diag, Vector e, Vector f, Vector b, Vector x);
public static int solve_symm_cyc_tridiag (Vector diag, Vector e, Vector b, Vector x);
-
+
public static int balance_matrix (Matrix A, Vector D);
}
-
-
+
+
/*
* Eigensystems
*/
VAL_ASC,
VAL_DESC,
ABS_ASC,
- ABS_DESC
+ ABS_DESC
}
-
+
[Compact]
[CCode (cname="gsl_eigen_symm_workspace", free_function="gsl_eigen_symm_free", cheader_filename="gsl/gsl_eigen.h")]
public class EigenSymmWorkspace
public size_t size;
public double* d;
public double* sd;
-
+
[CCode (cname="gsl_eigen_symm_alloc")]
public EigenSymmWorkspace (size_t n);
[CCode (cname="gsl_eigen_symm", instance_pos=-1)]
public int init (Matrix A, Vector eval);
}
-
+
[Compact]
[CCode (cname="gsl_eigen_symmv_workspace", free_function="gsl_eigen_symmv_free", cheader_filename="gsl/gsl_eigen.h")]
public class EigenSymmvWorkspace
public double* sd;
public double* gc;
public double* gs;
-
+
[CCode (cname="gsl_eigen_symmv_alloc")]
public EigenSymmvWorkspace (size_t n);
[CCode (cname="gsl_eigen_symmv", instance_pos=-1)]
public int init (Matrix A, Vector eval, Matrix evec);
}
-
+
[Compact]
[CCode (cname="gsl_eigen_herm_workspace", free_function="gsl_eigen_herm_free", cheader_filename="gsl/gsl_eigen.h")]
public class EigenHermWorkspace
public double* d;
public double* sd;
public double* tau;
-
+
[CCode (cname="gsl_eigen_herm_alloc")]
public EigenHermWorkspace (size_t n);
[CCode (cname="gsl_eigen_herm", instance_pos=-1)]
public int init (MatrixComplex A, VectorComplex eval);
}
-
+
[Compact]
[CCode (cname="gsl_eigen_hermv_workspace", free_function="gsl_eigen_hermv_free", cheader_filename="gsl/gsl_eigen.h")]
public class EigenHermvWorkspace
public double* tau;
public double* gc;
public double* gs;
-
+
[CCode (cname="gsl_eigen_hermv_alloc")]
public EigenHermvWorkspace (size_t n);
[CCode (cname="gsl_eigen_hermv", instance_pos=-1)]
public int init (MatrixComplex A, VectorComplex eval, MatrixComplex evec);
}
-
+
[Compact]
[CCode (cname="gsl_eigen_nonsymm_workspace", free_function="gsl_eigen_nonsymm_free", cheader_filename="gsl/gsl_eigen.h")]
public class EigenNonsymmWorkspace
public Matrix Z;
public int do_balance;
size_t n_evals;
-
+
[CCode (cname="gsl_eigen_nonsymm_alloc")]
public EigenNonsymmWorkspace (size_t n);
[CCode (cname="gsl_eigen_nonsymm_params", instance_pos=-1)]
public Vector work3;
public Matrix Z;
public EigenNonsymmWorkspace nonsymm_workspace_p;
-
+
[CCode (cname="gsl_eigen_nonsymmv_alloc")]
public EigenNonsymmvWorkspace (size_t n);
[CCode (cname="gsl_eigen_nonsymmv", instance_pos=-1)]
{
public size_t size;
public EigenSymmWorkspace symm_workspace_p;
-
+
[CCode (cname="gsl_eigen_gensymm_alloc")]
public EigenGensymmWorkspace (size_t n);
[CCode (cname="gsl_eigen_gensymm", instance_pos=-1)]
{
public size_t size;
public EigenSymmvWorkspace symmv_workspace_p;
-
+
[CCode (cname="gsl_eigen_gensymmv_alloc")]
public EigenGensymmvWorkspace (size_t n);
[CCode (cname="gsl_eigen_gensymmv", instance_pos=-1)]
{
public size_t size;
public EigenHermWorkspace herm_workspace_p;
-
+
[CCode (cname="gsl_eigen_genherm_alloc")]
public EigenGenhermWorkspace (size_t n);
[CCode (cname="gsl_eigen_genherm", instance_pos=-1)]
{
public size_t size;
public EigenHermvWorkspace hermv_workspace_p;
-
+
[CCode (cname="gsl_eigen_genhermv_alloc")]
public EigenGenhermvWorkspace (size_t n);
[CCode (cname="gsl_eigen_genhermv", instance_pos=-1)]
public int compute_t;
public Matrix Q;
public Matrix Z;
-
+
[CCode (cname="gsl_eigen_gen_alloc")]
public EigenGenWorkspace (size_t n);
[CCode (cname="gsl_eigen_gen_params", instance_pos=-1)]
public Matrix Q;
public Matrix Z;
public EigenGenWorkspace gen_workspace_p;
-
+
[CCode (cname="gsl_eigen_genv_alloc")]
public EigenGenvWorkspace (size_t n);
[CCode (cname="gsl_eigen_genv", instance_pos=-1)]
[CCode (cname="gsl_eigen_genv_QZ", instance_pos=-1)]
public int init_QZ (Matrix A, Matrix B, VectorComplex alpha, Vector beta, MatrixComplex evec, Matrix Q, Matrix Z);
}
-
+
[CCode (lower_case_cprefix="gsl_eigen_", cheader_filename="gsl/gsl_eigen.h")]
namespace EigenSort
{
public static int genhermv_sort (Vector eval, MatrixComplex evec, EigenSortType sort_type);
public static int genv_sort (VectorComplex alpha, Vector beta, MatrixComplex evec, EigenSortType sort_type);
}
-
-
+
+
/*
* Fast Fourier Transforms (FFTs)
*/
forward = -1,
backward = 1
}
-
+
[Compact]
[CCode (cname="gsl_fft_complex_wavetable", cheader_filename="gsl/gsl_fft_complex.h")]
public class FFTComplexWavetable
public size_t factor[64];
public Complex twiddle[64];
public Complex trig;
-
+
[CCode (cname="gsl_fft_complex_wavetable_alloc")]
public FFTComplexWavetable (size_t n);
public int memcpy (FFTComplexWavetable src);
}
-
+
[Compact]
[CCode (cname="gsl_fft_complex_workspace", cheader_filename="gsl/gsl_fft_complex.h")]
public class FFTComplexWorkspace
{
size_t n;
double *scratch;
-
+
[CCode (cname="gsl_fft_complex_workspace_alloc")]
public FFTComplexWorkspace (size_t n);
}
-
+
[Compact]
[CCode (lower_case_cprefix="gsl_fft_complex_", cheader_filename="gsl/gsl_fft_complex.h")]
namespace FFTComplex
public static int radix2_dif_transform ([CCode (array_length = false)] double[] data, size_t stride, size_t n, FFTDirection sign);
public static int radix2_dif_backward ([CCode (array_length = false)] double[] data, size_t stride, size_t n);
public static int radix2_dif_inverse ([CCode (array_length = false)] double[] data, size_t stride, size_t n);
-
+
public static int forward ([CCode (array_length = false)] double[] data, size_t stride, size_t n, FFTComplexWavetable wavetable, FFTComplexWorkspace work);
public static int transform ([CCode (array_length = false)] double[] data, size_t stride, size_t n, FFTComplexWavetable wavetable, FFTComplexWorkspace work, FFTDirection sign);
public static int backward ([CCode (array_length = false)] double[] data, size_t stride, size_t n, FFTComplexWavetable wavetable, FFTComplexWorkspace work);
public static int inverse ([CCode (array_length = false)] double[] data, size_t stride, size_t n, FFTComplexWavetable wavetable, FFTComplexWorkspace work);
}
-
+
[Compact]
[CCode (cname="gsl_fft_real_wavetable", cheader_filename="gsl/gsl_fft_real.h")]
public class FFTRealWavetable
public size_t factor[64];
public Complex twiddle[64];
public Complex trig;
-
+
[CCode (cname="gsl_fft_real_wavetable_alloc")]
public FFTRealWavetable (size_t n);
}
-
+
[Compact]
[CCode (cname="gsl_fft_real_workspace", cheader_filename="gsl/gsl_fft_real.h")]
public class FFTRealWorkspace
{
size_t n;
double *scratch;
-
+
[CCode (cname="gsl_fft_real_workspace_alloc")]
public FFTRealWorkspace (size_t n);
}
-
+
[Compact]
[CCode (lower_case_cprefix="gsl_fft_real_", cheader_filename="gsl/gsl_fft_real.h")]
namespace FFTReal
public static int transform ([CCode (array_length = false)] double[] data, size_t stride, size_t n, FFTRealWavetable wavetable, FFTRealWorkspace work);
public static int unpack ([CCode (array_length = false)] double[] real_coefficient, [CCode (array_length = false)] double[] complex_coeficient, size_t stride, size_t n);
}
-
+
[Compact]
[CCode (cname="gsl_fft_halfcomplex_wavetable", cheader_filename="gsl/gsl_fft_halfcomplex.h")]
public class FFTHalfcomplexWavetable
public size_t factor[64];
public Complex twiddle[64];
public Complex trig;
-
+
[CCode (cname="gsl_fft_halfcomplex_wavetable_alloc")]
public FFTHalfcomplexWavetable (size_t n);
}
-
+
[CCode (lower_case_cprefix="gsl_fft_halfcomplex_", cheader_filename="gsl/gsl_fft_halfcomplex.h")]
namespace FFTHalfcomplex
{
public static int unpack ([CCode (array_length = false)] double[] halfcomplex_coefficient, [CCode (array_length = false)] double[] complex_coefficient, size_t stride, size_t n);
public static int radix2_unpack ([CCode (array_length = false)] double[] halfcomplex_coefficient, [CCode (array_length = false)] double[] complex_coefficient, size_t stride, size_t n);
}
-
-
+
+
/*
* Numerical Integration
*/
COSINE,
SINE
}
-
+
[CCode (cprefix="GSL_INTEG_", cheader_filename="gsl/gsl_integration.h")]
public enum GaussRules
{
GAUSS51,
GAUSS61
}
-
+
[Compact]
[CCode (cname="gsl_integration_workspace", cheader_filename="gsl/gsl_integration.h")]
public class IntegrationWorkspace
public double* elist;
public size_t* order;
public size_t* level;
-
+
[CCode (cname="gsl_integration_workspace_alloc")]
public IntegrationWorkspace (size_t n);
}
-
+
[Compact]
[CCode (cname="gsl_integration_qaws_table", cheader_filaname="gsl/gsl_integration.h")]
public class IntegrationQAWSTable
public double rj[25];
public double rg[25];
public double rh[25];
-
+
[CCode (cname="gsl_integration_qaws_table_alloc")]
public IntegrationQAWSTable (double alpha, double beta, int mu, int nu);
public int @set (double alpha, double beta, int mu, int nu);
}
-
+
[Compact]
[CCode (cname="gsl_integration_qawo_table", unref="gsl_integration_qawo_table_free", cheader_filename="gsl/gsl_integration.h")]
public class IntegrationQAWOTable
public double par;
public QAWO sine;
public double* chebmo;
-
+
[CCode (cname="gsl_integration_qawo_table_alloc")]
public IntegrationQAWOTable (double omega, double L, QAWO sine, size_t n);
public int @set (double omega, double L, QAWO sine);
public int set_length (double L);
}
-
+
[CCode (cname="gsl_integration", cheader_filename="gsl/gsl_integration.h")]
namespace Integration
{
public static void qk51 (Function* f, double a, double b, out double result, out double abserr, out double resabs, out double resasc);
public static void qk61 (Function* f, double a, double b, out double result, out double abserr, out double resabs, out double resasc);
public static void qcheb (Function* f, double a, double b, out double cheb12, out double cheb24);
-
+
public static void qk (int n, [CCode (array_length = false)] double[] xgk, [CCode (array_length = false)] double[] wg, [CCode (array_length = false)] double[] wgk, [CCode (array_length = false)] double[] fv1, [CCode (array_length = false)] double[] fv2, Function* f, double a, double b, out double result, out double abserr, out double resabs, double resasc);
public static int qng (Function* f, double a, double b, double epsabs, double epsrel, out double result, out double abserr, out size_t neval);
public static int qag (Function* f, double a, double b, double epsabs, double epsrel, size_t limit, int key, IntegrationWorkspace workspace, out double result, out double abserr);
public static int qawo (Function* f, double a, double epsabs, double epsrel, size_t limit, IntegrationWorkspace workspace, IntegrationQAWOTable wf, out double result, out double abserr);
public static int qawf (Function* f, double a, double epsabs, size_t limit, IntegrationWorkspace workspace, IntegrationWorkspace cycle_workspace, IntegrationQAWOTable wf, out double result, out double abserr);
}
-
-
+
+
/*
* Random Number Generation
*/
public RNGGetState @get;
public RNGGetDouble get_double;
}
-
+
[CCode (lower_case_cprefix="gsl_rng_", cheader_filename="gsl/gsl_rng.h")]
namespace RNGTypes
{
{
public RNGType* type;
public void* state;
-
+
[CCode (cname="gsl_rng_alloc")]
public RNG (RNGType* T);
public void @set (ulong s);
public static RNGType* env_setup ();
public int memcpy (RNG src);
public RNG clone ();
-
+
[CCode (instance_pos=-1)]
public int fwrite (GLib.FileStream stream);
[CCode (instance_pos=-1)]
public int fread (GLib.FileStream stream);
-
+
public void print_state ();
}
-
+
[CCode (lower_case_cprefix="gsl_cdf_", cheader_filename="gsl/gsl_cdf.h")]
namespace CDF
{
public static double ugaussian_P (double x);
public static double ugaussian_Q (double x);
-
+
public static double ugaussian_Pinv (double P);
public static double ugaussian_Qinv (double Q);
-
+
public static double gaussian_P (double x, double sigma);
public static double gaussian_Q (double x, double sigma);
-
+
public static double gaussian_Pinv (double P, double sigma);
public static double gaussian_Qinv (double Q, double sigma);
-
+
public static double gamma_P (double x, double a, double b);
public static double gamma_Q (double x, double a, double b);
-
+
public static double gamma_Pinv (double P, double a, double b);
public static double gamma_Qinv (double Q, double a, double b);
-
+
public static double cauchy_P (double x, double a);
public static double cauchy_Q (double x, double a);
-
+
public static double cauchy_Pinv (double P, double a);
public static double cauchy_Qinv (double Q, double a);
public static double laplace_P (double x, double a);
public static double laplace_Q (double x, double a);
-
+
public static double laplace_Pinv (double P, double a);
public static double laplace_Qinv (double Q, double a);
-
+
public static double rayleigh_P (double x, double sigma);
public static double rayleigh_Q (double x, double sigma);
-
+
public static double rayleigh_Pinv (double P, double sigma);
public static double rayleigh_Qinv (double Q, double sigma);
-
+
public static double chisq_P (double x, double nu);
public static double chisq_Q (double x, double nu);
-
+
public static double chisq_Pinv (double P, double nu);
public static double chisq_Qinv (double Q, double nu);
-
+
public static double exponential_P (double x, double mu);
public static double exponential_Q (double x, double mu);
-
+
public static double exponential_Pinv (double P, double mu);
public static double exponential_Qinv (double Q, double mu);
-
+
public static double exppow_P (double x, double a, double b);
public static double exppow_Q (double x, double a, double b);
-
+
public static double tdist_P (double x, double nu);
public static double tdist_Q (double x, double nu);
-
+
public static double tdist_Pinv (double P, double nu);
public static double tdist_Qinv (double Q, double nu);
-
+
public static double fdist_P (double x, double nu1, double nu2);
public static double fdist_Q (double x, double nu1, double nu2);
-
+
public static double fdist_Pinv (double P, double nu1, double nu2);
public static double fdist_Qinv (double Q, double nu1, double nu2);
-
+
public static double beta_P (double x, double a, double b);
public static double beta_Q (double x, double a, double b);
-
+
public static double beta_Pinv (double P, double a, double b);
public static double beta_Qinv (double Q, double a, double b);
-
+
public static double flat_P (double x, double a, double b);
public static double flat_Q (double x, double a, double b);
-
+
public static double flat_Pinv (double P, double a, double b);
public static double flat_Qinv (double Q, double a, double b);
-
+
public static double lognormal_P (double x, double zeta, double sigma);
public static double lognormal_Q (double x, double zeta, double sigma);
public static double geometric_P (uint k, double p);
public static double geometric_Q (uint k, double p);
-
+
public static double negative_binomial_P (uint k, double p, double n);
public static double negative_binomial_Q (uint k, double p, double n);
public static double hypergeometric_P (uint k, uint n1, uint n2, uint t);
public static double hypergeometric_Q (uint k, uint n1, uint n2, uint t);
}
-
-
+
+
/*
* Quasi-Random Sequences
*/
public delegate int QRNGInitState (void* state, uint dimension);
[CCode (has_target = false)]
public delegate int QRNGGetState2 (void* state, uint dimension, out double x);
-
+
[SimpleType]
[CCode (cname="gsl_qrng_type", cheader_filename="gsl/gsl_qrng.h")]
public struct QRNGType
public static QRNGType* halton;
public static QRNGType* reversehalton;
}
-
+
[Compact]
[CCode (cname="gsl_qrng", cheader_filename="gsl/gsl_qrng.h")]
public class QRNG
public uint dimension;
size_t state_size;
void* state;
-
+
[CCode (cname="gsl_qrng_alloc")]
public QRNG (QRNGType* T, uint d);
public void init ();
public size_t size ();
public int @get ([CCode (array_length = false)] double[] x);
}
-
-
+
+
/*
* Random Number Distributions
*/
{
public static uint bernoulli (RNG r, double p);
public static double bernoulli_pdf (uint k, double p);
-
+
public static double beta (RNG r, double a, double b);
public static double beta_pdf (double x, double a, double b);
-
+
public static uint binomial (RNG r, double p, uint n);
public static uint binomial_knuth (RNG r, double p, uint n);
public static uint binomial_tpe (RNG r, double p, uint n);
public static double exppow (RNG r, double a, double b);
public static double exppow_pdf (double x, double a, double b);
-
+
public static double cauchy (RNG r, double a);
public static double cauchy_pdf (double x, double a);
-
+
public static double chisq (RNG r, double nu);
public static double chisq_pdf (double x, double nu);
-
+
public static void dirichlet (RNG r, size_t K, out double alpha, out double theta);
public static double dirichlet_pdf (size_t K, out double alpha, out double theta);
public static double dirichlet_lnpdf (size_t K, out double alpha, out double theta);
-
+
public static double erlang (RNG r, double a, double n);
public static double erlang_pdf (double x, double a, double n);
-
+
public static double fdist (RNG r, double nu1, double nu2);
public static double fdist_pdf (double x, double nu1, double nu2);
-
+
public static double flat (RNG r, double a, double b);
public static double flat_pdf (double x, double a, double b);
-
+
public static double gamma (RNG r, double a, double b);
public static double gamma_int (RNG r, uint a);
public static double gamma_pdf (double x, double a, double b);
public static double gamma_mt (RNG r, double a, double b);
public static double gamma_knuth (RNG r, double a, double b);
-
+
public static double gaussian (RNG r, double sigma);
public static double gaussian_ratio_method (RNG r, double sigma);
public static double gaussian_ziggurat (RNG r, double sigma);
public static double gaussian_pdf (double x, double sigma);
-
+
public static double ugaussian (RNG r);
public static double ugaussian_ratio_method (RNG r);
public static double ugaussian_pdf (double x);
-
+
public static double gaussian_tail (RNG r, double a, double sigma);
public static double gaussian_tail_pdf (double x, double a, double sigma);
-
+
public static double ugaussian_tail (RNG r, double a);
public static double ugaussian_tail_pdf (double x, double a);
-
+
public static void bivariate_gaussian (RNG r, double sigma_x, double sigma_y, double rho, out double x, out double y);
public static double bivariate_gaussian_pdf (double x, double y, double sigma_x, double sigma_y, double rho);
-
+
public static double landau (RNG r);
public static double landau_pdf (double x);
-
+
public static uint geometric (RNG r, double p);
public static double geometric_pdf (uint k, double p);
-
+
public static uint hypergeometric (RNG r, uint n1, uint n2, uint t);
public static double hypergeometric_pdf (uint k, uint n1, uint n2, uint t);
-
+
public static double gumbel1 (RNG r, double a, double b);
public static double gumbel1_pdf (double x, double a, double b);
-
+
public static double gumbel2 (RNG r, double a, double b);
public static double gumbel2_pdf (double x, double a, double b);
-
+
public static double logistic (RNG r, double a);
public static double logistic_pdf (double x, double a);
-
+
public static double lognormal (RNG r, double zeta, double sigma);
public static double lognormal_pdf (double x, double zeta, double sigma);
-
+
public static uint logarithmic (RNG r, double p);
public static double logarithmic_pdf (uint k, double p);
-
+
public static void multinomial (RNG r, size_t K, uint N, [CCode (array_length = false)] double[] p, [CCode (array_length = false)] uint[] n);
public static double multinomial_pdf (size_t K, [CCode (array_length = false)] double[] p, [CCode (array_length = false)] uint[] n);
public static double multinomial_lnpdf (size_t K, [CCode (array_length = false)] double[] p, [CCode (array_length = false)] uint[] n);
-
+
public static uint negative_binomial (RNG r, double p, double n);
public static double negative_binomial_pdf (uint k, double p, double n);
-
+
public static uint pascal (RNG r, double p, uint n);
public static double pascal_pdf (uint k, double p, uint n);
-
+
public static double pareto (RNG r, double a, double b);
public static double pareto_pdf (double x, double a, double b);
-
+
public static uint poisson (RNG r, double mu);
public static void poisson_array (RNG r, size_t n, [CCode (array_length = false)] uint[] array, double mu);
public static double poisson_pdf (uint k, double mu);
-
+
public static double rayleigh (RNG r, double sigma);
public static double rayleigh_pdf (double x, double sigma);
-
+
public static double rayleigh_tail (RNG r, double a, double sigma);
public static double rayleigh_tail_pdf (double x, double a, double sigma);
-
+
public static double tdist (RNG r, double nu);
public static double tdist_pdf (double x, double nu);
-
+
public static double laplace (RNG r, double a);
public static double laplace_pdf (double x, double a);
-
+
public static double levy (RNG r, double c, double alpha);
public static double levy_skew (RNG r, double c, double alpha, double beta);
-
+
public static double weibull (RNG r, double a, double b);
public static double weibull_pdf (double x, double a, double b);
-
+
public static void dir_2d (RNG r, out double x, out double y);
public static void dir_2d_trig_method (RNG r, out double x, out double y);
public static void dir_3d (RNG r, out double x, out double y, out double z);
public static void dir_nd (RNG r, size_t n, out double x);
-
+
public static void shuffle (RNG r, void* b, size_t nmembm, size_t size);
public static int choose (RNG r, void* dest, size_t k, void* src, size_t n, size_t size);
public static void sample (RNG r, void* dest, size_t k, void* src, size_t n, size_t size);
public size_t K;
public size_t* A;
public double* F;
-
+
[CCode (cname="gsl_ran_discrete_preproc")]
public RanDiscrete (size_t K, double* P);
[CCode (cname="gsl_ran_discrete")]
public size_t discrete (RNG g);
[CCode (instance_pos=-1)]
- public double pdf (size_t k);
+ public double pdf (size_t k);
}
-
-
+
+
/*
* Statistics
*/
public static double covariance ([CCode (array_length = false)] double[] data1, size_t stride1, [CCode (array_length = false)] double[] data2, size_t stride2, size_t n);
public static double covariance_m ([CCode (array_length = false)] double[] data1, size_t stride1, [CCode (array_length = false)] double[] data2, size_t stride2, size_t n, double mean1, double mean2);
public static double correlation ([CCode (array_length = false)] double[] data1, size_t stride1, [CCode (array_length = false)] double[] data2, size_t stride2, size_t n);
-
+
public static double wmean ([CCode (array_length = false)] double[] w, size_t wstride, [CCode (array_length = false)] double[] data, size_t stride, size_t n);
public static double wvariance ([CCode (array_length = false)] double[] w, size_t wstride, [CCode (array_length = false)] double[] data, size_t stride, size_t n);
public static double wvariance_m ([CCode (array_length = false)] double[] w, size_t wstride, [CCode (array_length = false)] double[] data, size_t stride, size_t n, double wmean);
public static double wskew_m_sd ([CCode (array_length = false)] double[] w, size_t wstride, [CCode (array_length = false)] double[] data, size_t stride, size_t n, double wmean, double wsd);
public static double wkurtosis ([CCode (array_length = false)] double[] w, size_t wstride, [CCode (array_length = false)] double[] data, size_t stride, size_t n);
public static double wkurtosis_m_sd ([CCode (array_length = false)] double[] w, size_t wstride, [CCode (array_length = false)] double[] data, size_t stride, size_t n, double wmean, double wsd);
-
+
public static double max ([CCode (array_length = false)] double[] data, size_t stride, size_t n);
public static double min ([CCode (array_length = false)] double[] data, size_t stride, size_t n);
public static void minmax (out double min, out double max, [CCode (array_length = false)] double[] data, size_t stride, size_t n);
public static size_t max_index ([CCode (array_length = false)] double[] data, size_t stride, size_t n);
public static size_t min_index ([CCode (array_length = false)] double[] data, size_t stride, size_t n);
public static void minmax_index (out size_t min, out size_t max, [CCode (array_length = false)] double[] data, size_t stride, size_t n);
-
+
public static double median_from_sorted_data ([CCode (array_length = false)] double[] sorted_data, size_t stride, size_t n);
public static double quantile_from_sorted_data ([CCode (array_length = false)] double[] sorted_data, size_t stride, size_t n, double f);
}
-
-
+
+
/*
* Histograms
*/
public size_t n;
public double* range;
public double* bin;
-
+
[CCode (cname="gsl_histogram_alloc")]
public Histogram (size_t n);
[CCode (cname="gsl_histogram_calloc")]
public Histogram.uniform (size_t n, double xmin, double xmax);
[CCode (cname="gsl_histogram_calloc_range")]
public Histogram.with_range (size_t n, [CCode (array_length = false)] double[] range);
-
+
public int increment (double x);
public int accumulate (double x, double weight);
public int find (double x, out size_t i);
public int memcpy (Histogram source);
public Histogram clone();
-
+
public double max_val ();
public size_t max_bin ();
public double min_val ();
public size_t min_bin ();
-
+
public int equal_bins_p (Histogram h2);
public int add (Histogram h2);
public int sub (Histogram h2);
[CCode (instance_pos=-1)]
public int fscanf (GLib.FileStream stream);
}
-
+
[Compact]
[CCode (cname="gsl_histogram_pdf", cheader_filename="gsl/gsl_histogram.h")]
public class HistogramPDF
public size_t n;
public double* range;
public double* sum ;
-
+
[CCode (cname="gsl_histogram_pdf_alloc")]
public HistogramPDF (size_t n);
public int init (Histogram h);
public double sample (double r);
}
-
+
[Compact]
[CCode (cname="gsl_histogram2d", cheader_filename="gsl/gsl_histogram2d.h")]
public class Histogram2d
public double* xrange;
public double* yrange;
public double* bin;
-
+
[CCode (cname="gsl_histogram2d_alloc")]
public Histogram2d (size_t nx, size_t ny);
[CCode (cname="gsl_histogram2d_calloc")]
public Histogram2d.uniform (size_t nx, size_t ny, double xmin, double xmax, double ymin, double ymax);
[CCode (cname="gsl_histogram2d_calloc_range")]
public Histogram2d.range (size_t nx, size_t ny, out double xrange, out double yrange);
-
+
public int increment (double x, double y);
public int accumulate (double x, double y, double weight);
public int find (double x, double y, out size_t i, out size_t j);
public double @get (size_t i, size_t j);
public int get_xrange (size_t i, out double xlower, out double xupper);
public int get_yrange (size_t j, out double ylower, out double yupper);
-
+
public double xmax ();
public double xmin ();
public double ymax ();
public double ymin ();
-
+
public void reset ();
-
+
public int set_ranges_uniform (double xmin, double xmax, double ymin, double ymax);
public int set_ranges (double[] xrange, double[] yrange);
-
+
public int memcpy (Histogram2d source);
public Histogram2d clone ();
-
+
public double max_val();
public void max_bin (out size_t i, out size_t j);
public double min_val();
public void min_bin (out size_t i, out size_t j);
-
+
public double xmean ();
public double ymean ();
public double xsigma ();
public double ysigma ();
public double cov ();
-
+
public double sum ();
public int equal_bins_p (Histogram h2) ;
public int add (Histogram h2);
public int div (Histogram2d h2);
public int scale (double scale);
public int shift (double shift);
-
+
[CCode (instance_pos=-1)]
public int fwrite (GLib.FileStream stream);
[CCode (instance_pos=-1)]
[CCode (instance_pos=-1)]
public int fscanf (GLib.FileStream stream);
}
-
+
[Compact]
[CCode (cname="gsl_histogram2d_pdf", cheader_filename="gsl/gsl_histogram2d.h")]
public class Histogram2dPDF
public double* xrange;
public double* yrange;
public double* sum;
-
+
[CCode (cname="gsl_histogram2d_pdf_alloc")]
public Histogram2dPDF (size_t nx, size_t ny);
public int init (Histogram2d h);
public int sample (double r1, double r2, out double x, out double y);
}
-
-
+
+
/*
* N-Tuples
*/
[CCode (has_target = false)]
public delegate int NTupleFunc (void* ntuple_data, void* params);
-
+
[SimpleType]
[CCode (cname="gsl_ntuple_select_fn", cheader_filename="gsl/gsl_ntuple.h")]
public struct NTupleSelectFn
public NTupleFunc function;
public void* params;
}
-
+
[SimpleType]
[CCode (cname="gsl_ntuple_value_fn", cheader_filename="gsl/gsl_ntuple.h")]
public struct NTupleValueFn
public GLib.FileStream file;
public void* ntrupel_data;
public size_t size;
-
+
public static NTuple open (string filename, void* ntuple_data, size_t size);
public static NTuple create (string filename, void* ntuple_data, size_t size);
public int write ();
public int read ();
public int bookdata ();
-
+
public static int project (Histogram h, NTuple ntuple, NTupleValueFn* value_func, NTupleSelectFn* select_func);
}
-
-
+
+
/*
* Monte Carlo Integration
*/
[CCode (cprefix="GSL_VEGAS_MODE_", cheader_filename="gsl/gsl_monte_vegas.h")]
public enum MonteVegasMode
{
- IMPORTANCE,
+ IMPORTANCE,
IMPORTANCE_ONLY,
STRATIFIED
}
-
+
[CCode (has_target = false)]
public delegate double MonteFunc ([CCode (array_length = false)] double[] x_array, size_t dim, void* params);
-
+
[SimpleType]
[CCode (cname="gsl_monte_function", cheader_filanema="gsl/gsl_monte.h")]
public struct MonteFunction
{
public size_t dim;
public double* x;
-
+
[CCode (cname="gsl_monte_plain_alloc")]
public MontePlainState (size_t dim);
public int init ();
public static int integrate (MonteFunction* f, [CCode (array_length = false)] double[] xl, [CCode (array_length = false)] double[] xu, size_t dim, size_t calls, RNG r, MontePlainState state, out double result, out double abserr);
}
-
+
[Compact]
[CCode (cname="gsl_monte_miser_state", cprefix="gsl_monte_miser_", cheader_filename="gsl/gsl_monte_miser.h")]
public class MonteMiserState
public double* fsum2_r;
public size_t* hits_l;
public size_t* hits_r;
-
+
[CCode (cname="gsl_monte_miser_alloc")]
public MonteMiserState (size_t dim);
public int init ();
public static int integrate (MonteFunction* f, [CCode (array_length = false)] double[] xl, [CCode (array_length = false)] double[] xh, size_t dim, size_t calls, RNG r, MonteMiserState state, out double result, out double abserr);
}
-
+
[Compact]
[CCode (cname="gsl_monte_vegas_state", cprefix="gsl_monte_vegas_", cheader_filename="gsl/gsl_monte_vegas.h")]
public class MonteVegasState
public int init ();
public static int integrate (MonteFunction* f, [CCode (array_length = false)] double[] xl, [CCode (array_length = false)] double[] xu, size_t dim, size_t calls, RNG r, MonteVegasState state, out double result, out double abserr);
}
-
-
+
+
/*
* Simulated Annealing
*/
public double mu_t;
public double t_min;
}
-
+
[CCode (lower_case_cprefix="gsl_siman_", cheader_filename="gsl/gsl_siman.h")]
namespace Siman
{
public delegate void copy_construct_t (void* xp);
[CCode (has_target = false)]
public delegate void destroy_t (void* xp);
-
+
public static void solve(RNG r, void *x0_p, Efunc_t Ef, step_t take_step, metric_t distance, print_t print_position, copy_t copyfunc, copy_construct_t copy_constructor, destroy_t destructor, size_t element_size, SimanParams params);
public static void solve_many (RNG r, void *x0_p, Efunc_t Ef, step_t take_step, metric_t distance, print_t print_position, size_t element_size, SimanParams params);
}
-
-
+
+
/*
* Ordinary Differential Equations
*/
NIL,
DEC
}
-
+
[CCode (has_target = false)]
public delegate int OdeivFunction (double t, [CCode (array_length = false)] double[] y, [CCode (array_length = false)] double[] dydt, void* params);
[CCode (has_target = false)]
public delegate int OdeivControlHadjust (void* state, size_t dim, uint ord, [CCode (array_length = false)] double[] y, [CCode (array_length = false)] double[] yerr, [CCode (array_length = false)] double[] yp, [CCode (array_length = false)] double[] h);
[CCode (has_target = false)]
public delegate void OdeivControlFree (void* state);
-
+
[SimpleType]
[CCode (cname="gsl_odeiv_system", cheader_filename="gsl/gsl_odeiv.h")]
public struct OdeivSystem
public size_t dimension;
public void* params;
}
-
+
[SimpleType]
[CCode (cname="gsl_odeiv_step_type", cheader_filename="gsl/gsl_odeiv.h")]
public struct OdeivStepType
public OdeivStepOrder order;
public OdeivStepFree free;
}
-
+
[CCode (lower_case_cprefix="gsl_odeiv_step_", cheader_filename="gsl/gsl_odeiv.h")]
namespace OdeivStepTypes
{
public OdeivStepType* type;
public size_t dimension;
public void* state;
-
+
[CCode (cname="gsl_odeiv_step_alloc")]
public OdeivStep (OdeivStepType* T, size_t dim);
public int reset ();
public string name ();
public uint order ();
-
+
public int apply (double t, double h, [CCode (array_length = false)] double[] y, [CCode (array_length = false)] double[] yerr, [CCode (array_length = false)] double[] dydt_in, [CCode (array_length = false)] double[] dydt_out, OdeivSystem* dydt);
}
-
+
[SimpleType]
[CCode (cname="gsl_odeiv_control_type", cheader_filename="gsl/gsl_odeiv.h")]
public struct OdeivControlType
public OdeivControlHadjust hadjust;
public OdeivControlFree free;
}
-
+
[Compact]
[CCode (cname="gsl_odeiv_control", cheader_filename="gsl/gsl_odeiv.h")]
public class OdeivControl
{
public OdeivControlType* type;
public void* state;
-
+
[CCode (cname="gsl_odeiv_control_alloc")]
public OdeivControl (OdeivControlType* T);
[CCode (cname="gsl_odeiv_control_standard_new")]
public OdeivControl.yp (double eps_abs, double eps_rel);
[CCode (cname="gsl_odeiv_control_scaled_new")]
public OdeivControl.scaled (double eps_abs, double eps_rel, double a_y, double a_dydt, double[] scale_abs);
-
+
public int init (double eps_abs, double eps_rel, double a_y, double a_dydt);
public int hadjust (OdeivStep s, out double y, out double yerr, out double dydt, out double h);
public string name ();
}
-
+
[Compact]
[CCode (cname="gsl_odeiv_evolve", cheader_filename="gsl/gsl_odeiv.h")]
public class OdeivEvolve
public double last_step;
public ulong count;
public ulong failed_steps;
-
+
[CCode (cname="gsl_odeiv_evolve_alloc")]
public OdeivEvolve (size_t dim);
public int apply (OdeivControl con, OdeivStep step, OdeivSystem* dydt, [CCode (array_length = false)] double[] t, double t1, [CCode (array_length = false)] double[] h, [CCode (array_length = false)] double[] y);
public int reset ();
}
-
-
+
+
/*
* Interpolation
*/
public delegate int InterpEvalInteg (void* t, [CCode (array_length = false)] double[] xa, [CCode (array_length = false)] double[] ya, size_t size, InterpAccel* i, double a, double b, out double result);
[CCode (has_target = false)]
public delegate void InterpFree (void* t);
-
+
[Compact]
[CCode (cname="gsl_interp_accel", cheader_filname="gsl/gsl_interp.h")]
public class InterpAccel
public size_t cache;
public size_t miss_count;
public size_t hit_count;
-
+
[CCode (cname="gsl_interp_accel_alloc")]
public InterpAccel ();
public size_t find (double[] x_array, double x);
public int reset ();
}
-
+
[SimpleType]
[CCode (cname="gsl_interp_type", cheader_filename="gsl/gsl_interp.h")]
public struct InterpType
public static InterpType* akima;
public static InterpType* akima_periodic;
}
-
+
[Compact]
[CCode (cname="gsl_interp", cheader_filename="gsl/gsl_interp.h")]
public class Interp
public double xmax;
public size_t size;
public void* state;
-
+
[CCode (cname="gsl_interp_alloc")]
public Interp (InterpType T, size_t n);
public int init ([CCode (array_length = false)] double[] xa, [CCode (array_length = false)] double[] ya, size_t size);
public double eval_integ ([CCode (array_length = false)] double[] xa, [CCode (array_length = false)] double[] ya, double a, double b, InterpAccel acc);
public static size_t bsearch([CCode (array_length = false)] double[] x_array, double x, size_t index_lo, size_t index_hi);
}
-
+
[Compact]
[CCode (cname="gsl_spline", cheader_filename="gsl/gsl_spline.h")]
public class Spline
public double* x;
public double* y;
public size_t size;
-
+
[CCode (cname="gsl_spline_alloc")]
public Spline (InterpType* T, size_t size);
public int init ([CCode (array_length = false)] double[] xa, [CCode (array_length = false)] double[] ya, size_t size);
public int eval_integ_e (double a, double b, InterpAccel acc, out double y);
public double eval_integ (double a, double b, InterpAccel acc);
}
-
+
/*
* Numerical Differentiation
*/
public static int backward (Function* f, double x, double h, out double result, out double abserr);
public static int forward (Function* f, double x, double h, out double result, out double abserr);
}
-
-
+
+
/*
* Chebyshev Approximations
*/
public double b;
public size_t order_sp;
public double *f;
-
+
[CCode (cname="gsl_cheb_alloc")]
public ChebSeries (size_t order);
public int init (Function* func, double a, double b);
public int calc_deriv (ChebSeries cs);
public int calc_integ (ChebSeries cs);
}
-
-
+
+
/*
* Series Acceleration
*/
public double* dq_num;
public double* dq_den;
public double* dsum;
-
+
[CCode (cname="gsl_sum_levin_u_alloc")]
public SumLevinUWorkspace (size_t n);
}
-
+
[CCode (lower_case_cprefix="gsl_sum_levin_u_", cheader_filename="gsl/gsl_sum.h")]
namespace SumLevinU
{
public static int minmax (double[] array, size_t min_terms, size_t max_terms, SumLevinUWorkspace w, out double sum_accel, out double abserr);
public static int step (double term, size_t n, size_t nmax, SumLevinUWorkspace w, out double sum_accel);
}
-
+
[Compact]
[CCode (cname="gsl_sum_levin_utrunc_workspace", free_function="gsl_sum_levin_utrunc_free", cheader_filename="gsl/gsl_sum.h")]
public class SumLevinUtruncWorkspace
public double* q_num;
public double* q_den;
public double* dsum;
-
+
[CCode (cname="gsl_sum_levin_utrunc_alloc")]
public SumLevinUtruncWorkspace (size_t n);
}
-
+
[CCode (lower_case_cprefix="gsl_sum_levin_utrunc_", cheader_filename="gsl/gsl_sum.h")]
namespace SumLevinUtrunc
{
public static int minmax (double[] array, size_t min_terms, size_t max_terms, SumLevinUtruncWorkspace w, out double sum_accel, out double abserr_trunc);
public static int step (double term, size_t n, SumLevinUtruncWorkspace w, out double sum_accel);
}
-
-
+
+
/*
* Wavelet Transforms
*/
forward = 1,
backward = -1
}
-
+
[CCode (has_target = false)]
public delegate int WaveletInit (double** h1, double** g1, double** h2, double** g2, size_t* nc, size_t* offset, size_t member);
-
+
[SimpleType]
[CCode (cname="gsl_wavelet_type", cheader_filename="gsl/gsl_wavelet.h")]
public struct WaveletType
public static WaveletType* bspline;
public static WaveletType* bspline_centered;
}
-
+
[Compact]
[CCode (cname="gsl_wavelet_workspace", cheader_filename="gsl/gsl_wavelet.h")]
public class WaveletWorkspace
{
public double* scratch;
public size_t n;
-
+
[CCode (cname="gsl_wavelet_workspace_alloc")]
public WaveletWorkspace (size_t n);
}
-
+
[Compact]
[CCode (cname="gsl_wavelet", cheader_filename="gsl/gsl_wavelet.h,gsl/gsl_wavelet2d.h")]
public class Wavelet
public int transform ([CCode (array_length = false)] double[] data, size_t stride, size_t n, WaveletDirection dir, WaveletWorkspace work);
public int transform_forward ([CCode (array_length = false)] double[] data, size_t stride, size_t n, WaveletWorkspace work);
public int transform_inverse ([CCode (array_length = false)] double[] data, size_t stride, size_t n, WaveletWorkspace work);
-
+
[CCode (cname="gsl_wavelet2d_transform")]
public int transform_2d ([CCode (array_length = false)] double[] data, size_t tda, size_t size1, size_t size2, WaveletDirection dir, WaveletWorkspace work);
[CCode (cname="gsl_wavelet2d_transform_forward")]
[CCode (cprefix="gsl_wavelet2d_")]
public int nstransform_matrix_inverse (Matrix a, WaveletWorkspace work);
}
-
-
+
+
/*
* Discrete Hankel Transforms
*/
public double* j;
public double* Jjj;
public double* J2;
-
+
[CCode (cname="gsl_dht_alloc")]
public DHT (size_t size);
[CCode (cname="gsl_dht_new")]
public double k_sample (int n);
public int apply ([CCode (array_length = false)] double[] f_in, [CCode (array_length = false)] double[] f_out);
}
-
-
+
+
/*
* One dimensional Root-Finding
*/
public delegate int RootFdfsolverSet (void* state, FunctionFdf* f, double* root);
[CCode (has_target = false)]
public delegate int RootFdfsolverIterate (void* state, FunctionFdf* d, double* root);
-
+
[SimpleType]
[CCode (cname="gsl_root_fsolver_type", cheader_filename="gsl/gsl_roots.h")]
public struct RootFsolverType
public RootFsolverSet @set;
public RootFsolverIterate iterate;
}
-
+
[Compact]
[CCode (cname="gsl_root_fsolver", cheader_filename="gsl/gsl_roots.h")]
public class RootFsolver
public double x_lower;
public double x_upper;
public void* state;
-
+
[CCode (cname="gsl_root_fsolver_alloc")]
public RootFsolver (RootFsolverType* T);
public int @set (Function* f, double x_lower, double x_upper);
public int iterate ();
public unowned string name ();
}
-
+
[SimpleType]
[CCode (cname="gsl_root_fdfsolver_type", cheader_filename="gsl/gsl_roots.h")]
public struct RootFdfsolverType
public RootFdfsolverSet @set;
public RootFdfsolverIterate iterate;
}
-
+
[Compact]
[CCode (cname="gsl_root_fdfsolver", cheader_filename="gsl/gsl_roots.h")]
public class RootFdfsolver
public FunctionFdf* fdf;
public double root;
public void* state;
-
+
[CCode (cname="gsl_root_fdfsolver_alloc")]
public RootFdfsolver (RootFdfsolverType* T);
public int @set (FunctionFdf* fdf, double root);
public int iterate ();
public unowned string name ();
}
-
+
[CCode (lower_case_cprefix="gsl_root_test_", cheader_filename="gsl/gsl_roots.h")]
namespace RootTest
{
public static int residual (double f, double epsabs);
public static int delta (double x1, double x0, double epsabs, double epsrel);
}
-
+
[CCode (lower_case_cprefix="gsl_root_fsolver_", cheader_filename="gsl/gsl_roots.h")]
namespace RootFsolverTypes
{
public static RootFsolverType* brent;
public static RootFsolverType* falsepos;
}
-
+
[CCode (lower_case_cprefix="gsl_root_fdfsolver_", cheader_filename="gsl/gsl_roots.h")]
namespace RootFdfsolverTypes
{
public static RootFdfsolverType* secant;
public static RootFdfsolverType* steffenson;
}
-
-
+
+
/*
* One dimensional Minimization
*/
public delegate int MinIterate (void *state, Function* f, double* x_minimum, double* f_minimum, double* x_lower, double* f_lower, double* x_upper, double* f_upper);
[CCode (has_target = false)]
public delegate int MinBracketingFunction (Function* f, double* x_minimum, double* f_minimum, double* x_lower, double* f_lower, double* x_upper, double* f_upper, size_t eval_max);
-
+
[SimpleType]
[CCode (cname="gsl_min_fminimizer_type", cheader_filename="gsl/gsl_min.h")]
public struct MinFminimizerType
public MinSet @set;
public MinIterate iterate;
}
-
+
[Compact]
[CCode (cname="gsl_min_fminimizer", cheader_filename="gsl/gsl_min.h")]
public class MinFminimizer
public double f_lower;
public double f_upper;
public void* state;
-
+
[CCode (cname="gsl_min_fminimizer_alloc")]
public MinFminimizer (MinFminimizerType* T) ;
public int @set (Function* f, double x_minimum, double x_lower, double x_upper);
public int iterate ();
public unowned string name ();
}
-
+
[CCode (lower_case_cprefix="gsl_min_test_", cheader_filename="gsl/gsl_min.h")]
namespace MinTest
{
public static int interval (double x_lower, double x_upper, double epsabs, double epsrel);
}
-
+
[CCode (lower_case_cprefix="gsl_min_fminimizer_", cheader_filename="gsl/gsl_min.h")]
namespace MinFminimizerTypes
{
public static MinFminimizerType* goldensection;
public static MinFminimizerType* brent;
}
-
+
[CCode (cname="gsl_min_find_bracket", cheader_filename="gsl/gsl_min.h")]
public static int find_bracket (Function* f, double* x_minimum, double* f_minimum, double* x_lower, double* f_lower, double* x_upper, double* f_upper, size_t eval_max);
-
-
+
+
/*
* Multidimensional Root-Finding
*/
public delegate int MultirootFdfIterate (void* state, MultirootFunctionFdf* fdf, Vector x, Vector f, Matrix J, Vector dx);
[CCode (has_target = false)]
public delegate int MultirootFdfFree (void* state);
-
+
[SimpleType]
[CCode (cname="gsl_multiroot_function", cheader_filename="gsl/gsl_multiroots.h")]
public struct MultirootFunction
[CCode (cname="gsl_multiroot_fdjacobian", cheader_filename="gsl/gsl_multiroots.h")]
public static int multiroot_fdjacobian (MultirootFunction* F, Vector x, Vector f, double epsrel, Matrix jacobian);
-
+
[SimpleType]
[CCode (cname="gsl_multiroot_fsolver_type", cheader_filename="gsl/gsl_multiroots.h")]
public struct MultirootFsolverType
public MultirootFIterate iterate;
public MultirootFFree free;
}
-
+
[Compact]
[CCode (cname="gsl_multiroot_fsolver", cheader_filename="gsl/gsl_multiroots.h")]
public class MultirootFsolver
public Vector f;
public Vector dx;
public void* state;
-
+
[CCode (cname="gsl_multiroot_fsolver_alloc")]
- public MultirootFsolver (MultirootFsolverType* T, size_t n);
+ public MultirootFsolver (MultirootFsolverType* T, size_t n);
public int @set (MultirootFunction* f, Vector x);
public int iterate ();
public unowned string name ();
public Vector root ();
}
-
+
[SimpleType]
[CCode (cname="gsl_multiroot_function_fdf", cheader_filename="gsl/gsl_multiroots.h")]
public struct MultirootFunctionFdf
public size_t n;
public void* params;
}
-
+
[SimpleType]
[CCode (cname="gsl_multiroot_fdfsolver_type", cheader_filename="gsl/gsl_multiroots.h")]
public struct MultirootFdfsolverType
public MultirootFdfIterate iterate;
public MultirootFdfFree free;
}
-
+
[Compact]
[CCode (cname="gsl_multiroot_fdfsolver", cheader_filename="gsl/gsl_multiroots.h")]
public class MultirootFdfsolver
public Matrix J;
public Vector dx;
public void* state;
-
+
[CCode (cname="gsl_multiroot_fdfsolver_alloc")]
public MultirootFdfsolver (MultirootFdfsolverType* T, size_t n);
public int @set (MultirootFunctionFdf* fdf, Vector x);
public unowned string name ();
public Vector root ();
}
-
+
[CCode (lower_case_cprefix="gsl_multiroot_test_", cheader_filename="gsl/gsl_multiroots.h")]
namespace MultirootTest
{
public static int delta (Vector dx, Vector x, double epsabs, double epsrel);
public static int residual (Vector f, double epsabs);
}
-
+
[CCode (lower_case_cprefix="gsl_multiroot_fsolver_", cheader_filename="gsl/gsl_multiroots.h")]
namespace MultirootFsolverTypes
{
public static MultirootFsolverType* hybrid;
public static MultirootFsolverType* hybrids;
}
-
+
[CCode (lower_case_cprefix="gsl_multiroot_fdfsolver_", cheader_filename="gsl/gsl_multiroots.h")]
namespace MultirootFdfsolverTypes
{
public static MultirootFdfsolverType* hybridj;
public static MultirootFdfsolverType* hybridsj;
}
-
-
+
+
/*
* Multidimensional Minimization
*/
public delegate int MultiminFIterate (void* state, MultiminFunction* f, Vector x, double* size, double* fval);
[CCode (has_target = false)]
public delegate int MultiminFFree (void* state);
-
+
[SimpleType]
[CCode (cname="gsl_multimin_function", cheader_filename="gsl/gsl_multimin.h")]
public struct MultiminFunction
public size_t n;
public void* params;
}
-
+
[SimpleType]
[CCode (cname="gsl_multimin_function_fdf", cheader_filename="gsl/gsl_multimin.h")]
public struct MultiminFunctionFdf
public size_t n;
public void* params;
}
-
+
[CCode (cname="gsl_multimin_diff", cheader_filename="gsl/gsl_multimin.h")]
public static int multimin_diff (MultiminFunction* f, Vector x, Vector g);
-
+
[SimpleType]
[CCode (cname="gsl_multimin_fminimizer_type", cheader_filename="gsl/gsl_multimin.h")]
public struct MultiminFminimizerType
public MultiminFIterate iterate;
public MultiminFFree free;
}
-
+
[Compact]
[CCode (cname="gsl_multimin_fminimizer", cheader_filename="gsl/gsl_multimin.h")]
public class MultiminFminimizer
public Vector x;
public double size;
public void* state;
-
+
[CCode (cname="gsl_multimin_fminimizer_alloc")]
public MultiminFminimizer (MultiminFminimizerType* T, size_t n);
public int @set (MultiminFunction* f, Vector x, Vector step_size);
public int iterate ();
public double minimum ();
}
-
+
[CCode (lower_case_cprefix="gsl_multimin_test_", cheader_filename="gsl/gsl_multimin.h")]
namespace MultiminTest
{
public static int gradient(Vector g, double epsabs);
public static int size (double size, double epsabs);
}
-
+
[CCode (has_target = false)]
public delegate int MultiminFdfAlloc (void *state, size_t n);
[CCode (has_target = false)]
public delegate int MultiminFdfRestart (void* state);
[CCode (has_target = false)]
public delegate int MultiminFdfFree (void* state);
-
+
[SimpleType]
[CCode (cname="gsl_multimin_fdfminimizer_type", cheader_filename="gsl/gsl_multimin.h")]
public struct MultiminFdfminimizerType
public MultiminFdfSet @set;
public MultiminFdfIterate iterate;
public MultiminFdfRestart restart;
- public MultiminFdfFree free;
+ public MultiminFdfFree free;
}
-
+
[Compact]
[CCode (cname="gsl_multimin_fdfminimizer", cheader_filename="gsl/gsl_multimin.h")]
public class MultiminFdfminimizer
public Vector gradient;
public Vector dx;
public void* state;
-
+
[CCode (cname="gsl_multimin_fdfminimizer_alloc")]
public MultiminFdfminimizer (MultiminFdfminimizerType* T, size_t n);
public int @set (MultiminFunctionFdf* fdf, Vector x, double step_size, double tol);
public int restart ();
public double minimum ();
}
-
+
[CCode (lower_case_cprefix="gsl_multimin_fdfminimizer_", cheader_filename="gsl/gsl_multimin.h")]
namespace MultiminFdfminimizerTypes
{
public static MultiminFdfminimizerType* vector_bfgs;
public static MultiminFdfminimizerType* vector_bfgs2;
}
-
+
[CCode (lower_case_cprefix="gsl_multimin_fminimizer_", cheader_filename="gsl/gsl_multimin.h")]
namespace MultiminFminimizerTypes
{
public static MultiminFminimizerType* nmsimplex;
}
-
-
+
+
/*
* Least-Squares Fitting
*/
public static int wmul ([CCode (array_length = false)] double[] x, size_t xstride, [CCode (array_length = false)] double[] w, size_t wstride, [CCode (array_length = false)] double[] y, size_t ystride, size_t n, out double c1, out double cov11, out double sumsq);
public static int mul_est (double x, double c1, double cov11, out double y, out double y_err);
}
-
+
[Compact]
[CCode (cname="gsl_multifit_linear_workspace", free_function="gsl_multifit_linear_free", cheader_filename="gsl/gsl_multifit.h")]
public class MultifitLinearWorkspace
public Vector t;
public Vector xt;
public Vector D;
-
+
[CCode (cname="gsl_multifit_linear_alloc")]
public MultifitLinearWorkspace (size_t n, size_t p);
}
-
+
[CCode (lower_case_cprefix="gsl_multifit_", cheader_filename="gsl/gsl_multifit.h")]
namespace Multifit
{
public static int linear_est (Vector x, Vector c, Matrix cov, out double y, out double y_err);
public int linear_residuals (Matrix X, Vector y, Vector c, Vector r);
}
-
-
+
+
/*
* Nonlinear Least-Squares Fitting
*/
public static int gradient (Matrix J, Vector f, Vector g);
public static int covar (Matrix J, double epsrel, Matrix covar);
}
-
+
[SimpleType]
[CCode (cname="gsl_multifit_function", cheader_filename="gls/gsl_multifit_nlin.h")]
public struct MultifitFunction
public size_t p;
public void* params;
}
-
+
[SimpleType]
[CCode (cname="gsl_multifit_fsolver_type", cheader_filename="gsl/gsl_multifit_nlin.h")]
public struct MultifitFsolverType
public MultifitFIterate iterate;
public MultifitFFree free;
}
-
+
[Compact]
[CCode (cname="gsl_multifit_fsolver", cheader_filename="gsl/gsl_multifit_nlin.h")]
public class MultifitFsolver
public Vector f;
public Vector dx;
public void* state;
-
+
[CCode (cname="gsl_multifit_fsolver_alloc")]
public MultifitFsolver (MultifitFsolverType* T, size_t n, size_t p);
public int @set (MultifitFunction* f, Vector x);
public unowned string name ();
public Vector position ();
}
-
+
[SimpleType]
[CCode (cname="gsl_multifit_function_fdf", cheader_filename="gsl/gsl_multifit_nlin.h")]
public struct MultifitFunctionFdf
public size_t p;
public void* params;
}
-
+
[SimpleType]
[CCode (cname="gsl_multifit_fdfsolver_type", cheader_filename="gsl/gsl_multifit_nlin.h")]
public struct MultifitFdfsolverType
public MultifitFdfIterate iterate;
public MultifitFdfFree free;
}
-
+
[Compact]
[CCode (cname="gsl_multifit_fdfsolver", cheader_filename="gsl/gsl_multifit_nlin.h")]
public class MultifitFdfsolver
public Vector J;
public Vector dx;
public void* state;
-
+
[CCode (cname="gsl_multifit_fdfsolver_alloc")]
public MultifitFdfsolver (MultifitFdfsolverType* T, size_t n, size_t p);
public int @set (MultifitFunctionFdf* fdf, Vector x);
public unowned string name ();
public Vector position ();
}
-
+
[CCode (lower_case_cprefix="gsl_multifit_test_", cheader_filename="gsl/gsl_multifit_nlin.h")]
namespace MultifitTest
{
public static int delta (Vector dx, Vector x, double epsabs, double epsrel);
public static int gradient (Vector g, double epsabs);
}
-
+
[CCode (lower_case_cprefix="gsl_multifit_fdfsolver_", cheader_filename="gsl/gsl_multifit_nlin.h")]
namespace MultifitFdfsolverTypes
{
public static MultifitFdfsolverType* lmder;
public static MultifitFdfsolverType* lmsder;
}
-
-
+
+
/*
* Basis Splines
*/
public Vector deltal;
public Vector deltar;
public Vector B;
-
+
[CCode (cname="gsl_bspline_alloc")]
public BsplineWorkspace (size_t k, size_t nbreak);
public size_t ncoeffs ();