matlab内置函数-插值.ppt
文本预览下载声明
* * 数值计算 Matlab的内置函数 ---- 插值---- [1]一维插值 [2]二维插值 用MATLAB内置函数作插值计算 一维插值函数: yi interp1 x,y,xi,method 插值方法 被插值点 插值节点 xi处的插值结果 ‘nearest’ :最邻近插值‘linear’ :分段线性插值; ‘spline’ : 三次样条插值; ‘cubic’ : 立方插值。 缺省时: 分段线性插值。 注意:所有的插值方法都要求x是单调的,并且xi不能够超过x的范围。 例:在1-12的11小时内,每隔1小时测量一次温度,测得的温度依次为:5,8,9,15,25,29,31,30,22,25,27,24。试估计每隔1/10小时的温度值。 hours 1:12; temps [5 8 9 15 25 29 31 30 22 25 27 24]; h 1:0.1:12; t1 interp1 hours,temps,h,spline ; % 直接输出数据将是很多的 t2 interp1 hours,temps,h, nearest ; t3 interp1 hours,temps,h, linear ; t4 interp1 hours,temps,h, cubic ; subplot 2,2,1 ; plot hours,temps, bo,h,t1, r ; title spline ; %作图 subplot 2,2,2 ; plot hours,temps, bo,h,t2, r ; title nearest ; subplot 2,2,3 ; plot hours,temps, bo,h,t3, r ; title linear ; subplot 2,2,4 ; plot hours,temps, bo,h,t4, r, h,t1, g ; title cubic-spline ; 返回 二维插值(了解) 一、二维插值定义 二、网格节点插值法 三、用Matlab解插值问题 最邻近插值 分片线性插值 双线性插值 网格节点数据的插值 散点数据的插值 二维插值的定义 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? x y O 第一种(网格节点): 已知 m?n个节点 其中 互不相同,不妨设 构造一个二元函数 通过全部已知节点,即 再用 计算插值,即 第二种(散乱节点): ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? y x 0 已知n个节点 其中 互不相同, 构造一个二元函数 通过全部已知节点,即 再用 计算插值,即 注意:最邻近插值一般不连续。具有连续性的最简单的插值是分片线性插值。 最邻近插值 x ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? y x1, y1 x1, y2 x2, y1 x2, y2 O 二维或高维情形的最邻近插值,与被插值点最邻近的 节点的函数值即为所求。 网格节点插值法1: 将四个插值点(矩形的四个顶点)处的函数值依次简记为: 分片线性插值 x y ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? x1, y1 x1, y2 x2, y1 x2, y2 O f x1, y1 z1,f x2, y1 z2,f x2, y2 z3,f x1, y2 z4 网格节点插值法2: 插值函数为: 若插值点在上三角形区域 :即 x, y 满足 插值函数为: 注意: x, y 当然应该是在插值节点所形成的矩形区域内。显然,分片线性插值函数是连续的; 分两片的函数表达式如下: 若插值点在下三角形区域:即 x, y 满足 返回
显示全部