Class xlifepp::Fock#
-
class Fock#
-
Collaboration diagram for xlifepp::Fock:
Public Functions
-
inline Fock()#
-
default constructor
-
Fock(const string_t &filename)#
-
constructor loading table
-
Fock(number_t o, number_t nr, number_t vnf, const complex_t &vq = 0., real_t va = -2.55, real_t vb = 2, real_t vc = -15, real_t vd = 5, bool rot = true)#
-
constructor
-
void clear()#
-
clear object
-
complex_t Fock_s_interp(real_t x) const#
-
compute surface Fock function from tabulated values
compute surface Fock using linear interpolation from values in table x0 <= x <= x0+(n-1)*dx (n=table.size()) NO CHECK
-
complex_t Fock_s_trapz(real_t x, real_t a = -100, real_t b = 10, number_t nt = 2200) const#
-
compute “exact” surface Fock function using trapeze method
-
void initFilon(real_t c, real_t d, number_t nf, bool rot = true)#
-
initialize Filon object fimAP, fimAM used to compute Fock approximation
-
void initFilonMP(real_t a, real_t b, number_t nfM, number_t nfP, bool rot = true)#
-
initialize Filon objects fimM, fimP used to compute “exact” Fock function
-
void initResidue(number_t nbp = 1, bool withNewton = false)#
-
initialize pole stuff for residue computation
precomputation of poles zk of w2’-q.w2 and values zk.w2(zk)-q.w2’(zk) = (zk-q^2)w2(zk) q = 0 : zk = exp(2ipi/3)ak’ with ak’ the zeros of Ai’ that are tabulated (up to 10) q=inf: zk = exp(2ipi/3)ak with ak the zeros of Ai that are tabulated (up to 10) when q!=0, zk is approximated from zeros of ak’ (q small) or ak (q large) if withNewton is on, Newton’s method is used to get a better approximation
-
complex_t ippFock_s(real_t x, real_t c, int_t p) const#
-
compute surface Fock function using ipp (a<x<b)
compute part of Fock_s using integration by parts approximation (two first terms of double ipp), c>0
/ +inf / c / +inf
/ +inf
-
void loadTable(const string_t &filename)#
-
load from file tabulated Fock values
load tabulated Fock values from file
-
void newton(complex_t &r0, number_t kmax = 10, real_t tol = theTolerance) const#
-
improve roots of w2’-q.w2 using Newton’s method
-
inline complex_t operator()(real_t x, CalType ct = _defaultCal) const#
-
< compute Fock main function
Public Members
-
real_t b#
-
bounds defining methods to be used (default a=-2.55, b=2)
-
real_t d#
-
bounds of integral computed by quadrature (default c=-15, d = 5)
-
complex_t q#
-
impedance factor, (default q = 0)
-
bool qis0#
-
true if q = 0
-
mutable bool rotate#
-
use rotation of negative real axe in quadrature methods (default = true)
-
inline Fock()#