Dipole source with close vicinity to structure


I’m trying to simulate silicon nano structure shaped as a cylinder (r~60nm, h~100nm) standing on silicon substrate. On the top, I added 1nm thick SiO2 to include in the structure the native oxide layer. I placed a dipole source above the SiO2 layer (less than nm above the structure), to simulate exciton located on the Si structure. I would like to calculate the QY and Purcell factor. After I read some relevant texts on KB and KX, I’ve encountered some issues.

  1. Because of the small distance of the dipole and the thin layer on top of the cylinder I would need to use mesh size<1nm. The relevant frequencies for the simulation are in the visible spectrum range so the fine mesh will make it unreliable to use ‘dipolepower’ command (mesh<wavelength/1000).
    To overcome this limitation I can use the ‘dipole’ transmission box from the QY analysis group to calculate Purcell factor. I was wondering how small the box and how fine the mesh should be to give good results?

  2. Another thing I was not sure about, what should be the size of the ‘structure’ transmission box to calculate the QY? Should it include the substrate? Is there some minimal distance from the structure required in order to achieve good results?

Thanks :slight_smile:

Dear @tsafrirabir

Thank you for reaching out.

As you mentioned, in this case we are pushing the limits of our simulations and dipolepower won’t be reliable in this case. You can find the approached that inspired me here with useful links and also our KB example here.

In short, the box approach is the only reliable approach and it should work, however implementing it might be challenging and requires some considerations. I tired to do some convergence testing in 2D with surrounding air, source wavelength at 1550 nm and then running a sweep over mesh sizes for different trnas-box sizes. At this point, mesh2 was disabled to do some quick runs. Here is my simulation file:

test_dipole_BK.fsp (293.9 KB)

The mesh override region (mesh1) overlaps with the trnas-box analysis that is used to extract the dipole transmission data (i.e. mesh1 override has the same geometry as trans-box). So, lets assume that you want to measure the transmitted power for three different box sizes (10nm10nm, 5nm5nm, 2nm*2nm) while sweeping over mesh size. So for example if your mesh size is 0.2 nm, you will have 50, 25 and 10 mesh cells in your trans-box region, respectively. Here are the results:

region 1: Many thanks to @kchow, it looks like the mesh discrepancy between a dense mesh around the dipole (mesh1) and relatively coarse mesh for the remaining simulation region (mesh2 was disabled) results into some reflection or numerical errors, and as a result the measured transmission is less than 1 here. While this is not a limit to trans-box approach, it seems that problem comes from mesh discrepancy. We run simulations by defining a second override mesh (mesh2) to decrease the mesh discrepancy in the FDTD simulation region and we could get results close to 1 in region 1 using the trans-box (my attached simulation file includes the modifications, but it might take you a while to run it as it uses a very fine mesh). This means that even the trans-box approach works fine for very small mesh sizes, you need to have an extra attention on other issues that might arise. However, with proper meshing and consideration, region 1 should show transmission of 1.

region2: In our setup, this data are more reliable, and we can get results around 1. The small peaks are probably caused because of some other numerical errors.

region3: The mesh becomes very coarse that trans-box sits inside the dipole source region (generally has a size of 2 mesh * 2 mesh), and trans-box monitors can’t capture all the transmitted light. This is more obvious for a 2 nm *2 nm box.

I got a similar results for a trans-box of 1 nm * 1 nm (I guess this is what you are trying to simulate) as 2 nm * 2 nm case:

I wasn’t quite sure what QY stands for but I guess as long as you have enough mesh cells inside your transbox and you do a proper meshing for the rest of simulation region, you should get appropriate and reliable results.

I hope this could give you some hint performing your simulation.


Thanks a lot!

Sorry, by QY I meant Quantum Yield, which I was mistakenly confused with Quantum Efficency (QE).

Another thing I wanted to make sure I’m getting right. Is it alright to use the same box surrounding the dipole from QE analysis group to calculate the Purcell factor or should I place another box of monitors?

I’ve also noticed that in calculating the transmission from the monitors it is being normelized by sourcepower. Does it mean the transmission from the dipole’s box is the Purcell factor?

Hi @tsafrirabir

I’m glad that I could answer your question.

As long as the box justifies our earlier concerns regarding meshing, it should be good to go!

Yes. If you select the trassbox from object tree then choose Edit->Analysis->script, you will see that we calculate transmission for all 6 planes/monitors. The transmission command is normalized to source power. This means that what you are calculating is the Purcell factor which the output should be one in free space (with proper meshing!).

@bkhanaliloo, can you explain why there are numerical errors when calculating dipolepower for a dipole very close to a dispersive medium? I looked through the lumerical site, but never found an explanation.

Dear @epalacios

Injecting a dipole source in dispersive material has theoretical challenges. In dispersive medium, the imaginary part of greens function start to diverge and result an infinite injected power into simulation. You can read more about it here.

Every dipole requires a few mesh cell for proper injection. This area is defined by white box around dipole in FDTD. When dipole is in close vicinity of a dispersive material, and mesh is not fine enough to resolve dipole in non-dispersive medium, the white box might overlap with the dispersive material leading to aforementioned problem.

In the first plot in my earlier post, I studied the number of mesh cells required to properly resolve the dipole. In other words, when we use finer mesh (defined by box 1 and box 2 in the plot), dipole will inject all of its power in non-dispersive medium, resulting in proper injection.

I hope I could answer your question.

1 Like