Matlab教学第四章MATLAB符号运算(Symbolic).ppt
《Matlab教学第四章MATLAB符号运算(Symbolic).ppt》由会员分享,可在线阅读,更多相关《Matlab教学第四章MATLAB符号运算(Symbolic).ppt(35页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Lecture 4 MATLAB符号运算符号运算(Symbolic)MATLAB Matlab 符号运算符号运算Matlab 符号运算介绍q Matlab 符号运算是通过符号运算是通过符号数学工具箱符号数学工具箱(Symbolic Math Toolbox)来实现的。)来实现的。Matlab 符号数学工具箱是建符号数学工具箱是建立在功能强大的立在功能强大的 Maple 软件的基础上的,当软件的基础上的,当 Matlab 进进行符号运算时,它就请求行符号运算时,它就请求 Maple 软件去计算并将结果返软件去计算并将结果返回给回给 Matlab。q Matlab 的符号数学工具箱可以完成几乎所有
2、得符号运算功能。主要包括:符号表达式的运算,符号表达式的复合、化简,符号矩阵的运算,符号微积分、符号作图,符号代数方程求解,符号微分方程求解等。此外,该工具箱还支持可变精度运算,即支持以指定的精度返回结果。Matlab 符号运算特点u 计算以计算以推理方式推理方式进行,因此不受计算误差累积所带来的进行,因此不受计算误差累积所带来的困扰。困扰。u 符号计算指令的调用比较简单,与数学教科书上的公式相近。u 符号计算可以给出完全正确的封闭解,或任意精度的数符号计算可以给出完全正确的封闭解,或任意精度的数值解(封闭解不存在时)。值解(封闭解不存在时)。u 符号计算所需的运行时间相对较长。Matlab
3、符号运算举例u 求一元二次方程求一元二次方程 ax2+bx+c=0 的根的根 solve(a*x2+b*x+c=0)u 求的根求的根 f(x)=(cos x)2 的一次导数的一次导数 x=sym(x);diff(cos(x)2)u 计算计算 f(x)=x2 在区间在区间 a,b 上的定积分上的定积分 syms a b x;int(x2,a,b)q 在进行符号运算时,必须先定义基本的符号对象,可以是符号常量、符号变量、符号表达式等。符号对象是一种数据结构。符号对象与符号表达式q 含有符号对象的表达式称为符号表达式,Matlab 在内部把符号表达式表示成字符串,以与数字变量或运算相区别。q 符号矩
4、阵/数组:元素为符号表达式的矩阵/数组。u sym 函数用来建立单个符号变量,一般调用格式为:q 符号对象的建立:符号对象的建立:sym 和和 syms符号对象的建立例:a=sym(a)符号变量=sym(A)参数 A 可以是一个数或数值矩阵,也可以是字符串a 是符号变量b 是符号常量 b=sym(1/3)C 是符号矩阵 C=sym(1 ab;c d)q 符号对象的建立:符号对象的建立:sym 和和 syms符号对象的建立u syms 命令用来建立多个符号变量,一般调用格式为:syms 符号变量符号变量1 符号变量符号变量2.符号变量符号变量n 例:syms a b c a=sym(a);b=s
5、ym(b);c=sym(c);q 符号表达式的建立:符号表达式的建立:例:建立符号表达式通常有以下2种方法:(1)用 sym 函数直接建立符号表达式。(2)使用已经定义的符号变量组成符号表达式。y=sym(sin(x)+cos(x)x=sym(x);y=sin(x)+cos(x)符号表达式的建立 syms x;y=sin(x)+cos(x)Matlab 符号运算采用的运算符和基本函数,在形状、名称和使用上,都与数值计算中的运算符和基本函数完全相同符号对象的基本运算q 基本运算符基本运算符u 普通运算:+-*/u 数组运算:.*./.u 矩阵转置:.例:X=sym(x11,x12;x21,x22
6、;x31,x32);Y=sym(y11,y12,y13;y21,y22,y23);Z1=X*Y;Z2=X.*Y;符号对象的基本运算三角函数与反三角函数、指数函数、对数函数等q 基本函数基本函数q 查找符号表达式中的符号变量查找符号表达式中的符号变量若表达式中有两个符号变量与 x 的距离相等,则ASCII 码大者优先。查找符号变量findsym(expr)按字母顺序列出符号表达式 expr 中的所有符号变量findsym(expr,N)按顺序列出 expr 中离 x 最近的 N 个符号变量常量 pi,i,j 不作为符号变量例:f=sym(2*w-3*y+z2+5*a)findsym(f)find
7、sym(f,3)findsym(f,1)findsym 举例符号表达式的替换subs(f,x,a)用用 a 替换字符函数替换字符函数 f 中的字符变量中的字符变量 x a 是可以是是可以是 数数/数值变量数值变量/表达式表达式 或或 字符变量字符变量/表达式表达式若 x 是一个由多个字符变量组成的数组或矩阵,则 a 应该具有与 x 相同的形状的数组或矩阵。q 用给定的用给定的数据数据替换符号表达式中的指定的替换符号表达式中的指定的符号变量符号变量subs 举例 f=sym(2*u);subs(f,u,2)f2=subs(f,u,u+2)a=3;subs(f2,u,a+2)subs(f2,u,a
8、+2)syms x y f3=subs(f,u,x+y)subs(f3,x,y,1,2)ans=4f2=2*(u+2)ans=14ans=2*(a+2)+2)f3=2*x+2*yans=6u 例:指出下面各条语句的输出结例:指出下面各条语句的输出结果果f=2*u符号矩阵符号矩阵 A=sym(1+x,sin(x);5,exp(x)u 使用 sym 函数直接生成u 将数值矩阵转化成符号矩阵u 符号矩阵中元素的引用和修改 B=2/3,sqrt(2);5.2,log(3);C=sym(B)A=sym(1+x,sin(x);5,exp(x);A(1,2)%引用引用 A(2,2)=sym(cos(x)%重
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Matlab 教学 第四 符号 运算 Symbolic
限制150内