文档库 最新最全的文档下载
当前位置:文档库 › MATLAB实验报告材料

MATLAB实验报告材料

MATLAB实验报告材料
MATLAB实验报告材料

MATLAB 实验报告

姓名:

专业:

学号:

实验一 MATLAB环境的熟悉与基本运算

一、实验目的:

1.熟悉MATLAB开发环境

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

二、实验基本知识:

1.熟悉MATLAB环境:

MATLAB桌面和命令窗口、命令历史窗口、帮助信息浏览器、工作空间浏览器文件和搜索路径浏览器。

2.掌握MATLAB常用命令

3.MATLAB变量与运算符

变量命名规则如下:

(1)变量名可以由英语字母、数字和下划线组成

(2)变量名应以英文字母开头

(3)长度不大于31个

(4)区分大小写

MATLAB中设置了一些特殊的变量与常量,列于下表。

MATLAB运算符,通过下面几个表来说明MATLAB的各种常用运算符

表2 MATLAB算术运算符

表3 MATLAB关系运算符

表4 MATLAB逻辑运算符

表5 MATLAB特殊运算

4.MATLAB的一维、二维数组的寻访

表6 子数组访问与赋值常用的相关指令格式

5.MATLAB的基本运算

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

6.MATLAB的常用函数

表8 标准数组生成函数

表9 数组操作函数

三、实验内容

1、学习安装MATLAB软件。

2、学习使用help命令,例如在命令窗口输入help eye,然后根据帮助说明,

学习使用指令eye(其它不会用的指令,依照此方法类推)

3、学习使用clc、clear,观察command window、command history和workspace

等窗口的变化结果。

4、初步程序的编写练习,新建M-file,保存(自己设定文件名,例如exerc1、

exerc2、exerc3……),学习使用MATLAB的基本运算符、数组寻访指令、标准数组生成函数和数组操作函数。

注意:每一次M-file的修改后,都要存盘。

四、实验结果

练习A:

(1)help rand,然后随机生成一个2×6的数组,观察command window、command history和workspace等窗口的变化结果。

(2)学习使用clc、clear,了解其功能和作用。

(3)输入C=1:2:20,则C(i)表示什么?其中i=1,2,3, (10)

(4)输入A=[7 1 5;2 5 6;3 1 5],B=[1 1 1; 2 2 2; 3 3 3],在命令窗口中执行下列表达式,掌握其含义:

A(2, 3) A(:,2) A(3,:) A(:,1:2:3) A(:,3).*B(:,2) A(:,3)*B(2,:) A*B A.*B A^2 A.^2 B/A B./A

(5)二维数组的创建和寻访,创建一个二维数组(4×8)A,查询数组A第2行、第3列的元素,查询数组A第2行的所有元素,查询数组A 第6列的所有元素。

(6)两种运算指令形式和实质内涵的比较。设有3个二维数组A

2×4,B

2×4

C

2×2

,写出所有由2个数组参与的合法的数组运算和矩阵指令。

(7)学习使用表8列的常用函数(通过help方法)

(8)学习使用表9数组操作函数。

练习B

(9)用reshape指令生成下列矩阵(不超过3次操作),并取出方框内的数组元素。

五、心得体会

这次实验是一次上机进行,所以只有一步一步按照实验的步骤做,通过这次实验更加明白了一些知识和一些用法,光从书本上还是无法真的知道各种用法的区别的。

实验二 MATLAB数值及符号运算

一、实验目的:

1、掌握矩阵的基本运算

2、掌握矩阵的数组运算

3、掌握多项式的基本运算

4、会求解代数方程

5、掌握创建符号表达式和矩阵的方法

6、掌握符号表达式的微分和积分运算

二、实验基本知识:

1、多项式运算

poly ——产生特征多项式系数向量

roots ——求多项式的根

p=poly2str(c,‘x’)(以习惯方式显示多项式)

conv,convs多项式乘运算

deconv多项式除运算

多项式微分

polyder(p): 求p的微分

polyder(a,b): 求多项式a,b乘积的微分

2、代数方程组求解

1).恰定方程组的解

方程ax=b(a为非奇异)两种求解方法: x=inv(a) b —采用求逆运算解方程

x=a\b —采用左除运算解方程

2)超定方程组的解

方程 ax=b ,m

3)欠定方程组的解

matlab可求出两个解:用除法求的解x是具有最多零元素的解

是具有最小长度或范数的解,这个解是基于伪逆pinv求

得的。

3、符号矩阵的创建

1)用matlab函数sym创建矩阵(symbolic 的缩写)

命令格式:A=sym('[ ]')

2)用字符串直接创建矩阵

4、符号矩阵与数值矩阵的转换

将数值矩阵转化为符号矩阵,函数调用格式:double(A)

将符号矩阵转化为数值矩阵,函数调用格式: numeric(A)

5、符号微积分与积分变换

diff(f) —对缺省变量求微分

diff(f,v) —对指定变量v求微分

diff(f,v,n) —对指定变量v求n阶微分

int(f) —对f表达式的缺省变量求积分

int(f,v) —对f表达式的v变量求积分

int(f,v,a,b) —对f表达式的v变量在(a,b)区间求定积分

6、符号代数方程求解

solve(f) ——求一个方程的解

solve(f1,f2, …fn) ——求n个方程的解

7、符号微分方程求解指令:dsolve

命令格式:dsolve(f,g): f ——微分方程,可多至12个微分方程的求

解;g为初始条件,默认自变量为 'x',可任意指定

自变量't', 'u'等,微分方程的各阶导数项以大写

字母D表示

三、实验内容及结果:

1、已知a=[1 2 3;4 5 6;7 8 0],求其特征多项式并求其根。

2、已知多项式a(x)=x 2+2x+3,b(x)=4x 2+5x+6,求a ,b 的积并微分。

3、求解方程 1)???=+=+ 133x 28

221

21x x x

2)?????=+=+=+3

43 23x 21221

2121x x x x x

3)???=++=++ 243x 21

32321

321x x x x x

4、用两种方法创建符号矩阵,A =[ a, 2*b]

[3*a, 0]

5、计算二重不定积分

6、对符号方程f = ax2+bx+c 求解。1)对x 求解,2)对a 求解。

dxdy

xe

xy

??-

7、求解微分方程0)0(,1)0(,02222===++dx dy

y y dx dy dx

y d 。

8、已知系统冲激响应为h(n)=[0.05,0.24,0.40,0.24,0.15,-0.1,0.1] ,系统输入u(n)由指令randn('state',1);u=2*(randn(1,100)>0.5)-1产生,该输入信号的起始作用时刻为0。试用直杆图(提示:用stem 指令)画出分别显示该系统输入、输出信号的两张子图。

四、心得体会

这次实验进一步提升自己的能力,虽然刚开始实验时没有把所有的实验做完,回来后又一个人把没做完的补完,学习的过程是很美好的。希望一次比一次有进步。

实验三 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

说明:1.if结构是一个条件分支语句,若满足表达式的条件,则往下执行;若不满足,则跳出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程序编辑与设计环境

相关文档