Skip to content

v0.5.0

Choose a tag to compare

@github-actions github-actions released this 09 Oct 14:17
· 349 commits to main since this release
1237701

Added

  • (backend) solver backends: DirectSolver, Analysis and Factorization traits, a registry, and a choice in the solvers and in job files (#193)
  • (bench) a catalogue of problem families at many sizes, each with its task, its memory and its accuracy check (#195)
  • (fdtd) the Yee scheme in 2D and 3D with the convolutional PML (#160) (#201)
  • (native) photonoxide-native, finding and loading external libraries at run time, with smoke tests (#202)
  • (fdtd) sources: dipoles, total-field/scattered-field, one-way mode sources and Gaussian beams (#162) (#203)
  • (fdtd) Bloch-periodic boundaries and dispersive media by auxiliary differential equations (#164) (#204)
  • (bench) the benchmark runner over problems, backends and threads, with a results database (#207)
  • (fdtd) subpixel smoothing, isotropic and anisotropic (#161) (#206)
  • (native) oneMKL's PARDISO as a direct solver (#211)
  • (native) photonoxide's QMR on the GPU with cuSPARSE, an iterative backend (#214)
  • (native) QMR with ILU(0) on the GPU, photonoxide's factors and cuSPARSE's triangular solves (#216)
  • (fdtd) refuse a smoothed ε⁻¹ at the nodes that isn't positive definite (#209) (#213)
  • (fdtd) monitors: DFT fields, flux, mode overlaps and resonances by harmonic inversion (#215)
  • (bench) factor entries in the measurements and the runner's records (#225)
  • (native) GMRES with photonoxide's multigrid on the GPU (#229)
  • (studio) the Academy: lessons with live charts from the library, the ring resonator and Bragg gratings (#233)
  • (fdtd) Coupling::Triplets, Werner, Bauer & Cary's smoothing stable at any contrast (#234)
  • (geometry) the kernel: regions, primitives, transforms, polygons within a tolerance, fills and a spatial index (#235)
  • (expr) an expression language with units and parameters, in job files and sweeps (#237)
  • (studio) FDTD jobs, live field propagation and monitors (#239)
  • (fdtd) [breaking] Werner, Bauer and Cary's triplets are the default smoothing (#240)
  • (fdtd) adjoint gradients in 3D from FDTD runs, the mode's imaginary part included (#246)
  • (bench) the catalogue's remaining problems: stretched PMLs on the device boxes, Diel and the strip with ports at other sizes, Hadley's corners (#242)
  • (fdtd) FDTD on the GPU through wgpu compute, deterministic, judged against the blocked CPU kernel (#252)
  • (fdtd) Liu and Poon's six PDK devices in 3D FDTD against their published Lumerical FDTD and Tidy3D results; Coupling::Diagonal, a faster smoothing that keeps the blocked kernel; PortMode3d::moved_to public (#253)
  • (native) NVIDIA cuDSS, a sparse direct solver on the GPU (#205)
  • (native) cuDSS's complex symmetric L D Lᵀ (#222)
  • (studio) a Libraries page: what is found, licences, and guided installs the user confirms (#221)
  • (studio) a Benchmarks page: runs on the user's machine, charts, and which library wins where (#226)

Fixed

  • 3D direct solves were wrong on AMD Zen 3 under Windows, faer's threaded product kernel now the fixed 0.1.22 (#192)
  • [breaking] the ring's closed forms, Marcuse's loss and Marcatili's normalized constant return errors, not NaN, infinities or panics (#191)

Performance

  • (fdtd) the CPU kernel in f32 and f64, row by row, the same bits as the plain loops (#218)
  • (fdtd) spatial and wavefront diamond blocking, about 4 times the memory's roof beyond the caches (#248)

Changed

  • (bench) the catalogue's Family, Task and Entry non-exhaustive and Family::ALL a slice, so new families aren't breaking changes (#197)

Documentation

  • the plan for optional external libraries loaded at run time, and AGENTS.md's rule for them (#196)
  • other tools described by what they do, without comparisons that run them down; no oxiphoton (#198)
  • no more alpha: released milestone by milestone, and the site follows the latest release by itself (#199)
  • the README says what 0.4.2 and 0.4.3 released, and that 0.5 is next (#230)
  • no promises to fabricate: foundry and process names out of the plan, the site and the banner (#231)
  • (roadmap) 0.6.1, nonlinear integrated optics, and the materials' transparency windows (#232)
  • (roadmap) Herr et al.'s solitons paper is from December 2013 (#236)
  • (plans) the owner's decisions on the GPU: determinism, precision and where its tests run (#241)
  • (plans) photonic quantum computing: a survey and a plan for photonoxide (#243)
  • (plans) optimization in photonic design: a survey and a plan with genoxide (#245)
  • (roadmap) 0.6.2, quantum light and linear-optical statistics, and the owner's decisions on both plans (#249)
  • 0.5 released, FDTD and the backends in the README, 0.5.1 next (#257)
  • (academy) the Bragg lesson cites Macleod's fifth edition (#238)