Matlab基本操作教程.docx
- 文档编号:3487496
- 上传时间:2022-11-23
- 格式:DOCX
- 页数:14
- 大小:20.21KB
Matlab基本操作教程.docx
《Matlab基本操作教程.docx》由会员分享,可在线阅读,更多相关《Matlab基本操作教程.docx(14页珍藏版)》请在冰豆网上搜索。
Matlab基本操作教程
实验1矩阵的建立和基本运算
实验目的
熟悉MATLAB软件中关于矩阵初等变换的方法以及矩阵运算的各种命令。
实验内容与要求
启动与退出
双击MATLAB图标,进入MATLAB命令窗口,即可输入命令,开始运算。
单击File菜单中的Exit,或使用MATLAB命令退出。
数.数组.矩阵的输入
数的输入
>>a=5
回车:
a=
5
输入复数2—5i:
b=
2.0000-5.0000i
问题1.1:
输入“>>a=5;”,回车后与上面有什么区别?
在行尾加“;”,该行结果不显示;在行尾加“,”或加“,”或不加标点,该行结果显示。
注意,在MATLAB中,标点符号一定要在英文状态下输入!
数组的输入
>>b=[1,3,5,7,9,11]
>>c=1:
2:
11
>>d=linspace(1,11,6)
问题1.2:
体会以上输入放有什么区别和联系。
若b为在0~~2pi之间均匀分布的22个数据,c=(1.3,2.5,7.6,2,-3),d=(23,20,17,14,11,8,5,2),各用何种方法输入比较简单?
矩阵的输入
>>A=[2,3,5;1,3,5;6,9,4]%行之间要用分号隔开
A=
235
135
694
等待键盘输入命令格式为:
>>m=input(‘请输入初始量,m=’);
请输入初始量,m=
问题1.3:
输入A(2,3),结果如何?
输入A(7)又如何?
体会以上输入的结果,注意,数和数组可作为矩阵的特。
注意:
变量名开头必须是英文字母,后面的字符可以是英文,数字和下划线,但不包含空格和标点;6.5版变量名最长可包含63个字符,以前的版本最多为31个字符;变量名,函数名对字母大小写是区分的。
3.矩阵的大小的测试和定位
>>A=[3,5,6;2,5,8;3,5,9;3,7,9];
>>d=numel(A)%测试定矩阵A的元素,5.x版本没有此命令
>>[n,m]=size(A)%测试的行(n)A,列(m)数
结果为:
d=
12
n=
4
m=3
>>[I,j]=find(A>3);%找出A中大于3的元素的行数
注意:
“%”后面是注释句,被忽略而不执行;对一个数组可用n=length(A),A若是矩阵,ng3出A的行,列数的最大值。
4.矩阵的块的操作
>>A=(2,:
);%取出A的第2行的所有元素
>>A=([1,3],:
);%取出A的第1,3行的所有元素
>>A=(2:
3,1:
2)%取出A的2,3行与1,2列交叉的元素
ans=
5
5
>>A([1,3],:
)=A([3,1],:
);%将A的1行和3行互换
问题1.4:
如何将A的2,3列互换?
>>A=(2,:
)=4;%将A的第2行的所有元素用4取代
>>A(find(A==3))=-3;%将A中等于3的所有的元素换为-3
>>A=(2,:
)=[]%删除A的第2行
ans=
56
59
79
>>reshape(A,2,6)%返回以A的元素重新构造的26维矩阵
自找23个例子,熟悉数和数组的各种运算,以及它们的各种函数值。
自找23个例子,熟悉矩阵的加减乘除及其他运算,注意和点运算的区别。
输入一个矩阵A,取出A的第2行第1列的元素;取出A的第1,3,4列的所有元素;让A的第1列和第3列互换;删除A的第2列。
产生3×4维的1矩阵,产生4×2维的随机矩阵,产生4维的单位矩阵。
将A的第2行元素扩大2倍,再增加3后作为A的第3行元素。
输入任意矩阵A,B(它们的元素个数相等),命令A(:
)和A(:
)=B会产生什么结果?
A=[1,3,5;5,8,3;6,1,6],B=[3,6;9,3;4,7],C=[3,7,9,4,0,7],D=2:
6,体会命令[A,B],[A,C],[A,B,D]所产生的结果,学习由小矩阵生成大矩阵的方法。
三.提高内容
多维数组的创建
格式:
A=cat(n,A1,A2,…,Am).
说明:
n=1和n=2时分别构造的[A1:
A2]和[A1:
A2],都是二维数组,而n=3时都可以构造出三维数组。
【例 1.2】
>>A1=[1,2,3;4,5,6;7,8,9];A2=A1';A3=A2-A1;
>>A4=cat(3,A1,A2,A3)
或用另一种原始方式定义
A4(:
:
1)=
123
456
789
A4(:
:
2)=
147
258
369
A4(:
:
3)=
024
-202
-4-20
张量积
格式:
C=kron(A,B)%A为m×n矩阵,B为p×q矩阵,则C为mp×nq矩阵。
说明:
A与B的张量积定义为
C=AB=
其中,AB与BA均为mp×nq矩阵,但一般AB≠BA。
【例1.3】A=,B=,求AB。
>>A=[12;34];B=[123;456;789];
>>C=kron(A,B)
C=
123246
45681012
789141618
3694812
121518162024
212427283236
矩阵的范数
格式:
n=norm(A)%求矩阵A的普范数,等于A的最大奇异值。
n=norm(A,1)%求A的列范数(1—范数),等于A的最大列之和。
n=norm(A,2)%求A的2—范数,和norm(A)相同。
n=norm(A,inf)%求行范数(无穷大范数),等于A的最大数之和。
n=norm(A,’for’)%求矩阵A的Frobenius范数,‖A‖F=
4.LU分解
矩阵的三角分解又称LU分解,它的目的是将一个矩阵分解成一个下三角矩阵L和一个上三角矩阵U的乘积,将A=LU。
格式:
[L,U]=lu(X)%U为上三角阵,L为下三角阵或其变换形式,满足LU=X,
[L,U,P]=lu(X)%U为上三角阵,L为下三角阵,P为单位矩阵的行边换满足LU=PX。
【例1.4】
>>A=[123;456;789];
>>[L,U]=lu(A)
L=
0.14291.00000
0.57140.50001.0000
1.000000
U=
7.00008.00009.0000
00.85711.7143
000.0000
>>[L,U,P]=lu(A)
L=
1.000000
0.14291.00000
0.57140.50001.0000
ans=
323355
576899
>>A(4,5)=3;%扩大A的维数,A成为4╳5矩阵,未定义元素为0
>>[A(1:
3、2:
3),A(2:
4、1:
2);A,A(:
、2)]%由小矩阵构造大矩阵,注意行列维数的搭配
ans=
2343
3665
5325
1232
4363
6535
2505
>>diag(A、k);%抽取矩阵A的第k条对角线元素向量
>>tril(A、k);%抽取矩阵A的第k条对角线下面的部分
>>triu(A、k);%抽取矩阵A的第k条对角线上面的部分
注意:
“:
”表示“全部”.
5.矩阵的翻转操作
>>flipud(A);%A进行上下翻转
>>fliplr(A);%A进行左右翻转
>>rot90(A);%A逆时针旋转90o
问题1.5:
rot90(A,2)和rot90(A,-2)结果有区别吗?
6.特殊矩阵的产生
>>A=eye(n);%产生n维单位矩阵
>>A=ones(n、m);%产生n╳m维1矩阵
>>A=zeros(n、m);%产生n╳m维0矩阵
>>A=rand(n、m);%产生n╳m维随机矩阵(元素在9∽1之间)
问题1.6:
产生一个在区间[10,20]内均匀分布的4阶随机矩阵.
]
>>randn(m、n);%产生m╳n正态分布随机矩阵
>>randperm(n);%产生1∽n之间整数的随机排列
【例1.1】
>>randperm(6)
ans=
321546
>>logspace(a、b、n);%在(10a、10b)之间产生n个对数等分量
>>diag(a、b、n);%产生以a、b、c、d、…为对角线元素的矩阵
>>hilb(n);%返回n阶hilbert矩阵,其元素为H(i、j)=1/(i+j-1)
>>magic(n);%产生n阶魔方矩阵
7.数的运算
>>4+2;
>>4*2;
>>4/2;%右除2,等于2
>>4/2;%4左除2,等于0.5
>>4^3;%4的3次方
>>sqrt(4);%4的算术平方根
>>exp(3);%e的3次方,不能输成e^3
>>log(4);%4的自然对数,log10(4)是以10为底,log2(4)是以2为底
其他常用函数见表1.1与表1.2.
8.矩阵的运算
>>A,;%A的转置
>>det(A);%A的行列式,A必须是方阵
>>reank(A);%A的秩
>>inv(A);%A的逆
>>eig(A);%A的本征值
>>[X,D]=eig(A);%A的本征矢量X及本征值D
>>trace(A);%A的迹,等于A的对角线元素之和
>>3*A;%常数与矩阵相乘
>>A+B;%A,B必须是同维矩阵,和3+A进行比较
>>A-B;%A,B必须是同维矩阵,和3-A进行比较
>>A*B;%和A.*B进行比较
>>A/B;%(和A./B进行比较)
>>A\B;%(和A.\B进行比较)
>>A^2;%A^2相当于A*A(和A.^2进行比较)
注意:
矩阵的加减乘除按相关规则运算,否则给出警告信息;“.*”,“./”,“.\”,
“.^”称为点运算(或称数组运算,又称元素群运算),点运算是前后矩阵
对应元素之间的运算。
问题1.7:
求出A的本征矢量和本征值,比较2^4(A必须是方阵)和2.^A的区别.
矩阵的其他运算和函数见表1.3.
9.变量的存储与调用
(1)存储
>>savedataabc%将变量a,b,c存到data.mat文件中
(2)调用
>>loaddata%data.mat文件中所有变量加载到工作空间
10.列出工作空间所有变量
>>whos%列出工作空间所有变量的变量名、大小、字节数、数组维数
11.联机求助
>>helpsqrt%将显示出平方根sqrt命令的功能和使用方式
四、练习和思考
①熟悉MATLAB的启动和退出.
U=
7.00008.00009.0000
00.85711.7143
000.0000
P=
001
100
010
5QR分解
将矩阵A分解成一个正交矩阵与一个上三角矩阵的乘积。
格式:
[Q,R]=qr(A)%求得正交矩阵Q和上三角阵R,Q和R满足A=QR。
[Q,R,E]=qr(A)%求得正交矩阵Q和上三角阵R,E为单位矩阵的变换形式,
R的对角线元素按大小降序排列,满足AE=QR。
例1.5
>>A=[1,2,3;4,5,6;7,8,9;10,11,12];
>>[Q,R]=qr(A)
Q=
-0.0776-0.83310.5456-0.0478
-0.3105-0.4512-0.69190.4704
-0.5433-0.0694-0.2531-0.7975
-0.77620.31240.39940.3748
R=-12.8841-14.5916-16.2992
0-1.0413-2.0826
000
表1。
1基本的数学函数
函数名
含义
函数名
含义
sin/cos
正弦/余弦函数
asin/acos
反正弦/反余弦函数
tan/cot
正切/余切函数
atan/acos
反正切/反余切函数
sec/csc
正割/余割函数
aec/acec
反正割/反余割函数
sinh/cosh
双曲正弦/双曲余弦函数
asinh/acosh
反双曲正弦/反双曲余弦函数
tanh/coth
双曲正切/双曲余切函数
atanh/acosh
反双曲正切/反双曲余函数
sech/csch
双曲正割/双曲余割函数
asech/acsch
反双曲正割/反双曲余割函数
exp
指数函数
sqrt
平方根函数
log
对数函数
log10
常用对数函数
abs
绝对值函数
angle
角相位函数
imag
复数虚部函数
real
复数实部函数
conj
共轭复数函数
sign
正负符号函数
fix
朝零方向取整
ceil
朝正无穷方向取整
round
四舍五入取整
floor
朝无穷方向取整
rem
求余函数
mod
求余函数(带符号)
gcd
最大公约数
lcm
最小公倍数
perms
排列
nchoosek
组合
表1。
2特殊变量与函数
函数名
含义
函数名
含义
ans
默认返回变量
eps
默认相对浮点精度
nargin
函数输入变量个数
nargout
函数输出变量个数
yarargin
函数中输入的可选参数
varargout
函数中输出的可选参数
i
虚数单位
pi
圆周率
inf
无穷值
nan
不定值
flnps
浮点运算次数
inputname
输入参数名
表1.3矩阵边换和矩阵函数
函数名
含义
函数名
含义
flipud
矩阵上下翻转
fliplr
矩阵左右翻转
rot90
矩阵旋转90°
diag
产生或提取对角阵
tril
产生或提取下三角阵
triu
产生或提取上三角阵
eye
产生单位矩阵
rand
产生随机矩阵
ones
产生1矩阵
zeros
产生零矩阵
linespace
构造线性分布向量
logspace
构造对数分布向量
det
行列式的值
eig
矩阵的特征值
trice
矩阵的迹
inv
矩阵的逆
rref
化行最简形
null
零空间
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Matlab 基本 操作 教程