converging simulation about graphene plasmonic



I am trying to simulate Figure 4(a) from paper:

Effective index from simulation is very close to paper result at center frequency.[figure 2(a)]
My result is close to paper:
minimum auto shutoff level was 0.0009 and then increased.
I used finer mesh but in simulation result has ripples and simultion do not converged.(in many simulation exist)
My simulation file attached.:
1.lsf (155 Bytes)
Plasmonic bandpass filter.fsp (1.2 MB)

Thanks for helps

Diverging simulation about graphene metasurface - material fitting

Hi Dezyani,

Thanks for waiting and sorry for the delay. I think your simulation setup is correct but there are some improvements that can help (please take a look at this modified file Plasmonic bandpass filter_modFG.fsp (548.8 KB)

  • You mentioned that refining the mesh led to the auto shut off level not decreasing satisfactorily (which caused ripples in your results). I think the problem is that refining the mesh reduced the thickness of the PML layers at x min and x max. The thickness of the PML layers depends on the mesh close to the PML boundary. Since your mesh override region extends all the way along the x direction, this leads to a fine mesh close to the PML boundary. To avoid this problem I used two mesh override regions at the gaps (where the mesh step in the x direction is critical) instead of one extending all along the x direction. Note that you can still use a fine mesh in the y and z directions and this won’t affect the PML at x min and x max. The PML regions are now thicker and provide better absorption.

  • Instead of using RLC materials for the gap I used three graphene nanoribbons. This is a safer approach.

  • The resonances are due to fields bouncing back a forth in the center graphene ribbon. It can take a long time for the fields to leave the simulation region and because of the oscillation it is not surprising that the auto shutoff level goes up and down for some time; however you want to make sure that on average it is decreasing. One good way to check this is using time monitors at different places in the simulation. I placed five of them and you can see how the fields oscillate quite a lot but overall they are decreasing, so the simulation is stable.

  • I reduced the size of the FDTD region to speed up the simulation. It seems to have little effect on the accuracy of the results since the plasmonic mode is very localized.

Hope this help!


Thank you Federico.
Can you tell me one approach to use mesh override?
I do not Understand your intention exactly.



Hi Dezyani,

The main purpose of using two mesh override regions at the gaps (instead of one across the entire simulation region) is to have a coarser mesh close to the PML boundaries (at xmin and xmax) so that the PML layers are thicker. This also speeds up the simulation because the mesh along the x direction is coarser in the middle graphene ribbon, while making sure the mesh is fine in the gaps.


I have still problem is converging.
I dont know what is graphene width very small in latest simulation file!
Thanks for any helps.
I’ve spent a lot of time for this simulation
I fitted graphene conductivity to analytic data.


but my result is not near paper result.
new simulation file by federico advise:
Plasmonic bandpass filter based nanoribbons.fsp (876.2 KB)

Can anyone help me?



In simulations I understood that convergence is very variable with center freq. and B.W and mesh refinement.
ّFor this reason,I can not find overall solution for convergence!


Hi Dezyani,

I found some more things to improve the simulation file we have been discussing. I will post some comments describing these shortly, thanks for waiting.


I think you can get convergence by changing in pml parameter.
for first try, change it from standard to stabilized.



Hi Dezyani,

As @mostafanaseri mentioned, sometimes switching from standard to stabilized in the PML profile can help. The problem is that the stabilized profile provides less absorption; the simulation is more stable but each PML layer absorbs less. The stabilized profile is usually the last resource when none of the other PML profiles work and the simulation keeps diverging.

I think that in the present case the simulation is not unstable but it takes a long time for the autoshutoff level to decrease to a negligible value. The standard profile with 16 layers for the PML at xmin and xmax works fine. However, there are some additional things to consider that can improve the results (see Plasmonic bandpass filter_modFG_vers2.fsp (556.9 KB)):

  • Move the source away from the first gap and also leave some distance between the source and the PML at xmin. Since the gap introduces a discontinuity it is a good idea to make sure the fields are injected correctly in the input nanoribbon and they have some distance to travel before hitting the discontinuity.
  • Even though the mode propagating through the ribbons is very well confined, the gaps create discontinuities where the fields can be scattered out of the structure. For this reason metal boundaries for the y and z direction are not appropriate; we should use PML boundaries instead. One way to check if fields are being scattered out is by placing power monitors above and below the ribbons (like monitor_above and monitor_below in the attached file). What seemed to happen before with the metal boundaries is that the light scattered out of the structure was bouncing back due to the metal boundaries, affecting the field recorded at the monitors.

After these changes the results for the transmission at the “out” monitor in the frequency range 8-10THz are shown below:

This plot shows a peak near 10THz, which is not too far from the results shown in the paper. Some other things to improve the simulation are:

  • Increase the simulation time to make sure the autoshutoff decreases sufficiently. The results above were obtained from a simulation where the autoshutoff went down to ~1e-3. The simulation seems stable so by increasing the simulation time the autoshutoff level should go down even more.
  • The mesh should be refined in the region of the ribbons, especially near the gaps (where the discontinuities in the propagation occur).

How to excite edge modes in a ribbon waveguide using dipole source?

Hi federico,
Thanks for best advise.
I will come back soon and will ask my questions.



I could find first peak near to paper result.

I have a question:
In paper is said that relaxation time or Tao is 0.3 ps.I calculated scattering rate was near 1 mev with this post
But I could reach to paper result by 0.1 mev scattering rate.
What is problem?



can anyone tell me what is the problem?
I am confused.

Thanks for the help.


Hi Dezyani,

Sorry for the wait. I took a look at the results when the scattering rate is set to 1meV and they are not as close to the paper as for 0.1meV. There are a couple of things that might be happening:

  1. The results have not converged yet for the mesh we are currently using so a convergence test would be good to see if there is any change when refining the mesh in the mesh override regions.
  2. It would also be good to run a sweep over a few single-frequency simulations to compare with the broadband results you have so far. The reason is that the mode source uses the field profile at the center frequency for all the frequencies in the desired range in a broadband simulation and this might lead to inaccurate results.

Hope this helps. Let me know if you don’t see any significant changes after these tests.

split this topic #14

A post was split to a new topic: How can find phase shift at two sides of the rectangular resonator in FDTD solutions?

split this topic #15

A post was split to a new topic: How to excite edge modes in a ribbon waveguide using dipole source?


Hi Dezyani,

One thing you might want to try is increasing the y and z span of the simulation, especially the z span. It is possible that the PML is too close to the structure and it could be interfering with the injected mode.


for test,how much should be simulation span?your purpose is half of wavelength?how set pml boundaries?



Hi Dezyani,

The “half-wavelength distance” is sometimes not enough when looking at modes. The only way to test this is by increasing the z span and checking the results as in a convergence test. It is also useful to look at the plot of the modal fields from the mode source or mode expansion monitor in logarithmic scale. That way you can see more clearly if the modal fields have decayed enough when they reach the PML