MATLAB教程第5章MATLAB数值计算

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

renshaobin523@sina.com第四章计算机网络计算机网络技术应用MATLAB基础及应用第2版主编:于润伟朱晓慧第5章MATLAB数值计算第5章MATLAB数值计算本章要点数据的分析与统计数值插值曲线拟合求解常微分方程第5章MATLAB数值计算5.1数据分析一、数据统计函数名称功能函数名称功能max(x)找x各列的最大元素min(x)找x各列的最小元素mean(x)求x各列的平均值sum(x)求x各列元素之和median(x)找x各列的中间值元素sort(x)使x的各列元素按递增排序prod(x)求x各列元素之积第5章MATLAB数值计算二、离差和相关函数名称功能函数名称功能var(x)x各列的方差cov(x,y)两个矩阵x和y的协方差std(x)x各列的标准差corrcoef(x)x的自相关阵range(x)x各列的极差corrcoef(x,y)两个矩阵x和y的互相关系数,结果为方阵cov(x)x的协方差阵corr2(x,y)两个矩阵x和y的相关系数第5章MATLAB数值计算5.2数值运算一、多项式名称函数格式说明创建多项式P=[a0a1a2…an-1an]P为多项式(以下各函数中P均为多项式),a0a1a2…an-1an为按降幂顺序排列的多项式系数P=poly(A)A为向量。创建以向量A中元素为根的多项式求根roots(P)求该多项式的根,以列向量的形式给出求值polyval(P,A)当A为标量时,求多项式P在自变量x=A时的值;当A为向量时,求x分别等于A中每个元素时,多项式的值polyvalm(P,m)m为n×n阶方阵。求x分别等于m中每一个元素时,多项式的值(结果为n×n阶方阵)多项式乘法conv(P1,P2)P1多项式与P2多项式相乘多项式除法[q,r]=deconvP1,P2)P1多项式与P2多项式相除。q为商,r为余数多项式求导p=polyder(P)多项式P的导函数P=polyder(P1,P2)P1多项式与P2多项式乘积的导函数[q,r]=polyder(P1,P2)P1多项式与P2多项式相除后的导函数,导函数的分子放入q,分母放入r第5章MATLAB数值计算二、插值与拟合1.数值插值(1)一维插值函数:Z1=interp1(X,Y,X1,‘参数’)说明:X是向量,表示采样点;Y是采样点上的样本值,与X等长;X1可是向量或标量,表示欲插值的点;Z1是与X1等长的插值结果。(2)二维插值函数:Z1=interp2(X,Y,Z,X1,Y1,‘参数’)说明:X是长度为M的向量、Y是长度为N的向量,表示采样点;Z是与采样点对应的样本值,长度为N×M;X1、Y1是向量或标量,长度可以不等,表示欲插值的点;Z1是插值结果。二维插值是对双变量函数同时做插值。第5章MATLAB数值计算线性插值主要参数参数名称说明特点nearest邻近点插值法。根据已知两点间的插值点与这两点之间的位置远近插值。当插值点距离前点近时,取前点的值,否则取后点的值速度最快,但平滑性差linear线性插值。把相邻的数据点用直线连接,按所生成的曲线进行插值,是默认的插值方法占有的内存较邻近点插值方法多,运算时间也稍长,与邻近点插值不同,其结果是连续的,但在顶点处的斜率会改变spline三次样条插值。用已知数据求出样条函数后,按照样条函数插值运算时间长,但内存的占有较立方插值方法要少,三次样条插值的平滑性很好,但如果输入的数据不一致或数据点过近,可能出现很差的插值结果cubic立方插值法,也称三次多项式插值。用已知数据构造出三次多项式进行插值需要较多的内存和运算时间,平滑性很好bicubic双立方插值法。利用已知的数据点拟合一个双立方曲面,然后根据插值点的坐标插值,每个插值点的值由该点附近的六个点的坐标确定二维插值函数独有。插值点处的值和该点值的导数都连续第5章MATLAB数值计算2.曲线拟合MATLAB的曲线拟合函数如下:函数:[P,S]=polyfit(X,Y,N)说明:X、Y是两个等长的向量,X是采样点,Y是采样点函数值,N是多项式的次数;P是一个长度为N+1的向量,代表N次多项式;S是采样点的误差向量。第5章MATLAB数值计算三、函数的极值和零点函数名称函数格式说明函数极小值x=fminbnd(‘fun’,a,b)fun为待求极值的单变量函数,a、b为求极值的区间。x为函数极值点,y为极值点的函数值[x,y]=fminbnd(‘fun’,a,b)函数零点x=fzero(‘fun’,a)a为极值点附近的初始值,[ab]为求零点的区间,x为函数零点,y为零点的函数值。若没有零点,则返回Nan(非数)x=fzero(‘fun’,[ab])[x,y]=fzero(‘fun’,a)[x,y]=fzero(‘fun’,[ab])第5章MATLAB数值计算5.3常微分方程的数值求解一、常微分方程的解法数值解法的基本思想是:先取一系列离散的点,通常取等步长h,使,再求每个点对应的y(xn),用y(xn)近似(n=1,2,…)的值。主要有欧拉法、线性多步法、预估校正法、龙格—库塔法等,其中以龙格—库塔法使用最多,310nxxxxnhxxn+=0第5章MATLAB数值计算二、龙格—库塔法的实现基于龙格—库塔法,MATLAB提供了求常微分方程数值解的函数,其函数格式如下:函数:[X,Y]=ode23(‘f’,[x0,xn],y0)[X,Y]=ode45(‘f’,[x0,xn],y0)说明:X,Y是两个向量。X对应自变量x在求解区间[x0,xn]的一组采样点,其采样密度是自适应的,无需指定;Y是与X对应的一组解。f是一个M函数文件,代表待求解方程。[x0,xn]代表自变量的求解区间。y0=y(x0),由方程的初值给定。函数在求解区间[x0,xn]内,自动设定采样点向量X,并求出解函数y在采样点X处的样本值。

1 / 11
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功