当前位置:   article > 正文

Matlab曲线拟合(3)(自用笔记)_matlab中三个变量怎么拟合

matlab中三个变量怎么拟合

一、利用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: 输出的优化信息

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

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

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/97058
推荐阅读
相关标签
  

闽ICP备14008679号