Photonics

Photonics

Why the kerrnonlinear model cause energy loss in pulse propagation ?

Tagged: ,

    • qza0505
      Subscriber

      Hello!I am trying to study the influence of kerr effect on optical pulse propagation in a SOI waveguide by using the kerrnonlinearmaterial plugin that Lumerical provide. Strangely,the simulation result shows about 45% of energy loss that shouldnt have appeared(kerr effect only change the refractive index).Im wondering where the loss derived from, here are the simlulation details:

      The parameters of kerrnonlinear model are specified below: Permittivity equals the square of 3.48(the refractive index of silicon in 1550nm), and Chi3 value is derived fromFDTD Analysis of Two-Photon Absorption and Free-Carrier Absorption in Si High-Index-Contrast Waveguides

       

      The SOI waveguide is 450nm*220nm and surrounded by SiO2,the propagation length is 25 micrometers.At 0.1 and 25 micrometers away from the TE mode source I set point and 2D timemonitors to check the spectrum and pulse power:

       

      The pulse length is 200fs at 1550nm. In order to see the broadened spectrum, the source amplitude is set to 3e9V/m:

      Here are the results:

      The power_inand power_outare the transmitted power calculated by integrating the Poynting vector, which shows 45% loss of pulse energy.the intensity of E on XOY plane also gradually decreased.

      Thank you and looking forward to your reply!

    • Guilin Sun
      Ansys Employee

      From the image and result, it seems the mode source is not well supported by this waveguide, as its intensity decreases sharply with propagation distance.

       

      Could you please check the mode source and make sure the mode fields are not truncated by PML and the mode source is large enough.

      In addition, you do not need to reinstegrate the Poynting vector as the power-monitor can directly give you accurate transmission.

       

      You may also enable "frequency dependent profile" and have 10 to 20 frequency points to overcome the problem of frequency-depedent mode profiles.

      • qza0505
        Subscriber

        Thank you for your reply! I did the following work according to you instructions

        1. First I check the mode profile of mode source as shown below, FDTD and mode source field are set to be 2 micrometers larger than the waveguide so I think theres no truncation?

        2. I set a power monitor at the end of propagation to see T, basically its the same as result from time monitor.

        3. I set the "frequency dependent profile" in mode source and tried 10 to 20 frequency points, but the loss is still there as before.

        4. I also set a movie monitor on XOY plane to check the pulse shape in propagation, but in the video it looks like a plane wave and tranmitt to both directions???

        The results are really confsing, what else can I do? Looking forward to your reply!

    • Guilin Sun
      Ansys Employee

      Please elaborate more regarding to "45% loss of pulse energy", how did you calculate it?

      "the intensity of E on XOY plane also gradually decreased." I think it is reasonable: 1)its power is transfered to other wavelenth due to nonliearity; 2) the material has loss.

      When you use 10 points for field profile, what is the frequency range? does it include the generated wavelengths? when the generated wavelengths have resulting intensity close to the fundamental wavelength, the ninlinearity might be too high! although Chi3 is on the order of -19, what is the source amplitude? is the index change caused by the nonlinearity a small pertubation, or on the order of 0.01 or larger? please verify before the simulation. In addition, does the nonliearity work for the source bandwidth or word onlt at one single wavelenth?

      Please also check the theory and see what is its assumption.

      • qza0505
        Subscriber

        Thank you for your continuing help! According to your line of thought, I checked the simulation detail as follow:

        1. I calculate the pulse energy by integrating the poynting vector from 2D time monitor, which I set at 0.1 and 25 micrometers away from the TE mode source as input and output. Heres the script I use to calculate the pulse energy:

        p_in = getdata("0.1μm 2D Y-normal time monitor","power");

        t_in = getdata("0.1μm 2D Y-normal time monitor","t");

        power_in = integrate(p_in,2,t_in);

        2. When I change the point for field profile from 10-20, the frequency range doesnt change: for the mode source, the 200fs pulse centered at 1550nm has FWHM from 1540 to 1560nm. And for the monitor, I set the frequency range from 1400 to 1700nm in set global monitor settings in the DFT monitor(I didnt find that in time monitor).

        3. The source amplitude is set to 3e9, and the index change is about 0.291.(I calculated by the following formula in ”FDTD Analysis of Two-Photon Absorption and Free-Carrier Absorption in Si High-Index-Contrast Waveguides”)

         

        This index change is pretty larger than 0.01, but according to the theory model of kerrnonlinear, all I need is to entry only one permittivity value(which is the square of index, 3.48), and this model seems to have nothing to do with wavelength?

        4. I also tried to set lower source amplitude or lower Chi3, unsurprisingly the loss is gradully disappearing, but the broadened spectrum is also returning to its original source spectrum, making this simualtion seems to be a linear one.

        Thank you for your patient guidance, here are my entire script(plugin parameters are listed before), could you please take a glance in case I made some stupid mistake? I m really eager to know why this happened.

        clear;
        switchtolayout;
        deleteall;
        material_sio2 = "SiO2 (Glass) - Palik";
        material_nonlinear = "kerrnonlinear";
        cwnorm;
        amplitude=3e9;
        pulselength=200e-15;
        waveguidelength=25e-6;
        buffer1=10e-6;
        substratethickness=6e-6;
        buffer2=3e-6;
        width=450e-9;
        height=220e-9;
        addrect;
        set("name","SiO2substrate");
        set("x",0);
        set("y",buffer1+(waveguidelength/2));
        set("z",0-(height/2)-(substratethickness/2));
        set("x span",20e-6);
        set("y span",waveguidelength+2*buffer1);
        set("z span",substratethickness+30e-6);
        set("material",material_sio2);
        addrect;
        set("name","waveguide");
        set("x",0);
        set("y",buffer1+(waveguidelength/2));
        set("z",0);
        set("x span",width);
        set("y span",waveguidelength+2*buffer1);
        set("z span",height);
        set("material",material_nonlinear);
        addfdtd;
        set("x",0);
        set("x span",width+buffer2);
        set("y",buffer1+(waveguidelength/2));
        set("y span",waveguidelength+9e-6);
        set("z",0);
        set("z span",height+buffer2);
        set("simulation time",50e-12);
        addmode;
        set("name","fundamental TE mode source");
        set("mode selection","fundamental TE mode");
        set("injection axis","y-axis");
        set("direction","Forward");
        set("amplitude",amplitude);
        set("frequency dependent profile",1);
        set("number of field profile samples",10);
        set("x",0);
        set("y",buffer1);
        set("z",0);
        set("x span",width+buffer2);
        set("z span",height+buffer2);
        set("set time domain",1);
        set("pulse type","standard");
        set("frequency",193.414e12);#1550nm
        set("pulselength",pulselength);
        set("offset",pulselength*2);
        addpower;
        set("name","XOY power monitor");
        set("monitor type","2D Z-normal");
        set("x",0);
        set("x span",width+buffer2);
        set("y",buffer1+(waveguidelength/2));
        set("y span",waveguidelength+9e-6);
        set("z",0);
        setglobalmonitor("use wavelength spacing",1);
        setglobalmonitor("use source limits",0);
        setglobalmonitor("minimum wavelength",1.4e-6);
        setglobalmonitor("maximum wavelength",1.7e-6);
        setglobalmonitor("frequency points",100);
        addmovie;
        set("name","XOY pulse movie monitor");
        set("monitor type","2D Z-normal");
        set("x",0);
        set("x span",width+buffer2);
        set("y",buffer1+(waveguidelength/2));
        set("y span",waveguidelength+9e-6);
        set("z",0);
        addtime;
        set("name","25μm point time monitor");
        set("monitor type","Point");
        set("x",0);
        set("y",buffer1+waveguidelength);
        set("z",0);
        set("output power",1);
        addtime;
        set("name","0.1μm point time monitor");
        set("monitor type","Point");
        set("x",0);
        set("y",buffer1+0.1e-6);
        set("z",0);
        set("output power",1);
         
        addtime;
        set("name","25μm 2D Y-normal time monitor");
        set("monitor type","2D Y-normal");
        set("x",0);
        set("x span",width+buffer2);
        set("y",buffer1+waveguidelength);
        set("z",0);
        set("z span",height+buffer2);
        set("output power",1);
        addtime;
        set("name","0.1μm 2D Y-normal time monitor");
        set("monitor type","2D Y-normal");
        set("x",0);set("x span",width+buffer2);
        set("y",buffer1+0.1e-6);
        set("z",0);set("z span",height+buffer2);
        set("output power",1);
        run;
        p_out = getdata("25μm 2D Y-normal time monitor","power");
        t_out = getdata("25μm 2D Y-normal time monitor","t");
        p_in = getdata("0.1μm 2D Y-normal time monitor","power");
        t_in = getdata("0.1μm 2D Y-normal time monitor","t");
        power_out = integrate(p_out,2,t_out);
        power_in = integrate(p_in,2,t_in);
    • Guilin Sun
      Ansys Employee

      I think the problem is "the index change is about 0.291" . It is too large to be considered as purturbation. It will certainly creates other frequencies.  So the injection power is lost to other unwanted wavelengths. You can check the spectrum from a time monitor, and use log scale-frequency you will  notice other wavelengths.

      In reality, you may not get such large index change, or you want to avoid it! The pertubation is propotional to Chi3*Intensity. Therefore if Chi3 is correct you will need to reduce Intenisty, or check Chi3 to see if it is the real number for the material. Chi3 should not be arbitrary but only the real material property. Please modify them accordingly.  Of course you do not need to use very weak intensity. you will need to use proper intenisty for a given Chi3. 

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