最小二乘多参数估计--matlab实现z(t;x)=hgt/(1+ht+mq)h,g,m为模型待定参数,现有实验数据t=[10 20 10 20 1]对应的q和z数据如下q=[1.0 1.0 2.0 2.0 0]z=[0.126 0.219 0.076 0.126 0.186]之前看过一张贴,我想问题差不多,但

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/17 02:38:20

最小二乘多参数估计--matlab实现z(t;x)=hgt/(1+ht+mq)h,g,m为模型待定参数,现有实验数据t=[10 20 10 20 1]对应的q和z数据如下q=[1.0 1.0 2.0 2.0 0]z=[0.126 0.219 0.076 0.126 0.186]之前看过一张贴,我想问题差不多,但
最小二乘多参数估计--matlab实现
z(t;x)=hgt/(1+ht+mq)
h,g,m为模型待定参数,现有实验数据
t=[10 20 10 20 1]
对应的q和z数据如下
q=[1.0 1.0 2.0 2.0 0]
z=[0.126 0.219 0.076 0.126 0.186]
之前看过一张贴,我想问题差不多,但是仿造着做却不行,所以问问你!
不行哦,调试过了

最小二乘多参数估计--matlab实现z(t;x)=hgt/(1+ht+mq)h,g,m为模型待定参数,现有实验数据t=[10 20 10 20 1]对应的q和z数据如下q=[1.0 1.0 2.0 2.0 0]z=[0.126 0.219 0.076 0.126 0.186]之前看过一张贴,我想问题差不多,但
在Matlab下输入:edit,然后将下面两行百分号之间的内容,复制进去,保存
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function f=zhidao_vinxie(a,tq)
%a的三个变量分别代表h,g,m
%tq两个变量分别代表t,q
f=a(1)*a(2)*tq(:,1)./(1+a(1)*tq(:,1)+a(3)*tq(:,2));
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
在Matlab下面输入:
t=[10 20 10 20 1];
q=[1.0 1.0 2.0 2.0 0];
tq=[t',q'];
z=[0.126 0.219 0.076 0.126 0.186];
[a,res]=lsqcurvefit('zhidao_vinxie',ones(3,1),tq,z');
res
h=a(1)
g=a(2)
m=a(3)
z_fit=zhidao_vinxie(a,tq);
plot(z,z,z,z_fit,'*');
legend('理论值','拟合值',4)
%%%%%%%%%不好意思没有说清楚.