Diabetes sensor reflection ripples problem


Dear @hamada

I increased the simulation time to 5000 fs and used a standard BC with 32 layers. Simulation is long enough that almost triggers the auto shutoff level. Here is the result:

Your simulations are challenging because metal objects are cut by PML layers and take long time because of the resonator. While I was expecting to get better results with stablized BC, standard PML boundaries seem to work better in your case. I have attached modified simulations for your review.

091_modified.fsp (251.6 KB)



thanks a lot for that effort


how did you adjust the override mesh is that structure in the modified model?

according to what you chose the mesh cell??

Using dipole to mimic quantum dot emission

Dear @hamada

I guess the main effort was to make sure we have enough mesh cells in the z-direciton of Gold Disk and I chose such that we have 5 cells on the z-direction. We could have choose it to cover only Gold Disk but the current setup is also good/precise enough for the purpose of this work I guess.

Mesh along the x- and y-direction is set such that Gold Disk edge matches the override mesh. Thanks to Lumerical’s conformal mesh technology (CMT), software avoids staircase effects where more than two objects are inside one mesh cell.

I hope this answered your question.


i did what you recommended. i made the PML further from the ground gold plane and i put a silicon to separate between them. accordingly, all ripples die out and the graph became ok as the file fixed ripples problem is attached

Fixed ripples problem.fsp (249.1 KB)

after that, the only change that i did is that, i decreased the range of the source to be from 3150 to 3350 nm to take the resonant peak only, the graph changed and the ripples appeared again in the file called (ripples again) .

ripples again.fsp (249.0 KB)

could you please interpret to me what happened?


Dear @hamada

Does the modified geometry matches your fabricated device? Please note that if you want to study your sensor and capture all the physics you must use an exact geometry in your simulations (unless you have enough reason that you can simplify your geometry). Please note that the new geometry assumes that your devices are grown/fabricated on thick silicon substrate.

Regarding the first simulation (fixed ripples):
I noticed that you are using a very coarse mesh. While you don’t see much ripples, your results does not converge. This means that when I used a finer mesh, I found out the second dip disappears. Thus, second dip seems to be not real. Here is the result where I used a 20nm * 20nm * 20nm override mesh with 6000fs simulation time:

Fixed ripples problem_modifiedBK.fsp (249.8 KB)

You can read more about convergence testing here:
Convergence test is an important step for every simulation. You want to make sure that you results does not change by changing PML layers, mesh size, FDTD simulation region etc.

Then I focused on the ripples again case where you have changed only the source bandwidth compared to fixed ripples case. As you said, you started seeing ripples. I did a lot of testing and I was really struggling to make the simulation works (which finally did). But before telling you the answer, I thought it might be a good idea to share with you what I tried (unsuccessful trials for this case but it might solve the problem in other cases). I kept an eye on autoshutoff level for all of these simulations because I knew that if autoshut off level is high when simulation stops, it might produce ripples in which I increased the simulation times even more:

  • Check the material fit and make sure that within your pulse length material is fit properly and you do not have weird behaviour such as sudden jumps. If this was the case you can modify the material fir from the available options as is shown below:

  • Increasing the simulation time to 10,000

  • using a finer mesh of 20nm * 20nm * 20nm

  • trying different PML layers (standard and steep angle because you are using periodic BCs) and varying the number of layers

  • modifying injected pulse by un-checking optimzied for short pulses option from Edit source tab

While these simulations give me some intution about the problems, I had to finally changethe FDTD mesh to be conformal variant 1 for it to work
:grinning:it worked! :slight_smile:yay :slight_smile::grinning:

I have attached the simulation file for you. Basically the changes are: I use a finer mesh of 202020 nm^3, 10,000 simulation time, and conformal variant 1 and the rest is similar to as your sipples again file. Plot is shown above and here is the simulation file for your review:
ripplesagain_SolvedBK.fsp (259.0 KB)

Sweep parameter for various thickness
Ring Resonator Extinction Ripples
How to eliminate the noise in the transmission spectra

i faced the same problem of ripples in the new model (that has silicon in the substrate) when i changed some dimensions.

the first file attached is the correct file without ripples if you run the index sweep in the parameters sweep and saw the reflection
no- ripples - file- index sweep.fsp (249.0 KB)

the second file is the file with ripples in he index sweep reflection result after changing few parameters
radius of gold disk changed from 143 to 110
radius of silica disk changed from 143 to 110 nm
i decreased the mesh xspan and yspan to be on the disks exactly
the periodicity (xspan, y span ) of silicon , ground gold, silica substrate and FDTD region changed from 1177 to 1180
File-with-ripples- after changing dimensions.fsp (249.0 KB)

my expectation is that the problem is with the mesh as i changed the periodicity dimension alone without the radii and the mesh and i got a correct graph.


Dear @hamada

Mesh might be the reason in your case. It is important to note that while you are changing the mesh size, you want to make sure that the results will converge by using a finer mesh. In your previous post, this was not the case even though you did not have ripples. However, when I used a finer mesh the second dip disappeared. My recommendation above are general and should solve the ripples problem in almost any cases.

Please note that since there are not a clear and straight forward answer for these types of simulations, we kindly ask users to apply our recommendations in their simulations.



i am sorry, could you please send me the recommendations again because i saw a lot of advices above?

Thanks a lot


Dear @hamada

In the second simulation file (files with ripples) even though your mesh override region boundaries match with the gold disk, it is not properly resolved because you are using a coarse mesh. I recommend to use 10 nm maximum mesh step sizes.

In your cases, I thought that when you change the size of the gold disk, different plasmonic modes are excited and you need to modify PML to account for the change. However, I am confused that changing periodicity (I assume you mean the size of FDTD region) the ripple problems has been solved. The other point is that you need to do convergence testing to make sure that your results are not changing with finer mesh, PML, and simulation region:

In the second case, I think you can modify the mesh (explained above), and change the auto shutoff level to even a lower value. I got some preliminary results with minor ripples, but I think you can try modifying PML until you are satisfied with the results.


why when i change the dimensions in the plasmonics simulation, ripples appear and results changes?



in the attached simulation, i solved the ripples problem by increasing the simulation time from 3000 to 10000. but still the peak of the resonance small and needs to reach 0.1 . could you help me solving tha problem please

192) P=1180 - n=1.33 - Dgold=250 - scripted - fs=10000.fsp (247.3 KB)


Dear @hamada

Looking at your plot, I noticed that you are not capturing enough frequency points in your monitor. Thus I decreased monitor range to be from 1550-1600 and with ~500 frequency points.

Here is the result:

Generally when you have a high-Q cavity you need to use a high number of frequency points in the monitor to be able to resolve the resonance completely.



Hi @hamada

I have looked at your file. I think one challenge of your simulation is that it has very strong resonance, meaning light is trapped in the cavity and it will take a long time for light to leave the simulation region. For this reason, you will need a very long simulation time to reduce the ripples.

Other than the simulation time, you can also reduce the Auto Shutoff (ASO) level from 1e-5 (default) to say 1e-6. This means that the solver will determinate the simulation at a lower ASO level, meaning more time to simulate the light trapping behavior.

After all, this is more like testing the convergence. The concept of results convergence is that you will be changing simulation parameters until the results become stable. This can be done to reduce simulation errors. Common parameters for convergence testing includes, mesh size, PML layers, PML proximity, etc. You will need to perform iterative tests to assess the effects of difference parameters on your simulations. Therefore, convergence testing can be time consuming. You can refer to this page for more information and example.

I downloaded your file and try to plug in some parameters to see if it reduces the ripples, basically I have used,

  • longer simulation time
  • lower ASO level
  • smaller mesh
  • larger PML proximity
  • more PML layers

compared to your original file. However, you will need to perform convergence tests to confirm the optimized values for the parameters.

For the plot below, you can see that the ripples are reduced noticeably. For the amplitude of the dip, you can refer to @bkhanaliloo’s comments to increase the number of frequency point for a higher resolution plot to better resolve the peak.

The plot was created using this file 192) P=1180 - n=1.33 - Dgold=250 - scripted - fs=10000.fsp (249.5 KB)



I have another issue, but related to that topic

in my structure, instead of the gold disk, i wanna draw a gold gear which is a complex structure, but the issue is that complex structure is not on lumerical, so how can i draw it.

The gear is described in that paper http://ieeexplore.ieee.org/abstract/document/7790111/

could you please help?


Dear @hamada

I think you can use a polygon and define the vertices to build this structure. After defining vertices in (x,y) coordinates, you can define the thickness as z component. I don’t have a very good example up my head, but I think the links below will be a great help for you:





again to the ripples problem. i did a simulation with different dimensions than before for the structure. The result was ripples with very small peak, while the same simulation was done by CST and it generated a correct result

you can draw the structure with the specified dimensions. after running the script on FDTD solver, run the sweep called refractive_index_sweep. finally see the result of the Reflection graphs on both background index 1.33 and 1.34

kindly find the attached script

277) Scripted model.lsf (10.9 KB)


Could you please tell me how to write the script for nested sweep? i can do that GUI, but in the script , the function insertsweep always fail , So Could you please help?


You need a much finer mesh.

Please go through this KnowledgeBase article https://kb.lumerical.com/en/layout_analysis_test_convergence_fdtd.html


You need to use this command for the inner sweeps: addsweepparameter

See this KnwledgeBase article for an example using this command https://kb.lumerical.com/en/sweeps_sweep_scripting_commands.html

Also look at this KnowledgeBase article https://kb.lumerical.com/en/sweeps_nested_sweeps.html