- 1、本文档共102页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]第2课符号计算绘图和simulink仿真
第4章 MATLAB符号计算 1.符号计算基础 2.符号微积分 3. 级 数 4.符号方程求解 5.积分变换 4.1符号计算基础 4.1.1符号对象的建立 1.创建符号变量 MATLAB提供了两个建立符号对象的函数:sym和syms,两个函数的用法不同。 (1) sym函数 sym函数用来建立单个符号量,一般调用格式为: 符号量名=sym(符号字符串) 该函数可以建立一个符号量,符号字符串可以是常量、变量、 函数或表达式。 (2) syms函数 MATLAB提供了另一个函数syms,一次可以定义多个符号 变量。syms函数的一般调用格式为: syms 符号变量名1 符号变量名2 … 符号变量名n 用这种格式定义符号变量时不要在变量名上加字符串 分界符(′),变量间用空格而不要用逗号分隔。 2.建立符号表达式和符号矩阵 建立符号表达式有以下2种方法: (1)用sym函数建立符号表达式。 (2) 使用已经定义的符号变量组成符号表达式。 符号表达式的因式分解与展开 MATLAB提供了符号表达式的因式分解与展开的函 数,函数的调用格式为: factor(f):对符号表达式f分解因式。 expand(f):对符号表达式f进行展开。 collect(f):对符号表达式f合并同类项。 collect(f,v):对符号表达式f按变量v合并同类项。 符号矩阵也是一种符号表达式,所以前面介绍的 符号表达式运算都可以在矩阵意义下进行。但应注意 这些函数作用于符号矩阵时,是分别作用于矩阵的每 一个元素。 由于符号矩阵是一个矩阵,所以符号矩阵还能进 行有关矩阵的运算。MATLAB还有一些专用于符号 矩阵的函数,这些函数作用于单个的数据无意义。 例如 transpose(s):返回符号矩阵s的转置矩阵。 s:返回符号矩阵s的共轭转置矩阵。 det(s):返回s矩阵的行列式值。 其实,曾介绍过的许多应用于数值矩阵的函数,如 diag、triu、tril、inv、det、rank、eig等,也可直接 应用于符号矩阵。 符号表达式与数值表达式之间的转换 利用函数sym可以将数值表达式变换成它的符号表达式。 函数numeric或eval可以将符号表达式变换成数值表达式。 符号表达式中变量的确定 MATLAB中的符号可以表示符号变量和符号常量。 findsym可以帮助用户查找一个符号表达式中的的 符号变量。该函数的调用格式为: findsym(s,n) 函数返回符号表达式s中的n个符号变量,若没有指定n, 则返回s中的全部符号变量。 仅作了解。 4.2.1符号函数的极限 limit函数的调用格式为: limit(f,x,a):求符号函数f(x)的极限值。即计算当变量x趋近于常数a时,f(x)函数的极限值。 注:其中a可以为一个确定的数,也可以为无穷大。在应用 时,先用syms命令把x声明为符号变量 (2) limit(f,a):求符号函数f(x)的极限值。由于没有指定 符号函数f(x)的自变量,则使用该格式时,符号函数f(x) 的变量为函数findsym(f)确定的默认自变量,即变量x趋 近于a。 (3) limit(f):求符号函数f(x)的极限值。符号函数f(x)的变量为函数findsym(f)确定的默认变量;没有指定变量的目标值时,系统默认变量趋近于0,即a=0的情况。 (4) limit(f,x,a,right):求符号函数f的极限值。right表示变量x从右边趋近于a。 (5) limit(f,x,a,‘left’):求符号函数f的极限值。‘left’表示变量x从左边趋近于a。 例 求下列极限。 极限1: syms a m x; f=(x*(exp(sin(x))+1)-2*(exp(tan(x))-1))/(x+a); limit(f,x,a) ans = (1/2*a*exp(sin(a))+1/2*a-exp(tan(a))+1)/a 极限2: syms x t; limit((1+2*t/x)^(3*x),x,inf) ans = exp(6*t) 极限3: syms x; f=x*(sqrt(x^2+1)-x); limit(f,x,inf,left) ans = 1/2 极限4: syms x; f=(sqrt(x)-sqrt(2)-sqrt(x-2))/sqrt(x*x-4); limit(f,x,2,right) ans = -1/2 4.2.2 符号函数的微分 diff函数用于对符号表达式求微分(导数)。该函数 的一般调用格式为: diff(f):没有指定变量和导数阶数,则系统按findsym 函数指示的默认变量对符号表达式f求一阶导数。 diff(f,
文档评论(0)