无涯教程-MATLAB - 微积分(Calculus)

105 阅读3分钟

MATLAB提供了多种方法来解决微分和积分问题,求解任意程度的微分方程式以及计算极限,最重要的是,您可以轻松求解复杂函数的图,并通过求解原始函数及其导数来检查图上的最大值,最小值。

本章将讨论微积分的问题,在本章中,我们将讨论预演算的概念,即计算函数的极限并验证极限的性质。

计算极限

MATLAB提供了 limit 函数来计算极限,在最基本的形式中, limit 函数将expression作为参数,并在自变量变为零时找到表达式的极限。

例如,让我们计算函数的极限f(x)=(x 3 + 5)/(x 4 + 7),因为x趋于零。

syms x
limit((x^3 + 5)/(x^4 + 7))

MATLAB将执行上述语句并返回以下输出-

ans =
   5/7

极限函数属于符号计算领域。,您需要使用syms函数来告诉MATLAB您正在使用哪些符号变量,您还可以计算函数的极限,因为变量趋向于除零以外的某个数字,为了计算lim x-> a(f(x)),我们使用带参数的limit命令,第一个是表达式,第二个是x逼近的数字,这里是a。

例如,让我们计算函数f(x)=(x-3)/(x-1)的极限,因为x趋于1。

limit((x - 3)/(x-1),1)

MATLAB将执行上述语句并返回以下输出-

ans =
   NaN

再举一个例子

limit(x^2 + 5, 3)

MATLAB将执行上述语句并返回以下输出-

ans =
   14

Octave计算极限

以下是使用 symbolic 包的上述示例的Octave版本,请尝试执行并比较输出-

pkg load symbolic
symbols

x=sym("x"); subs((x^3+5)/(x^4+7),x,0)

Octave将执行以上语句并返回以下输出-

ans =
   0.7142857142857142857

极限基本属性验证

代数极限定理提供了极限的一些基本性质。这些如下-

Basic Properties of Limits

让我们考虑两个函数-

  • f(x)=(3x + 5)/(x-3)
  • g(x)= x 2 +1。

让我们计算两个函数的x趋于5的函数极限,并使用这两个函数和MATLAB验证极限的基本属性。

创建一个脚本文件并在其中键入以下代码-

syms x
f=(3*x + 5)/(x-3);
g=x^2 + 1;
l1=limit(f, 4)
l2=limit (g, 4)
lAdd=limit(f + g, 4)
lSub=limit(f - g, 4)
lMult=limit(f*g, 4)
lDiv=limit (f/g, 4)

运行文件时,它显示-

l1 =
   17

l2 = 17

lAdd = 34

lSub = 0

lMult = 289

lDiv = 1

Octave极限基本属性的验证

以下是使用 symbolic 包的上述示例的Octave版本,请尝试执行并比较输出-

pkg load symbolic
symbols

x=sym("x"); f=(3*x + 5)/(x-3); g=x^2 + 1;

l1=subs(f, x, 4) l2=subs (g, x, 4) lAdd=subs (f+g, x, 4) lSub=subs (f-g, x, 4) lMult=subs (f*g, x, 4) lDiv=subs (f/g, x, 4)

Octave将执行以上语句并返回以下输出-

l1 =
   17.0
l2 =
   17.0
lAdd =
   34.0
lSub =
   0.0
lMult =
   289.0
lDiv =
   1.0

左右限位

当函数对某个特定值的变量具有不连续性时,此时不存在限制,换句话说,函数f(x)的极限在x=a处具有不连续性,当x的值从左侧接近x时,极限值不等于x的值从右侧接近时的极限值。

让我们考虑一个函数-

f(x)=(x-3)/| x-3 |

我们将显示limx-> 3 f(x)不存在。 

创建一个脚本文件并在其中键入以下代码-

f=(x - 3)/abs(x-3);
ezplot(f,[-1,5])
l=limit(f,x,3,left)
r=limit(f,x,3,right)

运行文件时,MATLAB绘制以下图

Discontinuity in a Function

在此之后显示输出-

l =
   -1

r = 1

参考链接

www.learnfk.com/matlab/matl…