MATLAB符号计算.ppt
《MATLAB符号计算.ppt》由会员分享,可在线阅读,更多相关《MATLAB符号计算.ppt(33页珍藏版)》请在三一办公上搜索。
1、第7章 MATLAB符号计算,7.1 符号计算基础,7.1.1 符号对象1.建立符号变量和符号常数(1)sym函数 sym函数用来建立单个符号量,例如,a=sym(a)建立符号变量a,此后,用户可以在表达式中使用变量a进行各种运算。,例7.1 考察符号变量和数值变量的差别。在 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的行列式,例
2、7.2 比较符号常数与数值在代数运算时的差别。在 MATLAB命令窗口,输入命令:pi1=sym(pi);k1=sym(8);k2=sym(2);k3=sym(3);%定义符号变量pi2=pi;r1=8;r2=2;r3=3;%定义数值变量sin(pi1/3)%计算符号表达式值 sin(pi2/3)%计算数值表达式值sqrt(k1)%计算符号表达式值sqrt(r1)%计算数值表达式值sqrt(k3+sqrt(k2)%计算符号表达式值sqrt(r3+sqrt(r2)%计算数值表达式值,(2)syms函数syms函数的一般调用格式为:syms var1 var2 varn 函数定义符号变量var1,
3、var2,varn等。用这种格式定义符号变量时不要在变量名上加字符分界符(),变量间用空格而不要用逗号分隔。,2.建立符号表达式建立符号表达式有以下3种方法:(1)利用单引号来生成符号表达式。(2)用sym函数建立符号表达式。(3)使用已经定义的符号变量组成符号表达式。,7.1.2 基本的符号运算1.符号表达式的四则运算符号表达式的四则运算和其他表达式的运算并无不同,但要注意,其运算结果依然是一个符号表达式。符号表达式的加、减、乘、除运算可分别由函数symadd、symsub、symmul和symdiv来实现,幂运算可以由sympow来实现。,2符号表达式的提取分子和分母运算如果符号表达式是一
4、个有理分式或可以展开为有理分式,可利用numden函数来提取符号表达式中的分子或分母。其一般调用格式为:n,d=numden(s)该函数提取符号表达式s的分子和分母,分别将它们存放在n与d中。,3.因式分解与展开factor(S)对S分解因式,S是符号表达式或符号矩阵。expand(S)对S进行展开,S是符号表达式或符号矩阵。collect(S)对S合并同类项,S是符号表达式或符号矩阵。collect(S,v)对S按变量v合并同类项,S是符号表达式或符号矩阵。,4.表达式化简MATLAB提供的对符号表达式化简的函数有:simplify(S)应用函数规则对S进行化简。simple(S)调用MAT
5、LAB的其他函数对表达式进行综合化简,并显示化简过程。,5符号表达式与数值表达式之间的转换利用函数sym可以将数值表达式变换成它的符号表达式。函数numeric或eval可以将符号表达式变换成数值表达式。,7.1.3 符号表达式中变量的确定MATLAB中的符号可以表示符号变量和符号常数。findsym可以帮助用户查找一个符号表达式中的的符号变量。该函数的调用格式为:findsym(S,n)函数返回符号表达式S中的n个符号变量,若没有指定n,则返回S中的全部符号变量。在求函数的极限、导数和积分时,如果用户没有明确指定自变量,MATLAB将按缺省原则确定主变量并对其进行相应微积分运算。可用find
6、sym(S,1)查找系统的缺省变量,事实上,MATLAB按离字符x最近原则确定缺省变量。,7.1.4 符号矩阵transpose(S)返回S矩阵的转置矩阵。determ(S)返回S矩阵的行列式值。colspace(S)返回S矩阵列空间的基。,7.2 符号导数及其应用,7.2.1 函数的极限limit函数的调用格式为:limit(f,x,a)limit函数的另一种功能是求单边极限,其调用格式为:limit(f,x,a,right)或 limit(f,x,a,left),例7.10求极限。在MATLAB命令窗口,输入命令:syms a m x;f=(x(1/m)-a(1/m)/(x-a);limi
7、t(f,x,a)%求极限(1)f=(sin(a+x)-sin(a-x)/x;limit(f)%求极限(2)limit(f,inf)%求f函数在x(包括+和-)处的极限limit(f,x,inf,left)%求极限(3)f=(sqrt(x)-sqrt(a)-sqrt(x-a)/sqrt(x*x-a*a);limit(f,x,a,right)%求极限(4),7.2.2 符号函数求导及其应用MATLAB中的求导的函数为:diff(f,x,n)diff函数求函数f对变量x的n阶导数。参数x的用法同求极限函数limit,可以缺省,缺省值与limit相同,n的缺省值是1。,例7.3 求函数的导数。命令如下
8、:syms a b t x y z;f=sqrt(1+exp(x);diff(f)%求(1)。未指定求导变量和阶数,按缺省规则处理f=x*cos(x);diff(f,x,2)%求(2)。求f对x的二阶导数diff(f,x,3)%求(2)。求f对x的三阶导数f1=a*cos(t);f2=b*sin(t);diff(f2)/diff(f1)%求(3)。按参数方程求导公式求y对x的导数(diff(f1)*diff(f2,2)-diff(f1,2)*diff(f2)/(diff(f1)3%求(3)。求y对x的二阶导数f=x*exp(y)/y2;diff(f,x)%求(4)。z对x的偏导数diff(f,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 符号 计算
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-5439245.html