一、limit:极限
limit(expr,x,a) |
---|
limit(expr,a) |
limit(expr) |
limit(expr,x,a,'left') |
limit(expr,x,a,'right') |
expr
为代求极限表达式;x
为自变量;a
为自变量取极限时的取值,默认为0;'left'
、'right'
分别代表求左右极限。
命令行:
clear;
syms x h a;
L1 = limit(sin(x)/x) %求默认x等于默认0时的极限
L2 = limit((sin(x+h) - sin(x))/h,h,0) %求h等于0时的极限
L3 = limit(1/x,x,0,'right') %求方程在x=0时的右极限
L4 = limit(1/x,x,0,'left') %求方程在x=0时的右极限
v = [(1 + a/x)^x, exp(-x)]
L5 = limit(v,x,inf) %求数组中每个变量对应的x=inf时的极限。inf:正无穷;-inf:负无穷
输出:
>> Test
L1 =1
L2 =cos(x)
L3 =Inf
L4 =-Inf
v =[ (a/x + 1)^x, exp(-x)]
L5 =[ exp(a), 0]
二、diff:导数
diff(expr) |
---|
diff(expr,v) |
diff(expr,sym('v')) |
diff(expr,n) |
diff(expr,v,n) |
diff(expr,n,v) |
expr
为代求导数表达式;v
为自变量;n
为阶次,默认为1
命令行:
clear;
syms x a s t;
c = sym('5'); %与syms 5;功能一样
f = sin(5*x);
g = exp(x)*cos(x);
h = sin(s*t);
A = [cos(a*x),sin(a*x);-sin(a*x),cos(a*x)];
cD = diff(c) %对c求导
cD1 = diff(5) %对常数5求导
fD = diff(f) %对f求导
gD = diff(g) %对g求导
g2D = diff(g,2) %对g求2阶导
hDt = diff(h,t) %对h中的自变量t求导
hDs = diff(h,s) %对h中的自变量s求导
输出:
>> Test
cD =0
cD1 = []
fD =5*cos(5*x)
gD =exp(x)*cos(x) - exp(x)*sin(x)
g2D =-2*exp(x)*sin(x)
hDt = s*cos(s*t)
hDs =t*cos(s*t)
三、int:积分
int(expr,var) |
---|
int(expr,var,a,b) |
a
、b
分别为下、上限
命令行:
clear;
syms x t z;
alpha = sym('alpha');
eq1 = -2*x/(1 + x^2)^2;
eq2 = x/(1 + z^2);
eq3 = x*log(1 + x);
eq4 = 2*x;
eq6 = acos(sin(x));
I1 = int(eq1) %求eq1的不定积分
I2 = int(eq2,z) %求eq2关于变量z的不定积分
I3 = int(eq3,0,1) %求eq3中x从0到1的定积分
I4 = int(eq4,sin(t),1) %求eq4中x从sin(t)到1的不定积分
I5 = int([exp(t),exp(alpha*t)]) %求数组中每个元素的不定积分
I6 = int(eq6,x) %求eq6中关于x的不定积分
输出:
>> Test
I1 =1/(x^2 + 1)
I2 =x*atan(z)
I3 =1/4
I4 =cos(t)^2
I5 =[ exp(t), exp(alpha*t)/alpha]
I6 =x*acos(sin(x)) + (x^2*sign(cos(x)))/2
四、symsum:级数求和; symprod:级数求积
1.symsum
symsum(expr) |
---|
symsum(expr,v) |
symsum(expr,a,b) |
symsum(expr,v,a,b) |
expr
为待求表达式,v
为变量,a
、b
为级数下标和上限
命令行:
clear;
syms k x;
SUM1 = symsum(k)
SUM2 = symsum(1/k^2)
SUM3 = symsum(k^2,0,10)
eq = x^k/sym('k!');
SUM4 = symsum(eq,k,0,Inf)
输出:
>> Test
SUM1 =k^2/2 - k/2
SUM2 =-psi(1, k)
SUM3 =385
SUM4 =exp(x)
2.symprod
symprod(expr) |
---|
symprod(expr,v) |
symprod(expr,a,b) |
symprod(expr,v,a,b) |
命令行:
clear;
syms k x
PROD1 = symprod(k)
PROD2 = symprod((2*k - 1)/k^2)
PROD3 = symprod(1 - 1/k^2,k,2,Inf)
输出:
>> Test
PROD1 =factorial(k)
PROD2 =(1/2^(2*k)*2^(k + 1)*factorial(2*k))/(2*factorial(k)^3)
PROD3 =1/2
五、taylor:泰勒级数
taylor(f) |
---|
taylor(f,v) |
taylor(f,v,a) |
taylor(f,Name,Value) |
taylor(f,v,Name,Value) |
taylor(f,v,a,Name,Value) |
f
为待展开式;v
为变量;a
为展开点;返回的结果为f的五阶泰勒展开;Name
、Value
是配对输入,需改变扩展点和阶次的时候可用。
命令行:
clear
syms x
expX = taylor(exp(x))
sinX = taylor(sin(x))
cosX = taylor(cos(x),x,'ExpansionPoint',1) %以x=1为展开点
acosX = taylor(acos(x),x,'Order',1) %展开阶次为1阶
输出:
>> Test
expX =x^5/120 + x^4/24 + x^3/6 + x^2/2 + x + 1
sinX =x^5/120 - x^3/6 + x
cosX =cos(1) + (sin(1)*(x - 1)^3)/6 - (sin(1)*(x - 1)^5)/120 - sin(1)*(x - 1) - (cos(1)*(x - 1)^2)/2 + (cos(1)*(x - 1)^4)/24
acosX =pi/2