31 #define EPS_FD_JAC 1.0e-7
32 #define TOLF EPS_FD_JAC
33 #define TOLX EPS_FD_JAC
37 #define MAX_ROOT_EQNS 8
47 void LUBackSubst (
double **,
int,
int *,
double b[]);
53 double BesselIO(
double);
55 double BesselKO(
double);
63 void ODE_Solve(
double *,
int,
double,
double,
double,
64 void (*rhs)(
double,
double *,
double *),
int method);
68 void QRUpdate(
double **,
double **,
int ,
double *,
double *);
69 void RSolve(
double **,
int ,
double *,
double *);
70 void QRSolve(
double **,
int ,
double *,
double *,
double *);
71 void QRDecompose (
double **,
int ,
double *,
double *,
int *);
72 void rotate(
double **,
double **,
int ,
int ,
double ,
double );
76 double GaussQuadrature(
double (*func)(
double),
double,
double,
int,
int);
80 int Brent(
double (*func)(
double,
void *),
void *,
double,
double,
81 double,
double,
double *);
83 int Ridder(
double (*func)(
double,
void *),
void *,
84 double,
double,
double,
double,
double *);
86 void FDJacobian(
int ,
double *,
double *,
double **,
87 void (*vecfunc)(
int ,
double *,
double *));
88 void LineSearch (
int ,
double *,
double ,
double *,
89 double *,
double *,
double *,
double *,
double ,
90 int *,
void (*vecfunc)(
int ,
double *,
double *));
91 void Broyden(
double *,
int ,
int *,
void (*vecfunc)(
int,
double *,
double *));
105 double *
a,
double *b,
double *
c,
double *d);
107 void SplineCoeffs (
double *x,
double *f,
double dfL,
double dfR,
int n,
108 double *
a,
double *b,
double *
c,
double *d);
110 void TridiagonalSolve(
double *,
double *,
double *,
double *,
double *,
int);
void QRDecompose(double **a, int n, double *c, double *d, int *sing)
double BesselK1(double x)
double RandomNumber(double rmin, double rmax)
void FDJacobian(int n, double x[], double fv[], double **df, void(*vecfunc)(int, double[], double[]))
void LineSearch(int n, double xold[], double fold, double g[], double p[], double x[], double mf[], double *f, double stpmax, int *check, void(*vecfunc)(int, double[], double[]))
double BesselI1(double x)
double BesselJ0(double x)
void TridiagonalSolve(double *am, double *a0, double *ap, double *b, double *y, int n)
void rotate(double **r, double **qt, int n, int i, double a, double b)
void SplineCoeffs(double *x, double *f, double dfL, double dfR, int n, double *a, double *b, double *c, double *d)
void WriteBinaryTable2D(char *fname, Table2D *tab)
void QRUpdate(double **r, double **qt, int n, double *u, double *v)
void LUBackSubst(double **a, int n, int *indx, double b[])
int Brent(double(*Func)(double, void *), void *param, double x1, double x2, double abs_acc, double rel_acc, double *xroot)
int InverseLookupTable2D(Table2D *tab, double y, double f, double *x)
void ODE_Solve(double *y0, int nvar, double xbeg, double xend, double dx, void(*rhs)(double, double *, double *), int method)
void RSolve(double **a, int n, double *d, double *b)
void MonotoneSplineCoeffs(double *x, double *y, double *dydx, int n, double *a, double *b, double *c, double *d)
double GaussQuadrature(double(*func)(double), double xb, double xe, int nstep, int order)
int Table2DInterpolate(Table2D *tab, double x, double y, double *f)
void QRSolve(double **a, int n, double *c, double *d, double *b)
double BesselJ1(double x)
void Broyden(double x[], int n, int *check, void(*vecfunc)(int, double[], double[]))
void VectorCartesianComponents(double *v, double x1, double x2, double x3)
void InitializeTable2D(Table2D *tab, double xmin, double xmax, int nx, double ymin, double ymax, int ny)
double BesselKn(int n, double x)
int Ridder(double(*Func)(double, void *), void *param, double x1, double x2, double abs_acc, double rel_acc, double *xroot)
void FinalizeTable2D(Table2D *tab)
int LUDecompose(double **a, int n, int *indx, double *d)