ZekeriyaMehmetZekeriyaMehmet Member Posts: 1

How can I obtain the data in the car graph that I obtained using the program so that I can see the frequency value corresponding to each band diagram?

Using this data I have obtained, I want to draw the EFC graph in a different program (for example, Matlab), because the lines in the EFC graph given by Lumerical are not clear and therefore, unfortunately, I cannot do the dispersion work.

Besides, apart from the given tutorial, can we get the EFC graph using the Mode program? Because when using the script given in the tutorial, it draws a nested area instead of separate lines, and dispersion cannot be done from this area.

As an example, I am adding an EFC graph that I obtained using the script given in the tutorial.

Thank you very much for your help. Best regards

Best Answer

  • gsungsun Posts: 1,376Ansys Employee
    Accepted Answer

    Not sure what is "car graph". From the band diagram you cannot plot EFC, since it has only data at the highly symmetry points, and you may need to have complicated interpolation based on theory if irreducible Brillouin zone.

    FDTD is a time domain method, so the principle is not the same as the plane wave expansion method, where you can easily get the EFC, and you can see that the band structure is point-wise instead of smooth lines. Based on my experience in photonic crystal, I developed the EFC method using spatial Fourier transform as shown in the online example. However, due to discretization, the magnitude of the Bloch wave is not uniform, and the Fourier transform has numerical errors, the EFC lines look thick. One may post process the data to get improved result.

    You may also develop other methods to get the EFCs.

    From the band structure simulation script file, you have the band structure data, point wise. I am not sure what the dispersion you mean here. If you want to calculate the refractive index vs frequency at a given direction, you could do this based on the fundamental definition neff=c/v=k/k0 where k is given in the sweep and you can get k0 from frequency in free space.


  • ZekeriyaMehmetZekeriyaMehmet Posts: 2Member

    First of all thank you very much for your reply.

    The "car graph" writing is completely my fault sorry, it should have been the EFC graph. I need the data of the EFC graph we obtained from the tutorial, because as you mentioned, EFC lines are thick and this data needs to be edited.

    Actually, I can easily obtain EFCs using MPB and MATLAB programs, but unfortunately, MPB programs give the EFC graphics of photonic crystals in hexagonal structure in an oval shape. This can cause us to disperse in ovality and misunderstand the direction of the self-collimation of light within the structure. That's why I wanted to use the Lumerical program. As an example, I am adding EFC images that I got from the MPB program and the Lumerical program.

    The first photo is the comparison of the EFC taken from the article and the EFC plotted in the MPB.
    The second photo is the comparison of the EFC taken from the article and the EFCs drawn in Lumerical.

    Thank you for your help.

    Best regards.

  • gsungsun Posts: 1,376Ansys Employee

    We do not know how the 3rd party tools work but only Lumerical. When simulating EFCs, a few things should be taken into account:

    1: Photonics crystal is periodic, however the FDTD meshing may not be periodic. Please check if the meshing of the unit cells is periodic. For example the holes are meshed exactly the same. If not, please use override mesh to the whole simulation, and make sure the mesh size is an integer fraction of the period. If the period is P, then the mesh size should be P/N where N is an integer. I suggest not to use many digits for the period. for example, period of 0.251um can be 0.25um. The band structure should not be very sensitive to the period since the manufacturing errors can be large

    2: Please use large enough the simulation areas. This is because the accurate spatial Fourier Transform requires zero field intensity at the edges. The smaller the intensity the better accuracy the result.

    3: In some cases the lattice resonance can be strong, thus you may need to use smaller autoshutoff min.

    4: Usually the EFCs are not sensitive to the dipole location. However, it can be. You could try to set the dipole at the corresponding Yee cell:

    So Ex polarized dipole should be located at Ex position. Due to dipole polarization and meshing it might be difficult to get ideal excitation, eg ideal dipole radiation (you may find more information from Taflove's publication).

    To get better EFCs from FDTD, more efforts are needed for the post processing.

  • SutanSutan Posts: 1Member

    Dear gsun

    I am trying to plot the isofrequency contour myself too for a 3D structure. I was just wondering, how about instead of just simulation around the perimeter of the IBZ, we calculated all the points within the BZ and then plot the complete 3D banddiagram. However, the issue arises while separating/ completing bands when some of the resonant points are not found/missing. Any hint, if I wanted to approach in such ways to get the iso frequency contour plot.

  • gsungsun Posts: 1,376Ansys Employee

    Missing points in the bandstructure is common, if the simulation time is not set properly. Please check the individual files and test different simulations time and see what value is proper. Ideally all the simulation files should use the same (short) simulation time. Occasionally you may need set the simulation time differently, through "model" script: set("FDTD","simulation time", time)

    Please try.

Sign In or Register to comment.