Matlab曲线拟合(3)(自用笔记)

一、利用lsqcurvefit函数进行自定义拟合

函数一般形式 f = lsqcurvefit(fun, x0, xdata, ydata, lb, ub)

fun: 符号函数

x0: 初始解向量,即要拟合参数的初始值

xdata: 输入的x数据

ydata: 输入的y数据

lb,ub:解向量的上下界限,lb <= x0 <= ub,若没有要求,就设为空lb=[ ],ub=[ ]

二、函数的返回值

[x , resnorm, residual, exitflag, output] = lsqcurvefit()

x: 求解得到的拟合参数解向量

resnorm: 残差的平方和 sum((fun(x0, xdata)-ydata)^2)

residual: 残差 fun(x0, xdata)-ydata

exitflag: 迭代停止条件

output: 输出的优化信息

三、代码举例与图像绘制展示

clc;
xdata = 0:10:100;
ydata =[100.0 81.9 67.0 54.8 44.9 36.8 30.1 24.7 20.2 16.5 13.5];
fun = @(x,xdata)x(1)*exp(-x(2)*xdata);
x0 = [100,0];
[x,resnorm,residual,exitflag,output] = lsqcurvefit(fun,x0,xdata,ydata);
xi = 0:2:100;
yi = fun(x, xi);
plot(xdata,ydata,'r*',xi,yi,'b-');
xlabel('x轴数据'); ylabel('y轴数据')
title('拟合图像')

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值