Photonics

Photonics

Topics related to Lumerical and more

Issue with findmodes; in mode solution

    • Md. Atiqur Rahman
      Subscriber
      1. I have two machines running lumerical FDTD and Mode solution. One of them can excute "findmodes;" and calculates modes in waveguide. Another machine excute "findmodes;" without issue yet it can't calculate modes. how to solve this and why this happening?
      2. how can I modify "fit tolerance" and "imaginary weight" of "Si (Silicon) - Palik" using script as it is showing i can't modify them?
    • Amrita Pati
      Ansys Employee

      Hi Atiqur,

      1. This is a bit strange. Are the waveguide simulations running on the two devices exactly same? Are they using the same mesh and material fit?
      2. The materials available in the material database by default are protected. So, you will first have to create a copy of this material and then set the desired properties. You may use the following code to acheive this:
      mname = copymaterial("Si (Silicon) - Palik");
      setmaterial(mname,"imaginary weight",100);
      setmaterial(mname,"tolerance",0);

      Here, copymaterial creates a copy of Si and returns the new name of the material. This output is used as one of the arguments of setmaterial to set the fit tolerance and imaginary weight.

      Regards,
      Amrita

    • Md. Atiqur Rahman
      Subscriber

      Thanks for your informative responses.

      1. Yeah, same .lsf file is used in both machines.
      2.  Thanks for clarification. I tried something similar before but didn't work, but now working fine.
    • Amrita Pati
      Ansys Employee

      Hello,

      Are they using the default uniform mesh in FDE? In the file where you can not find the modes, I would suggest you to add a finer mesh in the waveguide region using mesh override and see if you are able to find the modes now. Also, could you please check the material fitting in the Material Explorer and see if both the simulations are using the exact same values of index for each structure?

      Regards,
      Amrita

       

    • Md. Atiqur Rahman
      Subscriber

      Here is the lsf file I tried to run on both machines. I have checked everything as you have instructed but still no solution.

       

      clear;
      clc;


      deleteall;

      #save("D:\Device with Script\Neff Generation\Index curve Generation.fsp");

      new_material = copymaterial("Si (Silicon) - Palik");
      setmaterial(new_material,"imaginary weight", 10);
      setmaterial(new_material,"tolerance", 0);

      addfde;
      set("solver type",1);
      set("x", 2e-6);
      set("y", 0);
      set("y span", 3e-6);
      set("z", 0.11e-6);
      set("z span", 3.3e-6);
      set("define y mesh by", "maximum mesh step");
      set("define z mesh by", "maximum mesh step");
      set("dy", 0.01e-6);
      set("dz", 0.01e-6);
      set("fit materials with multi-coefficient model", true);
      set("wavelength start", 1.53e-6);
      set("wavelength stop", 1.565e-6);

      addrect;
      set("name","Cladding");
      set("x min", 0e-6);
      set("x max", 3e-6);
      set("y min", -3e-6);
      set("y max", 3e-6);
      set("z min", -2e-6);
      set("z max", 2e-6);
      set("material","SiO2 (Glass) - Palik");
      set("alpha", 0.2);
      set("override mesh order from material database", true);
      set("Mesh order",5);

      addrect;
      set("name","Waveguide");
      set("x min", 0e-6);
      set("x max", 3e-6);
      set("y", 0);
      set("y span", 0.7e-6);
      set("z min", 0);
      set("z max", 0.22e-6);
      set("material","Si (Silicon) - Palik Copy 1");


      setanalysis("wavelength", 1.53e-6);
      setanalysis("stop wavelength", 1.565e-6);
      setanalysis("number of points", 36);
      setanalysis("number of test modes", 5);

      findmodes;

      selectmode(1:2);
      setanalysis("track selected mode",1);
      setanalysis("detailed dispersion calculation",1);

      frequencysweep;

      n=getdata("frequencysweep","neff");
      f=getdata("frequencysweep","f_D");

      plot(c/f*1e9,n,"Wavelength (nm)", "Effective index (neff)");

    • Amrita Pati
      Ansys Employee

      Hi,

      I used your script and I was able to find modes. May I know which release of MODE are you using? Thank you!

      Regards,
      Amrita

    • Md. Atiqur Rahman
      Subscriber

      I am using "Lumerical 2023 R1" version on both machines.

    • Amrita Pati
      Ansys Employee

      Hi,

      This is unusual. I tested the same script on two different machines on the same release and I can successfully find the modes. From here all I can think of is performing a clean installation. In the machine having issues, I would recommend you to uninstall and install Lumerical to see if that helps. Thank you!

      Regards,
      Amrita

Viewing 7 reply threads
  • You must be logged in to reply to this topic.