当前位置:
文档之家› 实验1Matlab的基本使用方法
实验1Matlab的基本使用方法
最简单的方法是将用户目录设置为当前目录,设置方法是在命令窗口中输入指令 cd d:\mydir 或者 pwd d:\mydir 另一种方法是将用户目录设置为 Matlab 的搜索路径中,方法是在命令窗口中输入指令:
7
path(path,’d:\mydir’)。用这种方法设置的目录信息只在当前环境中有效,一旦 Matlab 重新启 动,以前的设置就无效。
等于)
1
2) 逻辑运算:&(与)、|(或)、~(非)(非零元素都表示为真) 关系函数和逻辑函数:
函数
功能
函数
功能
all(x)
检查 x 是否全为 1
any(x)
检查 x 是否有不为零的元素
find(x)
找出非零元素的位置标识
isempty(x) 检查 x 是否为空阵
isinf(x)
检查 x 是否为无穷大
Your variables are:
RXYZtxyz
>> whos
Name
Size
Bytes Class
R
31x31
7688 double array
X
31x31
7688 double array
Y
31x31
7688 double array
Z
31x31
7688 double array
t
1x501
(11) 帮助.
3、实验指导 Matlab 是美国 Mathworks 公司推出的一套高性能的数值分析和计算软件,它将矩阵运
算、数值分析、图形处理、编程技术结合在一起,为用户提供了一个强有力的科学及工程问 题分析计算和程序设计的工具。
Matlab 语言可以被认为是一种解释性语言,用户可以在 Matlab 的工作空间中输入一个 指令,也可以在编辑器中编写应用程序,应用程序执行时,Matlab 软件对其中的命令和函 数进行翻译,然后在 Matlab 环境中对它进行处理,最后返回结果。 (1)数值、变量和表达式
4008 double array
x
1x31
248 double array
y
1x31
248 double array
z
1x30
240 double array
Grand total is 4437 elements using 35496 bytes
2) 工作空间的保存
保存所有变量:“File: Save workspace As”
isstr(x)
检查 x 是否为字符串
等等
例子:
a=magic(6)
% 建立一个 6 阶魔方矩阵
p=(rem(a,3)==0) %rem 求余数的运算,矩阵 a 的各元素分别被 3 除,能整除的返回 1,不 能整除的返回 0,p 将返回一个含有 0 和 1 的矩阵
format +; p
%用 format +命令给出 p 的压缩格式,显示“+”代表正元素,显示“-” 代表负元素,空格代表 0
%在适当位置为图形加上注释
>>
例:三维图形的绘制 Ø 三维曲线的绘制 >> t=0:pi/50:10*pi; >> plot3(sin(t),cos(t),t) >> grid >>
Ø 三维曲面的绘制 >> x=-7.5:0.5:7.5; >> y=x; >> [X,Y]=meshgrid(x,y); >> R=sqrt(X.^2+Y.^2)+eps;
>> eig(A)
ans =
0 + 1.0000i
0 - 1.0000i
>> [X,D]=eig(A)
X=
0.7071
0.7071
0 + 0.7071i
0 - 0.7071iFra bibliotekD=0 + 1.0000i
0
0
0 - 1.0000i
(4) 常用数学函数 abs(x):纯量的绝对值或向量的长度 angle(z):复数 z 的相角(Phase angle) sqrt(x):开平方 real(z):复数 z 的实部 imag(z):复数 z 的虚 部 conj(z):复数 z 的共轭复数 round(x):四舍五入至最近整数 fix(x):无论正负,舍去小数至最近整数 floor(x):地板函数,即舍去正小数至最近整数 (比此小数小的最近整数) ceil(x):天花板函数,即加入正小数至最近整数 (比此小数大的最近整数) rat(x):将实数 x 化为分数表示 rats(x):将实数 x 化为多项分数展开 sign(x):符号函数 (Signum function)。 sin(x):正弦函数 cos(x):馀弦函数 tan(x):正切函数 asin(x):反正弦函数
>> y=a
2
>> i=find(y>10) >> y(i)=10*ones(1) y=
10 1 6 10 10 10 3 10 7 10 10 10
10 9 2 10 10 10 8 10 10 10 10 10
10 5 10 10 10 10 4 10 10 10 10 10
3) 字符数组 >> s1='hello' %建立字符串 s1 = hello >> s1=[s1,' world'] %用方括号合并成更大的串 s1 = hello world
8 28 33 17 10 15
30 5 34 12 14 16
4 36 29 13 18 11
>> p=(rem(a,3)==0)
p=
001001
100100
010010
001001
100100
010010
>> format +;p
p=
++
++
++
++
++
++
>> format
%将显示格式转换为缺省的短格式
∞)、NaN、realmax、realmin 等 Ø 表达式遵循日常中的习惯写法,支持复数的使用,虚数符号 i 或 j. >> z=3+4i z=
3.0000 + 4.0000i (2) 算术运算符、关系运算符、逻辑运算符 1) 运算符:<(小于)、<=(小于等于)、>(大于)>=(大于等于)、==(等于)、~=(不
load FileName
将 FileName.mat 文件中的所有变量装载进工作空间
load FileName v1 v2
将 FileName.mat 文件中的变量 v1 和 v2 装载进工作空间
使用 Matlab 仿真是最好创建自己的独立于 Matlab 的工作目录,这样不会破坏原有的目 录结构。
5
acos(x):反馀弦函数 atan(x):反正切函数
(5) 二维、三维图形的绘制
二维图形的绘制 >> x=linspace(0,2*pi,30);
%在 0~2π区间线性生成 30 个点的行向量
>> y=sin(x);
>> z=cos(x); >> plot(x,y,'-'x,z)
%绘制二维曲线
3
ans =
5 13
13 34
>> a.*b
ans =
16
6 25
>> 矩阵的除法:两种不同的矩阵除法符号“/”和“\”分别表示右除和左除:
A\B=inv(A)*B 表示 A 的逆左乘 B 矩阵 是 A*X=B 的解 B/A=B*inv(A) 表示 A 的逆右乘 B 矩阵 是 X*A=B 的解 矩阵的乘方:A^P 表示 A 的 P 次方。如果 P 不是整数,则计算涉及特征值特征向 量问题,例如,假设[V,D]=eig(A),则 A^P=V*D.^P/V;如果 P 是矩阵,A 是向量,以 及 A、P 都是矩阵,则 A^P 是不合法的。 创建矩阵的函数:创建某些特殊的矩阵
(3) 矩阵的输入、运算 1) 矩阵的简单运算
空矩阵:x=[]产生一个 0×0 的矩阵 矩阵的转置 >> A=[1 2 3;4 5 6;7 8 9]; >> B=A' B=
147 258 369 矩阵的乘法:用“*”表示,矩阵与标量相乘表示矩阵中的每个元素都和标量相乘 >> x=[-1 0 2]'; >> y=[-2 -1 1]'; >> x'*y ans = 4 >> A=[1 2 3;4 5 6;7 8 9]; >> A*2 ans = 246 8 10 12 14 16 18 矩阵的逆:inv(A) 矩阵的点乘(除):对应元素相乘(除) >> a=[1 2;3 5]; >> b=a'; >> a*b
Ø 数值一般采用十进制数表示:45 -103 3.56 2.348e8 2.2e-1 Ø 变量名、函数名是对字母大小写敏感的,变量名的第一个字符必须是英文字母,最
多可以包含 31 个字符,变量名中不能包含标点、空格字符 Ø Matlab 中存在一些固定的变量,如 eps(相对精度或机器零阈值)、pi(π)Inf(+
装载所有变量:“File: Load workspace”
保存/载入部分变量:load 和 save
save FileName