您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > MATLAB实验指导书(DOC)
MATLAB实验指导书前言MATLAB程序设计语言是一种高性能的、用于科学和技术计算的计算机语言。它是一种集数学计算、分析、可视化、算法开发与发布等于一体的软件平台。自1984年MathWorks公司推出以来,MATLAB以惊人的速度应用于自动化、汽车、电子、仪器仪表和通讯等领域与行业。MATLAB有助于我们快速高效地解决问题。MATLAB相关实验课程的学习能加强学生对MATLAB程序设计语言理解及动手能力的训练,以便深入掌握和领会MATLAB应用技术。目录基础型实验............................................................................................-1-实验一MATLAB集成环境使用与基本操作命令练习.............-1-实验二MATLAB中的数值计算与程序设计.............................-7-实验三MATLAB图形系统.........................................................-9--1-基础型实验实验一MATLAB集成环境使用与基本操作命令练习一实验目的熟悉MATLAB语言编程环境;熟悉MATLAB语言命令二实验仪器和设备装有MATLAB7.0以上计算机一台三实验原理MATLAB是以复杂矩阵作为基本编程单元的一种程序设计语言。它提供了各种矩阵的运算与操作,并有较强的绘图功能。1.1基本规则1.1.1一般MATLAB命令格式为[输出参数1,输出参数2,……]=(命令名)(输入参数1,输入参数2,……)输出参数用方括号,输入参数用圆括号如果输出参数只有一个可不使用括号。1.1.2%后面的任意内容都将被忽略,而不作为命令执行,一般用于为代码加注释。1.1.3可用↑、↓键来重现已输入的数据或命令。用←、→键来移动光标进行修改。1.1.4所有MATLAB命令都用小写字母。大写字母和小写字母分别表示不同的变量。1.1.5常用预定义变量,如pi、Inf、NaN、ans1.1.6矩阵的输入要一行一行的进行,每行各元素用空格或“,”分开,每行用“;”分开。如987654321AMATLAB书写格式为A=[123;456;789]在MATLAB中运行如下程序可得到A矩阵a=[123;456;789]a=1234567891.1.7需要显示命令的计算结果时,则语句后面不加“;”号,否则要加“;”号。-2-运行下面两种格式可以看出它们的区别:a=[123;456;789]a=[123;456;789];a=123不显示结果4567891.1.8当输入语句过长需要换行时,应加上“…”后再回车,则可续行输入。1.2文件管理常用命令1.2.1帮助(HELP)命令MATLAB有很多命令,因此很不容易记忆。使用HELP命令可以得到有关命令的屏幕帮助信息。如在MATLAB环境下直接运行HELP命令就会在屏幕上给出MATLAB的基本命令以及相关的工具箱软件命令(请自行验证)。而下面的格式可以得到指定命令的帮助信息,和详细说明。help命令名1.2.2save命令该命令存储定义的变量或演算结果,也可以用来存储指定的变量。命令格式为save文件名[变量名表][-append][-ascii]1.2.3what命令该命令可以在当目录下显示MATLAB文件和MAT数据文件1.2.4dir命令显示当前目录下的所有文件.1.2.5clear命令如果输入calearabc,则表示清除工作空间中指定变量a,b,c;如果仅仅输入calear命令,则清除整个工作空间。1.3矩阵运算MATLAB具有强大的矩阵运算功能,这里我们只作简单介绍.1.3.1在MATLAB中表示一个矢量要用方括号,而列矢量的输入只需在行矢量输入格式基础上加转置符“’”即可。如x=[123;456]x=123456而x=[123;456]'(加转置符)-3-x=1425361.3.2下面三条命令可以产生一个行矢量1a=linspace(x,y,n)2a=logspace(x,y,n)3a=[x:n:y]第一条命令可以在线性空间产生一个值在x至y之间间隔点数为n的行矢量(一组数据)。其行矢量的起始值是x,终值为y,点数为n。第二条命令可以在对数空间产生一个值在10x至10y之间等间隔的行矢量(一组数据)。第三条命令产生x至y步长为n的行矢量。但是,三个命令之间存在差别,下面的例子可以说明这一点。例1x=logspace(0,5,6)x=110100100010000100000例2x=linspace(0,10,11)x=012345678910例3x=[0:1:10]x=012345678910通过上面三个例子可以看出例一,例二中n代表选取的点数。而在例三中n则表示步长.注意它们的区别。1.3.3矩阵的加,减,乘,除等,和其它语言书写一样。但要注意的是在运算符前面加有“.”则表示是数组运算,为对应元素的相应操作。例4请注意下面的不同情况.a=[12;34];b=[22;22];c=a*bc=a.*bc=c=6624141468c=a/bc=a./bc=c=-4-1.0e+015*0.50001.0000-2.25182.25181.50002.0000-2.25182.25181.4常见数学函数函数名数学计算功能函数名数学计算功能abs(x)实数的绝对值或复数的幅值floor(x)对x朝-∞方向取整acos(x)反余弦arcsinxgcd(m,n)求正整数m和n的最大公约数acosh(x)反双曲余弦arccoshximag(x)求复数x的虚部angle(x)在四象限内求复数x的相角lcm(m,n)求正整数m和n的最小公倍数asin(x)反正弦arcsinxlog(x)自然对数(以e为底数)asinh(x)反双曲正弦arcsinhxlog10(x)常用对数(以10为底数)atan(x)反正切arctanxreal(x)求复数x的实部atan2(x,y)在四象限内求反正切rem(m,n)求正整数m和n的m/n之余数atanh(x)反双曲正切arctanhxround(x)对x四舍五入到最接近的整数ceil(x)对x朝+∞方向取整sign(x)符号函数:求出x的符号conj(x)求复数x的共轭复数sin(x)正弦sinxcos(x)余弦cosxsinh(x)反双曲正弦sinhxcosh(x)双曲余弦coshxsqrt(x)求实数x的平方根:xexp(x)指数函数xetan(x)正切tanxfix(x)对x朝原点方向取整tanh(x)双曲正切tanhx例5:输入x=[-4.85-2.3-0.21.34.566.75],则:ceil(x)=-4-20257fix(x)=-4-20146floor(x)=-5-3-1146round(x)=-5-201571.5关系及逻辑运算1.5.1关系运算允许常量(或矩阵中的元素与元素)之间的比较.如果比较结果为真,则答案为1,否则为0.常用的关系运算符如下:小于,大于,==等于=小于等于,=大于等于,~=不等于对于复数”==”和”~=”既比较实部也比较虚部,而其它运算仅比较实部。例6比较a=[5:1:15]与b=[12887101211131415]中的对应元素是否相同,则运行下面程序a=[5:1:15];b=[12887101211131415];y=a==by=00010100111-5-1.5.2MATLAB有三个逻辑运算符.&逻辑与|逻辑或~逻辑非在矩阵运算中,以上命令是将两个矩阵中的对应元素进行运算,得到的结果是具有同样元素的矩阵。例7分别对下面两个矩阵进行逻辑运算.X=[01;10];Y=[00;10];X&Yans=0010X|Yans=0110~Xans=1001MATLAB在进行混合运算时,其顺序为:算术运算→关系比较→逻辑运算例8计算x&y+xy时,程序首先执行x+y运算,然后将相加结果与y比较,最后将比较结果和x作与运算,运行结果如下。x=[01;10];y=[00;10];x&y+xyans=0110四实验内容和步骤熟悉MATLAB语言编程环境。在这一环境中,系统提供了许多编写,调试和执行MATLAB程序的便利工具。熟悉变量、MATLAB基本数学函数使用,矩阵操作练习,主要包括矩阵的建立,算数运算,逻辑运算和关系运算。(一)熟悉Matlab的运行环境以及HELP命令,运行demo命令,观看matlab所具有的功能。(二)验证例题中所有操作。-6-(三)完成以下各题,并在机器上运行结果验证。1.输入A=[715;256;315],B=[111;222;333],在命令窗口中执行下列表达式,掌握其含义:A(2,3)A(:,2)A(3,:)A(:,1:2:3)A(:,3).*B(:,2)A(:,3)*B(2,:)A*BA.*BA^2A.^2B/AB./A2.输入C=1:2:20,-7-实验二MATLAB中的数值计算与程序设计一实验目的:完成MATLAB下数据分析与程序设计有关问题的练习。学习脚本文件的编写,数值输入,数组计算,程序调试等;练习利用MATLAB编程序解决基本数学问题。学习全局和局部变量的使用,流程控制结构,函数编写及其调试。二实验仪器和设备装有MATLAB7.0以上计算机一台三实验原理1.常用运算命令运算命令名功能angle求复数的角min求最小值max求最大值sum求和roots求多项式的根poly由多项式的根求多项式的系数polyval求给定点多项式的值polyder多项式求导例1求a=S^3+2S^2+3S+4根.a=[1234];roots(a)ans=-1.6506-0.1747+1.5469i-0.1747-1.5469i或roots([1234])ans=-1.6506-0.1747+1.5469i-0.1747-1.5469i例2已知某多项式的根如下-1.6506-0.1747+1.5469i-8--0.1747-1.5469i求该多项式.poly([-1.6506,-0.1747+1.5469i,-0.1747-1.5469i])ans=1.00002.00003.00014.0001即所求多项式为S^3+2S^2+3S+4.2.建立M文件将多个可执行...的系统命令,用文本编辑器编辑后并存放在后缀为.m的文件中,若在MATLAB命令窗口中输入该m-文件的文件名(不跟后缀.m!),即可依次执行该文件中的多个命令。这个后缀为.m的文件,也称为Matlab的脚本文件(ScriptFile)。注意:文件存放路径必须在Matlab能搜索的范围内。3.建立函数文件对于一些特殊用户函数,系统提供了一个用于创建用户函数的命令function,以备用户随时调用。1.格式:function[输出变量列表]=fun_name(输入变量列表)用户自定义的函数体2.函数文件名为:fun_name,注意:保存时文件名...与函数名...最好相同;3.存储路径:最好在系统的搜索路径上。4.调用方法:输出参量=fun_name(输入变量)例5:计算s=n!,在文本编辑器中输入:functions=pp(n);s=1;fori=1:ns=s*i;ends;在MATLAB命令窗口中输入:s=pp(5)结果为:s=1203.求下列表达式的值。(1))1034245.01(26w(2)acbeabccbax)tan(22,其中a=3.5,b=5,c=-9.8。-9-实验三MATLAB图形系统一实验目的学会用MATLAB语言绘图二实验仪器和设备装有MATLAB7.0以上计算机一台三实验原理1、plot该命令在线性坐标系下绘制y对应于x的轨迹。若其中之一为矩阵则该命令将对应于矩阵的行或者列绘制一簇曲线。该命令也可以在同一坐标轴下绘制多条曲线。例1运行程序t=[0:1:10];x1=t;plot(x1)可
本文标题:MATLAB实验指导书(DOC)
链接地址:https://www.777doc.com/doc-1231486 .html