matlab高级讲义(第二章)
Matlab第2章讲稿
A/B:右除。相当于A*inv(B) :右除。相当于 ( ) A\B: 左除。相当于 左除。相当于inv(A)*B;一般用于求解线性代数 ; 方程组
A=[1 2;3 4]; B=[3 5;8 6]; A./B 和B.\A比较 比较 ans = 0.3333 0.4000 0.3750 0.6667 A/B和B/A比较 和 比较 ans = 0.4545 -0.0455 0.6364 0.1364 ans = 1.5000 0.5000 -7.0000 5.0000
3、数组和矩阵的除运算 、 (1)数组、矩阵与标量间的除法运算:规则是标量 )数组、矩阵与标量间的除法运算: 与数组的每个元素进行除法运算; 与数组的每个元素进行除法运算;矩阵和标量只 有矩阵右除标量可运算(即矩阵/标量 标量)。 有矩阵右除标量可运算(即矩阵 标量)。 (2)数组、矩阵的除法运算:规则不同 )数组、矩阵的除法运算: • 维数相同的两数组除法是对应元素之间相除。 维数相同的两数组除法是对应元素之间相除。 如 A./B(右除)与B.\A(左除)结果相同 (右除) (左除)
2.2.2
数组、 数组、矩阵操作
1、元素提取 、 A是m行n列矩阵 是 行 列矩阵 A(i,j) (i<=m且j<=n)由A中i指定行,j指定列的元素 且 指定行, 由 中 指定行 指定列的元素 A(i,:)由数组或矩阵中 指定行所对应的所有列元素组 由数组或矩阵中i指定行所对应的所有列元素组 由数组或矩阵中 成的子数组 A(:,j)由数组或矩阵中 指定列所对应的所有行元素组 由数组或矩阵中j指定列所对应的所有行元素组 由数组或矩阵中 成的子数组 A(:)由数组 的各个列按从左到右的次序首末相接的 由数组A的各个列按从左到右的次序首末相接的 由数组 一维长列” “一维长列”子数组
matlab讲义第2章
3.Debug主菜单项 (1)Open M-Files when Debugging:调试时打开M文件 (2)Step:单步调试程序 (3)Step In:单步调试进入子程序 (4)Step Out:单步调试从子程序跳出 (5)Continue:程序执行到下一断点 (6)Clear Breakpoints in All Files:清除所有打开文件中的断点 (7)Stop if Errors/Warnings:在程序出错或报警处停止往下执行 (8)Exit Debug Mode:退出调试模式
4
2.Edit主菜单项 (1)Undo:撤销上一步操作 (2)Redo:重新执行上一步操作 (3)Cut:剪切选中的对象 (4)Copy:复制选中的e to Workspace:粘贴到工作区 (7)Select All:全部选择 (8)Delete:删除所选的对象 (9)Find:查找所需选择的对象 (10)Find Files:查找所需文件 (11)Clear Command Window:清除命令窗口区的对象 (12)Clear Command History:清除命令窗口区的历史记录 (13)Clear Workspace:清除工作区的对象
精品
matlab第2章
2、MATLAB系统构成:五部分
MATLAB开发环境 MATLAB数学函数库 MATLAB语言 MATLAB图形处理系统 MATLAB应用程序接口(API)
3、工具箱是MATLAB的关键部分
MATLAB每年都会增加一些新的工具箱,所以,在一般情况下,工具箱的列表不是 固定不变的。 有关MATLAB工具箱的最新信息可以在http://www. /products中看到。
8
5.Window主菜单项 (1)Close All documents:关闭所有文档 (2)0 Command Window:选定命令窗口为当前活动窗口 (3)1 Command History:选定历史命令窗口为当前活动窗口 (4)2 Current Directory:选定当前路径窗口为当前活动窗口 (5)3 Workspace:选定工作空间窗口为当前活动窗口
MATLAB课件-第二讲
A(r,c)
访问A的由r指定行和c指定列上元素构 成的子数组;r,c可取多行或列
A(r, :)
访问A的r指定行上全部元素构成的子 数组;此处冒号表示全部列
A(:,c)
访问A的c指定列上全部元素的子数 组;此处冒号表示全部行
【例1】单下标的使用 >>a=zeros(2, 5); >>a(:)=-1:8
【例4】>> diag (diag(D)) %外面diag含义为利用一维数组生 成对角阵
ans= 100 010 001
【例5】>>命令栏输入:magic(3) ans =
816 357 492 说明:magic(3)生成一3x3魔方矩阵,即该矩阵横、竖、斜 各列元素总和相等
2.4 数组操作
常见的数组操作函数
命令 permute repmat
reshape
flipud
fliplr
rot90
含义
重排数组的维度次序
按指定的“行数、列数”铺放模块数组,以形成更大 的数组
在总元素数不变的前提下,改变数组的“行数、列 数” 以数组“水平中线”为对称轴,交换上下对称位置上 的数组元素
以数组“垂直中线”为对称轴,交换左右对称位置上 的数组元素
>>a([1 3 5 5 3 1])
ans = 0 5 10 10 5 0
>>a(6)
??? Index exceeds matrix dimensions. 索引超出矩阵维度。 下标值超出了数组的维数,导致错误
>>a(2.1)
??? Subscript indices must either be real positive integers or logicals.
MATLAB讲义第2讲
2013-7-27
2.2 命令窗口 (续)
>>who
Your variables are: circle_len area radius
>>whos
Name Size Bytes Class area 1x1 8 double array circle_len 1x1 8 double array radius 1x1 8 double array Grand total is 3 elements using 24 bytes
Matlab Language
20
பைடு நூலகம்
2013-7-27
2.1 数值表示、变量及表达式 (续)
Matlab预定义的变量
变量名 ans eps pi inf i或j NaN 意义 最近的计算结果的变量名 MATLAB定义的正的极小值=2.2204e-16 圆周率π ∞值,无限大 虚数单元,sqrt(-1) 非数,0/0、∞/ ∞
11
2.6 获取在线帮助
MATLAB提供的帮助信息有两类
简单纯文本帮助信息
help
lookfor(条件比较宽松)例:inverse
窗口式综合帮助信息(文字、公式、图形)
doc
helpwin
2013-7-27
Matlab Language
12
〘功能演示-1〙求方程的根
5 3 2 求方程 2 x 3 x 71 x 9 x 13 0 的全部根。
2013-7-27
Matlab Language
6
2.2 命令窗口 (续)
数值显示格式设置 缺省显示格式:简洁的短(short g,7位有效数字)格式 窗口命令及语法格式:format 显示格式关键字 如:format long %15位数字显示 常见通用命令 命令 clc clear who或whos dir cd type help或doc quit或exit
matlab讲义2
例3:编写一个脚本文件将华氏温度转化为摄氏温度 5 c ( f 32) 9 新建一个 M 文件 f2cs.m,内容如下:
clear; % 清除当前工作空间中的变量 f=input('Please input Fahrenheit temperature:'); c=5*(f-32)/9;
1
18/10/1012
所谓M脚本文件是指: (1)该文件中的指令形式和前后位置,与解决 同一个问题时在指令窗中输入的那组指令没有 任何区别。 (2)MATLAB在运行这个脚本时,只是简单地从 文件中读取那一条条指令,送到MATLAB中去执 行。 (3)与在指令窗中直接运行指令一样,脚本文 件运行产生的变量都是驻留在MATLAB基本工作 空间中。 (4)文件扩展名是“.m”。
1 18/10/1012
3.程序的暂停 暂停程序的执行可以使用pause函数,其调 用格式为: pause(延迟秒数) 如果省略延迟时间,直接使用pause,则将 暂停程序,直到用户按任一键后程序继续 执行。 若要强行中止程序的运行可使用Ctrl+C命 令。
1
18/10/1012
选择结构 是根据给定的条件成立或不成立,分别执 行不同的语句。Matlab 用于实现选择结构的语句有 if 语句和 switch 语句。
1 18/10/1012
输出:
a= 11 12 13 14 15 16 17 18 b= 1 2 3 4 5 6
7
8
9 10
调用该命令文件时,不用输入参数,也没有 输出参数,文件自身建立需要的变量。当文 件执行完毕后,可以用 whos 查看工作空间中 的变量。这里会发现a,b,c仍然保留在工作空间 中。
MATLAB第二讲.ppt
Matrix Operations – Eigenstates –
China University of Petroleum
❖ 例:求矩阵的特征值对角阵。 >> a=[-2 1 1;0 2 0;-4 1 3]; >> [v,d]=eig(a) %列向量是特征值对应的特征向量的矩阵 % Eigenvectors … v = -0.7071 -0.2425 0.3015
0 0 0.9045 -0.7071 -0.9701 0.3015
d = -1 0 0 020 002
%矩阵的特征值对角阵 % Eigenvalues …
Matrix Operations
China University of Petroleum
– Eigenstates –
❖例: 1 2 0 ,求矩阵的特征值。
-1 0 1
❖Multiplication (*) >>X =[1 2 3]; >> Z = 2 * X Z= 24 6
Division (/) >>X =[1 2 3]; >> Z = X / 2 Z= 0.5000 1.0000 1.5000
Vector Operators – Scalar Operations –
❖4. 位操作数 ❖5. 集合操作
1、数学操作
China University of Petroleum
❖数学操作之优先级: ❖1. ’(矩阵转置)、^(矩阵幂)、和.’
(数组转置)、.^(数组幂) ❖2. ~(逻辑非) ❖3. (乘)、\(左除)、/(右除)和.*(点
乘)、.\(点左除)、./(点右除) ❖4. +、-(加减) ❖5.冒号(:)(例如:x = 1:2:5 等) ❖同一类的操作数均具有相同的优先度,因
matlab教程第2章
第二章数值数组及其运算2.1引导【例2.1-1】绘制函数x=在1xey-≤x时的曲线(见图2.1-1)。
0≤x=0:0.1:1y=x.*exp(-x)plot(x,y),xlabel('x'),ylabel('y'),title('y=x*exp(-x)')x =Columns 1 through 70 0.1000 0.2000 0.3000 0.40000.5000 0.6000Columns 8 through 110.7000 0.8000 0.9000 1.0000y =Columns 1 through 70 0.0905 0.1637 0.2222 0.26810.3033 0.3293Columns 8 through 112.2一维数组的创建和寻访2.2.1一维数组的创建(1)逐个元素输入法x=[2 pi/2 sqrt(3) 3+5i]x =2.0000 1.5708 1.73213.0000 + 5.0000i(2)冒号生成法(3)定数线性采样法2.2.2一维数组的子数组寻访和赋值【例2.2-1】子数组的寻访(Address)。
rand('state',0)x=rand(1,5)x =0.9501 0.2311 0.6068 0.4860 0.8913 x(3)ans =0.6068x([1 2 5])ans =0.9501 0.2311 0.8913x(1:3)ans =0.9501 0.2311 0.6068x(3:end)ans =0.6068 0.4860 0.8913x(3:-1:1)ans =0.6068 0.2311 0.9501x(find(x>0.5))ans =0.9501 0.6068 0.8913x([1 2 3 4 4 3 2 1])ans =Columns 1 through 70.9501 0.2311 0.6068 0.4860 0.48600.6068 0.2311Column 80.9501【例2.2-2】子数组的赋值(Assign)。
第二章 MATLAB课件.ppt
• 在MATLAB中,字符串和字符数组(或矩阵)基本上是等价的。
如: >> s(3) ans=t
>> s2=[‘matlab’] 第二章s2M=AmTLaAt数la值b计算功能
14
2. 字符数组的生成 函数 char 可以用来生成字符数组(或矩阵)。 如: >> s3=char(‘s’,’y’,’m’,’b’,’o’,’l’,’i’,’c’); s3’ % “ ’ ”的作用是将字符数组显示为行变量 ans=symbolic
可以通过函数celldisp显示元胞数组的内容
变量名区分大小写;
变量名长度不超过31位,第31位字符之后的字符将被忽略;
变量名以字母开头,可包含字母、数字、下划线,但不能使用 标点。
MATLAB语言中的变量也存在变量作用域的问题,在末加特殊 说明的情况下, MATLAB语言将所识别的一切变量视为局部变量, 即仅在其调用的M文件内有效。若要定义全局变量,应对变量进 行说明,即在变量前加关键字 global。
5. MATLAB的搜索路径与扩展
主要介绍了搜索路径的几种方式和建立扩展MATLAB的搜索路 径的方法.
第二章 MATLA数值计算功能
1
常用的命令和技巧 1. 一些通用命令 (见下表)
第二章 MATLA数值计算功能
2
2. 一些常用操作技巧 (见下表)
3. 标点 (见下表)
第二章 MATLA数值计算功能
二、扩展MATLAB的搜索路径
首先在 D:\路径下建立一个新的目录myfiles.
1. 利用路径设置菜单
选中[File] [Set Path]菜单选项,进入上图所示的设置搜索路径 对话框 单击对话框中的[Add Folder]按钮或单击[Add with Subfolder]按钮,进入下图所示的浏览文件夹对话框,选中
matlab-第二章
1,在一个MA TLAB命令中,6+7i和6+7*i有何区别?i和I有何区别?第一个i代表一个变量,6+7i是一个函数,第二个代表虚数,6是实部,7代表虚步.I只代表变量.2,.设A和B是两个同大小的矩阵,试分析A*B和A.*B、A./B和B.\A、A/B和B/A的区别?如果A和B是两个标量数据,结论又如何?A *B是矩阵相乘,A.*B表示A和B单个元素之间对应相乘。
A./B和B.\A值相等,是一样的。
A/B等效于B的逆右乘A的矩阵,B\A等效于B矩阵逆左乘A矩阵。
如果A和B是两个标量数据,结论是都没有区别。
3,写出完成下列操作的命令。
(1)删除矩阵A的第7号元素A(7)=[](2)将向量t的0元素用机器零来代替t(find(t==0))=eps(3)将含有12个元素的向量x转换成3*4矩阵newA=reshape(A,3,4)(4) 求一个字符串的ASCIIch=['a b c';'1 2 3'];abs ch(5) 产生和A同样大小的幺矩阵ones(size(A))(6) 从矩阵A提取主对角线元素,并以这些元素构成对角阵B。
A=[1 2 3;4 5 6;7 8 9];D=diag(A)B=diag([1,5,9])4, .要生产均值为3,方差为1的500个正态分布的随机序列,写出相应的表达式y=3+sqrt(1)*randn(500)5,(1)主对角元素1 1 5 9上三角矩阵1 -1 2 30 1 -4 20 0 5 20 0 0 9下三角矩阵1 0 0 05 1 0 03 0 5 011 15 0 9逆矩阵-0.1758 0.1641 0.2016 -0.0227-0.1055 -0.1016 -0.0391 0.0664-0.0508 -0.0859 0.1516 0.00230.3906 -0.0313 -0.1813 0.0281行列式的值1280秩4范数A1=norm(A,1)=20 A2=norm(A)= 21.3005 A3=norm(A,inf)=35条件数A1=cond(A,1)= 14.4531 A2=cond(A,2)= 11.1739 A3=cond(A,inf)= 22.0938迹16(2)主对角元素0.43 4上三角矩阵0.4300 43.0000 2.00000 4.0000 21.0000下三角矩阵0.4300 0 0-8.9000 4.0000 0逆矩阵0.0022 -0.01750.0234 -0.0017-0.0035 0.0405行列式的值秩2范数B1=norm(B,1)= 47 B2=norm(B)= 43.4271 B3=norm(B,inf)= 45.4300 条件数B2=cond(B,2)= 1.9354迹4.43006,all(A)=0any(A)=1isnan(A)= 0 1 0 0 0 0 0isinf(A)= 0 0 1 1 0 0 0isfinite(A)= 1 0 0 0 1 1 1。
第二章(2) MATLAB课件
>> flipdim(c,2)
>> flipdim(c,3) ans = 1 2 3 3 4 5 4 5 7 3 5 8
4 6 9 0
3. 矩阵的抽取 对角元素抽取函数diag diag(X,k) 抽取矩阵X的第k条对角线的元素向量。k为0时抽取 主对角线,k 为正值时为上方第k条对角线,k 为负 值时为下方第k条对角线。 diag(X) 相当于diag(X,0),即抽取主对角线元素。 此函数还可以用来建立对角矩阵,其形式如下: diag(v,k) 使得向量v为所得矩阵的第k条对角线元素。 diag(v) 使得向量v为矩阵的对角线元素。 例如:矩阵抽取示例。 >> a=pascal(4) %4阶pascal矩阵
>> x=linspace(1,6,7) %创建一维数组 %创建一维数组 x= 1.0000 1.8333 2.6667 3.5000 4.3333 >> x(5) %索引访问数组元素 %索引访问数组元素 ans = 4.3333 >> x(1:5) %访问一块数据 %访问一块数据 ans = 1.0000 1.8333 2.6667 3.5000 4.3333
7
>>[v,d]=eig(a) v= 0.3162 -0.4041 -0.1391 -0.9487 0.9091 0.9740 -0.0000 0.1010 -0.1789 d= 1.0000 0 0 0 2.0000 0 0 0 3.0000 2. 其它分解 (自看)
>>[v,d]=eig(a,b) v= -1.0000 -0.3305 -0.0202 0.4204 1.0000 -1.0000 0.5536 -0.0046 0.3485 d= 12.9030 0 0 0 -0.0045 0 0 0 0.0706
matlab第二章
》a=[1 2 3;4 5 6]' 》a=[1 2 3;4 5 6].'
a=
a=
14
14
25
25
36
36
》b=[1+2i 2-7i]' b=
1.0000 - 2.0000i 2.0000 + 7.0000i 》b=[1+2i 2-7i].' b= 1.0000 + 2.0000i 2.0000 - 7.0000i
x= 2.00 3.00
》 x=a\b x= 2.00 3.00
考虑: x=b/a是否可以?
Error!Matrix dimensions must agree.
(2)超定方程组的解
方程 ax=b ,n>m时,不存在唯一解。
x=a\b
例: x1+2x2=1 2x1+3x2=2 3x1+4x2=3
1 X 1 2 X 2
可以用V*D*inv(V)=A来验证结果
3、线性方程组求解
Matlab中有两种除运算左除和右除。 对于方程ax=b,a 为an×m矩阵,有三种情况: 当n=m时,此方程成为“恰定”方程 当n>m时,此方程成为“超定”方程 当n<m时,此方程成为“欠定”方程
matlab定义的除运算可以很方便地解上述三种方程
2. 四则运算:+ 加法;- 减法;* 乘法;
\ 左除;/ 右除;^ 幂;
● a\b运算等效于求a*x=b的解; 而a/b等效于求x*b=a的解。
matlab讲稿 第二讲
A(i,j,k,:)
A(:)
2.5 操作和特殊字符
3.特殊字符
[] 用于形成向量和矩阵,空格用于行元素的间 隔,分号或回车表示一行的结束。 []内还可以采用矩阵和向量, 例如只要A、B、C 的维数适当,就可利用D=[A B; C]产生更大的 矩阵。
A=[]表示产生空矩阵A A(m, :)=[]表示从A中删去第m行 A(:, n)=[]表示从A中删去第n列 A(:)表示将A重新排列成列向量
2.5 操作和特殊字符
A′可求出矩阵转置, 对复数阵A, 则可 求出其复共轭转置; A.′可求出阵列转置, 对复数阵A也不涉 及到共轭运算。
2.5 操作和特殊字符
2. 冒号(∶) 冒号是MATLAB中最常用的操作符之一, 它 可用于建立向量、 下标阵列和迭代。
表 2.3 冒号使用格式(1) 格式 j:k j:k j:i:k j:i:k 功 能 当j<=k时,等同 于[j, j+1,…,k] 当j>k时为空 等同于[ j+i, j+2i, …, k] j, 当i>0且j>k, 或者 i<0且j<k时为空
4.关系操作符 关系操作符可完成两个阵列之间元素对元素的比 较,其结果为同维数的阵列。当关系成立时相应 的元素置为逻辑真(1),否则置为逻辑假(0)。 操作符<、<=、>、>=只用于比较操作数的实部, 而==、~=用于比较实部和虚部。 测试两个字符串是否相同可采用strcmp, 这时 可比较不同长度的字符串。 strcmpi将忽略大小写 strncmp,strncmpi可以比较前n个字符
2.6 基本矩阵和矩阵操作
阵 作 矩 操 diag reshape rot90 fliplr flipud tril triu cat repmat 功 能 对 矩 角 阵和 阵 矩 的对 角 化 阵 列重 新排 列 矩 阵旋 转90° 矩 阵左 右翻 转 矩 阵上 下翻 转 矩 的下三 阵 阵 角 矩 的上三 阵 阵 角 阵列 接 连 复 并平铺 列 制 阵
MATLAB实用教程第二章
1.矩阵的合并
矩阵的合并就是把两个或者两个以上的矩阵 连接成一个新矩阵矩阵构造符 可用于构造矩阵并 可以作为一个矩阵合并操作符 ➢ 表达式C=A B在水平方向合并矩阵A和B; ➢ 表达式C=A;B在竖直方向合并矩阵A和B
具有相同行数的两个矩阵合并为一个新矩阵
12 34 56 3×2
1.访问单个元素
2.线性引用元素
➢ 对于矩阵A线性引用元素的格式为 Ak通常这样的引用用于行向量或列 向量但也可用于二维矩阵
➢ MATLAB按列优先排列的一个长列向量格 式线性引用元素来存储矩阵元素
3.访问多个元素
操作符:可以用来表示矩阵的多个元 素若A是二维矩阵其主要用法如下: ➢ A:: 返回矩阵A的所有元素 ➢ Ai: 返回矩阵A第i行的所有元素
3.用满矩阵和稀疏矩阵存储方式分别构造下述矩 阵:
4.采用向量构造符得到向量159…41 5.按水平和竖直方向分别合并下述两个矩阵:
6. 分别删除第5题两个结果的第2行 7. 分别将第5题两个结果的第2行最后3列的数值
改为11 12 13 8. 分别查看第5题两个结果的各方向长度 9. 分别判断pi是否为字符串和浮点数 10.分别将第5题两个结果均转换为29的矩阵 11.计算第5题矩阵A的转秩 12.分别计算第5题矩阵A和B的A+B、A.* B和
行运算; ➢ 不同优先级的运算符采用先进行优先高的
运算
运算符的优先等级表
由表中可以看到括号的优先级别最高因此可 以用括号来改变默认的优先等级
2.4 字符串处理函数
2.4.1 字符串的构造 2.4.2 字符串的比较 2.4.3 字符串的查找和替换 2.4.4 字符串与数值间的转换
Matlab讲义高级第二章 matlab语言基础
第一节 使用MATLAB的窗口环境
一、MATLAB语言的显著特点
1、具有强大的矩阵运算能力:Matrix Laboratory (矩阵实验室),使得矩阵运算非常简单。 2、是一种演算式语言 • MATLAB的基本数据单元是既不需要指定维数, 也不需要说明数据类型的矩阵(向量和标量为矩 阵的特例),而且数学表达式和运算规则与通常 的习惯相同。 因此MATLAB语言编程简单,使用方便。 例 exp2_1.m
只有维数相同的矩阵才能进行 加减运算。 注意只有当两个矩阵中前一个 矩阵的列数和后一个矩阵的行 数相同时,才可以进行乘法运 算。a\b运算等效于求a*x=b的 解;而a/b等效于求x*b=a的解。 只有方阵才可以求幂。 点运算是两个维数相同矩阵对 应元素之间的运算,在有的教 材中也定义为数组运算。
3、逆矩阵与行列式计算 求逆:inv(A); 求行列式:det(A) 要求矩阵必须为方阵
(2)load filename variables • 将以前用save命令保存的变量variables从磁盘文件 中调入MATLAB工作空间。 • 用load 命令调入的变量,其名称为用save命令保存 时的名称,取值也一样。 • Variables所表示的变量列表中,不能用逗号,各个 不同的变量之间只能用空格来分隔。 • 未列出variables时,表示将磁盘文件中的所有变量 都调入工作空间。 3、退出工作空间 • quit 或 exit
五、MATLAB的工作空间
1、MATLAB的工作空间包含了一组可以在命令窗口中调整 (调用)的参数 • who:显示当前工作空间中所有变量的一个简单列表
• whos:则列出变量的大小、数据格式等详细信息 • clear :清除工作空间中所有的变量 • clear 变量名:清除指定的变量 2、保存和载入workspace (1)save filename variables • 将变量列表variables所列出的变量保存到磁盘文件 filename中 • Variables所表示的变量列表中,不能用逗号,各个 不同的变量之间只能用空格来分隔。 • 未列出variables时,表示将当前工作空间中所有变 量都保持到磁盘文件中。 • 缺省的磁盘文件扩展名为“.mat”,可以使用“-”定 义不同的存储格式(ASCII、V4等)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
七,使用帮助
1,help命令,在命令窗口中显示 MATLBA的所有函数都是以逻辑群组方式进行组 织的,而MATLAB的目录结构就是以这些群组方 式来编排的. help matfun :矩阵函数-数值线性代数 help general:通用命令 help graphics:通用图形函数 help elfun:基本的数学函数 help elmat:基本矩阵和矩阵操作 help datafun:数据分析和傅立叶变换函数 help ops:操作符和特殊字符
三,矩阵的操作
1,矩阵下标
MATLAB通过确认矩阵下标,可以对矩阵进行插入子块,提取 子块和重排子块的操作. A(m,n):提取第m行,第n列元素 A(:,n):提取第n列元素 A(m,:) A(m,:):提取第m行元素 m A(m1:m2,n1:n2):提取第m1行到第m2行和第n1列到 第n2列的所有元素(提取子块). A(:):得到一个长列矢量,该矢量的元素按矩阵的列进行排列. 矩阵扩展:如果在原矩阵中一个不存在的地址位置上设定一个数 (赋值),则该矩阵会自动扩展行列数,并在该位置上添加这个 数,而且在其他没有指定的位置补零. 消除子块:如果将矩阵的子块赋值为空矩阵[ ],则相当于消除了 相应的矩阵子块.
2,语句生成 (1)用线性等间距生成向量矩阵(start:step:end) 》a=[1:2:10] 其中start为起始值,step为步长,end a= 为终止值.当步长为1时可省略step参 1 3 5 7 9 数;另外step也可以取负数. (2)a=linspace(n1,n2,n) 在线性空间上,行矢量的值从n1到n2,数据个数 为n,缺省n为100. 》a=linspace(1,10,10) a= 1 2 3 4 5 6 7 8 9 10
如果结果为整数,则显示没有小数;如果结果不是 整数,则输出形式有: format (short):短格式(5位定点数)99.1253 format long:长格式(15位定点数 99.12345678900000 format short e:短格式e方式 9.9123e+001 format long e:长格式e方式 9.912345678900000e+001 format bank:2位十进制 99.12 format hex:十六进制格式
(3)a=logspace(n1,n2,n) 在对数空间上,行矢量的值从10n1到10n2,数据 个数为n,缺省n为50.这个指令为建立对数频域 轴坐标提供了方便. 》a=logspace(1,3,3) a= 10 100 1000 (4)一些常用的特殊矩阵 单位矩阵:eye(m,n); eye(m) 零矩阵:zeros(m,n); zeros(m) 一矩阵:ones(m,n); ones(m) 对角矩阵:对角元素向量 V=[a1,a2,…,an] A=diag(V) 随机矩阵:rand(m,n)产生一个m×n的均匀分别的随机矩阵
四,简单的数学运算(例exp2_2.m)
1,常用的数学运算符 +,—,*(乘),/(左除),\(右除),^(幂) 在运算式中,MATLAB通常不需要考虑空格;多条命令 可以放在一行中,它们之间需要用分号隔开;逗号告诉 MATLAB显示结果,而分号则禁止结果显示. 2,常用数学函数 abs,sin,cos,tan,asin,acos,atan,sqrt,exp,imag,real,sign, log,log10,conj(共扼复数)等
六,文件管理
文件管理的命令,包括列文件名,显示或删除文件, 显示或改变当前目录等.(what,dir,type, delete,cd,which) what:显示当前目录下所有与matlab相关的文件及 它们的路径. dir:显示当前目录下所有的文件 which:显示某个文件的路径 cd path:由当前目录进入path目录 cd ..:返回上一级目录 cd:显示当前目录 type filename:在命令窗口中显示文件filename delete filename:删除文件filename
》eye(2,3) ans= 100 010 》zeros(2,3) ans= 000 000 》ones(2,3) ans= 111 111 》V=[5 7 2]; A=diag(V) A= 500 070 002
》eye(2) ans= 10 01 》zeros(2) ans= 00 00 》ones(2) ans= 11 11
二,MATLAB命令窗口
1,启动MATLAB命令窗口 计算机安装好MATLAB之后,双击MATLAB图标, 就可以进入命令窗口,此时意味着系统处于准备接 受命令的状态,可以在命令窗口中直接输入命令语 句. MATLAB语句形式 》变量=表达式; 通过等于符号将表达式的值赋予变量.当键入回车 键时,该语句被执行.语句执行之后,窗口自动显 示出语句执行的结果.如果希望结果不被显示,则 只要在语句之后加上一个分号(;)即可.此时尽 管结果没有显示,但它依然被赋值并在MATLAB 工作空间中分配了内存.
(2)load filename variables 将以前用save命令保存的变量variables从磁盘文件 中调入MATLAB工作空间. 用load 命令调入的变量,其名称为用save命令保存 时的名称,取值也一样. Variables所表示的变量列表中,不能用逗号,各个 不同的变量之间只能用空格来分隔. 未列出variables时,表示将磁盘文件中的所有变量 都调入工作空间. 3,退出工作空间 quit 或 exit
只有维数相同的矩阵才能进行 加减运算. 注意只有当两个矩阵中前一个 矩阵的列数和后一个矩阵的行 数相同时,才可以进行乘法运 算.a\b运算等效于求a*x=b的 解;而a/b等效于求x*b=a的解. 只有方阵才可以求幂. 点运算是两个维数相同矩阵对 应元素之间的运算,在有的教 材中也定义为数组运算.
3,逆矩阵与行列式计算 求逆:inv(A); 求行列式:det(A) 要求矩阵必须为方阵
》a=[1 2 3; 4 5 6; 2 3 5]; 》b=inv(a) b= -2.3333 0.3333 1.0000 2.6667 0.3333 -2.0000 -0.6667 -0.3333 1.0000 》det(a) ans = -3
4,了解矩阵超越函数 在MATLAB中exp,sqrt等命 令也可以作用到矩阵上,但 这种运算是定义在矩阵的单 个元素上的,即分别对矩阵 的每一个元素进行计算. 超越数学函数可以在函数后 加上m而成为矩阵的超越函 数,例如:expm,sqrtm.矩 阵的超越函数要求运算矩阵 为方阵.
第二节
MATLAB矩阵运算及多项式处理
一,矩阵的输入 1,在命令窗口中输入
》a=1; b=2; c=3; 》x=[5 b c; a*b a+c c/b] x= 5.000 2.000 3.000 2.000 4.000 1.500 》y=[2,4, 5 3 6 8] y= 245 368
矩阵生成不但可以使用纯数字(含复数),也可以使用变 量(或者说采用一个表达式).矩阵的元素直接排列在方 括号内,行与行之间用分号隔开,每行内的元素使用空格 或逗号隔开.大的矩阵可以用分行输入,回车键代表分号.
三,变量和数值显示格式
1,变量 (1)变量的命名:变量的名字必须以字母开头(不能 超过19个字符),之后可以是任意字母,数字或下 划线;变量名称区分字母的大小写;变量中不能包 含有标点符号. (2)一些特殊的变量 ans:用于结果的缺省变量名 i,j:虚数单位 pi:圆周率 nargin:函数的输入变量个数 eps:计算机的最小数 nargout:函数的输出变量个数 inf:无穷大 realmin:最小正实数 realmax:最大正实数 nan:不定量 flops:浮点运算数
(3)变量操作 在命令窗口中,同时存储着输入的命令和创建的所 有变量值,它们可以在任何需要的时候被调用.如 要察看变量a的值,只需要在命令窗口中输入变量 的名称即可:》a 2,数值显示格式 任何MATLAB的语句的执行结果都可以在屏幕上 显示,同时赋值给指定的变量,没有指定变量时, 赋值给一个特殊的变量ans,数据的显示格式由 format命令控制. format只是影响结果的显示,不影响其计算与存储; MATLAB总是以双字长浮点数(双精度)来执行 所有的运算.
help polyfun:多项式和内插函数 help lang:语言结构和调试 help strfun:字符串函数 help control:控制系统工具箱函数 2,helpwin:帮助窗口 3,helpdesk:帮助桌面,浏览器模式 4,lookfor命令:返回包含指定关键词的那些项 5,demo:打开示例窗口
2,四则运算与幂运算
+ ;- ;* ;\和/ ;^;.* ;.\ ;./;.^ 如:a=[1 2;3 4];b=[ 3 5; 5 9] 》c=a+b d=a-b 》c= d= 4 7 -2 -3 8 13 -2 -5 》a*b=[13 23; 29 51] 》a/b=[-0.50 0.50;3.50 –1.50] 》a\b=[-1 -1;2 3] 》a^3=[37 54; 81 118] 》a.*b=[3 10;15 36] 》a./b=[0.33 0.40;0.60 0.44] 》a.\b=[3.00 2.50;1.67 2.25] 》a.^3= [1 8; 27 64]
CH2, MATLABห้องสมุดไป่ตู้言基础
第一节 使用MATLAB的窗口环境
一,MATLAB语言的显著特点
1,具有强大的矩阵运算能力:Matrix Laboratory (矩阵实验室),使得矩阵运算非常简单. 2,是一种演算式语言 MATLAB的基本数据单元是既不需要指定维数, 也不需要说明数据类型的矩阵(向量和标量为矩 阵的特例),而且数学表达式和运算规则与通常 的习惯相同. 因此MATLAB语言编程简单,使用方便. 例 exp2_1.m