Multilayer structure for Bloch Surface Waves

Dear all,
I am trying to stimulate a BSW in a multilayer structure using a plane wave at 633nm. Here the file I’m using Multilayer_BSW.fsp (2.4 MB)
. It is quite similar to what suggeted here for plasmonics.
After running the sweep over the angle of incidence of the plane wave, I obtain the following result for the reflectance:

The green line represents the reflectance calculated using stackrt command, the blue line is the simulation result. Please, can someone help me understanding why they are so different? Why the resonance peak is not the same for theory and simulation? Why does the blue curve oscillate and reach R>1?
Here the script file I am using to run the sweep and get the results Multilayer_BSW.lsf (1.4 KB)
Thanks for your help!

I noticed that the simulation time was not long enough for the auto shutoff to be triggered as discussed here:

However, increasing the simulation time alone did not completely fix the problem. I further lowered the auto shutoff min threshold down to 5e-6 and increased the simulation time up to 15000 fs. The result improved and I have attached the reflection between 44.5 and 45.5 degrees below:

The result does not overshoot 1 by much, and it should be even more accurate if the auto shutoff min is lowered even further since the result is very sensitive to ending the simulation too early which leads to the ripples in the reflection spectrum like discussed here:

I also noticed that the refractive index values for the stackrt script did not match the refractive index of the structure that is simulated so this could explain why the angle corresponding to the dip in reflection is different.

Hopefully this helps!

Dear Nlui,
thanks for your replay. Sorry for the mismatch of the refractive index between stackrt script and simulated structure. Now the peaks are in good agreement. Anyway, I increased the simulation time and reduced the auto shutoff min threshold as you suggested, but I didn’t appreciate great improvement, increasing the simulation time up to 2500 fs as well. Did you perform some manipulation of the curve after the simulation?
I noticed that in your result the reflection peak is really small compared to my simulation. Is it correct? Can you provide your code?


I don’t have the file that I used, but I mentioned in my previous reply that I used a simulation time of 15000 fs to get the results in the plot. This is much longer than the 2500 fs that you tried, and this long simulation time is required since the structure has some resonance which takes a very long time to fully decay. Please try it out!