请问如何将下列数据用Matlab拟合成形如y=a*x1^b*x2^c*x3^d*x4^e 的曲线,给出a、b、c、d、e的值,还需绘图 5

x1=[45403025251810];x2=[45354535252545];x3=[2.813.313.55.027.059.779.88];x4=[0.0210.0... x1=[45 40 30 25 25 18 10];x2=[45 35 45 35 25 25 45] ;x3=[2.81 3.31 3.5 5.02 7.05 9.77 9.88];x4=[0.021 0.030 0.025 0.032 0.034 0.035 0.028];y=[2.38 1.81 1.04 0.86 0.79 0.65 0.62]。请问如何将以上数据用Matlab拟合成形如y=a*x1^b*x2^c*x3^d*x4^e 的曲线并求出相应的a、b、c、d、e的值,且需绘制实测值与拟合值的曲线图。多谢! 展开
 我来答
ruifengcao
2011-04-18 · TA获得超过9491个赞
知道大有可为答主
回答量:3579
采纳率:33%
帮助的人:2078万
展开全部
拟合的方法是对给出的公式两边取对数,得到一个线性方程组,然后由超定方程组的方法求出系数。至于绘图,好像多维的图像很难绘制的。你这里有4个x呢!
x1=[45 40 30 25 25 18 10];
x2=[45 35 45 35 25 25 45] ;
x3=[2.81 3.31 3.5 5.02 7.05 9.77 9.88];
x4=[0.021 0.030 0.025 0.032 0.034 0.035 0.028];
y=[2.38 1.81 1.04 0.86 0.79 0.65 0.62];

xx=[ones(length(x1),1) log(x1)' log(x2)' log(x3)' log(x4)'];
yy=log(y)';

A=yy\xx;
a=exp(A(1))
b=A(2)
c=A(3)
d=A(4)
e=A(5)

祝你学习愉快!
追问
哦,是这样,明白了,多谢!
追答
那就好!
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式