menu DizzyK
MATLAB:面向建模的入门(未完结)
153 浏览 | 2020-08-24 | 分类:MATLAB,编程基础 | 标签:

MATLAB:面向建模的入门(未完结)

DizzyK


1. 基本操作及运算

  • 变量赋值
    一般形式: 变量 = 表达式(数)

a = [1,2,3 ; 4 5 6 ; 7 8 9 ] 矩阵形式赋值.
a = 1:2:10 固定步长的矩阵.
zeros(3,2) 三行两列的全零矩阵.
who 检查工作空间的变量
whos 检查存于工作空间变量的详细资料

特别的ans是默认赋值变量
i、j代表虚数单位
pi代表圆周率
NaN代表NULL

  • picture数据类型

    1. int8|uint8 带符号|不带符号8位整数
    2. single|double 单精度(4位)|双精度(8位)浮点数
    3. i|j 复数的虚数部分(默认双精度)
  • 变量储存

    • save data a x
    • load data

2. 回顾线性代数

用逆矩阵解线性方程组


A = [1,2,3;4,5,6;7,8,9]
B = [5;-2;6]
X = inv(A)*B
或者X = A\B

求矩阵范数

x = [2,0,1;-1,1,0;-3,3,0]
n = norm(x)   %第二类范数
n = norm(x,1)   %第一类范数

求矩阵条件数


cond(A,1/2/inf) %计算A的1/2/无限大下的条件数

求矩阵特征值(向量)


E = eig(A) 产生A的全部特征值并产生特征向量
[X,D] = eig(A)产生对角阵D并产生矩阵X(X各列是相应特征向量)

3. 常用函数及示例

数学函数

  1. norm 范数

  2. det 行列式

  3. inv 方阵的逆矩阵

  4. size 矩阵的阶数

  5. rank 秩

  6. trace 迹

  7. eig 特征值和特征向量

  8. ^ 乘方运算

  9. sqrtm 开方运算

  10. expm 指数运算

  11. logm 对数运算

  12. real 求复数实部

  13. imag 求复数虚部

  14. sin(d) 三角函数(rad)

  15. rem 取余数

  16. isprime 取范围内质数

  17. 点运算

    1. .*.\./.^(两个同形矩阵相对应元素相运算)
  18. power(a,b) a的b次方

  19. rem(a,b) a mod b

  20. num2cell 将一个数转化为向量

其他函数

  1. format 使输出格式变为小数点后15位|标准位数(4位)
  2. fix | floor | ceil | round 舍尾 | 向下 | 向上 | 四舍五入
  3. abs 求实数绝对值|复数模|ASCII
  4. find 输出向量内满足条件的所有位数
  5. linespace(a,b,n) a到b范围内取六个数组成一个向量
  6. reshape(x,a,b) 将x集合转换成a行b列的矩阵
  7. eval 字符串转向量
  8. char ascii转字符串
  9. nargin 函数接收到的参数数
  10. global 定义全局变量

4. 矩阵操作及应用

A = [1,2,3;4,5,6]
A(4,5) = 10

speye(m,n) 返回一个mxn的稀疏存储单位矩阵

  1. magic 产生一个魔方矩阵(幻方)
  2. vander 产生一个范德蒙矩阵
  3. hilb 产生一个希尔伯特矩阵
  4. compan 产生一个伴随矩阵
  5. diag(a,k) 提取矩阵a的第k条对角阵
  6. tril(u) 产生下(上)三角矩阵
  7. rot90(A,k) 使A矩阵逆时针方向旋转k个90度(默认为1)
  8. fliplr(A) 令A矩阵左右倒置
  9. det(A) 求A对应行列式的值
  10. rank(A) 求A的秩
  11. sparse 产生稀疏矩阵
  12. spconvert 同上
  13. spdiags(A) 同上

matlab编程

基本函数

  1. input() 获取输入
  2. disp() 输出
  3. pause(a) 暂停a秒

选择结构

  • if语句(参考python的if)
if 条件1
    语句组1
elseif 条件2
    语句组2
else
    语句组3
end     %特别的,条件结果为矩阵时,若结果非空且不包含0元素,则返回1
  • switch语句(参考C的switch)
switch fix(a)
    case 1
        语句组1
    case {2,3,4}
        语句组2
    otherwise
        语句组3
end
  • for语句
for k = 向量1
    语句1
end
  • while语句
while 条件1
    语句组1
end

matlab结构体

matlab作图

二维曲线

  1. plot函数(绘制直线和简单曲线)
    1. plot(x) 当x 为一向量时,以x 元素的值为纵坐标,x 的序号为横坐标值绘制曲线。当x 为一实矩阵时,则以其序号为横坐标,按列绘制每列元素值相对于其序号的曲线,当x 为m× n 矩阵时,就有n 条曲线
    2. plot(x,y) 以x 元素为横坐标值,y 元素为纵坐标值绘制曲线
    3. plot(x,y1,x,y2,…) 以公共的x 元素为横坐标值,以y1,y2,… 元素为纵坐标值绘制多条曲线
  2. fplot(绘制数学函数)
    1. 其调用格式为: fplot(fun,lims)其中fun 就是所要绘制的函数,可以是定义函数的M 文件名,也可以是以x 为变量的可计算字符串,lims=[XMIN XMAX YMIN YMAX]限定了x,y 轴上的绘图空间
  3. ezplot(绘制隐函数)
    1. 它无需数据准备,直接画出函数图形,基本调用格式为ezplot(f),其中f 是字符串或代表数学函数的符号表达式,只有一个符号变量

图形辅助操作函数

  1. title函数(文本均支持LaTeX格式)
    1. 出现在图形标题处
  2. xlabel和ylabel函数
    1. x轴y轴说明范围
  3. text和gtext函数
    1. text(x,y,说明)
    2. gtext(说明)
  4. legend函数
    1. legend(依次标注)
  5. axis函数
  6. box函数
    1. box on 添加网格和边框
    2. box off 关闭网格和边框
    3. box
  7. subplot函数
    1. 分割窗口
知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议

发表评论

email
web

全部评论 (暂无评论)

info 还没有任何评论,你来说两句呐!