What & How & Why

The Integral / 积分


所有 math 条目下的内容均以极不严谨的个人理解方式书写。

中值定理(MVT)

来思考这么一个问题:我们在驾驶的过程中,如果知道了驾驶的平均速度,那么是否在驾驶的过程中,有那么一刻平均速度与该时刻的瞬时速度是相等的呢?

这个问题很容易转化为数学问题。我们知道,平均速度在数学上可以用 Average Rate of Change,也就是几何上的 Secant Line 来表示;而瞬时速度则可以用 Instantaneous Rate of Change,也就是几何上某一点的 Tangent Line 来表示。因此,上述的问题实际就是在问:某个函数图像在指定的两点之间,是否存在一点,该点的斜率与指定的两点之间的连线平行?

即是否存在: $$ \displaystyle \frac{x(b)-x(a)}{b-a} \, = x'(c) \qquad \text {for some }c,\, \, \text {with } a<c<b. $$

罗尔中值定理

根据先前的问题,我们可以考虑一种特殊的情况:假设函数在区间 $[a,b]$ 上的起始点值相等,即 $f(a) = f(b)$。因此,$a、b$ 之间的连线一定与 $x$ 轴平行;也就是说,Secant Line 的斜率为 $0$。那么有没有可能在 $[a,b]$ 之间找到一点的切线与该连线平行(斜率为 $0$)?

根据导数的几何意义,切线斜率为 $0$ 的地方往往出现在拐点(极值点)。假设 $f(x)$ 在 $[a,b]$ 上连续,且在$(a,b)$ 上处处可微分;根据极值定理,我们可以判断 $f(x)$ 在 $[a,b]$ 上必定拥有最大值和最小值。 根据 $f(a)、f(b)$ 的值,上面的问题可以分成两种情况讨论:

1.最大值等于最小值:因为 $f(a) = f(b)$,那么很显然该函数在 $[a,b]$ 上的图像是一条平行于 $x$ 的直线;也就是说 $f'(x)$ 必然为 $0$, 该函数上任意一点的切线均与点 $a、b$ 连线平行。

2.最大值不等于最小值:因为 $f(a) = f(b)$,因此 $a、b$ 两点不可能同时作为最大值和最小值。综合极值定理可以推断,在 $(a,b)$ 之间必定存在一点 $c$,使得 $f(c)$ 为 $f(x)$ 在 $[a,b]$ 的最大值或者最小值。而我们知道最值出现的地方必定是函数图像的拐点,斜率必然为 $0$。由此可见这种情况也是成立的。

综上我们可以推断在特殊情况 $f(a) = f(b)$ 的时候,我们必然可以在区间 $[a,b]$ 上找到一点,其切线与 $a、b$ 的连线平行。用公式的形式可以表示如下:

Suppose a function $f(t)$ is continuous on $[a,b]$, and differentiable on $(a,b)$.there is must a point $c$,with $a<c<b$, such that:
$$\displaystyle f'(c)\, =\, 0 \, =\, \frac{0}{b-a} \, =\, \frac{f(b)-f(a)}{b-a}\qquad \textrm{since}\, f(a)=f(b).$$



上述定理被称为中值定理Mean Value Theorem),准确的说,被称为罗尔中值定理Rolle's Theorem),是中值定理中的一种特殊形式。

中值定理的前提

上述定理的证明过程中我们注意到两个很重要的前提:

  • $f(x)$ 在 $[a,b]$ 上连续
  • $f(x)$ 在 $(a,b)$ 上可微

这两个前提是中值定理存在的必要条件。来看看如果不连续和不可微分会出现什么样的情况:

1.函数不连续的情况



上图中拐点处的切线与起点和终点连线平行;但由于函数不连续,该拐点不存在;因此切线也不存在,MVT 在这种情况下失效。

2.函数不可微的情况



上图中拐点处因为是一个 Cusp,在该点函数无法微分,因此切线不存在;从而我们也无法找到与起点终点连线平行的切线,MVT 在该情况下也失效。

特殊情况

有些情况下,函数本身并不满足中值定理的前提,但结果却和中值定理的结论是一样的,比如下图:



以上三图来源:EDX MIT Calculus B 课件

该函数并不满足前提,但显然可以找到一点与函数的起点终点连线平行。

拉格朗日中值定理

罗尔中值定理有一个特殊的前提:起点与终点的值相等。那么当起点与终点的值不相等的时候,一个满足中值定理前提的函数,是否也有类似的性质呢?来看看下图:





该图描述了在上述的情况下中值定理的几何意义;我们发现该性质在几何上也同样是寻找一个点,使得过该点的切线与起点终点连线平行。我们知道在起点终点函数值相等的情况下中值定理是成立的;因此我们只需要对该函数进行构造,使得起点终点再相等即可。

要使起点终点函数值相等,比较方便的方法是用起点 / 终点的函数值分别减去自身。通过观察,我们实际上可以用原有函数减去起点终点连线的函数(Secant Line);这样可以保证构造以后的函数起点的函数值一定等于终点的函数值,从而符合了使用罗尔定理的条件。

令原函数为 $x(t)$,且该函数在 $[a,b]$ 上连续,且在 $(a,b)$ 上可微。那么原函数的起点为 $(a,x(a))$,终点为 $(b, (x(b))$。通过上述信息可知,该两点的连线的函数过点 $(a,x(a))$,且斜率为$\displaystyle \frac{x(b)-x(a)}{b-a}$。那么该两点的连线的方程可以表示为:

$$ g(t) = x(a)+ \frac{x(b)-x(a)}{b-a}(t-a) $$ 这就是我们为了达到使用罗尔定理的目的需要定义的辅助函数。由以上内容,我们构建的函数为:

$$ x_0(t) = \displaystyle x(t) - \left(x(a)+ \frac{x(b)-x(a)}{b-a}(t-a)\right) $$

根据罗尔定理,$x_0(t)$ 在 $(a,b)$ 上必有一点 $c$,使得 $x_0'(c) = 0$。将上面的方程变形一下:

$$ x(t) = \displaystyle x_0(t) - \left(x(a)+ \frac{x(b)-x(a)}{b-a}(t-a)\right) $$

对 $x(t)$ 左右两边同时求导,可得:

$$ x'(t) = x_0'(t) + \frac{x(b)-x(a)}{b-a} $$

令 $t = c$,上面的式子可以写成:

$$ x'(c) = x_0'(c) + \frac{x(b)-x(a)}{b-a} $$

因为 $x_0'(c) = 0$,因此该式可以写成:

$$ x'(c) = 0 + \frac{x(b)-x(a)}{b-a} = \frac{x(b)-x(a)}{b-a} $$

我们发现,$x(t) $在 $c$ 点处的切线斜率,与$x(t)$ 上 $a、b$ 两点连线的斜率是相等的。因此,我们可以得出以下结论:

If $x(t)$ is continuous on $a≤t≤b$, and differentiable on $a<t<$b, that is, $x′(t)$ is defined for all $t$, $a<t<b$, then

$$\displaystyle \frac{x(b)-x(a)}{b-a} \, = x'(c) \qquad \text {for some }c,\, \, \text {with } a<c<b.$$

该定理被命名为拉格朗日中值定理Lagrange Mean Value Theorem),该定理是罗尔中值定理的推广形式。

中值定理与导数性质的关系

导数可以用于判断函数的走势;该性质大致可以总结如下:

If $x′(t)≥0$ for all $t$ in $(A,B)$, then $x(t)$ is increasing or staying the same over $[A,B]$.
If $x′(t)≤0$ for all $t$ in $(A,B)$, then $x(t)$ is decreasing or staying the same over $[A,B]$.
If $x′(t)=0$ for all $t$ in $(A,B)$, then $x(t)$ is constant over $[A,B]$.
If $x′(t)>0$ for all $t$ in $(A,B)$, then $x(t)$ is strictly increasing over $[A,B]$.
If $x′(t)<0$ for all $t$ in $(A,B)$, then $x(t)$ is strictly decreasing over $[A,B]$.

上述的总结我们可以用中值定理来对其进行证明。

Lower bound & Upper bound

为了使用中值定理证明上述的性质,我们需要引进两个概念:上界Upper bound)和下界Lower bound)。我们使用 $M$ 表示上界, $m$ 表示下界;这两个概念的定义如下:

A number $M$ is an upper bound on a function $f(x)$ if $f(x) \geq M$ for all $x$
A number $m$ is an lower bound on a function $f(x)$ if $f(x) \leq m$ for all $x$

而这两个标记也可以用于指定的区间上,他们与函数的关系可以记做:

$$ m \leq f(x) \leq M \,\,\displaystyle \text {for all } \, \, x\, \, \text {in}\, \, [a,b] $$

一个函数可能拥有数个上界和下界,那么上界中最小的一个,我们称之为最小上界best upper bound),而下界中最大的一个,我们称之为最大下界best lower bound)。很明显,“Best” 这个词是在描述离函数最近的属性。

通过MVT推导导数性质

假设函数 $x(t)$ 在 $[A,B]$ 上连续,并且在 $(A,B)$ 上可微(即满足MVT前置条件)。根据上述信息我们可以得知 $x'(t)$ 的表达式为:
$$ x'(t) = \frac{x(B)-x(A)}{B-A} $$ 假设 $m$ 为 $x'(t)$ 的下界,那么根据中值定理,则有:

$$ m \leq \frac{x(B)-x(A)}{B-A}, \,\, \text{for all t such as A < t < B} $$
现在我们假设有一个区间 $[a,b]$ 处于 $(A,B)$ 之间,即 $A \leq a < b \leq B$。可以看出来,因为 MVT 在区间 $(A,B)$ 上适用,那么肯定在区间 $(a,b)$ 上适用。因此,可以总结的是:

$$ \displaystyle \displaystyle m\leq \frac{x(b)-x(a)}{b-a} \, \, \text { for ALL }\, a,b\, \text {such that} \, \, A\leq a<b\leq B. $$
现在令 $m = 0$,因为 $b >a$,因此 $x(b) \geq x(a)$。

这里之所以要令 $m = 0$,是因为导数描述函数的性质是以正负为分界线的。


因此,对于函数 $x(t)$,上述的不等式说明了函数 $x(t)$ 在 $[A,B]$ 上是递增或者是保持常量(当 $x(a) = x(b)$ 时)。这与我们之前学习的导数性质是符合的。

同理,令 $x'(t) \leq 0$(即 $0$ 为 $x'(t)$ 的上界),也可以证明导数为负时函数的趋势为下降的性质。

中值定理的应用

判断根的个数

问题:已知函数 $\displaystyle f(x) = -\frac{x^3}{6} - 3x - 2 \cos x$,如何判断该函数的根有多少个?

首先从函数自身判断:当 $x \to -\infty$ 时,$f(x) \to \infty$;当 $x \to +\infty$ 时,$f(x) \to -\infty$。因此可知,函数图像必定穿过 $x$ 轴,因此,该函数至少有一个根。

其次,该函数的导数 $\displaystyle \displaystyle f'(x) = -\frac{x^2}{2} - 3 + 2 \sin x$。该导数在整个 $x$ 的定义域上都是恒为负的。由MVT可知,$f'(x) < 0$,则 $f(x)$ 单调递减,$f(x)$ 的图像只能穿过 $x$ 轴一次。因此,该函数有且只有一个根。

比较不等式大小

如果是比较两个函数的大小,该类的问题实际上可以转换成讨论另外一个函数的正负问题。即比较$f(x)$ 与 $g(x)$ 的大小,我们可以令 $h(x) = f(x) - g(x)$,通过讨论 $h(x)$ 的正负来反映 $f(x)、g(x)$ 的关系。而 $h(x)$ 本身拥有表达式;因此我们可以利用其导数的性质来作出判断。

例A:证明 $\displaystyle e^ x>1+x \text { for all } x>0$。

由题,令 $h(x) = e^x - (1+x)$。

首先判断是否在某处 $h(x) = 0$。

判断 $h(x)$ 是否在某处等于 $0$ 有很重要的意义。$h(x) = 0$ 的位置左右两侧直接反映了两个目标函数的大小关系。只有当确立了 $h(x) = 0$ 的位置,我们才可以分段利用导数的性质讨论函数在不同的区间上的递增 / 递减,从而得出在某个区间上两个函数的大小关系。

令 $e^x - (1+x) = 0$, 则可得当 $x =0 $ 时 $h(x) = 0$。

接下来判断 $h'(x)$ 的正负。 显而易见的是,$h'(x)=e^ x-1 \, >0$ 对于所有的 $x > 0$ 都成立。根据 MVT推导出的导数性质,可知 $h(x)$ 在 所有的 $x>0$ 上单调递增的。因为 $h(0) = 0$,因此 $h(x)$ 在$(x , +\infty)$ 上是恒大于 $0$ 的,即 $e^ x>1+x \,\, \text{for all} \,\, x>0$,问题得证。

Bounding the average rate of change

通过 MVT 可知满足条件的函数上必有某一点的瞬时变化率与平均变化率相等。而该瞬时变化率的大小拥有自己的某个范围。因为平均变化率的数学意义是导数,因此该范围我们可以使用导数的上界与下界来表示,即:

$$ m \leq \displaystyle \frac{x(b)-x(a)}{b-a} \leq M \,\,\,\displaystyle \text {(Bounds on the average rate of change).} $$
根据极值定理,连续的函数在某个闭区间上必定有最大值和最小值。对于函数来说,其自身的最大值和最小值即是该函数的最小上界和最大下界。因此,先前的关系可以转写为:

$$ \displaystyle m \leq \displaystyle \displaystyle \min _{a \leq t \leq b} x'(t) \displaystyle \leq \displaystyle \frac{x(b)-x(a)}{b-a} \displaystyle \leq\displaystyle \max _{a\leq t \leq b} x'(t) \leq \displaystyle M $$
例B:下列不等式是否成立?
$$ \displaystyle \tan (\theta )-\tan (\phi )\, \geq \, \theta -\phi \qquad \left(\text {for all }\, \, -\frac{\pi }{2}<\phi <\theta <\frac{\pi }{2}\right) $$ 将上述不等式变形,可以看出来是函数 $tan$ 的导数形式:

$$ \displaystyle \frac{\tan (\theta )-\tan (\phi )}{\theta -\phi } = tan'(\theta) $$ 因为 $\theta >\phi$,根据 MVT,有:
$$ \displaystyle \frac{\tan (\theta )-\tan (\phi )}{\theta -\phi }\, \geq \, \min _{-\frac{\pi }{2}<\theta <\frac{\pi }{2}} \tan '(\theta )\qquad \text {for any } -\frac{\pi }{2}<\phi <\theta <\frac{\pi }{2}. $$ 对其导数进行计算,有:
$$ \displaystyle \frac{d}{d\theta } \tan (\theta ) = \, \sec ^2(\theta )\, \geq 1 \qquad \text { for all } -\frac{\pi }{2}<\theta <\frac{\pi }{2}. $$ 因此可知, $$ \displaystyle \frac{\tan (\theta )-\tan (\phi )}{\theta -\phi }\geq 1 \qquad \text { for all } -\frac{\pi }{2}<\phi <\theta <\frac{\pi }{2} $$ 变形一下,则可知题目命题成立。

MVT 和 线性近似

MVT 和 线性近似都可以用于表达函数的平均变化率。这两者的区别在于:

  • 线性近似能找到函数上一个确定的点,通过该点的斜率来计算另外一个点处函数的值,但这个值是近似的。
  • MVT只知道函数上的某一点导数然等于平均变化率,我们不能确定该点的位置,但计算出来的平均变化率是绝对准确的。





$$\Delta x \approx x'(a) \Delta t$$



$$\Delta x = x'(c) \Delta t$$

以上两图来源:EDX MIT 6.001 课程插图。

微分与不定积分

微分的记号

为了更好的理解接下来的知识,我们采用了莱布尼兹的写法来对微分做正式的标记:

Let $y=F(x)$, the differential of y is defined as:

$$\displaystyle dy \, = \, F'(x) dx$$
This is also called the differential of F and denoted $dF$.

这个标记来自于莱布尼兹对导数的标记:
$$ \displaystyle F'(x)= \frac{dy}{dx} \qquad \left(\text {or} \, \, \frac{ dF}{dx}\right) $$
换句话说,我们可以将导数理解为微分 $dy$ $dx$ 的比例

实际上,在微积分的世界中,微分的本身可以被认为是很微小的一个元素。因为对于一个量来说,其本身是可以无限分割的,因此微分的本身是可以达到无穷小的。但我们主要研究的重点并不在于其本身,而是在于其变化的速率;换句话说,即便微分本身是非常小的,但其反映的相关变量之间速率的变化的关系(也就是导数,两个微分的比例)不会很小。

我们可以将线性近似与微分做一个比较。两者实际上非常类似;我们可以将线性近似视作有限步 / 离散的微分。因此,微分也可以用于表示变量的变化率;而且这种变化的精度是非常高的。



图片来源:EDX MIT 6.001积分课程插图

即:

  • 线性近似:$\Delta F \approx F'(x)\Delta x $
  • 微分:$dF = F'(x)dx$

相关微分计算公式

  • 两个函数和的微分公式:$\displaystyle d (F+G) = \displaystyle dF+dG$
  • 与常数乘积的微分公式:$\displaystyle d(k\cdot F) = \displaystyle k \, dF$
  • 两个函数乘积的微分公式:$\displaystyle d(F\cdot G) = \displaystyle \left(F' \cdot G+ F\cdot G'\right) \, dx$

使用微分求解线性近似问题

线性近似的关键点在于:使用某一点 $x_0$ 处切线的斜率(导数)加上该点的坐标求出一个线性函数,用该线性函数来模拟得到另外一点在原函数上的值。

通常情况下,线性近似模拟出的在 $y$ 上的变化率 $\Delta y$ 可以用以下公式计算:

$$ f(x+\Delta x) \approx y + \Delta y $$ 从前面的知识我们可以得知,微分也是用于代表变化率的;它与线性近似中的变化率唯一的区别就是它可以无限细分。很显然,如果要使用微分来求解线性近似的问题,我们只需要直接将微分当做这里的变化率,带进先前的线性近似公式即可,即:

$$ f(x + dx) \approx y + dy $$

注意在这里我们依然用了 $\approx$。我们在这里默认微分是有限细分的。但当微分的值是一个足够小的量的时候(想象一下需要求值的点与我们的素材点 $x_0$无限接近),那么显然我们可以认为 $f(x + dx) = y + dy$。



例A:现有函数 $f(x) = \sqrt{10x - x^2}$,其中 $f(2) = 4, f(3) = \sqrt{21}$。使用微分在 $x_0 = 2$处进行线性近似,估算 $\sqrt{21}$ 的值。

本题需要求 $f(3)$ 的值,因为已知 $f(2)$ 的值,很容易想象到的是 $f(3) = f(2+1)$。按照之前的公式:$f(x + dx) = y + dy$,可以得知此处:

  1. $dx = 1$
  2. $x = 2$
  3. $y = 4$

那么整个公式就可以写成:
$$ f(2 + 1) = 4 + dy $$

因此,我们只需要求得 $x=2$ 时,按照线性近似计算出的变化率 $dy$ 即可。根据微分公式,则有:

$$ dy = \left.\displaystyle \frac{dy}{dx}\right|_{x=2} dx $$
直接对 $f(x)$ 求导,再将$x=2$ 计算出的导数,这样即可得到 $dy$ 的值。最后将 $dy$ 的值与原函数在 $x=2$ 处的值相加,即可得到结果(具体过程略)。

不定积分 Indefinite integral

注:这里不定积分指 Anti-derivatives,正式用法是 Indefinite integral,中文未做区分。

先来看看不定积分的定义:

An antiderivative (Indefinite integral) of f(x) is any function F(x) such that
$$\displaystyle F'(x)\, = f(x).$$

换句话说,$f(x)$ 的不定积分,可以是任意导数为 $f(x)$ 的函数。

为什么会称之为不定积分?

举一个例子:$\displaystyle \int sin(x) dx = ?$ 我们很容易的就想到因为 $-cos(x)$ 的导数是 sin(x),因此 $\displaystyle \int sin(x) dx = -cos(x)$。


某种意义上来说,积分就是求指定导数相关的函数(指定斜率相等的函数)


不过我们也知道,常数项在求导以后会变为 $0$,假设 $C$ 为常数,那么很显然 $-cos(x) + C$ 的导数也是 $sin(x)$。这就意味着,$\displaystyle \int sin(x) dx$ 不但可以为 $-cos(x)$,也可以是 $-cos(x)$ 加上任意常数 $C$。由于这种性质,我们把这样的积分称之为不定积分。正式的定义如下:

Given a function $f(x)$, the indefinite integral or the antiderivative of $f(x)$ is denoted $\displaystyle \int f(x)dx$. It is the family of functions:
$$\displaystyle \int f(x) \, dx \, = F(x) + C$$
where $F(x)$ is any antiderivative of $f(x)$, that is, $F′(x)=f(x)$, and $C$ is any constant.

我们称 $\displaystyle \int$ 为积分符号(integral sign), $f(x)$ 为被积函数 (integrand), and $C$ 为积分常数(constant of integration)。

从几何意义上来说,不定积分就像是已知斜率而去求原来函数的表达式一样。这样的函数只要满足指定的斜率即可。而满足指定斜率的函数可以由无数多个;表现在几何上就是一堆平行的函数。

因此,相同的两个不定积分的差,一定是一个常数

幂函数的不定积分

根据 Power Rule 可知,一般幂函数微分的形式可以写作:

$$ d(x^{a+1}) = (a+1)x^adx \tag{2.4.1} $$ 对该形式变形:

$$ x^adx = \frac {d(x^{a+1})}{a+1} $$

对两边同时取积分,我们可以推出对幂函数积分的一般公式:

$$ \int x^adx = \frac{x^{a+1}}{a+1} +C \tag{2.4.2} $$
不过这里有一个问题。对比结论 $2.4.1$ 与 $2.4.2$ 我们发现,在 $2.4.2$ 中, $a+1$ 做了分母,因此 $a$ 不能等于 $-1$。因此,我们需要对 $a=-1$ 的情况单独讨论。

我们将 $a=1$ 的情况直接带入 $2.4.2$ 的左边部分,结果有了新的发现:

$$ \int \frac{dx}{x} $$
这个被积函数非常明显,一看就是 $lnx$ 的导数。根据对数的求导公式,我们可以计算该积分为:

$$ \int \frac{dx}{x} = lnx + C $$
不过这里还有一个问题。我们知道 $lnx$ 只有在大于 $0$ 的时候才存在。那么当 $x < 0$ 时情况有怎么样呢?

我们需要构造一个函数,使得 $ln$ 内部的元素大于 $0$。 因此,有:

\begin{align} \frac{d}{dx}ln|x| &= \frac{d}{dx}ln(-x) \\\\ &= \frac{1}{-x} \cdot \frac{d}{dx}(-x) \\\\ &= \frac{1}{x} \end{align}

我们发现对于 $|x|$,无论 $x$ 的正负,其导数的值都是 $\frac{1}{x}$,因此,在 $a=-1$ 的情况下,幂函数函数的公式可以总结为:

$$ \int \frac{dx}{x} = \ln \left(|x|\right)+C $$

这里必须十分小心。$\ln \left(|x|\right)+C$ 只是一种总结的形式;它包括了 $x>0$ 与 $x<0$ 两种完全不同的情况;只是结果凑巧相等,因此可以归纳到一块;而并不代表操作(比如平移)对该两个定义域组成的整个区域上具有一致性(必须分开来进行运算)。



综上, 幂函数的不定积分公式可以归纳为:

$$ \displaystyle \int \, x^ p\ dx \, \, = \qquad \begin{cases} \displaystyle \frac{x^{p+1}}{p+1} +C & \mbox{if } p \neq -1 \\ \ln \left(|x|\right)+C & \mbox{if } p = -1. \end{cases} $$



之所以为出现分段函数的形式,是因为积分作为微分的逆运算,是需要通过中值定理来保证结果的;也就是说,如果我们希望对某个函数求积分,那么该函数的原函数必须在指定的区间上连续而且处处可微(中值定理的前提)。如果中间不连续,那么我们必须严格的按照分段来讨论。否则,我们无法保证求出来的表达式是否正确。

基础不定积分公式

根据求导的公式我们可以总结一些不定积分的公式如下:

  • $\displaystyle \int e^ x \, dx=e^ x+C$
  • $\displaystyle \int \cos (x) \, dx=\sin (x)+C$
  • $\displaystyle \int \frac{1}{1+x^2} \, dx=\arctan (x)+C$
  • $\displaystyle \int \frac{1}{\sqrt {1-x^2}} \, dx=\arcsin (x)+C$
  • $\displaystyle \int \sec (x)\tan (x) \, dx=\sec (x)+C$

不定积分的第一准则

常数与函数乘积的不定积分等于常数乘以函数的不定积分

该性质如下:

$$ \displaystyle \int k \, f(x)\, dx= k \int \, f(x) \, dx $$


简易证明:令 $F' = f$,那么 $(kF') = kF' = kf$ ,因此可得:
$$ \displaystyle \displaystyle \int k \, f(x) \, dx\ =\ k F(x)+C $$
根据上式,我们有:
$$\displaystyle \displaystyle k \ \left(\int \, f(x)\, dx\right) \ =\ k \cdot (F(x)+C) = k F(x) +k\cdot C \ =\ k F(x) + C_1$$
可以看出 $\displaystyle \int k \, f(x)\, dx$ 与 $ \displaystyle k \ \left(\int \, f(x)\, dx\right)$ 的结果差异仅在一个常数上。他们表现的是拥有相同导数的一组函数中的某一员,对于不定积分来说,两者是等价的。

函数和(差)的不定积分等于对应函数不定积分的和(差)

该性质表现为如下公式:

$$ \displaystyle \int \left(f(x)+g(x)\right)\, dx= \int f(x) \, dx + \int g(x) \, dx $$


简易证明:

令 $F' = f, G' = g$,那么 $(F+G)' = F' +G' = f+g$。

根据上述结果,我们有:

$$ \displaystyle \int \left(f(x)+g(x)\right) \, \, dx\ =\ F(x)+G(x) +C $$

又因为:
\begin{align} \displaystyle \displaystyle \int f(x)\, dx +\int g(x) \, dx &= \displaystyle \ (F(x)+C_1) +(G(x) +C_2)\\\\ &= \displaystyle F(x)+G(x)+(C_1+C_2) \end{align} 前面提到,在不定积分中,可以认为只有常数不同的函数是等价的;因此之前的性质成立。

函数积(商)的积分不等于函数积分的积(商)

该性质表现为如下:

$$\displaystyle \displaystyle \int f\cdot g\, \, dx \,\, \displaystyle \textbf{DOES NOT EQUAL} \,\, \displaystyle \ \left( \int \, f \, dx\right)\cdot \left(\int \, g \, dx\right)$$
$$\displaystyle \int \frac{f}{g} \, dx \,\, \displaystyle \textbf{DOES NOT EQUAL} \,\, \displaystyle \frac{ \int f \, dx }{ \int g\, dx}$$


以上的性质均可通过导数的性质进行验证。

不定积分的替换法

首先来看一个例子:

$$\int 3(sin(x))^2cos(x)dx$$

这样的乘积形式并不是我们之前遇到的基本形式,也不能应用第一准则。但我们可以发现的是,$cos(x)$ 正好是 $sin(x)$ 的导数。于是我们令 $u =sin(x)$,那么实际上这个积分就可以转换为:

$$\int 3u^2u' dx$$

接下来我们对 $u$ 进行 $x$ 的微分,那么有:$du = cos(x)dx = u'dx$。那么式子就可以转化为:

$$\int 3u^2 \cdot du$$

于是我们根据基本的幂函数积分公式就可以求得上述的积分结果,再将 $u =sin(x)$ 代入该积分结果即可得到最终结果。


上面的方法在遇到某些乘积形式的积分时(实际上是 Chain Rule 微分的一种表现形式)非常有用;我们将这种通过替换部分函数简化运算的方法称为换元法Method of substitution)。来看一看正式的定义:

The method of substitution is the integration analogue of the chain rule, If:
$$g(x)dx = \displaystyle f(u(x)) \, u'(x) dx,$$
that is, the integrand $g(x)$ can be seen as the result of a chain rule, then:
\begin{align} \displaystyle \displaystyle \int g(x)\, dx &= \displaystyle \int f(u(x))\, u'(x)\, dx\\\\ &=\displaystyle \int f(u)\, du\\\\ &=\displaystyle F(u(x))+C \end{align}

一些相关的小技巧如下:

  • 注意观察被积函数中每个部分的关系,是否存在一个部分为另外一个部分的导数。
  • 高次的部分一般为主要的替换对象。
  • 商的形式中,替换对象一般是分母(分子可以与 $dx$ 相乘表示 $du$)
  • 在替换对象不明显的情况下,可以尝试做一些代数上的变换。

Introduction to Differential Equation

假设我们有如下不定积分:
$$y=\int f(x)dx$$

我们知道上述积分的结果是导数为 $f(x)$ 的所有函数的集合。如果把这个集合作为解,我们可以得到如下的方程:
$$\frac{dy}{dx} = f(x)$$

很显然,之前的积分结果就是上述方程的解。但为什么非要写成这种形式呢?

来看一个物理学中的例子:$F=ma$。我们知道,$a$ 是物体的加速度,也就是距离之于时间的二阶导数。如果将距离表示为 $x$,那么上述的方程可以写为:

$$F=m \frac{dv}{dt} = m \frac{d^2x}{dt^2}$$

假设上面的例子中,我们并不能直接得到 $F$ 与 $a$ 之间的关系;但我们只拥有 $t$ 与 $x$ 的关系:(加速度 $\displaystyle \frac{d^2x}{dt^2}$,那我们实际上希望做的就是通过加速度来求力的表达式。
可以看到的是,上述方程中加速度代表了个变量的变化率的关系(表现为微分形式),然后希望得到的是一个另外两个变量新的关系(力)。因此可以看出,整个方程的求解的过程,就是通过一个函数(关系)得到另外一个函数(关系)

因为在微积分中,两个变量的关系往往可以表达为导数(微分)的形式,因此我们将这样的方程,称作微分方程Differential equation)。而积分,则代表了满足该方程的所有的解的集合。换句话说,微分方程的解,是一系列符合条件的函数

微分算子

为了计算过程中的方便,数学上往往将微分的过程记做:$\displaystyle \frac{d}{dx},\, or \,D_x$。该形式可以看做是一个运算符,我们称为微分算子Differential operator)。微分算子代表了一个运算过程:接受一个函数,得到另外一个函数。对于微分算子,有以下等价的关系:

$$ \frac{d}{dx}(f(x)) = \frac{df}{dx} = f'(x) $$

一种常用的写法及其等价形式: $\displaystyle \left(\frac{d}{dx} + x\right)y = \frac{dy}{dx} + xy$

可分解的微分方程

有一些微分方程的形式是可分解Separable)的,比如如下的方程:
$$ \frac{dy}{dx} = xy $$
这样的微分方程乍一看有两个变量,不是很好求解。但实际上,这样的方程可以分解为如下形式:

$$ \frac{dy}{y} = dx\cdot x $$
我们对方程两边分别求积分:
$$ \int \frac{dy}{y} = \int xdx $$
通过上面的步骤就可以得到 $y$ 的最终表达式,也就是本例微分方程的解了。这种可以将变量与其微分分别置于等号两边的形式,我们称为可分解的微分方程。这样的微分方程往往表现为 $\displaystyle \frac{dy}{dx}= f(x) g(y)$ 的形式,一般采用如下步骤求解:

  1. 将变量与其对应微分整合到一起:$\displaystyle \frac{dy}{g(y)} = f(x) dx$
  2. 对等式两边同时求积分:$\displaystyle \int \frac{dy}{g(y)}= \int f(x) dx$

微分方程的初始条件

前面提到微分方程的解是一系列满足条件的函数。如果我们需要指定其中的某一个函数,我们可以通过指定对应的变量值来确定这个函数。这一组对应的变量值,被称为初始条件Initial Conditions)。通过将这一组变量值代入微分方程的通用解,我们可以求出常数 $C$ 在该特定条件下的值,从而得出该特定函数的表达式。比如如下例子:

$\displaystyle \ \frac{dy}{dx} = y$ 的通用解是 $\displaystyle y = Ce^x$,如果我们已知初始条件 $y(0) = -2$ (即函数过点 $(0,-2)$),那么将这一组值代入通用解表达式计算可得出 $C$ 的值,从而可以得出该微分方程过 $(0,-2)$ 的独特解为 $y=-2e^x$。

根据初始条件求出来的微分方程的解,其定义域必须包括初始条件所在的位置。换句话说,如果微分方程的图像被未定义点分离,未包含初始条件的部分不能保证解的正确性。

初值定理

然而,并不是所有的初始条件都可以得到微分方程的独特解。对于这种情况,有一个定理如下:

Given a differential equation $\displaystyle \frac{dy}{dx}=f(x)g(y)$ and an initial condition $y(a)=b$, if $f, g$, and $g′$ are continuous near $(a,b)$, then there is a unique function $y$ whose derivative is given by $f(x)g(y)$ and that passes through the point $(a,b)$.

可以看出来,确保有独特解必须要两个条件:

  • 微分方程可分解 ($f(x)g(y)$ 形式)
  • 方程内所有函数必须连续。
  • 被微函数的导数必须连续

Euler's Method

有一些微分方程是不能被分解的。对于此类方程,我们可以用近似的方法来获取他的图像。我们知道导数是用于描述函数运动趋势的,因此我们可以采样一些点(初值),来看看函数的大概的走势如何。

Slope Field

因为微分方程的左边都可以看作是函数在某点切线的斜率,根据微分方程,我们代入初始条件的值就可以直接得到函数在该点斜率的值。如果我们拥有了足够的点,对函数的大致走向就会有一定的了解。 来看一个例子:$\displaystyle \frac{dy}{dx} = x+y$,该函数的斜率图如下所示:



图片来源:EDX MIT 6.001 Calculus B

欧拉方法的迭代过程

有了上述的图,我们可以判断函数的大致的走势了。那么有没有一种方法可以将函数计算出来?

到目前为止,我们可以用近似的方法来描绘函数。

来想象一下要怎么描绘这个函数:

  1. 因为我们有斜率图,因此我们可以最大程度的利用这些信息。
  2. 假设函数从某一点 $x_0$ 出发,也就是我们已知了函数对应的微分方程和初始条件值。
  3. 设想该函数通过某一个点 $x_1$,而该点离 $x_0$ 够近。

通过上面几个步骤,我们就能得到:

  • 方程在 $x_0$ 的初始条件值,以及在该点的斜率 $\displaystyle \frac {dy}{dx_0}$
  • 方程在 $x_0$ 附近的一个点 $x_1$ 处的近似值。

上面的条件是不是很眼熟?没错,我们的近似计算只需要这几个条件即可。在这里我们使用线性近似为例,根据以上条件,我们可以得到方程在 $x_1$ 点处的近似值:

$$ f(x_1) = f(x_0+ \Delta x) = \frac {dy}{dx_0} \cdot \Delta x + f(x_0) $$

通过以上这两步,我们就可以描绘出原函数其中的一段了。接下来,我们可以以当前的 $x_1$ 为新的起点,重复之前的步骤,找出 $x_1$ 下一个点 $x_2$ 之间的函数近似图像。这样反复的迭代,最终可以得到一条由线性近似的函数组成的“曲线”:


图片来源:WikiPedia

我们将上述描绘函数的方法称之为欧拉方法Euler's Method)。该方法同样适用于求解不可分解的微分方程。

可以想到的是,当我们把上述方法中的 $\Delta x$ 减小以后,我们可以通过更多的迭代步骤得到更高的精度。

来总结一下欧拉方法的步骤:

  1. 确定 $\Delta x$,也就是精度的大小(此处记为 $h$ )
  2. 设定初始条件值,也就是函数的出发点 $(x_0, y_0)$
  3. 根据线性近似我们可以算出下一个点的坐标,即:
    1. $x_1 = x_0+h$
    2. $y_1 = y_0+(x_0+y_0)h$
  4. 很显然,我们可以得到上述步骤的迭代表达式:
    1. $x_{k+1} = x_k+h$
    2. $y_{k+1} = y_k+(x_k+y_k)h$

该方法的 python 版本如下:

#set initial condition
x,y = x0, y0

#set step size
h=0.1

#count iterations of method
stepcounter = 0

#determine how many steps to take
while stepcounter < 1000:
   y= y+(x+y)*h
   x+=h
   stepcounter+= 1

参考与拓展