Band structure calculation of layered dielectric media

mvemve Member Posts: 4


I would like to calculate and plot the band structure of the following structure in Lumerical FDTD:

  • 1D photonic crystal which consists of periodic layered dielectric slabs (alternating GaAs and Air)
  • the structure is periodic in x-direction and homogeneous in y- and z- direction
  • unit cell size is 1um in x and in y and z i also set it to 1um (however y&z should not be relevant since it is a 1D photonic crystal and i am only interested in knowing the band structure along the x-direction)

This is what I did:

These are the problems and questions:

  • the band structure object seems to return acceptable results in the 'fs' and 'spectrum', however the kx sweep gives wrong results (see screenshot) after plotting it with the script
  • It seems to be that the kx sweep is not executed properly, how can I fix this? I do not fully understand how the kx sweep is performed and thus do not know how to fix my problem
  • what/how is the importance of defining parameters under the 'model' in the object tree? To my understanding the kx needs to be changed in the FDTD and dipole cloud for the sweep, and this is why i need to 'overwrite' the parameters through the model setup; is this correct?
  • in the settings of the FDTD, when do i enter kx = pi/a as a value in SI units and when do i pick 'band structure' as unit?

If someone can explain me the proper setup and important points/steps to consider when calculating the band structure, I would be very thankful. I do not have a full overview of it yet and would like to learn how to adapt it to other cases as well.

Thank you!

Best Answer

  • kjohnsonkjohnson Posts: 218Ansys Employee
    Accepted Answer

    Hello @mve ,

    The model setup script sets the properties of the simulation objects based on the model setup parameters/properties. When the kx property is changed by the parameter sweep, all of the simulation objects should be updated with the correct settings for this kx value by the model setup script. It should be changing the "bloch units" to "SI" in line 24, but based on your screenshot of the FDTD boundary conditions dialog window it's not working. I think this is why the results aren't changing over the kx sweep. What happens when you click the "Test" button for the model setup script in Layout mode? Does the script complete successfully?

    It's up to you whether or not you want to use bandstructure or SI units. In the example the sweep parameter is set using bandstructure units, but this is converted to SI units by the model setup script.


  • mvemve Posts: 9Member

    Yes this was the issue! The script in the 'model' setup could not access one of the parameters and so couldn't properly run, I fixed this now and the sweep works!

    Thank you very much!!

Sign In or Register to comment.