用人话讲解微积分

· · 个人记录

人类的聪明才智不理解运动的绝对连续性。人类只有在他从某种运动中任意抽出若干单位来进行考察时,才逐渐理解。但是,正由于把连续的运动任意分成不连续的单位,从而产生了人类大部分的错误。

古代有一个著名的“诡辩”,说的是阿奇里斯永远追不上乌龟,虽然他比乌龟走得快十倍:阿奇里斯走完他和乌龟之间的距离时,乌龟在他前面就爬了那个距离的十分之一;阿奇里斯走完这十分之一的距离时,乌龟又爬了那个距离的百分之一,如此类推,永无止境。这个问题在古代人看来是无法解决的。阿奇里斯追不上乌龟这个答案之所以荒谬,就是因为把运动任意分成若干不连续的单位,而实际上阿奇里斯和乌龟的运动却是连续不断的。

把运动分成越来越小的单位,这样处理,我们只能接近问题的答案,却永远得不到最后的答案。只有采取无穷小数和由无穷小数产生的十分之一以下的级数,再求出这一几何级数的总和,我们才能得到问题的答案。数学的一个新的分支,已经有了处理无限小数的技术,其他一些更复杂的、过去似乎无法解决的运动问题,现在都可以解决了。

这种古代人所不知道的新的数学分支,用无限小数来处理运动问题,也就是恢复了运动的重要条件,从而纠正了人类的智力由于只考察运动的个别单位而忽略运动的连续性所不能不犯的和无法避免的错误。

在探讨历史的运动规律时,情况完全一样。

由无数人类的肆意行为组成的人类运动,是连续不断的。

了解这一运动的规律,是史学的目的。但是,为了了解不断运动着的人们肆意行动的总和的规律,人类的智力把连续的运动任意分成若干单位。史学的第一个方法,就是任意拈来几个连续的事件,孤立地考察其中某一事件,其实,任何一个事件都没有也不可能有开头,因为一个事件永远是另一个事件的延续。第二种方法是把一个人、国王或统帅的行动作为人们肆意行动的总和加以考察,其实,人们肆意行动的总和永远不能用一个历史人物的活动来表达。

历史科学在其运动中经常采取越来越小的单位来考察,用这种方法力求接近真理。不过,不管历史科学采取多么小的单位,我们觉得,假设彼此孤立的单位存在,假设某一现象存在着开头,假设个别历史人物的活动可以代表所有人们的肆意行为,这些假设本身就是错误的。

任何一个历史结论,批评家不费吹灰之力,就可以使其土崩瓦解,丝毫影响都不会留下,这只消批评家选择一个大的或者小的孤立的单位作为观察的对象,就可以办到了;批评家永远有权利这样做,因为任何历史单位都是可以任意分割的。

只有采取无限小的观察单位——历史的微分,也就是人的共同倾向,并且运用积分的方法(就是得出这些无限小的总和),我们才有希望了解历史的规律。

——列夫·托尔斯泰,《战争与和平》

本篇文章使用可以让大多数人理解的语言阐述微积分的部分概念,使用方式。

极限

极限是导数的基础,因此这里先介绍极限。

极限,根据文本,大约是指无限接近而不等于的说法。例如,设函数 f(x)=(x-1)/(x^2-1),于是,我们搞出它接近于 1 时的极值。

这是从负方向接近 1 时的值:

x f(x)
0 1
0.5 0.666667
0.75 0.571429
0.9 0.526316
0.99 0.502513
0.999 0.50025
0.9999 0.500025
0.99999 0.500003

而这是从正方向接近 1 时的值:

x f(x)
2 0.333333
1.5 0.4
1.25 0.444444
1.1 0.47619
1.01 0.497512
1.001 0.49975
1.0001 0.499975
1.00001 0.499998

所以,f(x)x 趋近于 1 的值似乎是 0.5,但怎么样在才能让它等于呢?

这时我们便可以使用极限。我们写下这样的式子

\lim_{x\to 1}f(x)

就代表当 x 趋近于(无限接近而不等于)1f(x) 的取值,那么我们写开 f(x) 就得到

=\lim_{x\to1}\frac{x-1}{x^2-1}

现在,对后面的式子的分母因式分解就得到

=\lim_{x\to 1}\frac{x-1}{(x+1)(x-1)}

现在,约掉一个 x-1。因为这里 x\neq 1(趋近于但不等于),因此我们不讲道理地约掉 x-1,就得到了

=\lim_{x\to 1}\frac{1}{x+1}

现在,没有什么能阻止我们求出这个式子了,于是将 x 带入,就得到

=\frac{1}{2}

请注意, \lim 的意义并非等于,而是在某个变量趋近于某值的时候,另一个变量趋近于的值,因此在这里进行约分与约分的可行性无关。

请再次注意,以上的话并非人话,你可以无视之。

例如,下面极限 $$\lim_{x\to 0}\frac{|x|}{x}$$ 不存在。理由:$x$ 从左接近 $0$ 和从右接近 $0$ 时的值不同,我们可以记作 $$\lim_{x\to 0^-}\frac{|x|}{x}\neq\lim_{x\to 0^+}\frac{|x|}{x}$$ 最后介绍两个重要极限: $$\lim_{\theta\to0}\frac{\sin\theta}{\theta}=1$$ 以及自然常数 $e$ 的定义 $$e=\lim_{z\to\infty}\left(1+\frac{1}{z}\right)^z$$ [这里](https://zhuanlan.zhihu.com/p/469223561)有篇关于自然常数的好文章,诸位可以去看一看。这里不说极限了,后面再用。 ## Ex.极限的定义 我们还是拿出上表 > 设函数 $f(x)=(x-1)/(x^2-1)$,于是,我们搞出它接近于 $1$ 时的极值。 > > 这是从负方向接近 $1$ 时的值: > > |$x$|$f(x)$| > |:-:|:-:| > |$0$|$1$| > |$0.5$|$0.666667$| > |$0.75$|$0.571429$| > |$0.9$|$0.526316$| > |$0.99$|$0.502513$| > |$0.999$|$0.50025$| > |$0.9999$|$0.500025$| > |$0.99999$|$0.500003$| > > 而这是从正方向接近 $1$ 时的值: > > |$x$|$f(x)$| > |:-:|:-:| > |$2$|$0.333333$| > |$1.5$|$0.4$| > |$1.25$|$0.444444$| > |$1.1$|$0.47619$| > |$1.01$|$0.497512$| > |$1.001$|$0.49975$| > |$1.0001$|$0.499975$| > |$1.00001$|$0.499998$| 而后,我们得到了一个结论 > $$\lim_{x\to1}\frac{x-1}{x^2-1}=\frac{1}{2}$$ 我们可以看到,在 $|x-1|$ 的大小减少时,$|f(x)-\frac{1}{2}|$ 的大小也在减少。 那么,我们是不是可以说,对于任意小的 $\epsilon$,我们都可以找出一个 $\delta$,可以让 $|f(x)-\frac{1}{2}|<\epsilon$ 并且 $0<|x-1|<\delta$?($x$ 当然不能取到 $1$。) 对于这个函数,答案当然是可行的,因此我们可以写成如上的极限。 而后我们就可以导出对于极限的定义。假若一个函数在 $I$ 上……不想写了。 # 导数 导数是微分的基础,因此这里先引入导数。 ## 引入 现在设我们的函数 $f(x)=x^2$,相当简单的一个函数。 现在,我们给出两个参数 $x_0,x_1$ ,求出 $\dfrac{f(x_1)-f(x_0)}{x_1-x_0}$ 的值。 当然,我们可以简化一下问题 ~~(或许是复杂一下问题)~~,令 $\Delta x=x_1-x_0$,求出 $\dfrac{f(x_0+\Delta x)-f(x_0)}{\Delta x}$ 的值。 这里计算一下,就是 $\dfrac{2x\Delta x+\Delta x^2}{\Delta x}$。 现在如果我们定住 $x_0$ 并缩小 $\Delta x$ 会发生什么呢? 现在设 $x_0=2$,我们就得到下面一张表: |$f(x_0+\Delta x)$|$\dfrac{f(x_0+\Delta x)-f(x_0)}{\Delta x}$| |:-:|:-:| |$49$|$9$| |$36$|$8$| |$25$|$7$| |$16$|$6$| |$9$|$5$| |$4.41$|$4.1$| |$4.0401$|$4.01$| |$4.004$|$4.001$| |$4.0004$|$4.0001$| |$4.00004$|$4.00001$| 可以看见,当 $\Delta x$ 逐渐趋近于 $0$ 的时候,右面一列的式子趋近于 $4$。 可是我们怎么证明它呢? 这时,极限就出场了。列极限 $$\lim_{\Delta x\to 0}\frac{f(x_0+\Delta x)-f(x_0)}{\Delta x}$$ 并计算得到 $$=\lim_{\Delta x\to 0}\frac{2x_0\Delta x+\Delta x^2}{\Delta x}$$ 然后就有 $$=\lim_{\Delta x\to 0}(2x_0+\Delta x)$$ 然后就得到 $2x_0$,带入得到 $4$。由此可知,导数是一种极限。 好的,以上就是导数。而导数的一般式就是计算过程中第一个式子,即 $$f'(x_0)=\lim_{\Delta x\to 0}\frac{f(x_0+\Delta x)-f(x_0)}{\Delta x}$$ 当然,我们可以接着对导数求导,称为二阶导,即 $$f''(x_0)=\lim_{\Delta x\to 0}\frac{f'(x_0+\Delta x)-f'(x_0)}{\Delta x}$$ ## 导数的表示 这里介绍三种表示方式。 第一种就是牛顿的符号:$\dot y$ 代表导数而 $\ddot y$ 代表二阶导数。想象一下,牛顿的符号求一百阶导,你就知道它为什么不通用了。 甚至不需要想象,在现有的条件下,我们就可以记作: $$\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{\ddot{x}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}$$ 第二种就是莱布尼茨的记法 $\dfrac{\mathrm df(x)}{\mathrm dx}=\dfrac{\mathrm dy}{\mathrm dx}$,这里暂时可以理解成 $\mathrm dy$ 与 $\mathrm dx$ 之比。它的二阶导数是 $\dfrac{\mathrm d^2f(x)}{\mathrm dx^2}$,即 $\dfrac{\mathrm d}{\mathrm dx}$ 与 $\dfrac{\mathrm df(x)}{\mathrm dx}$ 的乘积,便于理解的同时简明易懂。 第三种就是拉格朗日的记法 $f'(x)$,其二阶导数表示为 $f''(x)$。注意,这里的一百阶导记作 $f^{(100)}(x)$ 而非 $f''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''(x)$ ~~(找抽)~~,不然这也不通用了。*在特殊情况下,对 $x$ 求导可以记作 $f'_x(x)$。* 后面的文章中,我们只使用底下的两种记法。 下面,我们便给出导数的一般式 $$\frac{\mathrm dy}{\mathrm dx}=f'(x)=\lim_{\Delta x\to 0}\frac{f(x+\Delta x)-f(x)}{\Delta x}$$ OK,下面我们先给出一群导数基础一般式,然后再介绍导数的运算。 ## 部分函数的导数 估计够全了,包括基础的数值函数,三角函数和反三角函数。 在下面的列表中,$x$ 代表函数的自变量,$n$ 是一个常数。 $$f(x)=n,f'(x)=0$$ $$f(x)=x^n,f'(x)=nx^{n-1}$$ $$f(x)=n^x,f'(x)=n^x\ln n$$ $$f(x)=\log_n x,f'(x)=\frac{1}{x\ln n}$$ 特别地,对于上面两个函数,有 $$f(x)=e^x,f'(x)=e^x$$ $$f(x)=\ln x,f'(x)=\frac{1}{x}$$ $$f(x)=\sin x,f'(x)=\cos x$$ $$f(x)=\cos x,f'(x)=-\sin x$$ $$f(x)=\sin^{-1} x,f'(x)=\frac{1}{\sqrt{1-x^2}}$$ $$f(x)=\cos^{-1} x,f'(x)=-\frac{1}{\sqrt{1-x^2}}$$ 这里就是基础用表了。 然而这似乎还不够;使用这些函数的组合,我们该怎么办? 例如,$f(x)=(\cos^{-1} x)(x^2+\sin (\ln x))$? 请再看本文的诸位先往下看,然后再回头来解。 **注意:以下的证明若上文不理解者可以免观。** ### 和的导数 再这一小节和后两个小节我们都给出三个函数 $f(x),g(x)$ 和 $h(x)$,而后我们可以来搞一搞。 现在我们就设:$f(x)=g(x)+h(x)$,求 $f'(x)$。 要借助定义,我们就可以知道: $$f'(x)=\lim_{\Delta x\to 0}\frac{f(x+\Delta x)-f(x)}{\Delta x}=\lim_{\Delta x\to 0}\frac{g(x+\Delta x)+h(x+\Delta x)-g(x)-h(x)}{\Delta x}$$ 现在,根据加法交换律,我们就有 $$=\lim_{\Delta x\to 0}\frac{g(x+\Delta x)-g(x)+h(x+\Delta x)-h(x)}{\Delta x}$$ $$=\lim_{\Delta x\to 0}\frac{g(x+\Delta x)-g(x)}{\Delta x}+\lim_{\Delta x\to 0}\frac{h(x+\Delta x)-h(x)}{\Delta x}$$ $$=g'(x)+h'(x)$$ 好的,于是我们就在我们的表上加上: $$f(x)=g(x)+h(x),f'(x)=g'(x)+h'(x)$$ 的这么一条,于是我们便可以计算 $f(x)=x^2+\sin x$ 的导数 $f'(x)=2x+\cos x$ 了。 ### 积的导数 很简单,还是设 $f(x)=g(x)h(x)$,根据定义,我们就有 $$f'(x)=\lim_{\Delta x\to 0}\frac{f(x+\Delta x)-f(x)}{\Delta x}=\lim_{\Delta x\to 0}\frac{g(x+\Delta x)h(x+\Delta x)-g(x)h(x)}{\Delta x}$$ 看上去有些困难,因为我们已经失去了可供合并同类项或其他的方式,不过——根据加一个数并减这个数后原数不变,我们就有 $$=\lim_{\Delta x\to 0}\frac{g(x+\Delta x)h(x+\Delta x)+g(x+\Delta x)h(x)-g(x+\Delta x)h(x)-g(x)h(x)}{\Delta x}$$ 啊,好吧,顺序错了,我们改一下: $$=\lim_{\Delta x\to 0}\frac{g(x+\Delta x)h(x+\Delta x)-g(x+\Delta x)h(x)+g(x+\Delta x)h(x)-g(x)h(x)}{\Delta x}$$ 现在合并一下同类项: $$=\lim_{\Delta x\to 0}\frac{g(x+\Delta x)(h(x+\Delta x)-h(x))+h(x)(g(x+\Delta x)-g(x))}{\Delta x}$$ 并拆开极限 $$=\lim_{\Delta x\to 0}\frac{g(x+\Delta x)(h(x+\Delta x)-h(x))}{\Delta x}+h(x)\lim_{\Delta x\to 0}\frac{g(x+\Delta x)-g(x)}{\Delta x}$$ 而后根据定义简化成 $$=g(x)h'(x)+h(x)g'(x)$$ 即可。于是我们再次添加上一条,即 $$f(x)=g(x)+h(x),f'(x)=g(x)h'(x)+h(x)g'(x)$$ 于是,我们便可以计算常数乘法 $f(x)=kg(x)$ 则根据上边的导数表,我们就有 $f'(x)=kg'(x)$。 现在上例子,例如 $f(x)=x^2 \sin x$,我们就有 $f'(x)=x^2\cos x+2x\sin x$。 ### 商的导数 这里——根据名称——很明显,我们想要当 $f(x)=\dfrac{g(x)}{h(x)}$ 的时候的 $f'(x)$。 这里并不像给出证明,读者自行给出 ~~(是不是想揍作者了)~~,给出结果,也即 $f'(x)=\dfrac{h(x)g'(x)-g(x)h'(x)}{h(x)^2}$。 ### 复合函数的导数 这是最恐怖的东西。我们设 $f(x)=g(h(x))$,那么就有 $f'(x)=f'_{g(x)}(g(x))g'(x)$;我们试试康康为什么。 首先,我们明白极限的定义: $$f'(x)=\lim_{\Delta x\to 0}\frac{g(h(x+\Delta x))-g(h(x))}{\Delta x}$$ 然后我们变个魔术: $$=\lim_{\Delta x\to 0}\frac{g(h(x+\Delta x))-g(h(x))}{h(x+\Delta x)-h(x)}\cdot\frac{h(x+\Delta x)-h(x)}{\Delta x}$$ 而后,拆成两个极限: $$=\lim_{\Delta x\to 0}\frac{g(h(x+\Delta x))-g(h(x))}{h(x+\Delta x)-h(x)}\cdot\lim_{\Delta x\to 0}\frac{h(x+\Delta x)-h(x)}{\Delta x}$$ 根据定义,第二个式子很容易,而第一个式子的分母……是什么? 由于我们取了 $\Delta x\to 0$ ,那么 $h(x+\Delta x)-h(x)\to 0$ ,因此我们的第二个式子我们可以改写一下,即 $$=\lim_{\Delta h(x)\to 0}\frac{g(h(x)+\Delta h(x))-g(h(x))}{\Delta h(x)}\cdot h'(x)$$ 于是—— $$=g'_{h(x)}(h(x))h'(x)$$ 好的,用重新写一下,就可以压入表中: $$f(x)=g(h(x)),f'(x)=g'_{h(x)}(h(x))h'(x)$$ 好,结束。 用微分记录的导数就记作 $$\frac{\mathrm df(g(x))}{\mathrm dx}=\frac{\mathrm df(g(x))}{\mathrm dg(x)}\cdot\frac{\mathrm dg(x)}{\mathrm dx}$$ 现在你应该可以解 $f(x)=(\cos^{-1} x)(x^2+\sin (\ln x))$ 的导数 $f'(x)$ 了吧 :-P。 另外,这里不提供答案,因为它很易于计算。~~(是不是又想揍作者了)~~ ## 导数的意义 好的,在这里~~逼逼叨叨~~这么多计算,你肯定也烦了,因此我们来康康它的意义。 现在,我们设有一辆自行车,再数轴上运动,其关于时间的坐标,我们记作 $x(t)$。注意,这里 $x(t)$ 可以为负数,毕竟自行车可以移动到原点左边。 而后,我们想知道它的速度。 小学我们就知道,这辆自行车在一段时间内的平均速度,就是移动的距离除以时间的变化量,即 $$v=\frac{x(t_1)-x(t_0)}{t_1-t_0}$$ 然而,这个方式在仪表盘上很快行不通了。由于计算的是自行车瞬间移动的速度,因此我们需要将经过的时间往小了取,直至化为无穷小,即 $$v(t_0)=\lim_{t\to t_0}\frac{x(t)-x(t_0)}{t-t_0}$$ 是不是有点熟悉? 将原式改写一下,我们就可以得到导数的表述方式: $$v(t_0)=x'(t_0)=\lim_{\Delta t\to 0}\frac{x(t_0+\Delta t)-x(t_0)}{\Delta t}$$ 很简单吧! 所以,导数就是极短时间内的速度。 当然加速度的定义就是速度在短时间内的变化,因此二阶导数对应的意义便是加速度。 是不是挺有趣? ## 微分 为什么讲了导数这么久才开始讲微分? 这是因为,微分的现代定义与导数类似。 前文提到,我们可以将 $\frac{\mathrm dy}{\mathrm dx}$ 看作两个无穷小量的比值,然而很快人们就发现它行不通,例如当 $y=x^2$ 时的导数 $$\frac{\mathrm dy}{\mathrm dx}=\frac{(x+\mathrm dx)^2-x^2}{\mathrm dx}=\frac{2x\mathrm dx+\mathrm dx^2}{\mathrm dx}$$ $$=2x+\mathrm dx=2x$$ 这就让人们产生了困惑,以下是我编的~~两位哲人~~的对话: > 华强:你这 $\mathrm dx$ 等于 $0$ 吗 > > 郝哥:我一搞数学的,能将 $0$ 作为分母,还能约掉? > > 华强:我问你你这 $\mathrm dx$ 等于 $0$ 吗 > > 郝哥:你是故意找~~猹~~是不是啊,要不要吧 > > 华强:你这 $\mathrm dx$ 等于 $0$ 我肯定要啊,那它要是不等于 $0$ 怎么办呀 > > 郝哥:要是不等于 $0$,我挨劈,满意了吧 > > (待郝哥写完计算后) > > 华强:你这 $\mathrm dx$ 就等于 $0$,你这算式有问题吧 > > 郝哥:你他妈故意找~~猹~~儿是不是,你要不要吧,你要不要 > > 华强(指着 $2x+\mathrm dx=2x$):等于 $0

华强:另外你说的,这 \mathrm dx 等于 0,你自己挨劈,啊

郝哥:你他妈推翻我证明是吧,我

【haore!杀人啦,杀人啦,郝哥,杀人啦,杀人啦】

由此可见,之前对于导数与 \mathrm dx 的定义是极度模糊的,由此,我们需要一种新的定义来修补这个错误。

然而微分的定义实在不是人话,现在我来给你缕一缕:

现在我们设有一个函数 y=f(x) ,而增长了 \Delta x,我们就有如下的式子:

\Delta y=f(x+\Delta x)-f(x)

在大多数情况下,我们可以将上面的式子表示成下面的样子

\Delta y=A\Delta x+\omicron(\Delta x)

在这里,A\Delta x 分离了,就像当 x^2 时的 \Delta y

\Delta y=2x\Delta x+(\Delta x^2)=2x\Delta x+\omicron(\Delta x)

这里的 \omicron(\Delta x) 代表的是 \Delta x 的二次方以上,被称作高阶无穷小。

现在,我们便将 A\Delta x\Delta x 趋于 0 的极限,也就是说,

\lim_{\Delta x\to 0}\Delta y=\lim_{\Delta x\to 0}A\Delta x+\omicron(\Delta x)

现在,我们分别取 \mathrm dy\mathrm dx 分别为 \Delta y\to 0\Delta x\to 0,而后省略掉高阶的无穷小,我们就有

\mathrm dy=A\mathrm dx

这便是微分了。

还是以刚刚的 x^2 距离,则式子就是这样写:

\mathrm d(x^2)=2x\mathrm dx

微分与导数的关系是这样的,因为

\mathrm df(x)=A\mathrm dx

所以

\frac{\mathrm df(x)}{\mathrm dx}=f'(x)=A

也就是说,导数乘上 \mathrm dx 就是微分!大惊喜啊!

所以,我们就得到了我们的微分公式

\mathrm df(x)=f'(x)\mathrm dx

然后,我们可以通过导数表制出微分表。不用背,如果你背了导数表的话

\mathrm dC=0 \mathrm dx^n=nx^{n-1}\mathrm dx \mathrm dn^x=n^x\ln n\mathrm dx \mathrm d\log_n x=\frac{\mathrm dx}{x\ln n}

特别地,对于上面两个函数,有

\mathrm de^x=e^x\mathrm dx \mathrm d\ln x=\frac{\mathrm dx}{x} \mathrm d\sin x=\cos x\mathrm dx \mathrm d\cos x=-\sin x\mathrm dx \mathrm d\sin^{-1} x=\frac{\mathrm dx}{\sqrt{1-x^2}} \mathrm d\cos^{-1} x=-\frac{\mathrm dx}{\sqrt{1-x^2}} \mathrm d(x+y)=\mathrm dx+\mathrm dy \mathrm d(xy)=x\mathrm dy+y\mathrm dx \mathrm df(g(x))=f'_{g(x)}(g(x))g'(x)\mathrm dx

洛必达法则

什么是洛必达法则?

洛必达法则就是:

\lim_{x\to c}\frac{f(x)}{g(x)}=\lim_{x\to c}\frac{f'(x)}{g'(x)}

例如

\lim_{x\to 0}\frac{e^x}{x}=\lim_{x\to 0}\frac{(e^x)'}{x'}=\lim_{x\to 0}e^x=1

很简单吧!

证明,略。至于它有什么用,我也不知道。

积分

积分,不用说你也知道这是微积分的第二部分,也是它最恐怖的部分。

积分分为定积分和不定积分,而后者就是求原函数的过程。

一般来讲,对于定积分,如果有好的数值算法可以逼近,我们就用它来逼近。当然,在可以求出原函数的条件下,我们就可以使用原函数进行定积分的运算。

至于不定积分,就看着办吧。

总之,积分不是很容易的东西。所以,接下来的内容,需要一点点心理准备。

原函数

什么是原函数?

原函数,就是指一个函数 F(x),它的微分等于 f(x)\mathrm dx。即

\mathrm dF(x)=f(x)\mathrm dx

也就是说,找原函数的过程与微分相反!

我们可以将找原函数的过程写作

\int f(x)\mathrm dx=F(x)

然而…………

某个函数的原函数,不管是什么函数,都有无穷多个!

为什么?

来康这样一个例子,还是那辆自行车,它的速度是 v(t)=2t。很显然,我们可以猜出:它的位置函数是 x(t)=x^2

然而,不幸的是,由于速度与位置无关,因此这辆自行车可能在 t=0 时出现在数轴上的任何位置。

是不是有点疯狂?

没事,我们可以直接记作 C,作为它起始的位置,因此位置函数可以被重写为 x(t)=x^2+C

因此,在找原函数的过程中需要加上这个可能为任何值的常数。不过,按照数学人的一贯传统,我们就将一个常数记作 C

因此,找原函数的过程可以被重写为

\int f(x)\mathrm dx=F(x)+C

这是因为…………

\int f(x)\mathrm dx=\int\mathrm d(F(x)+C)=F(x)+C

我们可以直观地看出,”求原函数“和”求微分“是一对逆运算。

当然,F(x)+C 实际上是一个无穷大的函数集合,不过在实际运算中我们不管这些。

我们可以从导数表给出积分表,照例需要背会……:

\int n\mathrm dx=nx+C \int x^n\mathrm dx=\frac{x^{n+1}}{n+1}+C,n\neq -1 \int \frac{1}{x}\mathrm dx=\ln x+C \int n^x\mathrm dx=\frac{n^x}{\ln n}+C

特别地,对于上面函数,有

\int e^x\mathrm dx=e^x+C \int\sin x\mathrm dx=-\cos x+C \int\cos x\mathrm dx=\sin x+C \int \frac{1}{\sqrt{1-x^2}}\mathrm dx=\sin^{-1} x+C \int \frac{\mathrm dx}{\sqrt{1-x^2}}=-\cos^{-1} x+C

够多了。

我们来逝一下,例如对于 2x 进行积分:

\int 2x\mathrm dx

先将常数提到积分号前面

=2\int x\mathrm dx

根据前面的公式,我们就有

=2\frac{x^2}{2}+C=x^2+C

当然,乘以常数 2 可以,那么加法也不是不可以:

\int 5x+\sin x\mathrm dx=\int 5x\mathrm dx+\int\sin x\mathrm dx=\frac{5}{2}x^2-\cos x+C

由于求导和积分是一对逆运算,我们当然可以把结果导回去,导出原来的数值:

(x^2+C)'=2x

后一个就不导了罢。

然而,虽然求微分和求原函数是一对逆运算,但是……

微分是简易的,而求原函数是地狱的。

例如下面的两个函数:

f(x)=\frac{1}{x^5} g(x)=\frac{1}{x^5+1}

现在你们认为它们的原函数接近吗?

如果你答是,你就完了。

因为

\int\frac{1}{x^5}\mathrm dx=\int x^{-5}\mathrm dx=-\frac{1}{4x^4}+C

\int\frac{1}{x^5+1}\mathrm dx =\dfrac{\sqrt{5-\sqrt{5}}\,\left(\left(\sqrt{5}-1\right)\,i\,\ln\left(\left|4\,\sqrt{2}\,x+2\,\sqrt{5-\sqrt{5}}\,i-\sqrt{2}\,\sqrt{5}-\sqrt{2}\right|\right)+\left(1-\sqrt{5}\right)\,i\,\ln\left(\left|4\,\sqrt{2}\,x-2\,\sqrt{5-\sqrt{5}}\,i-\sqrt{2}\,\sqrt{5}-\sqrt{2}\right|\right)\right)}{2\,\sqrt{2}\,5\,\sqrt{5}-5\cdot 2\,\sqrt{2}} +\dfrac{\left(2\,\sqrt{2}\,\sqrt{5}-2\,\sqrt{2}\right)\,\ln\left(\left|x+1\right|\right)}{2\,\sqrt{2}\,5\,\sqrt{5}-5\cdot 2\,\sqrt{2}} +\dfrac{\left(3\,\sqrt{2}-\sqrt{2}\,\sqrt{5}\right)\,\ln\left(2\,{x}^{2}+\left(\sqrt{5}-1\right)\,x+2\right)}{2\,\sqrt{2}\,5\,\sqrt{5}-5\cdot 2\,\sqrt{2}} -\dfrac{2\,\sqrt{2}\,\ln\left(2\,{x}^{2}+\left(-\sqrt{5}-1\right)\,x+2\right)}{2\,\sqrt{2}\,5\,\sqrt{5}-5\cdot 2\,\sqrt{2}} +\dfrac{\sqrt{\sqrt{5}+5}\,\left(2\,\sqrt{5}-2\right)\,\arctan\left(\frac{4\,\sqrt{2}\,x+\sqrt{2}\,\sqrt{5}-\sqrt{2}}{2\,\sqrt{\sqrt{5}+5}}\right)}{2\,\sqrt{2}\,5\,\sqrt{5}-5\cdot 2\,\sqrt{2}}+C

天哪!

不定积分实在是有些恐怖!

因此,为了弄明白不定积分到底是怎么求,我们这里写的内容尽量长些。

变量代换

什么是变量代换?

\mathrm df(g(x))=f'_{g(x)}(g(x))g'(x)\mathrm dx

而后我们对式子的两端进行积分,就有

f(g(x))=\int f'_{g(x)}(g(x))g'(x)\mathrm dx

下面我们将 f 变成 F,就有

F(g(x))=\int f(g(x))g'(x)\mathrm dx

既然如此,我们就可以写

\int f(g(x))\mathrm dg(x)=\int f(g(x))g'(x)\mathrm dx

于是我们就有了第一类换元法:

\int f(g(x))g'(x)\mathrm dx=\int f(g(x))\mathrm dg(x)

下面我来写一个例子教你怎么用这玩意。

例如我们可以积一下

\int2\sin 2x\mathrm dx

既然外面有 2,还有熟悉的 2x,它的导数就是 2x,那么何不用之?

=\int \sin 2x(2x)'\mathrm dx=\int\sin 2x\mathrm d(2x)=-\cos(2x)+C

而后——我们需要更多的例子。(微分需要的是证明,而积分需要的是练习。)

\int\frac{1}{3x+2}\mathrm dx

现在——我们将 3x+2 作为一个整体看待。然而我们环顾了积分周围,却没有出现 3。不过没关系,我们可以凭代数定理变出一个,然后再让它消失。

=\frac{3}{3}\int\frac{1}{3x+2}\mathrm dx=\frac{1}{3}\int\frac{3}{3x+2}\mathrm dx=\frac{1}{3}\int\frac{(3x+2)'}{(3x+2)}\mathrm dx

然后我们可以通过变量代换的方式,即暂时设 t=3x+2,就有

=\frac{1}{3}\int\frac{1}{t}\mathrm dt=\frac{1}{3}\ln t+C

然后,再给它带回去。

=\frac{1}{3}\ln (3x+2)+C

这便是我们的刚刚的解了。

为了避免让读者生疏,我这里给出一个练习(够少了吧……但不排除读者再次想要揍作者的可能,毕竟这里不给答案。

\int 3x^2\sqrt{x^3+1}\mathrm dx

分部积分

什么是分部积分?

我们知道,

\frac{\mathrm d(uv)}{\mathrm dx}=u\frac{\mathrm dv}{\mathrm dx}+v\frac{\mathrm du}{\mathrm dx}

也即

\mathrm d(uv)=u\mathrm dv+v\mathrm du

根据等式基本定理 (瞎编的),我们可以移一下项:

v\mathrm du=\mathrm d(uv)-u\mathrm dv

而后,我们可以对等式两边积分:

\int v\mathrm du=\int\mathrm d(uv)-\int u\mathrm dv

而后,删除不必要的积分号,我们就有

\int v\mathrm du=uv-\int u\mathrm dv

这便是分部积分了。

怎么进行分部积分呢?最著名的一个例子是

\int x\ln x\mathrm dx

现在我们将它与 \int v\mathrm du 一项一项对应起来,我们就有

v=\ln x,\mathrm du=x\mathrm dx

而后,我们就有

\mathrm dv=\frac{\mathrm dx}{x},u=\frac{1}{2}x^2(+C)

括号表明,这里的 +C是不必要的。这时我们代入公式,则原式

=\frac{x^2}{2}\cdot\ln x-\int \frac{x^2}{2}\frac{\mathrm dx}{x}

于是,我们可以使用常规方式消掉所有式子:

=\ln x\frac{x^2}{2}-\frac{1}{2}\int x\mathrm dx=\frac{x^2\ln x}{2}-\frac{x^2}{4}+C

再次给出一个例子

\int x\sin x\mathrm dx

按照刚才的思想,我们可以试一下 \overline u=\sin x,\mathrm d\overline v=x\mathrm dx,而后,

\mathrm d\overline u=\cos x,\overline v=\frac{x^2}{2}

那么,代入!

=\sin x\frac{x^2}{2}-\int\frac{x^2}{2}\cos x\mathrm dx

呃……看上去后者似乎变得更难了。那么,换一种思路试试?

\overline u=x,\mathrm d\overline v=\sin x \mathrm d\overline u=\mathrm dx,v=-\cos x

那么原式,就

=-x\cos x+\int\cos\mathrm dx

好!我们能用普通方法消灭它了。

=\sin x-x\cos x+C

那么,怎么验证呢?

由于求原函数和求导是一对逆运算,因此将原来的东西导出来,我们就可以验证答案的正确性了。

当然,为了让读者练习导数,这里就不验证啦~~~

还是按照上面,我们给出一个例子:

\int\ln x\mathrm dx

定积分

这一节介绍的内容,让前面的不定积分有了真正的用处。

但,至少,让我们先来康一下什么是定积分。

首先,定积分的定义,这里使用最流行的黎曼积分的定义:将函数曲线下的图形切成非常非常非常多的矩形,而后取矩形的宽为 0 的极限。

(图像请自行脑补。)

现在,如果我们将这个写成一种数学式子,即

对于区间 [a,b],我们将其劈成许多个区间 [x_i,x_{i+1}],其中 x_0=a,x_n=b,并且 x_0<x_1<\cdots<x_i<x_{i+1}\cdots<x_{n-1}<x_n,而后取 \Delta x_i=x_{i+1}-x_i,我们就将定积分表述成这样:

\int_b^af(x)\mathrm dx=\lim_{\min\{\Delta x\}\to 0}\sum_{i=0}^{n-1}\Delta x_if(x_i)

式子是不是和上面的形象记忆挺像的?如果是,那么你就了解了定积分。

当然上述定义可以拿来近似。其中一种方式 (可能是在 OI 中你唯一用得到的) 叫作自适应辛普森。不过我们先搞出计算定积分的简单方式,然后再来看这个。

首先,我们必须搞明白定积分的一些性质:

\int_a^a f(x)\mathrm dx=0

这个理解起来很容易,毕竟对“什么都没有”进行积分,得到的就是“什么都没有”。

还有

\int_a^bf(x)\mathrm dx=-\int_b^af(x)\mathrm dx

这个理解起来有点困难,不过如果我们理解有向面积,这个理解起来就容易了。(不过——看上去这不符合定义……)

还有下面的几个式子:

\int_a^b f(x)\mathrm dx+\int_b^c f(x)\mathrm dx=\int_a^cf(x)\mathrm dx \int_a^b f(x)\mathrm dx\pm\int_a^b g(x)\mathrm dx=\int_a^bf(x)\pm g(x)\mathrm dx

当然,我们不能只顾着计算式子。然而,由极限定义的式子实在是有点恐怖,因此,我们先考虑怎么计算。

定积分的意义与导数类似,当我们设 v(t) 为瞬时速度时,\int_a^bv(t)\mathrm dt 代表的就是以速度 v 行驶的总路程。(当然,可能为负)

下面,我们就来证积分的两个基本定理吧。

积分基本定理

现在,我们设函数

\Phi(x)=\int_a^x f(t)\mathrm dt

那么,很明显,

\frac{\mathrm d\Phi}{\mathrm dx}=f(t)

为什么?我们可以试图这样搞一下:

\Phi(x+\Delta x)-\Phi(x)\approx f(x)\Delta x

这是为什么?如果不知道,请看定积分的定义,即矩形和。

现在我们除掉 \Delta x 并取极限,就有

f(x)=\lim_{\Delta x\to 0}\frac{\Phi(x+\Delta x)-\Phi(x)}{\Delta x}

于是我们便搞出了积分基本定理之一。

而第二个基本定理的证明也很简单——自然,由于我们搞出了 \Phi(x),那么自然,

\Phi(a)=0

自然函数 f(x) 的原函数 F(x)=\Phi(x)+C。于是我们就可以搞点事情——

F(b)-F(a)=(\Phi(b)+C)-(\Phi(a)+C)=\Phi(b)-\Phi(a)

你或许会问,这有什么用?别忘了几行前的 \Phi(x) 的定义——即

\Phi(x)=\int^x_a f(t)\mathrm dt

带入,就有

=\int^b_a f(t)\mathrm dt-0=\int_a^bf(x)\mathrm dx

好的,于是我们便搞出了微积分基本定理:

\int_a^b f(x)\mathrm dx=F(b)-F(a)

请注意上式的原函数得是同一个,不然你的答案就废了。

下面我们试着用原函数计算下面的式子:

\int_0^1 x^2\mathrm dx

我们知道,它的原函数是 \frac{1}{3}x^3;因此,

=\frac{1^3}{3}-0=\frac{1}{3}

简单吧!

不过,我们还是可以将它写进一个式子之中。例如下面的运算过程:

\int^1_0\frac{1}{3x+2}\mathrm dx

请注意着点上下标的变化:

=\frac{1}{3}\int^5_2\frac{1}{u}\mathrm du=\frac{\ln 5-\ln 2}{3}

是不是有点快?没事,我们慢放一下:

=\frac{1}{3}\int_0^1\frac{3}{3x+2}\mathrm dx=\frac{1}{3}\int_{3\cdot0+2}^{3\cdot1+2}\frac{\mathrm du}{u}

于是,我们发现这个东西会影响上下标!(不过,当你不改变变量的时候,上下标就不会改变。)

当然,搞出下面这个也挺容易,不过需要将定积分和不定积分联系起来(自己算):

\int_0^1 x^2e^x\mathrm dx

好吧,我们现在学会了定积分的封闭形式,但是——不定积分可能没有封闭形式!怎么办?

这就需要前面提到过的自适应辛普森算法了——

自适应辛普森算法

对于定义中的每一个窄条,我们在定义时只是将其简单的看作一个矩形,但是在辛普森这里,将它看作一条抛物线。因此,

\int_a^b f(x)\mathrm dx\approx\int_a^b px^2+qx+r\mathrm dx

请各位读者计算一下,就知道约等于号后面的式子的结果:

\int_a^b f(x)\mathrm dx\approx(b-a)\frac{f(a)+f(b)+4f(\frac{a+b}{2})}{6}

那么,只要 |b-a| 足够小,我们就能计算出积分的精确值。

不幸的是这行不通,因为如果 |b-a| 足够小,你的时间复杂度就会爆炸。

没事。

有一种人尽皆知、臭名昭著的算法——二分法!我们可以取 [l,r] 的中点 m=\frac{l+r}{2},然后分别计算中点两端的辛普森值,因此我们可以快速的计算积分的近似值。代码不放了。

(你可以在读完此内容后,切掉一道蓝题和一道紫题。)

附上一点内容

本文主要参考以下的书籍:

Thomas Calculus 14th

同济大学高等数学第7版上册

另外,如果可以,推荐你看一下这个。