已阅读5页,还剩23页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第5章Matlab符号运算,符号运算基础微分运算积分运算积分变换求解方程,matlab不仅具有数值运算功能,还开发了在matlab环境下实现符号运算的工具包SymbolicMathToolbox,要求理解matlab数值运算与符号运算的不同;学会建立符号对象并应用相应对象进行各种符号运算以求得解析结果;重点:符号表达式的运算,符号方程求解。难点:符号微积分和积分变换。,本章要求,5.1符号运算基础,符号对象的创建基本的符号运算,符号运算的基本操作,什么是符号运算?与数值运算的区别数值运算中必须先对变量赋值,然后才能参与运算。符号运算无须事先对独立变量赋值,运算结果以标准的符号形式表达。,特点:运算对象可以是没赋值的符号变量可以获得任意精度的解SymbolicMathToolbox符号运算工具包通过调用Maple软件实现符号计算的。maple软件主要功能是符号运算,它占据符号软件的主导地位。,一.符号对象,1.建立符号变量和符号常数(1)sym函数sym函数用来建立单个符号量,例如,a=sym(a)建立符号变量a,此后,用户可以在表达式中使用变量a进行各种运算。,考察符号变量和数值变量的差别,在MATLAB命令窗口,输入命令:a=sym(a);b=sym(b);c=sym(c);d=sym(d);%定义4个符号变量w=10;x=5;y=-8;z=11;%定义4个数值变量A=a,b;c,d%建立符号矩阵AB=w,x;y,z%建立数值矩阵Bdet(A)%计算符号矩阵A的行列式det(B)%计算数值矩阵B的行列式,比较符号常数与数值在代数运算时的差别。,在MATLAB命令窗口,输入命令:pi1=sym(pi);k1=sym(8);k2=sym(2);k3=sym(3);%定义符号变量pi2=pi;r1=8;r2=2;r3=3;%定义数值变量A1=sin(pi1/3)%计算符号表达式值A2=sin(pi2/3)%计算数值表达式值A3=sqrt(k1)%计算符号表达式值A4=sqrt(r1)%计算数值表达式值A5=sqrt(k3+sqrt(k2)%计算符号表达式值A6=sqrt(r3+sqrt(r2)%计算数值表达式值,(2)syms函数syms函数的一般调用格式为:symsvar1var2varn函数定义符号变量var1,var2,varn等。用这种格式定义符号变量时,变量间用空格而不要用逗号分隔。,2.建立符号表达式建立符号表达式有以下2种方法:(1)用sym函数建立符号表达式。(2)使用已经定义的符号变量组成符号表达式。,基本的符号运算,(1).符号表达式的四则运算符号表达式的四则运算和其他表达式的运算并无不同,但要注意,其运算结果依然是一个符号表达式。,(2)符号表达式的提取分子和分母运算如果符号表达式是一个有理分式或可以展开为有理分式,可利用numden函数来提取符号表达式中的分子或分母。其一般调用格式为:n,d=numden(s)该函数提取符号表达式s的分子和分母,分别将它们存放在n与d中。,(3).因式分解与展开collect(f)对f合并同类项,f是符号表达式或符号矩阵。collect(f,v)对f按变量v合并同类项,f是符号表达式或符号矩阵。expand(f)对f进行展开,f是符号表达式或符号矩阵。factor(f)对f分解因式,f是符号表达式或符号矩阵。,(4).符号表达式与数值表达式之间的转换利用函数sym可以将数值表达式变换成它的符号表达式。函数eval可以将符号表达式变换成数值表达式。,(5).符号矩阵transpose(s)返回s矩阵的转置矩阵。det(s)返回s矩阵的行列式值。colspace(s)返回s矩阵列空间的基。,5.2微分运算,符号函数的极限符号函数的微分符号泰勒级数展开,limit函数的调用格式为:limit(f,x,a)f:函数x:变量a:逼近值limit函数的另一种功能是求单边极限,其调用格式为:limit(f,x,a,right)或limit(f,x,a,left),求极限例子,在MATLAB命令窗口,输入命令:symsamx;f=(x(1/m)-a(1/m)/(x-a);limit(f,x,a)%求极限f=(sin(a+x)-sin(a-x)/x;limit(f)%求极限limit(f,inf)%求f函数在x(包括+和-)处极限limit(f,x,inf,left)%求极限f=(sqrt(x)-sqrt(a)-sqrt(x-a)/sqrt(x*x-a*a);limit(f,x,a,right)%求极限,符号函数的微分,MATLAB中的微分函数为:diff(f,x,n)diff函数求函数f对变量x的n阶导数。参数x的用法同求极限函数limit,可以缺省,缺省值与limit相同,n的缺省值是1。,例求函数的(微分)导数。命令如下:symsabtxyz;f=sqrt(1+exp(x);diff(f)%未指定求导变量和阶数,按缺省规则处理f=x*cos(x);diff(f,x,2)%求f对x的二阶导数diff(f,x,3)%求f对x的三阶导数f1=a*cos(t);f2=b*sin(t);diff(f2)/diff(f1)%按参数方程求导公式求y对x的导数(diff(f1)*diff(f2,2)-diff(f1,2)*diff(f2)/(diff(f1)3%求y对x的二阶导数f=x*exp(y)/y2;diff(f,x)%z对x的偏导数diff(f,y)%z对y的偏导数f=x2+y2+z2-a2;zx=-diff(f,x)/diff(f,z)%按隐函数求导公式求z对x的偏导数zy=-diff(f,y)/diff(f,z)%按隐函数求导公式求z对y的偏导数,例在曲线y=x3+3x-2上哪一点的切线与直线y=4x-1平行。命令如下:x=sym(x);y=x3+3*x-2;%定义曲线函数f=diff(y);%对曲线求导数g=f-4;solve(g)%求方程f-4=0的根,即求曲线何处的导数为4,泰勒级数,matlab中提供了将函数展开为幂级数的函数taylor,其调用格式为:taylor(f,n,x,a)例:求函数在指定点的泰勒展开式。命令如下:x=sym(x);f1=(1+x+x2)/(1-x+x2);f2=sqrt(1-2*x+x3)-(1-3*x+x2)(1/3);taylor(f1,x,5)%展开到x的4次幂时应选择n=5taylor(f2,6),5.3积分运算,在matlab中,求不定积分的函数是int,其调用格式为:int(f,x)int函数求函数f对变量x的不定积分。参数x可以缺省,缺省原则与diff函数相同。在matlab中,求定积分的函数也是int,其调用格式为:int(f,x,a,b)int函数求函数f对变量x的不定积分。参数x可以缺省,缺省原则与diff函数相同。,5.4积分变换,1.傅立叶(Fourier)变换在MATLAB中,进行傅立叶变换的函数是:fourier(fx,x,t)求函数f(x)的傅立叶像函数F(t)。ifourier(Fw,t,x)求傅立叶像函数F(t)的原函数f(x)。求函数的傅立叶变换及其逆变换。命令如下:symsxt;y=abs(x);Ft=fourier(y,x,t)%求y的傅立叶变换fx=ifourier(Ft,t,x)%求Ft的傅立叶逆变换,2.拉普拉斯(Laplace)变换在MATLAB中,进行拉普拉斯变换的函数是:laplace(fx,x,t)求函数f(x)的拉普拉斯像函数F(t)。ilaplace(Fw,t,x)求拉普拉斯像函数F(t)的原函数f(x)。例计算y=x2的拉普拉斯变换及其逆变换.命令如下:x=sym(x);y=x2;Ft=laplace(y,x,t)%对函数y进行拉普拉斯变换fx=ilaplace(Ft,t,x)%对函数Ft进行拉普拉斯逆变换,3.Z变换对数列f(n)进行z变换的matlab函数是:ztrans(fn,n,z)求fn的Z变换像函数F(z)iztrans(Fz,z,n)求Fz的z变换原函数f(n)例求数列fn=e-n的Z变换及其逆变换。命令如下:symsnzfn=exp(-n);Fz=ztrans(fn,n,z)%求fn的Z变换f=iztrans(Fz,z,n)%求Fz的逆Z变换,5.5求解方程,代数方程。代数方程组。微分方程和微分方程组。,代数方程,代数方程是指未涉及微积分运算的方程,相对比较简单。在matlab中,求解用符号表达式表示的代数方程可由函数solve实现,其调用格式为:solve(eq);求解符号表达式表示的代数方程eq,求解变量为默认变量。当方程右端为0时,方程eq中可以不包含右端项和等号,而仅列出方程左端的表达式。solve(eq,x):求解符号表达式表示的代数方程eq,求解变量为x。,solve(eq1,eq2,eqn,v1,v2,vn):求解符号表达式eq1,eq2,eqn组成的代数方程组,求解变量分别v1,v2,vn。若不指定求解变量,由默认规则确定。注意输出方式,代数方程组,matlab的符号运算工具箱中提供了功能强大的求解常微分方程的函数dsolve。该函数的调用格式为:dsolve(eqn1,condition,var)该函数求解微分方程eqn1在初值条件condition下的特解。参数var描述方程中的自变量符号,省略时按缺省原则处理,若没有给出初值条件condition,则求方程的通解。y=dsolve(Dy=t)y=dsolve(D2y=t)y=dsolve(Dy=t,y(0)=0),微分方程,dsolve在求微分方程组时的调用格式为:dsolve(eqn1,eqn2,eqnN,condition1,conditionN,var1,varN)函数求解微分方程组eqn1、eqnN在初值条件conditoion1、conditionN下的解,若不给出初值条件,则求方程组的通解,var1、varN给出求解变量。,微分方程组,例求微分方程的通解。,命令如下:y=dsolve(Dy-(x2+y2)/x2/
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 文科类毕业论文写作技巧与范例
- 会计专业本科论文参考题目2025年更新
- 毕业论文(企业成本的构成及控制途径的分析)答辩
- 豫剧音乐的艺术特色分析
- 工程监理分包合同协议书(3篇)
- 《熬波图》价值浅论
- 南昌市土地利用现状分析及评价研究
- 医学硕士毕业论文评语
- 装配式建筑施工的供应链管理与协同技术
- 专科生毕业设计(论文)撰写规范
- 城市轨道交通企业班组管理PPT完整全套教学课件
- 儿内科消化系统疾病诊疗规范2023版
- 1例高脂血症性急性胰腺炎护理查房
- 影视欣赏校本课程(完整版)资料
- 气凝胶行业深度报告
- 2022年贵州毕节市乡村振兴局下属事业单位考调笔试备考题库及答案解析
- 天津市建筑工程施工质量验收资料管理规程DBT29-209-2020
- 公路水运交安三类人员考试试题及答案
- GB/T 33056-2016含氟废气处理处置技术规范
- GB/T 12967.6-2008铝及铝合金阳极氧化膜检测方法第6部分:目视观察法检验着色阳极氧化膜色差和外观质量
- 个案护理报告范文(优选十六篇)
评论
0/150
提交评论