00001
00002
00003
00004
00005
00006
00007
00008 #ifdef __cplusplus
00009 extern "C" {
00010 #endif
00011
00012 typedef void (*integrand_t)(const int *, const double [],
00013 const int *, double []);
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 void Vegas(const int ndim, const int ncomp, integrand_t integrand,
00024 const double epsrel, const double epsabs,
00025 const int flags, const int mineval, const int maxeval,
00026 const int nstart, const int nincrease,
00027 int *neval, int *fail,
00028 double integral[], double error[], double prob[]);
00029
00030 void llVegas(const int ndim, const int ncomp, integrand_t integrand,
00031 const double epsrel, const double epsabs,
00032 const int flags, const long long int mineval, const long long int maxeval,
00033 const long long int nstart, const long long int nincrease,
00034 long long int *neval, int *fail,
00035 double integral[], double error[], double prob[]);
00036
00037 void Suave(const int ndim, const int ncomp, integrand_t integrand,
00038 const double epsrel, const double epsabs,
00039 const int flags, const int mineval, const int maxeval,
00040 const int nnew, const double flatness,
00041 int *nregions, int *neval, int *fail,
00042 double integral[], double error[], double prob[]);
00043
00044 void llSuave(const int ndim, const int ncomp, integrand_t integrand,
00045 const double epsrel, const double epsabs,
00046 const int flags, const long long int mineval, const long long int maxeval,
00047 const long long int nnew, const double flatness,
00048 int *nregions, long long int *neval, int *fail,
00049 double integral[], double error[], double prob[]);
00050
00051 void Divonne(const int ndim, const int ncomp, integrand_t integrand,
00052 const double epsrel, const double epsabs,
00053 const int flags, const int mineval, const int maxeval,
00054 const int key1, const int key2, const int key3, const int maxpass,
00055 const double border, const double maxchisq, const double mindeviation,
00056 const int ngiven, const int ldxgiven, double xgiven[],
00057 const int nextra,
00058 void (*peakfinder)(const int *, const double [], int *, double []),
00059 int *nregions, int *neval, int *fail,
00060 double integral[], double error[], double prob[]);
00061
00062 void llDivonne(const int ndim, const int ncomp, integrand_t integrand,
00063 const double epsrel, const double epsabs,
00064 const int flags, const long long int mineval, const long long int maxeval,
00065 const int key1, const int key2, const int key3, const int maxpass,
00066 const double border, const double maxchisq, const double mindeviation,
00067 const long long int ngiven, const int ldxgiven, double xgiven[],
00068 const long long int nextra,
00069 void (*peakfinder)(const int *, const double [], int *, double []),
00070 int *nregions, long long int *neval, int *fail,
00071 double integral[], double error[], double prob[]);
00072
00073 void Cuhre(const int ndim, const int ncomp, integrand_t integrand,
00074 const double epsrel, const double epsabs,
00075 const int flags, const int mineval, const int maxeval,
00076 const int key,
00077 int *nregions, int *neval, int *fail,
00078 double integral[], double error[], double prob[]);
00079
00080 void llCuhre(const int ndim, const int ncomp, integrand_t integrand,
00081 const double epsrel, const double epsabs,
00082 const int flags, const long long int mineval, const long long int maxeval,
00083 const int key,
00084 int *nregions, long long int *neval, int *fail,
00085 double integral[], double error[], double prob[]);
00086
00087 extern int vegasnbatch;
00088 extern int vegasgridno;
00089 extern char vegasstate[128];
00090
00091 extern int llvegasnbatch;
00092 extern int llvegasgridno;
00093 extern char llvegasstate[128];
00094
00095 #ifdef __cplusplus
00096 }
00097 #endif
00098