前言
数学建模对matlab水平的要求
- 了解matlab的基本用法,如常用命令、脚本结构、矩阵的基本操作、绘图等;
- 熟悉matlab的程序结构,能创建和引用函数;
- 熟悉常见模型的求解算法和套路;
- 自主编程,能够建立和求解没有套路的数学模型
如何提高matlab建模水平
- 了解常见的模型和求解方法;
- 注意积累和总结常用方法的程序
运算符
- 四则(加减乘除):+ - * /
- 左除:
- 幂:^
- 转置(行向量转列向量、复数共轭转置等):'
- 点运算:.
1、常用函数
- sqrt(x) # 开平方
- abs(x) # 求绝对值
- exp(x) # ex
- round(x) # 取整
- syms x # 定义x为符号变量
- linspace(x,y,个数) # 生成列表,
- one(行数,值) # 创建一个列向量
- size(数组,x) # 可求矩阵行数(x=1)或列数(x=2)
- x是一个横向量,x'是x的列向量
- 多项式回归:polyfit
2、构造数组
- 直接构造,用空格或逗号间隔数组元素:a=[1,2,3,4,5]
- 用增量法构造:(first : end) 或(first : step : end)
- linspace()函数构造:x=linspace(first , end , num)
3、构造矩阵
- 简单直接构造:row=[e1,e2,e3] ; A = [row1 ; row2 ; row3] 例:A=[2 4 1 ; 4 5 2 ; 7 2 1]
- 构造特殊矩阵
- ones(row,column) # 创建一个所有元素都为1的元素
- 例:传递一个参数,即为创建行列数一样、元素全为1的矩阵:
- 例: 传递两个参数,即为创建行数为第一个参数、列数为第二个参数、元素全为1的矩阵:
- zeros # 创建一个所有元素都为0的元素,用法参考ones()函数
- eye # 创建对角元素为1,其他元素为0的矩阵
- rand # 创建一个矩阵或数组,其中的元素服从均匀分布rand(5)*20
- randn # 创建一个矩阵或数组,其中的元素服从正态分布
- ones(row,column) # 创建一个所有元素都为1的元素
-
-
- diag # 创建对角矩阵
-
3、聚合矩阵
- 水平聚合 C=[A , B]
- 垂直聚合 C=[A ; B]
4、获取矩阵元素
A=[2,3,4 ; 5,6,7 ; 8,9,10]
- 取单个元素:A(3,1)
- 取多个元素:A(:,2),A(3,:)
- 获取所有元素:A(:)
5、获取与矩阵有关信息
- length #返回最长维长度
- ndims #返回维数
- numel #返回元素个数
- size #返回每一维的长度[rows cols]=size(A)
6、矩阵的基本运算