搜档网
当前位置:搜档网 › 用MATLAB命令将simulink示波器的图形画出

用MATLAB命令将simulink示波器的图形画出

用MATLAB命令将simulink示波器的图形画出
用MATLAB命令将simulink示波器的图形画出

用MATLAB命令将simulink示波器的图形画出

第一步,将你的示波器的输出曲线以矩阵形式映射到MATLAB的工作空间内。

如图1所示,双击示波器后选择parameters目录下的Data history,将Save data to workspace勾上,Format选择Array,Variable name即你输入至工作空间的矩阵名称,这里我取名aa。在这之后运行一次仿真,那么你就可以在MATLAB的工作空间里看到你示波器输出曲线的矩阵aa。如图2所示。

第二步,用plot函数画出曲线

双击曲线矩阵aa,将可以看到详细情况,我这里的aa矩阵是一个1034行,3列的矩阵,观察这个矩阵即可以发现,这个矩阵的第一列是仿真时间,而由于我仿真时示波器内输出的是两条曲线,所以第二列和第三列即分别代表了这2条曲线。同时大家要注意,在simulink 中我们有时往往在示波器中混合输出曲线,那么就要在示波器前加一个MUX混合模块,因此示波器内曲线映射到的工作空间的矩阵是和你的MUX的输入端数有关,如果你设置了3个MUX

输入端,而实际上你只使用了2个,那么曲线矩阵仍然会有4列,并且其中一列是零,而不是3列。

理解曲线矩阵的原理之后,我们就可以用plot函数画出示波器中显示的图形了。

curve=plot(aa(:,1),aa(:,2),aa(:,1),aa(:,3),'--r')

%aa(:,1)表示取aa的第一列,仿真时间

%aa(:,2)表示取aa的第二列,示波器的输入一

%aa(:,3)表示取aa的第三列,示波器的输入二

%--r表示曲线2显示的形式和颜色,这里是(red)

set(curve(1),'linewidth',3)

%设置曲线1的粗细

set(curve(2),'linewidth',3)

%设置曲线2的粗细

legend('Fuzzy','PID')

%曲线名称标注

xlabel('仿真时间(s)')

%X坐标轴名称标注

ylabel('幅值')

%Y轴坐标轴标注

title('Fuzzy Control VS PID')

%所画图的名称

grid on

%添加网格

运行上述命令后即可以看到用MATLAB命令画出的图形了,你可以在图形出来之后继续进行编辑。

(整理)matlab_simulink_示波器_scope_图片保存.

Matlab Figure 图形保存以及Simulink 中Scope 窗口坐标标注(label)的设置收藏 1、我们使用Matlab绘制出数据的各种图形需要保存的时候,不少同学是直接用屏幕截图的办法来做的,但这样出来的图并不清晰,不便于后续应用和处理,并且往往不符合发表论文的要求,很多论文是要求用.eps 格式的图片的。实际上,我们可以有下面两种更好的处理方法: (1)在论文里插入图片 在Matlab的Figure窗口,点击菜单栏的Edit,选择Copy Figure,然后转到你的文档界面,把光标放到需要插入图片的位置,然后Ctrl+C,你就可以得到比较清晰的图片了。 需要注意的是,这时候的图片有相当一部分空白区域,你可以用word图片工具栏的‘裁剪’功能把图片空白区域消除掉。 另外,如果需要对图片的大小进行拉伸,最好不要直接用鼠标拖拉,这样容易导致图中的点线分布变形,可以右键点击图片,选择‘设置图片格式’,在‘大小’标签的‘缩放’栏里,设置图片的大小。 (2)直接保存Figure 为了便于后续处理和应用,建议大家形成一个良好习惯,即把绘制所得的Figure窗口直接保存为.fig文件,以后你就可以多次打开它,对图像进行修改处理,例如加注标签(label)等,也可以打开.fig文件把所显示的图像转存为其它格式的文件,例如.eps、.jpg等。 2、在做Simulink仿真时,使用的Scope波形显示模块实际上也是一种Figure窗口,不过Matlab把Scope的菜单栏隐藏起来,只提供了几个有限的参数设置。如果需要对Scope中的图加上坐标、更改界面背景色等,没有菜单栏就基本上无从下手了。 可以在打开你的mdl文件之后,在Matlab的命令行输入以下指令来恢复显示Scope的Figure 菜单栏: >> set(0,'ShowHiddenHandles','on'); >> set(gcf,'menubar','figure'); 这样Scope窗口就如下所示: 然后点击菜单栏的Edit ,可以选择Copy Figure 来保持波形图,也可以选择Figure Properties 来调整Scope 的各种图形属性,包括添加xlabel、ylabel、title,更改背景颜色,

MATLAB在复变函数与积分变换里的应用

MATLAB在复变函数与积分变换里的应用 目录 1复数的生成 (1) 2 复常数的运算 (1) 2.1—2.3 求复数的实部、虚部、模、幅角、共轭复数 (1) 2.4—2..8两个复数之间进行乘除法运算、幂运算、指数对数运算及方程求根 (2) 2..9MA TLAB极坐标绘图 (6) 3 泰勒级数的展开 (3) 4 留数计算和有理函数的部分分式展开 (4) 4.1 留数计算 (4) 4.2 有理函数的部分分式展开 (5) 5 Fourier变换及其逆变换 (6) 6 Laplace变换及其逆变换由拉普拉斯曲面图观察频域与复频域的关系 (7) 参考文献 (10)

复变函数与积分变换理论性较强,又是解决实际问题的强有力的工具. 本文利用MATLAB讨论了复变函数与积分变换中的复数运算、泰勒级数的展开、留数、有理函数展开、Fourier 变换、Laplace变换和图形绘制等几个问题.可以使用MATLAB来进行复变函数的各种运算,还可以使用matlab进行Taylor级数展开以及Laplace变换和Fourier变换。 1.复数的生成 复数的生成有两种形式。 a: z=a+b*i example1:>> z=2+3*i z = 2.0000 + 3.0000i b: z=r*exp(i*theta) example2: >> z=2*exp(i*30) z = 0.3085 - 1.9761i 2.复数的运算 2.1、复数的实部和虚部 复数的实部和虚部的提取可由函数real和imag实现。 调用形式 real(x)返回复数的实部 imag(x)返回复数的虚部 example3: >> z=4+5*i; >> real(z) ans = 4 >> imag(z) ans = 5

MATLAB命令画出simulink示波器图形

毕业论文答辩已经结束很长时间了,现在总结一下我在做毕业论文时的用MATLAB命令画出simulink示波器图形的一点方法,我也是MATLAB初学者,所用方法不算高明方法,并且这些方法在论坛应该都能找到,请大家见谅。 第一步,将你的示波器的输出曲线以矩阵形式映射到MATLAB的工作空间内。 如图1所示,双击示波器后选择parameters目录下的Data history,将Save data to workspace勾上,Format选择Array,Variable name即你输入至工作空间的矩阵名称,这里我取名aa。在这之后运行一次仿真,那么你就可以在MATLAB的工作空间里看到你示波器输出曲线的矩阵aa。如图2所示。 第二步,用plot函数画出曲线 双击曲线矩阵aa,将可以看到详细情况,我这里的aa矩阵是一个1034行,3 列的矩阵,观察这个矩阵即可以发现,这个矩阵的第一列是仿真时间,而由于我仿真时示波器内输出的是两条曲线,所以第二列和第三列即分别代表了这2条曲线。同时大家要注意,在simulink中我们有时往往在示波器中混合输出曲线,那么就要在示波器前加一个MUX混合模块,因此示波器内曲线映射到的工作空间的矩阵是和你的MUX的输入端数有关,如果你设置了3个MUX输入端,而实际上你只使用了2个,那么曲线矩阵仍然会有4列,并且其中一列是零,而不是3列。 理解曲线矩阵的原理之后,我们就可以用plot函数画出示波器中显示的图形了。 curve=plot(aa(:,1),aa(:,2),aa(:,1),aa(:,3),'--r') %aa(:,1)表示取aa的第一列,仿真时间 %aa(:,2)表示取aa的第二列,示波器的输入一 %aa(:,3)表示取aa的第三列,示波器的输入二 %--r表示曲线2显示的形式和颜色,这里是(red) set(curve(1),'linewidth',3) %设置曲线1的粗细 set(curve(2),'linewidth',3) %设置曲线2的粗细 legend('Fuzzy','PID') %曲线名称标注 xlabel('仿真时间(s)') %X坐标轴名称标注 ylabel('幅值') %Y轴坐标轴标注 title('Fuzzy Control VS PID') %所画图的名称 grid on %添加网格 运行上述命令后即可以看到用MATLAB命令画出的图形了,你可以在图形出来之后继续进行编辑。

MATLAB编程与SIMULINK仿真简介

348 数字信号处理 MATLAB编程与SIMULINK仿真简介 A.1 MATLAB编程基础 MATLAB6.5提供了丰富的编程语句结构和实用函数,MATLAB产品组是支持你从概念设计、算法开发、建模仿真到实时实现的理想的集成环境。无论是进行科学研究还是产品开发,MATLAB产品族都是必不可少的工具。这里介绍一些常用的编程技巧和方法,以便同学们能尽快地启动起来,更好地应用MATLAB。 1. MATLAB文件的编写与调试环境 M文件的编写与调试在MATLAB Editor/Debugger下进行(图B1-1),这个集成环境可以方便地进行新建、修改、存储,选择Debug菜单中的Run命令就可以运行程序,运行结果显示在MATLAB Command Window 中。程序的调试应用Debug菜单就可以进行调试,其他高级语言中的Set/Clear Breakpoint、Single Step、Stop if error等选项都有,可以方便的调试程序。 图B1-1 M文件的编写与调试窗口 在MATLAB Editror/Debugger下按照MATLAB编程的规则键入相关的语句并存盘,就可以得到一个后缀为.m的文本文件。

2. MATLAB脚本文件和函数文件 在MATLAB中,无论是问题的提出还是结果的表达都采用你习惯的数学描述方法,而不需要用传统的编程语言进行处理。应用MATLAB编写出来的程序可以是M脚本文件(Script 。file),也可以是M函数文件(Function file),这些文件都由纯ASCII字符构成,其后缀m MATLAB下 M脚本文件是一串按用户意图排列而成的(包括控制流向指令在内)MATLAB 指令集合,可以直接执行,用户只需在Command Window中MATLAB提示符>>后键入文件名即可执行。脚本文件运行后所产生的所有变量都驻留在MATLAB的基本工作空间(Base workspace)中,只要用户不加以清除且MATLAB指令窗不关闭,则这些变量将一直保存在基本工作空间。与脚本文件不同,函数文件犹如一个“黑箱”,从外界只看到传给它的输入量和送出来的计算结果,内部运作是看不见的,并且函数文件的第一行总是以“function”引导的“函数申明行”。M函数文件必须由其它的语句来调用,在一般情况下用户不能单独键入其文件名来运行一个M函数。 MATLAB下的大多数的应用程序由M函数文件形式给出,例如求取系统特征方程的根的root ()函数和绘制零极点图的pzmap ()函数等。除了M函数文件之外,MATLAB还提供了大量的底层函数(内部),这类文件是不可读的,与M函数一起统称为函数。 3. M文件的一般结构 从结构上看脚本文件只是比函数文件少一个“函数申明行”,所以脚本文件和函数文件除第一行不同外,其余的结构都是一样的。 典型M函数文件的基本结构可由以下几部分构成: (1)函数申明行(Function declaration line),位于函数文件的首行,以MATLAB 关键字function 开头,函数名以及函数的输入输出宗量都在这一行中定义; (2)H1行(The first help text line):紧随函数申明行之后以%开头的第一行注释行。H1行包括大写体的函数名和运用关键词简要描述的函数功能,该行供lookfor关键词查询和help在线帮助查询使用; (3)在线帮助文本(Help text)区:H1行及其之后的连续以%开头的第一行的所有注释行构成在线帮助文本; (4)编写和修改记录:标志编写及修改该M文件的作者、日期,便于档案管理; (5)函数体(Function body):该部分由实现M函数功能的MATLAB指令组成。它接收输入宗量,进行程序流程控制,得到输出宗量。从运算角度看“函数申明行”和“函数体”两部分是构成M函数文件所必不可少的。 函数文件(Function file)由function()语句引导,其基本格式为: function 返回变量名=函数名(输入变量列表) 注释说明语句段 函数体语句 在编制程序的过程中输入和返回的变量分别由nargin和nargout两个MATLAB的保留参数给出,返回变量要多于1个,应该用方括号括起来,输入变量用逗号隔开。注释语句

实验一、复变函数与特殊函数图形的绘制

实验一、复变函数与特殊函数图形的绘制 一、复变函数图形的绘制 例题:编程绘制出复变函数31/31 ,的图形。 z z , z 解: %experiment1.m close all clear all m=30; r=(0:m)'/m; theta=pi*(-m:m)/m; z=r*exp(i*theta); w=z.^3; blue=0.2; x=real(z); y=imag(z); u=real(w); v=imag(w); v=v/max(max(abs(v))); %%函数值虚部归一化 M=max(max(u)); m=min(min(u)); axis([-1 1 -1 1 m M]) caxis([-1 1]) %%指定颜色值的范围 s=ones(size(z)); subplot(131) mesh(x,y,m*s,blue*s) %%画投影图 hold on surf(x,y,u,v) %%画表面图 xlabel('x') ylabel('y') zlabel('u') title('z^3') hold off colormap(hsv(64)) %%画色轴 w=z.^(1/3); x=real(z); y=imag(z); subplot(132) for k=0:2 rho=abs(w);

phi=angle(w)+k*2*pi/3; u=rho.*cos(phi); v=rho.*sin(phi); v=v/max(max(abs(v))); %%函数值虚部归一化 M=max(max(max(M,u))); m=min(min(min(m,u))); surf(x,y,u,v) %%画表面图 axis([-1 1 -1 1 m M]) hold on end s=ones(size(z)); mesh(x,y,m*s,blue*s) %%画投影图 xlabel('x') ylabel('y') zlabel('u') title('z^{1/3}') colormap(hsv(64)) %%画色轴 w=1./z; w(z==0)=NaN; x=real(z); y=imag(z); u=real(w); v=imag(w); v=v/max(max(abs(v))); %%函数值虚部归一化 M=max(max(max(M,u))); m=min(min(min(m,u))); subplot(133) surf(x,y,u,v) %%画表面图 hold on axis([-1 1 -1 1 m M]) s=ones(size(z)); mesh(x,y,m*s,blue*s) %%画投影图 xlabel('x') ylabel('y') zlabel('u') title('1/z') colormap(hsv(64)) %%画色轴

MATLAB_simulink中的示波器scope设置

一、打印输出(Print)将系统仿真结果的输出信号打印出来。二、视图自动缩放(Autoscale)点击此按钮可以自动调整显示范围以匹配系统仿真输出信号的动态范围。三、X轴缩放、Y轴缩放以及视图整体缩放可以分别对X坐标轴、Y坐标轴或同时对X、Y坐标轴的信号显示进行缩放,以满足用户对信号做局部观察的需要。使用时,单击缩放按钮后选择需要观察的信号范围即可。若需要缩小视图,单击鼠标右键,选择弹出菜单的Zoom out即可。四、保存和恢复坐标轴设置使用Scope模块观察输出信号时,用户可以保存坐标轴设置。这样,当信号的视图发生改变后,单击恢复坐标轴设置可以恢复以前保存的坐标轴设置。五、Scope参数设置点击Scope 模块工具栏的参数设置按钮(Parameters),可以打开Scope模块的参数设置界面,见图9.2(a)。Scope 模块的参数设置包含两个选项卡:General和Data History。 1、General选项卡通常参数设置界面首先显示General选项卡的内容。在General选项卡中可以进行下列设置:(1)坐标系数目(Number of axes)在一个Scope模块中可以使用多个坐标系窗口同时输出多个信号。同时可使用的坐标系数目由此处设置。

默认设置下,Scope模块仅显示一个坐标系窗口。(2)悬浮Scope开关(floating scope)用来将Scope模块切换为悬浮Scope模块。悬浮Scope模块将在9.1.2中介绍。(3)显示时间范围(Time range)用来设置信号的显示时间范围。需要注意的是信号显示的时间范围和系统仿真的时间范围可以不同。坐标系所显示的时间范围并非为绝对时间,而是指相对时间范围,坐标系左下角的时间偏移(Time offset)规定时间的起始时刻。 (4)坐标系标签(Tick labels)确定Scope模块中各坐标系是否带有坐标系标签。此选项提供3种选择:全部坐标系都使用坐标系标签(all)、最下方坐标系使用标签(bottom axis only)以及都不使用标签(none)。2、Data history选项卡在Data history选项卡中可以进行下列设置:(1)信号显示点数限制(Limit data points to last)用来限制显示信号的数据点的数目,Scope模块会自动对信号进行截取,只显示信号最后n个点(n为设置的点数)。(2)保存信号至工作空间(Save data to workspace)将Scope 模块显示的信号保存至MATLAB工作空间中,以便于对信号进行更深入的定量分析。(3)数据保存变量名

matlabsimulink初级教程

S i m u l i n k仿真环境基础学习Simulink是面向框图的仿真软件。 7.1演示一个Simulink的简单程序 【例7.1】创建一个正弦信号的仿真模型。 步骤如下: (1)在MATLAB的命令窗口运行simulink命令,或单击工具栏中的图标,就可以打开Simulink模块库浏览器(SimulinkLibraryBrowser)窗口,如图7.1所示。

图7.1Simulink界面 (2)单击工具栏上的图标或选择菜单“File”——“New”——“Model”,新建一个名为“untitled”的空白模型窗口。 (3)在上图的右侧子模块窗口中,单击“Source”子模块库前的“+”(或双击Source),或者直接在左侧模块和工具箱栏单击Simulink下的Source子模块库,便可看到各种输入源模块。 (4)用鼠标单击所需要的输入信号源模块“SineWave”(正弦信号),将其拖放到的空白模型窗口“untitled”,则“SineWave”模块就被添加到untitled窗口;也可以用鼠标选中“SineWave”模块,单击鼠标右键,在快捷菜单中选择“addto'untitled'”命令,就可以将“SineWave”模块添加到untitled窗口,如图7.2所示。

(5) Scope ”模块(示波器)拖放到“untitled ”窗口中。 (6)在“untitled ”窗口中,用鼠标指向“SineWave ”右侧的输出端,当光标变为十字符时,按住鼠标拖向“Scope ”模块的输入端,松开鼠标按键,就完成了两个模块间的信号线连接,一个简单模型已经建成。如图7.3所示。 (7)开始仿真,单击“untitled ”模型窗口中“开始仿真”图标 ,或者选择菜单“Simulink ”——“Start ”,则仿真开始。双击“Scope ” 模块出现示波器显示屏,可以看到黄色的正弦波形。如图7.4所示。 图7.2Simulink 界面

MATLAB绘图功能大全

Matlab绘图 强大的绘图功能是Matlab的特点之一,Matlab提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一些基本参数就能得到所需图形,这类函数称为高层绘图函数。此外,Matlab 还提供了直接对图形句柄进行操作的低层绘图操作。这类操作将图形的每个图形元素(如坐标轴、曲线、文字等)看做一个独立的对象,系统给每个对象分配一个句柄,可以通过句柄对该图形元素进行操作,而不影响其他部分。 本章介绍绘制二维和三维图形的高层绘图函数以及其他图形控制函数的使用方法,在此基础上,再介绍可以操作和控制各种图形对象的低层绘图操作。 一、二维绘图 二维图形是将平面坐标上的数据点连接起来的平面图形。可以采用不同的坐标系,如直角坐标、对数坐标、极坐标等。二维图形的绘制是其他绘图操作的基础。 (一)绘制二维曲线的基本函数 在Matlab中,最基本而且应用最为广泛的绘图函数为plot,利用它可以在二维平面上绘制出不同的曲线。 1.plot函数的基本用法

plot函数用于绘制二维平面上的线性坐标曲线图,要提供一组x 坐标和对应的y坐标,可以绘制分别以x和y为横、纵坐标的二维曲线。plot函数的应用格式 plot(x,y) 其中x,y为长度相同的向量,存储x坐标和y坐标。 例51 在[0 , 2pi]区间,绘制曲线 程序如下:在命令窗口中输入以下命令 >> x=0:pi/100:2*pi; >> y=2*exp(-0.5*x).*sin(2*pi*x); >> plot(x,y) 程序执行后,打开一个图形窗口,在其中绘制出如下曲线 注意:指数函数和正弦函数之间要用点乘运算,因为二者是向量。 例52 绘制曲线 这是以参数形式给出的曲线方程,只要给定参数向量,再分别求出x,y向量即可输出曲线: >> t=-pi:pi/100:pi; >> x=t.*cos(3*t); >> y=t.*sin(t).*sin(t); >> plot(x,y) 程序执行后,打开一个图形窗口,在其中绘制出如下曲线 以上提到plot函数的自变量x,y为长度相同的向量,这是最常见、最基本的用法。实际应用中还有一些变化。

Matlab在复变函数中应用解读

Matlab在复变函数中应用 数学实验(一) 华中科技大学数学系 二○○一年十月

MATLAB在复变函数中的应用 复变函数的运算是实变函数运算的一种延伸,但由于其自身的一些特殊的性质而显得不同,特别是当它引进了“留数”的概念,且在引入了Taylor级数展开Laplace 变换和Fourier变换之后而使其显得更为重要了。 使用MATLAB来进行复变函数的各种运算;介绍留数的概念及MAT–LAB的实现;介绍在复变函数中有重要应用的Taylor展开(Laurent展开Laplace变换和Fourier变换)。 1 复数和复矩阵的生成 在MATLAB中,复数单位为)1 j i,其值在工作空间中都显示为 =sq rt = (- 0+。 .1 i 0000 1.1 复数的生成 复数可由i z+ =。 a =语句生成,也可简写成bi a z* + b 另一种生成复数的语句是) exp(i theta r =,也可简写成) =, z* exp(theta * i r z* 其中theta为复数辐角的弧度值,r为复数的模。 1.2 创建复矩阵 创建复矩阵的方法有两种。 (1)如同一般的矩阵一样以前面介绍的几种方式输入矩阵 例如:)] i A* * i i = + 3[i * - + * , ), 23 5 33 6 exp( 2 3 , exp( 9 (2)可将实、虚矩阵分开创建,再写成和的形式 例如: )2,3( re=; rand im=; )2,3( rand

im i re com *+= ] 5466.07271.05681.02897.07027.05341.08385.03420.03704.03412.03093.06602.0[i i i i i i com ++++++= 注意 实、虚矩阵应大小相同。 2 复数的运算 1.复数的实部和虚部 复数的实部和虚部的提取可由函数real 和imag 实现。 调用形式 )(x real 返回复数x 的实部 )(x imag 返回复数x 的虚部 2.共轭复数 复数的共轭可由函数conj 实现。 调用形式 )(x conj 返回复数x 的共轭复数 3.复数的模和辐角 复数的模和辐角的求解由功能函数abs 和angle 实现。 调用形式 )(x abs 复数x 的模 )(x angle 复数x 的辐角 例:求下列复数的实部与虚部、共轭复数、模与辐角 (1) i 231 + (2)i i i --131 (3)i i i 2)52)(43(-+ (4)i i i +-2184 由MATLAB 输入如下:

matlab-simulink 初级教程

Simulink仿真环境基础学习 Simulink是面向框图的仿真软件。 7.1演示一个Simulink的简单程序 【例7.1】创建一个正弦信号的仿真模型。 步骤如下: (1) 在MATLAB的命令窗口运行simulink命令,或单击工具栏中的图标,就可以打开Simulink模块库浏览器(Simulink Library Browser) 窗口,如图7.1所示。

(2) 单击工具栏上的图标或选择菜单“File ”——“New ”——“Model ”,新建一个名为“untitled ”的空白模型窗口。 (3) 在上图的右侧子模块窗口中,单击“Source ”子模块库前的“+”(或双击Source),或者直接在左侧模块和工具箱栏单击Simulink 下的Source 子模块库,便可看到各种输入源模块。 (4) 用鼠标单击所需要的输入信号源模块“Sine Wave ”(正弦信号),将其拖放到的空白模型窗口“untitled ”,则“Sine Wave ”模块就被添加到untitled 窗口;也可以用鼠标选中“Sine Wave ”模块,单击鼠标右键,在快捷菜单中选择“add to 'untitled'”命令,就可以将“Sine Wave ”模块添加到untitled 窗口,如图7.2所示。 图7.1 Simulink 界面

(5) 用同样的方法打开接收模块库“Sinks”,选择其中的“Scope”模块(示波器)拖放到“untitled”窗口中。 (6) 在“untitled”窗口中,用鼠标指向“Sine Wave”右侧的输出端,当光标变为十字符时,按住鼠标拖向“Scope”模块的输入端,松开鼠标按键,就完成了两个模块间的信号线连接,一个简单模型已经建成。如图7.3所示。 (7) 开始仿真,单击“untitled ”模型窗口中“开始仿真”图标,或者选择菜单“Simulink”——“Start”,则仿真开始。双击“Scope”模块出现示波器显示屏, 可以看到黄色的正弦波形。如图7.4所示。 图7.2 Simulink界面

复变函数实验课(一)

湖北民族学院理学院 2014年春季学期 数学与应用数学专业复变函数实验课 (一)计算部分 上课教师:汪海玲

Matlab中复变函数命令集 定义符号变量Syms 虚单位z=Sqrt(-1) 复数表示z=x+y*i 指数表示z=r*exp(i*a) 求实部Real(z) 求虚部Imag(z) 求共轭Conj(z) 求模Abs(z) 求幅角Angle(z) 三角函数z=sin(z) z=cos(z) 指数函数z=exp(z) 对数函数z=log(z) 幂函数z=z^a 解方程expr=‘方程式’; Solve(expr) 泰劳展开Taylor(e,z) 求留数[r,p,k]=residue(p,q) 傅立叶变换Fourier(e,z,w) 逆傅立叶变换Ifourier(e,w,z) 拉普拉斯变换Laplace(e,w,t) 逆拉普拉斯变换Ilaplace(e,t,x)

一复数的运算 1.复数的实部和虚部 复数的实部和虚部的提取可由函数real和imag实现。 调用形式 real返回复数x的实部 (x ) (x imag返回复数x的虚部 ) 2.共轭复数 复数的共轭可由函数conj实现。 调用形式 conj返回复数x的共轭复数 (x ) 3.复数的模和辐角 复数的模和辐角的求解由功能函数abs和angle实现。 调用形式 abs复数x的模 ) (x angle复数x的辐角 ) (x 上机操作:课本例题1.2、例题1.4、课后习题(一)1. 4.复数的乘除法 复数的乘除法运算由“/”和“ ”实现。 5.复数的平方根 复灵敏的平方根运算由函数sprt实现。 调用形式 ) sprt返回复数x的平方根值 (x 6.复数的幂运算 x^,结果返回复数x的n次幂。 复数的幂运算的形式为n 上机操作:课本例题1.8 7.复数的指数和对数运算 复数的指数和对数运算分别由函数exp和log实现。

MATLAB在复变函数与积分变换的应用

本科毕业论文 题目:MATLAB在复变函数与积分变换的应用学院:数学与计算机科学学院 班级:数学与应用数学2009级班 姓名: 指导教师:职称:副教授 完成日期:2013年05月10日

MATLAB在复变函数与积分变换的应用 摘要:复变函数与积分变换理论性较强,又是解决实际问题的强有力的工具.该课程已深入到数学的各个分支,如微分方程、积分方程、概率论和数论等多个学科.然而该课程的很多内容比较抽象,学起来比较枯燥且难学. 本文利用MATLAB讨论了复变函数与积分变换中的复数运算、泰勒级数的展开、留数、有理函数展开、Fourier变换、Laplace变换和复变函数图形绘制等几个问题.这样不仅提高和完善复变函数与积分变换方法的实用性,同时可以培养学习者运用MATLAB语言编程的能力,对学习者以后的专业课及工作中使用数学软件进行数据处理有很大帮助. 关键词:MATLAB; 复变函数; 积分变换

目录 1 引言 (1) 2 复常数的运算 (1) 2.1 求复数的实部、虚部、模、幅角、共轭复数 (1) 2.2 对于两个复常数之间进行乘法、除法运算及复方程求根 (2) 3 泰勒级数的展开 (3) 4 留数计算及积分计算和有理函数的部分分式展开 (4) 4.1 留数计算及积分计算 (4) 4.2 有理函数的部分分式展开 (5) 5 Fourier变换及其逆变换 (6) 6 Laplace换变换及其逆变换 (8) 7 复变函数图形绘制 (9) 参考文献 (10)

1 引言 复变函数与积分变换是电力工程、控制领域和通讯等理工科必备的重要课程,同时在解决实际问题中也有十分重要的作用.但是大多数人在学习这门课程时都会感觉内容抽象,学起来感觉枯燥且难学.如何应用现代高科技信息技术,让比较难理解的理论与繁杂枯燥的内容变得生动有趣,激发学习的兴趣,以及可以提高计算能力、实践能力就相当重要. 在国际学术界,MATLAB 已经被接受为一种准确、可靠的标准计算软件.用户可以直接在Command Window 内输入执行命令,或者可以建立一个M 文件,输入较大应用程序,编译完成后一起运行.现在常用的MATLAB 语言是基于最为流行的C++语言基础之上的,因此语法与C++语言有很大的相识,而且较C++语言更加简单,更符合研究人员对数学表达式的书写格式.使之更便利与非专业人员的使用.并且这种语言可拓展性极强,具有良好的可移植性,这也是在各个领域流行MATLAB 的重要原因. 本文把复变函数与积分变换的学习过程和MATLAB 结合起来,把复杂的计算交于计算机,目的是为了提高学生学习的兴趣与爱好同时也可以减轻学习的负担,缩短学习时间,大大提高了教学效果与质量. 2 复常数的运算 2.1 求复数的实部、虚部、模、幅角、共轭复数 在MATLAB 中的求解格式为: real(x) %回车x 的实部 imag(x) %回车x 的虚部 abs(x) %回车x 的模 angle(x) %回车x 的幅角 conj(x) %回车x 的共轭复数 例1 求下列复数的实部、虚部、模、幅角、共轭复数. (1) i 745+ (2) 5 23i e π (3) 57 37 ++i i 解:在编辑器中建立M 文件001.m 如下: format rat X=[5/4+7i,3*exp(2i*pi/5),i^7+i^(3/7)+5]

matlab simulink 的浮动示波器(floating scope)使用说明

浮动示波器(floating scope) 1.示波器的参数 " Number of axes" 项用于设定示波器的Y 轴数量,即示波器的输入信号端口的个数,其预设值为"1" ,也就是说该示波器可以用来观察一路信号,将其设为"2" ,则可以同时观察两路信号,并且示波器的图标也自动变为有两个输入端口,依次类推,这样一个示波器可以同时观察多路信号。 "Time range" (时间范围) ,用于设定示波器时间轴的最大值,这一般可以选自动(auto) ,这样X 轴就自动以系统仿真参数设置中的起始和终止时间作为示披器的时间显示范围。 第三项用于选择标签的贴放位置。 第四项用于选择数据取样方式,其中Decimation 方式是当右边栏设为"3" 时,则每3 个数据取一个,设为"5" 时,则是5 中取1 ,设的数字越大显示的波形就越粗糙,但是数据存储的空间可以减少。一般该项保持预置值"1" ,这样输入的数据都显示,画出的波形较光滑漂亮。如果取样方式选Sample time 采样方式,则其右栏里输入的是采样的时间间隔,这时将按采样间隔提取数据显示。该页中还有一项"Floating scope" 选择,如果在它左方的小框中点击选中,则该示波器成为浮动的示波器,即没有输入接口,但可以接收其他模块发送来的数据。 示波器设置的第二页是数据页,这里有两项选择。第一项是数据点数,预置值是

5000 ,即可以显示5000个数据,若超过5000 个数据,则删掉前面的保留后面的。也可以不选该项,这样所有数据都显示,在计算量大时对内存的要求高一些。如果选中了数据页的第二项"Save data to workspace" ,即将数据放到工作间去,则仿真的结果可以保存起来,并可以用MATLAB 的绘图命令来处理,也可以用其他绘图软件画出更漂亮的图形。 在保存数据栏下,还有两项设置,第一项是保存的数据命名(Variable name) ,这时给数据起一个名,以便将来调用时识别。第二项是选择数据的保存格式(Format) ,该处有3 种选择:Arrary格式适用于只有一个输入变量的情况;Structure with time 和Structure 这两种格式适用于以矢量表示的多个变量情况,并且前者同时保存数值和时间,后者仅保存数值。用Arrary 格式保存的变量,为了以后可以用MATLAB 命令重画,同时需要将时间也保存起来,这时可以在模型平台上调用一个Sources 模型库中的时钟模块(Clock) ,并将其连接一个示波器,用示波器的Save data to workspace 功能将时间作为一个变量同时保存起来。 2 . 图形缩放 在示波器窗口菜单上有3 个放大镜,分别可以用于图形的区域放大、X轴向和Y 轴向的图形放大。 3. 坐标轴范围 这可以在Scope 窗口的图形部分点击鼠标右键,在弹出的功能菜单中选择"axes properties…'" 项,则可以打开Y 轴范围限制的对话框。 4 浮动示波器(floating scope)

Matlab与Simulink系统仿真学习心得PDF.pdf

Matlab与Simulink系统仿真学习心得 班级:07610 学号:072019 姓名:马楠 第一部分:Matlab学习心得以及实践 Matlab是迄今为止我所见到过的功能最为强大实用范围宽广的软件。的确Matlab适用于教学,航天,网络仿真等等。而且提供了很多功能强大的工具箱,并且最为突出的是它自带的很全面细致的帮助文档,无论你是初学者还是老手都会惊叹于此,你也不必去花很多时间去熟悉那些繁杂的命令,并且很容易通过这些帮助文档得到关于这些函数最精准的用法。 Matlab是一个建立在矩阵操作上的软件,我想要想真正懂得并理解Matlab与一般的语言比如C或者java的区别,那么你就应该真正理解矩阵的思想。而且要熟悉Matlab对矩阵存储的方式(在下文中我会详细解释与之相关的内容),这样对提高你的代码执行效率与易懂性都有很大的帮助。 但是Matlab究竟应该怎么定位呢?一个编程软件,一个数学工具,一个工具箱,一个开发引擎,一个仿真工具,一个虚拟现实软件……的确要精准的说出Matlab的作用很难,或许去定义这个东西到底是用来干什么的并不重要,It is just a tool。 关于Matlab的学习方法,我想与别的语言有很大不同,对于汇编或者C,我们应当很注重底层的一些操作,比如栈或者队列存储数据的方式,int或者double类型转换的时候产生的数据丢失,或者指针方面很头疼的一些东西,但是对于Matlab你根本不必去注重这些东西,也不必去清除的记得那个函数的具体调用方式,那个函数的内容与结构等等。你需要的只是相当用一个笔记本写下你一步一步实现目标的步骤而已。一种草稿纸式的语言。你所学的东西很大部分都是为你要做的目标来服务的,也许这就是当初面向对象式语言产生的原因,但是Matlab就是这种语言的一个代表。 好了,就说到这里了,接下来是我自己学习中对Matlab的一些应用中所遇到的问题以及思考方式和解决办法。 1 离散信号卷积: N1=input('N1=');%输入N1 N2=input('N2=');%输入N2 k1=0:(N1-1);%定义序列f1的对应序号向量 k2=0:(N2-1);% 序列f2的对应序号向量 f1=ones(1,N1);%f1为阶跃序列 f2=0.5*k2;%f2为斜坡序列 [f,k]=dconv(f1,f2,k1,k2)%求离散卷积 其中dconv函数的代码为: function [f,k]=dconv(f1,f2,k1,k2) %The function of compute f=f1*f2 % f: 卷积和序列f(k)对应的非零样值向量 % k:序列f(k)的对应序号向量 % f1: 序列f1(k)非零样值向量 % f2: 序列f2(k)的非零样值向量 % k1: 序列f1(k)的对应序号向量 % k2: 序列f2(k)的对应序号向量

matlab复变函数画图形

matlab复变函数画图形 第四篇计算机仿真 第二十一章计算机仿真在复变函数中的应用 基于MATLAB语言的广泛应用,我们介绍的计算机仿真方法主要立足于对MATLAB 语言的仿真介绍,而其它的数学工具软件,MATHEMATIC,MATHCAD,MAPLE,的仿真方法是类似的, 本章将重点介绍使用MATLAB进行复数、复变函数的各类基本运算以及定理的 验证,并介绍仿真计算留数、积分的方法,以及复变函数中Taylor级数展 开,Laplace 变换和Fourier变换, 21.1 复数运算和复变函数的图形 21.1.1 复数的基本运算 1复数的生成 复数可由语句z=a+b*i 生成,也可简写成z=a+bi;另一种生成复数的语句是 z=r*exp(i*theta),其中theta是复数辐角的弧度值, r 是复数的模( 2复矩阵的生成 创建复矩阵有两种方法( (1)一般方法 例 21.1.1创建复矩阵的一般方法( 【解】仿真程序为 A=[3+5*I -2+3i i 5-i 9*exp(i*6) 23*exp(33i)] %运行后答案为A =3.0000+5.0000i -2.0000+3.0000i 0+1.0000i 5.0000-1.0000i 8.6415-2.5147i -0.3054+22.9980i ,说明: %后为注释语句,不需输入)

(2)可将实、虚矩阵分开创建,再写成和的形式 例 21.1.2 将实、虚部合并构成复矩阵 【解】仿真程序为 re=rand(3,2); im=rand(3,2); com=re+i*im %运行后答案为 com = 0.9501+0.4565i 0.4860+0.4447i 0.2311+0.0185i 0.8913+0.6154i 0.6068+0.8214i 0.7621+0.7919i 21.1.2 复数的运算 1 复数的实部和虚部 复数的实部和虚部的提取可由函数real和 imag 实现(调用形式如下: real(z) 返回复数 z 的实部; imag(z) 返回复数 z 的虚部. 2 共轭复数 复数的共轭可由函数conj实现(调用形式为:conj(z) 返回复数 z 的共轭复数. 3 复数的模与辐角 复数的模与辐角的求取由函数 abs 和angle实现(调用形式为: abs(z) 返回复数 z 的模; angle(z) 返回复数 z 的辐角. 例 21.1.1求下列复数的实部与虚部、共轭复数、模与辐角( 113i(34i)(25i),,,82132i,i4ii,,i1i,2i(1); (2); (3); (4)( 【解】 a=[1/(3+2i) 1/i-3i/(1-i) (3+4i)*(2-5i)/2i i^8-4*i^21+i] %a =0.2308 - 0.1538i 1.5000 - 2.5000i -3.5000 -13.0000i 1.0000 - 3.0000i

Matlab Simulink 仿真步骤

MATLAB基础与应用简明教程 张明等编著 北京航空航天大学出版社(2001.01) MATLAB软件环境是美国New Mexico大学的Cleve Moler博士首创的,全名为MATrix LABoratory(矩阵实验室)。它建立在20世纪七八十年代流行的LINPACK(线性代数计算)和ESPACK(特征值计算)软件包的基础上。LINPACK和ESPACK软件包是从Fortran语言开始编写的,后来改写为C语言,改造过程中较为复杂,使用不便。MATLAB是随着Windows环境的发展而迅速发展起来的。它充分利用了Windows环境下的交互性、多任务功能语言,使得矩阵计算、数值运算变得极为简单。MATLAB语言是一种更为抽象的高级计算机语言,既有与C语言等同的一面,又更为接近人的抽象思维,便于学习和编程。同时,它具有很好的开放性,用户可以根据自己的需求,利用MATLAB 提供的基本工具,灵活地编制和开发自己的程序,开创新的应用。 本书重点介绍了MATLAB的矩阵运算、符号运算、图形功能、控制系统分析与设计、SimuLink仿真等方面的内容。 Chap1 MATLAB入门与基本运算 本章介绍MATLAB的基本概念,包括工作空间;目录、路径和文件的管理方式;帮助和例题演示功能等。重点介绍矩阵、数组和函数的运算规则、命令形式,并列举了可能得到的结果。由于MATLAB的符号工具箱是一个重要分支,其强大的运算功能在科技领域有特殊的帮助作用。 1.1 MATLAB环境与文件管理 1.2 工作空间与变量管理 1.2.1 建立数据 x1=[0.2 1.11 3]; y1=[1 2 3;4 5 6]建立一维数组x1和二维矩阵y1。分号“;”表示不显示定义的数据。 MATLAB还提供了一些简洁方式,能有规律地产生数组: xx=1:10 %xx从1到10,间隔为1 xx=-2:0.5:1 %xx从-2到1,间隔为0.5 linespace命令等距离产生数组,logspace在对数空间中等距离产生数组。对于这一类命令,只要给出数组的两端数据和维数就可以了。 xx=linespace(d1,d2,n) %表示xx从d1到d2等距离取n个点 xx=logspace(d1,d2,n) %表明xx从10d1到10d2等距离取n个点 1.2.2 who和whos命令 who: 查看工作空间中有哪些变量名 whos: 了解这些变量的具体细节 1.2.3 exist命令 查询当前的工作空间内是否存在一个变量,可以调用exist()函数来完成。 调用格式:i=exist(‘A’); 式中,A为要查询的变量名。返回的值i表示A存在的形式: i=1 表示当前工作空间内存在一个变量名为A的矩阵; i=2 表示存在一个名为A.m的文件; i=3 表示MATLAB的工作路径下存在一个名为A.mex的文件;

用matlab绘制的漂亮图形

用matlab绘制的漂亮图形 1.不同坐标系下的图形对比 theta=0:pi/20:4*pi; phi= theta.^2- theta; [t,p]=meshgrid(theta,phi); r=t.*p; subplot(1,2,1);mesh(t,p,r); ylabel('x');xlabel('y');zlabel('z'); [x,y,z]=sph2cart(t,p,r); subplot(1,2,2);mesh(x,y,z); ylabel('x');xlabel('y');zlabel('z'); 2.球曲面的法线 [x,y,z]=sphere; Surfnorm(x,y,z)

3. x=rand(100,1)*16-8; y=rand(100,1)*16-8; r=sqrt(x.^2+y.^2)+eps; z=sin(r)./r; xlin=linspace(min(x),max(x),33); ylin=linspace(min(y),max(y),33); [X,Y]= meshgrid(xlin,ylin); Z=griddata(x,y,z,X,Y); mesh(X,Y,Z); axis tight;hold on; ylabel('x');xlabel('y');zlabel('z'); plot3(x,y,z,’r’,’MarkerSize’,15)

x=rand(1000,1)*16-8; y=rand(1000,1)*16-8; r=sqrt(x.^2+y.^2)+eps; z=sin(r)./r; xlin=linspace(min(x),max(x),99); ylin=linspace(min(y),max(y),99); [X,Y]= meshgrid(xlin,ylin); Z=griddata(x,y,z,X,Y); mesh(X,Y,Z); axis tight;hold on; ylabel('x');xlabel('y');zlabel('z'); plot3(x,y,z,'r','MarkerSize',30);

相关主题