sig
type kind = PLAIN | MISER | VEGAS
val integrate :
Gsl_monte.kind ->
Gsl_fun.monte_fun ->
lo:float array -> up:float array -> int -> Gsl_rng.t -> Gsl_fun.result
type plain_state
val make_plain_state : int -> Gsl_monte.plain_state
external init_plain : Gsl_monte.plain_state -> unit
= "ml_gsl_monte_plain_init"
external integrate_plain :
Gsl_fun.monte_fun ->
lo:float array ->
up:float array ->
int -> Gsl_rng.t -> Gsl_monte.plain_state -> Gsl_fun.result
= "ml_gsl_monte_plain_integrate_bc" "ml_gsl_monte_plain_integrate"
type miser_state
type miser_params = {
estimate_frac : float;
min_calls : int;
min_calls_per_bisection : int;
miser_alpha : float;
dither : float;
}
val make_miser_state : int -> Gsl_monte.miser_state
external init_miser : Gsl_monte.miser_state -> unit
= "ml_gsl_monte_miser_init"
external integrate_miser :
Gsl_fun.monte_fun ->
lo:float array ->
up:float array ->
int -> Gsl_rng.t -> Gsl_monte.miser_state -> Gsl_fun.result
= "ml_gsl_monte_miser_integrate_bc" "ml_gsl_monte_miser_integrate"
external get_miser_params : Gsl_monte.miser_state -> Gsl_monte.miser_params
= "ml_gsl_monte_miser_get_params"
external set_miser_params :
Gsl_monte.miser_state -> Gsl_monte.miser_params -> unit
= "ml_gsl_monte_miser_set_params"
type vegas_state
type vegas_info = { result : float; sigma : float; chisq : float; }
type vegas_mode = STRATIFIED | IMPORTANCE_ONLY | IMPORTANCE
type vegas_params = {
vegas_alpha : float;
iterations : int;
stage : int;
mode : Gsl_monte.vegas_mode;
verbose : int;
ostream : Pervasives.out_channel option;
}
val make_vegas_state : int -> Gsl_monte.vegas_state
external init_vegas : Gsl_monte.vegas_state -> unit
= "ml_gsl_monte_vegas_init"
external integrate_vegas :
Gsl_fun.monte_fun ->
lo:float array ->
up:float array ->
int -> Gsl_rng.t -> Gsl_monte.vegas_state -> Gsl_fun.result
= "ml_gsl_monte_vegas_integrate_bc" "ml_gsl_monte_vegas_integrate"
external get_vegas_info : Gsl_monte.vegas_state -> Gsl_monte.vegas_info
= "ml_gsl_monte_vegas_get_info"
external get_vegas_params : Gsl_monte.vegas_state -> Gsl_monte.vegas_params
= "ml_gsl_monte_vegas_get_params"
external set_vegas_params :
Gsl_monte.vegas_state -> Gsl_monte.vegas_params -> unit
= "ml_gsl_monte_vegas_set_params"
end