Python packages: tkinter, numpy, sympy, matplotlib
A detailed explanation behind this work is available in the arXiv paper: http://arxiv.org/abs/2603.16555.
This tool computes the diffraction orders, the scattering symmetries and the global scattering matrix that correspond to a diffraction grating producing diffraction orders only within the xz-plane.
The available spatial symmetries that can be used with this tool are defined below
1. px: symmetry along the x-axis
2. py: symmetry along the y-axis
3. pz: symmetry along the z-axis
4. i: inversion symmetry
5. c2x: 180° rotation symmetry around the x-axis
6. c2y: 180° rotation symmetry around the y-axis
7. c2z: 180° rotation symmetry around the z-axis