facebookresearch / fmmax

Fourier modal method with Jax
MIT License
93 stars 6 forks source link

Improved s-matrix formulation #71

Open mfschubert opened 7 months ago

mfschubert commented 7 months ago

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.

smartalecH commented 7 months ago

@luochenghuang you've got some good insight here. Have you explored any of these other approaches? Would you be interested in exploring them?

mfschubert commented 6 months ago

As a next step, we should collect problematic examples. This could be done in a lightweight way, e.g. with a colab notebook.

Luochenghuang commented 6 months ago

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.

[1] M. G. Moharam and Andrew B. Greenwell "Efficient rigorous calculations of power flow in grating coupled surface-emitting devices", Proc. SPIE 5456, Photon Management, (1 September 2004);