常见符号运算
因式分解、展开、合并、简化及通分等
因式分解factor(f)
1 2 | >> syms x; f=x^6+1; >> factor(f) |
factor 也可用于正整数的分解
函数展开
1 | expand(f) |
多项式展开
1 2 | >> syms x; f=(x+1)^6; >> expand(f) |
三角函数展开
1 2 | >> syms x y; f=sin(x+y); >> expand(f) |
合并同类项
collect(f,v): 按指定变量 v 进行合并
collect(f): 按默认变量进行合并
1 2 3 4 | >> syms x y; >> f= x^2*y + y*x - x^2 + 2*x ; >> collect(f) >> collect(f,y) |
函数简化
y=simple(f): 对 f 尝试多种不同的算法进行简化,返回其中最简短的形式
[y,HOW]=simple(f): y 为 f 的最简短形式,How 中记录的为简化过程中使用的方法。
分式通分
[N,D]=numden(f):
N 为通分后的分子,D 为通分后的分母
1 2 3 | >> syms x y; >> f=x/y+y/x; >> [N,D]=numden(f) |
horner 多项式
horner 多项式:嵌套形式的多项式
1 2 3 | >> syms x; >> f=x^4+2*x^3+4*x^2+x+1; >> g=horner(f) |
计算极限
limit(f,x,a): 计算lim(x→a)f(x)
limit(f,a): 当默认变量趋向于 a 时的极限
limit(f): 计算 a=0 时的极限
limit(f,x,a,‘right’): 计算右极限
limit(f,x,a,‘left’): 计算左极限
计算导数
g=diff(f,v):求符号表达式 f 关于 v 的导数
g=diff(f):求符号表达式 f 关于默认变量的导数
g=diff(f,v,n):求 f 关于 v 的 n 阶导数
1 2 3 | >> syms x; >> f=sin(x)+3*x^2; >> g=diff(f,x) |
计算积分
int(f,v,a,b): 计算定积分∫abf(v)dv
int(f,a,b): 计算关于默认变量的定积分
int(f,v): 计算不定积分∫f(v)dv
int(f): 计算关于默认变量的不定积分
符号求和
symsum(f,v,a,b): 求和∑av=af(v)
symsum(f,a,b): 关于默认变量求和
计算级数 ∑∞n=11/n2 及其前100项的部分和
1 2 3 | >> syms n; f=1/n^2; >> S=symsum(f,1,inf) >> S100=symsum(f,1,100) |
其他运算
finverse(f,v):求 f 关于指定变量 v 的反函数
finverse(f):求 f 关于默认变量的反函数
计算函数f=x2+2*t的反函数
1 2 3 | >> syms x t; f=x^2+2*t; >> g1=finverse(f) >> g2=finverse(f,t) |
代数方程符号求解
solve(f,v):求方程关于指定自变量的解,f 是符号表达式(低版本还可以用字符串表示的方程、表达式);
solve 也可解方程组(包含非线性);
得不到解析解时,给出数值解。
求一元二次方程 ax2 + bx + c = 0 的根
1 2 | >> syms a b c x >> solve(a*x^2+b*x+c) |