第1章 MATLAB基本操作_2012109173051223
- 格式:ppt
- 大小:591.50 KB
- 文档页数:32
MATLAB 基本操作实验目的:熟悉MA TLAB 的操作界面,了解MA TLAB 的操作方法,掌握MA TLAB 一些常用命令的作用。
实验要求:先阅读实验内容后,完成相应的练习,并将操作过程及结果记录下来。
实验内容:一、变量与函数1.变量MA TLAB 中变量的命名规则:1)变量名必须是不含空格的单个词;2)变量名区分大小写;3)变量名最多不超过19个字母;4)变量名必须以字母打头,之后可以是任意字母、数字或下划线,变量名中不允许使用标点符号。
2.数学运算符号及标点符号“+”:、加法运算,适用于两个数或两个同阶矩阵相加“-”:减法运算 “./”:点除运算“*”:乖法运算 “^”:乘幂运算“.*”:点乖运算 “\”:反斜杠表示左除1)MA TLAB 的每条命令后,若为逗号或无标点符号,则显示命令的结果,若命令后为分号,则禁止显示结果;2)“%”后面所有文字为注释;3)“…”表示续行。
3.数学函数与其它语言一样,MA TLAB 支持常用函数。
4.函数M 文件MA TLAB 的内部函数是有限的,有时为了研究某一个函数的各种性态,需要为MA TLAB 定义新的函数,为此必须编写函数M 文件。
函数M 文件是文件名后缀为m 的文件,这类文件的第一行必须是以一特殊字符function 开始,格式为:fnction 因变量名=函数名(自变量名)练习11)求5)sin(π==x x y 在时的值2)画出函数2222120)120(100)20()(+-++-=x x x f 的图形步骤1:在M 文件编辑窗口录下列两行function yy=f2(x)yy=spqt((x-20).^2+100^2)+sqrt((x-120).^2+120^2);以f2.m 将文件存盘并退出编辑状态步骤2:在MA TLAB 命令窗口输入下列指令并按回车键x=20:120; y=f2(x);plot(x,y)运行结果:3)计算函数21221221)1()(100),(x x x x x f -+-=在(1,2)处的函数值。
MATLAB 基本操作一、目的和要求(1) 熟练掌握MATLAB 变量的使用。
(2) 熟练掌握矩阵的创建。
(3) 熟练掌握MATLAB 的矩阵和数组的运算。
二、内容和步骤1. 创建矩阵矩阵是包括n m ⨯个元素的矩阵结构,矩阵中的元素可以是实数或复数,单个元素构成的标量以及多个元素构成的行向量和列向量都是矩阵的特殊形式。
下面用多种方式创建矩阵。
(1) 直接输入。
例:>> a=[1 2 3;4 5 6;7 8 9]a =1 2 34 5 67 8 9练习:从键盘输入一个44⨯的矩阵,矩阵元素自己定义,变量名定义为m1。
(2) 用from:step:to 方式。
例:>> a=[1:3 ; 4:6 ; 7:9]a =1 2 34 5 67 8 9练习:从键盘输入一个向量,用from:step:to 方式,要求从零开始,步长为1.5,到20结束,变量名定义为m2。
(3) 用linspace 函数。
例:>> a=[linspace(1,3,3);linspace(4,6,3);linspace(7,9,3)]a =1 2 34 5 67 8 9练习:使用logspace 函数创建π4~0的行向量,有20个元素,查看其元素分布情况,变量名定义为m3。
(4) 使用matlab 内部函数创建矩阵。
例:>> a=ones(3)a =1 1 11 1 11 1 14⨯的正态分布矩阵,要求其均值为2,方差为2,变量名定义为m4。
练习:建立一个42.矩阵的操作(1)矩阵元素的提取。
例:>> a=[1 2 3;4 5 6;7 8 9]a =1 2 34 5 67 8 9提取元素8,可输入a(3,2)或a(6)。
4⨯的对角阵,提取它的第三列元素,并将矩阵的第四列元素改为全1。
练习:建立一个4(2)矩阵的裁剪和拼接。
例:>> a=[1 2 3;4 5 6;7 8 9]a =1 2 34 5 67 8 9>> b=[2 3 4;5 6 7;8 9 10]b =2 3 45 6 78 9 10>> c=cat(1,a,b)c =1 2 34 5 67 8 92 3 45 6 78 9 10>> c=cat(2,a,b)c =1 2 3 2 3 44 5 6 5 6 77 8 9 8 9 10>> c(:,3:5)=[]c =1 2 44 5 77 8 10练习:建立两个任意的44⨯矩阵,将它们沿着第二维拼接成一个新矩阵,并将新矩阵的第3列和第5列删除。
第一章MATLAB软件的基本操作1.1矩阵的建立和基本运算一、实验的目的熟悉MATLAB软件中关于矩阵的建立以及矩阵运算的各种命令二、实验内容与要求1.启动与退出2.数、数组、矩阵的输入(1)数的输入>> a=5a =5>> b=2-5ib =2.0000 - 5.0000i>> b=[1,3,5,7,9,11]b =1 3 5 7 9 11>> c=1:2:11c =1 3 5 7 9 11>> d=linspace(1,11,6)d =1 3 5 7 9 11>> b=linspace(0,2*pi,22)b =Columns 1 through 60 0.2992 0.5984 0.8976 1.1968 1.4960 Columns 7 through 121.79522.0944 2.3936 2.6928 2.99203.2912 Columns 13 through 183.5904 3.88964.1888 4.4880 4.78725.0864 Columns 19 through 225.3856 5.6848 5.98406.2832(2)数组的输入>> A=[2,3,4;1,3,5;6,9,4]A =2 3 41 3 56 9 43.矩阵大小的测定和定位>> A=[3,5,6;2,5,8;3,5,9;3,7,9]A =3 5 62 5 83 7 9>> d=numel(A) %测定矩阵A的元素数d =12>> [n,m]=size(A) %测试A的行(n),列(m)数n =4m =3>> [i,j]=find(A>3) %找出A中大于3的元素的行列数i =12341234j =222233334.矩阵的块操作>> A(2,:) %取出A的第2行的所有元素ans =2 5 8>> A([1,3],:) %取出A的第1、3行的所有元素ans =3 5 63 5 9>> A(2:3,1:2) %取出A的2、3行与1、2列交叉的元素ans =2 53 5>> A([1,3],:)=A([3,1],:) %将A的第1行和第3行互换A =3 5 93 5 63 7 9问题:如何将A的2,3列互换?>> A(2,:)=4 %将A的第2行的所有元素用4取代A =3 5 94 4 43 5 63 7 9>> A(find(A==3))=-3 %将A中等于3的所有元素换为-3A =-3 5 94 4 4-3 5 6-3 7 9>> A(2,:)=[] %删除A的第2行A =-3 5 9-3 5 6-3 7 9>> A=[3,5,6;2,5,8;3,5,9;3,7,9]A =3 5 62 5 83 5 93 7 9>> reshape(A,2,6) %返回以A的元素重新构造的2×6维矩阵ans =3 3 5 5 6 92 3 5 7 8 9>> reshape(A,3,4)ans =3 3 5 82 5 7 93 5 6 9>> A(4,5)=3 %扩充A的维数,A成为4×5维矩阵,未定义元素为3A =3 5 6 0 02 5 8 0 03 5 9 0 03 7 9 0 3注意:“:”表示全部5.矩阵的翻转操作>> A=[3,5,6;2,5,8;3,5,9;3,7,9]A =3 5 62 5 83 5 93 7 9>> flipud(A) % A进行上下翻转ans =3 7 93 5 92 5 83 5 6>> fliplr(A) % A进行左右翻转ans =6 5 38 5 29 5 39 7 3>> rot90(A) % A逆时针旋转900ans =6 8 9 95 5 5 73 2 3 3问题:尝试操作>> rot90(A,2)和rot90(A,-2),结果有区别吗? >> rot90(A,2)ans =9 7 39 5 38 5 26 5 3>> rot90(A,-2)ans =9 7 39 5 38 5 26 5 36.特殊矩阵的产生>> A=eye(n) %产生n维单位矩阵A =1 0 0 00 1 0 00 0 1 00 0 0 1>> A=ones(n,m) %产生n×n维1矩阵A =1 1 1 11 1 1 11 1 1 11 1 1 1>> A=zeros(n,m) %产生n×n维0矩阵A =0 0 00 0 00 0 00 0 0>> A=rand(n,m) %产生n×n维随机矩阵(元素在0~1之间)A =0.9501 0.8913 0.82140.2311 0.7621 0.44470.6068 0.4565 0.61540.4860 0.0185 0.7919>> A=rand(n,m)A =0.9218 0.9355 0.05790.7382 0.9169 0.35290.1763 0.4103 0.81320.4057 0.8936 0.00997.数的运算>>4+2;>>4*2;>> 4/2; % 4右除2,等于2>> 4\2; % 4左除2,等于0.5>> 4^3; % 4的3次方>> sqrt(4); % 4的算术平方根>> exp(3); %e的三次方>> log(4); %4的自然对数>> log2(4); %4的以2为底的对数>> log10(4); %4的以10为底的对数8.矩阵的运算A=[2,3,4;1,3,5;6,9,4];B=[3,5,1;2,6,2;1,8,3];>> A'; %A的转置>> det(A); %A的行列式,A必须是方阵>> rank(A); %A的秩>> 3*A; %常数与矩阵相乘>> A+B;>> A-B;>> A*B; %(和A. *B进行比较)>> A/B; %(和A. /B 进行比较) >> A\B; %(和A. \B 进行比较)>>A^2; % A^2相当于A*A (和A.^2进行比较) 二、练习与思考(1)熟悉MATLAB 的启动和退出。