120 likes | 305 Views
Matlab 及其应用之四. 符号分析. 主讲人:鲍文 EMAIL:baowen@hcms.hit.edu.cn 首叶: Http: //www.turbo.hit.edu.cn. 前言 1.重要性:用途广泛,代替手工 2.功能:推导公式 3. 基于 maple 的内核. 内容. 符号表达式 符号表达式运算 微分和积分 符号表达式简化和格式化 方程求解 线性代数和矩阵. 一、 符号表达式. 1 产生符号表达式 符号表达式在 MATLAB 内部表示为字符串。很多普通函数可以用作符号计算,如 sin、 diff 等。
E N D
Matlab及其应用之四 符号分析 主讲人:鲍文 EMAIL:baowen@hcms.hit.edu.cn 首叶:Http: //www.turbo.hit.edu.cn
前言 1.重要性:用途广泛,代替手工 2.功能:推导公式 3. 基于maple的内核 内容 • 符号表达式 • 符号表达式运算 • 微分和积分 • 符号表达式简化和格式化 • 方程求解 • 线性代数和矩阵
一、 符号表达式 • 1 产生符号表达式 符号表达式在MATLAB内部表示为字符串。很多普通函数可以用作符号计算,如sin、diff等。 举例:ex41 a使用字符串形式表示符号表达式时,不推荐使用。 b 可使用sym、syms函数建立符号表达式 c 符号常量:符号常量计算:ASCII码值ex43 e 复数形式:i,j f 抽象函数 f(x):用于F,L,Z分析 subs:符号替换 g 符号矩阵
2 符号变量规则 • 当表达式中有多个变量时,只能有一个变量是自变量.选择规则: • 1)缺省变量惟一 • 2)一般选x为自变量 • 3)如有多个小写字母变量,选接近x的字母 • 很多函数可以设定自变量 • 察看自变量:findsym 3 符号函数 • 和一般函数相同定义,注意其中的常量 4表达式绘图 ezplot(f,[a b])
二、表达式运算 • 1、四则运算:同数字运算 • 2、分子分母提取 • 使用numden函数: [n,d]=numden(m); • 提取中,表达式被有理化,转换为简单形式。 • 3、级数累加 symsum • 使用symsum(f,a,b)或symsum(f,’x’,a,b) • 缺省:如果没有给定区间,则为0 ~ x-1
4、符号表达式的简化和格式化 • 变化表达式的表示方法: • 1)合并同类项:collect • 2)嵌套形式:hornor • 3)多项式乘积:factor • 4)对和分配乘积,展开:expand • 简化多项式:simplify, 功能强大 • simple:尝试多种简化方式,找字符最少的 • [a,b]=simple(f); a:简化值 b:方法
三、微分和积分 • 1、微分 • 使用diff函数 • 2、积分 • 积分使用int函数,int(f,’x’,a,b)表示 • 积分有上下限:a,b • 上下限可以使用inf,对矩阵积分实际上对元素积分
3、求极限 例程:d32
四、方程求解 • 1、代数方程 使用solve函数 solve(f,x) 如果f不含等号,则解f=0。 得到数值解:double, numeric 如果是周期方程,只给出解的子集。 解方程组 solve(f1,f2,…fn,’x,y…’)
2、解微分方程 • 1) 求解函数:dsolve • 注意:其中的D表示微分,D2、D3表示二阶、三阶导数。任何D后面跟的是因变量。 • 方程d2y/dx2=0表示为D2y=0; • 可以给定初始条件,如果没有初始条件,解中有系数 • 也可以指定独立变量. • 2)同样使用dsolve函数 • dsolve(f1,f2,….) • 例子:
3、Taylor展开 • 使用taylor函数, • tarlor(f,v):在v点展到第五阶 • tarlor(f,n):展到第n阶
五、线性代数 • Charpoly 特征多项式 eig • determ 矩阵行列式 det • eigensys 特征值和特征向量 • inverse 逆矩阵 inv • jordan 约当标准型 • linsolve 齐次方程解 • transpose 矩阵转置 ‘