Matlab编程资源库(9)数据插值与曲线拟合

news2024/9/17 7:13:05

一、一维数据插值

       在MATLAB中,实现这些插值的函数是interp1,其调用格式为:

Y1=interp1(X,Y,X1,'method')

       函数根据X,Y的值,计算函数在X1处的值。X,Y是两个等长的已知向量,分别描述采样点和样本值,X1是一个向量或标量,描述欲插值的点,Y1是一个与X1等长的插值结果。

       method是插值方法,允许的取值有‘linear’、‘nearest’、‘cubic’、‘spline’。注意:X1的取值范围不能超出X的给定范围,否则,会给出“NaN”错误。

       MATLAB中有一个专门的3次样条插值函数Y1=spline(X,Y,X1),其功能及使用方法与函数Y1=interp1(X,Y,X1,‘spline’)完全相同。

6-11 某观测站测得某日6:00时至18:00时之间每隔2小时的室内外温度( ),用3次样条插值分别求得该日室内外6:3017:30时之间每隔2小时各点的近似温度( ) 设时间变量h为一行向量,温度变量t为一个两列矩阵,其中第一列存放室内温度,第二列储存室外温度。

命令如下:

h =6:2:18;
t=[18,20,22,25,30,28,24;15,19,24,28,34,32,30]';
XI =6.5:2:17.5
YI=interp1(h,t,XI,‘spline’) %用3次样条插值计算

运行结果 :

二、二维数据插值

       在 MATLAB 中,提供了解决 二维插值 问题的函数 i nterp2 ,其调用格式为:
Z1=interp2(X,Y,Z,X1,Y1,'method')
       其中 X,Y 是两个向量,分别描述两个参数的采样 点, Z 是与参数采样点对应的函数值, X1,Y1 是两个向量或标量,描述欲插值的点。Z1 是根据相应 的插值方法得到的插值结果。              method 的取值与一维插值函数相同。X,Y,Z 也可以是矩阵形式。 同样, X1,Y1 的取值范围不能超出 X,Y 的给定范围, 否则,会给出 “NaN” 错误。
6-13 某实验对一根长 10 米的钢轨进行热源的温度传播测试。 x 表示测量点 0:2.5:10( ) ,用 h 表示测量时间 0:30:60( ) ,用 T 表示测试所得各点的温度 ( ) 。试用线性 插值求出在一分钟内每隔 20 秒、钢轨每隔 1 米处的温度 TI
命令如下:
x=0:2.5:10;
h=[0:30:60]';
T=[95,14,0,0,0;88,48,32,12,6;67,64,54,48,41];
xi=[0:10];
hi=[0:20:60]';
TI=interp2(x,h,T,xi,hi)

 运行结果 :

三、曲线拟合

       在 MATLAB 中,用 polyfit 函数来求得 最小二乘拟合多项式的系数 ,再用 polyval 函数按所得的多项式计算所给出的点上 的函数 近似值
       polyfit 函数的调用格式为:
[P,S]=polyfit(X,Y,m)
       函数根据采样点 X 和采样点函数值 Y ,产生一个 m 次多项式 P 及其在采样点的误差向量 S 。其中 X,Y 是两个等长的向量, P 是一个长度为 m+1 的向量, P 的元素为多项式系数。 polyval 函数的功能是按多项式的系数计算 x 点多项式的值。

 结语    

走得最慢的人

只要他不丧失目标

也比漫无目的地徘徊的人走得快

!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1957671.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【机器学习基础】初探机器学习

【作者主页】Francek Chen 【专栏介绍】⌈Python机器学习⌋ 机器学习是一门人工智能的分支学科,通过算法和模型让计算机从数据中学习,进行模型训练和优化,做出预测、分类和决策支持。Python成为机器学习的首选语言,依赖于强大的开…

vue项目引入live2d保姆级教程--web端、多种方法

一、自建live2d运行 1、选择SDK——live2d Cubism SDK (1)链接:Live2D Cubism SDK | Live2D Cubism 打开网站,它长这样: (2)选择web ,到下个页面 (3)下…

Power Tower

Problem - D - Codeforces 牛客和codeforce都有 递归处理l,r,终点是lr && mod1 用扩展欧拉定理 // Problem: D. Power Tower // Contest: Codeforces - Codeforces Round 454 (Div. 1, based on Technocup 2018 Elimination Round 4) // URL: https://c…

Linux基础操作指令

Linux的操作特点:纯命令行(虽然也有图形化界面,但主要是工程师使用,意义不大) windows的操作特点:图形化界面(也有纯命令行的形式,但其更贴近大众,命令行学习成本高&…

用Python打造精彩动画与视频1.2 安装Python和基本配置

1.2 安装Python和基本配置 在本章节中,我们将介绍如何在不同操作系统上安装Python,并进行基本配置,以便你能够顺利开始使用Python进行编程和多媒体创作。 1.2.1 Python的安装 Python有多个版本,目前主要使用Python 3版本。以下…

贪心加暴力枚举

数据范围只有 1 0 5 10^5 105所以我们可以直接暴力枚举,然后我们知道假操作一定是在最开始进行,至于加多少次我们可以直接枚举 class Solution { public:int minOperations(int k) {// 只可能先加后叠加if (k 1) return 0;int ans 0x7ffffff;int now…

Windows FreeCAD 导入ODA File Converter 插件

0. 背景 需要打开.dwg 格式的文件,AutoCAD 又要收费,所以使用法国的 FreeCAD, 安装完成打开.dwg 格式的文件时,出现问题如图所示: 1.下载插件 插件 ODA File Converter 网址 windows 插件在最下面: 2…

Android 性能优化(二):LeakCanary【用于分析代码是否存在内存泄漏】程序无响应

目录 1)内存相关的五种常见问题 2)内存溢出和内存泄漏 3)LeakCanary是什么? 4)LeakCanary如何使用,如何分析? 5)LeakCanary监测的内容 提问:程序有时候很卡,经常会出现…

再论pg归档日志的设置

用过ORACLE的朋友,第一次设置 PG的归档参数,如下: 。。。 wal_level replica archive_mode on archive_command test ! -f /mnt/server/archivedir/%f && cp %p /mnt/server/archivedir/%f 。。。 对于归档,还要用…

ConvGRU原理与开源代码

ConvGRU 1. 算法简介与应用场景2. 算法原理2.1 GRU基础2.2 ConvGRU原理2.2.1 ConvGRU的结构2.2.2 卷积操作的优点 2.3 GRU与ConvGRU的对比分析2.4 ConvGRU的应用 3. PyTorch代码 仅需要网络源码的可以直接跳到末尾即可 需要ConvLSTM的可以参考我的另外一篇博客:小白…

Halcon Blob分析

斑点分析的思路:在图像中,相关对象的像素可以通过其灰度值来识别。例如下图的组织颗粒。这些颗粒是凉的,而液体是暗的,通过选择明亮像素(阈值),可以很容易地检测到颗粒。在需要应用中,这种简单的暗像素和亮…

成像光学:LCD的工作原理与结构图解

一、主流显示面板技术:LCD,OLED,MicroLED 二、主流显示屏的发展趋势 三、LCD堆叠结构(以比较流行的TFT-LCD为例) 沿光路方向介绍:背光,下偏光片(polarizer),…

python实现图像分割算法2

python实现随机步行算法 随机步行算法数学模型Python 实现详细解释优缺点应用领域随机步行算法是一种常用于图像分割和图像分析的算法。它通过模拟随机游走来确定图像中每个像素的标签或类别。随机步行算法特别适合用于解决有种子标记的图像分割问题,其中用户提供一些初始标记…

【Python】基础语法(上)

本篇文章讲解以下知识: (1)初始编码 (2)输出 (3)初识数据类型 一:初识编码 在计算机中所有的数据本质上都是以0和1的组合来存储。 比如:在一个文件中有以下内容&am…

力扣SQL50 上级经理已离职的公司员工 一题双解

Problem: 1978. 上级经理已离职的公司员工 Code -- 方法 1 -- select e1.employee_id -- from employees e1 -- left join employees e2 -- on e1.manager_id e2.employee_id -- where e1.salary < 30000 -- and e1.manager_id is not null -- and e2.employee_id is…

SpringBoot 整合 Redis 实现验证码登录功能

一、整合Redis 在pom.xml中添加Redis相关依赖&#xff1b; <!--Spring Data Redis依赖配置--> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId> </dependency>…

103.qt qml-最全Table新增下拉复制功能

在上篇文章102.qt qml-最全Table交互之多列固定、行列拖拽、自定义委托、标题交互使用教程_qt 表格控件 拖动列-CSDN博客 我们实现了大部分功能,所以本章实现下拉复制功能。 demo截图如下所示: 支持跨界复制,如果下拉的位置大于Table则会动画向下移动,具体可以参考视频链接…

颠覆未来计算!CRAM技术摒弃冯·诺依曼模型,20年研究终迎突破

未来科技&#xff1a;AI计算需求激增&#xff0c;数据中心耗电量堪比派对狂饮&#xff01;明尼苏达大学研究团队或携革命性设备&#xff0c;以惊人能效解决AI能耗难题&#xff01; 研究人员设计了一种新型的"计算随机存取存储器"&#xff08;CRAM&#xff09;原型芯…

查看路由表 netstat -r

“Kernel IP routing table” 是Linux系统中用于展示和配置IP路由的表。它告诉操作系统如何将数据包从一个网络接口发送到另一个网络或主机。下面是对您给出的路由表条目的解释&#xff1a; Destination&#xff1a;目的地地址&#xff0c;可以是具体的IP地址&#xff0c;也可…

Codeforces 962 div3 A-F

A 题目分析 签到 C代码 #include<iostream> using namespace std; int main(){int t;cin>>t;while(t--){int n;cin>>n;cout<<n/4n%4/2<<endl;} } B 题目分析 将n*n的方格分成若干个k*k的方格&#xff0c;每个k*k的方格中所有的数都相同 遍历…