Class xlifepp::Malyuzhinets#

class Malyuzhinets#

describes the class providing the computation of Malyuzhinets function involved in wedge diffraction

Public Functions

Malyuzhinets(real_t wa, int_t ng = 2, CalType qr = _laguerreCal, bool adapt = true)#

constructor

complex_t compute(complex_t z) const#

compute Malyuzhinets function at a point z

compute Malyuzhinets function at points zs

std::vector<complex_t> compute(const std::vector<complex_t> &zs, bool parallel = true) const#

compute Malyuzhinets function at points zs

complex_t integral(real_t t0, real_t tf, const complex_t &z) const#

integral at z

compute Malyuzhinets function at point z

std::vector<complex_t> integral(real_t t0, real_t tf, const std::vector<complex_t> &zs) const#

integral at zs

std::vector<complex_t> integrand(const std::vector<real_t> &ts, const complex_t &z) const#

integrand at (ts,z)

complex_t integrand(real_t t, const complex_t &z) const#

integrand at (t,z)

inline complex_t operator()(complex_t z) const#

< compute Malyuzhinets function at a point z

inline std::vector<complex_t> operator()(const std::vector<complex_t> &zs, bool parallel = true) const#

< compute Malyuzhinets function at points zs

Public Members

bool adaptive#

true* if local or global adaptive quadrature must be used

real_t eps#

relative tolerance when using adaptive quadrature (default 1E-4)

mutable std::vector<real_t> lagPoints#

to store Laguerre points

mutable std::vector<real_t> lagWeights#

to store Laguerre weights

number_t ngamma#

number of Gamma function (default 2)

number_t nq#

number of quadrature points (default 32)

Parameters pars#

internal parameters

real_t Phi#

wedge angle

CalType quad#

quadrature method (_trapezeCal, _laguerreCal*,_defaultCal),

mutable complex_t z_#

current z