fmmax
fmmax copied to clipboard
Improved s-matrix formulation
Occasionally we observe some violation of energy conservation in results computed by FMMAX. We suspect that this is due to a suboptimal treatment of the scattering matrices. There are a few reports in the literature of methods with some advantages, including methods that avoid "risky" operations such as matrix inversion, or methods that preserve symmetry that one might expect from the scattering matrix (e.g. (S21 == S12). Let's collect relevant references here.
- IMPROVED FORMULATION OF SCATTERING MATRICES FOR SEMI-ANALYTICAL METHODS THAT IS CONSISTENT WITH CONVENTION
- Hybrid-matrix algorithm for rigorous coupled-wave analysis of multilayered diffraction gratings
- Enhanced R -matrix algorithms for multilayered diffraction gratings
- Hybridization of electromagnetic numerical methods through the G-matrix algorithm
@luochenghuang you've got some good insight here. Have you explored any of these other approaches? Would you be interested in exploring them?
As a next step, we should collect problematic examples. This could be done in a lightweight way, e.g. with a colab notebook.
One way we could make the S-matrices symmetric is by patting each layer with homogenous zero thickness sections at each interface [1]. I do think there is value in patting each layer as it would allow cascading S-matrices more easily using the Redheffer star product.