资源描述:
《matlab的符号运算》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、MATLAB的符号运算前面介绍的内容基本上是MATLAB的数值计算功能,参与运算过程的变量都是被赋了值的数值变量.在MATLAB环境下,符号运算是指参与运算的变量都是符号变量,即使是数字也认为是符号变量.数值变量和符号变量是不同的.1符号微积分下面着重介绍一些与微积分有关的指令,这些指令都需要符号表达式作为输入宗量.求和symsum(S)对通项S求和,其中k为变量且从0变到k-1.symsum(S,v)对通项S求和,指定其中v为变量且v从0变到v-1.symsum(S,a,b)对通项S求和,其中k为变量且从a变到b.symsum(S,v,a,b)对通项S求和,
2、指定其中v为变量且v从a变到b.例:求,键入k=sym('k')%k是一个符号变量;symsum(k)得ans=1/2*k^2-1/2*k例:求,键入:symsum(k^2,0,10)得ans=385例:求键入symsum('x'^k/sym('k!'),k,0,inf),得ans=exp(x)这最后的一个例子是无穷项求和.求极限limit(P)表达式P中自变量趋于零时的极限limit(P,a)表达式P中自变量趋于a时的极限limit(P,x,a,'left')表达式P中自变量x趋于a时的左极限limit(P,x,a,'right')表达式P中自变量x趋于a时
3、的右极限例:求,键入P=sym('sin(x)/x');limit(P)得ans=1例:求键入P=sym('1/x');limit(P,'x',0,'right')得ans=inf例:求,键入:P=sym('(sin(x+h)-sin(x))/h');h=sym('h');limit(P,h,0)得ans=cos(x)例:求,键入v=sym('[(1+a/x)^x,exp(-x)]');limit(v,'x',inf,'left')得ans=[exp(a),0]求导数diff(S,v)求表达式S对变量v的一阶导数.diff(S,v,n)求表达式S对变量v的n阶
4、导数.例如:设A=,求键入命令:symsabx;A=[1/(1+a),(b+x)/cos(x);1,exp(x^2)];diff(A,'x')得ans=[0,1/cos(x)+(b+x)/cos(x)^2*sin(x)][0,2*x*exp(x^2)]例:求y=sinx+ex的三阶导数,键入命令:diff('sin(x)+x*exp(x)',3)得ans=-cos(x)+3*exp(x)+x*exp(x)例:设,求A的先对x再对y的混合偏导数.可键入命令:S=sym('[x*sin(y),x^n+y;1/x/y,exp(i*x*y)]');dsdxdy=dif
5、f(diff(S,'x'),'y')得:dsdxdy=[cos(y),0][1/x^2/y^2,i*exp(i*x*y)-y*x*exp(i*x*y)]例:求y=(lnx)x的导数.可键入命令:p='(log(x))^x';p1=diff(p,'x')得:p1=log(x)^x*(log(log(x))+1/log(x))例:求y=xf(x2)的导数.可键入命令:p='x*f(x^2)';p1=diff(p,'x')得:p1=f(x^2)+2*x^2*D(f)(x^2)例:求xy=ex+y的导数.可键入命令:p='x*y(x)-exp(x+y(x))';p1=
6、diff(p,'x')得:p1=y(x)+x*diff(y(x),x)-(1+diff(y(x),x))*exp(x+y(x))再键入p2='y+x*dy-(1+dy)*exp(x+y)=0';dy=solve(p2,'dy')%把dy作为变量解方程得dy=-(y-exp(x+y))/(x-exp(x+y))求Taylor展开式taylor(f,v)f对v的五阶Maclaurin展开.taylor(f,v,n)f对v的n-1阶Maclaurin展开.例:求sinxe-x的7阶Maclaurin展开.可键入f=sym('sin(x)*exp(-x)');F=ta
7、ylor(f,8)得F=x-x^2+1/3*x^3-1/30*x^5+1/90*x^6-1/630*x^7例:求sinxe-x在x=1处的7阶Taylor展开.可键入f=sym('sin(x)*exp(-x)');F=taylor(f,8,1)得F=sin(1)*exp(-1)+(-sin(1)*exp(-1)+cos(1)*exp(-1))*(x-1)-cos(1)*exp(-1)*(x-1)^2+(1/3*sin(1)*exp(-1)+1/3*cos(1)*exp(-1))*(x-1)^3-1/6*sin(1)*exp(-1)*(x-1)^4+(1/30*
8、sin(1)*exp(-1)-1/30