a1*log10(x)+a0 = log10(y) matlab 求参数函数 a1*log10(x)+a0 = log10(y)现在已知 x y 的多个取值 怎么算出a0 a1 用matlab做怎么做啊!

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/03 00:27:22
a1*log10(x)+a0 = log10(y) matlab 求参数函数 a1*log10(x)+a0 = log10(y)现在已知 x y 的多个取值 怎么算出a0 a1 用matlab做怎么做啊!

a1*log10(x)+a0 = log10(y) matlab 求参数函数 a1*log10(x)+a0 = log10(y)现在已知 x y 的多个取值 怎么算出a0 a1 用matlab做怎么做啊!
a1*log10(x)+a0 = log10(y) matlab 求参数
函数 a1*log10(x)+a0 = log10(y)
现在已知 x y 的多个取值 怎么算出a0 a1
用matlab做怎么做啊!

a1*log10(x)+a0 = log10(y) matlab 求参数函数 a1*log10(x)+a0 = log10(y)现在已知 x y 的多个取值 怎么算出a0 a1 用matlab做怎么做啊!
我靠,这有什么难的啊.你既然知道了很多xy的值,那log10(x)log10(y)都可以算出来了.这就是个超定的二元一次方程组.直接解不就完了?
意思就是把xy看成已知数,a1 a0是未知数.最小二乘法,用左除就行了,超级简单.
来来,你把xy的值都给我,我给你写程序.
算了,假设你有4组x,y,分别是x1,x2,x3,x4,y1,y2,y3,y4;
那么这么弄:
x=[x1,x2,x3,x4]';
y=[y1,y2,y3,y4]';
x=log10(x);
y=log10(y);
A=[x,ones(size(x,1),1)];
w=A\y; %w里的两个数就是a1 a0,从上往下排

利用赋特殊值的方法求解。

jjhgj