资源描述:
《matlab学习资料:第二章 matlab矩阵及其运算.pdf》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第二章MATLAB矩阵及其运算—MATLAB具有出色的矩阵运算能力,能解决线性代数中的关于矩阵的一切运算。目录1.简单矩阵的创建2.矩阵寻址或者下标3.几种典型矩阵4.矩阵运算MATLAB矩阵简介从结构上讲,矩阵(数组)是MATLAB数据存储的基本单元从运算角度讲,矩阵形式的数据有多种运算形式,例如向量运算、数组运算、矩阵运算。1.矩阵的创建矩阵的输入方法命令行简单键盘输入用于很少数据输入矩阵的方向:,;NaNInf文件形式输入可以用来读入试验数据大量的数据输入load数据文本文件:全部是
2、数据,不含有文字mat文件:matlab自有的数据格式1.矩阵的创建矩阵的输入方法(1)输入元素列表例如:a=[123;456;789]又如:b=[1:3;4:6;7:9]c=[1:0.5:6]注意:关于:的使用相当灵活,大家可随着学习的不断深入对:的使用逐步加深。1.矩阵的创建(2)从外部数据文件读取loadscore.dat(3)利用matlab内部函数产生矩阵例如:b=eye(3);单位阵c=ones(2,5);全一阵d=zeros(3,2);全零阵e=rand(2,3);随机阵(4)用户编写m文件产
3、生矩阵如:score2.m则在命令行直接键入score2就可产生score2矩阵1.矩阵的创建例如,计算正弦函数在半个周期内的取值问题。y=sin(x),x在[0,pi]之间取值。分析:我们无法计算这个区间内的所有的值,因为在这个区间内有无限个取值点。因此,我们必须选择有限个点进行计算,即要对函数进行采样。例如每个0.1pi取值一次,也就是令x=0,0.1pi,0.2pi,……,1.0pi那么带入到函数中即能得到相应的yy=0,0.31,0.59,……,01.矩阵的创建这样,x和y就成了一一对应的有序数列。由
4、于这种有序性的存在,我们就很自然地想到用下标来表示x和y中的一个单独元素。如,x1表示x的第一个元素,y1表示y的第一个元素,以此类推……MATLAB的实现:•>>x=[0.1*pi.2*pi.3*pi.4*pi.5*pi.6*pi.7*pi.8*pi.9*pipi]•x=•00.31420.62830.94251.25661.57081.88502.19912.51332.82743.1416•>>y=sin(x)•y=•00.30900.58780.80900.95111.00000.95110.8090
5、0.58780.30900.00001.矩阵的创建一维矩阵创建方法意义x=[22*pisqrt(2)创建包含任意元素的行向量x2-3j]X=first:last创建行向量x,从first开始,步长为1,到last结束。如果不能到last,则到小于last的最大正数结束。x=first:increment:创建行向量x,从first开始,步长为lastincrement,到last结束。如果不能到last,则到小于last的最大正数结束。X=linspace(first,la创建均匀间隔的行向量x,从first
6、开始,st,n)到last结束。总共有n个元素。X=logpace(first,la创建均匀间隔的行向量x,从10first开始,st,n)到10last结束。总共有n个元素。1.矩阵的创建>>x=(0:0.1:1)*pix=00.31420.62830.94251.25661.57081.88502.19912.51332.82743.1416>>x=linspace(0,pi,11)%linspace(first_value,last_value,number_of_value))x=00.31420.6
7、2830.94251.25661.57081.88502.19912.51332.82743.14161.矩阵的创建•>>logspace(0,2,11)%创建从100开始,到102结束,包含11个值的数组ans=1.00001.58492.51193.98116.309610.000015.848925.118939.810763.0957100.00001.矩阵的创建练习与体会:•>>a=[1:7];•>>b=linspace(1,7,5);•>>a=(1:7)’%changerowtocolumn•>
8、>a=1:5,b=1:2:9•>>c=[ba]•>>d=[a(1:2:5)101]2.矩阵寻址或者下标矩阵下标在Matlab中,我们可以通过下标来访问矩阵元素。矩阵下标相当重要,灵活,等同于c语言的指针地位例:b=a(1,2)+a(2,3)b=a(8)+a(4)注意:matlab是按列存取的。2.矩阵寻址或者下标例如,>>x(3)%Thethirdelementofxans=0.6283>>y(