王国利信息科学与技术学院中山大学
http://human-robot.sysu.edu.cn
Matlab计算与仿真技术第三讲,交互式计算 -I
Matlab计算与仿真
第二讲回顾
交互式计算 -I
第三讲提纲
Matlab计算与仿真第二讲回顾
Matlab 的通用操作界面
- 命令窗口 (Command Window)
- 启动平台窗口 (Launch Pad)
- 工作空间窗口 (Workspace Browser)
- 命令历史窗口 (Command History)
- 当前路径窗口 (Current Directory Browser)
- 内存数组编辑器 (Array Editor)
- M文件编辑器 (M-File Editor)
- 帮助导航器 (Help Navigator)
对应到工厂职能部门 …
Matlab计算与仿真
Matlab的计算能力
Matlab自动进行计算表达式的正确性检查
Matlab初识与概述 (续 )
Matlab计算与仿真
Matlab初识与概述 (续 )
- 实例
Matlab计算与仿真
Matlab初识与概述 (续 )
Matlab计算与仿真
Matlab初识与概述 (续 )
- Matlab的基本数据类型
Matlab计算与仿真
Matlab初识与概述 (续 )
- Matlab的基本数据类型
Matlab计算与仿真
Matlab初识与概述 (续 )
- Matlab的基本数据类型
Matlab计算与仿真
Matlab初识与概述 (续 )
Matlab计算与仿真
Matlab初识与概述 (续 )
who (whos),可以查看所有定义的变量
clear,可以删除指定或所有定义的变量
>> clear
>> xy=1,yx=2;
xy =
1
>> who
Your variables are
xy yx
Matlab计算与仿真
Matlab初识与概述 (续 )
也可通过内存数组编辑器 (Array Editor)
查看定义的变量
Matlab计算与仿真
Matlab初识与概述 (续 )
千万记得,我们很有用 !
Matlab计算与仿真
Matlab初识与概述 (续 )
>> help log10
>> help exp
Matlab计算与仿真
Matlab初识与概述 (续 )
一定要习惯使用我们 !
Matlab计算与仿真
Matlab初识与概述 (续 )
快速了解使用的方法 !
Matlab计算与仿真
Matlab初识与概述 (续 )
Matlab计算与仿真交互式计算
概述
- 基本功能支持计算器计算模式执行简短的指令序列调试函数或脚本部分指令序列
- 与脚本和函数的关系脚本,重复执行的指令序列函数,重复调用的指令序列理解为滑动的窗口 …
Matlab计算与仿真
计算信息的交互
- 计算信息的抑制指令结尾使用分号
- 计算信息的反馈指令结尾不用分号
>> x=5;
>> y=sqrt(59);
>> z=log(y)+x^0.25
z=
3.5341
交互式计算 (续 )
注解,前两个指令完成对变量 x,y 的赋值,
第三个指令计算变量 z
Matlab计算与仿真
一次多指令的交互方式
- 逗号分隔指令反馈前一指令的计算信息
- 分号分隔指令抑制前一指令的计算信息
>> a=5; b=sin(a),c=cosh(a)
b=
-0.9589
c=
74.2099
交互式计算 (续 )
注解,第 1个指令完成对变量
a 的赋值,后两个指令计算变量 b,c 的值
Matlab计算与仿真交互式计算 (续 )
Matlab变量命名概述
- 字母开头 (a-z / A-Z)
小写,标量,向量大写,矩阵,多维数组
- 中间 (a-z / A-Z / 0-9/ _)
长度,不能超过 31个建议,不要与内置的函数和变量名重合或内置函数只用在表达式右边
xxxxxxxx
pipeRadius
widgets_per_box
mysum
mySum
注意,后两个不同
Matlab计算与仿真交互式计算 (续 )
基本的数据结构
- 向量一维的矩阵行表示,元素用空格分隔列表示,元素用分号分隔
- 矩阵两维的数组行内元素用空格分隔列间元素用分号分隔元素的访问
x(2) – 向量 x
的第二个元素
A(3,3) – 矩阵 A
第三个对角元素
Matlab计算与仿真交互式计算 (续 )
变量创建的交互方法
- 基本格式变量名 = 表达式
- 表达式注解数值,变量 和 函数 通过操作符组合而成手工输入方式函数返回方式 (内嵌的或自己的 )
外部加载方式 (.mat数据文件 )
Matlab计算与仿真交互式计算 (续 )
手工创建方式
32
31
14
A




5
7
9
2
x






>> A = [ 3 2; 3 1; 1 4]
A =
3 2
3 1
1 4
>> x = [5; 7; 9; 2]
x =
5
7
9
2
Matlab计算与仿真交互式计算 (续 )
交互创建的辅助工具
- 矩阵转置操作符,′
执行行列互换操作
- 特殊矩阵全零矩阵,>> zeros(m,n)
全一矩阵,>> ones(m,n)
对角矩阵,>> diag(v)
单位矩阵,>> eye(n)
随机矩阵,>> rand(m,n)
>> v=[2 4 1 7];
>> w=v’
w=
2
4
1
7
>> help
elmat
Matlab计算与仿真交互式计算 (续 )
创建向量的有用函数
- 线性增量序列模式基本格式
linearspace(startValue,endValue)
linearspace(tartValue,endValue,nElements)
注解,缺省 nElements=100
>> u=linspace(0,0.25,5)
u=
0 0.0625 0.1250 0.1850 0.2500
生成行向量
Matlab计算与仿真交互式计算 (续 )
>> v=linspace(0,9,4)
v=
0
3
6
9
>> x=linspace(0,2*pi,6);
>> y=sin(x);
>> z=cos(x);
>> [x,y,x]
ans
… … …
生成列向量生成表格
Matlab计算与仿真交互式计算 (续 )
- 指数增量序列模式基本格式
logspace(startValue,endValue)
logspace(tartValue,endValue,nElements)
注解,从 10^startValue 到 10^endValue
>> u=logspace(1,4,4)
u=
10 100 1000 10000
>> A=diag(u)
A=
Matlab计算与仿真交互式计算 (续 )
>> B=[1:4; 5:8; 9:12]
B =
1 2 3 4
5 6 7 8
9 10 11 12
>> w=diag(B)
w =
1
6
11
>> A=diag(w);
A =
1 0 0
0 6 0
0 0 11
函数复用前一个提取对角元素后一个生成对角矩阵
Matlab计算与仿真交互式计算 (续 )
技巧注解
>> A=[1 2 3;4 5 6; 7 8 9]
A=
1 2 3
4 5 6
7 8 9
>> A(4,4)=10
A=
1 2 3 0
4 5 6 0
7 8 9 0
0 0 0 10
矩阵的维数是弹性的
Matlab计算与仿真交互式计算 (续 )
使用冒号创建向量
- 基本格式
startValue,endValue
startValue,increment,endValue
注解:缺省增量为单位值
>> s=1:4
s =
1 2 3 4
>> t=0:0.1:0.4
t=
0 0.1 0.2 0.3 0.4
Matlab计算与仿真交互式计算 (续 )
- 注解:冒号的行列提取操作
>>A=[1 2 3;4 5 6; 7 8 9]
A=
1 2 3
4 5 6
7 8 9
>> A(:,2)
A=
2
5
8
Matlab计算与仿真第四讲预告:交互式计算 -II
( 2008年 3月 19日)
结束语