Issue: Reflection from a grating is greater than 1.



Dear all,

I am trying to simulate following structure which consists of a grating defined on a substrate material. The period of the grating is 500 nm, height is 340nm and width is 150 nm. The light is incident from the substrate side towards the air.

Attached is my simulation file:
LumericalInquiryGrating.fsp (304.4 KB)

However I could observe that the reflection is greater than 1. Could you please suggest me how can I correctly set up my simulation?

Also, I would appreciate if you could let me know how to set up the simulation so as to calculate the power in each diffracted order from the grating.

Thanking you in anticipation.


Hi @vshrestha,

I’ve adjusted a little bit of your model.

  • I guessed there might reveal the point that reflection is greater than 1 due to a not enough space for the lower part of the FDTD region in y-direction. If there is not enough space in FDTD region, PML cannot effectively absorb the EM wave at the boundary interface, which can lead to the interference between PML and FDTD region; this interference effect would impact on the reflection spectrum around 750 nm.
  • I moved the plane-wave to y = -100 nm (close to the center position) and increase the space to the lower part of FDTD region in y-direction (y min = y max).
  • I modified the center position of the z axis of FDTD region to have the same distance for upper and lower spaces.
  • I’ve applied antisymmetric BCs to the polarization direction of the plane-wave source (x-axis) to save the simulation time.

Here is the transmission spectrum result for the reflection monitor. You can observe that the maximum intensity is not exceeded 1.0.

Here, I attached modified project file.
LumericalInquiryGrating_v2.fsp (311.5 KB)


Hi @isawjsy

Thank you for your kind response.

I would appreciate if you could help me with these questions as well:

  1. Why would the position of the source affect the reflection? I tried putting it at y=-400nm and still the reflection is greater than 1.
  2. How would l be able to calculate the reflected power in each grating orders.

Thank you.



The position of the source does not need to be changed, but only the position of the PML boundary. In the previous reply by @isawjsy the y span of the simulation region was increased to increase the distance between the grating structure and the PML boundary since when there are grating orders which travel at close to 90 degrees (along the surface of the grating), those modes tend to have long evanescent tails that extend above and below the grating structure, and this can degrade the performance of the PML if the evanescent fields reach the PML.

This example may be useful as it shows the fraction of power to each grating order for a 2D simulation:


Hello @nlui and @isawjsy,

Thank you for your kind support.

I am now trying to calculate power in different reflected orders using the analysis group “grating order transmission” in the object library. However I am facing a few problems:

  1. I placed monitor behind the source (source location = -1100 nm ), while the PML is far enough at -3800 nm and I obtained the reflected spectra to be oscillatory and the peak reflection is still greater than 1 . As shown in the green curved in the attached figure below:

In order to mitigate this issue, I used a monitor in front of the source as suggested in the following link:

This made the reflection to be less than 1 and the spectra to be smoother as shown in the blue curve.

Could you suggest me if I can rely on the result for the monitor in front of the source compared to that behind it?

  1. When I calculated the reflection power to the zeroth order and the total power using the builtin object library “grating order transmission”, I obtained different results for the two cases:
    (i) analysis group in front of the source and
    (ii) analysis group behind the source.

As seen in the following two figures, for case (i) i.e. when the analysis group is behind the source the zeroth order seems to be carrying less power than the total power reflected. However, in case (ii) when the analysis group is in front of the source the zeroth order is carrying all the power.

I would like to request you to suggest, what causes such discrepancy and what is the correct method to deal with it?

The simulation files and the scripts used are as follows:
LumericalInquiryGrating_v3.fsp (363.5 KB) [Comment: When the analysis group is behind the source]
LumericalInquiryGrating_v4.fsp (363.5 KB) [Comment: When the analysis group is in front of the source]

Script files:
GratingOrder_Behind.lsf (1.9 KB) [Comment: When the analysis group is behind the source]
GratingOrder_Front.lsf (1.9 KB) [Comment: When the analysis group is in front of the source]

Thanking you in anticipation!


I checked your simulation files and there are a couple of reasons for why you are seeing different results between the two methods.

The first reason is that the grating order transmission analysis group makes use of the “grating” script command. The syntax of this command can be found here:

If you check the analysis group script, you will see that the direction of projection is not specified so the default value is used, which means that the grating projection is performed for the direction of maximum power flow through the monitor. In the case where the monitor is placed in front of the source, the net power flows in the +y direction so the grating calculation is being performed in the wrong direction.

For a plane wave source injected at normal incidence, the injection error should be very small, so I don’t think it would be necessary measure reflection by placing the monitor in front of the source.

The second reason for differences is that the material of the structure is absorbing since if you check the fit of the material in the material explorer, the imaginary part of the refractive index is non-zero. This means the position of the source and monitor can have an effect on the results since the farther the distance the light travels, the more light is absorbed by the structure.

If you were injecting the source from the air above the structure and computing the reflection back into air, this result would not depend on the position of the source and monitor since the absorption only occurs in the structure. It would also be the configuration that you would actually use for measuring reflection in the experimental case, so if you wanted to confirm your simulated results you may consider this alternative setup.

Hopefully this helps!