前言
该博客仅针对小白进行学习MATLAB!!!!!
一、变量
1.1变量的命名
- 变量名必须以字母开头,之后可以是任意的字母、数字或下划线;
- 变量名区分字母的大小写;
- 变量名一般不超过63个字符;
- 不能定义与MATLAB关键词同名的变量(if或end)。要获取关键字的完整列表,需要在命令行输入iskeyword并运行;
2.2常见的变量
特殊变量 | 描述 |
ans | 系统默认的用于保存运算结果的变量名 |
pi | 圆周率 |
inf/-inf | 无穷大和负无穷大,注意1/0 =inf |
NaN | 不定值或缺失值。比如计算o/o或0*inf会返回NaN |
i和j | 复数中的虚数单位 |
eps | 浮点相对精度 |
2.3数据的显示格式
- 临时更改
使用format命令进行更改,在运行代码前,在命令行窗口输入format long g,这样就可以将MATLAB的显示设为长格式。
二、基本运算
2.1加减乘除
a=1+2 %加法
b=3-2 %减法
c=4*8 %乘法
d=7/3 %除法
e=4^6 %指数
注意:不同的运算符的优先级不一样,+- < */ <^,可以使用括号来改变优先级。
2.2数值运算的函数
函数名 | 功能 | 计算结果 | |
abs | 求绝对值,也可以用来计算复数的模长 | abs (1.5) abs(-1.5) abs(3+4i) | %5 %5 %5 |
floor | 朝负无穷大四舍五入 | floor(1.1) floor(1.9) flo(-1.1) floor(-1.9) | %1 %1 %-2 %-2 |
fix | 朝零四舍五入(相当于删除小数部分,将其截断为整数) | fix(1.1) fix(1.9) fix(-1.1) fix(-1.9) | %1 %1 %-1 %-1 |
ceil | 朝正无穷大四舍五入 | ceil(1.1) ceil(1.9) ceil(-1.1) ceil(-1.9) | %2 %2 %-1 %-1 |
round | 真正意义上的四舍五入 round函数还有第二种用法,它可以输入第二个参数; round(X,N)表示将X在第N位四舍五入,分三种情况: 1.N>0,舍入小数点右侧的第N位数 2.N=0,保留整数 3.N<0,舍入小数点左侧的第N位数 | round(1.1) round(1.9) round(-1.1) round(1.5)round(3.1415926,5) round(3.1415926,0) round(85632.232,-2) | %1 %2 %-1.1 %2 %3.14159 %3 %85600 |
mod | mod(a,m)可以计算a除以m后的余数, | mod(11,3) mod(9,3) | %2 %0 |
sqrt | sqrt(a)可用于计算a的平方根 | sqrt(9) format long g sqrt(2) sqrt(-4) | %3 %1.41421356237395 %2i |
exp | exp函数可以计算以自然常数e为底的指数 | exp(1) exp(2) exp(3) | %2.7183 %7.3891 %2.2026e+04 |
log | log(X)用来计算以自然常数为底数的对数 | log(2) log(3) | %0.6931 %1.0986 |
log2/log3 | 分别用来计算以2和10为底的对数 | log2(4) log3(27) | %2 %3 |
此外,还有各种三角函数,我们可以通过MATLAB官网的帮助中心进行搜索,找到各种三角函数的使用方法。(官网地址:https://ww2.mathworks.cn/help/matlab/trigonometry.html)
2.3注意事项
- MATLAB的乘号不可忽略。例如计算sin(2Π)时应该写成sin(2*Π);
- 在变量命名的时候,不要将变量命名为函数的名称;
三、向量
3.1向量的创建
3.1.1直接输入法
向量元素需要用[ ]括起来,若元素之间使用空格或者逗号分隔,则创建的是行向量;若用分号或者回车键分隔,则创建的是列向量。
A=[1 2 3] %A是行向量
B=[1;2;3] %B是列向量
a=[1,2,3] %a是行向量
b=[1 %b是列向量
2
3]
3.1.2冒号法
利用A:step:B创建一个行向量。其中A是起始值,B是终止值。
代码 | 结果相应解释 |
1:2:7 | [1 3 5 7] %每次增加2,直到最后为7 |
1:2:8 | [1 3 5 7] %每次增加2,最后为7,如果再增加2,结果为9,比8大,所以到7就停止 |
5:2:1 | 空的1×0 double行向量 |
1:0:2 | 空的1×0 double 行向量 |
3.1.3利用MATLAB函数进行创建‘
本文主要介绍两个函数:linspace和logspace,它们分别用来创建等差数列和等比数列。
(1)linspace
- 用法一
linspacce(a,b):该命令用来创建一个行向量,向量中第一个元素是a,最后一个元素是b,形成一个总数为100个元素的行向量;
- 用法二
linspace(a,b,n):该命令创建一个行向量,向量中的第一个元素是啊,最后一个元素是b,形成一个总数为n个元素的行向量;
(2)logspace
- 用法一
logspace(a,b):创建一个行向量,其第一个元素为,最后一个元素是,形成总数为50个元素的等比数列向量;
- 用法二
logspace(a,b,n):创建一个行向量,第一个元素为,最后一个元素是,形成总数为n个元素的等比数列向量;
3.2向量元素的引用
3.2.1单个元素的引用
只需要利用a(ind)命令,小括号中的ind就是你要提取的对应元素的索引。
3.2.2多个元素的引用
类似地,我们可以利用向量的索引来同时提取多个位置的元素,这个时候只需要将ind设置成一个向量,ind中放入我们想要提取的元素的索引,然后使用a(ind)命令即可。
3.2.3使用end索引
- a(5:end):提取第五个元素一直到最后一个元素;
- a(2:end-2):提取第五个元素一直到倒数第三个元素;
3.3向量元素的修改和删除
3.3.1向量元素的修改
a=[2 4 8 16 32 64 128 256 512 1024]
a(1)=4 %把第一个位置的元素换为4
a=[4 4 8 16 32 64 128 256 512 1024]
a([1,3])=[50 60] %把第1,3位置的元素换为50,60
a(2:4)=100 %把第2到4位的元素换成100
a(1,3)=20 %替换一行三列的元素为20
a(16)=10000 %自动拓展向量大小
3.2.2向量元素的删除
基于以上的说明,只需要把右侧变成空向量[ ],则表示删除对应位置的元素。