资源描述:
《《MATLAB符号计算》PPT课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第3章MATLAB符号计算7/25/2021本章内容3.1符号计算基础3.2微分运算3.3积分运算3.4泰勒级数3.5求解方程3.6积分变换3.1符号计算基础3.1.1符号对象1.建立符号变量和符号常数(1)sym函数S=sym(A)sym函数用来建立单个符号变量,例如,a=sym(‘a’)建立符号变量a,此后,用户可以在表达式中使用变量a进行各种运算。定义符号常量如pi=sym(pi)a=sym(3/4)例3.1考察符号变量和数值变量的差别。在MATLAB命令窗口,输入命令:a=sym('a');b=
2、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的行列式例3.2比较符号常数与数值变量在代数运算时的差别。在MATLAB命令窗口,输入命令:pi1=sym(‘pi’);k1=sym(‘8’);k2=sym(‘2’);k3=sym(‘3’);%定义符号常数pi2=pi;r1=8;r
3、2=2;r3=3;%定义数值变量sin(pi1/3)%计算符号表达式值sin(pi2/3)%计算数值表达式值sqrt(k1)%计算符号表达式值sqrt(r1)%计算数值表达式值sqrt(k3+sqrt(k2))%计算符号表达式值sqrt(r3+sqrt(r2))%计算数值表达式值(2)syms函数1.用于定义多个符号变量。syms函数的一般调用格式为:symsvar1var2…varn函数定义符号变量var1,var2,…,varn等。用这种格式定义符号变量时不要在变量名上加字符分界符(‘),变量间用空
4、格而不要用逗号分隔。2.建立符号表达式例3.3用2种方法建立符号表达式。在MATLAB窗口,输入命令:U=sym('3*x^2+5*y+2*x*y+6')%定义符号表达式Usymsxy;%建立符号变量x、yV=3*x^2+5*y+2*x*y+6%定义符号表达式V2*U-V+6%求符号表达式的值例3.4计算3阶范得蒙矩阵行列式的值。设A是一个由符号变量a,b,c确定的范得蒙矩阵。命令如下:symsabc;U=[a,b,c];A=[[1,1,1];U;U.^2]%建立范得蒙符号矩阵det(A)%计算A的行列
5、式值例3.5建立x,y的一般二元函数。在MATLAB命令窗口,输入命令:symsxy;f=sym('f(x,y)');3.1.2基本的符号运算(1)符号表达式的代数运算与矩阵运算基本一致,详见P95-96。(2)符号与数值的转换:sym,numeric,eval,sym2poly,poly2symNumeric,eval:将符号常数转换为数字或计算表达式的函数;Sym2poly:将符号多项式变换为等价系数向量。Poly2sym:要求用户指定用于表达式的变量(x,y等)例3.6f=sym(‘2*x^2+7
6、*x+9’)n=sym2poly(f)f1=poly2sym(n,y)(3)因式分解与展开factor(S)对S分解因式,S是符号表达式或符号矩阵。expand(S)对S进行展开,S是符号表达式或符号矩阵。collect(S)对S合并同类项,S是符号表达式或符号矩阵。collect(S,v)对S按变量v合并同类项,S是符号表达式或符号矩阵。例3.7对符号矩阵A的每个元素分解因式。命令如下:symsabxy;A=[2*a^2*b^3*x^2-4*a*b^4*x^3+10*a*b^6*x^4,3*x*y-5
7、*x^2;4,a^3-b^3];factor(A)%对A的每个元素分解因式例3.8计算表达式S的值。命令如下:symsxy;s=sym((-7*x^2-8*y^2)*(-x^2+3*y^2));s1=expand(s)%对s展开s2=collect(s,x)%对s按变量x合并同类项(无同类项)factor(s2)%对s2分解因式(4)表达式化简MATLAB提供的对符号表达式化简的函数有:simplify(S)应用函数规则对S进行化简。simple(S)调用MATLAB的其他函数对表达式进行综合化简,并显
8、示化简过程。例3.9化简命令如下:symsxy;s=(x^2+y^2)^2+(x^2-y^2)^2;simple(s)%MATLAB自动调用多种函数对s进行化简,并显示每步结果(5)符号表达式中变量的确定MATLAB中的符号可以表示符号变量和符号常数。findsym可以帮助用户查找一个符号表达式中的的符号变量。该函数的调用格式为:findsym(S,n)函数返回符号表达式S中的n个符号变量,若没有指定n,则返回S中的全部符号变量。在求函数的