MATLAB符号运算功能.ppt

上传人:wuy****n92 文档编号:70795629 上传时间:2023-01-28 格式:PPT 页数:27 大小:310KB
返回 下载 相关 举报
MATLAB符号运算功能.ppt_第1页
第1页 / 共27页
MATLAB符号运算功能.ppt_第2页
第2页 / 共27页
点击查看更多>>
资源描述

《MATLAB符号运算功能.ppt》由会员分享,可在线阅读,更多相关《MATLAB符号运算功能.ppt(27页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第三章第三章 符号运算功能符号运算功能 matlab 不仅具有数值运算功不仅具有数值运算功能,还开发了在能,还开发了在matlab环境下实环境下实现符号计算的工具包现符号计算的工具包SymbolicMath Toolbox 符号运算的功能符号运算的功能符号表达式、符号矩阵符号表达式、符号矩阵的创建的创建符号线性代数符号线性代数因式分解、展开和简化因式分解、展开和简化符号代数方程求解符号代数方程求解符号微积分符号微积分符号微分方程符号微分方程一、符号运算的基本操作一、符号运算的基本操作1.什么是符号运算什么是符号运算2.与数值运算的区别与数值运算的区别 数值运算中必须先对变量赋值数值运算中必须先

2、对变量赋值,然后才能参与运算。然后才能参与运算。符号运算无须事先对独立变量符号运算无须事先对独立变量赋值赋值,运算结果以标准的符号形式,运算结果以标准的符号形式表达。表达。2.符号表达式与方程符号表达式与方程(1)单引号法单引号法f1=a x2+b x+c 二次三项二次三项式式 f2=a x2+b x+c=0 方程方程 f3=Dy+y2=1 微分方程微分方程v符号表达式一定要用符号表达式一定要用 单引单引 号括起来号括起来matlab才能识别。才能识别。(2)sym或或syms法法格式格式:sym(变量变量,参数参数)syms(变量变量1,变量变量2,参数参数)或或 syms 变量变量1 变量

3、变量2 参数参数(其中参数为其中参数为positive,real,unreal)y1=sym(a*exp(x)+2*cos(2*x)或:或:syms a xy1=a*exp(x)+2*cos(2*x)3.符号矩阵的创建符号矩阵的创建函数函数sym创建矩阵(创建矩阵(symbolic 的缩写的缩写)命令格式:命令格式:A=sym()符号矩阵内容同数值矩阵符号矩阵内容同数值矩阵例如:例如:A=sym(a,2*b;3*a,0)A=a,2*b 3*a,0 这就完成了一个符号矩阵的创建。这就完成了一个符号矩阵的创建。4.自由变量的确定自由变量的确定除了或指定符号变量以外,还允许使用自由变量,除了或指定符

4、号变量以外,还允许使用自由变量,除了或指定符号变量以外,还允许使用自由变量,除了或指定符号变量以外,还允许使用自由变量,其确定原则:其确定原则:其确定原则:其确定原则:(a a)小写字母不能作为自由变量;)小写字母不能作为自由变量;)小写字母不能作为自由变量;)小写字母不能作为自由变量;(b b)有多个变量时,优先作为自由变量,若没有,)有多个变量时,优先作为自由变量,若没有,)有多个变量时,优先作为自由变量,若没有,)有多个变量时,优先作为自由变量,若没有,则在词典序中最靠近的则优先作为自由变量;则在词典序中最靠近的则优先作为自由变量;则在词典序中最靠近的则优先作为自由变量;则在词典序中最靠

5、近的则优先作为自由变量;(c c)小写字母的顺序优先于大写字母;)小写字母的顺序优先于大写字母;)小写字母的顺序优先于大写字母;)小写字母的顺序优先于大写字母;(d d)findsymfindsym函数可以确定自由变量的个数。函数可以确定自由变量的个数。函数可以确定自由变量的个数。函数可以确定自由变量的个数。格式:格式:findsym(S,n)5.符号变量的修改符号变量的修改 a.直接修改直接修改 可用可用鼠标修改矩阵,直接修改鼠标修改矩阵,直接修改 b.指令修改指令修改v 用用A=subs(S,old,new)来修改来修改或或A=subs(S,new)new替代替代S中中的自由变量的自由变量

6、注:注:多个参量需替代时,应放入多个参量需替代时,应放入中中例如:例如:A=sym(a,2*b;3*a,0)A=a,2*b 3*a,0A1=subs(A,0,4*b)A(2,2)=4*bA=a,2*b 3*a,4*bA2=subs(A1,b,c)A2=a,2*c 3*a,4*c A3=subs(A,b,0,a,c)A3=a,2*a 3*a,c v将数值矩阵转化为符号矩阵将数值矩阵转化为符号矩阵 函数调用格式:函数调用格式:sym(A)A=1/3,2.5;1/0.7,2/5A=0.3333 2.5000 1.4286 0.4000sym(A)ans=1/3,5/210/7,2/56.符号对象转换

7、为数值对象符号对象转换为数值对象v将符号矩阵转化为数值矩阵将符号矩阵转化为数值矩阵函数调用格式:函数调用格式:double(A)、single(A)A=1/3,5/210/7,2/5single(A)ans=0.3333 2.5000 1.4286 0.40001.符号矩阵运算符号矩阵运算2.符号运算与数值运算中的运符号运算与数值运算中的运算符和基本函数几乎完全相同。算符和基本函数几乎完全相同。二、符号运算二、符号运算例例1:f=2*x2+3*x-5;g=x2+x-7;syms xf=2*x2+3*x-5;g=x2+x-7;h=f+gh=3*x2+4*x-12例例2:f=cos(x);g=si

8、n(2*x);syms xf=cos(x);g=sin(2*x);f/g+f*gans=cos(x)/sin(x)+cos(x)*sin(x)2.任意精度的数学运算任意精度的数学运算 在在symbolic中有三种不同的算术运算:中有三种不同的算术运算:1.数值类型数值类型 matlab的浮点算术运算的浮点算术运算2.有理数类型有理数类型 maple的精确符号运算的精确符号运算3.vpa类型类型 maple的任意精度算术的任意精度算术 运算运算 任意精度算术运算任意精度算术运算digits(n)设置可变精度,设置可变精度,n位有效数字位有效数字,缺省缺省32位位vpa(x,n)将将x表示为表示为

9、n位有效数字位有效数字digits(25)vpa(1/2+1/3)ans=.8333333333333333333333333diff(f)对缺省变量求微分对缺省变量求微分 diff(f,v)对指定变量对指定变量v求微分求微分 diff(f,v,n)对指定变量对指定变量v求求n阶微分阶微分int(f)对对f表达式的缺省变量求积分表达式的缺省变量求积分 int(f,v)对对f表达式的表达式的v变量求积分变量求积分 int(f,v,a,b)对对f表达式的表达式的v变量在(变量在(a,b)区间求定积分区间求定积分3.符号微积分与积分变换符号微积分与积分变换limit(f)对自变量趋于对自变量趋于0时

10、的极限时的极限 limit(f,x,a)对自变量对自变量x趋于趋于a时的极限时的极限 limit(f,x,a,right)自变量自变量x从右边趋于从右边趋于a时的时的极限极限 limit(f,x,a,left)自变量自变量x从左边趋于从左边趋于a时的极时的极限限symsum(s,x,a,b)对对s表达式的级数求和表达式的级数求和taylor(f,n)泰勒级数展开泰勒级数展开n-1次幂多项式次幂多项式taylor(f,a)在在x=a点泰勒级数展开点泰勒级数展开 例例1.计算二重不定积分计算二重不定积分F=int(int(x*exp(-x*y),x),y)或或 syms x yF=int(int(

11、x*exp(-x*y),x),y)结果:结果:F=1/y*exp(-x*y)4.符号积分变换符号积分变换fourier(f,w)、fourier(f,t,w)付氏变换付氏变换ifourier(F,t)、ifourier(F,w,t)反付氏变换反付氏变换laplace(f,s)、laplace(f,t,s)拉氏变换拉氏变换ilaplace(L,t)、ilaplace(L,s,t)反拉氏变换反拉氏变换ztrans(f,z)、ztrans(f,x,z)Z变换变换iztrans(F,z)、iztrans(F,z,x)反反Z变换变换例:例:求求f=e-x*x的傅里叶变换的傅里叶变换syms xf=exp

12、(-x2)F=fourier(f,w)F=pi(1/2)*exp(-1/4*w2)y=ifourier(F,w,t)y=exp(-t2)5.符号代数方程求解符号代数方程求解 matlab符号运算能够解一般的线性符号运算能够解一般的线性方程、非线性方程及一般的方程、非线性方程及一般的代数方程、代数方程、代数方程组代数方程组。当方程组不存在符号解时,。当方程组不存在符号解时,又无其他自由参数,则给出数值解。又无其他自由参数,则给出数值解。命令格式:命令格式:solve(f)求一个方程的解求一个方程的解solve(f1,f2,fn,v1,v2,vn)求求n个方程的解个方程的解 例例1.问取何值时问取

13、何值时,齐次线性方程组齐次线性方程组 有非零解?有非零解?syms kA=1-k,-2,4;2,3-k,1;1,1,1-k;k=solve(det(A),k)结果:结果:k=0 3 2例例2:解方程组解方程组 x2+2x+1=0 x+3z=4 y*z=-1结果:结果:x=-1 y=-3/5 z=5/3g1=x2+2*x+1=0;g2=x+3*z=4;g3=y*z=-1;x,y,z=solve(g1,g2,g3)f=solve(g1,g2,g3)x=f.xy=f.y z=f.z结果:结果:x=-1 y=-3/5 z=5/3 结果:结果:f=x:1x1 sym y:1x1 sym z:1x1 sy

14、m6.符号微分方程求解符号微分方程求解y1,y2=dsolve(x1,x2,xn)返返回回 微分方程的解微分方程的解x1,x2,xn:书写顺序是书写顺序是先微分方程先微分方程、而而后初始条件后初始条件,再后变量名再后变量名,均用单引号,均用单引号界定界定微分方程的微分方程的n阶导数项以大写字母阶导数项以大写字母Dn表表示,如示,如Dy,D2y等。等。一阶微分方程一阶微分方程x,y=dsolve(Dx=y,Dy=x,x(0)=0,y(0)=1)结果:结果:x=-1/2*exp(-t)+1/2*exp(t)y=1/2*exp(-t)+1/2*exp(t)二阶微分方程二阶微分方程例:例:求求y=dsolve(D2y+2*Dy+2*y=0,y(0)=1,Dy(0)=0)结果:结果:y=exp(-x)*cos(x)+exp(-x)*sin(x)ezplot(y)方程解方程解y(t)的时间曲线图的时间曲线图

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁