User Tools

Site Tools


guided_modes

function Guided_Modes(d,lamda)

n1 = 2.3278;
n2 = 2.2028;
n3 = 1.00;
k0 = 2*pi/lamda;
k1 = k0*n1;
aE = (n2^2-n3^2)/(n1^2-n2^2);
aM = (n1^4/n3^4)*(n2^2-n3^2)/(n1^2-n2^2);
V = k0*d*sqrt(n1^2-n2^2);

hdTE = [];
hdTM = [];
BgTE = [];
BgTM = [];
x = 0;
    while x+3 < V;
        syms h1d
        a2d = sqrt(V^2-h1d^2);
        a3d = sqrt((V^2)*(1+aE)-h1d^2);
        a3dm = sqrt((V^2)*(1+aM)-h1d^2);
        f = tan(h1d);
        g = (h1d*(a2d+a3d))/(h1d^2-a2d*a3d);
        q = (h1d/n1^2*(a2d/n2^2+a3dm/n3^2))/(h1d^2/n1^4-(a2d*a3dm)/(n2^2*n3^2));
        
        TE = f-g;
        TM = f-q;
        TEmode = vpasolve(TE == 0,h1d, [0.1+x,3+x]);
        hdTE = [hdTE;TEmode];
        TMmode = vpasolve(TM == 0,h1d, [0.1+x,3+x]);
        hdTM = [hdTM;TMmode];

        a2d = sqrt(V^2-TEmode^2);
        a2dm = sqrt(V^2-TMmode^2);
        a3d = sqrt((V^2)*(1+aE)-TEmode^2);
        a3dm = sqrt((V^2)*(1+aM)-TMmode^2);
        
        BTE = sqrt(k1^2-TEmode^2/d^2);
        BgTE = [BgTE;BTE];
        phiTE = atan((TEmode*(a2d-a3d)/(TEmode^2+a2d*a3d)))/2
        neffTE = n1*BgTE/k1;

        BTM = sqrt(k1^2-TMmode^2/d^2);
        BgTM = [BgTM;BTM];
        phiTM = atan((TMmode/n1^2*(a2dm/n2^2-a3dm/n3^2))/(TMmode^2/n1^4+(a2dm*a3dm)/(n2^2*n3^2)))/2;
        neffTM = n1*BgTM/k1;
        x = x + 3;
    end;
 hdTE
 BgTE
 hdTM;
 BgTM;
end
guided_modes.txt · Last modified: 2015/11/12 14:33 by tekoshar