Optical theorem; Rayleigh limit; lossless absorbs nothing

← Verification · Spheres · Plane wave
Reference
optical theorem; Rayleigh limit; lossless absorbs nothing
Kind
analytic: a closed form, limit or conservation law: independent of any code
Calculated
Q_ext, Q_abs
Agreement
1e-12 / 1e-7
A 50 nm silica core with a 5 nm gold shell (n = 0.27 + 2.93i) in air: extinction and scattering two ways The extinction from the coefficients against 4π/k² Re S(0), the forward amplitude; the scattering from the coefficients against the far-field pattern integrated over 4001 angles (the trapezoid rule limits that pair to about 1e-7). The fixed gold index keeps the comparison about the method, not a material.
500600700800900100000.10.20.30.40.5λ [nm]Q
Qext, sum over orders (PyStratify) Qsca, sum over orders (PyStratify) Qext, optical theorem (forward amplitude) Qsca, integrated pattern
Hover to read values.
  • largest relative difference: 9.55×10⁻⁸
  • PyStratify the lines, the reference the circles
A small sphere of m = 1.5 + 0.2i: the electric dipole coefficient against Rayleigh's Rayleigh's a₁ = −(2i/3) x³ (m² − 1)/(m² + 2) is the first term in x, so divided by x³ it is a constant: PyStratify meets it as x → 0 and leaves it as the sphere grows (11% at x = 1); the difference falls as x² (1e-7 at x = 1e-4 in the test).
0.20.40.60.810.1850.190.1950.20.2050.210.215size parameter x|a₁| / x³
|a₁| / x³, PyStratify Rayleigh: (2/3) |(m² − 1)/(m² + 2)|
Hover to read values.
  • relative difference for x ≤ 0.01: 2.26×10⁻⁶
  • PyStratify the lines, the reference the circles
Random lossless eight-shell spheres in water: what they absorb Eight shells of random real indices 1.2–3.5: absorption is the difference of extinction and scattering, so anything above rounding would be energy the recursion invents; it stays below 1e-12 (the test's bound) to x = 300, growing slowly with the number of orders summed; floored at 1e-17 for the logarithmic axis.
5010015020025030010⁻¹⁷10⁻¹⁶10⁻¹⁵10⁻¹⁴10⁻¹³10⁻¹²size parameter x|Q_abs| / Q_ext
|Qabs| / Qext, PyStratify
Hover to read values.
  • largest |Q_abs| / Q_ext: 8.51×10⁻¹³

Run it yourself: sphere_checks.py · test_physics.py · figures.py · SPHERE_CHECKS.md on GitHub, PyStratify 97e52a9