收藏 分享(赏)

第3讲 符号运算功能.ppt

上传人:gsy285395 文档编号:6221918 上传时间:2019-04-02 格式:PPT 页数:25 大小:67.50KB
下载 相关 举报
第3讲   符号运算功能.ppt_第1页
第1页 / 共25页
第3讲   符号运算功能.ppt_第2页
第2页 / 共25页
第3讲   符号运算功能.ppt_第3页
第3页 / 共25页
第3讲   符号运算功能.ppt_第4页
第4页 / 共25页
第3讲   符号运算功能.ppt_第5页
第5页 / 共25页
点击查看更多>>
资源描述

1、数学实验三 MATLAB的符号运算功能 函数的简化微分、积分 、Taylor展开等代数方程求解 微分方程求解 行列式、矩阵求逆、特征值、特征向量可变精度计算,基本 概念,符 号 变 量:预先不要求有确定值的量 符号表达式:数字、函数、算子和变量的Matlab字符串 符号方程式:含有等号的符号表达式 符 号 矩 阵:数组(其元素为符号表达式),符号变量的定义方式:syms x y z c 定义符号表达式的方式:1、隐含方式,如sin(x)2、显式方式,如 sym(a b;c d)通常在Matlab可以确定变量类型的场合下,可以不用显示方式,如:diff sin(x) diff(sin(x)但是在

2、大多数场合,显式说明是必需的。 findsym(s2+y2),符号变量的确定:在符号表达式中,含有多于一个符号变量时,当对表达式进行操作时,只有一个符号变量是独立变量,具体规则如下:如果有x字母,则x为独立变量如果没有x字母,则选取在字母表顺序中最接近x的字母(后面优先)不过在很多函数中,可对变量具体指定,.x y z .c b a,简单表达式的产生: syms x,y f=a*x+x2*y+sqrt(x) g=c*y-x A=sym(a,b;c,d) add=symadd(f,g) f+g ; sub=symsub(f,g) f-g mul=symmul(f,g) f*g ; div=sym

3、div(f,g) f/g pow=sympow(f,g),符号运算函数,分子和分母提取,n,d=Numden(f) 注: numerator(分子)denominator(分母) 如:n,d = numden(x/y + y/x) n = x2+y2 , d = y*x,函数的复合compose(f,g) f(g(y) ,其中:f = f(x) and g = g(y);compose(f,g,u,v)含有不同独立变量函数的 复合f = cos(x/t); COMPOSE(f,g,x,z); returns cos(g(z)/t)COMPOSE(f,g,t,z); returns cos(x/

4、g(z)COMPOSE(f,g,x,y,z),syms x y z t u;f = 1/(1 + x2); g = sin(y);h = xt; p = exp(-y/u) compose(f,g) returns 1/(1+sin(y)2) compose(f,g,t) returns 1/(1+sin(t)2)compose(h,g,x,z) returns sin(z)tcompose(h,g,t,z) returns xsin(z)compose(h,p,x,y,z) returns exp(-z/u)t compose(h,p,t,u,z) returns xexp(-y/z),变量

5、替换函数 Subs(f) subs(f,new,old)syms a c1 t a = 980; c1 =3y = exp(-a*t)*c1subs(y,a,c1,a,c1) 3*exp(-980*t)subs(cos(a)+sin(b),a,b,sym(alpha),2) cos(alpha)+sin(2),subs(exp(a*t),a,-magic(2) returns exp(-t), exp(-3*t) exp(-4*t), exp(-2*t)subs(x*y,x,y,0 1;-1 0,1 -1;-2 1) returns 0, -1 2, 0,符号与数值的转换函数numeric(f

6、), 其中为符号表达式 eval(f) 如:f=1/2*sqrt(2), numeric(f) 或 eval(f)Sym(g), 其中g为数值sym(0.333), ans =333/1000,函数的微分:diff(f)diff(f,2)diff (f,变量,阶数)如:f=sym(a*x, b*y; a*x2*y,x)g=diff(f)函数的积分:int(f)int(f,变量)int(f,变量,上限,下限),x = sym(x); t = sym(t);diff(sin(x2) 为 2*cos(x2)*xdiff(t6,6) 为 720.syms x y;f=sin(x2)*cos(cos(y

7、2)diff(f,y,2) ans=4*sin(x2)*cos(cos(y2)*sin(y2)2*y2+4 *sin(x2)*sin(cos(y2)*cos(y2)*y2+2*sin(x2)* sin(cos(y2)*sin(y2),符号函数绘图 ezplot(f) ezplot(f,a,b)如:f=x2+4*x+1ezplot(f,1,10)化简函数simplify(f) simple(f) combine(f) factor(f) pretty(f),方程求解 solve(f)即求解方程f(x)=0 solve(f,变量) 如:t=solve(tan(2*y)=sin(y),y)在解不唯一

8、的情况下,返回多个值 若不能求符号解,则返回可变精度解代数方程组求解 solve(equ1,equ2,equn,x,y,z),x,y = solve(x2 + x*y + y = 3,x2 - 4*x + 3= 0) x = 1 3 y = 1 -3/2,u,v = solve(a*u2 + v2 = 0,u - v = 1) regards a as parameter and solves the two equations for u and v.S = solve(a*u2 + v2=0,u - v = 1,a,u) regards v as parameter, solves the

9、 two equations, and returns S.a and S.u.a,u,v = solve(a*u2 + v2=0,u - v = 1,a2 - 5*a + 6=0) solves the three equations for a, u and v.x,y = solve(sin(x+y)-exp(x)*y = 0,x2-y = 2) cannot findan analytic solution, so returns a numeric solution.,微分方程的求解dsolve(f)如:y=dsolve(Dy=1+y2,y(0)=1,v)y=dsolve(D2y-2

10、*Dy-3*y=0)f,g=dsolve(Df=3*f+4*g,Dg=-3*f+5*g,f(0)=1,g(0)=2)S=dsolve(Df=3*f+4*g,Dg=-3*f+5*g,f(0)=1,g(0)=2) 注:微分符号D要大写,dsolve(Dx = -a*x) exp(-a*t)*C1 x = dsolve(Dx = -a*x,x(0) = 1,s) x = exp(-a*s) S = dsolve(Df = f + g,Dg = -f + g,f(0) =1,g(0) = 2) 返回一个结构SS.f = exp(t)*cos(t)+2*exp(t)*sin(t)S.g = -exp(t

11、)*sin(t)+2*exp(t)*cos(t),ezplot(S.f,0:12); y=subs(S.f,t,0:0.01:12);plot(0:0.01:12,y),Expand. 展开factor(f)因式分解taylor(f)tayloy展开det (A)符号行列式Inv (A) 求逆矩阵digits.设置可变精度vpa可变精度计算,Syms a x expand(a+1)3) ans =a3+3*a2+3*a+1 taylor(sin(a*x),x,0,6) ans =a*x-1/6*a3*x3+1/120*a5*x5 factor(x3+x2+x) ans =x*(x2+x+1),求极限函数,syms x a t h;limit(sin(x)/x) 1limit(x-2)/(x2-4),2) 1/4limit(1+2*t/x)(3*x),x,inf) exp(6*t)limit(1/x,x,0,right) inflimit(1/x,x,0,left) -inf,级数求和,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初级教育 > 小学教育

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报