实验一 MATLAB基础训练

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一 MATLAB基础训练

一、实验目的

本次上机实验主要练习使用Matlab的基本操作和基础知识,包括数组(复数、向量、矩阵、结构体数组等)的创建和数组元素的操作和运算、矩阵的运算、Matlab的运算符(尤其是点运算‘.’)、脚本M文件和函数M文件的编写、Matlab文件的编程(基本的流程控制结构)、基本的二维和三维绘图方法以及图形的标注等。希望通过本次实验使大家尽量在短时间内(4学时)掌握Matlab的基本操作和基础知识,为后面的实验项目奠定基础。

二、实验原理

参见PPT中有关内容。

三、实验内容

1. 上机练习课件中的例子。

2. 设两个复数a=1+2i, b=3-4i, 计算a+b, a-b, a*b, a/b, a和b的模。

3. 计算下式的结果,其中x=-3.5°, y=6.7°

(提示:①应将角度单位由度转换为数学函数所能处理的弧度值;②求根函数sqrt,取绝对值函数abs,具体用法用help查询)

4. 对矩阵

123

456

789

A

⎡⎤

⎢⎥

=⎢⎥

⎢⎥

⎣⎦

, 实现下列操作:

(1) 左右翻转(fliplr命令)

(2) 上下翻转(flipud命令)

(3) 利用cat命令分别将A扩展成3×6和6×3的矩阵

(3) 分别提取A的第2行,第2列,对角线元素

(4) 删除A的第2行2列的元素

(提示:将矩阵元素赋空阵[]可以删除元素,注意此时元素的访问只能使用单下标的方式。观察删除元素后,A中元素的排列方式的变化)

5. 创建[0,2π]区间上拥有100个等间隔元素的列向量

...x.(Matlab默认是行向量),并绘制

y=sin(x1/3)的函数图像。

6. 创建如下图所示的单结构体数组。

7. 编程训练:下图所示电路中,R 1=2Ω, R 2=4Ω, R 3=12Ω, R 4=4Ω, R 5=12Ω, R 6=4Ω, R 7=2Ω, u s =10V, 求i 3。 (要求:以脚本M 文件方式建立程序。此项练习M 脚本文件的建立以及使用Matlab 解线性方程组。)

(提示:先建立电路方程如下

1233334555567()()0()0++-=⎧⎪-+++-=⎨⎪-+++=⎩a a b s b c b c

R R R i R i u R i R R R i R i R i R R R i

该线性方程组等价于矩阵形式:

AX B =

其中,A 是包含R 1~R 7的系数矩阵, B =(u s , 0, 0)T 是常数矩阵, X =(i a , i b , i c )T =A -1B=A \B 为解向量。因此使用矩阵除法(注意区别左除和右除)可以迅速解出i a , i b , i c 。

最后i 3= i a -i b =0.3704。)

8. 编程训练:已知某电路的电流i (t )的表达式为

101()0.88-==∑n t n i t nte

画出[-π, π]区间上的电流波形。 (要求:① 以脚本M 文件方式建立程序;② 用12号字体给图形加上标注‘t ’和‘i(t)’,红色曲线+圆形标记‘o ’,如下图所示。此项练习二维绘图方法、图形的标注和循环控制结构)

9. 编程训练:已知y x ,的取值范围是[,]a b ,若a =﹣8, b =8,

画出z =所表

示的三维曲面。(要求:① 以脚本M 文件方式建立程序;② 使用surf 和mesh 函数分别绘出曲面图和网格图,参考图形如下。此项练习三维绘图方法)

10. 以函数M 文件的方式重做第9个项目,其中函数的输入参数为a 和b 。(此项练习M 函数文件的建立)

11. 建立如下图所示的用户界面菜单。要求:(A)把用户菜单 'Option' 设置为顶层的第3菜单项;(B)下拉菜单被两条分隔线分为三个菜单区;(C)最下菜单项又有两个子菜单组成。(此项练习用户菜单的建立,写出M 文件)

四、实验要求

以上训练项目要求在4个实验学时内完成,并提交项目7-11的程序。

五、思考题

1. 举例说明如何创建三维数组?

2. 第9个训练项目中,函数z的表达式中,分子可能被0除,导致绘图数据点中出现非数NaN,绘出的图形不正确。如何解决这一问题?

3. 如何将第9个项目中的两幅图放在同一个图形窗口中显示?(提示:使用subplot命令将图形窗口分割成1×2的子窗口。subplot(m,n,i)将图形窗口分割成m×n的子窗口,并指定第i个子窗口为图形的绘制区域)

4. surf函数绘出的三维图一般有黑色格线,如何消掉黑色格线?以第9个项目为例说明。

相关文档
最新文档