Calculates the summand function G and related functions in Crandall's formula.
More...
#include <complex.h>
Go to the source code of this file.
|
| double | assignzArgBound (double nu) |
| | calculates bounds on when to use asymptotic expansion of the upper incomplete gamma function, depending on the value of nu.
|
| |
| double complex | crandall_g (unsigned int dim, double nu, const double *z, double prefactor, double zArgBound) |
| | Calculates the upper Crandall function.
|
| |
| double complex | crandall_gReg_nuequalsdim (double s, double arg, double k, double lambda) |
| | Calculates the regularization of the zero summand in the second sum in Crandall's formula in the special case of nu = dim + 2k for some natural number k.
|
| |
| double complex | crandall_gReg (unsigned int dim, double s, const double *z, double prefactor) |
| | Calculates the regularization of the zero summand in the second sum in Crandall's formula.
|
| |
| double | crandall_gReg_harmonic (int k, int n, unsigned int dim, double s, const double *z, double prefactor) |
| | Calculates the regularization of the zero summand in the second sum in Crandall's formula for the harmonic method.
|
| |
| double complex | crandall_g_lower (unsigned int dim, double nu, const double *z, double prefactor) |
| | Calculates the lower Crandall function.
|
| |
| double | polynomial_y_der (unsigned int k, unsigned int dim, const double *z, const unsigned int *alpha, unsigned int alphaAbs, unsigned int n) |
| | Calculates the derivatives of Y_k(z) / n! = (pi * z**2)**k / n! where n <= k.
|
| |
| double complex | crandall_gReg_nuequalsdimplus2k (double s, double arg, double k, double lambda) |
| | Calculates the regularization of the zero summand in the second sum in Crandall's formula in the special case of nu = dim + 2k for some natural number k.
|
| |
Calculates the summand function G and related functions in Crandall's formula.
◆ assignzArgBound()
| double assignzArgBound |
( |
double | nu | ) |
|
calculates bounds on when to use asymptotic expansion of the upper incomplete gamma function, depending on the value of nu.
- Parameters
-
| [in] | nu | exponent of the regularized Epstein zeta function. |
- Returns
- minimum value of z, when to use the fast asymptotic expansion in the calculation of the incomplete upper gamma function upperGamma(nu, z).
calculates bounds on when to use asymptotic expansion of the upper incomplete gamma function, depending on the value of nu.
- Parameters
-
| [in] | nu | exponent of the regularized Epstein zeta function. |
- Returns
- minimum value of z, when to use the fast asymptotic expansion in the calculation of the incomplete upper gamma function upperGamma(nu, z).
◆ crandall_g()
| double complex crandall_g |
( |
unsigned int | dim, |
|
|
double | nu, |
|
|
const double * | z, |
|
|
double | prefactor, |
|
|
double | zArgBound ) |
Calculates the upper Crandall function.
- Parameters
-
| [in] | dim | dimension of the input vectors. |
| [in] | nu | exponent of the regularized Epstein zeta function. |
| [in] | z | input vector of the function. |
| [in] | prefactor | prefactor of the vector, e. g. lambda or 1/lambda in Crandall's formula |
| [in] | zArgBound | minimum value of pi * z**2, when to use the fast asymptotic expansion in the calculation of the Crandall function. |
- Returns
- upperGamma(nu / 2,pi prefactor * z**2) / (pi * prefactor z**2)^(nu / 2) if |z| > 0 and - 2 / nu otherwise.
◆ crandall_g_lower()
| double complex crandall_g_lower |
( |
unsigned int | dim, |
|
|
double | nu, |
|
|
const double * | z, |
|
|
double | prefactor ) |
Calculates the lower Crandall function.
- Parameters
-
| [in] | dim | dimension of the input vectors. |
| [in] | nu | exponent of the regularized Epstein zeta function. |
| [in] | z | input vector of the function. |
| [in] | prefactor | prefactor of the vector, e. g. lambda or 1/lambda in Crandall's formula |
- Returns
- lowerGamma(nu / 2,pi prefactor * z**2) / (pi * prefactor z**2)^(nu / 2) if |z| > 0 and 2 / nu otherwise.
- Parameters
-
| [in] | dim | dimension of the input vectors. |
| [in] | nu | exponent of the regularized Epstein zeta function. |
| [in] | z | input vector of the function. |
| [in] | prefactor | prefactor of the vector, e. g. lambda or 1/lambda in Crandall's formula |
| [in] | zArgBound | minimum value of pi * z**2, when to use the fast asymptotic expansion in the calculation of the Crandall function. |
- Returns
- lowerGamma(nu / 2,pi prefactor * z**2) / (pi * prefactor z**2)^(nu / 2) if |z| > 0 and 2 / nu otherwise.
◆ crandall_gReg()
| double complex crandall_gReg |
( |
unsigned int | dim, |
|
|
double | s, |
|
|
const double * | z, |
|
|
double | prefactor ) |
Calculates the regularization of the zero summand in the second sum in Crandall's formula.
- Parameters
-
| [in] | dim | dimension of the input vectors |
| [in] | s | dimension minus exponent of the regularized Epstein zeta function, that is d - nu |
| [in] | z | input vector of the function |
| [in] | prefactor | prefactor of the vector, e. g. lambda |
- Returns
- - gamma(s/2) * gammaStar(s/2, pi * prefactor * z**2), where gammaStar is the twice regularized lower incomplete gamma function if s is not equal to - 2k and (pi * prefactor * y ** 2) ** (- s / 2) (gamma(s / 2, pi * prefactor * z ** 2) + ((-1)^k / k! ) * (log(pi * y ** 2) - log(prefactor ** 2))) if s is equal to - 2k for non negative natural number k
- Parameters
-
| [in] | dim | dimension of the input vectors. |
| [in] | s | dimension minus exponent of the regularized Epstein zeta function, that is d - nu. |
| [in] | z | input vector of the function. |
| [in] | prefactor | prefactor of the vector, e. g. lambda. |
- Returns
- - gamma(s/2) * gammaStar(s/2, pi * prefactor * z**2), where gammaStar is the twice regularized lower incomplete gamma function if s is not equal to - 2k and (pi * prefactor * y ** 2) ** (- s / 2) (gamma(s / 2, pi * prefactor * z ** 2) + ((-1)^k / k! ) * (log(pi * y ** 2) - log(prefactor ** 2))) if s is equal to - 2k for non negative natural number k.
◆ crandall_gReg_harmonic()
| double crandall_gReg_harmonic |
( |
int | k, |
|
|
int | n, |
|
|
unsigned int | dim, |
|
|
double | s, |
|
|
const double * | z, |
|
|
double | prefactor ) |
Calculates the regularization of the zero summand in the second sum in Crandall's formula for the harmonic method.
- Parameters
-
| [in] | k | specifies degree |alpha| - 2k. |
| [in] | n | |alpha|. |
| [in] | s | dimension minus exponent of the regularized Epstein zeta function, that is d - nu. |
| [in] | dim | dimension of the input vectors. |
| [in] | z | input vector of the function. |
| [in] | prefactor | prefactor of the vector, e. g. lambda. |
- Returns
- - gamma(s/2) * gammaStar(s/2, pi * prefactor * z**2), where gammaStar is the twice regularized lower incomplete gamma function if s is and the special definition if s is equal to - 2k for non negative natural number k <= l.
◆ crandall_gReg_nuequalsdim()
| double complex crandall_gReg_nuequalsdim |
( |
double | s, |
|
|
double | arg, |
|
|
double | k, |
|
|
double | lambda ) |
Calculates the regularization of the zero summand in the second sum in Crandall's formula in the special case of nu = dim + 2k for some natural number k.
- Parameters
-
| [in] | s | dimension minus exponent of the regularized Epstein zeta function. |
| [in] | arg | input of the function |
| [in] | k | k = - s / 2 = (nu - d) / 2 as an integer |
| [in] | lambda | scaling parameter of crandalls formula |
- Returns
- arg ** (- s / 2) * (gamma(s / 2, arg) + ((-1)^k / k! ) * (log(arg) - log(lambda ** 2))
◆ crandall_gReg_nuequalsdimplus2k()
| double complex crandall_gReg_nuequalsdimplus2k |
( |
double | s, |
|
|
double | arg, |
|
|
double | k, |
|
|
double | lambda ) |
Calculates the regularization of the zero summand in the second sum in Crandall's formula in the special case of nu = dim + 2k for some natural number k.
- Parameters
-
| [in] | s | dimension minus exponent of the regularized Epstein zeta function. |
| [in] | arg | input of the function. |
| [in] | k | k = - s / 2 = (nu - d) / 2 as an integer. |
| [in] | lambda | scaling parameter of crandalls formula. |
- Returns
- arg ** (- s / 2) * (gamma(s / 2, arg) + ((-1)^k / k! ) * (log(arg) - log(lambda ** 2)).
◆ polynomial_y_der()
| double polynomial_y_der |
( |
unsigned int | k, |
|
|
unsigned int | dim, |
|
|
const double * | z, |
|
|
const unsigned int * | alpha, |
|
|
unsigned int | alphaAbs, |
|
|
unsigned int | n ) |
Calculates the derivatives of Y_k(z) / n! = (pi * z**2)**k / n! where n <= k.
- Parameters
-
| [in] | k | integer power. |
| [in] | dim | dimension of z. |
| [in] | y | vector of the polynomial. @parma[in] alpha: multi-index for the derivative. |
| [in] | n | factorial divisor smaller than k. |
- Returns
- partial derivative of Y_k(z) / n!.