工学matlab教案Word下载.docx
《工学matlab教案Word下载.docx》由会员分享,可在线阅读,更多相关《工学matlab教案Word下载.docx(71页珍藏版)》请在冰豆网上搜索。
MATLAB具有强大的数学运算能力、方便实用的绘图功能及语言的高度集成性,它在其他科学与工程领域的应用也是越来越广,并且有着更广阔的应用前景和无穷无尽的潜能。
MATLAB可以将使用者从繁琐、无谓的底层编程中解放出来,把有限的宝贵时间更多地花在解决问题中,这样无疑会提高工作效率。
目前,MATLAB已经成为国际上最流行的科学与工程计算的软件工具,现在的MATLAB已经不仅仅是一个“矩阵实验室”了,它已经成为了一种具有广泛应用前景的全新的计算机高级编程语言了,在国内外高校和研究部门正扮演着重要的角色。
可以预见,在科学运算、自动控制与科学绘图领域MATLAB语言将长期保持其独一无二的地位。
一、MATLAB的主要特点
●有高性能数值计算的高级算法特别适合矩阵代数领域;
●有大量事先定义的数学函数并且有很强的用户自定义函数的能力;
●有强大的绘图功能以及具有教育、科学和艺术学的图解和可视化的二维、三维图;
●适合个人应用的强有力的面向矩阵(向量)的高级程序设计语言;
●与其它语言编写的程序结合和输入输出格式化数据的能力;
●有在多个应用领域解决难题的工具箱。
本教程基于MATLAB6.5版。
二、操作环境
matlab主界面:
菜单、工具栏、工作区(命令窗口)、workplacebrower、commmandhistory等。
Figtrue窗口:
m文件编辑窗口:
有些工具箱也提供了操作界面,可以通过命令或选择start的toolboxes菜单进入。
三、引例
>
2+6–4
ans=
4
ans/2
2
也可以定义变量
a=5
a=
5
b=6
b=
6
c=b/a
c=
1.2000
可以使用内建的变量和函数
pi
3.1416
sin(ans/4)
0.7071
四、帮助
在MATLAB系统中相关的线上(on-line)求助方式有:
1.利用help或helpwin指令:
在命令窗口键入help<
topic>
,例如helpsqrt,help('
sqrt'
),helpwinsqrt。
2.利用lookfor指令:
键入的lookfor(key-word),列出所有相关的题材,例如lookforcosine,lookforsine。
3.利用指令视窗的功能选单中的Help,从中选取TableofContents(目录)或是Index(索引)。
4.利用doc指令:
doc;
或docfunction
Matlab运算基础
一.3变量与赋值
一、变量
matlab变量主要是矩阵,矩阵的元素可以是数值或字符串。
其中数值可以是实数或复数,虚数单位用i或j表示。
如a=3+9i(最好不要写成3+9*i,因为i、j是可以作为普通变量被赋值的)
特别地,如果矩阵只有一行或一列,就称为向量(vector),,如果只有一行一列,就称为标量(scalar)。
其他的变量类型有:
多维数组、结构、对象等。
变量的命名:
matlab变量无需声明即可直接使用,变量名以字母开头,接字母、数字或下划线,最多63个字符(多余的被忽略),区分大小写。
系统变量:
ans:
valueofanexpressionwhenthatexpressionisnotassignedtoavariable
eps:
floatingpointprecision2.2204e-016(2-52)
pi:
π,(3.141492...)
realmax:
最大正浮点数1.7977e+308(21024)
realmin:
最小正浮点数2.2251e-308(2-1022))
Inf:
∞,正无穷大,anumberlargerthanrealmax,theresultofevaluating1/0.
NaN:
notanumber,theresultofevaluating0/0
i,j:
虚数单位
不要对系统变量赋值,否则使用内建函数时会出错。
例外:
i,j常作为循环变量使用。
二、赋值语句
1)变量=表达式
2)直接输入表达式:
结果被赋给系统变量ans
注意:
●语句后加分号,表示仅执行,不显示结果
●续行符为…(三个句点)
●注释:
以%开头
例子:
p14,计算表达式的值,并将结果赋给变量a。
a=2*sin(85*pi/180)/(1+sqrt(5)+3i)
0.3311-0.3070i
变量的查看:
who,whos。
who列出工作空间中的所有变量名,whos同时给出变量的维数和性质。
变量也列在workplacebrowser中。
数据的格式:
format格式符,格式符参见p18。
如formatshort。
也可以通过file->
prefrences菜单,在prefrences对话框的commandwindow项中设置。
变量的清除:
clear,清除工作空间中的所有变量,等同edit->
clearworkplace菜单。
清除命令窗口:
clc,等同edit->
clearconmmandwindow菜单。
一.4矩阵
一、矩阵的建立
1)直接输入
将矩阵元素用方括号括起来,同一行各元素间用空格或逗号隔开;
各行之间用分号或回车隔开。
例:
A=[123;
456;
789]
或A=[1,2,3
4,5,6
7,8,9]
2)利用函数建立
很多函数都会返回一个或几个矩阵作为计算结果。
以下函数则专门用于建立特殊矩阵(向量)。
●linspace:
建立等差数列,x=linspace(startValue,endValue,nelements),若省略nelements,则为100。
v=linspace(0,9,4)
v=
0369
●logspace:
建立等比数列。
y=logspace(a,b,n):
在10^a与10^b之间产生n个数,若省略n,则为50
y=logspace(a,pi,n):
在10^a与pi之间产生n个数,若省略n,则为50。
y=logspace(0,2,5)
y=
1.00003.162310.000031.6228100.0000
特殊矩阵的建立(参见p83):
●空矩阵:
[],产生行数、列数均为0的矩阵。
●对角线矩阵:
diag(V)用向量V建立一个对角线矩阵,diag(A)从矩阵A中提取主对角线向量。
diag(A,k)提取主对角线上方第k条对角线。
●单位矩阵:
eye(n)
●幺矩阵:
ones(m),ones(m,n)产生元素值均为1的矩阵
●零矩阵:
zeros(m),zeros(m,n)产生元素值均为0的矩阵
●随机矩阵:
元素值为随机值。
rand(n)、rand(m.n):
分别建立n*n、m*n阶矩阵,矩阵元素为0~1之间均匀分布的数;
randn(n)、randn(m,n):
0~1之间正态分布。
3)通过mat文件保存和建立矩阵
savefilenamevar1var2...:
把当前工作空间(workpalce)中的指定变量保存到文件filename(扩展名为.mat)中,如果不指定变量在,则保存所有变量。
loadfilenamevar1var2...:
把文件filename.mat中的变量载入到当前工作空间中。
如果不指定变量在,则载入所有变量。
也通过workplacebrowser的工具栏按钮可以完成以上操作。
4)通过workplacebrowser编辑矩阵
双击workplacebrowser中的变量,或选中变量后单击工具栏的open按钮,可以打开ArrayEditor编辑矩阵。
二、矩阵的基本操作
1、矩阵元素的操作:
如A(3,2)=200,如果给出的行数或列数大于原来矩阵的]范围,则会自动扩展原来的矩阵,并将扩展后未赋值的元素置0。
2、冒号操作:
冒号是一个重要的运算符,利用冒号可以产生向量、拆分矩阵。
产生向量的一般格式是:
e1:
e2:
e3。
其中e1为初始值;
e2为步长,若省略则为1;
e3为终止值。
t=0:
2:
10
t=
0246810
拆分矩阵:
A(i,:
)提取A矩阵的第i行元素。
A(:
j)提取A矩阵的第j列元素
A(i:
i+m,k:
k+m):
提取A矩阵的第i—i+m行元素、第k—k+m列元素。
A=[12345;
678910;
1112131415;
1617181920];
A(3,:
)
1112131415
A(2:
3,4:
5)
910
1415
3,1:
6810
111315
ans(:
6
11
8
13
10
15
3、矩阵的合并
大矩阵可由方括号中的小矩阵建立起来。
A=[123;
789];
C=[Aeye(size(A))]
C=
123100
456010
78900