Cloudy
Spectral Synthesis Code for Astrophysics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
thirdparty.h File Reference
#include "physconst.h"
Include dependency graph for thirdparty.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  UltraGen
 
struct  trieNode
 

Functions

bool linfit (long n, const double x[], const 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 ellpk (double x)
 
double expn (int n, double x)
 
double erfce (double)
 
double igam (double a, double x)
 
double igamc (double a, double x)
 
double igamc_scaled (double a, double x)
 
double bessel_k0 (double x)
 
double bessel_k0_scaled (double x)
 
double bessel_k1 (double x)
 
double bessel_k1_scaled (double x)
 
void bessel_k0_k1 (double x, double *k0val, double *k1val)
 
void bessel_k0_k1_scaled (double x, double *k0val, double *k1val)
 
double bessel_i0 (double x)
 
double bessel_i0_scaled (double x)
 
double bessel_i1 (double x)
 
double bessel_i1_scaled (double x)
 
void bessel_i0_i1 (double x, double *k0val, double *k1val)
 
void bessel_i0_i1_scaled (double x, double *k0val, double *k1val)
 
void sincos (double x, double *s, double *c)
 
double e1 (double x)
 
double e1_scaled (double x)
 
double e2 (double t)
 
void xoroshiro128plus (uint64 *pool, size_t size, uint64 state[], size_t ns)
 
void xoroshiro128plus_jump (uint64 &state0, uint64 &state1)
 
void xoshiro256starstar (uint64 *pool, size_t size, uint64 state[], size_t ns)
 
void xoshiro256starstar_jump (uint64 &state0, uint64 &state1, uint64 &state2, uint64 &state3)
 
uint64 splitmix64 (uint64 &state)
 
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)
 
template<class T >
long hunt_bisect (const T x[], long n, T xval)
 
template<class T >
long hunt_bisect (const vector< T > &x, T xval)
 
template<class T >
long hunt_bisect (const vector< T > &x, size_t n, T xval)
 
template<class T >
long hunt_bisect_reverse (const T x[], long n, T xval)
 
template<class T >
long hunt_bisect_reverse (const vector< T > &x, T xval)
 
template<class T >
long hunt_bisect_reverse (const vector< T > &x, size_t n, T xval)
 
template<class T >
linint (const T x[], const T y[], long n, T 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)
 
double dawson (double x)
 
void humlik (int n, const realnum x[], realnum y, realnum k[])
 
realnum FastVoigtH (realnum a, realnum v)
 
void FastVoigtH (realnum a, const realnum v[], realnum y[], size_t n)
 
void VoigtH (realnum a, const realnum v[], realnum y[], int n)
 
void VoigtU (realnum a, const realnum v[], realnum y[], int n)
 
double VoigtH0 (double a)
 
double VoigtU0 (double a)
 
string MD5file (const char *fnam, access_scheme scheme=AS_DEFAULT)
 
string MD5datafile (const char *fnam, access_scheme scheme=AS_DEFAULT)
 
string MD5datastream (fstream &ioFile)
 
string MD5string (const string &str)
 
void MD5string (const string &str, uint64 md5sum[2])
 
void test_expn ()
 
void chbfit (double a, double b, vector< double > &c, double(*func)(double))
 
void svd (const int nm, const int m, const int n, double *a, double *w, bool matu, double *u, bool matv, double *v, int *ierr, double *rv1)
 
double gegenbauer (long n, double al, double x)
 
bool Triangle2 (long J1, long J2, long J3)
 
double sjs (long j1, long j2, long j3, long l1, long l2, long l3)
 
double SixJFull (long j1, long j2, long j3, long j4, long j5, long j6)
 
void rec6j (double *sixcof, double l2, double l3, double l4, double l5, double l6, double *l1min, double *l1max, double *lmatch, long ndim, long *ier)
 
void insertToken (trieNode *root, const string &token)
 
size_t findUniqueLen (trieNode *root, const string &token)
 
size_t LevenshteinDistance (const string &s, const string &t)
 

Variables

static const int NPRE_FACTORIAL = 171
 
static const int MXDSF = 340
 
static const unsigned int NMD5 = 32
 
static const size_t TRIESZ = 128
 

Function Documentation

double bessel_i0 ( double  x)

References BESSEL_I0_P1, BESSEL_I0_P2, BESSEL_I0_Q1, BESSEL_I0_Q2, DEBUG_ENTRY, ratevl_15_6(), and ratevl_7_8().

Here is the call graph for this function:

void bessel_i0_i1 ( double  x,
double *  k0val,
double *  k1val 
)
void bessel_i0_i1_scaled ( double  x,
double *  k0val,
double *  k1val 
)
double bessel_i0_scaled ( double  x)

References BESSEL_I0_P1, BESSEL_I0_P2, BESSEL_I0_Q1, BESSEL_I0_Q2, DEBUG_ENTRY, ratevl_15_6(), and ratevl_7_8().

Here is the call graph for this function:

double bessel_i1 ( double  x)

References BESSEL_I1_P1, BESSEL_I1_P2, BESSEL_I1_Q1, BESSEL_I1_Q2, DEBUG_ENTRY, ratevl_15_6(), and ratevl_8_7().

Here is the call graph for this function:

double bessel_i1_scaled ( double  x)

References BESSEL_I1_P1, BESSEL_I1_P2, BESSEL_I1_Q1, BESSEL_I1_Q2, DEBUG_ENTRY, ratevl_15_6(), and ratevl_8_7().

Here is the call graph for this function:

double bessel_j0 ( double  x)

References b0_PP, b0_PQ, b0_QP, b0_QQ, b0_RP, b0_RQ, DEBUG_ENTRY, DR1, DR2, p1evl(), PIO4, polevl(), and SQ2OPI.

Referenced by bessel_jn(), and bessel_y0().

Here is the call graph for this function:

double bessel_j1 ( double  x)

References b1_PP, b1_PQ, b1_QP, b1_QQ, b1_RP, b1_RQ, DEBUG_ENTRY, p1evl(), polevl(), SQ2OPI, THPIO4, Z1, and Z2.

Referenced by bessel_jn(), and bessel_y1().

Here is the call graph for this function:

double bessel_jn ( int  n,
double  x 
)

References bessel_j0(), bessel_j1(), DEBUG_ENTRY, factorial(), powi(), and sign().

Referenced by AngerJ().

Here is the call graph for this function:

double bessel_k0 ( double  x)
void bessel_k0_k1 ( double  x,
double *  k0val,
double *  k1val 
)
void bessel_k0_k1_scaled ( double  x,
double *  k0val,
double *  k1val 
)
double bessel_k0_scaled ( double  x)
double bessel_k1 ( double  x)
double bessel_k1_scaled ( double  x)
double bessel_y0 ( double  x)

References b0_PP, b0_PQ, b0_QP, b0_QQ, b0_YP, b0_YQ, bessel_j0(), cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, fprintf(), ioQQQ, p1evl(), PIO4, polevl(), SQ2OPI, and TWOOPI.

Referenced by bessel_yn().

Here is the call graph for this function:

double bessel_y1 ( double  x)

References b1_PP, b1_PQ, b1_QP, b1_QQ, b1_YP, b1_YQ, bessel_j1(), cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, fprintf(), ioQQQ, p1evl(), polevl(), SQ2OPI, THPIO4, and TWOOPI.

Referenced by bessel_yn().

Here is the call graph for this function:

double bessel_yn ( int  n,
double  x 
)

References bessel_y0(), bessel_y1(), cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, fprintf(), ioQQQ, and sign().

Here is the call graph for this function:

complex<double> cdgamma ( complex< double >  x)

References DEBUG_ENTRY.

void chbfit ( double  a,
double  b,
vector< double > &  c,
double(*)(double)  func 
)

References frac().

Referenced by test_expn().

Here is the call graph for this function:

double dawson ( double  x)

References dawson(), and dawson10().

Referenced by dawson().

Here is the call graph for this function:

double e1 ( double  x)

e1 first exponential integral

Parameters
xoptical depth argument

References cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, fprintf(), and ioQQQ.

Referenced by ColStrGBar(), CS_l_mixing_PS64_expI(), dqelg_(), e1_scaled(), expe1(), H21_cm_pops(), Hion_coll_ioniz_ratecoef(), Hydcs123(), hydro_vanRegemorter_deexcit(), mie_step(), newton_step(), qelg_(), SanityCheckBegin(), and Energy::set().

Here is the call graph for this function:

double e1_scaled ( double  x)

e1_scaled is exp(x)*e1(x)

References cdEXIT, DEBUG_ENTRY, e1(), EXIT_FAILURE, fprintf(), and ioQQQ.

Referenced by eeBremsSpectrum(), and Recomb_Seaton59().

Here is the call graph for this function:

double e2 ( double  t)

e2 second exponential integral

Parameters
toptical depth argument

References cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, fprintf(), and ioQQQ.

Referenced by dqelg_(), H21_cm_pops(), Hion_coll_ioniz_ratecoef(), humlik(), IterRestart(), IterStart(), mie_step(), newton_step(), t_ran::normal(), qelg_(), RT_continuum(), RT_tau_reset(), and SanityCheckBegin().

Here is the call graph for this function:

double ellpk ( double  x)

References C1, cdEXIT, DEBUG_ENTRY, elk_P, elk_Q, EXIT_FAILURE, fprintf(), ioQQQ, and polevl().

Here is the call graph for this function:

double erfce ( double  )

erfce(a) returns erfc(a)*exp(a^2)

References DEBUG_ENTRY, erf_P, erf_Q, erf_R, erf_S, p1evl(), and polevl().

Referenced by VoigtH0(), and VoigtU0().

Here is the call graph for this function:

double expn ( int  n,
double  x 
)

expn, returns exponential integral,

Parameters
nis order, 1 for first integral integral
xis argument, must be positive

References BIG, cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, factorial(), fprintf(), ioQQQ, is_odd(), MAXLOG, and powi().

Referenced by expn2_scaled(), Hion_coll_ioniz_ratecoef(), and SanityCheckBegin().

Here is the call graph for this function:

double factorial ( long  n)

factorial: compute n! by lookup in table of predefined factorials

References cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, fprintf(), ioQQQ, NPRE_FACTORIAL, and pre_factorial.

Referenced by bessel_jn(), expn(), and fc2().

Here is the call graph for this function:

realnum FastVoigtH ( realnum  a,
realnum  v 
)

References ASSERT, dawson10(), DEBUG_ENTRY, dsexp(), order(), and pow2().

Referenced by VoigtH().

Here is the call graph for this function:

void FastVoigtH ( realnum  a,
const realnum  v[],
realnum  y[],
size_t  n 
)

References ASSERT, dawson10(), DEBUG_ENTRY, order(), pow2(), avx_ptr< T, lgBC >::ptr0(), and vexp().

Here is the call graph for this function:

size_t findUniqueLen ( trieNode root,
const string &  token 
)
double gegenbauer ( long  n,
double  al,
double  x 
)

References DEBUG_ENTRY.

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

Parameters
M
N
*A
lda
*ipiv
*info

References ASSERT, DGETRF(), and INT32_MAX.

Referenced by find_solution(), iso_level(), SanityCheckBegin(), and solve_system().

Here is the call graph for this function:

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

Parameters
trans
N
nrhs
*A
lda
*ipiv
*B
ldb
*info

References ASSERT, DGETRS(), and INT32_MAX.

Referenced by find_solution(), iso_level(), SanityCheckBegin(), and solve_system().

Here is the call graph for this function:

void humlik ( int  n,
const realnum  x[],
realnum  y,
realnum  k[] 
)

References a0, DEBUG_ENTRY, e2(), and h2.

Referenced by VoigtH().

Here is the call graph for this function:

template<class T >
long hunt_bisect ( const T  x[],
long  n,
xval 
)
inline

find index ilo such that x[ilo] <= xval < x[ilo+1] using bisection this version implicitly assumes that x is monotonically increasing

Referenced by t_hydro_tbl::cs(), hunt_bisect(), t_mesh::ipointC(), iso_dielec_recomb_rate(), t_mesh::ithreshC(), linint(), mc_escape(), RebinFind(), spline_cubic_val(), TempInterp(), and TempInterp2().

template<class T >
long hunt_bisect ( const vector< T > &  x,
xval 
)
inline

vector<> versions of the above

References get_ptr(), and hunt_bisect().

Here is the call graph for this function:

template<class T >
long hunt_bisect ( const vector< T > &  x,
size_t  n,
xval 
)
inline

References ASSERT, get_ptr(), and hunt_bisect().

Here is the call graph for this function:

template<class T >
long hunt_bisect_reverse ( const T  x[],
long  n,
xval 
)
inline

find index ilo such that x[ilo] >= xval > x[ilo+1] using bisection this version implicitly assumes that x is monotonically decreasing

Referenced by hunt_bisect_reverse().

template<class T >
long hunt_bisect_reverse ( const vector< T > &  x,
xval 
)
inline

vector<> versions of the above

References get_ptr(), and hunt_bisect_reverse().

Here is the call graph for this function:

template<class T >
long hunt_bisect_reverse ( const vector< T > &  x,
size_t  n,
xval 
)
inline

References ASSERT, get_ptr(), and hunt_bisect_reverse().

Here is the call graph for this function:

double igam ( double  a,
double  x 
)

References ASSERT, DEBUG_ENTRY, igamc(), and MAXLOG.

Referenced by igamc(), and igamc_scaled().

Here is the call graph for this function:

double igamc ( double  a,
double  x 
)

References ASSERT, DEBUG_ENTRY, igam(), igamc_fraction(), and MAXLOG.

Referenced by CS_l_mixing_PS64_expI(), and igam().

Here is the call graph for this function:

double igamc_scaled ( double  a,
double  x 
)

References ASSERT, DEBUG_ENTRY, igam(), igamc_fraction(), and MAXLOG.

Referenced by Recomb_Seaton59().

Here is the call graph for this function:

void insertToken ( trieNode root,
const string &  token 
)
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

Parameters
x[]
y[]
n
xvaldo lagrange interpolation of order n on x[], y[]

References DEBUG_ENTRY.

Referenced by t_hydro_tbl::cs(), dawson10(), t_gaunt::gauntff(), TempInterp(), and TempInterp2().

size_t LevenshteinDistance ( const string &  s,
const string &  t 
)

References MIN3.

Referenced by Parser::ClosestMatch().

double lfactorial ( long  n)

lfactorial: compute log10(n!), this sroutine cahes its results for efficiency

References cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, fprintf(), t_lfact::get_lfact(), Singleton< t_lfact >::Inst(), and ioQQQ.

Referenced by bhg_log(), bhG_mx(), fsff_log10(), and hrii_log().

Here is the call graph for this function:

bool linfit ( long  n,
const double  x[],
const double  y[],
double &  a,
double &  siga,
double &  b,
double &  sigb 
)

References ASSERT, DEBUG_ENTRY, and pow2().

Referenced by iter_track::deriv(), and iter_track::zero_fit().

Here is the call graph for this function:

template<class T >
T linint ( const T  x[],
const T  y[],
long  n,
xval 
)
do linear interpolation on x[], y[];

it is assumed that x[] is strictly monotonically increasing

Parameters
x[]
y[]
n
xval

References ASSERT, and hunt_bisect().

Referenced by CHIANTI_Upsilon(), cross_section(), DynaIterStart(), GetHS98CrossSection(), HCSAR_interp(), HeCSTableInterp(), hydro_vanRegemorter_deexcit(), InterpCollRate(), lines_helium(), MolDissocCrossSection(), StoutCollRate(), and DepthTable::tabval().

Here is the call graph for this function:

string MD5datafile ( const char *  fnam,
access_scheme  scheme = AS_DEFAULT 
)

non-standard MD5 algorithm that skips eol characters and comments lines

References DEBUG_ENTRY, MD5datastream(), mode_r, and open_data().

Referenced by t_mesh::InitMesh().

Here is the call graph for this function:

string MD5datastream ( fstream &  ioFile)

same as MD5datafile(), but operates on an already open fstream

References DEBUG_ENTRY, and MD5string().

Referenced by MD5datafile().

Here is the call graph for this function:

string MD5file ( const char *  fnam,
access_scheme  scheme = AS_DEFAULT 
)

calculate the MD5 sum of a file

References DEBUG_ENTRY, MD5string(), mode_r, and open_data().

Here is the call graph for this function:

string MD5string ( const string &  str)

calculate the MD5 sum of a string

References DEBUG_ENTRY, MD5string_core(), and MD5swap().

Referenced by MD5datastream(), MD5file(), and t_ran::p_generate_random_seed().

Here is the call graph for this function:

void MD5string ( const string &  str,
uint64  md5sum[2] 
)

References DEBUG_ENTRY, MD5string_core(), and MD5swap().

Here is the call graph for this function:

void rec6j ( double *  sixcof,
double  l2,
double  l3,
double  l4,
double  l5,
double  l6,
double *  l1min,
double *  l1max,
double *  lmatch,
long  ndim,
long *  ier 
)

References a1, a2, DEBUG_ENTRY, fprintf(), frac(), ioQQQ, max(), min(), x1, and x2.

Here is the call graph for this function:

void sincos ( double  x,
double *  s,
double *  c 
)
inline

Referenced by sinpar().

double SixJFull ( long  j1,
long  j2,
long  j3,
long  j4,
long  j5,
long  j6 
)

References DEBUG_ENTRY, Delta(), fc2(), max(), min(), sg(), and Triangle2().

Here is the call graph for this function:

double sjs ( long  j1,
long  j2,
long  j3,
long  l1,
long  l2,
long  l3 
)

References DEBUG_ENTRY, fc2_scl(), max(), min(), sg(), and Triangle2().

Here is the call graph for this function:

void spldrv ( const double  xa[],
const double  ya[],
const double  y2a[],
long int  n,
double  x,
double *  y 
)
inline

References NULL, and spline_cubic_val().

Referenced by spldrv_safe().

Here is the call graph for this function:

void spldrv_safe ( const double  xa[],
const double  ya[],
const double  y2a[],
long int  n,
double  x,
double *  y,
bool *  lgOutOfBounds 
)
inline

References DEBUG_ENTRY, MAX2, MIN2, SAFETY, and spldrv().

Referenced by GetProbDistr_LowLimit(), and qheat().

Here is the call graph for this function:

void spline ( const double  x[],
const double  y[],
long int  n,
double  yp1,
double  ypn,
double  y2a[] 
)
inline
spline: set of routines to do spline interpolation

call spline first to set coefficients up, then call splint to interpolate spldrv gives dy/dx(x) rather than y(x) splint_safe and spldrv_safe check whether x is within bounds

Parameters
x[]- array of x values given
y[]- array of y values given
n- number of points in these arrays
yp1some sort of boundary condition, set to 2e31
yp2some sort of boundary condition, set to 2e31
y2a[]- array n long to save coefficients

References spline_cubic_set().

Referenced by atmdat_2phot_setSplineCoefs(), atmdat_CHIANTI_readin(), hmiopc(), HyperfineCreate(), InitEmissivities(), and InitEnthalpy().

Here is the call graph for this function:

void spline_cubic_set ( long  n,
const double  t[],
const double  y[],
double  ypp[],
int  ibcbeg,
double  ybcbeg,
int  ibcend,
double  ybcend 
)

References ASSERT, cdEXIT, d3_np_fs(), DEBUG_ENTRY, EXIT_FAILURE, fprintf(), ioQQQ, and NULL.

Referenced by spline().

Here is the call graph for this function:

void spline_cubic_val ( long  n,
const double  t[],
double  tval,
const double  y[],
const double  ypp[],
double *  yval,
double *  ypval,
double *  yppval 
)

References DEBUG_ENTRY, hunt_bisect(), and NULL.

Referenced by spldrv(), and splint().

Here is the call graph for this function:

void splint ( const double  xa[],
const double  ya[],
const double  y2a[],
long int  n,
double  x,
double *  y 
)
inline
splint: do spline interpolation
Parameters
x[]- array of x values given
y[]- array of y valus
y2a[]- array of save values found above
n- number of points in these arrays
xvalue where x is desired
y2a[]- array n long to save coefficients

References NULL, and spline_cubic_val().

Referenced by atmdat_2phot_shapefunction(), CHIANTI_Upsilon(), hmiopc(), HyperfineCS(), InitEmissivities(), and splint_safe().

Here is the call graph for this function:

void splint_safe ( const double  xa[],
const double  ya[],
const double  y2a[],
long int  n,
double  x,
double *  y,
bool *  lgOutOfBounds 
)
inline
uint64 splitmix64 ( uint64 &  state)

Referenced by init_seed().

void svd ( const int  nm,
const int  m,
const int  n,
double *  a,
double *  w,
bool  matu,
double *  u,
bool  matv,
double *  v,
int *  ierr,
double *  rv1 
)
void test_expn ( )

References chbevl(), chbfit(), expn2_scaled(), fprintf(), and ioQQQ.

Here is the call graph for this function:

bool Triangle2 ( long  J1,
long  J2,
long  J3 
)
inline
void VoigtH ( realnum  a,
const realnum  v[],
realnum  y[],
int  n 
)
inline

References FastVoigtH(), and humlik().

Referenced by RT_line_fine_opacity(), and VoigtU().

Here is the call graph for this function:

double VoigtH0 ( double  a)
inline

References erfce().

Here is the call graph for this function:

void VoigtU ( realnum  a,
const realnum  v[],
realnum  y[],
int  n 
)
inline

References VoigtH().

Referenced by mc_escape(), and outline_base().

Here is the call graph for this function:

double VoigtU0 ( double  a)
inline

References erfce().

Here is the call graph for this function:

void xoroshiro128plus ( uint64 *  pool,
size_t  size,
uint64  state[],
size_t  ns 
)

References DEBUG_ENTRY, and rotl().

Referenced by t_ran::p_xoroshiro128plus().

Here is the call graph for this function:

void xoroshiro128plus_jump ( uint64 &  state0,
uint64 &  state1 
)

References DEBUG_ENTRY, and rotl().

Referenced by init_seed().

Here is the call graph for this function:

void xoshiro256starstar ( uint64 *  pool,
size_t  size,
uint64  state[],
size_t  ns 
)

References DEBUG_ENTRY, and rotl().

Referenced by t_ran::p_xoshiro256starstar().

Here is the call graph for this function:

void xoshiro256starstar_jump ( uint64 &  state0,
uint64 &  state1,
uint64 &  state2,
uint64 &  state3 
)

References DEBUG_ENTRY, and rotl().

Referenced by init_seed().

Here is the call graph for this function:

Variable Documentation

const int MXDSF = 340
static

Referenced by fc2_scl().

const unsigned int NMD5 = 32
static

the size of an MD5 checksum in characters

const int NPRE_FACTORIAL = 171
static

number of predefined factorials, so largest factorial that can be represented as double is (NPRE_FACTORIAL-1)!

Referenced by factorial().

const size_t TRIESZ = 128
static