matlab课程设计

发布 2022-10-01 01:49:28 阅读 3730

matlab设计语言。

课程设计报告。

班级:组长:

组员:2024年月日。

matlab简介1

实验目的1matlab简介。

matlab 是目前在国际上被广泛接受和使用的科学与工程计算软件。虽然 cleve moler 教授开发它的初衷是为了更简单、更快捷地解决矩阵运算,但 matlab 现在的发展已经使其成为一种集数值运算、符号运算、数据可视化、图形界面设计、程序设计、**等多种功能于一体的集成软件。

今天的 matlab 已经不再是仅仅解决矩阵与数值计算的软件,更是一种集数值与符号运算、数据可视化图形表示与图形界面设计、程序设计、**等多种功能于一体的集成软件。观察由欧美引进的新版教材,matlab 已经成为线性代数、数值分析计算、 数学建模、信号与系统分析、自动控制、数字信号处理、通信系统**等一批课程的基本教学工具。

matlab 有两种基本的数据运算量:数组和矩阵,单从形式上,它们之间是不好区分的。每一个量可能被当作数组,也可能被当作矩阵,这要依所采用的运算法则或运算函数来定。

在 matlab 中,数组与矩阵的运算法则和运算函数是有区别的。但不论是 matlab 的数组还是 matlab 的矩阵,都已经改变一般高级语言中使用数组的方式和解决矩阵问题的方法。

simulink是matlab最重要的组件之一,是matlab中的一种可视化功能。

**工具, 是一种基于matlab的框图设计环境,是实现动态系统建模、**和分析的一个软件包,被广泛应用于线性系统、非线性系统、数字控制及数字信号处理的建模和**中。它提供一个动态系统建模、**和综合分析的集成环境。在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。

simulink具有适应面广、结构和流程清晰及**精细、贴近实际、效率高、灵活等优点,并基于以上优点simulink已被广泛应用于控制理论和数字信号处理的复杂**和设计。同时有大量的第三方软件和硬件可应用于或被要求应用于simulink。

这些是 matlab 区别于其他高级语言的根本特点。以此为基础还可以概括出如下一些 matlab 的特色。

1 语言简介 ,编程效率高。

2 交互性好 ,使用方便。

3 强大的绘图能力,数据很好可视化。

4 学科众多 ,领域广泛的工具箱。

5 开放性好 ,便于扩充。

实验目的:掌握科学计算的有关方法,熟悉matlab语言及其在科学计算中的运用;

掌握matlab的命令运行方式和m文件运行方式;

熟悉使用simulimk进行系统**;

了解matlab在电子信息工程专业有关课程中的应用。

1 单文本界面窗口设计。

在matlab中,可以通过如下两种方法来访问模板:

直接输入命令guide,打开如下图所示的界面;

如果guide已经打开,通过【file】菜单下的【new】选项也可以打开如下图所示的界面。

图1.1创建图形用户界面。

在模板设计界面中,可以选择创建新的gui或者打开原有的gui。

在创建新的gui时matlab提供以下4种模板:

空白模板;带有控制按钮模板;

带有坐标轴和菜单模板;

问答式对话框模板。

图1.2 新建的空白图形用户界面。

在空白模板中,guide提供界面控件以及设计工具集来实现界面设计,其中,控件分布在界面设计编辑器的左侧,如下图所示。

图1.3 菜单介绍。

2 控制菜单设计。

2.1下拉菜单项设计。

1. 在matlab的命令行输入guide,选择blank gui (default)

2. 将它保存为“你的名字+project”,如苗常在的图形界面文件名为:

3. 点击工具条上的“menu editor”图标,进行如下菜单编辑。

图2.1 菜单窗口。

图2.2 菜单命名。

各菜单的tag如下:

表2.3 菜单命名。

注:其它菜单项的tag命名都像3.1节“3.1矩阵的生成”那样,命名为section+节号,节号中的点号用下划线代替。

4. 菜单命令设计。

1) 选中某一菜单项,如“3.1矩阵的生成”点击,点击“callback”编辑框后面的“view”按钮,进入对应的消息程序段,在那里添加相应的**。

图2.4 编辑窗口。

2) 在上图所示的选中**函数section3_1callback(蓝色)中添加**,如“exam3_3();

3) 其它所有章节都一样处理,但最好增加第**菜单,即某一节中的具体例子,如例3.4。点击“callback”编辑框后面的“view”按钮,进入对应的消息程序段,在那里添加相应的**。

2.2 工具条设计。

先设计好5个图标,要求是16×16的格式 ,**取名要求是和下列输入的名称一致,然后将五张**一并放入例子的文件夹中。

图2.7 输入的指令。

然后运行程序就可以在工具条上显示以下**。

图2.8 工具条上显示的图标。

3 各章的典型例子实验。

3.1 第三章实例。

matlab语言中,矩阵主要分为三类:数值矩阵、符号矩阵和特殊矩阵,其中数值矩阵有实数数值矩阵和复数数值矩阵两种。

3.1 矩阵的生成。

例3—1举例说明矩阵x的生成。

图3-1 矩阵生成。

图左为算例**图右为运行结果下同。

例3.3 由文本文件生成矩阵。

图3-2 文本文件生成矩阵。

例3.8 使矩阵a中的元素上下翻转。

a=1 2 3 4

图3-3 元素翻转。

例3.10 使元素a 元素上下和左右翻转,a=[1,2,3,4;5,6,7,8]

图3-4 左右翻转。

例3-18 若a=[1 2 3;2 3 4],求b=ones(size(a))

图3-5 全一矩阵。

例3-19 a=[1 2 3;2 3 4] ,求b=zeros(size(a))

图3-6 全零矩阵。

例3-20 若a=[1 2 3;2 3 4], 求b=rand(size(a))

图3-7 随机矩阵。

例3-21 生成区间[10 ,15]内均匀分布的3阶随机矩阵。

图3-8 三阶随机矩阵。

例3-22 若a=[1 2 3;2 3 4], 求b=randn(size(a))。

图3-9 正态分布随机矩阵。

例3-26 已知矩阵a为4阶全1阵, 求l=tril(a,1), u=tril(a,-1)

图3-10 四阶全1阵。

例3-29 求一个toeplitz矩阵。

图3-11 toeplitz矩阵。

例3-31 a=[1 2 3;4 5 6]; b=[5 6 ;7 8;9 10], 求矩阵x=a*b

图3-12 两个矩阵相乘。

例 3-33 a=[1 2 3;4 5 6]; b=[2 2 2;2 2 2], 求c=a*b

图3-13 矩阵点乘。

例 3-34 a=[1 2 3;4 5 6]; b=[2 2 2;2 2 2], 求c=dot(a,b)

图3-14 点积。

例3-37 已知向量a=[1,2,3]和b=[4,5,6],求c=cross(a ,b)

图3-15 叉积。

例3-39 展开多项式(s^2+2s+2)(s+4)(s+1)

图3-16 多项式相乘。

例3-40 求多项式(x^3+x^2+3x+4)(10x^2+20x+30)的卷积。

图3-17 多项式除法。

例3-43 a=[1 2 3;4 5 6], b=[7 4 9;4 7 1], 求c=b/a

图3-18 矩阵点除。

例3-44 a=rand(3), 求b=a^3

图3-19 矩阵乘方。

例3-45 a=rand(2),b=[10;32], 求c=ab

图3-20 数量乘方

例3-46 a=[1 2;3 4], 求b=e^4

图3-21 方阵的指数。

例 3-48 求矩阵函数f=funm(magic(3),@sin)

图3-22 矩阵函数。

例3-50 a=[1 1 0;0 0 2;0 0 1],p=[1 2 3 4 5], 求b=polyvalm(p,a)

图3-23 矩阵a的多项式。

例3-69 a=[-149 -50 -154 ;537 180 546 ;-27 -9 -25],求[p,h]=hess(a)

图3-24 海森伯格形式的分解。

3.2 第四章实例。

MATLAB课程设计

1 求被控对象传递函数g s 的matlab描述。num 789 6312 11835 den 1 14 56 64 0 0 gs tf num,den transfer function 789 s 2 6312 s 11835 s 5 14 s 4 56 s 3 64 s 2 2 求被控对象脉冲...

MATLAB课程设计

课程设计。题目 matlab计算器。姓名 班级 学院 专业 完成时间。1总体设计。该计算器程序主要是matlab来制作,界面主要由四个静态文本框 21个运算按钮和两个动态文本框组成。实现的运算功能有四则运算 加 减 乘 除。而且添加了括号使人们使用时更加简单。这些计算功能主要调用了matlab的自定...

MATLAB课程设计

matlab课程设计。如图所示,为测量系统的示意图,它由两个能相互转动的连杆,角度编码器和滚轮等组成。o1为固定点,o2点为转动点,o3点为滚轮的中心,连杆的有效长度分别为l1和l2。任一位置时,连杆1相对于某基准位置的角度为 1,两连杆的相对角度为 2。其中对于 1,取垂直方向为基准线,在基准线左...