############################################################################# # This script plots the dispersion relation and effective index of the two # almost degenerate TE and TM modes supported by this anisotropic rib waveguide. # # Copyright Lumerical Solutions Inc. 2017 ############################################################################# clear; closeall; # mode calculation switchtolayout; run; findmodes; # extract TE mode selectmode(1); frequencysweep; f = getdata("frequencysweep","f"); k0 = 2.0*pi/c*f; neffTE = getdata("frequencysweep","neff"); betaTE = getdata("frequencysweep","beta"); # exctract TM mode selectmode(2); frequencysweep; neffTM = getdata("frequencysweep","neff"); betaTM = getdata("frequencysweep","beta"); # plot kx vs wavenumber plot(k0*1e-6,real(betaTM)*1e-6,real(betaTE)*1e-6,"k0 (rad/um)","kx (rad/um)","kx vs wavenumber (using FDE)"); legend("TM","TE"); setplot("x min",3.8); setplot("x max",4.3); setplot("y min",5.6); setplot("y max",6.2); # plot neff vs frequency plot(c/f*1e6,real(neffTM),real(neffTE),"wavelength (um)","effective index","neff vs frequency (using FDE)"); legend("TM","TE"); setplot("x min",1.4); setplot("x max",1.7); setplot("y min",1.43); setplot("y max",1.47);