3. 符号表达式( 符号函数 ) 的操作 (1) 符号表达式的四则运算 syms x f=x^3-6*x^2+11*x-6; g=(x-1)*(x-2)*(x-3); h=x*(x*(x-6)+11)-6; f+g-h 执行后输出: ans = x^3-6*x^2+11*x+(x-1)*(x-2)*(x-3)-x*(x*(x-6)+11)
11.
(1) 符号表达式的四则运算 >> syms x y a b >> fun1=sin(x)+cos(y) fun1 = sin(x)+cos(y) >> fun2=a+b fun2 = a+b >> fun1+fun2 ans = sin(x)+cos(y)+a+b >>fun1*fun2 ans = (sin(x)+cos(y))*(a+b)
集项-合并符号表达式的同类项 >>syms x y >> collect(x^2*y + y*x - x^2 - 2*x) ans = (y-1)*x^2+(y-2)*x >> syms x y >> collect(x^2*y + y*x - x^2 - 2*x,y) ans = (x^2+x)*y-x^2-2*x
15.
符号多项式的嵌套 (horner ) >> syms x >> fun1=2*x^3+2*x^2-32*x+40 fun1 = 2*x^3+2*x^2-32*x+40 >> horner(fun1) ans = 40+(-32+(2+2*x)*x)*x >> fun2=x^3-6*x^2+11*x-6 fun2 = x^3-6*x^2+11*x-6 >> horner(fun2) ans = -6+(11+(-6+x)*x)*x >>
subs 函数用于替换求值 >> syms x y f = x^2*y + 5*x*sqrt(y) f = x^2*y+5*x*y^(1/2) >> subs(f, x, 3) ans = 9*y+15*y^(1/2) >> subs(f, y, 3) ans = 3*x^2+5*x*3^(1/2) >>subs(f,{x,y},{1,1}) ex0202 ex0203 ex0204
18.
4 、 反函数的运算 (finverse ) >> syms x y >> f = x^2+y f = x^2+y >> finverse(f,y) ans = -x^2+y 使用格式: 1 、 g=finverse(f):f,g 均为单变量 x 的符号函数; 2 、 g=finverse(f,t) 返回值 g 的自变量取为 t ;
19.
5 复合函数的运算 (compose) >> syms x y z t u >> f = 1/(1 + x^2); >> g = sin(y); >> h = x^t; >> p = exp(-y/u) ; >> compose(f,g) ans = 1/(1+sin(y)^2) >> compose(f,g,t) ans = 1/(1+sin(t)^2) 使用格式: Compose(f,g) % 返回当 f=f(y) 和 g=g(x) 时 的复合函数 f(g(x)) Compose(f,g,t) % 返回的复合函数以 t 为 自变量,即有 f(g(t))
符号极限 (limit) 假定符号表达式的极限存在, Symbolic Math Toolbox 提供了直接求表达式极限的函数 limit ,函数 limit 的基本用法如下表所示 。 limit 函数的用法 对 x 求右趋近于 a 的极限 limt(f,’x’,a, ‘right’) 对 x 求左趋近于 a 的极限 limt(f,’x’,a, ‘left’) 对 x 求趋近于 a 的极限,当左右极 限不相等时极限不存在。 limt(f,’x’,a) 对 x 求趋近于 0 的极限 limt(f) 说明 函数格式 表达式
22.
符号极限 (limit)>> syms x a t h; >> limit(sin(x)/x) ans = 1 >> limit((x-2)/(x^2-4),2) ans = 1/4 >> limit((1+2*t/x)^(3*x),x,inf) ans = exp(6*t) 如果左右极限不相等,则极限不存在, matlab 命令窗口中显示 Nan
23.
(2) 符号求导 调用格式: 一阶导数: yx=diff(f,x) 二阶导数: yxx=diff(f,x,2) 或 yxx=diff(yx,x) 三阶导数: yxxx=diff(f,x,3) 或 yxxx=diff(yxx,x) ex0205 一、一元函数符号求导 求导函数: diff diff(f) % 求 f 对自由变量的一阶微分 diff(f,t) % 求 f 对符号变量 t 的一阶微分 diff(f,n) % 求 f 对自由变量的 n 阶微分 diff(f,t,n) % 求 f 对符号变量 t 的 n 阶微分
24.
(2) 符号求导 二、二元函数的符号求导syms x y z z=x^4+y^4-cos(2*x+3*y); zx=diff(z,x); zy=diff(z,y); zxx=diff(zx,x); zxy=diff(zx,y); zxyx=diff(zxy,x); zx,zy,zxy,zxyx ex0206
25.
3 、符号积分 积分有定积分和不定积分,运用函数int 可以求得符号表达式的积分。 语法: int(f,t) % 求符号变量 t 的不定积分 int(f,t,a,b) % 求符号变量 t 的积分 int(f,t,’m’,’n’) % 求符号变量 t 的积分 说明: t 为符号变量,当 t 省略则为默认自由变量; a 和 b 为数值, [a,b] 为积分区间; m 和 n 为符号对象, [m,n] 为积分区间;与符号微分相比,符号积分复杂得多。因为函数的积分有时可能不存在,即使存在,也可能限于很多条件, MATLAB 无法顺利得出。当 MATLAB 不能找到积分时,它将给出警告提示并返回该函数的原表达式。 Ex0207-0208