MATLAB课程大作业
- 格式:doc
- 大小:20.50 KB
- 文档页数:1
M A T L A B大作业作业要求:(1)编写程序并上机实现,提交作业文档,包括打印稿(不含源程序)和电子稿(包含源程序),以班为单位交,作业提交截止时间6月24日。
(2)作业文档内容:问题描述、问题求解算法(方案)、MATLAB程序、结果分析、本课程学习体会、列出主要的参考文献。
打印稿不要求MATLAB程序,但电子稿要包含MATLAB程序。
(3)作业文档字数不限,但要求写实,写出自己的理解、收获和体会,有话则长,无话则短。
不要抄袭复制,可以参考网上、文献资料的内容,但要理解,要变成自己的语言,按自己的思路组织内容。
(4)从给出的问题中至少选择一题(多做不限,但必须独立完成,严禁抄袭)。
(5)大作业占过程考核的20%,从完成情况、工作量、作业文档方面评分。
第一类:绘制图形。
(B级)问题一:斐波那契(Fibonacci)螺旋线,也称黄金螺旋线(Golden spiral),是根据斐波那契数列画出来的螺旋曲线,自然界中存在许多斐波那契螺旋线的图案,是自然界最完美的经典黄金比例。
斐波那契螺旋线,以斐波那契数为边的正方形拼成的长方形,然后在正方形里面画一个90度的扇形,连起来的弧线就是斐波那契螺旋线,如图所示。
问题二:绘制谢尔宾斯基三角形(Sierpinskitriangle)是一种分形,由波兰数学家谢尔宾斯基在1915年提出,它是一种典型的自相似集。
其生成过程为:取一个实心的三角形(通常使用等边三角形),沿三边中点的连线,将它分成四个小三角形,然后去掉中间的那一个小三角形。
接下来对其余三个小三角形重复上述操作,如图所示。
问题三:其他分形曲线或图形。
分形曲线还有很多,教材介绍了科赫曲线,其他还有皮亚诺曲线、分形树、康托(G. Cantor)三分集、Julia集、曼德布罗集合(Mandelbrot set),等等。
这方面的资料很多(如),请分析构图原理并用MATLAB 实现。
问题四:模拟掷骰子游戏:掷1000次骰子,统计骰子各个点出现的次数,将结果以下表的形式显示,并绘制出直方图。
Matlab 大作业(组内成员:彭超杰、南彦东、江明伟)一、研究模型(电车)通过控制油门(保持一定角度)来调节电动机能输出稳定的转速,从而控制车速稳定。
数学依据说明如下:由图可知存在以下关系:a d a au w k R i dtdi L =++ (w k e d d =) L M M dtdw J-=a m i k M =La m M i k dtdw J -=k为反电势常数,m k为电动机电磁力矩常数,这里忽略阻尼力矩。
d二、数学模型再看整个研究对象,示意图以课本为依据,不同点是这里将数控的进给运动,转换为汽车行驶所需要的扭矩。
(这里不说明扭矩的具体产生过程,仅仅说明输出车轮旋转的角速度w )对照课本不同,() s θ变为()s N ,1221z z w w =,1w 为电动机的转速,2w 为轮胎的转速,1z 为电动机的光轴齿轮的齿数,2z 为与轮胎相连光轴的齿轮齿数。
)(*10110w x w k x ==,121z z k =()c a m m d ba m x K K K k s k k JRs JLs K K K k s G i 1231+++=()ca m m d M K K K k s k k JRs JLs R Ls K s G L 1231)(++++-=同理,忽略电枢绕组的电感L ,简化系统传递函数方框图如下()JRK K K k JR s k k s JR K K K k s G c a m m d ba m x i 121++=()JRK K K k JR s k k s K K K K k s k k Rs R K s G c a m m d c a m m d M L 121121++-=++-=三、系统分析1.分析时间响应其传递函数如下:(1)系统时间响应令τ=0、τ=0.0125、τ=0.025,应用impulse函数,可得到系统单位脉冲响应;应用step函数,可得系统单位跃阶响应。
Matlab的基本操作一、使用函数实现对下列矩阵的左旋和右旋以及反转已知答案:如图:矩阵如图矩阵的左旋如图一矩阵的右旋如图二矩阵的左右反转如图三矩阵的上下反转如图四二、已知A=[8 9 5 ] B=[-1 3 -2][36 -7 11] [2 0 3][21 -8 5] [-3 1 9 ]计算:1)A+5*B;2)A*B和A.*B3)A^3和A.^34)A/B和B\A5)[A,B]答案:A=[8 9 5;36 -7 11;21 -8 5];B=[-1 3 -2;2 0 3;-3 1 9];A+5*BA*BA.*BA^3A.^3A/BA\B[A,B]程序运行结果如下:第二章、Matlab程序设计一、已知S=1+2+22+23+…+263求S的值答案:代码如下:ClearClcs=0,j=2for i=1:63s=s+j^iends程序运行结果如下:二、第三章、Matlab绘图一、在同一坐标系中画出下列函数的图像:x2,-x2,xsin(x)在[0,2π]上的函数图像程序代码如下:clearclcx=0:pi/100:2*pi;y1=x.^2;y2=-x.^2;y3=x.*sin(x);title('同一坐标下的函数图像')plot(x,y1,':',x,y2,'h',x,y3,'--')程序运行结果如下:二、绘制极坐标图像:程序代码如下:clearclcx=0:0.01:2*pi;y=2*cos(2*(x-pi/8));title('极坐标图像')xlabel('x')ylabel('y')polar(x,y)程序运行结果如下:第四章、Matlab符号运算一、求函数y=e-x2 的傅立叶变换及其逆变换程序代码如下:clearclcsyms x t;y=exp(-x^2);Ft=fourier(y,x,t)fx=ifourier(Ft,t,x)程序运行结果如下:二、求下列极限值:答案:1、程序代码:clearclcsyms x;s1=sin(2*x)/sin(5*x);limit(s1,x,0)s2=(1+1/x)^(2*x);limit(s2,x,inf)程序运行结果如下:第五章、Matlab数值运算一、建立一个3*4阶随机矩阵,求矩阵的最大值、最小值、方差和标准差、极差、协方差,和自相关阵程序代码如下:clearclcA=rand(3,4)B=var(A)C=std(A)D=range(A)E=cov(A)F=corrcoef(A)程序运行结果如下:二、求函数f(x)=x3-2x+1在x=[-1 1]之间的极小值和x=-1附近的零点程序代码如下:clearclc[x,y]=fminbnd('x.^3-2.*x+1',-1,1)[x,y]=fzero('x.^3-2.*x+1',-1)程序运行结果如下:第六章、Matlab图形用户界面一、建立一个具有三个输入框的窗口对话框程序代码如下:clearclcprompt={'姓名','年龄','班级'};DTitle='注册学生信息';line[1;1;1];def{'乔阳','18','100412105'};info=inputdlg(prompt,DTitle,line,def,'ON')程序运行结果如下:二、设计一个表现下载进度的进度条程序代码如下:clearclch = waitbar(0,'正在下载,请稍等……');for i=1:1000waitbar(i/10000,h)endclose(h)程序运行结果如下:第七章、Matlab Simulink 仿真一、仿真信号x(t)=sin(t)sin(10t)的波形仿真步骤:1.建立模型窗口:生成无标题(intitled)的模型窗口;2.添加信号源模块(sine)、输出模块(scope)、数学模块(Dot product)3.设置模块参数:如下图:4.编辑模块即将各个模块连接起来。
2014年春季学期MATLAB 课程考查题一.必答题(80分)1.如何设置当前目录和搜索路径,在当前目录上的文件和在搜索路径上的文件有何区别?(2)答:方法一:在MATLAB命令窗口中输入editpath或pathtool命令或通过【File】/【SetPath】菜单,进入“设置搜索路径”对话框,通过该对话框编辑搜索路径。
方法二:在命令窗口执行“path(path,…D:\Study ‟)”,然后通过“设置搜索路径”对话查看“D:\Study”是否在搜索路径中。
方法三:在命令窗口执行“addpathD:\Study- end”,将新的目录加到整个搜索路径的末尾。
如果将end改为begin,可以将新的目录加到整个搜索路径的开始。
区别:当前文件目录是正在运行的文件的目录,显示文件及文件夹的详细信息,且只有将文件设置为当前目录才能直接调用。
搜索路径中的文件可以来自多个不同目录,在调用时不用将其都设置为当前目录,为同时调用多个文件提供方便。
2.创建符号变量和符号表达式有哪几种方法?(4)答:定义符号变量:方法一:sym函数,可以定义单个符号变量,调用格式为:符号量名=sym('符号字符串');方法二,syms函数,定义多个符号变量,调用格式:syms 符号变量名1 符号变量名2 符号变量名3 符号变量名4 。
空格隔开。
定义符号表达式:方法一:用单引号定义符号表达式;方法二:用sym函数定义符号表达式;方法三:用已经定义好的符号变量组成符号表达式;3.GUIDE提供哪些常用的控件工具,各有什么功能?(5分)答:一、控件风格和外观(1)BackgroundColor:设置控件背景颜色,使用[R G B]或颜色定义。
(2)CData:在控件上显示的真彩色图像,使用矩阵表示。
(3)ForegroundColor:文本颜色。
(4)String属性:控件上的文本,以及列表框和弹出菜单的选项。
(5)Visible:控件是否可见。
《MATLAB语言及应用》期末大作业题目1.数组的创建和访问(20分,每小题2分):1)利用randn函数生成均值为1,方差为4的5*5矩阵A;2)将矩阵A按列拉长得到矩阵B;3)提取矩阵A的第2行、第3行、第2列和第4列元素组成2*2的矩阵C;4)寻找矩阵A中大于0的元素;]5)求矩阵A的转置矩阵D;6)对矩阵A进行上下对称交换后进行左右对称交换得到矩阵E;7)删除矩阵A的第2列和第4列得到矩阵F;8)求矩阵A的特政值和特征向量;9)求矩阵A的每一列的和值;10)求矩阵A的每一列的平均值;程序代码:clear;clc;A=1+sqrt(4)*randn(5) %生成均值为1,方差为4的5*5矩阵A;B=A(:) %将矩阵A按列拉长得到矩阵B;C=A([2 3],[2 4]) %提取矩阵A的第2行、第3行、第2列和第4列元素组成2*2的矩阵C;n=find(A>0) %寻找矩阵A中大于0的元素;x=A(n)D=A' %求矩阵A的转置矩阵D;E1=flipud(A); %对矩阵A进行上下对称交换后进行左右对称交换得到矩阵E;E=fliplr(E1)F=A(:,[1 3 5]) %删除矩阵A的第2列和第4列得到矩阵F;[Av,Ad]=eig(A) %求矩阵A的特征值和特征向量;S=sum(A,1) %求矩阵A的每一列的和值;Avg=S/5 %求矩阵A的每一列的平均值;运行结果:A =2.3333 2.1171 0.8568 2.1971 -0.7526-1.7853 0.4453 -3.8292 1.2944 0.4690 -1.6011 -1.5874 -0.3887 0.7971 0.3448 -0.2100 -0.7769 -1.7828 -4.2700 -1.3165 -1.9771 -0.9730 1.6593 1.0561 2.1601B =2.3333-1.7853-1.6011-0.2100-1.97712.11710.4453-1.5874-0.7769-0.97300.8568-3.8292-0.3887-1.78281.65932.19711.29440.7971-4.27001.0561-0.75260.46900.3448-1.31652.1601C =0.4453 1.2944-1.5874 0.7971n =167111516171820222325x =2.33332.11710.44530.85681.65932.19711.29440.79711.05610.46900.34482.1601D =2.3333 -1.7853 -1.6011 -0.2100 -1.97712.1171 0.4453 -1.5874 -0.7769 -0.97300.8568 -3.8292 -0.3887 -1.7828 1.65932.1971 1.2944 0.7971 -4.2700 1.0561-0.7526 0.4690 0.3448 -1.3165 2.1601E =2.1601 1.0561 1.6593 -0.9730 -1.9771-1.3165 -4.2700 -1.7828 -0.7769 -0.21000.3448 0.7971 -0.3887 -1.5874 -1.60110.4690 1.2944 -3.8292 0.4453 -1.7853-0.7526 2.1971 0.8568 2.1171 2.3333F =2.3333 0.8568 -0.7526-1.7853 -3.8292 0.4690-1.6011 -0.3887 0.3448-0.2100 -1.7828 -1.3165-1.9771 1.6593 2.1601Av =Columns 1 through 40.1004 + 0.2832i 0.1004 - 0.2832i0.6302 -0.5216-0.5969 -0.5969 -0.4811 0.0856 -0.4405 + 0.0006i -0.4405 - 0.0006i -0.3078 0.21200.2732 - 0.4899i 0.2732 + 0.4899i0.0244 -0.1780-0.0617 + 0.2024i -0.0617 - 0.2024i 0.5254 0.8025 Column 50.3903-0.49590.02180.1929-0.7511Ad =Columns 1 through 4-2.6239 + 1.7544i 0 0 00 -2.6239 - 1.7544i 0 00 0 -0.2434 00 0 0 3.54550 0 0 0Column 50 0 0 02.2257S =-3.2403 -0.7749 -3.4846 1.0747 0.9049Avg =-0.6481 -0.1550 -0.6969 0.2149 0.18102.符号计算(10分,每小题5分):1) 求方程组20,0uy vz w y z w ++=++=关于,y z 的解;2) 利用dsolve 求解偏微分方程,dx dyy x dt dt==-的解;程序代码:clc[u,v,w] = solve('u*y^2 + v*z + w = 0','y + z + w = 0','u,v,w')[x y]=dsolve('Dx=y','Dy=-x')运行结果:u =(-v*z+y+z)/y^2v =vw = -y-zx =-C1*cos(t)+C2*sin(t)y =C1*sin(t)+C2*cos(t)3.数据和函数的可视化(20分,每小题5分):1) 二维图形绘制:绘制方程2222125x y a a +=-表示的一组椭圆,其中0.5:0.5:4a =;程序代码:clccleara=0.5:0.5:4.5;t=-2*pi:0.1:2*pi;N=length(a); for i=1:1:Nx=a(i)*cos(t);y=sqrt(25-a(i).^2).*sin(t);plot(x,y)hold onend运行结果:-5-4-3-2-1123452) 利用plotyy 指令在同一张图上绘制sin y x =和10x y =在[0,4]x ∈上的曲线;程序代码:clcclearx=0:0.01:4;y1=sin(x); y2=10.^x;plotyy(x,y1,x,y2) %用双y 轴绘制二维图形运行结果:3) 用曲面图表示函数22z x y =+;程序代码:clcclear[X,Y] = meshgrid(-2:0.05:2); %产生xy 平面上的网格数据Z = X.^2 + Y.^2;surf(X,Y,Z) %绘着色曲面图hold off运行结果:4) 用stem 函数绘制对函数cos 4y t π=的采样序列;程序代码:clcclearfs=25;Ts=1/fs;n=1:1:200;yn=cos(pi*n*Ts/4);stem(n,yn) %绘离散数据的火柴杆图运行结果:4. 设采样频率为Fs = 1000 Hz ,已知原始信号为)150π2sin(2)80π2sin(t t x ⨯+⨯=,由于某一原因,原始信号被白噪声污染,实际获得的信号为))((ˆt size randn x x +=,要求设计出一个FIR 滤波器恢复出原始信号。
matlab课程设计大作业一、教学目标本课程的教学目标是使学生掌握MATLAB基本语法、编程技巧以及MATLAB 在工程计算和数据分析中的应用。
通过本课程的学习,学生将能够熟练使用MATLAB进行简单数学计算、线性方程组求解、函数图像绘制等。
1.掌握MATLAB基本语法和编程结构。
2.了解MATLAB在工程计算和数据分析中的应用。
3.熟悉MATLAB的函数库和工具箱。
4.能够使用MATLAB进行简单数学计算。
5.能够使用MATLAB求解线性方程组。
6.能够使用MATLAB绘制函数图像。
7.能够利用MATLAB进行数据分析和处理。
情感态度价值观目标:1.培养学生对计算机辅助设计的兴趣和认识。
2.培养学生团队合作和自主学习的能力。
二、教学内容本课程的教学内容主要包括MATLAB基本语法、编程技巧以及MATLAB在工程计算和数据分析中的应用。
1.MATLAB基本语法:介绍MATLAB的工作环境、基本数据类型、运算符、编程结构等。
2.MATLAB编程技巧:讲解MATLAB的函数调用、脚本编写、函数文件编写等编程技巧。
3.MATLAB在工程计算中的应用:介绍MATLAB在数值计算、线性方程组求解、图像处理等方面的应用。
4.MATLAB在数据分析中的应用:讲解MATLAB在数据采集、数据分析、数据可视化等方面的应用。
三、教学方法本课程采用讲授法、案例分析法、实验法等多种教学方法相结合的方式进行教学。
1.讲授法:通过讲解MATLAB的基本语法、编程技巧以及应用案例,使学生掌握MATLAB的基本知识和技能。
2.案例分析法:通过分析实际工程案例,使学生了解MATLAB在工程计算和数据分析中的应用。
3.实验法:安排上机实验,使学生在实际操作中巩固所学知识,提高实际编程能力。
四、教学资源本课程的教学资源包括教材、实验设备、多媒体资料等。
1.教材:选用《MATLAB教程》作为主要教材,辅助以相关参考书籍。
2.实验设备:为学生提供计算机实验室,配备有MATLAB软件的计算机。
M A T L A B大作业作业要求:(1)编写程序并上机实现,提交作业文档,包括打印稿(不含源程序)和电子稿(包含源程序),以班为单位交,作业提交截止时间6月24日。
(2)作业文档内容:问题描述、问题求解算法(方案)、MATLAB程序、结果分析、本课程学习体会、列出主要的参考文献。
打印稿不要求MATLAB程序,但电子稿要包含MATLAB程序。
(3)作业文档字数不限,但要求写实,写出自己的理解、收获和体会,有话则长,无话则短。
90问题五:利用MATLAB软件绘制一朵鲜花,实现一定的仿真效果。
提示:二维/三维绘图,对花瓣、花蕊、叶片、花杆等的形状和颜色进行详细设置。
第二类:插值与拟合。
(B级)问题一:有人对汽车进行了一次实验,具体过程是,在行驶过程中先加速,然后再保持匀速行驶一段时间,接着再加速,然后再保持匀速,如此交替。
注意,整个实验过程中从未减速。
在一组时间段50个时间点的速度。
(2)绘制插值图形并标注样本点。
问题二:估算矩形平板各个位置的温度。
已知平板长为5m,宽为3m,平板上3×5栅格点上的温度值为44,25,20,24,30;42,21,20,23,38;25,23,19,27,40。
(1)分别使用最近点插值、线性插值和三次样条插值进行计算。
(2)用杆图标注样本点。
(3)绘制平板温度分布图。
对a,b,c,d的值。
提示:曲线拟合并绘图分析第三类:定积分问题。
(B级)问题一:地球密度随着离中心(r=0)距离的变化而变化,不同半径处的密度如表所示,试估问题二:河道平均流量Q(m3/s)可使用速度和深度的乘积的积分来计算(河道横截面不规则),公式如下。
其中V(x)是离岸x(m)距离处的水速(m/s),H(x)是离岸x距离处的水深(m)。
根据收集到过5(1(2(3(Q,单位是m(1(2(1(2(3)将节点1的力改为方向向上,计算这种改变对H2和V2的影响。
(4)将节点1的力撤销,而在节点1和2处施加1500N的水平外力,求节点3处垂直反作用力(V3)。
1. 某控制系统为单位负反馈系统,其开环传递函数为:()()10.5KG s s s =+。
(1) 要求设计一校正装置,使校正后系统的静态速度误差系数20v K >,超调量%15%σ<,调整时间5s t s <,同时使用Simulink 仿真(示波器)验证。
(2) 绘制校正前后系统的根轨迹。
解:1)查看符合条件的zeta 。
zeta=0:0.001:0.99;sigma=exp(-zeta*pi./sqrt(1-zeta.^2))*100; plot(zeta,sigma) xlabel('\zeta'); ylabel('\sigma');title('\sigma%=e^{-\zeta*\pi/sqrt(1-\zeta^2)}*100%', 'fontsize',16) gridz=spline(sigma,zeta,15)运行结果: z=0.5169σ与ζ的关系曲线如图1-1图1-12)求系统期望主导极点sigma=0.15;zeta=((log(1/sigma))^2/((pi)^2+(log(1/sigma))^2))^(1/2);wn=1/zeta;p=[1 2*zeta*wn wn*wn];s=roots(p)运行结果:s = -1.0000 + 1.6560i,-1.0000 - 1.6560i3)查看根轨迹G0=tf([1],[0.5 1 0]);rlocus(G0);sgrid(.5169,[])根轨迹如图1-2和局部放大根轨迹图1-3图1-2图1-3读出增益为1.88,则校正前系统的稳态误差Kv=1.88/1=1.88。
按要求,偶极子的零点和极值比值应为20/1.88=10.6383,取Zc=0.01,Pc=0.01/11=0.0009,因此校正环节为0009.0)01.0(88.1)(++=s s s Gc4)得出校正后的系统,并进行验证。
matlab 期末大作业(30分,每题6分)1. 积分运算(第四数值和五章符号)(1)定积分运算:分别采用数值法(quad ,dblquad )和符号运算(syms, int )一重定积分π⎰1. 数值法(quad )a) 运行代码:b) 运行结果:2. 符号运算(syms )a) 运行代码:b) 运行结果:二重定积分112200()x y dxdy+⎰⎰1.数值法(dblquad):a)运行代码:b)运行结果:2.符号运算(syms):a)运行代码:b)运行结果:(2) 不定积分运算sin dxdy ⎰⎰((x/a)+b/y) i.运行代码:ii.运行结果:2. 用符号法和数值法求解线性代数方程 (第五章和第二章)⎩⎨⎧=+=+12*22x *213*12x *a11y a a y a (1) 用syms 定义待解符号变量x,y 和符号参数a11,a12,a21,a22,用符号solve 求x,y 通解 1. 运行代码:2. 运行结果:(2) 用subs 带入a11=2,a12=4,a21=6,a22=8,求x 和y 特解,用vpa 输出有效数值4位的结果 1. 运行代码:2. 运行结果:(3) 采用左除(\)和逆乘法求解符号参数赋值后的方程 ⎩⎨⎧=+=+12*8x *63*4x *2y y1. 运行代码:2. 运行结果:3.数值法和符号法求解非线性方程组(第四数值和五章符号 )(1)采用数值法(fsolve )求解初始估计值为x0 = [-5; -5]的数值解1. 运行代码:2. 运行结果:21x 21x 21e x 2x e x x 2--=+-=-(2)符号法(solve )的符号结果用eval 或double 转化为数值结果.1. 运行代码:2. 运行结果:4. 解二阶微分方程 (第四数值和五章符号 )⎪⎩⎪⎨⎧===++6)0(',0)0(09322y y y dx dy dx y d(1)数值ode 求特解,用plot (x,y) 画t 在[0,10]范围内(x ,y )数值曲线 1. 运行代码:2. 运行结果:(2)符号运算dsolve求通解,用ezplot画t在[0,10]范围内(x,y)符号曲线1. 运行代码:2. 运行结果:5. 三维绘图(第六章)已知:x和y都在[-8,8]范围内,采用subplot(3,1,x)绘制三个子图,它们分别是用meshgrid和mesh绘制网格图、用c=contour 绘制等位线和用surf 绘制曲面图1.运行代码:2.运行结果:。
MATLAB大作业作业要求:(1)编写程序并上机实现,提交作业文档,包括打印稿(不含源程序)和电子稿(包含源程序),以班为单位交,作业提交截止时间6月24日。
(2)作业文档内容:问题描述、问题求解算法(方案)、MATLAB程序、结果分析、本课程学习体会、列出主要的参考文献。
打印稿不要求MATLAB程序,但电子稿要包含MATLAB 程序。
(3)作业文档字数不限,但要求写实,写出自己的理解、收获和体会,有话则长,无话则短。
不要抄袭复制,可以参考网上、文献资料的内容,但要理解,要变成自己的语言,按自己的思路组织内容。
(4)从给出的问题中至少选择一题(多做不限,但必须独立完成,严禁抄袭)。
(5)大作业占过程考核的20%,从完成情况、工作量、作业文档方面评分。
第一类:绘制图形。
(B级)问题一:斐波那契(Fibonacci)螺旋线,也称黄金螺旋线(Golden spiral),是根据斐波那契数列画出来的螺旋曲线,自然界中存在许多斐波那契螺旋线的图案,是自然界最完美的经典黄金比例。
斐波那契螺旋线,以斐波那契数为边的正方形拼成的长方形,然后在正方形里面画一个90度的扇形,连起来的弧线就是斐波那契螺旋线,如图所示。
问题二:绘制谢尔宾斯基三角形(Sierpinskitriangle)是一种分形,由波兰数学家谢尔宾斯基在1915年提出,它是一种典型的自相似集。
其生成过程为:取一个实心的三角形(通常使用等边三角形),沿三边中点的连线,将它分成四个小三角形,然后去掉中间的那一个小三角形。
接下来对其余三个小三角形重复上述操作,如图所示。
问题三:其他分形曲线或图形。
分形曲线还有很多,教材介绍了科赫曲线,其他还有皮亚诺曲线、分形树、康托(G. Cantor)三分集、Julia集、曼德布罗集合(Mandelbrot set),等等。
这方面的资料很多(如/content/16/0103/14/5315_525141100.shtml),请分析构图原理并用MATLAB实现。
实验七图像的形态学运算一、实验目的1.掌握图像的奇异值分解与合成2.能够利用模板操作实现图像的腐蚀运算3.能够利用模板操作实现图像的膨胀运算4.掌握图像的开、闭运算二、实验内容1. 读下面的程序,分析该程序要完成什么样的功能。
A=[1 2 1;2 3 2;1 2 1];[u d v]=svd(A);[nx,ny]=size(A);I=eye(nx,nx);for i=nx:-1:2I(i,i)=0;endB=u*I*d*v';BX=imread('cameraman.bmp');X=double(X);A=X(20:256,20:256);[nx,ny]=size(A);I=eye(nx,nx);for i=nx:-1:21I(i,i)=0;end[u d v]=svd(A);B=u*I*d*v';A=uint8(A);`B=uint8(B);subplot(2,2,1);imshow(A)subplot(2,1,2);imshow(B)该程序的功能是对图像分别进行膨胀和腐蚀的操作!2. 利用模板操作,编写程序实现二值图像的腐蚀运算函数imerode的功能。
程序:a=imread('D:\005.bmp');b=~a;m=[1;1;1];n=[1 1 0];p=[0 0 0;0 1 0;0 0 0];q=[0 0 1;0 0 0;1 0 0];c1=imerode(b,m);c2=imerode(b,n);c3=imerode(b,p);c4=imerode(b,q); subplot(1,5,1);imshow(b)subplot(1,5,2);imshow(c1)subplot(1,5,3);imshow(c2)subplot(1,5,4);imshow(c3)subplot(1,5,5);imshow(c4)3. 利用模板操作,编写程序实现二值图像的膨胀运算函数imdilate的功能。
Matlab大作业大作业要求:1 以下matlab编程和simulink题目各选做一个,大作业总共两道题。
2如果不做给定的题目,自己选题,提前qq(244731524)上和我说下,根据题目的难易,可以考虑多给些时间。
3 第十周前由各班学委统一将纸质版交给我,写上班级,学号,姓名。
4 请勿抄袭。
Matlab编程1、使用m文件对周期信号频域进行分析(1)用matlab求周期矩形脉冲的傅里叶级数,并绘制出周期矩形脉冲信号及其频谱图(2),用matlab求改变周期、脉冲宽度后的周期矩形脉冲的傅里叶级数和频谱,并分析周期,脉宽对周期信号频谱的影响。
2、使用m文件对非周期信号频域进行分析(1)用matlab对矩形脉冲信号的频谱进行分析(2)利用matalb函数绘制给定信号的幅度谱和相位谱。
Simulink1、使用Simulink的积分模块求解二阶微分方程:x’’+0.2x’+0.4x =0.2u(t) ,u (t) 是单位阶跃函数a、用积分模块创建求解微分方程的模型思路:利用连续系统模块库中的积分器Integrator,解微分方程。
建模仿真:阶跃信号Step ,求和sum,常数增益gain,积分器,示波器scopeb、用传递函数求微分方程思路:对微分方程作laplace变换,移项整理后求得传递函数,利用连续系统模块库中的传递函数模块Transfer Fcn ,解微分方程。
建模仿真:阶跃信号Step ,示波器scope,传递函数模块Transfer Fcn等2、使用simupower system模块求解电路。
电路如图所示,参数如下:R1=2,R2=4,R3=12,R4=4,R5=12,R6=4,R7=2,Us=10V。
求i3,U4,U7;。
计算机实习班级:姓名:学号:题目一:使用while循环及for循环计算1+2+3+…+100分析:无。
解答:MATLAB程序:%使用for-end语句>> clear>> sum=0;>> for i=1:1:100sum=sum+i;end>> sumsum =5050%使用while-end语句>> clear>> sum=0;i=0;>> while i<100i=i+1;sum=sum+i;end>> sumsum =5050小结:了解matlab中的基本语句,与C语言中的相关内容进行对比,从而更好的掌握及运用语句。
题目二:圆轮在平面上滚动时,圆周上任一点的轨迹为摆线,圆内任一点的轨迹为内摆线,圆外任一点的轨迹为外摆线,建立模型,并作出图。
分析:建立模型:设r为轮的半径,R为点的半径,则由分析得方程x=rt-Rsinty=r-Rcost;(t为参数)MATLAB程序:t=0:0.1:10;r=1;R=input('R=');x=r*t-R*sin(t); y=r-R*cos(t); plot(x,y),axis('equal');hold ont=0:0.1:10;r=1;R=input('R=');x=r*t-R*sin(t); y=r-R*cos(t); plot(x,y),axis('equal');hold ont=0:0.1:10;r=1;R=input('R=');x=r*t-R*sin(t); y=r-R*cos(t); plot(x,y),axis('equal');hold on令R=1, 0.5, 2,作出如下图形小结:逐渐将matlab应用到解决实际问题当中,了解matlab强大的绘图功能。
MATLAB 大作业请各位同学,自己完成matlab 大作业的内容。
禁止相互抄袭,如有雷同,零分计算。
大作业的格式按照实验报告的格式书写,务必标明题号,作业完成后,将生成的报告打印出来提交。
正文的字号以宋体五号字,1.5倍行距的格式打印。
请与18周五前将大作业报告由班级负责人统一收齐交给我,过期不收。
1、 试编写名为test01.m 的MATLAB 函数,用以计算下述的值:⎪⎩⎪⎨⎧-<->=t t n t t t n t f 的对所有其他情况的对所有)4/sin()(si )4/sin()sin()4/sin()(si )4/sin()(ππππ要绘制t 关于函数f (t )的图形,其中t 的取值范围为ππ66≤≤-t ,间距为10/π。
(提示:注意要产生一系列的点,这里可考虑t 的输入是向量形式,可以利用find 函数找出所需限定值的元素的位置,对其按需要赋值后,再进行绘图;其次,另外一种思路,也可考虑使用循环的形式来实现)2、 编写函数,在同一窗口的4个子图中利用plot 等语句绘制y=at 2图像,其中a=[1 2 5 10],t错误!未找到引用源。
3、 求函数32)(3-+=x x x f 在区间[-5,5]上的最大值和最小值。
4、 求解函数⎰12dx e x 的数值积分和符号积分,并比较结果。
5、 求解微分方程3|;1|2)1(002='='=''+==x x y y y x y x 的精确解和解析解,并绘制图形。
假设求解区间为[0,10] 。
6、 说说你对MATLAB 及应用这门课程学习后的体会,另外请说明在所学章节中哪一章的内容你最感兴趣,为什么?哪一章的内容你认为是没有必要学习的,为什么?如果可以选择MATLAB 的学习的内容的话,谈谈你所期望学到的知识类别的前三种。
1.实验名称 MATLAB 大作业2.实验目的(1)理解Matlab数据对象的特点;(2)掌握基本Matlab运算规则;(3)掌握Matlab帮助的使用方法;3.实验设备及条件计算机一台(带有MATLAB7.0以上的软件环境)4.实验内容及要求请各位同学,自己完成matlab大作业的内容。
M A T L A B大作业(总15页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--MATLAB大作业作业要求:(1)编写程序并上机实现,提交作业文档,包括打印稿(不含源程序)和电子稿(包含源程序),以班为单位交,作业提交截止时间6月24日。
(2)作业文档内容:问题描述、问题求解算法(方案)、MATLAB程序、结果分析、本课程学习体会、列出主要的参考文献。
打印稿不要求MATLAB程序,但电子稿要包含MATLAB程序。
(3)作业文档字数不限,但要求写实,写出自己的理解、收获和体会,有话则长,无话则短。
不要抄袭复制,可以参考网上、文献资料的内容,但要理解,要变成自己的语言,按自己的思路组织内容。
(4)从给出的问题中至少选择一题(多做不限,但必须独立完成,严禁抄袭)。
(5)大作业占过程考核的20%,从完成情况、工作量、作业文档方面评分。
第一类:绘制图形。
(B级)问题一:斐波那契(Fibonacci)螺旋线,也称黄金螺旋线(Golden spiral),是根据斐波那契数列画出来的螺旋曲线,自然界中存在许多斐波那契螺旋线的图案,是自然界最完美的经典黄金比例。
斐波那契螺旋线,以斐波那契数为边的正方形拼成的长方形,然后在正方形里面画一个90度的扇形,连起来的弧线就是斐波那契螺旋线,如图所示。
问题二:绘制谢尔宾斯基三角形(Sierpinskitriangle)是一种分形,由波兰数学家谢尔宾斯基在1915年提出,它是一种典型的自相似集。
其生成过程为:取一个实心的三角形(通常使用等边三角形),沿三边中点的连线,将它分成四个小三角形,然后去掉中间的那一个小三角形。
接下来对其余三个小三角形重复上述操作,如图所示。
问题三:其他分形曲线或图形。
分形曲线还有很多,教材介绍了科赫曲线,其他还有皮亚诺曲线、分形树、康托(G. Cantor)三分集、Julia集、曼德布罗集合(Mandelbrot set),等等。
matlb课程设计作业一、教学目标本课程的教学目标是使学生掌握MATLAB基本语法、编程技巧以及应用方法,培养学生解决实际问题的能力。
具体目标如下:1.知识目标:(1)理解MATLAB的基本概念,如变量、数据类型、运算符等。
(2)掌握MATLAB编程的基本语法,如矩阵操作、函数定义与调用、循环结构、条件语句等。
(3)熟悉MATLAB与其他软件(如Mathematica、Python等)的接口转换。
(4)了解MATLAB在工程领域中的应用,如信号处理、控制系统、图像处理等。
2.技能目标:(1)能够运用MATLAB进行简单的数学计算、数据分析及图形绘制。
(2)具备编写MATLAB脚本文件和函数文件的能力。
(3)学会使用MATLAB解决实际问题,如编写程序实现线性方程组求解、最优化问题求解等。
(4)掌握MATLAB在实验数据处理、仿真实验等方面的应用。
3.情感态度价值观目标:(1)培养学生对科学探究的兴趣,提高其创新意识。
(2)培养学生团队协作、沟通交流的能力。
(3)培养学生具备良好的编程习惯和职业道德。
二、教学内容本课程的教学内容主要包括以下几个部分:1.MATLAB基本概念:变量、数据类型、运算符等。
2.MATLAB编程语法:矩阵操作、函数定义与调用、循环结构、条件语句等。
3.MATLAB高级应用:数组运算、图像处理、控制系统、信号处理等。
4.MATLAB与其他软件的接口转换。
5.实践项目:利用MATLAB解决实际问题,如线性方程组求解、最优化问题求解等。
三、教学方法本课程采用讲授法、案例分析法、实验法等多种教学方法相结合,以提高学生的学习兴趣和主动性。
1.讲授法:用于讲解MATLAB基本概念、语法和应用。
2.案例分析法:通过分析实际案例,使学生掌握MATLAB在各个领域的应用。
3.实验法:让学生亲自动手实践,培养其运用MATLAB解决实际问题的能力。
四、教学资源1.教材:选用《MATLAB教程》作为主要教材,辅助以相关参考书籍。
一、判断系统稳定性的方法,并举例说明。
方法一:用Nyquist稳定判据判断系统的稳定性Nyquist稳定判据:若想使得闭环系统稳定,则开环系统G(S)H(S)的Nyquist曲线逆时针绕临界点(-1,j0)点的圈数R必需等于G(S)H(S)(系统的开环传函)位于S的右半平面开环极点数P。
即:Z=P-R Z=0 稳定;Z≠0 不稳定,Z为闭环正实部根的个数。
方法二:用Bode图判断系统的稳定性函数调用格式为:margin( )或[Gm Pm wcp wcg]=margin(G)对于最小相位系统:当相角裕度P m(γ)>0o 或幅值裕度G m(h) >1时,表示系统稳定当相角裕度P m(γ)<0o 或幅值裕度G m(h) <1时,表示系统不稳定幅值裕度G m(h)、相角裕度P m(γ)越大,系统稳定程度越好。
在使用时,G m(h)、P m(γ)是成对使用的,有时仅使用一个裕度指标P m(γ)。
方法三:用代数稳定判据法判断系统的稳定性(1)系统数学模型为传递函数形式G(S)=tf(num,den):执行语句:roots(G.den{1});注:“{}”表示维数(2)系统数学模型为零极点增益形式G(S)=zpk(z,p,k);执行语句:G.p{1};(3)系统数学模型为状态空间形式G(S)=ss(A,B,C,D);执行语句:eig(G.A);注:eig()表示计算系统的极点方法四:用根轨迹法判断系统的稳定性若根轨迹在参数取值过程中,部分在左半平面,部分在右半平面,则系统的稳定性与可变参数的取值有关。
函数命令调用格式:[k poles]=rlocfind(G)方法五:用单位阶跃响应曲线判定系统稳定性例:已知系统的开环传函为:5(S+2)G(S)= ----------------------------(S+10)(S³+3S²+2S+5)判断系统的稳定性解:方法一:用Nyquist稳定判据判断系统的稳定性>>G=tf(5*[1 2],conv([1 10],[1 3 2 5]));>>roots(G.den{1})Ans=-10.0000-2.9042-0.0479+1.3112i-0.0479-1.3112i>>nyquist(G)执行以上程序得到nyquist图可以看出,nyquist曲线包围临界点的圈数R=0。
Matlab作业题目1:(1)程序部分:>> x=0:pi/50:2*pi;>> y=cos(0.5+((3*sin(x))./(1+x.^2))); >> plot(x,y)>> xlabel('x');>> ylabel('y');>> title('x-y');(2)运行结果截图:(1)程序部分:>> clear>> clc>> x=0:pi/100:4*pi;>> y1=sin(x);>> y2=cos(x);>> plot(x,y1,'r-',x,y2,'g:') >> hold on>> y3=x(find(abs(y1-y2)<0.001)); >> plot(y3,sin(y3),'*')(2)运行结果截图:(1)程序部分:>> t=(0:2*pi/100:2*pi)'; >> y1=sin(t)*[1,-1]; >> y2=sin(t).*sin(9*t); >> subplot(2,1,1);>> plot(t,[y1,y2]);>> subplot(2,1,2);>> plot(t,[y1,y2]) (2)运行结果截图:题目4(1)程序部分:>> t=0:pi/50:4*pi;>> y=exp(-t/3);>> y0=exp(-t/3).*sin(3*t); >> plot(t,y,'r-',t,y0,'b:') >> xlabel('\bf\it t')>> ylabel('\bf\it y')>> grid on;(2)运行结果截图:题目5(1)程序部分:>> n=0;>> sum=0;>> while sum<2000n=n+1;sum=sum+n;end>> n(2)运行结果截图:题目6(1)程序部分:for j=1:3n=input('n='); sum=0;for i=1:na=1/(i.^2);sum=sum+a;endPI=sqrt(6*sum) end(2)运行结果截图:题目7(1)程序部分:n0=0;y0=0;while 3*y0<5n0=n0+1;y0=y0+1/(2*n0-1);y=y0-1/(2*n0-1);n=n0-1;endn(2)运行结果截图:题目8(1)程序部分:for i=1:7x=input('put x:');if x<0&x~-3y=x^2+x-6;elseif x>=0&x<5&x~=3&x~=2 y=x*x-5*x+6;elsey=x*x-x-1;endend(2)运行结果截图:题目9①switch语句(1)程序部分:>> score=input('请输入成绩'); switch fix(score/10)case {9,10}disp('A');case {8}disp('B');case {7}disp('C');case {6}disp('D');case {0,5}disp('E');otherwisedisp('error');end(2)运行结果截图:如右图②if语句(1)程序部分:score=input('请输入成绩:') n=score/10;if n>=9&n<10disp Aelseif n>=8&n<9disp Belseif n>=7&n<8disp Celseif n>=6&n<7disp Delseif n>=0&n<6disp Eelsedisp errorend(2)运行结果截图:题目10(1)程序部分:t=input('员工的工作时间:')if t<60m=84*t-700;elseif t>120m=84*(t-120)*1.15+84*120;elsem=84*t;endm2)运行结果截图:题目11(1)程序部分:a=round(20*rand(5,6))n=input('请输入n的值:') tryb=a(n,:);catchb=a(5,:);endblasterr(2)运行结果截图:。
Matlab应用技术学号:班级:姓名:成绩:1.答:Matlab语法eps—机器的浮点运算误差限。
PC机上eps的默认值为2.2204*10^-16,若某个量的绝对值小于eps,则可以认为这个量为0。
i和j—若i或j量不被改写,则它们表示纯虚数量j。
但在MATLAB程序编写过程中经常事先改写这两个变量的值,如在循环过程中常用这两个变量来表示循环变量,所以应该确认使用这两个变量时没被改写。
如果想恢复该变量,则可以用语句i=sqrt(-1)设置,即对-1求平方根。
Inf—无穷大量+∞的MATLAB表示,也可以写成inf。
同样地,-∞可以表示为-Inf。
在MATLAB程序执行时,即使遇到了以0为除数的运算,也不会终止程序的运行,而只给出一个“除0”警告,并将结果赋成Inf,这样的定义方式符合IEEE的标准。
pi—圆周率π的双精度浮点表示。
lasterr—存放最新一次的错误信息。
此变量为字符串型,如果在本次执行过程中没出现这错误,则此变量为空字符串。
lastwarn—存放最新的警告信息。
若未出现过警告,则此变量为空字符串。
保留的变量ans—存放最近一次无赋值变量语句的运算结果。
end—最后一行(列)nargin—函数输入变量的实际个数nargout—函数返回变量的实际个数保留字%—后接注释数据结构一、数值型结构MATLAB语言中最常用的数值量为双精度浮点数,占8个字节(PS:与JAVA 的double型相同)(64位),遵从IEEE记数法,有11个指数位、53位尾数及一个符号位,值域的近似范围为-1.7*10^308至1.7*10^308,其MATLAB 表示为double()。
考虑到一些特殊的应用,MATLAB语言还引入了无符号的8位整形数据类型,其MATLAB表示为uint8(),其值域为0至255。
此外,在MATLAB中还可以使用其他的数据类型,如int8(),int16(),int32(),uint16(),uint32()等,每一个类型后面的数字表示其位数。