MATLAB基础

常用特殊变量
ans:运算结果的默认变量名
pi:圆周率Π
eps:浮点数的相对误差
inf:无穷大
NaN:不定值
now:按照连续的日期数值格式获取当前系统时间
tic:秒表计时开始
toc:秒表计时停止
i或j:虚数单位
date:日历
clock:时钟
etime:运行时间
realmin         :最小符点数 2^-1022
realmax         :最大浮点数2^1023
—————————————————————————————————————————————————————————————————————
整数类型
    MATLAB中的整数类型
整数类型            转换函数
有符号8位整数        int8
无符号8位整数        uint8
有符号16位整数        int16
无符号16位整数        uint16
有符号32位整数        int32
无符号32位整数        uint32
有符号64位整数        int64
无符号64位整数        uint64
在转换中,默认将带转换的数值转换为最近的整数,若小数部分正好为0.5,那么转换后的结果是绝对值较大的那个整数。

    MATLAB中的取整函数
round(a)            向最接近的整数取整,小数部分是0.5时向绝对值大的方向取整
fix(a)            向0方向取整
floor(a)            向不大于a的最接近整数取整
ceil(a)            向不小于a的最接近整数取整
双精度浮点型与其他数据类型运算时,结果就为其他数据类型。
两种不同的整数类型之间不能进行数学运算,除非进行强制转换。
————————————————————————————————————————————————————————————————————
浮点数类型
    MATLAB中的浮点数类型
浮点类型                转换函数
双精度(64)            double
单精度(32)            single

双精度浮点型与其他数据类型运算时,结果就为其他数据类型。
单精度的返回结果都是单精度。
单精度浮点型不能与整数型进行运算
————————————————————————————————————————————————————————————————————
复数
默认用字符 i 作为虚部标识,可以直接输入或者利用 complex 函数。
    MATLAB复数相关运算函数
函数                说明
real(z)                返回复数z的实部
imag(z)                返回复数z的虚部
abs(z)                返回复数z的幅度
angle(z)                返回复数z的幅角
conj(z)                返回复数z的共轭复数
complex(a,b)            以a为实部,b为虚部创建复数
————————————————————————————————————————————————————————————————————
rand()函数:产生 0~1间均匀分布的随机矩阵
rand(n):产生维数为n*n的0~1间均匀分布的随机矩阵
rand(m,n):产生维数为m*n的0~1间均匀分布的随机矩阵

均匀分布(矩形分布)U(a,b),a和b时数轴上的最小值和最大值
概率密度函数是f(x) = 1/b-a     a<x<b
期望:(a+b)/2    方差:((b-a)^2)/12
————————————————————————————————————————————————————————————————————
%:注释语句
'':    字符串标识号
————————————————————————————————————————————————————————————————————
format short     :小数点后四位
format  long       :小数点后16位
format  bank      :小数点后两位
format  short  e     :小数点后四位加上指数
format  long    e      :小数点后十六位加上指数
format  rat       :最接近结果的比例式
————————————————————————————————————————————————————————————————————
变量名称:由英文,数字,下划线组成,第一个字符必须是英文,不可以包含空格或者标点符号
who          :显示变量
whos          :显示具体变量内存空间
clear          :清除全部变量
clear + 变量名称      :清楚特定变量
clc            : 清楚命令窗口内容
'         :    字符串标识号
————————————————————————————————————————————————————————————————————
运算符
矩阵算术运算符
+    加    C=A+B    矩阵加法法则
-    减    C=A-B    矩阵减法法则
*    乘    C=A*B    矩阵乘法发则
/    右除    C=A/B    定义为X*B=A的解
\    左除    C=A\B    定义为A*X=B的解
^    乘幂    C=A^B    A,B其中一个为标量时定义
'    共轭转置    B=A'    B是A的共轭转置矩阵

数组算术运算符(数组内部元素之间的运算)
.*    数组乘    C=A.*B
./    数组右除    C=A./B
.\    数组左除    C=A.\B
.^    数组乘幂    C=A.^B
.'    转置    A.'    将数组的行摆放成列,复数元素不做共轭

关系运算符
<    小于
<=    小于等于
>    大于
>=    大于等于
==    恒等于
~=    不等于

逻辑运算符
&    与    
|    或
~    非
&&    先决与
||    先决或
先决与和先决或只针对标量使用,运算符左边为1时,在继续做与运算,为0时,在继续做或运算
————————————————————————————————————————————————————————————————————————————————
运算符优先级
最高        ' ,    ^    ,     .'    ,    .^
        ~
        *  /   \   .*   ./    .\
        +  -  : 
        < <= > >=  == ~=
        &
        |
        &&
最低        ||
———————————————————————————————————————————————————————————————————————————————— 
exp(a)         :e^a
sqrt         :平方根
log(x)         :x的自然对数
log10(x)     :以10为底的对数
[ ; ; ;]         :不同行由;或回车分隔
[      ]或[, , ,]     :行向量
'                                 :转置
.'            :转置复数矩阵,而不计算他的共轭值
x = [xi : q: xe]     :,差值为q为一个实数。创建一个首元素为xi,末元素为xe的向量x(q为正负代表递增和递减)
向量的乘方     :必须在幂运算符(^)前加上句号(.)
linspace(a, b)     :创建了a、b之间含有100个等差元素的向量,而linspace(a, b, n)创建了a、b之间含有n个等差元素的向量
logspace(a, b, n)     :创建了10^a和10^b之间n个对数值等差的向量。
length         :向量中包含的元素个数
max                           :最大值函数
min         :最小值函数
sum         :求和函数
数组相乘,使用数组乘法(.*)
mag        :向量的膜 mag=sqrt(sum)
conj        :复数的共轭复数向量
abs         :绝对值
dot         :数量积(点乘)结果是数
cross        :向量的叉乘 结果是向量
向量v的第i个元素可以用v(i)来引用
v(:)——来引用向量,等于告诉MATLAB列出向量的所有元素
A(4:6)选出第4到第6个元素组成一个新的、含有3个元素的向量
./        :矩阵数组右除
.\        :矩阵数组左除
eye(n)         :n*n的单位矩阵
zeros(n)或zeros(m,n) :创建n*n或m*n的0矩阵
ones(n)或ones(m,n) :创建n*n或m*n的1矩阵
magic:创建魔方矩阵
diag:创建对角矩阵
tril:创建下三角矩阵
triu:创建上三角矩阵
A(m,n)选出第m行n列的元素
A(:,i)选出第i列的元素
A(:,i:j)选出从第i列到第j列之间的所有元素
————————————————————————————————————————————————————————————————————
det()        :计算矩阵A的行列式
求解方程组时,先计算系数矩阵A的行列式,若行列式不为0,解存在。解是列向量X = [x;y;z]使用左除即可得到解
解的结果A\b
————————————————————————————————————————————————————————————————————
rank()        :计算矩阵的秩
求解方程组Ax=b;写出增广矩阵c = [A b];
若rank(A)=rank(Ab)时方程有解,若秩等与n,那么方程组有唯一解;若秩小于n,那么方程组有无数解。
用左除即可得解A\b
————————————————————————————————————————————————————————————————————
trace()                      :矩阵的特征值之和
inv()        :计算逆矩阵
若行列式det() = 0;逆矩阵不存在,该矩阵为奇异矩阵
求解方程组Ax=b,检查A的行列式确保逆矩阵存在,
则解为x = inv(A) * b
pinv()        :计算伪逆矩阵
若行列式等于0,有无数解,可采用左除得到一个解或者采用伪逆矩阵计算
x = pinv(A) * b
[v,D] = eig(A)    :求矩阵A的特征值D;特征向量v
————————————————————————————————————————————————————————————————————
[R,p] = chol(A)    :若A是n阶对称正定矩阵,则R为实数的非奇异上三角矩阵,p=0;若A为非正定矩阵,p为正整数。
[L,U,P] = lu(A)    :高斯消去法分解
[Q,R,E] = qr(A)    :正交分解
[U,S,V] = svd(A)    :奇异值分解
————————————————————————————————————————————————————————————————————
[M,N] = size(A)    :矩阵A的行数为M,列数为N;
length(A)        :返回矩阵A的行数和列数的较大值;
numel(A)        :返回矩阵A的元素的总个数
————————————————————————————————————————————————————————————————————
使用三角函数时,需要将度数转换为弧度,变换公式为:2*pi*(度/360°)
————————————————————————————————————————————————————————————————————
结构数组创建方式:
结构数组名.成员名 = 表达式;
struct('field1','值1',...)
元胞数组创建方式:cell(M,N)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值