This example shows how to calculate the grating orders from a blaze grating. This grating has many grating orders at each wavelength. In order to capture the signature of the total reflection and transmission, more frequency points in the monitors are required.
A blaze grating is shown in the simulation file above. It is composed of a low index (1.4) substrate with a 40nm thick high index (3.4) coating. The grating angle is 30 degrees. A broadband plane wave source is incident at 15 degrees. We will use the grating order transmission analysis objects described in the Grating order transmission section to measure the reflection and transmission.
Open grating_blaze.fsp and run the simulation. When it finishes, use the script grating_blaze.lsf to calculate the reflection and grating orders at a fixed wavelength from the grating. Note that we used BFAST so the broadband source injects all wavelengths at the same angle of incident.
The figure shows the index profile of the grating.
The second figure shows the reflection of all diffraction orders as a function of wavelength from 0.4um to 0.7um. As can be seen from the figure below, at each wavelength, there are many diffraction orders. In order to get a smooth reflection curve, more frequency points than usual is required. In this example, 150 frequency points are used. However, as can be seen, even more frequency points (such as 200) are needed to have smoother result.
The third figure shows the reflection as a function of angle for a given wavelength of 0.5um. If you want to get this result at any other wavelength, just simply modify the "target_wavelength" in the script.