Skip to content

Changelog

This page summarizes user-visible changes.

The recommended starting point remains the uniform Cartesian Yee RF/FDTD lane. Public guides emphasize maintained workflows and bounded port-family envelopes.

  • Validation reporting is stricter: promoted port-family results now require magnitude evidence, phase-consistency evidence, differentiability checks where gradients are part of the claim, and reproducible artifact checks.
  • Port-family support wording is clearer: users should match each source or port family to its documented calculator and evidence envelope instead of treating any S-parameter helper as universal.
  • compute_msl_s_matrix now reports a positive characteristic impedance on both ports. This fixes reported metadata while leaving the S-parameter calculation invariant.
  • Non-uniform mesh accuracy coverage now includes an analytic gated cavity case whose resonance frequency depends on the graded axis.
  • Public guides and support pages were tightened around maintained workflows, validation boundaries, and device-count-adaptive test behaviour.
  • Rectangular waveguide-port evidence now covers WR-band empty-guide, PEC-short, and dielectric-slab cases with analytic and external-reference comparisons.
  • preflight() and preflight_sparameters() now expose coded report objects for automation while preserving older list/string behaviour.
  • Run/forward results, S-matrix calculators, sweeps, and optimizers now surface finite-data, passivity, setup, and NaN-gradient issues earlier.
  • compute_coaxial_line_reflection(...) is the current coaxial line-reflection path inside its documented transmission-line envelope.
  • compute_waveguide_s_matrix(checkpoint_segments=...) adds segmented checkpointing for uniform waveguide AD-heavy runs.
  • Finite-size flux monitors are regression-locked against the matching full-plane integrand window; the old finite-size instability caveat is superseded.
  • The directivity objective gained a log-ratio option for sign-correct gradients when design variables change total radiated power.
  • Public docs lead with the recommended default lane and bounded port-family evidence envelopes.
  • Current examples are routed through maintained paths such as examples/crossval/05_patch_antenna.py, examples/crossval/11_waveguide_port_wr90.py, examples/nonuniform_patch_demo.py, and examples/inverse_design/multilayer_ar_coating.py.
  • S-parameter documentation emphasizes matching the calculator to the port family: lumped/wire, MSL, waveguide, or bounded coaxial line reflection.
  • Continued work on differentiable design loops and validation-boundary reporting.
  • Added clearer feature-boundary wording so repository code outside the documented support scope is not presented as the default public path.
  • Improved port and observable APIs for selected RF workflows.
  • Expanded public guide structure for examples, API surfaces, and validation/support boundaries.
  • Added practical RF examples and clearer routing for patch, waveguide, and microstrip-style workflows.

Earlier releases introduced the core JAX FDTD solver, material/geometry helpers, sources, probes, ports, far-field utilities, and inverse-design workflows. See the Git history and package releases for full implementation detail.