Matlab基本语法
matlab工作界面基本介绍:
1.新建脚本:生成*.m文件,同时打开编辑器;
2.打开:打开文件夹中的m文件;
3.绘图窗口:利用你已有的数据可以进行绘图
(后期可能会更新具体操作,尽请期待…);
4.两个快捷键:Ctrl+N(新建脚本),Ctrl+S(保存文件)
5.查找和替换:对于代码中的变量进行查找和替换(实用功能)
6.文件夹路径:在命令行窗口上面那一行路径,
可以快速切换到你的个人.M文件的路径,方便打开**
matlab基本语法:
(如果自己真的希望学习matlab,那么这部分代码最好自己电脑尝试打出来,这样子才可以更好地学习。我这里这把代码语句附上来,实际操作就不做截图了。)
1.“;”的作用:每个语句加“;”执行后不显示结果,不加“;”执行后会在命令行窗口显示结果;
2.多行注释:注释对于代码的重要性我们就不做过多的解释了。不做注释的代码不是好代码。选中要注释的语句,按快捷键Ctrl+R,或者在命令行窗口上面的注释地方可以进行注释。当然也可以直接在语句前面+“%”就可以(注意:一定要用英文符号!);
3.取消注释:快捷键Ctrl+T;
4.clear:清除工作区所有变量,你在命令行定义变量时可以在工作区查看的,这个操作可以清楚工作区的变量;
5.clc:清楚命令行窗口所有文本,让屏幕变得干净(特别适合强迫症)。clear和clc经常搭配一起使用;
6.输入和输出函数:输出函数disp(), 输入函数input();
这里先说明matlab中如何表示字符串:‘字符串’;
disp(‘待输出文本’)和C语言中printf(“hello world!”);类似。
1
2
3
4
5
6
7
8
9
10
11
12>> a=input("请输入a的值:") 请输入a的值:100 a = 100 >> disp(a); 100 >>
7.matlab中矩阵的表示方法:“行”中数据用空格或者逗号隔开,换行用“;”隔开,整体用“[ ]”括起来。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18>> A=[1 2 3;4 5 6;7 8 9] A = 1 2 3 4 5 6 7 8 9 >> A=[1,2,3; 4,5,6; 7,8,9] A = 1 2 3 4 5 6 7 8 9
8.strcat()函数:粘贴字符串,可以把两个字符串粘贴在一起
strcat(‘str1’,‘str2’)
1
2
3
4
5
6
7>> strcat('我是','小白') ans = '我是小白'
[str1,str2,str3]或者[str1 str2 str3]也是可以粘贴合成的呢
1
2
3
4
5
6
7
8
9
10
11
12
13>> ['wo' 'shi' 'xiao' 'bai'] ans = 'woshixiaobai' >> ['wo','shi','xiao','bai'] ans = 'woshixiaobai'
8.sum()函数:这是加法函数,可以分别对矩阵进行加法计算的。
假设A是一个矩阵,对列求和:sum(A)或者sum(A,1);对行求和:sum(A,2)。这里的“1”和“2”是dim值,表示维度,1是对列,2是对行,通常1可以省略。
整个矩阵求和:sum(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
26
27
28
29>> A=[1,2,3;4,5,6;7,8,9] A = 1 2 3 4 5 6 7 8 9 >> sum(A) ans = 12 15 18 >> sum(A,2) ans = 6 15 24 >> sum(A(:)) ans = 45
10.matlab中如何提取矩阵中指定位置元素
1)指定行和列:A(m,n),提取第m行,第n列
2)某一行全部元素:A(m,:)
3)某一列全部元素:A(:,n)
4) 取出某些行:A([m,n],: )(第m行和第n行组成一个矩阵)
5)取出某行到某行:A(m:n,:), A(m:end,:)(end是倒数第一行)
6)跳跃式提取:A(m:k:n,:)第m行到第n行每隔取一次
7)得到全部元素: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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54>> A A = 1 2 3 4 5 6 7 8 9 >> A(1,1) ans = 1 >> A(1,:) ans = 1 2 3 >> A(:,1) ans = 1 4 7 >> A([1,2],:) ans = 1 2 3 4 5 6 >> A(1:3,:) ans = 1 2 3 4 5 6 7 8 9 >> A(1:1:3,:) ans = 1 2 3 4 5 6 7 8 9 >>
11.“上”和“下”两个方向键可以查看历史命令,方便输入。
12.size()函数:size(A)函数用于求矩阵A的大小,返回一个行向量,其中第一个元素是矩阵列数,第二个元素是矩阵行数。[r,c]=size(A)
r=size(A,1)返回行数,c=size(A,2)返回列数,注意dim值,看看会不会和sum()中的dim值代表的行和列混乱了呢?
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
26
27>> clear >> A=[1 2;3 4;5 6] A = 1 2 3 4 5 6 >> r=size(A,1) r = 3 >> c=size(A,2) c = 2 >> size(A) ans = 3 2
13.repmat()函数:矩阵的复制,B=repmat(A,m,n)就是将A复制mxn块
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24>> A A = 1 2 3 4 5 6 >> repmat(A,3,3) ans = 1 2 1 2 1 2 3 4 3 4 3 4 5 6 5 6 5 6 1 2 1 2 1 2 3 4 3 4 3 4 5 6 5 6 5 6 1 2 1 2 1 2 3 4 3 4 3 4 5 6 5 6 5 6 >>
14.矩阵中各种计算:
1)“*”和“/”代表矩阵之间的乘法和除法。学习过线性代数的同学对乘法应该很熟悉的。对于除法,必须熟悉一个叫逆阵的概念熟悉,求逆阵用inv()函数,A/B=A*inv(B),
B *inv(B)=单位矩阵。
2)两个相同维度的矩阵对应元素之间的乘除法使用点乘和“./”
3)矩阵每个元素和常数相乘可用点乘,可不用点乘
4)每个元素乘方只能用“.^”
5)加减法中要求两个矩阵大小完全相同。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18>> A=[1 2 3; 4 5 6;7 8 9] A = 1 2 3 4 5 6 7 8 9 >> A.^2 ans = 1 4 9 16 25 36 49 64 81 >>
15.matlab中求矩阵的特征值和特征向量
这部分可以看我上一篇博客:用matlab求得矩阵的最大特征值
16.find()函数的用法:find(A)中用来返回向量或者矩阵中不为0的元素的位置索引
ind=find(x) 返回不为0的值的元素的位置
ind=find(x,2)返回前两个不为0值得元素位置
如果X是一个矩阵,要用矩阵表示返回结果,不然返回就是一个列向量。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17>> clear >> A=[0 0 0;0 1 0;0 0 0] A = 0 0 0 0 1 0 0 0 0 >> find(A) ans = 5 >>
16.matlab中矩阵和常数大小比较:
大于>,小于<,等于==,赋值=,返回值用0和1作为逻辑数比较。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20>> A A = 0 0 0 0 1 0 0 0 0 >> A>0 ans = 3×3 logical 数组 0 0 0 0 1 0 0 0 0 >>
17.判断语句:if else elseif end ,注意if 那一行不加冒号,最后一定要用end结束
1
2
3
4
5
6
7
8
9
10
11clear;clc A=input('数学期末成绩:'); if A>85 disp("非常优秀"); elseif A>60 disp("你及格了"); else disp("你挂科了"); end
写在最后:很开心第一篇博客有1000+阅读量,这给我得更新很大动力。目前我还在认真学习,写博客真的可以很好的检验我的学习情况以及可以更好的复习。预告下篇博客会是数学建模中的层次分析法,有兴趣的读者请耐心等待,谢谢大家捧场。
最后
以上就是幽默火车最近收集整理的关于Matlab的基本语法和常用函数总结Matlab基本语法的全部内容,更多相关Matlab内容请搜索靠谱客的其他文章。
发表评论 取消回复