怎么用matlab进行非线性的多元函数拟合?

怎么用matlab进行非线性的多元函数拟合?,第1张

方法一:

1、最常用的是多项式拟合,采用polyfit函数友判拆,在命令窗口输入自变量x和因变量y。

2、以二次多项式拟合为例,输入p=polyfit(x,y,2),如果想拟合更高次的多项式,更换括号内数字好枣即可。

通过计算获得的p,是一个数组,对应了多项式的各项系数,以图中为例,拟合出的多项式为:y=0.9962x2+0.0053x-0.2833。

方法二:

1、首先,在上方工具栏选取APPS,点击curvefitting。输入自变量x和因变量y。

2、冲银选择拟合方式,有多项式拟合polynomial,高斯拟合gaussian,幂指数拟合power等等,本次以多项式拟合为例。

3、通过数据计算,可以获得曲线参数(曲线函数中的各项系数),从而实现曲线拟合。

下面是相应的Matlab程序

function

matexpfit(x,y)

%指数曲线拟合及其图示

%x,y为已知此山数据点且均为做滚行向量

%拟合曲线

A=[ones(size(x))',x']B=log(y)'X=A\B

%A\B为矩阵除法求AX=B的解

fprintf('a=%f,b=%f\n',exp(X(1)),X(2))

fprintf('拟合曲线y=%fexp(%f

x)\n',exp(X(1)),X(2))

clf

x0=x(1):0.01:x(length(x))

%形如X=a:h:b是从a到b,增量为h的等间隔数

y0=X(2)*exp(X(1)*x0)

plot(x,y,'o',x0,y0,'-')

%绘制以(x,y)为节点的图形

title('Exp

Curve

Fitting')

%给图形加标题

legend('Data','Curve

Fitting')

%给图形加图例

下面用MATLAB软件运行程序可得结果如下图:

产生的图森胡中形如下


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12532682.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存