MATLAB与控制系统。。仿真实验报告 下载本文

内容发布更新时间 : 2024/5/5 3:29:46星期一 下面是文章的全部内容请认真阅读。

实验二 MATLAB环境的熟悉与基本运算(二)

一、实验目的

1. 熟悉MATLAB开发环境

2.掌握矩阵、变量、表达式的各种基本运算

二、实验基本原理

的基本运算

表1 两种运算指令形式和实质内涵的异同表

2.MATLAB的常用函数

三、主要仪器设备及耗材

计算机

四、实验程序及结果

1、设有3个二维数组A(2×4),B(2×4),C(2×2),参照表1写出所有由2个数组参与的合法

的数组运算和矩阵指令及结果。

2、学习使用表2列出的常用函数。

3、学习使用表3列出的数组操作函数。 >> A=[1,2,3,4;5,6,7,8;9,10,11,12]; >> diag(A) ans = 1 6 11 >> fliplr(A) ans = 4 3 2 1 8 7 6 5 12 11 10 9 >> flipud(A) ans = 9 10 11 12 5 6 7 8 1 2 3 4 >> A=[1,2;3,4]; >> reshape(A,1,4) ans = 1 3 2 4 >> rot90(A) ans = 2 4 1 3 >> det(A) ans = -2 >> rank(A) ans = 2

4、生成下列矩阵,并取出方框内的数组元素

>>A=[1,2,3,4,5;10,9,8,7,6;11,12,13 ,14,15;16,17,18,19,20] A = 1 2 3 4 5 10 9 8 7 6 11 12 13 14 15 16 17 18 19 20 >> A(2,2:3) ans = 9 8

>> A(2:4,4) ans = 7 14 19 >> A(4:5,1:3) ans= 16 17 18 21 22 23

实验三 MATLAB语言的程序设计

一、实验目的

1、熟悉MATLAB程序编辑与设计环境

2、掌握各种编程语句语法规则及程序设计方法 3、函数文件的编写和设计

4、了解和熟悉跨空间变量传递和赋值

二、实验基本原理

1、程序流程控制语句

for循环结构

语法:for i=初值:增量:终值 语句1

…… 语句n end

说明:1.i=初值:终值,则增量为1。

2.初值、增量、终值可正可负,可以是整数,也可以是小数,只须符合数学逻辑。

while 循环结构

语法:while 逻辑表达式 循环体语句 end

说明:1、whiIe结构依据逻辑表达式的值判断是否执行循环体语勾。若表达式的值为真,执行循环

体语句一次、在反复执行时,每次都要进行判断。若表达式的值为假,则程序执行end之后的语句。

2、为了避免因逻辑上的失误,而陷入死循环,建议在循环体语句的适当位置加break语句、以便程序能正常执行。(执行循环体的次数不确定;每一次执行循环体后,一定会改变while后面所跟关系式的值。)

3、while循环也可以嵌套、其结构如下: while逻辑表达式1

循环体语句1

while逻辑表达式2 循环体语句2 end

循环体语句3

end

if-else-end分支结构

if 表达式 1

语句1

else if 表达式 2(可选)

语句2

else(可选)

语句3

end end

说明:结构是一个条件分支语句,若满足表达式的条件,则往下执行;若不满足,则跳出if结构。

2.else if表达式2与else为可选项,这两条语句可依据具体情况取舍。 3.注意:每一个if都对应一个end,即有几个if,记就应有几个end。

switch-case结构

语法:switch表达式

case常量表达式1 语句组1

case常量表达式2 语句组2 ……

otherwise 语句组n end

说明:1.switch后面的表达式可以是任何类型,如数字、字符串等。

2.当表达式的值与case后面常量表达式的值相等时,就执行这个case后面的语句组如果所有的常量表达式的值都与这个表达式的值不相等时,则执行otherwise后的执行语句。 程序流程控制指令

break、return、pause

2、函数文件的结构和编写方法

函数只能在函数体内对变量进行操作,也就是只能访问函数本身工作空间中的变量。 M函数文件的结构

(1) 函数定义行(function)

(2) H1行(函数帮助文本的第一行) (3) 函数帮助文本 (4) 函数体

(5) 注释

函数文件编写后,保存时,其文件名必须与函数名相同。注意:函数名不要与MATLAB自身的函数命令相同。

三、主要仪器设备及耗材

计算机

四、实验程序及结果

练习A

1、熟悉MATLAB程序编辑与设计环境

2、用for循环语句实现求1~100的和 3、用for循环语句实现编写一个求阶乘n!的函数文件

4、判断y向量的元素属于3n 3n+1或3n+2,设y=[3,5,7,9,11,16]。(使用函数rem求余数)。

7、已知数组A=[2,4,6,8,10],B=[4,9,6,7,4],求

?A[i]B[n?i?1],其中n=5。

i?1n五、实验总结

在前两次实验的基础上,掌握了基本的操作,这次实验进一步加深了对软件功能的探索,让自己熟悉MATLAB程序编辑与设计环境.