Matlab常用命令:
Clear 清除当前工作空间中的全部变量
Clear a 清除当前工作空间中的指定变量a
Home 清除命令窗口中所有内容并将光标移动到左上角
clc 清除命令窗口中所显示的所有内容
Pack 整理内存碎片以扩大内存空间
箭头 调出已输入过的命令行
分号和》的作用:
在命令行中若一直以;结尾,则不输出结果,最后一句一定不能以;结尾。命令行均以”>>”开头,计算结果不带提示符,这样有利于读者判断某条语句是命令还是计算结果。
历史记录命令有效作用
- 可以双击单条命令行,可以使得其再次执行,不需要重新输入命令行。
- 按住ctrl键并单击鼠标左键可选中多条命令,再单击鼠标右键,可以选择create script选项,可将多条命令行作为一个文件进行编辑和保存。
Lookfor命令:不知道准确命令(help),根据用户提供的完整或不完整的关键词,搜索一组与之相关的命令。
Ctrl+C 可以结束搜索过程。
Help sin 可以显示出帮助信息
Edit sin 可以打开sin函数对应的.M文件
Matlab系统保存变量
I和j 虚数单位(根号-1的解)
Pi 圆周率
Ans 存放最近一次无赋值变量语句的预算结果
Inf 无穷大
Eps 机器的浮点运算误差限(若变量的绝对值小于eps,则视为0)
等号右边的赋值表达式不是数值,而是字符串,则字符串两边应加单引号。
用户自定义函数应避免与matlab内置函数重名,对于自定义函数,该函数对应的M文件应该保存在matlab可以搜索到的目录。
矩阵:
- 矩阵不同行之间必须用分号或回车符分开;
- 矩阵同一行的各元素必须用逗号或空格分开。
关于矩阵的matlab系统内置函数
Ones(n,m) n行m列的全1矩阵
zeros(n,m) n行m列的全0矩阵
Rand(n,m) n行m列在[0,1]间均匀分布的随机矩阵
Randn(n,m) n行m列的正态分布的随机矩阵
Eye(n) n行n列的单位矩阵
向量只是矩阵的一种特殊情况,只是n或m有一个为1而已。
冒号表达式
V=0:0.1:0.5
V =
0 0.1000 0.2000 0.3000 0.4000 0.5000
A(2,:)表示矩阵A第二行全部元素,A(:,2)表示矩阵A第2列全部元素,A(1,1:2)表示矩阵A第1行第1-2列全部元素
矩阵的运算
- 矩阵的代数运算
加减 (A,B矩阵为同维矩阵的前提下)
矩阵* (矩阵A,B均为向量或标量,但A和B的维数必须符合矩阵乘法的定义)
矩阵左除A\B 方程A*X=B的解X (两个矩阵的行数必须相等)
矩阵右除A/B 方程X*A=B的解X (两个矩阵的列数必须相等)
矩阵乘方 A,B均为标量时,表示A的B次幂;当A为方阵,B为正整数,表示A矩阵的B次乘积;当A,B均为矩阵,无定义
常用的矩阵运算函数
Size(A) 获取矩阵A的行数和列数,分别打印出来
A’ 计算矩阵的转置矩阵
Inv(A) 计算矩阵A的逆矩阵
Length(A) 计算矩阵A的长度(列数)
Sum(A) 若A为向量,则计算A所有元素之和;若A为矩阵,则产生一行向量,其元素分别为矩阵A各列元素之和
Max(A) 若A为向量,则求出A所有元素的最大值;若A为矩阵,则产生一行向量,其元素分别为矩阵A各列元素的最大值
元素群运算:
.* 元素群乘 矩阵A与B的对应元素
.\ 矩阵B除以矩阵A对应元素
./ 矩阵A除以矩阵B对应元素
.^ 同上类似乘方运算
元素群的函数
例如:
x=[0 pi/6 pi/4 pi/2];
>> sin(x)
ans =
0 0.5000 0.7071 1.0000
矩阵的关系运算
A=ones(1,4);
>> B=[1 2 3 4];
>> A>B
ans =
0 0 0 0
或者这样写也行:
>> A=ones(1,4);
>> B=1:1:4;
>> A>B
ans =
0 0 0 0
与或非逻辑也是同上使用:
A=ones(1,4);
>> B=1:1:4;
>> A&B
ans =
1 1 1 1
循环控制结构
>> sum=0;
>> for i=1:1:50;
sum=sum+i;
end
>> sum
sum =
1275
Sum+=i 在matlab里面不被识别,另外循环必须以end结尾,不可省略,for和end必须成对出现。另外for i=1:50也可以,默认步长为1。
等同于如下:
>> sum=0;
>> i=1;
>> while i<=50
sum=sum+i;
i=i+1;
end
>> sum
sum =
1275
条件选择结构
Else不能单独使用,必须与if配对使用
If条件选择结构可以嵌套使用
另外:matlab中switch语句和C语言有所不同,switch条件选择只执行第一个匹配的case语句,不需要break,在结束时用个end就行。
关于M文件
M文件分为脚本文件和函数M文件两大类。
对矩阵进行降序操作
>> a=1;b=0;c=3;
>> sort([a,b,c],'descend')
ans =
3 1 0
注意:关于函数调用,函数一定要和文件名一致,否则会编译出错。
Matlab的图形绘制
常用的几种格式:
Plot(y)
Plot(x,y,’option’)
Plot(x,y1,’option1’,x,y2,’option2’) 以公共的向量x作为x轴,分别以向量y1,y2为y轴绘制曲线
Plot(x1,y1,’option1’,x2,y2,’optino2’) 分别以x1,x2作为x轴,以y1,y2为y轴绘制多条曲线。
Option的选项网上可以查找。另外属性可以连续叠加使用,如选项‘--b’表示绘制蓝色的虚线。
Axis([0 10 -2 2 ]);%表示x轴和y轴的取值范围
Xlabel(‘string’) 标注x轴名称
ylabel(‘string’) 标注y轴名称
Title(‘string’) 标注图形标题
Legend(‘string1’,’string2’,...) 标注图例标注
Grid on 给图形增加网格
Grid off 给图形滞销网格
Gtext(‘string’) 给图形中加入普通文本注释
例如:
figure
t=0;pi/20:2*pi;
y1=sin(t);
y2=sin(t-pi/2);
y3=sin(t-pi);
plot(t,y1,'-.r*',t,y2,'--mo',t,y3,':bs');
%图形修饰
axis([0,2*pi,-1,1]);
xlabel('弧度值');
ylabel('函数值');
title('三个不同相位的正弦函数');
legend('y1','y2','y3');
grid;
gtext('y1=sint');
gtext('y2=sin(t-pi/2)');
gtext('y3=sin(t-pi)');
还有其他特殊图形的绘制以及三维可以另外学习,记录了也记不住那么多。此外,plot绘图工具也很强大,多学习下。