📄 q3_3.asv
字号:
function Q3_3
[N M G]=data2;
K=data1;
%插值法
[m n]=size(M);
for k=1:m
if(sum(M(k,:))==0)
continue;
end
line=1;
x=1;
y=1;
for j=1:n
if(M(k,j))
x(line)=N(j);
y(line)=M(k,j);
line=line+1;
end
end
%display(k);
MM(k,:)=interp1(x,y,N,'linear');
%clear(x);
%clear(y);
end
%删除NaN
MMlen = length(MM);
for i=1:MMlen
if(MM(i,:)==0)
continue;
end
for j=1:13
if(isnan(MM(i,j)))
MM(i,j)=100;
end
end
end
%%%%%%%%%%%加上最后的0
%MM(:,14)=MM(:,13)*0;%最后加上0
%N(14)=0;
%%%%%拟合y^2=K*X
%MM_1=log(MM);
%N_1=log(N);
len=0;
[m n]=size(MM);
%for k=1:9
X=log(N(1:13));
Y=log(MM(i,j:13));
P=polyfit(X,Y,1);
k=3;
len=0;
delta=[1 1];
beta=[1 1];
for i=1:m
x=1;
y=1;
for j=1:n
if((MM(i,j)==100 & MM(i,j+1)<100)| (j==1 & MM(i,j)<100))
len=len+1;
X=log(N(j:13));
Y=log(MM(i,j:13));
P=polyfit(X,Y,1);
P_1(len,:)=P;
%XX=min(X):0.01:max(X);
Z=polyval(P,X);
YY=exp(Z);
delta(len,:)=[(YY-N(j:13))*(YY-N(j:13))' K(i,k)];
%delta(len,:)=[(YY-N(j:13))*(YY-N(j:13))' G(i,:)];
break;
end
end
end
mark=0
[m n]=size(delta);
for t=1:m
%for j=1:n
if(isnan(delta(t,1))|delta(t,2)==0)%|delta(i,3)==0)
continue;
else
mark=mark+1;
beta(mark,:)=delta(t,:);
end
end
%plot(sqrt(beta(:,1)),beta(:,2),'*',sqrt(beta(:,1)),beta(:,3),'^');
plot(beta(:,1),beta(:,2),'*');
%pause
%end
%plot(N,MM);%少了最后一行
%N=log(N);
plot(N,MM(1:10,:));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -