tl_vcw

Function tl_vcw 

Source
pub fn tl_vcw(
    kz: f64,
    mu: i64,
    qz: f64,
    m: i64,
    args: [Complex; 3],
    radial: Radial,
) -> Result<Complex>
Expand description

Cylindrical translation coefficient of the mode pair (qz, m) to (kz, mu).

args is [k_rho rho, phi, z], the displacement in cylindrical coordinates. Equal axial wavenumbers give polar_translation of the order difference m - mu, and unequal ones give zero for any displacement. The wavenumbers must be finite and the orders satisfy |mu|, |m| <= 128 (MAX_DEGREE); the orders are i64 so that every integer label gets this check before its conversion. At equal wavenumbers the displacement must be finite too.

Upstream: treams.special.tl_vcw (singular) and tl_vcw_r (regular). Differences: orders above 128, non-finite axial wavenumbers, non-finite k_rho rho, phi or z at equal axial wavenumbers, singular waves at k_rho rho = 0 and values that overflow give an error, where treams returns a value, infinity or NaN.