In solitute,where we are least alone.|

Luisvacson

园龄:3年6个月粉丝:5关注:0

浅谈极限、微积分和泰勒展开

极限

我们考虑函数f(x)=x2,显然有f(0)=0

对于任意x>0,我们从大到小取x,比如:

f(3)=9f(2)=4f(1)=1f(0.5)=0.25f(0.1)=0.01

可以发现当我们取得x越来越接近0的时候,f(x)也越来越接近f(0)=0

同样,对于任意x<0,从小到大取x,发现当我们取得x越来越接近0的时候,f(x)也越来越接近f(0)=0

我们定义从右往左逼近目标点所得到的f(x)的趋近值为该函数在目标点的右极限,写作:

limxx0+f(x)

同理我们可以得到左极限的定义。左极限写作:

limxx0f(x)

在上述例子中,limx0+x2=0,limx0x2=0,所以我们可以直接得到极限:

limx0x2=0

但是同时我们考虑函数f(x)=1x,不难发现:

limx0+1x=+limx01x=

此时左右极限不相等,所以limx01x不存在

总结来说就是一个函数在x0的极限存在的充分必要条件是:

limxx0+f(x)=limxx0f(x)DNE(Do Not Exist)

同时还有一点需要注意,极限的值定义为左右极限相等时的值,与原函数在该点的取值无关。比如以下这个函数:

f(x)={x2(x0)1(x=0)

此时limx0f(x)仍然等于0

极限运算满足如下法则:

limxx0f(x)±g(x)=limxx0f(x)±limxx0g(x)limxx0f(x)×g(x)=limxx0f(x)×limxx0g(x)limxx0f(x)g(x)=limxx0f(x)limxx0g(x)

极限中的无穷

我们考虑f(x)=x,显然有limx0f(x)=0

但是如果我们将f(x)写成x2x,那么原式变为:

limx0x2x

我们运用法则:

limx0x2x=limx0x2limx0x=00

此时我们便会发现问题:难道00=0吗?这显然是错误的。

为了解答这个问题,我们可以回归极限的原始定义。

我们取不同的x逼近0

x=1,x2=1x=0.1,x2=0.01x=0.01,x2=0.0001x=0.001,x2=0.000001

不难发现x2比起x趋近于0的速度要快了很多,所以即使x无限趋近于0x2始终比它更加接近于0。我们所定义的极限永远是无限接近但不相等的,所以所谓的00本就是错误的。

这就引出了一个重要的问题:无穷小量之间不一定相等,比如此处变量的次数便对“无穷小”这个量产生了影响。

由此我们引出了几个概念:等价无穷小,高阶无穷小。顾名思义,等价无穷小即趋近于极值的速度相同的变量,高阶无穷小可以粗略理解为无穷小的幂,比如上述例子中的x2

同样的我们也就理解了等价无穷大,高阶无穷大

导数

我们考虑函数f(x)=x2,画出它的图像:

image
我们计算一下x>0时每加上一个1的时候f(x)的变化:

f(1)f(0)=1f(2)f(1)=3f(3)f(2)=5

不难发现f(x)之间的差值越来越大了

这是为什么?

我们观察图像也不难发现,这个函数的增长速度越来越快了

同时上面的数据也可以让我们发现增长速度和x的取值有关

怎么描述一个确定的x所对应的增长速度?

我们可以取一条直线与该函数上的这个点相交,比如我们让一条直线经过(1,1),(2,4)

image
此时函数f(x)=x2x=1时的变化率可以近似为该直线的斜率

显然该直线的斜率为3

但是3这个值仍然不够准确,不够令人满意,所以我们可以将上图中的B点向A靠近,比如我们取B(1.5,2.25),便会得到更加接近的斜率:2.2511.51=2.5

怎么才能更加接近?

使B的横坐标xB更加接近1

怎么才能完全准确?

使B的横坐标xB无限接近1

此时的斜率为多少?

(1)limx1f(x)f(1)x1=limx1x21x1=limx1(x+1)(x1)(x1)=limx1(x+1)=2

不难画出此时的图像:
image
这个值已经足够令人满意。

数学上便将这个值定义为该函数在这个点的导数,记作f(x),即:

f(x)=limΔx0f(x+Δx)f(x)Δx

显然当x确定时f(x)也唯一确定,所以代入上式即可得到f(x)唯一确定,所以f(x)也是一个关于x的函数,我们称之为导函数

不难发现原函数连续是导函数存在的必要条件,但是不充分,因为可能存在某一点不可导,比如f(x)=|x|x=0时不可导

我们再次思考得到导数的过程,导数的值是我们通过一次函数的斜率得到的,而一次函数的斜率可以写为ΔyΔx。当我们取得Δx越来越小的时候就得到了导数,所以导数也可以写成:

dydx

其中d为微分符号,dx表示一个非常小的Δx

我们在物理上学过位移、速度和加速度

速度是什么?

位移对时间求导,即:

v=dxdt

那加速度又是什么?

速度对时间求导,即:

a=dvdt

那加速度和时间的关系是什么?

加速度是位移对时间的导数的导数

我们称之为二阶导,记作f(x)

同样的我们可以理解更高阶的导数,我们也可以将n阶导数记作f(n)(x)

求导

导数的定义基于极限,所以导数的运算法则可以由极限得到:

(f(x)±g(x))=f(x)±g(x)(f(x)×g(x))=f(x)g(x)+f(x)g(x)(f(x)g(x))=f(x)g(x)f(x)g(x)g2(x)

这里给出两函数乘积的导数公式的简单证明:

(2)(f(x)g(x))=limΔx0f(x+Δx)g(x+Δx)f(x)g(x)Δx=limΔx0f(x+Δx)g(x+Δx)f(x)g(x+Δx)+f(x)g(x+Δx)f(x)g(x)Δx=limΔx0g(x+Δx)(f(x+Δx)f(x))+f(x)(g(x+Δx)g(x))Δx=limΔx0f(x+Δx)f(x)Δxg(x+Δx)+limΔx0g(x+Δx)g(x)Δxf(x)=f(x)g(x)+f(x)g(x)

对于函数u=f(x),y=g(u),我们可以得到

y=g(f(x))

y被称为x的复合函数

对于复合函数求导,我们可以采用链式法则:

dydx=dydududx

也就是说y关于x的导数等于y关于u的导数乘上u关于x的导数

导数的乘法法则和链式法则一同即可推出导数的除法法则

给出几个常用函数的导数:

C=0(C为常数)(xn)=nxn1(ax)=axlna(logax)=1xlna(sinx)=cosx(cosx)=sinx

以上结果均可以通过带入定义证明

积分

我们还是先看一个问题:
image
如何求上图中曲线f(x)=x2,直线x=1y轴围成的图形的面积?

似乎很难用几何图形计算出抛物线的相关性质

我们还是考虑近似:
image
我们近似的用黄色矩形的面积代替,得到结果为1

结果显然不够准确,误差很大,怎么办?

我们用两个矩形的面积和代替:
image
其中左边矩形的两边长12,14,右边矩形的两边长12,1,得到的总面积就是58,比起一开始更加接近了

还想精确怎么办?
image
我们一直这么做,直到每个矩形水平的边长为一个极小量dx,此时该边两端点的横坐标之差非常小,小到可以忽略,不妨将这两点的横坐标都设为x,那么这个矩形垂直于x轴的边之长显然为f(x),此时这个矩形的面积就可以写成f(x)dx。然后我们再对每个矩形的面积求和即可得到总面积,记作:

abf(x)dx

本题中a=0,b=1,f(x)=x2

那么这个积分的结果是多少呢?

牛顿-莱布尼茨公式

如果F(x)=f(x),那么:

abf(x)dx=F(b)F(a)

要证明这个公式,要先知道拉格朗日中值定理

如果函数f(x)[a,b]上连续,在(a,b)上可导,那么在(a,b)内至少存在一点x使得f(x)=f(b)f(a)ba

该定理正确性可感性理解

我们将拉格朗日中值定理换个形式:

f(b)f(a)=f(x)(ba)

再回到牛顿-莱布尼茨公式(令x0=a,xn=b):

(3)F(b)F(a)=F(b)F(xn1)+F(xn1)F(xn2)++F(x1)F(a)=i=1nF(xi)F(xi1)=i=1nF(di)(xixi1)

其中di为拉格朗日中值定理中所存在的那个点

显然上式中n时,F(di)=f(xi),xixi1=dxi,所以原式等于:

abf(x)dx

泰勒展开

考虑如下这个函数:f(x)=cosx

x=114514f(x)等于多少?

我们发现我们似乎无法通过cos直接得到f(x)的任意值,这和我们所接触到的很多由多项式写成的函数不一样:我们只要把x带入多项式就可以很快求解。

那怎么办?

我们可以人为构造一个多项式函数使其和原函数相等

我们设f(x)=cosx=g(x)=a0+a1x+a2x2+a3x3++anxn

首先当x=0时,f(x)=1,所以g(0)=1,代入即可知道a0=1

此时我们除了a0什么系数都不知道,所以只能构造出g(x)=1,对比图象:

image

发现误差很大

我们考虑函数的变化趋势,如果f(x)g(x)的变化趋势一致,再加上f(0)=g(0)=1,那么我们就可以构造出较为精确的函数g(x)

什么叫f(x)g(x)的变化趋势一致?

f(x)=g(x)

代入:

sinx=a1+2a2x+3a3x2+

x=0时:

0=a1

我们便得到了第二个系数

虽然此时我们构造出的函数仍然是g(x)=1,但是我们得到了更多的系数

为什么g(x)f(x)仍然相差很大?

因为变化率的变化率不一样

具体地说,f(x)x=0时的变化率是0,但是并不是所有地方的变化率都不变均为0,而我们构造出的g(x)的变化率始终是0

怎么使变化率的变化率还一样?

f(x)=g(x)

计算:

cosx=2a2+6a3x+12a4x2+

代入x=0

1=2a2a2=12

此时我们构造出的g(x)=112x2

对比图像:
image
继续往下求更高阶的导数?

sinx=6a3+24a4x+60a5x2+a3=0cosx=24a4+120a5x+a4=124

我们再看一下到a4计算完成为止g(x)=112x2+124x4的图像:
image
不难发现我们只要一直这样求下去就能得到结果

但是同时我们发现一个问题:f(x)=cosx可以求无数次导,也就是说g(x)有无限项,此时我们计算到哪一步取决于我们的精度要求

形式化的写出g(x)

cosx=g(x)=1x22!+x44!

总结一下上面的过程,我们可以得到一个公式:

f(x)=f(0)+f(0)x+f(0)2!x2+f(0)3!x3++f(n)(0)n!xn

能不能不从(0,1)入手?比如我们取(π2,0)作为起始点可不可以?

答案是当然可以

所以我们如果从(x0,f(x0))入手的话:

f(x)=i=0nf(i)(x0)i!(xx0)i

这就是泰勒公式,上述过程被称为泰勒展开

所以我们同样可以得到sinx的泰勒展开形式:

sinx=xx33!+x55!

我们考虑f(x)=ex的泰勒展开式。由于(ex)=exlne=ex,所以f(x)x=0处的展开为:

ex=1+x+x22!+x33!+

所以:

(4)eix=1+ix+i2x22!+i3x33!+=(1x22!+x44!)+i(xx33!+x55!)=cosx+isinx

x=π时:

eiπ=1eiπ+1=0

由此我们便证明了欧拉公式

posted @   Luisvacson  阅读(541)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起