Go to the source code of this file.
Functions | |
bool | linfit (long n, double x[], double y[], double &a, double &siga, double &b, double &sigb) |
double | factorial (long n) |
double | lfactorial (long n) |
complex< double > | cdgamma (complex< double > x) |
double | bessel_j0 (double x) |
double | bessel_y0 (double x) |
double | bessel_j1 (double x) |
double | bessel_y1 (double x) |
double | bessel_jn (int n, double x) |
double | bessel_yn (int n, double x) |
double | bessel_k0 (double x) |
double | bessel_k0_scaled (double x) |
double | bessel_k1 (double x) |
double | bessel_k1_scaled (double x) |
double | bessel_i0 (double x) |
double | bessel_i0_scaled (double x) |
double | bessel_i1 (double x) |
double | bessel_i1_scaled (double x) |
double | ellpk (double x) |
double | expn (int n, double x) |
void | spline_cubic_set (long n, const double t[], const double y[], double ypp[], int ibcbeg, double ybcbeg, int ibcend, double ybcend) |
void | spline_cubic_val (long n, const double t[], double tval, const double y[], const double ypp[], double *yval, double *ypval, double *yppval) |
void | spline (const double x[], const double y[], long int n, double yp1, double ypn, double y2a[]) |
void | splint (const double xa[], const double ya[], const double y2a[], long int n, double x, double *y) |
void | spldrv (const double xa[], const double ya[], const double y2a[], long int n, double x, double *y) |
void | splint_safe (const double xa[], const double ya[], const double y2a[], long int n, double x, double *y, bool *lgOutOfBounds) |
void | spldrv_safe (const double xa[], const double ya[], const double y2a[], long int n, double x, double *y, bool *lgOutOfBounds) |
double | lagrange (const double x[], const double y[], long n, double xval) |
double | linint (const double x[], const double y[], long n, double xval) |
long | hunt_bisect (const double x[], long n, double xval) |
long | hunt_bisect_reverse (const double x[], long n, double xval) |
void | getrf_wrapper (long M, long N, double *A, long lda, int32 *ipiv, int32 *info) |
void | getrs_wrapper (char trans, long N, long nrhs, double *A, long lda, int32 *ipiv, double *B, long ldb, int32 *info) |
Variables | |
static const int | NPRE_FACTORIAL = 171 |
double bessel_i0 | ( | double | x | ) |
Definition at line 1752 of file thirdparty.cpp.
References chbevl(), DEBUG_ENTRY, DEBUG_EXIT, i0_A, and i0_B.
Referenced by bessel_k0(), and bessel_k0_scaled().
double bessel_i0_scaled | ( | double | x | ) |
Definition at line 1773 of file thirdparty.cpp.
References chbevl(), DEBUG_ENTRY, DEBUG_EXIT, i0_A, and i0_B.
double bessel_i1 | ( | double | x | ) |
Definition at line 1942 of file thirdparty.cpp.
References chbevl(), DEBUG_ENTRY, DEBUG_EXIT, i1_A, i1_B, and z.
Referenced by bessel_k1(), and bessel_k1_scaled().
double bessel_i1_scaled | ( | double | x | ) |
Definition at line 1965 of file thirdparty.cpp.
References chbevl(), DEBUG_ENTRY, DEBUG_EXIT, i1_A, i1_B, and z.
double bessel_j0 | ( | double | x | ) |
Definition at line 686 of file thirdparty.cpp.
References b0_PP, b0_PQ, b0_QP, b0_QQ, b0_RP, b0_RQ, DEBUG_ENTRY, DEBUG_EXIT, DR1, DR2, p1evl(), PIO4, polevl(), SQ2OPI, and z.
Referenced by bessel_jn(), and bessel_y0().
double bessel_j1 | ( | double | x | ) |
Definition at line 926 of file thirdparty.cpp.
References b1_PP, b1_PQ, b1_QP, b1_QQ, b1_RP, b1_RQ, DEBUG_ENTRY, DEBUG_EXIT, p1evl(), polevl(), SQ2OPI, THPIO4, z, Z1, and Z2.
Referenced by bessel_jn(), and bessel_y1().
double bessel_jn | ( | int | n, | |
double | x | |||
) |
Definition at line 1038 of file thirdparty.cpp.
References bessel_j0(), bessel_j1(), DEBUG_ENTRY, DEBUG_EXIT, and sign().
double bessel_k0 | ( | double | x | ) |
Definition at line 1365 of file thirdparty.cpp.
References bessel_i0(), cdEXIT(), chbevl(), DEBUG_ENTRY, DEBUG_EXIT, ioQQQ, k0_A, k0_B, and z.
Referenced by S62_Therm_ave_coll_str().
double bessel_k0_scaled | ( | double | x | ) |
Definition at line 1393 of file thirdparty.cpp.
References bessel_i0(), cdEXIT(), chbevl(), DEBUG_ENTRY, DEBUG_EXIT, ioQQQ, k0_A, and k0_B.
double bessel_k1 | ( | double | x | ) |
Definition at line 1551 of file thirdparty.cpp.
References bessel_i1(), cdEXIT(), chbevl(), DEBUG_ENTRY, DEBUG_EXIT, ioQQQ, k1_A, k1_B, and z.
Referenced by S62_Therm_ave_coll_str().
double bessel_k1_scaled | ( | double | x | ) |
Definition at line 1578 of file thirdparty.cpp.
References bessel_i1(), cdEXIT(), chbevl(), DEBUG_ENTRY, DEBUG_EXIT, ioQQQ, k1_A, and k1_B.
double bessel_y0 | ( | double | x | ) |
Definition at line 728 of file thirdparty.cpp.
References b0_PP, b0_PQ, b0_QP, b0_QQ, b0_YP, b0_YQ, bessel_j0(), cdEXIT(), DEBUG_ENTRY, DEBUG_EXIT, ioQQQ, p1evl(), PIO4, polevl(), SQ2OPI, TWOOPI, and z.
Referenced by bessel_yn().
double bessel_y1 | ( | double | x | ) |
Definition at line 957 of file thirdparty.cpp.
References b1_PP, b1_PQ, b1_QP, b1_QQ, b1_YP, b1_YQ, bessel_j1(), cdEXIT(), DEBUG_ENTRY, DEBUG_EXIT, ioQQQ, p1evl(), polevl(), SQ2OPI, THPIO4, TWOOPI, and z.
Referenced by bessel_yn().
double bessel_yn | ( | int | n, | |
double | x | |||
) |
Definition at line 1178 of file thirdparty.cpp.
References bessel_y0(), bessel_y1(), cdEXIT(), DEBUG_ENTRY, DEBUG_EXIT, ioQQQ, and sign().
complex<double> cdgamma | ( | complex< double > | x | ) |
Definition at line 412 of file thirdparty.cpp.
References DEBUG_ENTRY, and DEBUG_EXIT.
Referenced by DoSutherland(), and Hypergeometric2F1().
double ellpk | ( | double | x | ) |
Definition at line 2079 of file thirdparty.cpp.
References C1, cdEXIT(), elk_P, elk_Q, ioQQQ, and polevl().
Referenced by StarkCollTransProb_VF01().
double expn | ( | int | n, | |
double | x | |||
) |
expn, returns exponential integral,
n | is order, 1 for first integral integral | |
x | is argument, must be positive |
Definition at line 2158 of file thirdparty.cpp.
References BIG, cdEXIT(), DEBUG_ENTRY, DEBUG_EXIT, EULER, factorial(), ioQQQ, is_odd(), MAXLOG, powi(), and z.
Referenced by FFmtRead(), and SanityCheckBegin().
double factorial | ( | long | n | ) |
factorial: compute n! by lookup in table of predefined factorials
Definition at line 343 of file thirdparty.cpp.
References cdEXIT(), ioQQQ, NPRE_FACTORIAL, and pre_factorial.
Referenced by bhg(), bhG(), DoSutherland(), expn(), fsff(), and hrii().
void getrf_wrapper | ( | long | M, | |
long | N, | |||
double * | A, | |||
long | lda, | |||
int32 * | ipiv, | |||
int32 * | info | |||
) |
getrf_wrapper return value is zero for success, non-zero is error condition
M | ||
N | ||
*A | ||
lda | ||
*ipiv | ||
*info |
Definition at line 47 of file thirdparty_lapack.cpp.
References ASSERT, DGETRF(), and INT32_MAX.
Referenced by atom_levelN(), atom_pop5(), AtomSeqBeryllium(), CO_solve(), FeIILevelPops(), HeLikeLevel(), hmole_step(), HydroLevelPop(), ion_solver(), oi_level_pops(), and SanityCheckBegin().
void getrs_wrapper | ( | char | trans, | |
long | N, | |||
long | nrhs, | |||
double * | A, | |||
long | lda, | |||
int32 * | ipiv, | |||
double * | B, | |||
long | ldb, | |||
int32 * | info | |||
) |
getrs_wrapper return value is zero for success, non-zero is error condition
trans | ||
N | ||
nrhs | ||
*A | ||
lda | ||
*ipiv | ||
*B | ||
ldb | ||
*info |
Definition at line 69 of file thirdparty_lapack.cpp.
References ASSERT, DGETRS(), and INT32_MAX.
Referenced by atom_levelN(), atom_pop5(), AtomSeqBeryllium(), CO_solve(), FeIILevelPops(), HeLikeLevel(), hmole_step(), HydroLevelPop(), ion_solver(), oi_level_pops(), and SanityCheckBegin().
long hunt_bisect | ( | const double | x[], | |
long | n, | |||
double | xval | |||
) | [inline] |
find index ilo such that x[ilo] <= xval < x[ilo+1] using bisection this version implicitly assumes that x is monotonically increasing
Definition at line 218 of file thirdparty.h.
Referenced by linint(), spline_cubic_val(), and TempInterp().
long hunt_bisect_reverse | ( | const double | x[], | |
long | n, | |||
double | xval | |||
) | [inline] |
find index ilo such that x[ilo] <= xval < x[ilo+1] using bisection this version implicitly assumes that x is monotonically decreasing
Definition at line 237 of file thirdparty.h.
double lagrange | ( | const double | x[], | |
const double | y[], | |||
long | n, | |||
double | xval | |||
) |
lagrange: do lagrange interpolation of order n on x[], y[] use with caution, especialy for high order n! using spline interpolation above is preferred
x[] | ||
y[] | ||
n | ||
xval | do lagrange interpolation of order n on x[], y[] |
Definition at line 444 of file thirdparty_interpolate.cpp.
References DEBUG_ENTRY, and DEBUG_EXIT.
Referenced by TempInterp().
double lfactorial | ( | long | n | ) |
lfactorial: compute log10(n!), this sroutine cahes its results for efficiency
Definition at line 385 of file thirdparty.cpp.
References cdEXIT(), t_lfact::get_lfact(), Singleton< t_lfact >::Inst(), and ioQQQ.
Referenced by bhg_log(), bhG_mx(), hrii_log(), and log10_fsff().
bool linfit | ( | long | n, | |
double | x[], | |||
double | y[], | |||
double & | a, | |||
double & | siga, | |||
double & | b, | |||
double & | sigb | |||
) |
Definition at line 45 of file thirdparty.cpp.
References DEBUG_ENTRY, DEBUG_EXIT, and pow2().
Referenced by ConvEdenIoniz().
double linint | ( | const double | x[], | |
const double | y[], | |||
long | n, | |||
double | xval | |||
) |
do linear interpolation on x[], y[]; it is assumed that x[] is strictly monotonically increasing
x[] | ||
y[] | ||
n | ||
xval | do linear interpolation on x[], y[]; it is assumed that x[] is strictly monotonically increasing |
Definition at line 469 of file thirdparty_interpolate.cpp.
References ASSERT, DEBUG_ENTRY, DEBUG_EXIT, and hunt_bisect().
Referenced by cross_section(), and DynaEndIter().
void spldrv | ( | const double | xa[], | |
const double | ya[], | |||
const double | y2a[], | |||
long int | n, | |||
double | x, | |||
double * | y | |||
) | [inline] |
Definition at line 96 of file thirdparty.h.
References spline_cubic_val().
Referenced by spldrv_safe().
void spldrv_safe | ( | const double | xa[], | |
const double | ya[], | |||
const double | y2a[], | |||
long int | n, | |||
double | x, | |||
double * | y, | |||
bool * | lgOutOfBounds | |||
) | [inline] |
Definition at line 153 of file thirdparty.h.
References DEBUG_ENTRY, DEBUG_EXIT, MAX2, MIN2, SAFETY, and spldrv().
Referenced by GetProbDistr_LowLimit(), and qheat().
void spline | ( | const double | x[], | |
const double | y[], | |||
long int | n, | |||
double | yp1, | |||
double | ypn, | |||
double | y2a[] | |||
) | [inline] |
Definition at line 70 of file thirdparty.h.
References spline_cubic_set().
Referenced by atmdat_2phot_shapefunction(), hmiopc(), InitEmissivities(), and InitEnthalpy().
void spline_cubic_set | ( | long | n, | |
const double | t[], | |||
const double | y[], | |||
double | ypp[], | |||
int | ibcbeg, | |||
double | ybcbeg, | |||
int | ibcend, | |||
double | ybcend | |||
) |
Definition at line 108 of file thirdparty_interpolate.cpp.
References ASSERT, cdEXIT(), d3_np_fs(), DEBUG_ENTRY, DEBUG_EXIT, ioQQQ, and MALLOC.
Referenced by spline().
void spline_cubic_val | ( | long | n, | |
const double | t[], | |||
double | tval, | |||
const double | y[], | |||
const double | ypp[], | |||
double * | yval, | |||
double * | ypval, | |||
double * | yppval | |||
) |
Definition at line 340 of file thirdparty_interpolate.cpp.
References DEBUG_ENTRY, DEBUG_EXIT, and hunt_bisect().
Referenced by spldrv(), and splint().
void splint | ( | const double | xa[], | |
const double | ya[], | |||
const double | y2a[], | |||
long int | n, | |||
double | x, | |||
double * | y | |||
) | [inline] |
Definition at line 85 of file thirdparty.h.
References spline_cubic_val().
Referenced by atmdat_2phot_shapefunction(), hmiopc(), InitEmissivities(), and splint_safe().
void splint_safe | ( | const double | xa[], | |
const double | ya[], | |||
const double | y2a[], | |||
long int | n, | |||
double | x, | |||
double * | y, | |||
bool * | lgOutOfBounds | |||
) | [inline] |
Definition at line 111 of file thirdparty.h.
References DEBUG_ENTRY, DEBUG_EXIT, MAX2, MIN2, SAFETY, and splint().
Referenced by GetProbDistr_HighLimit(), GetProbDistr_LowLimit(), GrainChargeTemp(), GrainTemperature(), inv_ufunct(), RebinQHeatResults(), TryDoubleStep(), and ufunct().
const int NPRE_FACTORIAL = 171 [static] |
number of predefined factorials, so largest factorial that can be represented as double is (NPRE_FACTORIAL-1)!
Definition at line 20 of file thirdparty.h.
Referenced by factorial(), and H_photo_cs_lin().