Multipole
Multipole approximations for finite-source magnifications.
- microjax.multipole.mag_hexadecapole(z: Array, z_mask: Array, rho: float, u1: float = 0.0, nlenses: int = 2, **params) Tuple[Array, Array]
Evaluate the hexadecapole approximation for finite-source magnification.
- Parameters:
z (jax.Array) – Complex image locations with shape
(N_images, ...).z_mask (jax.Array) – Boolean mask with the same shape as
zselecting valid image branches (typically output ofmicrojax.point_source._images_point_source()).rho (float) – Source radius in Einstein units.
u1 (float, optional) – Linear limb-darkening coefficient. Defaults to
0(uniform source).nlenses (int, optional) – Number of lenses (1, 2, or 3). Defaults to 2.
**params – Additional lens parameters in the mid-point coordinate system. For binaries this expects
aande1; for triplesa,r3,e1ande2in addition to any other configuration details.
- Returns:
mu (jax.Array) – Finite-source magnification obtained by summing the point-source term with quadrupole and hexadecapole corrections over all valid images.
residual (jax.Array) – Diagnostic amplitude (absolute quadrupole + hexadecapole contribution) that can be used to gauge when the approximation may be insufficient.
Notes
The implementation follows Cassan et al. (2017), computing the multipole moments via the complex quantities
W_kand applying limb-darkening corrections through theGammaparameter.