资源预览内容
第1页 / 共23页
第2页 / 共23页
第3页 / 共23页
第4页 / 共23页
第5页 / 共23页
第6页 / 共23页
第7页 / 共23页
第8页 / 共23页
第9页 / 共23页
第10页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
实验一、 MATLAB 程序设计入门实验目的熟悉 matlab 界面 ;掌握 matlab 的变量的命名规则 ;掌握常用数学运算符 号和标点符号的使用方法 ;掌握常用数学函数的使用方法 ;掌握建立和使用 M 文件的方法 ; 学会创建简单的数组并对数组元素进行访问 , 掌握数组的各 种运算 ;学会创建数组并对数组元素进行访问和操做 ,掌握矩阵的各种运算 规则;掌握关系与逻辑运算符的使用规则; 实验原理与方法 一、变量与函数1、变量变量是任何程序设计语言的基本元素之一, MATLAB 语言当然也不例外。 与常规的程序设计语言不同的是, MATLAB 语言并不要求对所使用变量 进行事先声明,也不需要指定变量类型,它会自动根据所赋予变量的值或 对变量所进行的操作来确定变量的类型; 在赋值过程中, 如果变量已存在, MATLAB 语言将使用新值代替旧值,并以新的变量类型代替旧的变量类 型。在 MATLAB 语言中变量的命名遵守如下规则:( 1 )变量名必须是不含空格的单个词;( 2 )变量名以字母开头,变量名中可包含字母、数字、下划线,但不能 使用标点;(3)变量名长度不超过31位,第31个字符之后的字符将被忽略;(4) 变量名区分大小写;(5)关键字(如if、while等)以与固有函数(如max,sum 等)不能作为变 量名;与其他的程序设计语言相同,MATLAB 语言中也存在变量作用域的问题。 在未加特殊说明的情况下,MATLAB 语言将所识别的一切变量视为局部变量,即仅在其调用的 M文件内有效。若要定义全局变量,应对变量进 行声明,即在该变量前加关键字 global 。一般来说,全局变量常用大写的 英文字符表示,尽管这不是MATLAB 语言所必需的。特殊变量:MATLAB 有一些预定义的变量,这些特殊的变量称为常量。下表给出了MATLAB 语言中经常使用一些常量与其说明。特殊变量取值ans用于结果的缺省变量名Pi圆周率eps计算机的最小数,当和1相加就产生一个比1大的数flops浮点运算数inf无穷大,如1/0NaN不定量,如0/0i,ji=j= J 1n argin所用函数的输入变量数目n argout所用函数的输出变量数目realmin最小可用正实数realmax最大可用正实数2、数学运算符号与标点符号(1 ) MATLAB的每条命令后,若为逗号或无标点符号,则显示命令的结果;若命令后为分号,则禁止显示结果(2 )“ % ”后面所有文字为注释(3)“”表示续行.+加法运算,适用于两个数或两个冋阶矩阵相加.减法运算*乘法运算*点乘运算/除法运算./点除运算A乘幕运算A点乘幂运算反斜杠表示左除.3、数学函数函数名称函数名称si n(x)正弦函数asin(x)反正弦函数cos(x)余弦函数acos(x)反余弦函数tan (x)正切函数ata n(x)反正切函数abs(x)绝对值max(x)最大值min (x)最小值sum(x)兀素的总和sqrt(x)开平方exp(x)以e为底的指数log(x)自然对数logio(x)以10为底的对数sig n(x)符号函数fix(x)取整1、创建简单的数组x=a b c d e f x=first : last仓U建从 firstx=first : in creme nt: last数,last结束的行向量x=linspace(first , last , n )n个元素的行向量x=logspace(first , last , n)有n个元素的对数分隔行向量.例:x=linspace(1,2,10)y=10.A(x)创建包含指定元素的行向量幵始,加1计数,到last结束的行向量创建从first 幵始,加in creme nt计创建从first幵始,到last结束,有创建从first幵始,到last结束,二、数组与矩阵z=logspace(1,2,10)2、数组元素的访问( 1 )访问一个元素:x(i) 表示访问数组 x 的第 i 个元素.(2 )访问一块元素:x(a : b : c)表示访问数组x的从第a个元素幵始,以步长为b到第c个元素(但不超过c), b可以为负数,b缺损时为 1.(3)直接使用元素编址序号 . x(a b c d) 表示提取数组 x 的第 a、 b、c、d 个元素构成一个新的数组x(a) x(b) x(c) x(d).3、数组的方向 前面例子中的数组都是一行数列,是行方向分布的 . 称之为行向量 . 数组 也可以是列向量,它的数组操作和运算与行向量是一样的,唯一的区别是 结果以列形式显示 .产生列向量有两种方法:直接产生 例 c=1 ;2;3;4转置产生例 b=1 2 3 4; c=b说明:以空格或逗号分隔的元素指定的是不同列的元素,而以分号分 隔的元素指定了不同行的元素 .4、数组的运算(1)标量-数组运算 数组对标量的加、减、乘、除、乘方是数组的每个元素对该标量施加相应 的加、减、乘、除、乘方运算 .设: a=a1,a2,,a n, c= 标量则: a+c=a1+c,a2+c, ,an+ca.*c=a1*c,a2*c, ,an*ca./c= a1/c,a2/c, ,an/c(右除)c= c/a1,c/a2, ,c/an (左除)a.Ac= a1Ac,a2Ac, ,anAcc.Aa= cAa1,cAa2, ,cAan(2)数组 -数组运算 当两个数组有相同维数时,加、减、乘、除、幂运算可按元素对元素方式 进行的,不同大小或维数的数组是不能进行运算的 .设: a=a1,a2, ,an, b=b1,b2, ,bn则: a+b= a1+b1,a2+b2, ,an+bna.*b= a1*b1,a2*b2, ,an*bna./b= a1/b1,a2/b2, ,an/bnb=b1/a1,b2/a2, ,bn/ana.Ab=a1Ab1,a2Ab2,,a n n( 3 )数组维数: length(a)5、矩阵的建立逗号或空格用于分隔某一行的元素,分号用于区分不同的行;除了分号, 在输入矩阵时,按 Enter 键也表示开始一新行; 输入矩阵时,严格要求 所有行有相同的列 .例: m=1 2 3 4 ;5 6 7 8 ;9 10 11 12p=1 1 1 12 2 2 23 3 3 3 特殊矩阵的建立: a= 产生一个空矩阵,当对一项操作无结果时,返回空矩阵, 空矩阵的大小为零 .b=zeros(m ,n)产生一个 m 行、 n 列的零矩阵c=ones(m , n)产生一个 m 行、 n 列的元素全为 1 的矩阵d=eye(m ,n)产生一个 m 行、 n 列的单位矩阵6、矩阵中元素的操作(1)矩阵 A 的第 r 行: A(r,:)(2)矩阵 A 的第 r 列: A(:,r)( 3 )依次提取矩阵 A 的每一列,将 A 拉伸为一个列向量: A (:)( 4 )取矩阵 A 的第 i1i 2 行、第 j1j 2 列构成新矩阵 :A(i 1:i2, j1:j2)( 5 )以逆序提取矩阵 A 的第 i1i 2 行,构成新矩阵 :A(i 2:-1:i1,:)( 6 )以逆序提取矩阵 A 的第 j1j 2 列,构成新矩阵 :A(:, j2:-1 :j1 )(7)删除 A 的第 i1i 2 行,构成新矩阵 :A(i 1:i2,:)= (8)删除 A 的第 j1j 2 列,构成新矩阵 :A(:, j1:j2)= ( 9 )将矩阵 A 和 B 拼接成新矩阵: A ,B;A;B7、矩阵的运算(1)标量 -矩阵运算:同标量 -数组运算。( 2)矩阵加法: A+B( 3)矩阵乘法: A*B( 4)方阵的行列式: det ( A)( 5 )方阵的逆: inv (A )( 6 )方阵的特征值与特征向量: V ,D=eigA( 7 )求矩阵维数: m,n=size(A)( 8 )求数组或矩阵元素之和: Sum( 9 )求数组或矩阵元素的均值: mean( 10 )求矩阵或数组的最大最小值: max,min(11 )求数组或矩阵的非零元素与下标:find (A )find ( AC )例:、X = 104-300086;indices = find(X)结果: indices =1 3 4 8 9例:X = 104-300086;find(X 2)结果: ans =389例: X = 3 2 0; -5 0 7; 0 0 1;r,c,v = find(X)则结果为: r 为矩阵 X 的非零元素的行指标所构成的向量c 为矩阵 X 的非零元素的列指标所构成的向量v 为矩阵 X 的非零元素的所构成的向量。例: X = 3 2 0; -5 0 7; 0 0 1;r,c,v = find(X2)(11 )求矩阵的范数 :norm(A,1) 计算矩阵 A 的 1 范数norm(A,2) 计算矩阵 A 的 2 范数norm(A,inf) 计算矩阵 A 的无穷范数三、关系与逻辑运算1 、关系操作符关系操作符说明小于大于=大于或等于=等于=不等于2、逻辑运算符逻辑操作符说明&与1或非四、程序设计Matlab 有两种工作方式:1 )人机交互的命令行指令操作方式,即在命令窗口每输入一条命令,则立即运行该命令得到结果。2)进行控制流的程序设计,即编制一种可存储的以 M为扩展名的文件(简 称M文件),M文件有两种形式,命令式(Script )和函数式(Function).两者相同之处在于它们都是以m作为扩展名的文本文件,不进入命令窗口,而是由文本编辑器来创建的外部文本文件。M文件分两种:命令式M文件:也称脚本文件(Script file),就是将Matlab 的一 系列命令按顺序编制成一个文本文件,文件名后缀为M,然后在 comma nd win dow下运行文件名,则按顺序执行文件中的命令。文件建立方法:1. 在 Matlab 中,点:File-New-M-file2. 在编辑窗口中输入程序内容3. 点:File-Save ,输入文件名,后缀为 M,存盘例:建立命令式脚本文件 qwe.m在编辑窗口输入如下命令:a=1b=2;%行尾加分号,注意运行结果。c=a+b然后存盘。在 comma nd wi ndow 下输入 qwe 并回车。注:在运行次文件之前,需要把它所在目录加到 MATLAB的搜索路径上 去,或将文件所在目录设为当前目录。(2)函数式M文件:(function f
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号