{{:modes111.png|}} 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