CODE:
function F = myfun(b)
data = load('a.txt');
x = data(:,1); yn = data(:,2);
m=20; % number of section
n1 = 2.8924; %AlAs
n2 = 3.3702; %GaAS
na=1;
ns=n2;
ra=(na-n2)/(na+n2);
r=(n2-n1)/(n2+n1);
ta=sqrt(1-ra^2);
t=sqrt(1-r^2);
y=zeros(1,2500);
ab1=0;
ab2=0;
for kl=1:2500
beta1 = 2*pi*n1/x(kl)-1i*ab1/2;
beta2 = 2*pi*n2/x(kl)-1i*ab2/2;
T11_a = exp(1i*beta2*b(2))/ta;
T12_a = ra*exp(-1i*beta2*b(2))/ta;
T21_a = ra*exp(1i*beta2*b(2))/ta;
T22_a = exp(-1i*beta2*b(2))/ta;
T=[T11_a,T12_a;T21_a,T22_a];
for k=1:m-1
T11_n2 = exp(1i*beta1*b(1))/t;
T12_n2 = r*exp(-1i*beta1*b(1))/t;
T21_n2 = r*exp(1i*beta1*b(1))/t;
T22_n2 = exp(-1i*beta1*b(1))/t;
T_n2=[T11_n2,T12_n2;T21_n2,T22_n2];
T=T*T_n2;
T11_n1 = exp(1i*beta2*b(2))/t;
T12_n1 = -r*exp(-1i*beta2*b(2))/t;
T21_n1 = -r*exp(1i*beta2*b(2))/t;
T22_n1 = exp(-1i*beta2*b(2))/t;
T_n1=[T11_n1,T12_n1;T21_n1,T22_n1];
T=T*T_n1;
end
T11_n2 = exp(1i*beta1*b(1))/t;
T12_n2 = r*exp(-1i*beta1*b(1))/t;
T21_n2 = r*exp(1i*beta1*b(1))/t;
T22_n2 = exp(-1i*beta1*b(1))/t;
T_n2=[T11_n2,T12_n2;T21_n2,T22_n2];
T=T*T_n2;
T_12=[1/t,-r/t;-r/t,1/t]; % from n1 to n2, just cross the interface
T = T*T_12;
T11_c = exp(1i*beta2*2*b(2));
T12_c = 0;
T21_c = 0;
T22_c = exp(-1i*beta2*2*b(2));
T_c = [T11_c,T12_c;T21_c,T22_c]; % n2 cavity
T = T*T_c;
for k=(1:m)
T11_n2 = exp(1i*beta1*b(1))/t;
T12_n2 = r*exp(-1i*beta1*b(1))/t;
T21_n2 = r*exp(1i*beta1*b(1))/t;
T22_n2 = exp(-1i*beta1*b(1))/t;
T_n2=[T11_n2,T12_n2;T21_n2,T22_n2];
T=T*T_n2;
T11_n1 = exp(1i*beta2*b(2))/t;
T12_n1 = -r*exp(-1i*beta2*b(2))/t;
T21_n1 = -r*exp(1i*beta2*b(2))/t;
T22_n1 = exp(-1i*beta2*b(2))/t;
T_n1=[T11_n1,T12_n1;T21_n1,T22_n1];
T=T*T_n1;
end
T11_n2 = exp(1i*beta1*b(1))/t;
T12_n2 = r*exp(-1i*beta1*b(1))/t;
T21_n2 = r*exp(1i*beta1*b(1))/t;
T22_n2 = exp(-1i*beta1*b(1))/t;
T_n2=[T11_n2,T12_n2;T21_n2,T22_n2];
T=T*T_n2;
T_12=[1/t,-r/t;-r/t,1/t];
T = T*T_12;
T11_c = exp(1i*beta2*9*b(2));
T12_c = 0;
T21_c = 0;
T22_c = exp(-1i*beta2*9*b(2));
T_c = [T11_c,T12_c;T21_c,T22_c]; % n2 cavity
T = T*T_c;
T11_n2 = exp(1i*beta1*b(1))/t;
T12_n2 = r*exp(-1i*beta1*b(1))/t;
T21_n2 = r*exp(1i*beta1*b(1))/t;
T22_n2 = exp(-1i*beta1*b(1))/t;
T_n2=[T11_n2,T12_n2;T21_n2,T22_n2];
T=T*T_n2;
rs1=(n1-ns)/(ns+n1);
ts1=sqrt(1-rs1^2);
T11_s = 1/ts1; % n1 to substrate
T12_s = rs1/ts1;
T21_s = rs1/ts1;
T22_s = 1/ts1;
T_s = [T11_s,T12_s;T21_s,T22_s];
T=T*T_s;
y(kl) = (abs(T(2,1)/T(1,1)))^2;
end
F = y'-yn;