200 likes | 306 Views
Matlab 数学软件的使用. 广东机电职业技术学院 尹方平. Matlab 的使用. 基本运算 控制流语句 函数与文件 绘图 解方程 非线性数据(曲线)拟合 建立模型. 基本运算. 1. 向量矩阵的运算 1 )行向量 例: >> x=[1 0 2] 2 )列向量 例: >> x=[3 0 1] ‘ 3) 矩阵 例: >> A=[1 2 3;4 5 6;7 8 9] 4 )转置 例: >>B=A'. 基本运算. 5 )加减法
E N D
Matlab 数学软件的使用 广东机电职业技术学院 尹方平
Matlab的使用 • 基本运算 • 控制流语句 • 函数与文件 • 绘图 • 解方程 • 非线性数据(曲线)拟合 • 建立模型
基本运算 • 1. 向量矩阵的运算 • 1)行向量 例:>> x=[1 0 2] • 2)列向量 例:>> x=[3 0 1]‘ • 3)矩阵 例:>> A=[1 2 3;4 5 6;7 8 9] • 4)转置 例:>>B=A'
基本运算 • 5)加减法 例:>> C=A+B A+2 • 6)乘法 例:>> D=A*B 2*A 点乘:C=A.*B 表示 • 7)矩阵求逆 例:>>inv( A) • 8)除法 例:>> b=[1 1 1]‘ >> x=A\b
基本运算 • 2. 数组的运算 • 1)数组的加减法 例:>> x=[1 2 3] >> y=[4 5 6] >> x+y • 2)数组的乘法 例:>> z=x.*y • 3)数组除法 例:>> z=x.\y 左除表示 >> z=x./y 右除表示
基本运算 • 3. 关系运算 • < —小于 <= 小于等于 > —大于 >= 大于等于 == 等于 ~=不等于 • 如果关系成立则返回值为1;否则返回为0。 例 >> a=[-1 2 4;5 4 -8] >> c=a>0
基本运算 • 4. 基本函数 • 1)基本初等函数 sin - 正弦 cos -余弦 tan -正切 log - 对数 abs - 绝对值 sqrt - 开方 exp - 指数 • 2)与矩阵有关的常用函数 求模 例:>> norm(A) 求矩阵的置 例:>>rank(A) 生成零矩阵或零向量 例:>>zeros(1,3)生成一个1行3列的零向量 生成单位矩阵或单位向量 例:>>eye(1,3)生成一个1行3列的单位向量 求矩阵大小(维数) 例:>>size(A)
控制流语句 • 1. for 循环语句 • 格式: for 循环变量 语句 end • 例: for i=1:5 for j=1:5 a(i,j)=1/(i+j-1); end end
控制流语句 • 2. while 循环语句 • 格式: while 条件 语句 end • 例: f=[1 1]; i=1; while f(i)+f(i+1)<1000 f(i+2)=f(i)+f(i+1); i=i+1; end
控制流语句 • 3. if 语句 • 格式: if 条件 if 条件 if 条件1 语句 语句1 语句1 end else elseif 条件2 语句2 语句2 end else 语句3 end
函数与文件 • 1. M 文件 在Matlab中可以将一条条的命令编成一个M文件一起去执行。 例:fibon • 2. 函数文件 格式: function 因变量 = 函数(自变量) 语句 练习
绘图 • 画函数的曲线和散点图 格式: plot(x,y,s) x是横坐标,y是纵坐标,s是可选参数。 例:在[0,5]上画出 的曲线 (plotsin) • 直方图 bar函数 例:在[-5,5]上画出 的直方图 x=-5:0.05:5; bar(x,exp(-x.*x)); 练习
解方程 • 1. 解析解 命令:dsolve 例:求 的通解 >> dsolve('Du=1+u-t','t') 例:求 的通解 dsolve('D2y+4*Dy+12*y=0','y(0)=0,Dy(0)=5','x')
解方程 • 2. 数值解 命令:ode45,ode23,ode113,ode15s,ode23s 例:求 的通解 >> dsolve('Du=1+u-t','t') 例:求 的通解 dsolve('D2y+4*Dy+12*y=0','y(0)=0,Dy(0)=5','x') 练习
多项式(曲线)拟合 • 多项式曲线拟合是已知输入向量X和输出向量Y,今进行曲线拟合,求拟合出的曲线方程: • 格式 [P,S] = POLYFIT(X,Y,N) • 参数说明: X为输入向量;Y为输出向量;N为拟合曲线的阶数 P为拟合曲线的系数,S为拟合曲线的结构。 例:nihe 练习:自己构造2个1×10的随机数组,进行3次多项式拟合 (nihe2)
练习 • 1. 编写一个函数,对于给定的一个多维数组成数组按从小到大进行排序得到一个新数组。 (recomposite) 返回 • 2. 在[-3,3]上画出 的曲线 (lianxi2) 返回 • 3. 求微分方程组的特解 (lianxi3) 返回