MATLAB系统环境
...为续行符,将下一行视为一行
先创立当前文件夹再 cd
MATLAB搜索顺序为 变量>内部函数>程序文件 这意味着,同名的变量相对于内部函数会优先,所以尽量不要同名
先当前文件再搜搜索路径设置的文件
MATLAB数值数据
整型
uint8函数将数值数据转换为无符号8位整数 0~255
int8函数将数值数据转换为带符号8位整数 -128~127 超过127则为127
浮点型
浮点型数据分为单精度型和双精度类型,单精度型实数在内存中占用4个字节,而双精度型实数在内存中占用8个字节,所以双精度型的数据精度更高。MATLAB数值数据默认双精度型
single函数:将其他类型的数据转换为单精度型
double函数:将其他类型的数据转换为双精度型
复型
复型数据包括实部和虚部两个部分,实部和虚部默认为双精度型,虚数单位用i或j来表示。
real函数:求复数的实部
imag函数:求复数的虚部
format
命令只影响数据输出格式,而不影响数据的计算和存储。
函数的调用格式为:
函数名(函数自变量的值)
函数的自变量规定为矩阵变量,也可以是标量。
函数在运算时是将函数逐项作用于矩阵的每个元素上,所以最后运算的结果就是一个与自变量同
型的矩阵。
三角函数有以弧度为单位的函数和以角度为单位的函数,
如果是以角度为单位的函数就在函数名后面加“d”,以示区别。sin sind
abs函数可以求实数的绝对值、复数的模、字符串的ASCII码值。
round函数按照四舍五入的规则取整。 round(4.7) 5
ceil函数是向上取整,取大于等于这个数的第一个整数。 ceil(-3.8) -3
floor函数是向下取整,取小于等于这个数的第一个整数。floor(3.6) 3
fix函数是固定取靠近0的那个整数,即舍去小数取整。fix(-3.2) -3
MATLAB提供了一个判断n是否素数的函数
isprime(n) ,当n是素数时返回1,否则返回0。
k=find(X)返回数组X中非零元素的位置
变量及其操作
变量本质上讲是内存单元的一个抽象。
在MATLAB中,变量名是以字母开头,后接字母、数字或下画线的字符序列,最多63个字符。
预定义变量是由系统本身定义的变量。
ans是默认赋值变量
i和j代表虚数单位
pi代表圆周率
NaN代表非数
who whos显示名称 大小 数据类型等
内存变量文件
用于保存MATLAB工作区变量的文件叫做内存变量文件,其扩展名为.mat,t也叫MAT文件。
save命令:创建内存变量文件。save mydata a x
load命令:装入内存变量文件。load mydata
MATLAB矩阵的表示
矩阵的建立
(1)利用直接输入法建立矩阵:将矩阵的元素用中括号括起来,按矩阵行的顺序输入各元素,
同一行的各元素之间用逗号或空格分隔,不同行的元素之间用分号分隔。
(2)利用已建好的矩阵建立更大的矩阵:一个大矩阵可以由已经建立好的小矩阵拼接而成。
(3)复数矩阵
冒号表达式 产生行向量
e1:e2:e3 对应 初始值:步长:终止值
e2为1则可以省略
linspace产生行向量 linspace(a,b,n) 对应(第一个元素,最后一个元素,总数) n省略则为100
结构矩阵
单元矩阵
矩阵元素的引用
可以自动扩展
(2)通过序号来引用
在MATLAB中, 矩阵元素按列存储,即首先存储矩阵的第一-列元素, 然后存储第二列元素,.,一直到矩阵的最后一列元素 。
矩阵元素的序号就是矩阵元素在内存中的排列顺序。
size函数获取行列数
子矩阵
end运算符
利用空矩阵删除矩阵元素
改变矩阵的形状
reshape(A,m,n):在矩阵总元素保持不变的前提下,将矩阵A重新排成mX n的二维矩阵。
reshape函数只是改变原矩阵的行数和列数,但并不改变原矩阵元素个数及其存储顺序。
关键即是存储顺序不变
MATLAB基本运算
算术运算
加减运算
若两矩阵同型,则运算时两矩阵的相应元素相加减。
若两矩阵不同型,则MATLAB将给出错误信息。
一个标量也可以和矩阵进行加减运算,这时把标量和矩阵的每一个元素进行加减运算。
乘法运算
矩阵A和B进行乘法运算,要求A的列数与B的行数相等,此时则称A、B矩阵是可乘的,或称A和B两矩阵维数和大小相容。
如果两者的维数或大小不相容,则将给出错误信息,提示用户两个矩阵是不可乘的。
除法运算
在MATLAB中,有两种矩阵除法运算:右除/和左除\。
如果A矩阵是非奇异方阵,则B/A等效于B*inv(A),
A\B等效于inv(A)*B。inv(A)为A的逆
乘方运算
点运算
点运算符 .* ./ .\ .^
两矩阵进行点运算是指它们的对应元素进行相关运算,要求两矩阵同型。
关系运算
当参与比较的量是两个同型的矩阵时,比较是对两矩阵相同位置的元素按标量关系运算规则逐个进行,最终的关系运算的结果是一个与原矩阵同型的矩阵,它的元素由0或1组成。
当参与比较的一个是标量,而另一个是矩阵时,则把标量与矩阵的每一个 元素按标量关系运算规则逐个比较,最终的关系运算的结果是一个与原矩阵同型的矩阵,它的元素由0或1组成。
rem 除法取余
逻辑运算
在算术运算、关系运算和逻辑运算中,
算术运算的优先级最高,逻辑运算优先级最低,
但逻辑非运算是单目运算,它的优先级比双目运算要高。
若参与逻辑运算的是两个同型矩阵,那么将对矩阵相同位置上的元素按标量规则逐个进行运算,最终运算结果是一个与原矩阵同型的矩阵,其元素由1或0组成。
若参与逻辑运算的一个是标量,一个是矩阵,那么将在标量与矩阵中的每个元素之间按标量规则逐个进行运算,最终运算结果是一个与原矩阵同型的矩阵,其元素由1或0组成。
字符串处理
数值型数据
字符型数据(字符串数据)
字符串的操作
eval 把参数字符串的内容作为MATLAB命令来执行