文档库 最新最全的文档下载
当前位置:文档库 › matlab第六次作业

matlab第六次作业

matlab第六次作业
matlab第六次作业

matlab课后习题及答案详解

第1章 MATLAB概论 1.1与其他计算机语言相比较,MATLAB语言突出的特点是什么? MATLAB具有功能强大、使用方便、输入简捷、库函数丰富、开放性强等特点。 1.2 MATLAB系统由那些部分组成? MATLAB系统主要由开发环境、MATLAB数学函数库、MATLAB语言、图形功能和应用程序接口五个部分组成。 1.3 安装MATLAB时,在选择组件窗口中哪些部分必须勾选,没有勾选的部分以后如何补安装? 在安装MATLAB时,安装内容由选择组件窗口中个复选框是否被勾选来决定,可以根据自己的需要选择安装内容,但基本平台(即MATLAB选项)必须安装。第一次安装没有选择的内容在补安装时只需按照安装的过程进行,只是在选择组件时只勾选要补装的组件或工具箱即可。 1.4 MATLAB操作桌面有几个窗口?如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出去的窗口重新放置到桌面上? 在MATLAB操作桌面上有五个窗口,在每个窗口的右上角有两个小按钮,一个是关闭窗口的Close按钮,一个是可以使窗口成为独立窗口的Undock按钮,点击Undock按钮就可以使该窗口脱离桌面成为独立窗口,在独立窗口的view菜单中选择Dock ……菜单项就可以将独立的窗口重新防止的桌面上。 1.5 如何启动M文件编辑/调试器? 在操作桌面上选择“建立新文件”或“打开文件”操作时,M文件编辑/调试器将被启动。在命令窗口中键入edit命令时也可以启动M文件编辑/调试器。 1.6 存储在工作空间中的数组能编辑吗?如何操作? 存储在工作空间的数组可以通过数组编辑器进行编辑:在工作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输入修改内容即可。 1.7 命令历史窗口除了可以观察前面键入的命令外,还有什么用途? 命令历史窗口除了用于查询以前键入的命令外,还可以直接执行命令历史窗口中选定的内容、将选定的内容拷贝到剪贴板中、将选定内容直接拷贝到M文件中。 1.8 如何设置当前目录和搜索路径,在当前目录上的文件和在搜索路径上的文件有什么区别? 当前目录可以在当前目录浏览器窗口左上方的输入栏中设置,搜索路径可以通过选择操作桌面的file 菜单中的Set Path菜单项来完成。在没有特别说明的情况下,只有当前目录和搜索路径上的函数和文件能够被MATLAB运行和调用,如果在当前目录上有与搜索路径上相同文件名的文件时则优先执行当前目录上的文件,如果没有特别说明,数据文件将存储在当前目录上。 1.9 在MATLAB中有几种获得帮助的途径?

计算机建模与仿真--大作业

课程作业报告 课程名称 MATLAB计算及仿真院部名称机电工程 专业电气工程及其自动化班级) 学生姓名 学号 指导教师应明峰 金陵科技学院教务处制

第2章MATLAB概论 1、与其他计算机语言相比较,MA TLAB语言突出的特点是什么? MATLAB具有功能强大、使用方便、输入简捷、库函数丰富、开放性强等特点。 2、MATLAB系统由那些部分组成? MATLAB系统主要由开发环境、MATLAB数学函数库、MATLAB语言、图形功能和应用程序接口五个部分组成。 3、安装MA TLAB时,在选择组件窗口中哪些部分必须勾选,没有勾选的部分以后如何补安装? 在安装MATLAB时,安装内容由选择组件窗口中个复选框是否被勾选来决定,可以根据自己的需要选择安装内容,但基本平台(即MATLAB选项)必须安装。第一次安装没有选择的内容在补安装时只需按照安装的过程进行,只是在选择组件时只勾选要补装的组件或工具箱即可。 4、MATLAB操作桌面有几个窗口?如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出去的窗口重新放置到桌面上? 在MATLAB操作桌面上有五个窗口,在每个窗口的右上角有两个小按钮,一个是关闭窗口的Close按钮,一个是可以使窗口成为独立窗口的Undock按钮,点击Undock按钮就可以使该窗口脱离桌面成为独立窗口,在独立窗口的view菜单中选择Dock ……菜单项就可以将独立的窗口重新防止的桌面上。 5、如何启动M文件编辑/调试器? 在操作桌面上选择“建立新文件”或“打开文件”操作时,M文件编辑/调试器将被启动。在命令窗口中键入edit命令时也可以启动M文件编辑/调试器。 6、存储在工作空间中的数组能编辑吗?如何操作? 存储在工作空间的数组可以通过数组编辑器进行编辑:在工作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输入修改内容即可。 7、命令历史窗口除了可以观察前面键入的命令外,还有什么用途? 命令历史窗口除了用于查询以前键入的命令外,还可以直接执行命令历史窗口中选定的内容、将选定的内容拷贝到剪贴板中、将选定内容直接拷贝到M文件中。 8、如何设置当前目录和搜索路径,在当前目录上的文件和在搜索路径上的文件有什么区别? 当前目录可以在当前目录浏览器窗口左上方的输入栏中设置,搜索路径可以通过选择操作桌面的file菜单中的Set Path菜单项来完成。在没有特别说明的情况下,只有当前目录

MATLAB第一章作业答案

第一章 M A T L A B 概况与基本操作 1.选择题(每题2分,共20分): (1)最初的MATLAB 核心程序是采用D 语言编写的。 (2)即将于2011年9月发布的MATLAB 新版本的编号为C 。 2011Ra 2011Rb R2011b R2011a (3)在默认设置中,MATLAB 中的注释语句显示的颜色是B 。 A.黑色 B.绿色 C.红色 D.蓝色 (4)如果要以科学计数法显示15位有效数字,使用的命令是A 。 long e long long g long d (5)在命令窗口新建变量a 、b ,如果只查看变量a 的详细信息,使用的命令为A 。 a a (6)如果要清除工作空间的所有变量,使用的命令为C 。 all C.两者都可 D.两者都不可 (7)在创建变量时,如果不想立即在命令窗口中输出结果,可以在命令后加上B 。 A.冒号 B.分号 C.空格 D.逗号 (8)如果要重新执行以前输入的命令,可以使用D 键。 A.下箭头↓ B.右箭头→ C.左箭头← D.上箭头↑ (9)如果要查询函数det 的功能和用法,并显示在命令窗口,应使用命令C 。 D.三者均可 (10)如果要启动Notebook 文档,下列D 操作是可行的。 A.在命令窗口输入notebook 命令 B.在命令窗口输入notebook filename 命令 C.在Word 中启动M-book 文档 D.三者均可 2.填空题(每空1分,共20分): (1)MATLAB 是matrix 和laboratory 两个单词前三个字母的组合,意为“矩阵实验室”,它的创始人是Cleve Moler 和Jack Little 。 (2)在MATLAB 的默认设置中,关键字显示的字体为蓝色,命令、表达式、计算结果显示的字体为黑色,字符串显示的字体为褐红色,注释显示的字体为绿色,错误信息显示的字体为红色。 (3)在命令窗口中,输出结果显示为各行之间添加空行的命令为format loose ,各行之间不添加空行的命令为format compact 。 (4)在MATLAB 中,各种标点符号的作用是不同的。例如,空格的作用是分隔数组每行各个元素,逗号的作用是分隔数组每行各个元素或函数的各个输入参数,分号的作用是作为不显示命令结果的命令行的结尾或分隔数组各列,冒号的作用是生成一维数组或表示数组全部元素,百分号的作用是引导一行注释,…的作用是连接相邻两行,感叹号的作用是调用操作系统命令。 3.程序设计题(每题10分,共40分) (1)以25m/s 的初速度向正上方投球(g=s 2 ),计算到达最高点的时间tp 以及球从出发点到最高点的距离hp 。 解:根据物理学知识,物体上抛运动的速度与经过的时间之间的关系为0p p v v gt =-,因此所需要的时间为0p p v v t g -= 。而到达最高点时的速度0p v =,因此可根据此公式求出tp : v0=25;g=;vp=0; tp=(v0-vp)/g tp =

matlab课后习题解答第二章doc

第2章符号运算 习题2及解答 1 说出以下四条指令产生的结果各属于哪种数据类型,是“双精度” 对象,还是“符号”符号对象? 3/7+0.1; sym(3/7+0.1); sym('3/7+0.1'); vpa(sym(3/7+0.1)) 〖目的〗 ●不能从显示形式判断数据类型,而必须依靠class指令。 〖解答〗 c1=3/7+0.1 c2=sym(3/7+0.1) c3=sym('3/7+0.1') c4=vpa(sym(3/7+0.1)) Cs1=class(c1) Cs2=class(c2) Cs3=class(c3) Cs4=class(c4) c1 = 0.5286 c2 = 37/70 c3 = 0.52857142857142857142857142857143 c4 = 0.52857142857142857142857142857143 Cs1 = double Cs2 = sym Cs3 = sym Cs4 = sym 2 在不加专门指定的情况下,以下符号表达式中的哪一个变量被认 为是自由符号变量. sym('sin(w*t)'),sym('a*exp(-X)'),sym('z*exp(j*th)') 〖目的〗 ●理解自由符号变量的确认规则。 〖解答〗 symvar(sym('sin(w*t)'),1) ans = w symvar(sym('a*exp(-X)'),1) ans = a

symvar(sym('z*exp(j*th)'),1) ans = z 3 求以下两个方程的解 (1)试写出求三阶方程05.443 =-x 正实根的程序。注意:只要正实根,不要出现其他根。 (2)试求二阶方程022=+-a ax x 在0>a 时的根。 〖目的〗 ● 体验变量限定假设的影响 〖解答〗 (1)求三阶方程05.443 =-x 正实根 reset(symengine) %确保下面操作不受前面指令运作的影响 syms x positive solve(x^3-44.5) ans = (2^(2/3)*89^(1/3))/2 (2)求五阶方程02 2 =+-a ax x 的实根 syms a positive %注意:关于x 的假设没有去除 solve(x^2-a*x+a^2) Warning: Explicit solution could not be found. > In solve at 83 ans = [ empty sym ] syms x clear syms a positive solve(x^2-a*x+a^2) ans = a/2 + (3^(1/2)*a*i)/2 a/2 - (3^(1/2)*a*i)/2 4 观察一个数(在此用@记述)在以下四条不同指令作用下的异同。 a =@, b = sym( @ ), c = sym( @ ,' d ' ), d = sym( '@ ' ) 在此,@ 分别代表具体数值 7/3 , pi/3 , pi*3^(1/3) ;而异同通过vpa(abs(a-d)) , vpa(abs(b-d)) , vpa(abs(c-d))等来观察。 〖目的〗 ● 理解准确符号数值的创建法。 ● 高精度误差的观察。 〖解答〗 (1)x=7/3 x=7/3;a=x,b=sym(x),c=sym(x,'d'),d=sym('7/3'), a =

MATLAB练习作业(已做)2012

说明:如在测试时请将程序中的中文字符改为西文(部分程序为手写,并未经matlab验证) 2012年春《MATLAB基础》第一次上机练习与作业练习1:脚本文件 建立一个文件名为helloWorld的脚本文件,运行该文件时显示出如下文字: Hello World! I am going to learn MATLAB ?提示: 用disp显示字符串,将要显示的字符号串用单引号引起来。如'This is a string' 练习2:变量 获取并保存当前的日期与时间 ●用函数clock生成一个变量,变量名为start ●用size查看start的维数,它是一个行向量还是一个列向量? ●start包含什么内容?用help clock查看 ●用函数datestr将向量start转换成字符串,得到新的变量,名为startString ●将start与startString保存为mat文件,文件名为startTime ●在练习1建立的脚本文件helloWorld.m文件中,用load函数导入变量startTime, 并显示如下文字: I started learning MATLAB on * start date and time* 练习3:标量 你将要以指数增长的速度来学习MATLAB, 将如下内容添加到helloWorld.m文件中 ●假设你的学习时间是一个常量,为1.5 days,将此时间用秒表示,赋给变量tau ●假设课程持续时间为5 days. 将这个时间单位转换为秒,保存在变量endofClass中? ●将学到的知识描述为t的函数,函数方程为: ●用函数datestr将向量start转换成字符串,得到新的变量startString ●在课程结束时间endofClass,你将学到多少知识?用变量knowledgeAtEnd表示(指数函数exp)

利用Matlab实现Romberg数值积分算法----系统建模与仿真结课作业

利用Matlab 实现Romberg 数值积分算法 一、内容摘要 针对于某些多项式积分,利用Newton —Leibniz 积分公式求解时有困难,可以采用数值积分的方法,求解指定精度的近似解,本文利用Matlab 中的.m 文件编写了复化梯形公式与Romberg 的数值积分算法的程序,求解多项式的数值积分,比较两者的收敛速度。 二、数值积分公式 1.复化梯形公式求解数值积分的基础是将区间一等分时的Newton —Cotes 求积公式: I =(x)[f(a)f(b)]2 b a b a f dx -≈ +? 其几何意义是,利用区间端点的函数值、与端点构成的梯形面积来近似(x)f 在区间[a,b]上的积分值,截断误差为: 3" (b a)()12 f η-- (a,b)η∈ 具有一次的代数精度,很明显,这样的近似求解精度很难满足计算的要求,因而,可以采用将积分区间不停地对分,当区间足够小的时候,利用梯形公式求解每一个小区间的积分近似值,然后将所有的区间加起来,作为被求函数的积分,可以根据计算精度的要求,划分对分的区间个数,得到复化梯形公式: I =1 1 (b a)(b a) (x)dx [f(a)f(b)2(a )]2n b a k k f f n n -=--≈+++∑? 其截断误差为:

2" (b a)h ()12 R f η--= (a,b)η∈ 2.Romberg 数值积分算法 使用复化的梯形公式计算的数值积分,其收敛速度比减慢,为此,采用Romberg 数值积分。其思想主要是,根据I 的近似值2n T 加上I 与2n T 的近似误差,作为新的I 的近视,反复迭代,求出满足计算精度的近似解。 用2n T 近似I 所产生的误差可用下式进行估算: 12221 ()3 n n n I T T T -?=-=- 新的I 的近似值: 122 n n j T T -=?+ j =(0 1 2 ….) Romberg 数值积分算法计算顺序 i=0 (1) 002T i=1 (2) 102T (3) 012T i=2 (4) 202T (5) 112T (6) 022T i=3 (7) 302T (8) 212T (9) 122T (10) 032T i=4 (11) 402T (12) 312T (13) 222T (14) 132T … … … … 其中,第一列是二阶收敛的,第二列是四阶收敛的,第三列是六阶收敛的,第四列是八阶收敛的,即Romberg 序列。

MATLAB第一次实验

一、【实验目的】 了解matlab基础知识和操作 一、【实验任务】 P16 4. 编写函数文件,计算∑k!,并求出当n=20时表达式的值。 P27 2. 矩阵A=[1,2,3;4,5,6;7,8,9],B=[4,6,8;5,5,6;3,2,2],计算A*B,A.*B,并比较两者的区 别。 P27 3. 已知矩阵A=[5,2;9,1],B=[1,2;9,2],做简单的关系运算A>B,A= =B,AB)。 P34 1. 用π/4=1-/3+1/5-1/7+…公式求π的近似值,直到某一项的绝对值小于10-6为止。 二、【实验程序】 P16 第4题 function s=s(n) y=1; sum=0; for i=1:n; y=y*i; sum=sum+y; end sum >> s(20) sum = 2.5613e+18 P27 第2题 A=[1 2 3;4 5 6;7 8 9]; B=[4 6 8;5 5 6;3 2 2]; >>A*B ans = 23 22 26 59 61 74 95 100 122 >> A.*B

ans = 4 12 24 2 25 36 21 16 18 P27 第3题 >> A=[5 2;9 1]; >> B=[1 2;9 2]; >> A>B ans = 1 0 0 0 >> A==B ans = 0 1 1 0 >> A> (A==B)&(A> (A==B)&(A>B) ans = 0 0 0 0

第二次作业《解释结构模型应用》

大连海事大学 实验报告 《系统工程》 2014~2015学年第一学期 实验名称:基于解释模型在大学生睡眠质量问题的研究学号姓名:马洁茹姚有琳 指导教师:贾红雨 报告时间: 2014年9月24日

《系统工程》课程上机实验要求 实验一解释结构模型在大学生睡眠质量问题中的研究 实验名称:基于MATLAB软件或C/Java/其他语言ISM算法程序设计(一) 实验目的 系统工程课程介绍了系统结构建模与分析方法——解释结构模型法(Inter pretative Structural Modeling ·ISM)是现代系统工程中广泛应用的一种分析方法,能够利用系统要素之间已知的零乱关系,用于分析复杂系统要素间关联结构,揭示出系统内部结构。ISM方法具有在矩阵的基础上再进一步运算、推导来解释系统结构的特点,对于高维多阶矩阵的运算依靠手工运算速度慢、易错,甚至几乎不可能。 本次实验的目的是应用计算机应用软件或者是基于某种语言的程序设计快速实现解释结构模型(ISM)方法的算法,使学生对系统工程解决社会经济等复杂性、系统性问题需要计算机的支持获得深刻的理解。学会运用ISM分析实际问题。 (二) 实验要求与内容: 1.问题的选择 根据对解释结构模型ISM知识的掌握,以及参考所给的教学案例论文,决定选择与我们生活有关的——大学生睡眠质量问题。 2.问题背景 睡眠与我们的生活息息相关,当每天的身体机制在不断运行的过程中身体负荷不断变大,到了夜间就需要休息。但是同一寝室的同学大多休息时段不同,有些习惯早睡,有些会由于许多原因晚睡。有些睡眠较沉不会轻易被打扰,有些睡眠较轻容易被鼾声或者其他声响惊醒。学习得知,解释系统模型是通过对表面分离、凌乱关系的研究,揭示系统内部结构的方法。因此,我想尝试通过解释模型来对该问题进行研究分析。 3.用画框图的形式画出ISM的建模步骤。

系统建模与仿真课后作业

、系统、模型和仿真三者之间具有怎样的相互关系 答:系统是研究的对象,模型是系统的抽象,仿真通过对模型的实验以达到研究系统的目的。 、通过因特网查阅有关蒲丰投针实验的文献资料,理解蒙特卡罗方法的基本思想及其应用的一般步骤。 答:蒲丰投针实验内容是这样的:在平面上画有一组间距为a的平行线,将一根长度为L(L

(1)实体流图

(2)活动循环图 、以第二章中图2-5所示的并行加工中心系统为对象,建立Petri 网模型。 3214所示Petri 网模型的运行过程,并将分析结果同例3-5相比较。

、任取一整数作为种子值,采用第三题中得到的随机数发生器生成随机数序列的前200项数据,并对其统计性能进行检验。 解:由第3题可得到一个随机数发生器: a=5 b=9 c=3 m=512 取种子值,生成的随机数序列前200项数据如下: n n 5000032458 4 t t P t P P P P t P (2)t3发 生后 t t P t P P P P t P (3)t2发 生后 (4)t1不能 发生 t t P t P P P P t P (5)t4发 生后

matlab第一次实验报告

Matlab第一次实验报告 2012029010010 尹康 1. 编程实现以下数列的图像,用户能输入不同的初始值以及系数。并以x,y为坐标显示图像 x(n+1) = a*x(n)-b*(y(n)-x(n)^2); y(n+1) = b*x(n)+a*(y(n)-x(n)^2) 程序代码: n=input('input the number of pionts:'); a=input('input a:'); b=input('input b:'); x=[]; y=[]; x(1)=input('input x1:'); y(1)=input('input y1:'); %输入点数、初始值以及系数for i=2:n x(i)=a*x(i-1)-b*(y(i-1)-x(i-1)^2); y(i)=a*x(i-1)+b*(y(i-1)-x(i-1)^2); %根据已输入的数据进行迭代end figure;plot(x,y,'linewidth',2) axis equal %横纵坐标等比例 text(x(1),y(1),'1st point') %标记初始点 运行结果:

心得体会及改进:在输入某些数据时,所绘曲线可能是一条折线(如:n=5,a=b=x1=1,y1=2)甚至只有一个点(如:n=5,a=b=x1=y1=1),此时可能出现曲线与坐标轴重合或无法看到点的情况,为了更清晰地展现曲线,可以使线宽适当加宽并标记初始点。 2.编程实现奥运5环图,允许用户输入环的直径。 程序代码: 函数circle: %在指定的圆心坐标处,用指定颜色、宽度的线条绘出指定半径、圆心角的弧 function f=circle(r,x,y,color,linw,alp1,alp2) alp=linspace(alp1,alp2); X=r*cos(alp)+x; Y=r*sin(alp)+y; plot(X,Y,color,'linewidth',linw) end 主程序代码: r=input('input r:');

matlab课后习题答案第四章

第4章数值运算 习题 4 及解答 1 根据题给的模拟实际测量数据的一组t和)(t y试用数值差分 diff或数值梯度gradient指令计算)(t y'曲线 y',然后把)(t y和)(t 绘制在同一图上,观察数值求导的后果。(模拟数据从prob_data401.mat获得) 〖目的〗 ●强调:要非常慎用数值导数计算。 ●练习mat数据文件中数据的获取。 ●实验数据求导的后果 ●把两条曲线绘制在同一图上的一种方法。 〖解答〗 (1)从数据文件获得数据的指令 假如prob_data401.mat文件在当前目录或搜索路径上 clear load prob_data401.mat (2)用diff求导的指令 dt=t(2)-t(1); yc=diff(y)/dt; %注意yc的长度将比y短1 plot(t,y,'b',t(2:end),yc,'r') (3)用gradent求导的指令(图形与上相似) dt=t(2)-t(1);

yc=gradient(y)/dt; plot(t,y,'b',t,yc,'r') grid on 〖说明〗 ● 不到万不得已,不要进行数值求导。 ● 假若一定要计算数值导数,自变量增量dt 要取得比原有数据相对误差高1、2个量级 以上。 ● 求导会使数据中原有的噪声放大。 2 采用数值计算方法,画出dt t t x y x ? =0sin )(在]10 ,0[区间曲线,并计算)5.4(y 。 〖提示〗 ● 指定区间的积分函数可用cumtrapz 指令给出。 ● )5.4(y 在计算要求不太高的地方可用find 指令算得。 〖目的〗 ● 指定区间的积分函数的数值计算法和cumtrapz 指令。 ● find 指令的应用。 〖解答〗 dt=1e-4; t=0:dt:10; t=t+(t==0)*eps; f=sin(t)./t; s=cumtrapz(f)*dt; plot(t,s,'LineWidth',3) ii=find(t==4.5); s45=s(ii) s45 =

系统建模与仿真仿真作业结果

Simulink仿真 根据以上的分析论证,将已求得的个函数参数带入动态结构图中,初步得到图3动态结构图。 图3 根据理论得到的各参数设计后可得到理论设计条件下输出转速曲线图4。 图4 可以清楚地看出,输出转速有很大的超调最大可达84.1%,调整时长为2.65s 之久,这是我们所不能接受的。

速度调节器的设计参数与实际调试结果相差比较大,使系统对负载扰动引起的动态速降(升)缺乏有效的抑制能力,存在起动和制动过程中超调量大,突加(减)负载时,动态速降(升)大等缺点。 所以,我们对ACR和ASR的参数进行整定,特别是速度控制器的参数。我们就对其作出了适当的调整,将速度控制器的传递函数改成,将电流调节器的传递函数改为。当然,这是需要时间和经验的。 校正后的动态结构图如图5所示 图5 校正后的输出转速曲线如图6所示 图六

电流环跟随性能仿真实验 如上文所述:电流环的作用就是保持电枢电流在动态过程中不超过允许值,在突加控制作用时不希望有超调,或者超调量越小越好。这就需要我们对电流环的跟随性能加以分析。将电流环从系统中分离出来(将电枢电压对电流环影响看成是扰动)。电流环模型如图7所示: 图7 通过如下命令可以得到电流环的bode图和nyquist图以及电流环的单位阶跃响应。 [num,den]=linmod('current_loop') sys=tf(num,den) figure(1) margin(sys) [mag,phase,w]=bode(sys); [gm,pm,wcg,wcp]=margin(mag,phase,w) Figure(2) Nyquist(sys) Figure(3) Step(sys) 我们还可以得到以下的数据: gm = 4.2925 pm =47.7281 wcg =345.3056 cp =164.6317 剪切频率ωc=164.6317rad/s;相角相对裕度δ=47.7281°;-∏穿越频率ω g=345.3056rad/s 幅值相对裕度Lh=20lg(4.2925)=12.65dB

Matlab实验第一次实验答案

实验一Matlab使用方法和程序设计 一、实验目的 1、掌握Matlab软件使用的基本方法; 2、熟悉Matlab的数据表示、基本运算和程序控制语句 3、熟悉Matlab绘图命令及基本绘图控制 4、熟悉Matlab程序设计的基本方法 二、实验内容: 1、帮助命令 使用help命令,查找sqrt(开方)函数的使用方法; 解:sqrt Square root Syntax B = sqrt(X) Description B = sqrt(X) returns the square root of each element of the array X. For the elements of X that are negative or complex, sqrt(X) produces complex results. Remarks See sqrtm for the matrix square root. Examples sqrt((-2:2)') ans = 0 + 1.4142i 0 + 1.0000i

1.0000 1.4142 2、矩阵运算 (1)矩阵的乘法 已知A=[1 2;3 4]; B=[5 5;7 8]; 求A^2*B 解:A=[1 2;3 4 ]; B=[5 5;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 解: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)矩阵的转置及共轭转置

第二次数学建模作业

4. 根据表1.14 的数据,完成下列数据拟合问题: 表 1.14 美国人口统计数据(百万人) 年份1790 1800 1810 1820 1830 1840 1850 1860 人口 3.9 5.3 7.2 9.6 12.9 17.1 23.2 31.4 年份1870 1880 1890 1900 1910 1920 1930 1940 人口38.6 50.2 62.9 76.0 92.0 106.5 123.2 131.7 年份1950 1960 1970 1980 1990 2000 人口150.7 179.3 204.0 226.5 251.4 281.4 解答:(1): (i)执行程序: t=1790:10:2000; x=[3.9,5.3,7.2,9.6,12.9,17.1,23.2,31.4,38.6,50.2,62.9,76.2,92.0,106.5,123.2,131.7,150.7,179.3,204 .0,226.5,251.4,281.4]; f=@(r,t)3.9.*exp(r(1).*(t-1790)); r=nlinfit(t,x,f,0.036) sse=sum((x-f(r,t)).^2) plot(t,x,'k+',1790:10:2000,f(r,1790:10:2000),'k') axis([1790,2000,0,300]),legend('测量值','理论值') xlabel('美国人口/(百万)'),ylabel('年份') title('美国人口指数增长模型图II') 运行结果: >> Untitled r = 0.0212 sse = 1.7433e+004 即,拟合效果:r =0.0212;误差平方和为:1.7433e+004. 拟合效果图(i):

西安交通大学数字图像处理第二次作业

数字图像处理的基本数学 工具的使用 摘要 本报告主要介绍了运用编程软件MATLAB对图像灰度级进行变换、求取图像均值与方差、采用不同的内插方法对图像进行缩放及利用仿射变换对图像进行空间变换处理的方法。同时,对最近邻内插法、双线性内插法、双三次内插法进行图像处理的效果进行了详细的对比,并对出现差异的原因做出了简要分析。 姓名: X X X 班级: 学号: 提交日期:年月日

2_1. 把lena 512*512图像灰度级逐级递减8-1显示; (1) 问题分析: 所要实现的功能是:在不改变图像大小的前提下,使得整幅图像的灰度级逐级递减并将图像显示出来;即对所有像素点的灰度依次进行除2操作; (2) 实验过程: 工具:MATLAB 软件; 利用imread()函数将图像读入MATLAB ,利用imshow()对原图像进行显示,再利用循环体对整幅图像的灰度级逐级递减并一一进行显示。 源代码附于本报告最后一部分。 (3) 实验结果: 备注:在大小为512X512的途中观察更为方便,但此处为了便于排版以及将结果进行对比对所有图像做了一定的缩小。 a b c d

e f g h 图2_1 (a)大小为512X512的256灰度级图像;(b)~(h)保持图像大小不变的同 时以灰度级128,62,32,16,8,4,2显示的图像。 (4) 结果分析: 对图2_1中的(a)~(h)图像进行对比可知,256级、128级、64级以及32级灰度的图像几乎没有太大的区别;然而在灰度级为16的图(e)中出现了较为明显的伪轮廓,这种效果是由数字图像的平滑区域中的灰度级数不足引起的。(说明:此分析为本人肉眼的观察结果,对细节的观察难免存在疏漏之处,还请批评指正。) 2_2. 计算lena 图像的均值方差; (1) 问题分析: 所要实现的功能是:计算图像‘lena.bmp ’的均值与方差; (2) 实验过程: 工具:MATLAB 软件; 利用imread()函数将图像读入MATLAB ,由于二维数字图像使用二维阵列表示的,因而可以直接利用MATLAB 中的mean2()及std2()分别求整幅图像的均值于方差; 源代码附于本报告最后一部分。 (3) 实验结果:均值 m =99.0512 方差 =52.8776。 2_3. 把lena 图像用近邻、双线性和双三次插值法zoom 到2048*2048;

系统建模与仿真仿真作业结果

Simulink 仿真 根据以上的分析论证,将已求得的个函数参数带入动态结构图中,初 步得到图3动态结构图 图3 根据理论得到的各参数设计后可得到理论设计条件下输出转速曲线 图4 可以清楚地看出,输出转速有很大的超调最大可达84.1%,调整时长为2.65s 之久,这是我们所不能接受的 速度调节器的设计参数与实际调试结果相差比较大,使系统对负载扰动引起的

动态速降(升)缺乏有效的抑制能力,存在起动和制动过程中超调量大,突加(减)负载时,动态速降(升)大等缺点。 所以,我们对ACR和ASR的参数进行整定,特别是速度控制器的参数。我 + 1 们就对其作出了适当的调整,将速度控制器的传递函数改成,将电流调节器的传递函数改为当然,这是需要时间和经验的。 校正后的动态结构图如图5所示 校正后的输出转速曲线如图6所示 |Time cffeel 0

图六 电流环跟随性能仿真实验 如上文所述:电流环的作用就是保持电枢电流在动态过程中不超过允许值,在突加控制作用时不希望有超调,或者超调量越小越好。这就需要我们对电流环的跟随性能加以分析。将电流环从系统中分离出来(将电枢电压对电流环影响看成是扰动)。电流环模型如图7所示: Transfer Fcn1 图7 通过如下命令可以得到电流环的bode图和nyquist图以及电流环的单位阶跃响 应。 [nu m,de n]=li nm od('curre nt_loop') sys=tf( nu m,de n) figure(1) margi n(sys) [mag,phase,w]=bode(sys); [gm,pm,wcg,wcp]=margi n( mag,phase,w) Figure(2) Nyquist(sys) Figure?) Step(sys) 我们还可以得到以下的数据 gm = 4.2925 pm =47.7281 wcg = 345.3056 cp = 164.6317 剪切频率3 c=164.6317rad/s;相角相对裕度S = 47.7281 °; -n穿越频率3 g=345.3056rad/s 幅值相对裕度Lh=20lg (4.2925) =12.65dB

中南大学matlab课后习题

第二章 1·求下列表达式的值。 (1)w=sqrt(2)*(1+*10^-6) w = (2)a=;b=5;c=; x=(2*pi*a+(c+b)/(pi+a*b*c)-exp(2))/(tan(b+c)+a); x x = (3)a=;b=; y=2*pi*a^2*[(1-pi/4)*b-4)*a]; y y = (4)t=[2,1-3i;5,]; z=1/2*exp(2*t)*log(t+sqrt(1+t^2)); z z = +004 * - - - - 2,已知a,b,求下列表达式的值。 a=[-1,5,-4;0,7,8;3,61,7];b=[8,3,-1;2,5,3;-3,2,0];(1)a+6*b ans = 47 23 -10

12 37 26 -15 73 7 a^2-b+eye(3) ans = -18 -217 17 22 533 109 21 867 526(2)a*b ans = 14 14 16 -10 51 21 125 328 180 a.*b ans = -8 15 4 0 35 24 -9 122 0 b*a ans = -11 0 -15 7 228 53 3 -1 28(3)a/b ans = b\a

ans = (4)[a,b] ans = -1 5 -4 8 3 -1 0 7 8 2 5 3 3 61 7 -3 2 0 [a([1,3],:);b^2] ans = -1 5 -4 3 61 7 73 37 1 17 37 13 -20 1 9 3.已知a,完成下列操作。 a=[23,10,,0;41,-45,65,5;32,5,0,32;6,,54,]; (1)输出a在[10,25]范围内的全部元素。 k=find(a>10&a<25) a(k) k = 1 ans = 23 (2)取出a前3行构成矩阵b,前两列构成矩阵c,右下角3*2子矩阵构成矩阵d,b与c的乘积构成矩阵e。 b=a(1:3,:)

MATLAB上机答案

一熟悉Matlab工作环境 1、熟悉Matlab的5个基本窗口 思考题: (1)变量如何声明,变量名须遵守什么规则、是否区分大小写。 答:变量一般不需事先对变量的数据类型进行声明,系统会依据变量被赋值的类型自动进行类型识别,也就是说变量可以直接赋值而不用提前声明。变量名要遵守以下几条规则: 变量名必须以字母开头,只能由字母、数字或下划线组成。 变量名区分大小写。 变量名不能超过63个字符。 关键字不能作为变量名。 最好不要用特殊常量作为变量名。 (2)试说明分号、逗号、冒号的用法。 分号:分隔不想显示计算结果的各语句;矩阵行与行的分隔符。 逗号:分隔欲显示计算结果的各语句;变量分隔符;矩阵一行中各元素间的分隔符。 冒号:用于生成一维数值数组;表示一维数组的全部元素或多维数组某一维的全部元素。 (3)linspace()称为“线性等分”函数,说明它的用法。 LINSPACE Linearly spaced vector.线性等分函数 LINSPACE(X1,X2)generates a row vector of100linearly equally spaced points between X1and X2. 以X1为首元素,X2为末元素平均生成100个元素的行向量。 LINSPACE(X1,X2,N)generates N points between X1and X2. For N<2,LINSPACE returns X2. 以X1为首元素,X2为末元素平均生成n个元素的行向量。如果n<2,返回X2。 Class support for inputs X1,X2: float:double,single 数据类型:单精度、双精度浮点型。 (4)说明函数ones()、zeros()、eye()的用法。 ones()生成全1矩阵。 zeros()生成全0矩阵。 eye()生成单位矩阵。 2、Matlab的数值显示格式

通信系统建模与仿真作业

通信系统建模与仿真作业 在高斯白噪声的情况下,求2ASK、2PSK、2FSK的误码率。解答: (1)、2ASK相干解调误码率理论值与仿真值代码如下: A=1; N=10000; FC=4; R=100; SNRdB=0:1:10; Pe=1/2*erfc(sqrt(0.25*10.^(SNRdB/10))); semilogy(SNRdB,Pe,'R');hold on;grid on; n=1:N*R; xn=randi([0 1],1,N); wc=sin(n/R*2*pi*FC); x=wc.*xn(ceil(n/R)); %调制 Vt=sum(0.5*wc([1:R]).^2); %判决门限 for i=1:length(SNRdB) y=awgn(x,SNRdB(i)-10*log10(R),'measured'); %加高斯白噪声 y=y.*wc; for j=1:N yn(j)=sum(y([(j-1)*R+1:j*R]))>Vt; end ErrorCount=length(find(xor(xn,yn))); Pe(i)=ErrorCount/N; end semilogy(SNRdB,Pe); title('2ASK相干解调误码率'); legend('误码率理论值','误码率仿真值'); xlabel('Eb/N0(dB)'); ylabel('误码率');

(2)、2ASK非相干解调误码率理论值与仿真值代码如下: A=1; N=10000; FC=2; R=64; SNRdB=0:1:10; Pe=1/2*exp(-0.25*10.^(SNRdB/10)); semilogy(SNRdB,Pe,'R');hold on;grid on; n=1:N*R; xn=randi([0 1],1,N); wc=sin(n/R*2*pi); x=wc.*xn(ceil(n/R));%调制 Vt=sum(0.5*wc([1:R]).^2);%判决门限 for i=1:length(SNRdB) y=awgn(x,SNRdB(i)-10*log10(R),'measured');%加高斯白噪声 for j=1:N

MATLAB实验报告(1-4)

信号与系统MATLAB第一次实验报告 一、实验目的 1.熟悉MATLAB软件并会简单的使用运算和简单二维图的绘制。 2.学会运用MATLAB表示常用连续时间信号的方法 3.观察并熟悉一些信号的波形和特性。 4.学会运用MATLAB进行连续信号时移、反折和尺度变换。 5.学会运用MATLAB进行连续时间微分、积分运算。 6.学会运用MATLAB进行连续信号相加、相乘运算。 7.学会运用MATLAB进行连续信号的奇偶分解。 二、实验任务 将实验书中的例题和解析看懂,并在MATLAB软件中练习例题,最终将作业完成。 三、实验内容 1.MATLAB软件基本运算入门。 1). MATLAB软件的数值计算: 算数运算 向量运算:1.向量元素要用”[ ]”括起来,元素之间可用空格、逗号分隔生成行向量,用分号分隔生成列向量。2.x=x0:step:xn.其中x0位初始值,step表示步长或者增量,xn 为结束值。 矩阵运算:1.矩阵”[ ]”括起来;矩阵每一行的各个元素必须用”,”或者空格分开; 矩阵的不同行之间必须用分号”;”或者ENTER分开。2.矩阵的加法或者减法运算是将矩阵的对应元素分别进行加法或者减法的运算。3.常用的点运算包括”.*”、”./”、”.\”、”.^”等等。 举例:计算一个函数并绘制出在对应区间上对应的值。

2).MATLAB软件的符号运算:定义符号变量的语句格式为”syms 变量名” 2.MATLAB软件简单二维图形绘制 1).函数y=f(x)关于变量x的曲线绘制用语:>>plot(x,y) 2).输出多个图像表顺序:例如m和n表示在一个窗口中显示m行n列个图像,p表 示第p个区域,表达为subplot(mnp)或者subplot(m,n,p) 3).表示输出表格横轴纵轴表达范围:axis([xmax,xmin,ymax,ymin]) 4).标上横轴纵轴的字母:xlabel(‘x’),ylabel(‘y’) 5).命名图像就在subplot写在同一行或者在下一个subplot前:title(‘……’) 6).输出:grid on 举例1: 举例2:

相关文档