本文介绍利用MATLAB求解函数或序列的极限问题,顺便介绍limit
函数的用法。内容主要包括单变量函数的极限和多变量函数的极限。
目录
- 单变量函数的极限
- 极限的定义
- 普通极限
- 左极限
- 右极限
- matlab实现方法
- 应用举例
- 多变量函数的极限
- matlab实现方法
- 应用举例
单变量函数的极限
极限的定义
普通极限
L = lim x → x 0 f ( x ) L=\lim_{x \rightarrow x_0} {f(x)} L=x→x0limf(x)
左极限
L = lim x → x 0 − f ( x ) L=\lim_{x \rightarrow x_0^-} {f(x)} L=x→x0−limf(x)
右极限
L = lim x → x 0 + f ( x ) L=\lim_{x \rightarrow x_0^+} {f(x)} L=x→x0+limf(x)
matlab实现方法
L=limit(fun, x, x0) % //普通极限
L=limit(fun, x, x0, 'left') % //左极限
L=limit(fun, x, x0, 'right') % //右极限
应用举例
- 求解极限: L = lim x → 0 s i n x x L=\lim_{x \rightarrow 0} {\frac{sin x}{x}} L=x→0limxsinx
syms x; f=sin(x)/x; L=limit(f, x, 0)
- 求解极限: L = lim x → ∞ x ( 1 + a x ) x s i n b x L=\lim_{x \rightarrow \infty} {x(1+\frac{a}{x})^x sin \frac{b}{x}} L=x→∞limx(1+xa)xsinxb
syms x a b
f = x*(1+a/x)^x*sin(b/x)
L = limit(f, x, inf)
- 求解单边极限:
syms x; L = limit((exp(x^3)-1)/(1-cos(sqrt(x-sin(x)))),x,0,'right')
用下面的语句还可以绘制出 ( − 0.1 , 0.1 ) (-0.1,0.1) (−0.1,0.1)区间的函数曲线。
x0=-0.1:0.001:0.1;
y0=((exp(x0.^3)-1)./(1-cos(sqrt(x0-sin(x0)))));
plot(x0, y0, '-', [0], [L], 'o')
函数曲线如下:
可见, 对这个例子来说, 即使不用单边极限也能求出函数极限值是12。
L = limit((exp(x^3)-1)/(1-cos(sqrt(x-sin(x)))),x,0)
- 求函数 t a n t tan t tant 在 π / 2 \pi/2 π/2 点处的左右极限。
syms t; f=tan(t);
L1=limit(f,t,pi/2,'left')
L2=limit(f,t,pi/2,'right')
- 求下面序列的极限
syms n positive
f = n^(2/3)*sin(factorial(n))/(n+1);
F = limit(f,n,inf)
- 求下面序列函数的极限
syms x n
f = n*atan(1/(n*(x^2+1)+x))*tan(pi/4+x/2/n)^n;
F = limit(f,n,inf)
多变量函数的极限
matlab实现方法
多元函数的极限也可以同样用MATLAB中的limit()
函数直接求解。
- 假设有二元函数 f ( x , y ) f(x,y) f(x,y), 若想求出二元函数的累极限
则可以嵌套使用limit()
函数。例如:
L1 = limit(limit(f,x, x0), y, y0)
L2 = limit(limit(f,y, y0), x, x0)
如果 x 0 x_0 x0或 y 0 y_0 y0不是确定的值, 而是另一个变量的函数, 例如 x → g ( y ) x \rightarrow g(y) x→g(y), 则上述的极限求取顺序不能交换。
- 假设有二元函数 f ( x , y ) f(x,y) f(x,y), 若想求出二元函数的重极限
L = lim ( x , y ) → ( x 0 , y 0 ) f ( x , y ) L=\lim_{(x,y) \rightarrow (x_0,y_0) } {f(x,y)} L=(x,y)→(x0,y0)limf(x,y)
理论上不易求解,只有沿所有方向得出相同的极限才可,不可能用累极限方法求解。
应用举例
- 试求出二元函数极限值
syms x a; syms y positive;
f = exp(-1/(y^2+x^2))*sin(x)^2/x^2*(1+1/y^2)^(x+a^2*y^2);
L = limit(limit(f, x, 1/sqrt(y)), y, inf)
- 重极限的尝试 ,求解重极限
syms x y;
f=(x*y/(x^2+y^2))^(x^2);
L1=limit(limit(f,x,inf),y,inf)
L2=limit(limit(f,y,inf),x,inf)
L3=limit(limit(f,x,y^2),y,inf)
L4=limit(limit(f,y,x^2),x,inf)
- 判断重极限是否存在
证明极限不存在比求重极限容易的多,可以沿 y = k x y=kx y=kx趋近。
syms r x y
f=x*y/(x^2+y^2);
L=limit(subs(f,y,r*x),x,0)