浅谈微积分以及泰勒展开
前言
这年头不会微积分干什么都不行啊
一.微积分
微积分其实就只有两种运算,一种是求导(微分),另一种是求积分。并且其为互逆运算
导数
导数的定义
导数(Derivative),也叫导函数值。又名微商,是微积分中的重要基础概念。当函数y=f(x)的自变量x在一点x0上产生一个增量Δx时,函数输出值的增量Δy与自变量增量Δx的比值在Δx趋于0时的极限a如果存在,a即为在x0处的导数,记作f'(x0)或df(x0)/dx。——百度百科
- 简而言之,所谓导数所反映的就是一个函数的变化趋势,其同样是一个函数。设 \(f'(x)\) 为 \(f(x)\) 的导数,那么 \(f'(x_0)\) 就是 \(f(x)\) 的图像上过横坐标为 \(x_0\) 的点的切线的斜率。
- 讲的更容易理解一点,我们先抛开所有关于微积分的什么极限啊什么的。仅仅考虑一个问题:什么是变化率?
- 你可能会说:“变化率就是 \(\Delta y\) 和 \(\Delta x\) 的比值。”确实,就是这样。它反映的是一个变化的趋势,就是随着横坐标 \(x\) 的变化,纵坐标 \(y\) 变化了多少。如果变化率越大,那么相应的,\(y\) 的变化就会越大。
- 而导数的本质就是变化率,只不过将其放在了一个十分微小的范围内。可以近似地看成图像在某个点的变化率。
- 那么这里有一个关于导数的悖论:“一个函数的导数所反映的是该函数在每个点时的变化率。”但一个点谈何变化?它连 \(\Delta x\) 和 \(\Delta y\) 都没有。
- 所以,不要把这当做导数的定义,别把导数看成某一点瞬时的变化率,而是看成某一点附近的变化率的最佳近似。
导数的求法
基本初等函数
-
这个很简单,按照定义来就行了。
-
我们假设一个函数在 \(x_0\) 处产生了一个非常小的增量 \(dx\) ,同时导致了纵坐标的增量 \(df\) ,那么根据定义,其导数即为 \(\frac{df}{dx}\) 。
-
以 \(f(x)=x^2\) 为例:
\[\begin{aligned} \frac{df}{dx} &=\frac{f(x_0+dx)-f(x_0)}{dx}\\ &=\frac{x_0^2+2dx\cdot x+dx^2-x_0^2}{dx}\\ &=2x+dx \end{aligned}\\ f'(x)=\lim_{dx\to 0} \frac{df}{dx}=\lim_{dx\to 0} 2x+dx=2x \]当 \(dx\) 无限趋近于 \(0\) 时,我们可以将其省略,那么 \(\frac{df}{dx}=2x\) 。所以函数 \(f(x)=x^2\) 的导数为 \(f'(x)=2x\) 。
-
但是,有没有更直观的方法呢?我可不想每次求导数的时候都去这样推一遍。自然是有的。用几何法也可以证明。
-
让我们假设现在有一个边长为 \(x\) 的正方形,那么它的面积就为 \(x^2\) ,该函数的函数值。此时如果该正方形的边长增加一个很小的量 \(dx\) ,那么它的面积 \(ds\) 就会增加 \(dx\cdot x+dx\cdot x+dx^2\) ,因为 \(dx\) 本身就是一个极小的值,那么其平方会变得更小,我们可以直接忽略不计。那么 \(\frac{ds}{dx}\) 的值就为 \(2x\) ,与我们用代数法算出来的答案是一样的。
-
感谢 @眼界小开 的建议,为了方便理解几何法,我觉得这里应该放一张图:
3B1B:微积分的本质 -
假如我们学过微积分,这时我们就会发现,导数里面的系数 \(2\) 居然和原函数的指数 \(2\) 相同!这是巧合吗?显然不是。我们试着写出函数 \(f(x)=x^3\) 的导数 \(f'(x)=3x^2\),发现居然和二次函数一样。那是不是…… -
好吧我坦白,这就是幂函数的共性……除此之外,这里还有一些其他基本函数的导数:
- \(C'=0\) (\(C\) 为任意常数)
- \((x^a)'=ax^{a-1}\)
- \((e^x)'=e^x\)
- \((\log_ax)'=\frac{1}{x\ \ln a}\)
- \((\sin x)'=\cos x\)
- \((\cos x)'=-\sin x\)
- \((\tan x)'=\frac{1}{\cos^2 x}\)
-
我们发现这个里面有一个非常神奇的函数 \(e^x\) ,它的导数居然是它自己。怎么说呢,其实自然常数 \(e\) 就是这样定义的。我们对任意指数函数求导,以 \(2^x\) 为例:
\[(2^x)'=\frac{2^{x+dx}-2^x}{dx}=\frac{2^x\cdot 2^{dx}-2^x}{dx}=2^x\cdot \frac{2^{dx}-1}{dx} \]当 \(dx\) 趋近于 \(0\) 的时候,\(\frac{2^{dx}-1}{dx}\) 会趋近于某个常数。也就是说,\(2^x\) 的导数是它自己乘上一个固定的常数。说到这里你可能就明白了,自然常数 \(e\) 的值即为 \(\lim_{dx\to 0}\frac{e^{dx}-1}{dx}=1\Rightarrow e=\lim_{dx\to 0}(dx+1)^{\frac{1}{dx}}\)
再多说一点,其实 \(2^x\) 的导数的那个常数就是 \(\ln\:(2)\) 。为什么?看完复合函数的求导就知道了。
导数的运算法则
基本初等函数适用的范围毕竟还是太小了,生活中大多数函数都为基本初等函数通过某几种运算得到,这时求导就需要用到导数的运算法则。
-
导数的运算法则有以下三种:
- 和规则:\(\begin{aligned}\left(f(x)+g(x)\right)'&=f'(x)+g'(x)\\ \left(af(x)\right)'&=af'(x)\end{aligned}\)
- 积规则:\(\left(f(x)\cdot g(x)\right)'=f'(x)g(x)+f(x)g'(x)\) (左乘右导,右乘左导)
- 链规则:\(\left(f\left(g(x)\right)\right)'=g'(x)f'\left(g(x)\right)\)
-
这三种规则都有其直观的几何理解,就比如积规则,可以想象一个分别以两个函数的函数值为边长的长方形,看其面积随着边长怎样变化。链规则则可想象三根数轴,各个因变量是如何随着各自的自变量的变化而变化。
-
类似的方法还有很多,就不再赘述了。
-
讲一讲之前的那个指数函数求导的常数证明吧:
\[(2^x)'=\left(e^{\ln(2^x)}\right)'=\left(e^{x\ln(2)}\right)'=\ln(2)\left(e^{\ln(2)}\right)^x=\ln(2)\cdot2^x \]
高阶导数
- 我们把一个函数导数的导数称作二阶导数,其所反映的是该函数的导数的变化量,即变化量的变化量。
- 三阶导数以及更高阶的导数以此类推。
- 举个栗子:速度是路程的导数,而加速度是速度的导数,所以加速度是路程的二阶导数。
- 所以对于幂函数来说,其不断求导的过程就是不断地降幂 ,并且系数会以连乘 \(\prod\) 的形式存在。因为每一次求导,都会将系数乘以当前的指数,并且指数减一。
- \(For\:instance:f(x)=x^{10}\Rightarrow f^{(5)}(x)=\left(\prod_{i=6}^{10}i\right)x^5\)
积分
积分的定义
积分是微积分学与数学分析里的一个核心概念。通常分为定积分和不定积分两种。直观地说,对于一个给定的正实值函数,在一个实数区间上的定积分可以理解为在坐标平面上,由曲线、直线以及轴围成的曲边梯形的面积值(一种确定的实数值)。——百度百科
- 对于积分来说,就理解成面积就好了。
- 积分分为定积分和不定积分两种。定积分为一个确定的数值,而不定积分则是一个函数。
- 求不定积分和求导数互为逆运算。为什么?我们假设 \(f(x)\) 围成的面积的函数为 \(g(x)\) ,横坐标增加 \(dx\) ,那么面积的增加量 \(ds\) 可以近似地看做一个长方形,那么 \(g'(x)=\frac{ds}{dx}\),就是当前长方形的高,恰好就是 \(f(x)\) 的函数值。
积分的求法
- 很简单,因为求不定积分和求导数是一对互逆运算,那么我们就可以根据已知的导数反推出原函数。
- 如上面的几个导数求不定积分:
- \(\int 0dx=C\)
- \(\int x^adx=\frac{1}{a+1}x^{a+1}+C\)
- \(\int e^xdx=e^x+C\)
- \(\int x^{-1}dx=\ln x+C\)
定积分的运算法则
- 如果仅仅只是靠上面那几个基本公式的话显然不能满足需要,所以就需要用到积分的运算法则。
- 如下:
- \(\int_a^bkf(x)dx=k\int_a^bf(x)dx\)
- \(\int_a^b[f(x)\pm g(x)]dx=\int_a^bf(x)dx\pm \int_a^bg(x)dx\)
- \(\int_a^bf(x)dx=\int_a^cf(x)dx+\int_c^bf(x)dx\)
二.泰勒级数
在数学中,泰勒级数(英语:Taylor series)用无限项连加式——级数来表示一个函数,这些相加的项由函数在某一点的导数求得。——百度百科
-
说白了,泰勒级数就是用一个多项式去模拟一个函数,至少在 \(OI\) 中是这样的,可以用于牛顿迭代的推导以及生成函数的变形。
-
我们将多项式看做一个函数,那么问题就变成了如何用一个函数去模拟另外一个函数。
-
我们先从 \(x=0\) 下手
(因为简单) -
如果两个函数图像一样的话,那么至少在 \(x=0\) 时的函数值要相等吧,所以我们让其的常数项相等。
-
如果两个函数图像一样的话,那么至少在\(x=0\) 附近的变化趋势要相等吧,所以我们让其导数相等。
-
如果两个函数图像一样的话,那么至少在\(x=0\) 附近的变化趋势的变化趋势要相等吧,所以我们让其二阶导数相等。
-
……
-
可以证明,在 \(x=0\) 时,\(g(x)\) 的 \(n\) 阶导数只与 \(x^n\) 的系数有关系,因为之前的求导时已经变成 \(0\) ,而后边的因为含有 \(x\) 而为 \(0\)
-
那么在 \(x=0\) 时我们就得到了函数 \(f(x)\) 的近似拟合函数
\[g(x)=f(0)+\frac{f'(0)}{1!}x+\frac{f''(0)}{2!}x^2+\ldots+\frac{f^{(n)}(0)}{n!}x^n \] -
这个叫做麦克劳林级数。
-
等等,那泰勒去哪儿了?
-
刚刚所展现的是在 \(x=0\) 附近拟合的过程。只需稍作替换,就可以在任意地方 \(x=x_0\) 处拟合了。这就是泰勒级数:
\[g(x)=f(x_0)+\frac{f'(x_0)}{1!}(x-x_0)+\frac{f''(x_0)}{2!}(x-x_0)^2+\ldots+\frac{f^{(n)}(x_0)}{n!}(x-x_0)^n \] -
所以麦克劳林级数只是泰勒级数在 \(x=0\) 的特殊情况。
-
下面是我在 \(Geogebra\) 上所拟合的 \(\cos(x)\) 以及 \(e^x\) :
cos(x) ex -
数学真的是一门美妙的学科。
一些有趣的东西
-
为什么圆的面积公式为 \(\pi r^2\) ?我们可以尝试将圆分成许许多多的圆环,并且将其展平,近似地看做一个个长方形。然后将他们由小到大放在坐标轴上。当相差的半径足够小的时候,就可以看作是一个底为 \(r\) (半径),高为 \(2\pi r\) (周长)的三角形,故得圆的面积公式。
-
为什么三角形邻边比上斜边叫做余弦?因为余弦函数是正弦函数的导数,可以在单位圆上用几何法证明。三角函数的导数循环如下:
\[\begin{aligned} \sin'(x)&=\cos(x)\\ \cos'(x)&=-\sin(x)\\ \left(-\sin(x)\right)'&=-\cos(x)\\ \left(-\cos(x)\right)'&=\sin(x) \end{aligned} \]
——2021年2月8日