Beams, dipoles, and scattering#
This track moves from prescribed incident fields to radiation and scattering geometries.
Gaussian beam#
A Gaussian plane source needs more than a Gaussian amplitude mask: its phase curvature, propagation direction, polarization, and finite aperture must remain mutually consistent.
uv run fdtdx-bench run --case analytical_gaussian_source
The test covers beam power and Fresnel behavior. Inspect the beam away from the launch plane as well as at it; a malformed phase profile often looks correct only at the source.
Dipole radiation#
A point dipole is a stringent local source. Its radiated pattern has a null along the dipole axis and symmetry in the transverse plane. Integrated radiated power supplies an independent scalar check.
uv run fdtdx-bench run --case analytical_dipole_radiation
Separate incident and scattered fields#
TFSF injection introduces equivalent currents on a closed surface. Within the surface the field is incident plus scattered; outside it is scattered only.
uv run fdtdx-bench run --case analytical_tfsf_region
uv run fdtdx-bench run --case analytical_tfsf_grid
The first checks cancellation and a dispersive background. The second checks that injection uses grid metrics correctly rather than accidentally assuming uniform cells.
Scatter from a cylinder#
The 2D dielectric cylinder closes the loop: a known plane wave, TFSF separation, a curved interface, and comparison with Mie theory or Tidy3D.
uv run fdtdx-bench run --case analytical_mie_cylinder
uv run fdtdx-bench run --case parity_mie2d_cylinder
The pair is useful diagnostically. If theory and Tidy3D comparisons move together, discretization is the likely cause; if only one path fails, inspect normalization and golden conventions.