实验一数据处理方法MATLAB实现

合集下载

数字信号处理MATLAB实验1

数字信号处理MATLAB实验1

实验一熟悉MATLAB环境一、实验目的(1)熟悉MATLAB的主要操作命令。

(2)学会简单的矩阵输入和数据读写。

(3)掌握简单的绘图命令。

(4)用MATLAB编程并学会创建函数。

(5)观察离散系统的频率响应。

二、实验内容认真阅读本章附录,在MATLAB环境下重新做一遍附录中的例子,体会各条命令的含义。

在熟悉了MATLAB基本命令的基础上,完成以下实验。

上机实验内容:(1)数组的加、减、乘、除和乘方运算。

输入A=[1234],B=[3456],求C=A+B,D=A-B,E=A.*B,F=A./B,G=A.^B并用stem语句画出A、B、C、D、E、F、G。

(2)用MATLAB实现以下序列。

a)x(n)=0.8n0≤n≤15b)x(n)=e(0.2+3j)n0≤n≤15c)x(n)=3cos(0.125πn+0.2π)+2sin(0.25πn+0.1π)0≤n≤15(n)=x(n+16),绘出四个d)将c)中的x(n)扩展为以16为周期的函数x16周期。

(n)=x(n+10),绘出四个e)将c)中的x(n)扩展为以10为周期的函数x10周期。

(3)x(n)=[1,-1,3,5],产生并绘出下列序列的样本。

a)x 1(n)=2x(n+2)-x(n-1)-2x(n)b)∑=-=51k 2)k n (nx (n) x (4)绘出下列时间函数的图形,对x轴、y轴以及图形上方均须加上适当的标注。

a)x(t)=sin(2πt)0≤t≤10sb)x(t)=cos(100πt)sin(πt)0≤t≤4s(5)编写函数stepshift(n0,n1,n2)实现u(n-n0),n1<n0<n2,绘出该函数的图形,起点为n1,终点为n2。

(6)给定一因果系统)0.9z 0.67z -1)/(1z 2(1H(z)-2-1-1+++=求出并绘制H(z)的幅频响应与相频响应。

(7)计算序列{8-2-123}和序列{23-1-3}的离散卷积,并作图表示卷积结果。

MATLAB数值实验一(数据的插值运算及其应用完整版)

MATLAB数值实验一(数据的插值运算及其应用完整版)

佛山科学技术学院实 验 报 告课程名称 数值分析 实验项目 插值法与数据拟合 专业班级 机械工程 姓 名 余红杰 学 号 10 指导教师 陈剑 成 绩 日 期 月 日一、实验目的1、学会Lagrange 插值、牛顿插值和三次样条插值等基本插值方法;2、讨论插值的Runge 现象3、学会Matlab 提供的插值函数的使用方法,会用这些函数解决实际问题。

二、实验原理1、拉格朗日插值多项式2、牛顿插值多项式3、三次样条插值 三、实验步骤1、用MATLAB 编写独立的拉格朗日插值多项式函数2、用MATLAB 编写独立的牛顿插值多项式函数3、用MATLAB 编写独立的三次样条函数(边界条件为第一、二种情形)4、已知函数在下列各点的值为:根据步骤1,2,3编好的程序,试分别用4次拉格朗日多项式4()L x 、牛顿插值多项式4()P x 以及三次样条函数()S x (自然边界条件)对数据进行插值,并用图给出 {(,),0.20.08,0,1,2,,10i i i x y x i i =+=},4()L x 、4()P x 和()S x 。

5、在区间[-1,1]上分别取10,20n =用两组等距节点对龙格函数21(),(11)125f x x x=-≤≤+作多项式插值,对不同n 值,分别画出插值函数及()f x 的图形。

6、下列数据点的插值可以得到平方根函数的近似,在区间[0,64]上作图。

(1)用这9个点作8次多项式插值8()L x 。

(2)用三次样条(第一边界条件)程序求()S x 。

7、对于给函数21()125f x x =+在区间[-1,1]上取10.2(0,1,,10)i x i i =-+=,试求3次曲线拟合,试画出拟合曲线并打印出方程,与第5题的结果比较。

四、实验过程与结果:1、Lagrange 插值多项式源代码:function ya=lag(x,y,xa) %x 所有已知插值点 %y 插值点对应函数值 %xa 所求点,自变量 %ya 所求点插值估计量 ya=0; mu=1; %初始化%循环方式求L 系数,并求和: for i = 1:length(y) for j = 1:length(x) if i ~= jmu = mu * (xa - x(j) ) / ( x(i) - x(j) ); else continue end endya = ya + y(i) * mu ; mu = 1; end2、Newton 源代码:function ya = newton(x,y,xa) %x 所有已知插值点 %y 插值点对应函数值 %xa 所求点,自变量 %ya 所求点插值估计量 %建立系数零矩阵D 及初始化:D = zeros(length(x)-1);ya = y(1);xi = 1;%求出矩阵D,该矩阵第一行为牛顿插值多项式系数:for i=1:(length(x)-1)D(i,1) = (y(i+1) -y(i))/(x(i+1) -x(i));endfor j=2:(length(x)-1)for i=1:(length(x)-j)D(i,j) = (D(i+1,j-1) - D(i,j-1)) / (x(i+j) - x(i)); endend%xi为单个多项式(x-x(1))(x-x(2))...的值for i=1:(length(x)-1)for j=1:ixi = xi*(xa - x(j));endya = ya + D(1,i)*xi;xi = 1;end3、三次样条插值多项式(1)(第一边界条件)源代码:function y=yt1(x0,y0,f_0,f_n,x) _____________(1)%第一类边界条件下三次样条插值;%xi 所求点;%yi 所求点函数值;%x 已知插值点;%y 已知插值点函数值;%f_0左端点一次导数值;%f_n右端点一次导数值;n = length(x0);z = length(y0);h = zeros(n-1,1);k=zeros(n-2,1);l=zeros(n-2,1);S=2*eye(n);for i=1:n-1h(i)= x0(i+1)-x0(i);endfor i=1:n-2k(i)= h(i+1)/(h(i+1)+h(i));l(i)= 1-k(i);end%对于第一种边界条件:k = [1;k]; _______________________(2)l = [l;1]; _______________________(3)%构建系数矩阵S:for i = 1:n-1S(i,i+1) = k(i);S(i+1,i) = l(i);end%建立均差表:F=zeros(n-1,2);for i = 1:n-1F(i,1) = (y0(i+1)-y0(i))/(x0(i+1)-x0(i));endD = zeros(n-2,1);for i = 1:n-2F(i,2) = (F(i+1,1)-F(i,1))/(x0(i+2)-x0(i));D(i,1) = 6 * F(i,2);end%构建函数D:d0 = 6*(F(1,2)-f_0)/h(1); ___________(4)dn = 6*(f_n-F(n-1,2))/h(n-1); ___________(5)D = [d0;D;dn]; ______________(6)m= S\D;%寻找x所在位置,并求出对应插值:for i = 1:length(x)for j = 1:n-1if (x(i)<=x0(j+1))&(x(i)>=x0(j))y(i) =( m(j)*(x0(j+1)-x(i))^3)/(6*h(j))+...(m(j+1)*(x(i)-x0(j))^3)/(6*h(j))+...(y0(j)-(m(j)*h(j)^2)/6)*(x0(j+1)-x(i))/h(j)+... (y0(j+1)-(m(j+1)*h(j)^2)/6)*(x(i)-x0(j))/h(j) ; break;else continue;endendend(2)(自然边界条件)源代码:仅仅需要对上面部分标注的位置做如下修改:__(1):function y=yt2(x0,y0,x)__(2):k=[0;k]__(3):l=[l;0]__(4)+(5):删除—(6):D=[0:D:0]4、——————————————PS:另建了一个f方程文件,后面有一题也有用到。

实验一matlab环境语法及数学运算(验证性实验-2课时)

实验一matlab环境语法及数学运算(验证性实验-2课时)

实验一Matlab环境语法及数学运算(验证性实验-2课时)一、实验目的:1、熟悉matlab软件的环境语法及简单的数学运算;2、能熟练运用matlab软件进行简单的数学运算;二、实验设备PC机,配置:PIII450/内存128M/显卡TNT32M/硬盘10G以上。

局域网、MATLAB7.0环境、投影仪三、实验原理MATLAB环境是一种为数值计算、数据分析和图形显示服务的交互式的环境。

MATLAB有3种窗口,即:命令窗口(The Command Window)、m-文件编辑窗口(The Edit Window)和图形窗口(The Figure Window),而Simulink另外又有Simulink 模型编辑窗口。

1.命令窗口(The Command Window)当MATLAB启动后,出现的最大的窗口就是命令窗口。

用户可以在提示符“>>”后面输入交互的命令,这些命令就立即被执行。

在MATLAB中,一连串命令可以放置在一个文件中,不必把它们直接在命令窗口内输入。

在命令窗口中输入该文件名,这一连串命令就被执行了。

因为这样的文件都是以“.m”为后缀,所以称为m-文件。

2.m-文件编辑窗口(The Edit Window)我们可以用m-文件编辑窗口来产生新的m-文件,或者编辑已经存在的m-文件。

在MATLAB主界面上选择菜单“File/New/M-file”就打开了一个新的m-文件编辑窗口;选择菜单“File/Open”就可以打开一个已经存在的m-文件,并且可以在这个窗口中编辑这个m-文件。

四、实验内容:1、帮助命令使用 help 命令,查找 sqrt(开方)函数的使用方法;2、矩阵运算(1)矩阵的乘法已知 A=[1 2;3 4]; B=[5 6;7 8];求 A^2*B(2)矩阵除法已知 A=[1 2 3;4 5 6;7 8 9];B=[1 0 0;0 2 0;0 0 3];A\B,A/B(3)矩阵的转置及共轭转置已知 A=[5+i,2-i,1;6*i,4,9-i];求 A.', A'(4)使用冒号选出指定元素已知: A=[1 2 3;4 5 6;7 8 9];求 A 中第 3 行前 2 个元素;A 中所有列第 2,3 行的元素;A 中第 3 列前 2 个元素为:3、多项式求多项式 p(x) = x3 + 2x+ 4的根4、基本绘图命令(1)绘制余弦曲线 y=cos(t),t∈[0,2π](2)在同一坐标系中绘制余弦曲线 y=cos(t-0.25)和正弦曲线 y=sin(t-0.5),t∈[0,2π]5、基本绘图控制绘制[0,4π]区间上的 x1=10sint 曲线,并要求:(1)线形为点划线、颜色为红色、数据点标记为加号;(2)坐标轴控制:显示范围、刻度线、比例、网络线(3)标注控制:坐标轴名称、标题、相应文本;五、实验步骤1、帮助命令使用 help 命令,查找 sqrt(开方)函数的使用方法;SQRT Square root.SQRT(X) is the square root of the elements of X. Complexresults are produced if X is not positive.See also sqrtm.Overloaded functions or methods (ones with the same name in other directories) help sym/sqrt.mReference page in Help browserdoc sqrt2、矩阵运算(1)矩阵的乘法已知 A=[1 2;3 4]; B=[5 6;7 8];求 A^2*BA^2*B =105 122229 266(2)矩阵除法已知 A=[1 2 3;4 5 6;7 8 9];B=[1 0 0;0 2 0;0 0 3];A\B,A/BWarning: Matrix is close to singular or badly scaled.Results may be inaccurate. RCOND = 1.541976e-018.A\B =1.0e+016 *-0.4504 1.8014 -1.35110.9007 -3.6029 2.7022-0.4504 1.8014 -1.3511A/B =1.0000 1.0000 1.00004.0000 2.5000 2.00007.0000 4.0000 3.0000(3)矩阵的转置及共轭转置已知 A=[5+i,2-i,1;6*i,4,9-i];求 A.', A'A.'=5.0000 + 1.0000i 0 +6.0000i2.0000 - 1.0000i 4.00001.0000 9.0000 - 1.0000iA’ =5.0000 - 1.0000i 0 -6.0000i2.0000 + 1.0000i 4.00001.0000 9.0000 + 1.0000i(4)使用冒号选出指定元素已知: A=[1 2 3;4 5 6;7 8 9];求 A 中第 3 行前 2 个元素;A 中所有列第 2,3 行的元素;A 中第 3 列前 2 个元素为:A(3,1:2) =7 8A(2:3,:) =4 5 67 8 9A(1:2,3) =363、多项式求多项式 p(x) = x3 + 2x+ 4的根p=[1 0 2 4];roots(p)ans =0.5898 + 1.7445i0.5898 - 1.7445i-1.17954、基本绘图命令(1)绘制余弦曲线 y=cos(t),t∈[0,2π]t=0:pi/100:2*pi;y=cos(t);plot(t,y)(2)在同一坐标系中绘制余弦曲线 y=cos(t-0.25)和正弦曲线 y=sin(t-0.5),t∈[0,2π]t=0:pi/100:2*pi;y1=cos(t-0.25);y2=sin(t-0.5);plot(t,y1,t,y2)5、基本绘图控制绘制[0,4π]区间上的 x1=10sint 曲线,并要求:(1)线形为点划线、颜色为红色、数据点标记为加号;(2)坐标轴控制:显示范围、刻度线、比例、网络线(3)标注控制:坐标轴名称、标题、相应文本;程序:t=0:pi/100:4*pi;x1=10*sin(t);plot(t,x1,'r-.+')title('t from 0 to 4{\pi}')xlabel('Variable t')ylabel('Variable x1')grid ontext(2,5,'曲线x1=10*sin(t)')legend('x1')六、实验要求利用所学知识,完成上述各项实验内容,并将实验过程和实验步骤和结果写在报告中。

基于matlab的实验报告

基于matlab的实验报告

基于matlab的实验报告实验报告:基于MATLAB 的实验一、实验目的通过使用MATLAB 软件,掌握如何进行数据分析、图像处理、算法实现等一系列实验操作,提高实验者的实践能力和动手能力。

二、实验原理MATLAB 是一种在科学计算和技术开发领域广泛应用的计算机软件。

它能进行矩阵计算、绘制函数和数据图像、实现算法以及进行数据分析等。

通过掌握MATLAB 的使用,能够快速、高效地解决各种科学和工程问题。

三、实验内容1. 数据分析:使用MATLAB 的数据分析工具进行数据的导入、处理和分析。

2. 图像处理:利用MATLAB 的图像处理工具包对图像进行滤波、增强、分割等操作。

3. 算法实现:使用MATLAB 实现常用的算法,如排序、搜索、图像压缩等。

四、实验步骤1. 数据分析:(1)使用MATLAB 的读取数据函数将数据导入MATLAB 环境中。

(2)利用MATLAB 的数据处理函数进行数据清洗和预处理。

(3)使用MATLAB 的统计工具进行数据分析,如求平均值、标准差等。

(4)利用MATLAB 的绘图函数将分析结果可视化。

2. 图像处理:(1)使用MATLAB 的读取图像函数将图像导入MATLAB 环境中。

(2)利用MATLAB 的图像处理工具包进行滤波操作,如均值滤波、中值滤波等。

(3)使用MATLAB 的图像增强函数对图像进行锐化、变换等操作。

(4)利用MATLAB 的图像分割算法对图像进行分割。

3. 算法实现:(1)使用MATLAB 编写排序算法,如冒泡排序、快速排序等。

(2)使用MATLAB 编写搜索算法,如二分查找、线性搜索等。

(3)使用MATLAB 实现图像压缩算法,如离散余弦变换(DCT)。

五、实验结果实验中,我们使用MATLAB 完成了数据分析、图像处理和算法实现的一系列实验操作。

通过数据分析,我们成功导入了数据并对其进行了清洗和预处理,最后得到了数据的统计结果。

在图像处理方面,我们对图像进行了滤波、增强和分割等操作,最终得到了处理后的图像。

数字信号处理 Matlab实验一 Matlab 基本功能和基础知识操作

数字信号处理 Matlab实验一 Matlab 基本功能和基础知识操作

温州大学物理与电子信息工程学院Matlab 仿真及其应用 实验报告实验一Matlab 基本功能和基础知识操作 [实验目的和要求]1、 熟练掌握Matlab 的启动与退出2、 熟悉Matlab 的命令窗口、常用命令、帮助系统3、 熟悉Matlab 的数据类型、基本矩阵操作、运算符和字符串处理[实验内容]1、 用逻辑表达式球下列分段函数的值 22201112,=0:0.5:2.52123t t y t t t t t t ⎧≤<⎪=-≤<⎨⎪-+≤<⎩其中2、 求[100,999]之间能被32整除的数的个数3、 建立一个字符串向量,删除其中的小写字母。

4、 输入矩阵1234514789A ⎡⎤⎢⎥=⎢⎥⎢⎥⎣⎦,求出此矩阵的行列式,逆和特征根,并找出A 中大于5和小于9的元素,用行列式表示。

5、 不采用循环的形式求出和式63230034ii i i S ===+∑∑6、 给定矩阵E=rand (4,4),计算C+E ,C*E ,C\E实验结果及分析:经过Matlab 软件的程序编辑和测试分析,得出以下实验结果: 详见程序代码、注释及屏幕截图:【题1】程序代码:t=0:0.5:2.5y=t.^2.*((t>=0)&(t<1))+(t.^2-1).*((t>=1)&(t<2))+(t.^2-2*t+1).*((t>=2)&(t<3)) 效果截图:【题2】程序代码:p=rem([100:999],32)==0;sum(p)效果截图:【题3】程序代码:ch='dfghjGUIJKVC',k=find(ch>'a'&ch<='z'),ch(k)=[]效果截图:【题4】程序代码:A=[1 2 3;4 5 14;7 8 9];[i,j]=find(A>5&A<9) %定位for n=1:length(i)m(n)=A(i(n),j(n))endDA=det(A) %行列式IA=inv(A) %逆矩阵EA=eig(A) %特征根效果截图:【题5】程序代码:E=rand(4,4); %产生随机数0~1 C=rand(4,4);B1=C+E;B2=C*E;B3=C/E;B1B2B3效果截图:【题6】程序代码:E=rand(4,4); %产生随机数0~1 C=rand(4,4);B1=C+E;B2=C*E;B3=C/E;B1B2B3效果截图:4、心得:通过本次Matlab课程实验,我已熟练Matlab的命令窗口、常用命令、帮助系统,并掌握Matlab的数据类型、基本矩阵操作、运算符和字符串处理。

实验1Matlab的基本使用方法

实验1Matlab的基本使用方法
最简单的方法是将用户目录设置为当前目录,设置方法是在命令窗口中输入指令 cd d:\mydir 或者 pwd d:\mydir 另一种方法是将用户目录设置为 Matlab 的搜索路径中,方法是在命令窗口中输入指令:
7
path(path,’d:\mydir’)。用这种方法设置的目录信息只在当前环境中有效,一旦 Matlab 重新启 动,以前的设置就无效。
等于)
1
2) 逻辑运算:&(与)、|(或)、~(非)(非零元素都表示为真) 关系函数和逻辑函数:
函数
功能
函数
功能
all(x)
检查 x 是否全为 1
any(x)
检查 x 是否有不为零的元素
find(x)
找出非零元素的位置标识
isempty(x) 检查 x 是否为空阵
isinf(x)
检查 x 是否为无穷大
Your variables are:
RXYZtxyz
>> whos
Name
Size
Bytes Class
R
31x31
7688 double array
X
31x31
7688 double array
Y
31x31
7688 double array
Z
31x31
7688 double array
t
1x501
(11) 帮助.
3、实验指导 Matlab 是美国 Mathworks 公司推出的一套高性能的数值分析和计算软件,它将矩阵运
算、数值分析、图形处理、编程技术结合在一起,为用户提供了一个强有力的科学及工程问 题分析计算和程序设计的工具。
Matlab 语言可以被认为是一种解释性语言,用户可以在 Matlab 的工作空间中输入一个 指令,也可以在编辑器中编写应用程序,应用程序执行时,Matlab 软件对其中的命令和函 数进行翻译,然后在 Matlab 环境中对它进行处理,最后返回结果。 (1)数值、变量和表达式

基于MATLAB实验数据的几种处理方法

基于MATLAB实验数据的几种处理方法

模式识别与仿真技术Pattern Recognition and Simulation《自动化技术与应用》2005年第24卷第1期基于MAT LAB实验数据的几种处理方法吴晓光,徐精彩,李树刚,李 华(西安科技大学,陕西 西安 710054)摘要:本文从M AT LAB的工程计算与数据处理能力出发,着重讨论如何运用M AT LAB实现实验数据处理的方法,包括数据拟合、数值插值、数值微商和数值积分,并通过实际应用得出M AT LAB是具有强大数据计算和分析功能的软件,同时将使用者从繁琐的底层编程中解放出来,大大提高工作效率。

关键词:数据处理;M AT LAB;曲线拟合中图分类号:TP27412 文献标识码:B 文章编号:100327241(2005)0120025203Matla b-bas e d Proces sin g Met h o ds of Exp eri m e ntal DataWU Xiao-guang,XU Jing-cai,LI Shu-gang,LI H ua(X i’an University of Science&T echnology,X i’an710054,China)Abstract:Because of the high capability of the engineering calculation and data processing of M AT LAB,the data processing methods suck as data fit2 ting,data interpretation,differential and integral for the experimental data by using M AT LAB are all presented in the paper.K ey w ords:Data processing;M AT LAB;Curve fitting1 引言数据处理是一项复杂、繁琐的事情,随着计算机技术的迅速发展,美国Mathw orks公司于1967年推出了Matrix Laboratory(缩写为M AT LAB)软件包,集应用程序和图形于同一环境[1]。

Matlab实验报告

Matlab实验报告

实 验 内 容
<设计性实验> 1、对于连续信号 x(t)=1+cos(2πft),其中 f=5kHz,分别以采样频率 fs=6 kHz 和 fs=12kHz 对其 进行采样, (1)分别绘出对应的采样信号。 (2)对信号进行傅里叶变换,绘出对应的曲线。 (3)在 simulink 仿真环境下,设计系统框图,观察信号的频谱成分。 实验源程序: (1)采样 clear all; fs1=6000;fs2=12000;f=5000; dt1=1/fs1;dt2=1/fs2; t=0:0.00001:0.0005;t1=0:dt1:0.005;t2=0:dt2:0.0025; x_t=1+cos(2*pi*f*t); x_t1=1+cos(2*pi*f*t1); x_t2=1+cos(2*pi*f*t2); figure(1) subplot(3,1,1) plot(t,x_t); title('原始信号') subplot(3,1,2) plot(t1,x_t1); title('采样频率 6kHZ 的采样信号') subplot(3,1,3) plot(t2,x_t2); title('采样频率 12kHZ 的采样信号') xlabel('时间/s')
3、lpf 函数 function [t,st]=lpf(f,sf,B); df = f (2) - f (1); T = 1/df; hf = zeros(1,length(f)); bf = [ -floor(B/df):floor(B/df)] + floor(length(f)/2); hf(bf) = 1; yf = hf.*sf; [t,st]=F2T(f,yf); st = real(st);
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一数据处理方法的MATLAB实现
一、实验目的
学会在MATLAB环境下对已知的数据进行处理。

二、实验方法
1. 求取数据的最大值或最小值。

2. 求取向量的均值、标准方差和中间值。

3.在MATLAB环境下,对已知的数据分别进行曲线拟合和插值。

三、实验设备
1.586以上微机,16M以上内存,400M硬盘空间,2X CD-ROM
2.MATLAB5.3以上含CONTROL SYSTEM TOOLBOX。

四、实验内容
1.在MATLAB环境下,利用MATLAB控制系统工具箱中的函数直接求取数据的最大值或最小值,以及向量的均值、标准方差和中间值。

2.在MATLAB环境下,选择合适的曲线拟合和插值方法,编写程序,对已知的数据分别进行曲线拟合和插值。

五、实验步骤
1. 在MATLAB环境下,将已知的数据存到数据文件mydat.mat中。

双击打开Matlab,在命令窗口(command window)中,输入一组数据:实验一数据处理方法的MATLAB实现
一、实验目的
学会在MATLAB环境下对已知的数据进行处理。

二、实验方法
1. 求取数据的最大值或最小值。

2. 求取向量的均值、标准方差和中间值。

3.在MATLAB环境下,对已知的数据分别进行曲线拟合和插值。

三、实验设备
1.586以上微机,16M以上内存,400M硬盘空间,2X CD-ROM
2.MATLAB5.3以上含CONTROL SYSTEM TOOLBOX。

四、实验内容
1.在MATLAB环境下,利用MATLAB控制系统工具箱中的函数直接求取数据的最大值或最小值,以及向量的均值、标准方差和中间值。

2.在MATLAB环境下,选择合适的曲线拟合和插值方法,编写程序,对已知的数据分别进行曲线拟合和插值。

五、实验步骤
1. 在MATLAB环境下,将已知的数据存到数据文件mydat.mat中。

双击打开Matlab,在命令窗口(command window)中,输入一组数据:
x=[1,4,2,81,23,45]
x =
1 4
2 81 2
3 45
单击保存按钮,保存在Matlab指定目录(C:\Program Files\MATLAB71)下,文件名为“mydat.mat”。

2. 在MATLAB环境下,利用MATLAB控制系统工具箱中的函数直接求取数据的最大值或最小值,以及向量的均值、标准方差和中间值。

继续在命令窗口中输入命令:
(1)求取最大值“max(a)”;
>>
max(x)
ans =
81
(2)求取最小值“min(a)”;
>>
min(x)
ans =
1
(3)求取均值“mean(a)”;
>>
mean(x)
ans =
26
(4)求取标准方差“std(a)”;
>>
std(x)
ans =
31.8748
(5)求取中间值“median(a)”;
median(x)
ans =
13.5000
3. 在MATLAB环境下,编写程序,对已知的数据进行曲线拟合和插值。

在Matlab命令窗口中继续输入:
x=10:1:20;
y=[18,16,13,11,9,7,12,15,19,20,27];
n=2;
p=polyfit(x,y,n);
xi=linspace(10,20,10);
yi=polyval(p,xi);
plot(x,y,'-o',xi,yi,'--');
最终拟合图像如图:
六、问题与讨论
1、曲线拟合和插值有什么区别?常用的曲线拟合和插值方法有哪几种,如何用MATLAB函数实现?
答:插值是用高阶函数将测定的数据点平滑的串联起来。

曲线拟合是用一条平滑的曲线比表示函数变量之间的关系,不要求通过每一个已知点,而整体的拟合数据误差最小。

常用的曲线拟合法有最佳直线拟合、二次多项式拟合等。

常用的插值方法有线性插值法,三次样条插值等。

通过改变输入量“n”的数值可以选择是采用直线拟合还二次多项式拟合。

相关文档
最新文档