谢邀.
我下学期有同学要学微积分,正好之前一直有人邀请我用简单的语言科普一下微积分的核心内容. 在这里正好讲一下. 微积分是一门非常深厚的学问,在这个回答中我试图用通俗易懂的语言来总结这门学科中最核心的概念. 但是为了让这个回答简单易懂,我没有具体深入一些计算问题,比如如何求导,如何求积分. 这些计算是需要通过一系列的推导得出的,十分繁琐,所以我一概忽略了. 尤其是从第 5 章开始,所有的式子我都只是列了出来,没有做计算. 感兴趣的知友可以参考任何一本微积分教材. 这里推荐一些国外的教材:
【入门】CalculusEarly Transcendentals 8th edition - James Stewart
【入门】Thomas' Calculus Early Transcendentals 14th Edition - Joel R. Hass
【中等】Advanced Calculus- Frederick S. Woods
【高级】Principles of Mathematical Analysis- Walter Rudin
【高级】Advanced Calculus- Harvard Department of Mathematics(lecture notes of MATH55)
未特殊说明本文的图片均来自 Calculus Early Transcendentals 8th edition - James Stewart.
另外推荐一个学习资源:
https://ocw.mit.edu/courses/mathematics/18-01-single-variable-calculus-fall-2006/
==================目录=================
0.写在前面
1.线性化的含义
2.导数和微分
3.积分
4.微分和积分的联系
5.积分的应用
6.微分方程
=======================================
0. 写在前面
一句话总结,微积分是对无穷小量的研究。无穷小量,简单说就是大小无限趋向于
的量. 很多整体分析太过复杂的物理量可以用无穷小量分析,其原因是无穷小量可以被线性化.
如果我们用
来表示无穷小量,那么微积分可以被分为两大类,微分和积分. 微分主要研究两个无穷小量的比值,形如
, 而积分学主要研究无限多的无穷小量之和,也就是
.
1. 线性化的含义
微积分之所以在数学、物理学和工程学中有如此重要的地位,是因为在这些学科中有很多情况不好直接分析,而通过微积分可以把这些情况线性化. 然而,在线性化的同时,研究对象就会变成无穷小量. 下面用 Mathematica 代码实现一个例子
Show[ListPlot[{{1, 1}}],
Plot[{x^2, 2 x - 1}, {x, 0, 2},
PlotLegends -> {"function", "tangent"}],
Plot[x^2, {x, 0.9, 1.1}, PlotStyle -> Red,
PlotLegends -> {"function at (0.9,1.1)"}]]
如果我们想分析函数
在局部的情况,比如在点
附近,这个函数可以被近似的用它的切线(棕色)取代. 因为在局部情况下,函数在
附近的曲线(红)可以被该点的切线近似代替. 此时我们成功的把曲线近似成了直线,这就是线性化的一个例子.
为什么线性化会有用呢?假如我们现在研究的是一个实际情况,一辆汽车正在行驶,其走过的路程与时间满足关系
, 那么在
这一时刻,如何知道它的速度?
由于平均速度
, 带入
得到从时刻
的平均速度为
. 如果我们让
,那么这个平均速度就很接近在
这一时刻的瞬时速度了. 那么,有理由猜测当
无限接近于
的时候,这个平均速度就无限接近于
时的瞬时速度. 从图上看,从 1 到 的平均速度就是连接 和 两点的直线的斜率. 所以当
与 1 越来越接近时,这条直线的斜率就变成了在
切线的斜率.
Show[
ListPlot[{{1, 1}, {1.1, 1.1^2}, {1.5, 1.5^2}, {1.7, 1.7^2}}],
Plot[x^2, {x, 0, 2}],
Graphics[{Gray, InfiniteLine[{{1, 1}, {1.7, 1.7^2}}]}],
Graphics[{Gray, InfiniteLine[{{1, 1}, {1.5, 1.5^2}}]}],
Graphics[{Gray, InfiniteLine[{{1, 1}, {1.1, 1.1^2}}]}],
Plot[2 x - 1, {x, 0, 2}, PlotStyle -> Brown]]
其中棕色的线是切线,其他灰色的线都是一系列越来越接近的点的割线. 可以看出当
无限接近于 1 时,
和
的连线越来越接近切线(棕色). 在无限接近的情况下,就成了切线,所以此时我们可以说,这辆汽车在
时的速度就是在
的切线的斜率.
2.导数和微分
上回说到,我们希望求的瞬时速度就是切线的斜率,那么我们如何求得函数
在点
的切线的斜率呢?通过上面的图片已经可以看出函数在
的切线是如何构造出来的:固定住点 ,在曲线上随便找一个点,让这个点越来越接近 ,在无限接近的情况下就是切线了. 下面这个图片可能表述的更好一些:
我们把问题具体推广一下,已知一个函数
,如何求得其在点
的切线的斜率?我们只需要再找到一个点
,让
无限接近于
就好了.
连接
和
的线的斜率是
,那么趋于极限的情况就是
,这个数值
称为函数
在
的导数. 先任意取点,再无限逼近的这一过程叫做求导.
这里需要注意的是,当
无限接近于
时,
自然也无限接近于
,所以
是一个无穷小的量,而
也是一个无穷小的量. 所以此时我们得到了两个无穷小量的比值,也就是上文中说的形如
的情况.
那么具体情况下怎么计算呢?回到我们原来讨论的情况,即如何求得函数
在点
的切线的斜率. 现在考虑一个点
, 那么
. 那么
就变成了
. 也就是说函数 在任意点 的切线的斜率都是 . 所以在
点的斜率是 2.
通过这种计算方法,我们可以得到任意函数在任意点的切线的斜率. 这就是求导.
总结一下,一个函数在
点的导数为
, 或者
. 一般导数的符号是
. 注意这里的
是不可以分子分母约掉的!
表示的是
变成了无穷小. 例子:
3.积分
现在考虑另外一个问题,假如我们知道一辆车在任意时间的速度有多快,我们能通过这些信息得出在一个时刻
这辆车一共走了多少距离吗?假如我们的速度满足
,我们能够知道这辆车在
的时候一共走了多少距离吗?
我们考虑一个很小的区间
. 在这个区间内,因为时间非常短,速度可以近似的看作没有变化,记为
. 那么这一个区间汽车行驶的距离就应该是这个速度乘上时间的变化量,也就是
. 假设第二个区间为
,那么这个区间内行驶的距离就应该是
......如果我们把一秒钟分成十个区间,那么汽车行驶的距离近似起来就应该是
如果我们需要再精确一些的话,我们不妨让区间再小一些,这样一个区间内速度的变化就更小了,比如我们把区间分成 100 份,也就是
,那么距离可以更精确一些:
如果我们把
变得无限小,那么我们的结果就无限接近于精确的距离. 如果我们把时间间隔变得无限小,最后得到精确的距离就是
. 这就是形如
的情况.
从几何意义上来讲,我们实际上在把
下的无限多个小矩形加起来,求的是曲线和坐标轴围成的面积,如图所示:
总结一下, 如何求得以速度
行驶的汽车在时间间隔
内走的距离?答:在
内取一些点,
,为了精确我们需要取无限多的点,那么行驶的距离就是
. 这就是积分. 为了方便,数学家发明了一种专门的符号来表示积分,
.
所以
. 注意在这个式子中,符号
变成了积分号
,上下限 a 和 b 则写在积分号的上下两侧.
变成了
表示
趋向于无穷小. 例子:
汽车从静止到 1 秒内行驶到距离为
.
4.微分与积分的联系
在之前已经说过,速度是路程关于时间的导数,也就是
. 然而通过速度我们可以得到路程,也就是
, 所以积分实际上是微分的逆运算.
这里需要再讲讲一些符号操作的法则及其含义. 首先回到式子
, 它的意思是速度是一个无穷小的位移
比上一段无穷小的时间间隔
. 同样的,对于一个函数,我们知道它的导数有两种写法,这两种写法都是等价的
. 由于无穷小量满足正常的运算法则,所以 可以看作是两个无穷小量 和 的比值. 所以
可以看作一个分式. 所以我们可以对上式进行变形得到
. 其含义是在 点上,函数 的一个无穷小的增量 可以用函数在 点的导数乘上横坐标方向方向的无穷小增量 表示;而一个很小但是不至于无穷小的增量 可以用函数在 点的导数乘上横坐标方向方向的增量近似. 即
.
图中红色的直线是函数
在
的切线,蓝色的曲线是函数本身. 可以看到在局部范围内,切线可以近似曲线. 这符合刚开始谈论到的线性化.
现在重新考虑一下微分与积分的联系. 已知
, 所以如果我们想知道车辆在一段无穷小时间内的位移,可以得到
,
是一系列的无穷小量,其数值随着
的变化而变化,当我们得到无穷多这样的数值之后,就可以把它们全部加起来,得到总路程. 一般我们会在
的等式两边同时积分,得到
.
通过上面,一个非常重要的信息是 和 是可以互相抵消的,因为求导和求积分互为逆运算,这就好比平方和平方根可以抵消一样.
5.积分的应用
利用章节 4 的概念,我们可以推广更多应用积分的例子. 积分的例子非常多,而且横跨数学、物理、生物、化学甚至计算机科学. 这里只列举一个比较好理解的例子. 为了方便理解,该小节采用了大量的图片.
5.1 面积与体积
从 3 得知,求函数
与坐标轴从
围成的面积是
. 现在考虑由函数
,
围成的面积. 可以根据之前的方法把图像分割成无限多个小矩形,之后求和:
同样的,对于一个不规则体,如果知道了其面积关于坐标变化的函数
,就可以用积分求出它的体积.
.
5.2 旋转体的体积
对于一个函数
,绕 y 轴旋转一周后会得到一个旋转体的体积,这个旋转体的体积也是可以求的. 下图是一个函数绕 y 轴旋转而成的旋转体.
这个旋转体可以看作是无限多个小矩形分别绕 y 轴旋转后得到了无限多个圆筒壳,无限多个这样的圆筒壳加起来得到了体积,如图所示.
如何求得一个小圆筒壳的体积?如果把这个小圆筒壳展开,就会变成一个长方体,其长就是内侧的周长,也就是
,高是这一点的函数值,即
,宽是区间的大小
. 所以体积
.
之后取极限使得结果精确,让圆筒壳变得无限薄,也就是让
变得无限小,所以
.
5.3 弧长
如果我们希望求一个函数
在一个区间的弧长,可以用在这条曲线上取很多点,这些点点连线可以近似为两点之间的弧长,当取点足够多,也就是线段足够短短时候,结果就非常精确了. 在取极限后这些线段的长度和就是曲线的弧长.
利用 4 中的结论,我们可以考虑函数在 x 方向的一个无穷小的增量
,y 方向的无穷小的增量记为
,用无穷小量
表示两个无限接近的点之间的连线的长度,根据勾股定理有
那么这个长度就是
.
对等式两边同时积分得到
.
5.4 近似求和
在数学中,有一些研究需要把很多项式子加起来,有些时候甚至是无限多项. 这样的求和式子叫做级数. 有些级数在加了无限多项后越来越趋向于一个特定的值,有一些级数加了越多项就越大,最后趋向于无穷大. 然而,并不是所有的级数都很容易求,例如下面的这个
求
由上图可知,我们这个级数约等于函数
与坐标轴围成的面积,对于曲线下的面积,可以用一个积分来近似. 所以
. 一般情况下,等式左边是很难求的,而等式右边是容易求的.
再比如
根据图像得到
.
5.5 积分在物理学中的运用
微积分原本就是为了解决物理学问题被创造出来的,在漫长的物理研究过程中有了许多十分前沿的应用. 能够体现微积分思想的应用很多存在于经典物理之中,但是由于太过冗长,这里不做介绍. 如果感兴趣可以查看我写的另一篇文章.
Bazinga:为什么上大学后物理公式都用积分表示?
6.微分方程
微分方程是微积分最重要的应用之一. 微分方程可以用来描述一个系统的变化情况. 在很多情况下,一个系统本身以什么样的方式变化我们是不知道的,但是我们知道这个系统的变化速率和那些因素有关. 于是,我们可以根据这些因素进行数学建模,得到一个微分方程,然后通过手算 / 计算机解方程,从而了解这个系统.
举个例子,假设全球人口随着时间的变化满足
. 我们并不知道这个函数是什么. 所以如何求得这个函数呢?我们知道人类繁殖的速度和人口本身的大小成正比关系.也就是说
越大,
的值就越大,换句说人越多人口的增长就越快. 不考虑有限资源的情况下,这就是最简单的数学情况. 现在列出方程. 我们知道
这个方程本质上再问,什么样的函数,在对其进行求导后结果等于一个常数乘上这个函数本身?换句话说,这个方程仍然是求导的逆运算. 这里直接给出答案,
. 读者可以自行证明.
但是常识告诉我们:如果人口数量过多,资源不够的情况下,人口的增长速度会变慢. 而上面的函数会一直变大,所以我们的数学模型是需要完善的. 假设一个生态系统可以承载的最大人口数量为
. 如果人口数量过多,人口会出现负增长;如果
, 那么人口仍然会指数增长. 于是我们可以试一试
读者可以自行验证,如果
,反之
. 这个微分方程仍然可以求解,得出来的结果如下:
图中是计算机的求解结果. 对于刚开始不同的人口数量,函数的变化行为会有区别. 图中的三个函数分别对应的是三种不同的初始条件. 如果初始人口少于
,函数会先增长一段时间,之后趋向于最大人口数量;如果初始人口大于承载极限,人口数量会逐渐减少并且趋向于 1000.
微分方程是数学中的一个非常古老的分支,但是随着计算机科学的发展,很多之前没有办法解的微分方程现在都可以被电脑解出来. 计算机科学的兴起给这个古老的数学领域注入了新的血液,也为其提供了前所未有的美感. 下图是笔者在研究过程中遇到的混乱系统,这些微分方程的解存在于高维空间,这些解在三维空间中的投影却也十分优雅: