最小二乘拟合问题的求解

附录4  最小二乘拟合n阶多项式程序Ⅰ
附录5  最小二乘拟合n阶多项式程序Ⅱ
附录5所示程序运行得到的拟合曲线等结果,与运行附录4所示程序结果相同,也相互验证了附录4、5所示程序的正确性。

% 附录4 最小二乘拟合n阶多项式程序Ⅰ
%% 最小二乘拟合n阶多项式
clear       %清除变量
clc         %清除命令行窗口代码
aa=input('\n请选择数据输入方式:\n从文件中输入数据请输入0,\n从命令行窗口输入数据请输入1\n');
if aa==0x = load('data_x.txt');y = load('data_y.txt');n = load('data_n.txt');
end
if aa==10x=input('\n请输入自变量x数组数据:\n');y=input('\n请输入自变量y数组数据:\n');n=input('\n请输入多项式拟合阶数n:\n');
end
for i=1:n+1                  %构建正规方程组yy(i,1)=sum((x.^(i-1)).*y);for j=1:n+1G(i,j)=sum(x.^(i+j-2));end
end
c=G\yy;                      %求解多项式系数
fprintf('p(x)=%.6f*x^4+%.6f*x^3+%.6f*x^2+%.6f*x^1+%.6f\n',c(5),c(4),c(3),c(2),c(1));
p=@(x)c(5)*x.^4+c(4)*x.^3+c(3)*x.^2+c(2)*x.^1+c(1);
y1 = p(x);
error=norm(y-y1),
plot(x,y,'o',x,y1,'-');
xlabel('X');
ylabel('Y');
title(['n=',num2str(n),'时的拟合曲线']);% 附录5 最小二乘拟合n阶多项式程序Ⅱ
%% 最小二乘拟合n阶多项式
clear       %清除变量
clc         %清除命令行窗口代码
aa=input('\n请选择数据输入方式:\n从文件中输入数据请输入0,\n从命令行窗口输入数据请输入1\n');
if aa==0x = load('data_x.txt');y = load('data_y.txt');n = load('data_n.txt');
end
if aa==1x=input('\n请输入自变量x数组数据:\n');y=input('\n请输入自变量y数组数据:\n');n=input('\n请输入多项式拟合阶数n:\n');
end
p=polyfit(x,y,4);
fprintf('p(x)=%.6f*x^4+%.6f*x^3+%.6f*x^2+%.6f*x^1+%.6f\n',p(1),p(2),p(3),p(4),p(5));
y1=polyval(p,x);
error=norm(y-y1),
plot(x,y,'o',x,y1,'-');
xlabel('X');
ylabel('Y');
title(['n=',num2str(n),'时的拟合曲线']);

此处仅展示了代码实现,具体算法原理可参考《数值分析》等有关书籍,或在博主“资源”下载页面,下载相关文档进行查看。

计算方法-上机作业-示例【仅供交流参考】-统计分析文档类资源-CSDN文库

最小二乘拟合n阶多项式【Matlab】相关推荐

  1. C++最小二乘拟合 (高阶最小二乘拟合)

    文章目录 原文链接: https://blog.csdn.net/weixin_44344462/article/details/88850409 https://blog.csdn.net/xsz5 ...

  2. C++最小二乘拟合 (高阶最小二乘拟合)(附C++代码)

    配置Eigen矩阵运算库 后续计算需要利用矩阵运算来求解拟合系数,用到Eigen矩阵运算库,配置方法可自行搜索或MacOs可以参考Mac配置Eigen库进行配置. 拟合原理 以二次曲线拟合为例,拟合曲 ...

  3. C++最小二乘拟合 (高阶最小二乘拟合)(附C++代码)

    配置Eigen矩阵运算库 后续计算需要利用矩阵运算来求解拟合系数,用到Eigen矩阵运算库,配置方法可自行搜索或MacOs可以参考Mac配置Eigen库进行配置. 拟合原理 以二次曲线拟合为例,拟合曲 ...

  4. 2014Matlab最小二乘拟合函数,怎样输出matlab最小二乘拟合曲线的表达式

    满意答案 入门推荐: JAVA2核心技术第1卷.基础知识7th: http://www.sunjava.cn/book/JAVA2hx1.rar JAVA.2核心技术.卷II:高级特性7th : ht ...

  5. 数学建模 拟合(最小二乘拟合,多项式拟合,自定义函数拟合)

    文章目录 matlab拟合工具箱 最小二乘拟合 理论推导 用最小二乘法求解线性回归的k,b 怎么评价拟合的精度 一个例子 另一个例子,薄膜渗透率题目,最小二乘拟合溶液浓度变化 多项式拟合 自定义函数拟 ...

  6. 多项式最小二乘拟合算法实现

    在水电站优化运行中,水轮机的动力特性曲线,需要根据离散的特征点拟合得到.拟合方法有多项式拟合.径向基函数神经网络拟合等,其中多项式最小二乘拟合,是最经典.最简单的一种方法.本文在水电站优化运行的应用背 ...

  7. 【多项式最小二乘拟合实验】

    一.实验目的 编制以函数{xk}k=0,-,n:为基的多项式最小二乘拟合程序.了解在matlab环境下曲线拟合问题的思想,掌握最小二乘拟合多项式拟合法和曲线拟合法,区分插值于拟合的不同之处. 二.实验 ...

  8. 列表函数的最小二乘拟合(matlab)

    最小二乘法拟合概述 算法原理 设是定义在点集上的列表函数,构造广义多项式 使得最小,其中为待定参数, 是已知的一组基函数,通过求解正规方程组来确定c的方法称为最小二乘拟合. 伪代码 1)给定待拟合量x ...

  9. matlab三次拟合多项式,matlab三次多项式拟合

    暂无评价|0人阅读|0次下载|举报文档 DSC曲线的三次样条拟合与Matlab实现_能源/化工_工程科技_专业资料.DSC曲线拟合与Matlab实现第... 人阅读|次下载 曲线拟合的最小二乘法mat ...

最新文章

  1. 开关电源反馈环路设计matlab,开关电源控制环路设计(初级篇).pdf
  2. JavaScript自动设置IFrame高度(兼容各主流浏览器)
  3. python3下的IE自动化模块PAMIE
  4. Postman操作使用
  5. (二)使用CycleGAN进行移动风格迁移
  6. C++ 之父讨厌比特币
  7. 常用代码模板1 ----- 基础算法
  8. token与sessionId的区别——学习笔记
  9. sass 混入 (@mixin 与 @include的使用)
  10. MVC中单选按钮的实现
  11. 电磁场有限元基本原理(1)边界条件
  12. Excel批量选中表格中所有图片
  13. 医疗大数据平台的标准化通迅协议构建和架构
  14. python人工智能入门纳米学位_最近看到udacity的纳米学位很火,号称学完可以找到工作了,这是真的吗?...
  15. 巴西龟购买指南(避免掉坑)
  16. 软件体系结构的基本概念与作用
  17. HTML5特效~3D立方体旋转
  18. [DebugView] dbgv.sys占用 及 KdPrint输出信息无法显示
  19. 腾讯阿里打通生态,针锋相对的时代或将结束?
  20. ENVI扩展工具:航拍影像坏点修复专用补丁

热门文章

  1. BLS 签名和基于 BLS 签名的门限签名
  2. beacon设备使用记录
  3. [享学Jackson] 四、控制Jackson行为的特征们之JsonFactory.Feature、JsonGenerator.Feature、JsonParser.Feature
  4. 应用统计学与R语言实现学习笔记(十二)——主成分分析
  5. TcaplusDB君 · 行业新闻汇编(11月22号)
  6. MAP(Maximum A Posteriori,最大后验准则)算法
  7. MATLAB | 用cftool对excel的数据进行三维曲线拟合
  8. MySQLSyntaxErrorException sql语句语法错误
  9. MySQL——插入数据
  10. 卸载 HI 英文输入法( InputHelp )