h=waitbar(0,' ');
f_bar_star=zeros(2210,200);
sigma=zeros(2210,200);
bty=zeros(3533,200);
for n=1:200
for k=1:2210
f=zeros(1,3533);
for i=2:3533
bty(i,n)=(btp(i+150,n)-btp(i+149,n))/btp(i+149,n);
S(k,i,n)=single(btsignal(k,i,n));
%btsignal是个三维数组,之前为了能存储,就设为int8格式,这里转回single以便计算自然对数
f(k,i,n)=log(1+bty(i,n)*S(k,i-1,n))-log(1+bty(i,n)*S0);
sigma(k,n)=sigma(k,n)+f(k,i,n);
end
clear f; %只能每次小循环都预设和清除一次f,直接预设三维数组就会报out of memory
f_bar_star(k,n)=1/3533*sigma(k,n);
end
waitbar(n/200);
end