01.模块大小的一致性
当模型建完以后,模型大小比较散乱,可以利用该功能快速整理模块的大小
例如:如下5个constant模块,大小不一
若想把所有的模块都调整至跟第3个模块一样的大小
需要先把5个模块全部选取起来,另外再单击第3个模块,右击选择Arrange和Match Size
结果:
02--通过脚本控制simulink运行时间
模型mode
set_param('mode','SimulationCommand','start')
set_param('mode','SimulationCommand','pause')
set_param('mode','SimulationCommand','step')
03--向量或矩阵转置
A=[1 2 3 4 5]
A'
A =
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25
A'
>> A'
ans =
1 6 11 16 21
2 7 12 17 22
3 8 13 18 23
4 9 14 19 24
5 10 15 20 25
04--function函数
-
function(关键字):首先得告诉MATLAB,这是一个函数定义,而非普通的脚本文件。
-
函数名:就是这个“函数块”的名称(通常和文件名相同)
-
输入参数和输出参数:前者是括号内,后者是等号后面描述的。
-
函数体:由function和end之间的代码,是执行该函数的主要代码。
例如:
05--matlab整除方式
1.fix(x):截尾取整
2.floor(x):不超过X的最大整数
3.ceil(x):大于x的最小整数
4.round(x):四舍五入取整
5.matlab之取出小数部分 num-floor(num)
>> round(3.145)
ans =
3
>> round(3.545)
ans =
4
>> ceil(3.545)
ans =
4
>> floor(3.545)
ans =
3
>> fix(3.545)
ans =
3
06--power函数用法
power(a,b)=a^b
power(A,B)=A.^B (A B为矩阵)
power(9,2)
ans =
81
>> A=[2 4]
A =
2 4
>> B=[1 3]
B =
1 3
>> power(A,B)
ans =
2 64
07--MATLAB某数组间隔取值
1、提取某个元素,则m,n为数字标量,如A(2,3)为第二行第三列的元素。
2、提取某行某列
A(:,n)提取第n列的所有元素,如A(:,3)提取第三列的所有元素。
A(m,:)提取第m行的所有元素,如A(3,:)提取第三行的所有元素。
3、提取任意的某部分并重新组成新的矩阵,连续或不连续,单调或不单调
数字指定:A([1 2 3 4],[2 3]) 返回1 2 3 4行2 3 列的数据。
步长指定:A(1:2:end,:) A(2:2:end,:)分别提取矩阵A的奇数行和偶数行数据。
A(end:-1:1,:) A(:,end:-1:1)分别返回A矩阵行倒序和列倒序的矩阵。
变量指定:A(B(:,1),:),其中B的第一列含有数据,用来指定取矩阵A的哪些行
>> A=[1 2 3 4;5 6 7 8;9 10 11 12]
A =
1 2 3 4
5 6 7 8
9 10 11 12
>> A(3,2)
ans =
10
>> A(:,3)
ans =
3
7
11
>> A(2,:)
ans =
5 6 7 8
>> A([1 2 3],[2 3])
ans =
2 3
6 7
10 11
>> A(2,[2 3])
ans =
6 7
>> A(1:2:end,:)
ans =
1 2 3 4
9 10 11 12
08--matlab文件路径的作用
在使用matlab的时候,我们的脚本文件、函数文件、数据文件、simulink文件等可能不在同一个文件夹下面,使用的过程中需要来回切换,十分麻烦,怎么解决这一个问题呢?
我们只需要将我们所用到的文件夹添加到路径就可以了。
只要我们的文件由灰色变成了黑色就在同一路径下了,这样就不用每次切换到指定的文件夹路径下了
09--matlab中的对数使用
Matlab中的对数使用,matlab中提供了log10、log2和以e为底的对数。
1、以e为底的对数用log()表示,如log(a)。
2、以10为底的对数用log10()表示,如log10(a)。
3、以2为底的对数用log2()表示,如log2(a)。
4、对于其它如 log a b \log a^b logab,用logb/loga表示。
10--特殊矩阵的建立
eye(n)
eye(m,n)
ones(n)
ones(m,n)
zeros(n)
zeros(m,n)
rand(n)
rand(m,n)
magic(n)
magic(3)
ans =
8 1 6
3 5 7
4 9 2
ones(2,4)
ans =
1 1 1 1
1 1 1 1
eye(2,3)
ans =
1 0 0
0 1 0
eye(2)
ans =
1 0
0 1
11--matlab中sum函数
b=sum(a); a表示行向量,b表示行向量求和的值。
b=sum(a); a表示矩阵,b表示矩阵每列求和得到的行向量。
magic(5)
ans =
17 24 1 8 15
23 5 7 14 16
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9
>> sum(ans)
ans =
65 65 65 65 65
b=sum(a,dim); a表示矩阵;dim等于1或者2,1表示每一列进行求和,2表示每一行进行求和;b表示求得的行向量。
magic(5)
ans =
17 24 1 8 15
23 5 7 14 16
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9
>> sum(ans,2)
ans =
65
65
65
65
65
12--MATLAB绘图使折线成为平滑的曲线
>> soc=[0 10 20 30 40 50 60 70 80 90 100]
soc =
0 10 20 30 40 50 60 70 80 90 100
>> V=[3.1 3.5 3.2 3.6 3.3 3.2 3.1 3.0 3.4 3.6 3.4]
V =
3.1000 3.5000 3.2000 3.6000 3.3000 3.2000 3.1000 3.0000 3.4000 3.6000 3.4000
>> plot(soc,V)
>> semilogy(soc,V)
>> soc1=linspace(min(soc),max(soc));
>> V1=interp1(soc,V,soc1,'cubic');
>> semilogy(soc1,V1)