flexiblesusy is hosted by Hepforge, IPPP Durham
FlexibleSUSY
flexiblesusy::anonymous_namespace{Li.cpp} Namespace Reference

Functions

std::complex< double > clog (const std::complex< double > &z) noexcept
 complex logarithm, converts -0.0 to 0.0 More...
 
constexpr bool is_even (int64_t n) noexcept
 
constexpr bool is_finite (const std::complex< double > &z) noexcept
 
std::complex< double > Li_rest (int64_t n, const std::complex< double > &z) noexcept
 returns remainder from inversion formula More...
 
std::complex< double > Li_series (int64_t n, const std::complex< double > &z) noexcept
 
std::complex< double > Li_unity_neg (int64_t n, const std::complex< double > &z) noexcept
 Series expansion of Li_n(z) around z ~ 1, n < 0. More...
 
std::complex< double > Li_unity_pos (int64_t n, const std::complex< double > &z) noexcept
 Series expansion of Li_n(z) around z ~ 1, n > 0. More...
 
std::complex< double > stable_pow (const std::complex< double > &z, int64_t n) noexcept
 returns z^n, treating Re(z) == 0 and Im(z) == 0 in a stable way More...
 

Variables

constexpr double inf = std::numeric_limits<double>::infinity()
 
constexpr double nan = std::numeric_limits<double>::quiet_NaN()
 
constexpr double PI = 3.1415926535897932
 

Function Documentation

◆ clog()

std::complex< double > flexiblesusy::anonymous_namespace{Li.cpp}::clog ( const std::complex< double > &  z)
noexcept

complex logarithm, converts -0.0 to 0.0

Definition at line 37 of file Li.cpp.

References flexiblesusy::arg(), and flexiblesusy::log().

Referenced by flexiblesusy::Li(), Li_rest(), Li_unity_neg(), and Li_unity_pos().

◆ is_even()

constexpr bool flexiblesusy::anonymous_namespace{Li.cpp}::is_even ( int64_t  n)
constexprnoexcept

Definition at line 29 of file Li.cpp.

Referenced by flexiblesusy::Li(), Li_rest(), and Li_unity_neg().

◆ is_finite()

constexpr bool flexiblesusy::anonymous_namespace{Li.cpp}::is_finite ( const std::complex< double > &  z)
constexprnoexcept

Definition at line 31 of file Li.cpp.

◆ Li_rest()

std::complex< double > flexiblesusy::anonymous_namespace{Li.cpp}::Li_rest ( int64_t  n,
const std::complex< double > &  z 
)
noexcept

returns remainder from inversion formula

Definition at line 149 of file Li.cpp.

References clog(), flexiblesusy::inv_fac(), is_even(), flexiblesusy::neg_eta(), and flexiblesusy::sum().

Referenced by flexiblesusy::Li().

◆ Li_series()

std::complex< double > flexiblesusy::anonymous_namespace{Li.cpp}::Li_series ( int64_t  n,
const std::complex< double > &  z 
)
noexcept

Series expansion of Li_n(z) in terms of powers of z. Fast convergence for large n >= 12.

Definition at line 51 of file Li.cpp.

References flexiblesusy::is_finite(), and flexiblesusy::sum().

Referenced by flexiblesusy::Li().

◆ Li_unity_neg()

std::complex< double > flexiblesusy::anonymous_namespace{Li.cpp}::Li_unity_neg ( int64_t  n,
const std::complex< double > &  z 
)
noexcept

Series expansion of Li_n(z) around z ~ 1, n < 0.

Definition at line 119 of file Li.cpp.

References clog(), flexiblesusy::inv_fac(), is_even(), flexiblesusy::is_finite(), stable_pow(), flexiblesusy::sum(), and flexiblesusy::zeta().

Referenced by flexiblesusy::Li().

◆ Li_unity_pos()

std::complex< double > flexiblesusy::anonymous_namespace{Li.cpp}::Li_unity_pos ( int64_t  n,
const std::complex< double > &  z 
)
noexcept

Series expansion of Li_n(z) around z ~ 1, n > 0.

Definition at line 69 of file Li.cpp.

References clog(), flexiblesusy::harmonic(), flexiblesusy::sum(), and flexiblesusy::zeta().

Referenced by flexiblesusy::Li().

◆ stable_pow()

std::complex< double > flexiblesusy::anonymous_namespace{Li.cpp}::stable_pow ( const std::complex< double > &  z,
int64_t  n 
)
noexcept

returns z^n, treating Re(z) == 0 and Im(z) == 0 in a stable way

Definition at line 100 of file Li.cpp.

Referenced by Li_unity_neg().

Variable Documentation

◆ inf

constexpr double flexiblesusy::anonymous_namespace{Li.cpp}::inf = std::numeric_limits<double>::infinity()
constexpr

Definition at line 25 of file Li.cpp.

Referenced by flexiblesusy::Li().

◆ nan

constexpr double flexiblesusy::anonymous_namespace{Li.cpp}::nan = std::numeric_limits<double>::quiet_NaN()
constexpr

Definition at line 26 of file Li.cpp.

Referenced by flexiblesusy::Li().

◆ PI

constexpr double flexiblesusy::anonymous_namespace{Li.cpp}::PI = 3.1415926535897932
constexpr