📄 msegauss.m
字号:
Ni=[1 2 3 4 5 10 15 20 25 30 35 40 45 50];
Euu=zeros(1,length(Ni));
Euu1=zeros(1,length(Ni));
Euu2=zeros(1,length(Ni));
for i=1:length(Ni)
N=100;f_max=91;sigma_0_2=1;N_i=Ni(i);PLOT=1;
f_c=sqrt(log(2))*f_max;kappa_c=f_max/f_c;
F_list=[];
save F_list F_list
tau_max=N_i/(2*kappa_c*f_c);
tau=linspace(0,tau_max,N);
r_mm=sigma_0_2*exp(-(pi*f_c/sqrt(log(2))*tau).^2);
f_i_n=zeros(N_i,1);f_i_n1=zeros(N_i,1);f_i_n2=zeros(N_i,1);
c_i_n=sqrt(sigma_0_2)*sqrt(2/N_i)*ones(N_i,1);
for ii=1:N_i
f_i_n(ii)=f_c/sqrt(log(2))*erfinv((2*ii-1)/(2*N_i));
f_i_n2(ii)=f_c/sqrt(log(2))*erfinv(ii/N-i);
end
f_i_n1=f_i_n;
f_i_n2(N_i)= f_c/sqrt(log(2))*erfinv(0.9999999);
save data r_mm tau N_i c_i_n PLOT
xo=f_i_n;
options = optimset('MaxIter',10);
[x,fval]=fminimax('fun_Gauss1',xo,[],[],[],[],[],[],[],options);
load x
f_i_n=sort(abs(x));
r=acf_mue(f_i_n,c_i_n,tau);
r1=acf_mue(f_i_n1,c_i_n,tau);
r2=acf_mue(f_i_n2,c_i_n,tau);
Euu(i)=mse(abs(r_mm-r).^2);
% Euu1(i)=mse(abs(r_mm-r1).^2); %MEDS
Euu2(i)=mse(abs(r_mm-r2).^2); %MEA
end
% plot(Ni,Euu,'*',Ni,Euu1,'+'Ni,Euu2,'o');
% plot(Ni,Euu,'*',Ni,Euu2,'+');
plot(Ni,Euu,'*',Ni,Euu2,'+');
xlabel('Ni');
ylabel('Erui');
legend('minimax','MEA');
legend('minimax','MEA');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -