养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

MATLAB之非线性拟合

时间:2024-11-11 00:11:30

首先给出数据,如下图:

MATLAB之非线性拟合

把EXCEL数据放入MATLAB软件中的“Work”文件夹下(注:文件名不能用汉字)。然后对数据读取和作图。

MATLAB之非线性拟合
从图中我们不难发现其图像大致符合指数形式,为此我们构造指数形式的表达式y=x1*exp{x2+x3*t}。

通过非线性最小二乘法对其拟合,其结果图与原数据图效果非常理想。

MATLAB之非线性拟合
其结果为:

q=-246.279914780630.127224594530866参数值

r=0.0224287126987522误差平方和从误差平方和我们不难发现其拟合程度相当高,说明此拟合方程具有意义。

其MATLAB编码:clearall;clc

formatlongg%取消科学计数法

A=xlsread('yinsu1.xls');%读取数据,“yinshu1”为数据文件名

[m,n]=size(A);%判断矩阵的阶

B=A';%矩阵转置

x=B(1,:);

y1=B(2,:);

y=log(y1);

f=inline('a(1)+a(2).*x','a','x');

[q,r]=lsqcurvefit(f,[1,0],x,y)

plot(x,y1,'r-+')%绘制图表

holdon;

© 一点知识