Thermally tuned Waveguide tutorial trouble

mattsarg55mattsarg55 Member Posts: 4

Hello fellow lumerical users,

I am new to the software and was attempting to do the thermally tuned waveguide tutorial found here:

I was able to complete the tutorial succesfully but I am attempting to apply the logic found here to my own waveguide. I create the entire structure in HEAT, run a sweep, download the temperature grid, and upload that info to MODE to get this (Note: I only included the waveguide and a bit of the surrounding material in MODE which is why my temp grid structure is much longer):

However, once I begin running the script provided in the tutorial:


My temp grid shrinks back to the origin and I see this:

an I still get results for my sweeps but they are all zero. Why is this happening? Do I need to change something in the provided script? Also, where does the equation, Phase = 2*pi*(neff-neff0)*L/lambda come from? Does it have a name?

Hopefully someone can help me with this as lumerical seems to be an amazing program and I want to know how to apply it to the work at my job


  • gsungsun Posts: 1,102Ansys Employee

    This script file does not set simulation region, nor the attribute size. so you will need to check your FDE settings. Before doing sweep, try to calculate modes at one temperature, by assigning temperature index, and see of the simulation region is, you add a "break" after this section:




    neff0 = real(getdata('mode1','neff'));


    and see if it works as expected.

    "where does the equation, Phase = 2*pi*(neff-neff0)*L/lambda come from? Does it have a name?"

    As you can see, the script file gives neff0 in the above script, which is a reference point. At other temperature, the neff will be different from it, and thus creates a phase change.

    Please test step by step.

  • mattsarg555mattsarg555 Posts: 9Member

    Hello! Thank you for the response! I went through it and it is making much more sense!

    I am still wondering about the equation, I understand the effective indexes and how we are getting them but what about L? I know we assign its value but do I need to change this for my own experiments? What does the variable 'L' in the script represent?

  • gsungsun Posts: 1,102Ansys Employee

    L is the length of the device, so 2*pi*(neff-neff0)*L/lambda gives a phase difference to the reference temperature. Think that a waveguide mode with neff,and neff0 will create a phase difference through a propagation length of L.

  • mattsarg555mattsarg555 Posts: 9Member

    Gotca! Thank you gsun! Finally, is the phase difference in degrees or radians?

  • gsungsun Posts: 1,102Ansys Employee

    it uses pi, so it is radian. You can change it to degree if you want.

  • mattsarg555mattsarg555 Posts: 9Member

    Okay! So i may have said that I understood your explanation of the variable 'L' without actually looking at the model. If we look at the model used in HEAT in the example given:

    the length of this object in the x is 100um and in the y direction is 50um. When we say the propagation length, are we refering to the 'z-direction'?

  • gsungsun Posts: 1,102Ansys Employee

    yes, you are right. it is the propagation length. Phase can only be accumulated through propagation for regular waveguide.

  • mattsarg555mattsarg555 Posts: 9Member

    Great! Glad I understood that, my final question is one that you may or may not be able to answer... in the example given we find a phase shift of 128 degrees(roughly 2.2 radians)and that seems to be quite large! I am new to photonics so having a shift be that large at such small input powers seems destructive and I would expect it instead to be on the order of only a few degrees. Why is this? If you cannot answer this then I totally understand as it clearly deals more with optical theory and not the software.

  • gsungsun Posts: 1,102Ansys Employee
    edited April 5

    Since this is a thermally modulated device, so the result will depend on the temperature. In addition, your simulation can be different from real experiment, since simulation region is limited, and you may use a constant power source and insulate boundaries. With time, if the convection is less than the source power, the temperature will constantly increase. So you may need to check the max temperature and see if it is reasonable. if it is too high , it might mean that your boundary conditions are improper.

    In addition, the phase change can be purposely to be as large as 180 degree, depending on the device its self. This will be thermal modulation.

    I hope this helps.

  • yonasyonas Posts: 2Member

    Hi @gsun , thank you for series replies you shared in this forum. Regarding to the above discussion, I have similar problem related to proper setting of the boundary condition. how can we know whether the boundary condition set is correct or not? second question is how can we calculate the power consumption by the heater? do we multiply the current reading with the supplied voltage value? thank you in advance

  • gsungsun Posts: 1,102Ansys Employee
    edited October 4

    Boundary conditions are vital for FDTD simulation, as they act as initial conditions in solving Maxwell's equations. I wrote a special post here Ansys Insight: How to correctly set the boundary conditions in FDTD simulations

    "power consumption by the heater": please write a new post and describe what the power do you mean: the optical power or the heat power.

Sign In or Register to comment.