📄 exm041022_1.m
字号:
%exm041022_1.m 利用fminsearch指令进行非线性参数估计
k_noise=0.3; %控制噪声水平
[x,y,STDY]=xydata(k_noise); %运行仿真数据产生程序,产生数据
a0=[1 1 1 1]; %被估参数的初试猜测
options=optimset('fminsearch'); %这步在MATLAB6.1版中是必须的
options.TolX=0.01; %控制被估参数的迭代精度
options.Display='off'; %避免显示收敛信息
a=fminsearch(@twoexps,a0,options,x,y); %计算二乘残差最小时的参数估计
%以下用于绘图
y_est=a(1)*exp(-a(3)*x)+a(2)*exp(-a(4)*x);
ych='y_e_s_t='; %注意:该格式使图形中est三个字母成为下标
a1=num2str(a(1));a2=num2str(a(2));a3=num2str(a(3));a4=num2str(a(4));
char_y_est=[ych,a1,'*exp(-',a3,'*x) + ',a2,'*exp(-',a4,'*x)'];
plot(x,y,'b+');hold on,plot(x,y_est,'r');hold off,axis([0,4,0,16])
text(0.4,14,'y=3*exp(-0.4*x)+12*exp(-3.2*x)')
text(0.4,12,char_y_est)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -