farfield.farfield_profile
farfield.farfield_profile
Computes a farfield profile.
This function effectively "unstacks" the values for each Fourier order and for each point in the Brillouin zone sampling scheme.
Args:
- flux: The flux array, with shape
(..., num_bz_kx, num_bz_ky, ... 2 * num_terms, num_sources)
. - wavelength: The wavelength, batch-compatible with
flux
. - in_plane_wavevector: The in-plane wavevector for the zeroth Fourier
order, batch-compatible with
flux
. - primitive_lattice_vectors: The primitive lattice vectors of the unit cell.
- expansion: The expansion used for the fields.
- brillouin_grid_axes: Specifies the two axes of
flux
corresponding to the Brillouin zone grid.
Returns:
- None: The polar and azimuthal angles, solid angle associated with each value, and the farfield power.