qscat.special¶
Riccati–Bessel and Riccati–Hankel functions, their reduced-mass generalizations, and the Coulomb functions used for ionic targets.
F_{E,l}(r) = sqrt(2 mu k / pi) r j_l(k r), energy-normalized at mass mu. |
|
F^{(1)}_{E,l}(r) = sqrt(2 mu k / pi) r h_l^{(1)}(k r), energy-normalized at mass mu, h_l^{(1)} = j_l + i y_l the OUTGOING spherical Hankel function. |
|
Deprecated alias for riccati_bessel_en(r, k, l, mu): the mass generalization lives on the base name now. |
|
Deprecated alias for riccati_hankel_en(r, k, l, mu): the mass generalization lives on the base name now. |
|
sqrt(2m/pi k) F_l(m z/k, k x); reduces to riccati_bessel_en(x,k,l) at z=0, m=1. |
|
Energy-normalized irregular Coulomb function sqrt(2m/pi k) G_l. |
|
Energy-normalized OUTGOING Coulomb function sqrt(2m/pi k)(G_l + i F_l). |
Special functions (Coulomb, Bessel, …). Populated during method porting.
- qscat.special.coulomb_f_en(x, k, z, m, l)[source]¶
sqrt(2m/pi k) F_l(m z/k, k x); reduces to riccati_bessel_en(x,k,l) at z=0, m=1.
- qscat.special.coulomb_g_en(x, k, z, m, l)[source]¶
Energy-normalized irregular Coulomb function sqrt(2m/pi k) G_l.
- qscat.special.coulomb_h1_en(x, k, z, m, l)[source]¶
Energy-normalized OUTGOING Coulomb function sqrt(2m/pi k)(G_l + i F_l).
- qscat.special.riccati_bessel_en(r, k, l, mu=1.0)[source]¶
F_{E,l}(r) = sqrt(2 mu k / pi) r j_l(k r), energy-normalized at mass mu.
The energy-normalized (<F_E|F_E’> = delta(E-E’)) REGULAR radial solution for a particle of reduced mass mu and momentum k = sqrt(2 mu E). mu=1.0 (the default) is the electron case – bit-for-bit the historical mass-1 function, since 2.0*1.0 == 2.0 exactly and mu enters ONLY the normalization prefactor, never the momentum argument k r. mu != 1 is the nuclear case, used for the OUTGOING NUCLEAR dissociation wave in the DA/DR exit channel (eMoScat bessel::s_jEn(R, K, mu, l)). r must be REAL (see module docstring); k > 0, mu > 0.
- qscat.special.riccati_bessel_en_mass(r, k, l, mu)[source]¶
Deprecated alias for riccati_bessel_en(r, k, l, mu): the mass generalization lives on the base name now. Kept so existing imports keep working; new code should call riccati_bessel_en directly.
- qscat.special.riccati_hankel_en(r, k, l, mu=1.0)[source]¶
F^{(1)}_{E,l}(r) = sqrt(2 mu k / pi) r h_l^{(1)}(k r), energy-normalized at mass mu, h_l^{(1)} = j_l + i y_l the OUTGOING spherical Hankel function.
The outgoing sibling of riccati_bessel_en, with the same mass convention: mu enters only the sqrt(mu) normalization prefactor (2.0*1.0 == 2.0 exactly, so mu=1.0 is bit-for-bit the historical mass-1 function), never the momentum argument k r. So Re(F^{(1)}) == riccati_bessel_en and Im(F^{(1)}) = sqrt(2 mu k/pi) r y_l(k r) at the same (r, k, l, mu). mu != 1 drives the OUTGOING NUCLEAR dissociation wave in the DA/DR flux (Wronskian) extractor (eMoScat bessel::sphHankel1En(R, K, mu, l) – see qscat.core.td_extractors.Flux). r must be REAL (module docstring); k > 0, mu > 0.