32complex<double>
cdgamma(complex<double> x);
50double ellpk(
double x);
56double expn(
int n,
double x);
100void spline_cubic_set(
long n,
const double t[],
const double y[],
double ypp[],
101 int ibcbeg,
double ybcbeg,
int ibcend,
double ybcend );
102void spline_cubic_val(
long n,
const double t[],
double tval,
const double y[],
const double ypp[],
103 double *yval,
double *ypval,
double *yppval );
124 int ibcbeg = ( yp1 > 0.99999e30 ) ? 2 : 1;
125 double ybcbeg = ( yp1 > 0.99999e30 ) ? 0. : yp1;
126 int ibcend = ( ypn > 0.99999e30 ) ? 2 : 1;
127 double ybcend = ( ypn > 0.99999e30 ) ? 0. : ypn;
176 const double lo_bound =
MIN2(xa[0],xa[n-1]);
177 const double hi_bound =
MAX2(xa[0],xa[n-1]);
178 const double SAFETY =
MAX2(hi_bound-lo_bound,1.)*10.*DBL_EPSILON;
185 *lgOutOfBounds =
true;
187 else if( x > hi_bound+
SAFETY )
190 *lgOutOfBounds =
true;
195 *lgOutOfBounds =
false;
198 splint(xa,ya,y2a,n,xsafe,y);
216 const double lo_bound =
MIN2(xa[0],xa[n-1]);
217 const double hi_bound =
MAX2(xa[0],xa[n-1]);
218 const double SAFETY =
MAX2(fabs(lo_bound),fabs(hi_bound))*10.*DBL_EPSILON;
225 *lgOutOfBounds =
true;
227 else if( x > hi_bound+
SAFETY )
230 *lgOutOfBounds =
true;
235 *lgOutOfBounds =
false;
238 spldrv(xa,ya,y2a,n,xsafe,y);
262double linint(
const double x[],
275 long ilo = 0, ihi = n-1;
278 long imid = (ilo+ihi)/2;
295 long ilo = 0, ihi = n-1;
298 long imid = (ilo+ihi)/2;
299 if( xval <= x[imid] )
330void getrf_wrapper(
long M,
long N,
double *A,
long lda, int32 *ipiv, int32 *info);
343void getrs_wrapper(
char trans,
long N,
long nrhs,
double *A,
long lda, int32 *ipiv,
double *B,
long ldb, int32 *info);
354 for(
int i=0; i < n; ++i )
367 for(
int i=0; i < n; ++i )
384static const unsigned int NMD5 = 32;
#define DEBUG_ENTRY(funcname)
static const double SAFETY
UNUSED const double SQRTPI
string MD5datafile(const char *fnam, access_scheme scheme=AS_DATA_ONLY)
double bessel_j1(double x)
double bessel_k1_scaled(double x)
unsigned long genrand_int32(void)
double bessel_k0(double x)
double bessel_i1_scaled(double x)
double bessel_yn(int n, double x)
void spldrv(const double xa[], const double ya[], const double y2a[], long int n, double x, double *y)
double bessel_y0(double x)
double bessel_k0_scaled(double x)
static const unsigned int NMD5
double genrand_real2(void)
void humlik(int n, const realnum x[], realnum y, realnum k[])
void getrs_wrapper(char trans, long N, long nrhs, double *A, long lda, int32 *ipiv, double *B, long ldb, int32 *info)
double linint(const double x[], const double y[], long n, double xval)
void init_genrand(unsigned long s)
double bessel_jn(int n, double x)
long hunt_bisect_reverse(const T x[], long n, T xval)
string MD5string(const string &str)
string MD5file(const char *fnam, access_scheme scheme=AS_DATA_ONLY)
double lfactorial(long n)
double lagrange(const double x[], const double y[], long n, double xval)
void spline_cubic_set(long n, const double t[], const double y[], double ypp[], int ibcbeg, double ybcbeg, int ibcend, double ybcend)
void spldrv_safe(const double xa[], const double ya[], const double y2a[], long int n, double x, double *y, bool *lgOutOfBounds)
complex< double > cdgamma(complex< double > x)
void VoigtH(realnum a, const realnum v[], realnum y[], int n)
long hunt_bisect(const T x[], long n, T xval)
static const int NPRE_FACTORIAL
void splint_safe(const double xa[], const double ya[], const double y2a[], long int n, double x, double *y, bool *lgOutOfBounds)
void spline_cubic_val(long n, const double t[], double tval, const double y[], const double ypp[], double *yval, double *ypval, double *yppval)
double bessel_i1(double x)
double bessel_i0_scaled(double x)
realnum FastVoigtH(realnum a, realnum v)
double bessel_j0(double x)
double genrand_real3(void)
double bessel_i0(double x)
void init_by_array(unsigned long init_key[], int key_length)
double genrand_res53(void)
double genrand_real1(void)
void spline(const double x[], const double y[], long int n, double yp1, double ypn, double y2a[])
double bessel_k1(double x)
void getrf_wrapper(long M, long N, double *A, long lda, int32 *ipiv, int32 *info)
void splint(const double xa[], const double ya[], const double y2a[], long int n, double x, double *y)
double expn(int n, double x)
bool linfit(long n, const double x[], const double y[], double &a, double &siga, double &b, double &sigb)
double bessel_y1(double x)
void VoigtU(realnum a, const realnum v[], realnum y[], int n)