版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 matlab 不仅具有数值运算功能,还开发了在matlab环境下实现符号计算的工具包Symbolic Math Toolbox主要内容主要内容7.1 符号计算基础符号计算基础7.2 符号函数及其应用符号函数及其应用7.3 符号积分符号积分7.4 级数级数第第7章章 MATLAB符号计算符号计算o科学计算可分为两类:一类是纯数值的计算,例如求函数的值,以及方程的数值解等等;另一类计算是符号运算,又称代数运算,这是一种智能化的计算,处理的是符号。符号可以代表整数、有理数、实数和复数,也可以代表多项式、函数,还可以代表数学结构,如集合、群的表示等等。我们在数学的教学和研究中进行的数学运算多为符号运
2、算。oMATLAB中的符号数学工具箱(Symbolic Math Toolbox)集成了丰富的符号运算功能。基本的符号数学工具箱包含100多个MATLAB函数,包括的内容有:微积分、线性代数、化简代数表达式、方程求解、特殊的数学函数、变量精度算法和数学变换等等。o工具箱中所有的符号表达式的计算都是在Maple内核下执行的。Maple是一种功能强大、通用的数学和工程软件,是世界上最值得信赖、最完整的数学软件之一。其中的符号运算功能尤为突出。Maple系统最先主要由加拿大的沃特卢大学(University of Waterloo)开发的,后来由瑞士的一个技术部门发展,最终由Waterloo Map
3、le公司商业化运作。什么是符号运算直接对抽象的符号对象进行计算,并将所得结果以标准的符号形式来表示。2.与数值运算的区别 数值运算中必须先对变量赋值,然后才能参与运算。 符号运算无须事先对独立变量赋值,运算结果以标准的符号形式表达。o特点: 运算对象可以是没赋值的符号变量 可以获得任意精度的解oSymbolic Math Toolbox符号运算工具包通过调用Maple软件实现符号计算的。omaple软件主要功能是符号运算, 它占据符号软件的主导地位。7.1 符号计算基础符号计算基础7.1.1 符号对象符号对象1建立符号变量和符号常量建立符号变量和符号常量MATLAB提供了两个建立符号对象的函数
4、:提供了两个建立符号对象的函数:sym和和syms,两个函数的用法不同。两个函数的用法不同。(1) sym函数函数sym函数用来建立单个符号量,一般调用格式为:函数用来建立单个符号量,一般调用格式为:符号量名符号量名=sym(符号字符串符号字符串)该函数可以建立一个符号量,符号字符串可以是常量、该函数可以建立一个符号量,符号字符串可以是常量、变量、函数或表达式。变量、函数或表达式。sym函数还可以定义符号常量,使用符号常量进行代数函数还可以定义符号常量,使用符号常量进行代数运算时和数值常量进行的运算不同。运算时和数值常量进行的运算不同。(2) syms函数函数MATLAB提供了另一个函数提供了
5、另一个函数syms,一次可以定义多个符号,一次可以定义多个符号变量。变量。syms函数的一般调用格式为:函数的一般调用格式为:syms 符号变量名符号变量名1 符号变量名符号变量名2 符号变量名符号变量名n用这种格式定义符号变量时不要在变量名上加字符串分界符用这种格式定义符号变量时不要在变量名上加字符串分界符(),变量间用空格而不要用逗号分隔。,变量间用空格而不要用逗号分隔。ox=sym(x)o syms a b c xof=a*x2+b*x+c2建立符号表达式建立符号表达式含有符号对象的表达式称为符号表达式。建立符号表达式含有符号对象的表达式称为符号表达式。建立符号表达式有以下有以下3种方法
6、:种方法:(1)利用单引号来生成符号表达式。利用单引号来生成符号表达式。z= (1+sqrt(5)/2(2)用用sym函数建立符号表达式。函数建立符号表达式。z=sym(1+sqrt(5)/2)(3) 使用已经定义的符号变量组成符号表达式。使用已经定义的符号变量组成符号表达式。osyms a b c xof=a*x2+b*x+c7.1.2 符号表达式运算符号表达式运算1符号表达式的四则运算符号表达式的四则运算符号表达式的加、减、乘、除运算可分别由函数符号表达式的加、减、乘、除运算可分别由函数symadd、symsub、symmul和和symdiv来实现,来实现,幂运算可以由幂运算可以由symp
7、ow来实现。来实现。of=2*x2+3*x-5og=x2-x+7osymadd(f,g)osymmul(f,g)osymdiv(f,g)2符号表达式的提取分子和分母运算符号表达式的提取分子和分母运算如果符号表达式是一个有理分式或可以展开为有理分式,可如果符号表达式是一个有理分式或可以展开为有理分式,可利用利用numden函数来提取符号表达式中的分子或分母。函数来提取符号表达式中的分子或分母。其一般调用格式为:其一般调用格式为:n,d=numden(s)该函数提取符号表达式该函数提取符号表达式s的分子和分母,分别将它们存放在的分子和分母,分别将它们存放在n与与d中。中。osyms x yof=x
8、/y+y/x;on,d=numden(f)3符号表达式的因式分解与展开符号表达式的因式分解与展开MATLAB提供了符号表达式的因式分解与展开的函数,函提供了符号表达式的因式分解与展开的函数,函数的调用格式为:数的调用格式为:ofactor(s):对符号表达式:对符号表达式s分解因式。分解因式。oexpand(s):对符号表达式:对符号表达式s进行展开。进行展开。ocollect(s):对符号表达式:对符号表达式s合并同类项。合并同类项。collect(s,v):对符号表达式:对符号表达式s按变量按变量v合并同类项。合并同类项。o【例】 对表达式f=a3-1进行因式分解。o输入:of = sym
9、(a3-1);ofactor(f)o结果为:oans = o(a-1)*(a2+a+1)o【例】展开表达式f=(x+1)5和f=sin(x+y)o输入:osyms x yof=(x+1)5;oexpand(f)of=sin(x+y);oexpand(f)o返回结果为:oans =ox5+5*x4+10*x3+10*x2+5*x+1oans =osin(x)*cos(y)+cos(x)*sin(y)o【例】 符号多项式的同类项合并。o输入:of =sym(exp(x)+x)*(x+2)*(y+1);oc1=collect(f)oc2=collect(f, y)oc3=collect(f, exp
10、(x)o返回结果为:oc1 =o(y+1)*x2+(exp(x)+2)*(y+1)*x+2*exp(x)*(y+1)oc2 =o(exp(x)+x)*(x+2)*y+(exp(x)+x)*(x+2)oc3 =o(x+2)*(y+1)*exp(x)+x*(x+2)*(y+1)o我们分别按不同的变量进行同类项合并,得到了不同的结果。4符号表达式的化简符号表达式的化简MATLAB提供的对符号表达式化简的函数有:提供的对符号表达式化简的函数有:osimplify(s):应用函数规则对:应用函数规则对s进行化简。进行化简。osimple(s):调用:调用MATLAB的其他函数对表达式进行综的其他函数对表
11、达式进行综合化简,并显示化简过程。合化简,并显示化简过程。of = sym(sin(x)2+cos(x)2);oS=sym(exp(c*log(sqrt(a+b);osimplify(f)osimplify(S) 5符号表达式与数值表达式之间的转换符号表达式与数值表达式之间的转换利用函数利用函数sym可以将数值表达式变换成它的符号表达式。可以将数值表达式变换成它的符号表达式。sym(1.5)函数函数numeric或或eval可以将符号表达式变换成数值表达式。可以将符号表达式变换成数值表达式。z=(1+sqrt(5)/2numeric(z)7.1.3 符号表达式中变量的确定符号表达式中变量的确定
12、MATLAB中的符号可以表示符号变量和符号常量。中的符号可以表示符号变量和符号常量。findsym可可以帮助用户查找一个符号表达式中的的符号变量。以帮助用户查找一个符号表达式中的的符号变量。该函数的调用格式为:该函数的调用格式为:findsym(s,n)函数返回符号表达式函数返回符号表达式s中的中的n个符号变量,若没有指定个符号变量,若没有指定n,则返,则返回回s中的全部符号变量。中的全部符号变量。例:例:syms x a y z b; s1=3*x+y; findsym(s1)7.1.4 符号矩阵符号矩阵符号矩阵也是一种符号表达式,所以前面介绍的符号表达式符号矩阵也是一种符号表达式,所以前面
13、介绍的符号表达式运算都可以在矩阵意义下进行。但应注意这些函数作用运算都可以在矩阵意义下进行。但应注意这些函数作用于符号矩阵时,是分别作用于矩阵的每一个元素。于符号矩阵时,是分别作用于矩阵的每一个元素。oA=sym(a,b;c,d)syms x y zoB=x+3*x,5*z+6*z;y-y,z/z由于符号矩阵是一个矩阵,所以符号矩阵还能由于符号矩阵是一个矩阵,所以符号矩阵还能进行有关矩阵的运算。进行有关矩阵的运算。transpose(s):返回:返回s矩阵的转置矩阵。矩阵的转置矩阵。determ(s):返回:返回s矩阵的行列式值。矩阵的行列式值。其实,许多应用于数值矩阵的函数,如其实,许多应用
14、于数值矩阵的函数,如diag、triu、tril、inv、det、rank、eig等,也可直等,也可直接应用于符号矩阵。接应用于符号矩阵。7.2 符号函数及其应用符号函数及其应用7.2.1 符号极限符号极限MATLAB中求函数极限的函数是中求函数极限的函数是limit,调用格式为:,调用格式为:olimit(f,x,a):求符号函数:求符号函数f(x)的极限值。即计算当变量的极限值。即计算当变量x趋近于常数趋近于常数a时,时,f(x)函数的极限值。函数的极限值。(2) limit(f,a):求符号函数:求符号函数f(x)的极限值。由于没有指定符的极限值。由于没有指定符号函数号函数f(x)的自变
15、量,则使用该格式时,符号函数的自变量,则使用该格式时,符号函数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从右边趋近
16、于从右边趋近于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(x2+1)-x
17、);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/27.2.2 符号函数求导及其应用符号函数求导及其应用diff函数用于对符号表达式求导数。该函数的一般调用格式为:函数用于对符号表达式求导数。该函数的一般调用格式为:odiff(s):没有指定变量和导数阶数,则系统按:没有指定变量和导数阶数,则系统按findsym函数函数指示的默认变量对符号表达式指示的默认变量对符号表达式s求一阶导数。求一阶导数。odiff(s,v):以:
18、以v为自变量,对符号表达式为自变量,对符号表达式s求一阶导数。求一阶导数。odiff(s,n):按:按findsym函数指示的默认变量对符号表达式函数指示的默认变量对符号表达式s求求n阶导数,阶导数,n为正整数。为正整数。odiff(s,v,n):以:以v为自变量,对符号表达式为自变量,对符号表达式s求求n阶导数。阶导数。o S1 = sym(6*x3-4*x2+b*x-5); oS2 = sym(sin(a); oS3 = sym(1 - t3)/(1 + t4);odiff(S1)oans= o18*x2-8*x+b odiff(S1,2) oans= o36*x-8 odiff(S1,b
19、) oans= ox odiff(S2) oans= ocos(a) 7.3 符号积分符号积分符号积分由函数符号积分由函数int来实现。该函数的一般调用格式为:来实现。该函数的一般调用格式为:oint(s):没有指定积分变量和积分阶数时,系统按:没有指定积分变量和积分阶数时,系统按findsym函数指示的默认变量对被积函数或符号表达式函数指示的默认变量对被积函数或符号表达式s求不定积分。求不定积分。oint(s,v):以:以v为自变量,对被积函数或符号表达式为自变量,对被积函数或符号表达式s求求不定积分。不定积分。int(s,v,a,b):求定积分运算。:求定积分运算。a,b分别表示定积分的下
20、分别表示定积分的下限和上限。该函数求被积函数在区间限和上限。该函数求被积函数在区间a,b上的定积分。上的定积分。o【例6-24】分别计算积分表达式 o依次输入以下语句:osyms x zof=-2*x/(1+x2)2;oint(f)of=x/(1+z2);oint(f)oint(f,z)of=x*log(1+x);oint(f,0,1)dxxx22)1 (2dxzx2)1(dzzx2)1 (10)1log(dxxx7.3.2 积分变换积分变换常见的积分变换有傅立叶变换、拉普拉斯变换和常见的积分变换有傅立叶变换、拉普拉斯变换和Z变换。变换。1傅立叶傅立叶(Fourier)变换变换在在MATLAB
21、中,进行傅立叶变换的函数是:中,进行傅立叶变换的函数是:ofourier(f,x,t):求函数:求函数f(x)的傅立叶像函数的傅立叶像函数F(t)。oifourier(F,t,x):求傅立叶像函数:求傅立叶像函数F(t)的原函数的原函数f(x)。osyms x of = sin(x)*exp(-x2); oF1 = fourier(f) 2拉普拉斯拉普拉斯(Laplace)变换变换在在MATLAB中,进行拉普拉斯变换的函数是:中,进行拉普拉斯变换的函数是:olaplace(fx,x,t):求函数:求函数f(x)的拉普拉斯像函数的拉普拉斯像函数F(t)。oilaplace(Fw,t,x):求拉普
22、拉斯像函数:求拉普拉斯像函数F(t)的原函数的原函数f(x)。osyms x s t vof1= sqrt(t); oL1 = laplace(f) of2 = 1/sqrt(s); oL2 = laplace(f2) 3Z变换变换当函数当函数f(x)呈现为一个离散的数列呈现为一个离散的数列f(n)时,对数列时,对数列f(n)进行进行z变换的变换的MATLAB函数是:函数是:oztrans(fn,n,z):求:求fn的的Z变换像函数变换像函数F(z)。oiztrans(Fz,z,n):求:求Fz的的z变换原函数变换原函数f(n)。osyms a k w x n zof4 = exp(k*n2)
23、*cos(k*n);oZF4 = ztrans(f4,k,x)7.4 级级 数数7.4.1 级数符号求和级数符号求和求无穷级数的和需要符号表达式求和函数求无穷级数的和需要符号表达式求和函数symsum,其调用,其调用格式为:格式为:symsum(s,v,n,m)其中其中s表示一个级数的通项,是一个符号表达式。表示一个级数的通项,是一个符号表达式。v是求和是求和变量,变量,v省略时使用系统的默认变量。省略时使用系统的默认变量。n和和m是求和的开是求和的开始项和末项。始项和末项。o例:s1=1+1/4+1/9+.+1/n2+.on=sym(n);os1=symsum(1/n2, n, 1 ,inf
24、)oS1=1/6*pi27.5 符号方程求解符号方程求解7.5.1 符号代数方程求解符号代数方程求解在在MATLAB中,求解用符号表达式表示的代数方程可由函数中,求解用符号表达式表示的代数方程可由函数solve实现,其调用格式为:实现,其调用格式为:osolve(s):求解符号表达式:求解符号表达式s的代数方程,求解变量为默认的代数方程,求解变量为默认变量。变量。osolve(s,v):求解符号表达式:求解符号表达式s的代数方程,求解变量为的代数方程,求解变量为v。osolve(s1,s2,sn,v1,v2,vn):求解符号表达式:求解符号表达式s1,s2,sn组成的代数方程组,求解变量分别组成的代数方程组,求解变量分别v1,v2,vn。o【例】求一元二次方程a*x2+b*x+c=0的根of=sym(a*x2+b*x+c);osolve(f) %以x为自变量,求解方程f=0oans =o 1/2/a*(-b+(b2-4*a*c)(1/2)o 1/2/a*(-b-(b2-4*a*c)(1/2)osolve(f,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026-2027学年大庆市高三第二次模拟考试物理试卷(含答案解析)
- 小学三年级数学任课教师2026年上半年教学工作总结
- 妇科康复护士2026年上半年妇科术后康复护理总结
- 青少年暑期自我安全管理培养 自主避险能力提升教育 课件
- 2026年秋季经济学专业开学第一课 考研方向与备考指南教学设计
- 2026年北师大版小学三年级数学上册《分数大小判断》课时教案
- 第3课《首届诺贝尔奖颁发》 课件 2026-2027学年统编版语文八年级上册
- 小儿急性胃肠炎护理查房
- 医学生康复专业
- 护理伦理学的基本理论和主要观点
- 工业互联网基础知识
- 2026年中医药法知识竞赛试题及答案
- JJF 2309-2025 重点排放单位碳计量审查规范
- 消防设施工程公司绩效管理办法
- 急性心梗合并急性心衰护理
- 合规经营与知识产权保护承诺书4篇
- 高血压危险分层、治疗与特殊类型管理
- 物业工程维修培训课件
- 阳光512灯控台说明书
- 中国金融学 课件(西财版)第0-2章-绪论、金融概述、货币与信用
- 安泰安全培训公众号下载课件
评论
0/150
提交评论