第3章 微分

Tip

上一章我们通过极限给出了导数的定义, 并指出导数的几何意义是函数某一点处切线的斜率. 通过计算函数切线的斜率, 我们可以判断函数的增减性及其极值.

本章我们将介绍微分的概念, 并揭示微分与导数之间的朴实却深刻的联系. 微分是微积分的核心思想, 将在后续的课程中贯穿始终.

3.1 微分的概念

Tip

微分 (differential) 的意思是 无穷小的改变量 (infinitesimally small change),莱布尼茨为微分创立了其专属符号 "d", 例如 dx 表示变量 x 的微分, dy 表示变量 y 的微分. 与之对应的, 物理上经常用 Δx 表示一个很小的改变量,比如一小段位移. 直观上看, Δxdx 想传达的意思很相近, 都是很小的量, 但是在数学它们是有区别的.

  • Δx 表示一个非常小但固定的数.

  • dx 则表示一个"无穷小量", 它不再是一个固定的数, 而是蕴含了某个极限过程.

Note

如图, 考虑一个做直线运动的物体, 它在经过一小段时间 Δt 之后位移的变化量为 Δs=s(t+Δt)s(t). 此时我们考虑 Δt0 的极限, 就得到时间的微分 dt 以及对应的位移的微分 ds.

微分的例子1

Note

如图, 从原点位置以角度 θ 发射一束激光, 设激光与直线 y=b 的交点坐标为 (x,b). 如果我们将发射角做一个微小的改变 Δθ, 与之对应的激光光斑的位置会在 x-轴方向上发生了一个 Δx 的偏移. 此时我们考虑 Δθ0 的极限, 就得到角度的微分 dθ 以及对应的x的微分 dx.

微分的例子2

3.1.1 微分与导数

Tip

在研究实际问题的时候, 我们经常关心两个微分之间的关系. 例如, 设想我们需要控制一个机械手臂在黑板上画图, 粉笔移动一个小位移, 机械臂的各个关节也要相应的移动一个小量. 我们可以把关节移动的小量认为是 dx, 粉笔移动的小量认为是 dy. 很多时候我们关心两个微分之间的联动关系, 比如在机器人控制领域, 给定 dx 计算 dy 叫做正动力学, 给定 dy 计算 dx 叫做逆动力学. 又比如在例1中 dxdt 的关系反映了物体的位移随时间的变化关系; 例2中 dxdθ 的关系反映了激光光斑的位置随发射角度之间的变化关系, 这些都是物理中所关心的量.

那么如何确定两个微分之间的关系呢? 如果我们能够写出两个变量之间所满足的函数关系, 很容易就可以得到这两个变量所对应的微分之间的关系, 这是微分学的一个重要成就.

Important

微分与导数的关系

一般的, 假定两个变量 x, y 满足函数关系 y=f(x), 则 dy=f(x)dx.

Note

我们首先通过数值计算来验证上述关系.

例1: 我们分别考虑两种直线运动: 匀速运动** 和 匀加速运动.**

对于匀速运动,

s=s0+vt

根据微分公式, 位移的微分与时间的微分满足关系:

ds=vdt

对于初速度为0的匀加速运动, 其位移随时间的函数为

s=s0+12at2

根据微分公式, 位移的微分与时间的微分满足关系:

ds=atdt

下表给出了 Δx 取不同数值时所对应得 Δs 的真实值和微分公式的预测值 ( v=2m/s,a=2m/s2,t=1s ).

表格1

从表中可以看到, 对于匀速运动, 所有情况下差值均为 0, 这表明对于线性函数,微分给出的是精确的, 但这仅限于线性函数的特例. 对于更加一般的匀加速运动, 差值不等于0, 但会随着 Δt 的减小而迅速减小. 这一观察提示我们, 当 Δt0 时, 误差的极限也区域0, 由此得到微分公式中的等式成立.

Note

例2: 在这个例子中, xθ 的函数关系为 x=btanθ

根据微分公式, 我们有

x=b1sin2θdθ

也就是说, 激光出射角度每增加 dθ, 光斑就会左移(负号) b1sin2θdθ.

我们再稍微拓展一下, 如果我们关心的不是横坐标 x, 而是激光飞行的距离 l, 则

l=bsinθ

此时的微分公式给出

dl=bcosθsin2θdθ

也就是说, 激光出射角度每增加 dθ, 激光得飞行距离就会缩短(负号) bcosθsin2θdθ.

下表给出了取不同的 Δθxl 的真实变化量和微分公式预测的变化量的对比( θ=π3 ):

表2

从表中可以看出, 随着 Δθ 的减小, 微分公式与精确值的误差也迅速减小, 提示当 Δt0 时, 误差的极限也区域0.

综合上面的例子可以得到如下结论: 当 Δx 很小时, 近似满足

Δyf(x)Δx

而取 Δx0 的极限, 上式约等于变成等于

dy=f(x)dx

Warning

接下来我们结合导数的定义来理解微分公式. 在上一章中,我们曾从函数图像切线的角度出发,借助极限给出导数的定义:

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

上式的分子就是 Δy. 因此形式上我们有

f(x)=limΔx0ΔyΔx=dydx

由此可见,当 Δx0 时,差分商 ΔyΔx 的极限正是微分之商 dydx

在微积分的逻辑体系内,dydx 最初是一个整体符号代表导数。事实上,我们也常用符号 dydx 表示导数,常见的表达方式包括:

dydxy(x)
df(x)dxf(x)
df(x)dx|x=x0f(x0)

但这里我们形式上将 dxdy 作为独立的“微分”概念,从而将导数的定义式

dydx=f(x)

变形成等式

dy=f(x)dx

Important
微分公式表明函数值 y 的微分与自变量 x 的微分呈线性关系,它的背后体现了化曲为直的思想, 具体体现在

dy=f(x0)dxΔyf(x0)Δxf(x0+Δx)f(x0)f(x0)Δxf(x0+Δx)f(x0)+f(x0)Δx

微分与线性近似

最后一个公式说明,函数在 x0 附近可近似看作一条过点 (x0,f(x0))、斜率为 f(x0)直线. 在局部用一条直线来近似函数也就是所谓的化曲为直, 这是微积分中一个极其重要的思想.

Warning

基于微分符号所建立的导数定义与运算规则非常直观,在后续课程中,我们将进一步领略微分思想的强大力量,并体会良好符号系统为数学带来的美感与实用价值。

3.2 借助微分计算导数

Tip

借助微分的思想和符号可以帮助我们去处理更加复杂的求导运算, 包括复合函数求导和隐函数求导.

3.2.1 复合函数求导的链式法则

Tip

非常重要!

Important

链式法则 (Chain Rule)

若函数 y=f(u) 在点 u=g(x) 可导,且 u=g(x) 在点 x 可导,则:

[f(g(x))]=f(g(x))g(x)

基于微分的思想, 链式法则可以直观的理解为: 分子分母同时乘以无穷小量 du, 得到

dydx=dydududx.

Note

P90 例9: 设函数 y=ex2,求 dydx

: y=ex2 可看作由 y=euu=x2 复合而成,因此:

dydx=dydududx=eu2x=2xex2

Note

P90 例10: 设函数 y=cosx213x,求 dydx

: y=cosx213x 可看作由 y=cosu,u=x213x 复合而成。因 dydu=sinu, dudx=x2+13x2, 所以

dydx=sinux2+13x2=x2+13x2sinx213x

Note

P91 例11: 设 y=lncosx,求 dydx.

: y=lncosx 可看作由 y=lnuu=cosx 复合而成。所以

dydx=dydududx=1cosx(sinx)=tanx

Note

P92 例12: 设 y=1+3x3,求 dydx.

: y=1+3x3=(1+3x3)12 可看作由 y=u12u=1+3x3 复合而成。 所以

dydx=dydududx=121+3x39x2=9x221+3x3

Note

P92 例13: 设 y=lnsin(2x2),求 dydx

: 所给函数可分解为 y=lnu,u=sinv,v=2x2

dydx=1ucosv4x=cos(2x2)sin(2x2)4x=4xcot(2x2).

Note

P92 例14: 设 y=ecosx,求 y

:

逐层求导:

dydu=eu=ecosx
dudv=sinv=sinx
dvdx=12x1/2=12x

根据链式法则:

y=dydududvdvdx=ecosx(sinx)12x=ecosxsinx2x.

Note

P93 例15: 设 y=cos2xcos2x,求 y

:

y=(cos2x)cos2x+cos2x(cos2x)=2sin2xcos2x+cos2x(2sinxcosx)=2cosx(sin2xcosx+cos2xsinx)=2cosxsin3x.

3.2.2 隐函数求导

Tip

隐函数将自变量 x 和函数值 y 通过某个等式联系起来, 从这个等式里我们可以推测 dydx 之间的关系, 一些复杂的函数的导数通过隐函数更容易计算.

Note

P101 例1: 求由方程 lny+x2y1=0 所确定的隐函数的导数 dydx.

: 将方程两边对 x 求导,注意 yx 的函数:

左边求导:

ddx(lny+x2y1)=1ydydx+2xy+x2dydx

右边求导:

ddx(0)=0

令两边相等:

1ydydx+2xy+x2dydx=0

合并关于 dydx 的项:

(1y+x2)dydx=2xy

解得:

dydx=2xy1y+x2=2xy21+x2y(y0)

dydx=2xy21+x2y.

Note

P102 例2: 求由方程 y3+3yx22x5=0 所确定的隐函数在 x=0 处的导数 dydx|x=0.

:

将方程两边对 x 求导(注意 yx 的函数):

ddx(y3+3yx22x5)=3y2dydx+3dydx2x10x4=0

解关于 dydx的方程:

(3y2+3)dydx=2x+10x4

解得

dydx=2x+10x43y2+3

x=0 时的 y 值:

y3+3y00=0y3+3y=0y(y2+3)=0

解得实数解为 y=0

计算 x=0 处的导数值: x=0, y=0 代入导数表达式: dydx|x=0=0+00+3=0

Note

P102 例3: 求双曲线 x29y24=1 在点 (32,2) 处的切线方程.

: 对双曲线方程两边关于 x 求导:

2x92y4dydx=0x9y2dydx=0

解得

dydx=2x9y

计算切点处斜率,在点 (32,2) 处:

k=dydx|(32,2)=2×329×2=23

于是所求的切线方程为:

y2=23(x32)3y6=2x62x3y=0

3.2.3 反函数求导

Tip

反函数求导可以看作是隐函数求导的特例.

Note

[不要用书上的做法, 用隐函数求导] P88 例6: 设y=arcsinx (1<x<1),用隐函数求导法求 y

: 由 y=arcsinx 可得直接函数关系: x=siny, x=siny 两边关于 x 求导(注意 yx 的函数):

ddx(x)=ddx(siny)
1=cosydydx

cosyx表示:

利用三角恒等式: cosy=1sin2y=1x2(当 π2<y<π2 时,cosy>0,故取正根)

故得到结果: dydx=(arcsinx)=11x2

用类似的方法可得反余弦函数的导数公式 (arccosx)=11x2.

Note

[不要用书上的做法, 用隐函数求导]

P88 例7: 设 y=arctanx (xR),用隐函数求导法求 y

:

y=arctanx 可得直接函数关系: x=tany, x=tany 两边关于 x 求导(注意 yx 的函数):

ddx(x)=ddx(tany)
1=sec2ydydx
dydx=1sec2y

sec2yx 表示:

利用三角恒等式:

sec2y=1+tan2y=1+x2

故得到结果:

dydx=(arctanx)=11+x2

用类似的方法可得反余切函数的导数公式 (arccotx)=11+x2.

Note

P103 例5: 求 y=(x2)lnxx>0)的导数

: 利用对数求导法 两边取对数:

lny=ln((x2)lnx)=lnxln(x2)=lnx2lnx=2(lnx)2

两边对 x 求导得:

1yy=22lnx1x=4lnxx

解出 y得到:

y=y4lnxx=(x2)lnx4lnxx

Note

P103 例6: 求 y=(x1)(x2)(x4)(x5) 的导数

: 假设 x>5,在等式两边取对数:

lny=12[ln(x1)+ln(x2)ln(x4)ln(x5)

对两边关于 x 求导(注意 yx 的函数):

1yy=12(1x1+1x21x41x5)

整理得到导数表达式:

y=y2(1x1+1x21x41x5)

y=(x1)(x2)(x4)(x5) 代入,得:

 y=12(x1)(x2)(x4)(x5)(1x1+>1x21x41x5)

3.2.4 更多的高阶导数计算

Tip

微分的思想也可以帮助我们来理解和计算高阶导数, 结合链式法则, 我们可以进行更加复杂的计算.

Caution

常用记号

  • f(x), f(x), f(x), f(n)(x), .

  • ddxf(x), d2dx2f(x), d3dx3f(x), dndxnf(x), .

Note

P97 例2: 设 y=cosax,求 y

: 求一阶导数 y,

y=ddxcosax=asinax

求二阶导数 y:

y=ddx(asinax)=aacosax=a2cosax

最终得到:

y=a2cosax

Note

P97 例4: 求指数函数 y=ekxk 为常数)的 n 阶导数

:
一阶导数: y=ddxekx=kekx

二阶导数: y=ddx(kekx)=k2ekx

三阶导数: y=ddx(k2ekx)=k3ekx

四阶导数: y(4)=ddx(k3ekx)=k4ekx

观察规律可知,每求导一次会多乘一个系数 k,因此一般形式为: y(n)=knekx

Note

P103 例4: 求由方程 x+2y13cosy=0 所确定的隐函数的二阶导数 d2ydx2.

: 对原方程两边关于 x 求导:

ddx(x+2y13cosy)=0
1+2dydx+13sinydydx=0
dydx(2+13siny)=1
dydx=12+13siny=36+siny

对一阶导数 dydx=36+siny 两边关于 x 求导:

d2ydx2=3cosy36+siny(6+siny)2

代入 dydx 得到:

d2ydx2=9cosy(6+siny)3.

Note

最后我们回过头来看一下图2中所给出的例子. 上面我们已经得到

dx=b1sin2θdθ,dl=bcosθsin2θdθ

如果我们希望计算 dxdl 的关系,即 dxdl,可以采用以下两种方法:

方法一: 建立 x 与 l 的显式函数关系

l=bsinθ 可得 sinθ=bl,代入 x=btanθ=bcosθsinθ 得:

x=bcosθsinθ=b1sin2θsinθ=b1(b/l)2b/l=l1(bl)2

l 求导得:

dxdl=1(bl)2+l121(b/l)22b2l3=11(b/l)2=1cosθ 

因此 dx=1cosθdl

方法二: 直接利用微分之比

dxdl 的表达式直接相除:

dxdl=b1sin2θdθbcosθsin2θdθ=1cosθ

同样得到 dx=1cosθdl

两种方法结果一致,但第二种方法通过直接操作微分,避免了复杂的函数关系和求导过程,显示了微分运算的简洁性与灵活性。在实际问题中,灵活运用微分关系可以大大简化计算,这正是微分思想的强大之处。

3.3 借助微分计算极限

Tip

借助微分的思想和符号还可以帮助我们去理解一个较为使用的求极限方法: 洛必达法则.

3.3.1 洛必达法则

Important

洛必达法则是用于计算在不定形式 (未定式, 即: 00) 下极限的有力工具.

如果函数 f(x)g(x) 在点 x=c 的某个邻域内可导,且在该点附近有:

  • f(c)=0g(c)=0 (或 f(x)g(x) 的极限趋于 ).

  • g(x)0.

那么

limxcf(x)g(x)=limxcf(x)g(x),

前提是后者的极限存在.

注意: 有时可能需要多次应用洛必达法则, 特别是当 f(x)g(x) 仍然是 00 的形式时.

Warning

下面我们借助微分的思想来理解洛必达法则.

x 充分接近 c 时,我们可以用函数的线性近似(即微分)来替代原函数。由于 f(c)=g(c)=0,在点 c 附近有:

f(x)f(c)+f(c)(xc)=f(c)(xc)
g(x)g(c)+g(c)(xc)=g(c)(xc)

因此,原比式的极限可近似表示为:

f(x)g(x)f(c)(xc)g(c)(xc)=f(c)g(c)

xc 时,这一近似将趋于精确。这正是洛必达法则的直观含义——在极限过程中,分子与分母的变化趋势由它们在该点的导数之比决定。

对于 / 型未定式,虽然不能直接使用上述推导,但微分思想仍然适用: 此时我们比较的是 f(x)g(x)xc 过程中的相对变化速率,而导数正是刻画这种瞬时变化率的工具。

需要强调的是,上述推导仅为理解洛必达法则提供了直观的几何图像。严格证明需依赖柯西中值定理,该定理能够将 f(c)g(c) 替换成 f(ξ)g(ξ),其中 ξ 位于 xc 之间, 从而得到使用起来更加灵活的洛必达法则。这部分内容我们放在了后面的章节中.

Note

P134 例1: 求 limx0sinaxsinbxb0

:

limx0sinaxsinbx=limx0acosaxbcosbx=ab

Note

P134 例2: 求 limx1x33x+2x3x2x+1

:

limx1x33x+2x3x2x+1=limx13x233x22x1=limx16x6x2=32

注意,上式中的 limx16x6x2 已不是未定式,不能对它应用洛必达法则,否则要导致错误结果。以后使用洛必达法则时应当经常注意这一点,如果不是未定式,那么就不能应用洛必达法则。

Note

P134 例3: 求 limx0xsinxx3

:

limx0xsinxx3=limx01cosx3x2=limx0sinx6x=16

Note

P134 例4: 求 limx+π2arctanx1x

:

limx+π2arctanx1x=limx+11+x21x2=limx+x21+x2=1

Note

P135 例5: 求 limx+lnxxn(n>0)

:

limx+lnxxn=limx+1xnxn1=limx+1nxn=0

Note

P135 例6: 求 limx+xneλx(n为正整数,λ>0)

: 相继应用洛必达法则 n 次,得

limx+xneλx=limx+nxn1λeλx=limx+n(n1)xn2λ2eλx==limx+n!λneλx=0

事实上,如果例6中的 n 不是正整数而是任何正数,那么极限仍为零。

对数函数 lnx、幂函数 xn(n>0)、指数函数 eλx(λ>0) 均为当 x+ 时的无穷大,但从例5、例6可以看出,这三个函数增大的"速度"是很不一样的,幂函数增大的"速度"比对数函数快得多,而指数函数增大的"速度"又比幂函数快得多。

下表列出了 x 分别取 10, 100, 1000 时,函数 lnx, x, x2ex 相应的函数值。从中可以看出当 x 增大时这几个函数增大"速度"快慢的情况。

x101001000lnx2.34.66.9x3.21031.6x2100104106ex2.20×1042.69×10431.97×10434

Note

P135 例7: 求 limx0+xnlnx(n>0)

:

xnlnx=lnx1xn

x0+ 时,上式右端是未定式 ,应用洛必达法则,得

limx0+xnlnx=limx0+lnxxn=limx0+1xnxn1=limx0+(xnn)=0

Note

P136 例8: 求 limxπ2(secxtanx)

: 这是未定式 。因为

secxtanx=1sinxcosx

xπ2 时,上式右端是未定式 00,应用洛必达法则,得

limxπ2(secxtanx)=limxπ21sinxcosx=limxπ2cosxsinx=0

Note

P136 例9: 求 limx0+xx

: 这是未定式 00. 设 y=xx,取对数得

lny=xlnx

x0+ 时,上式右端是未定式 0。应用例7的结果,得

limx0+lny=limx0+(xlnx)=0

因为 y=elny,而 limy=limelny=elimlny(当x0+),所以

limx0+xx=limx0+y=e0=1

Note

P136 例10: 求 limx0tanxxx2sinx

: 如果直接用洛必达法则,那么分母的导数(尤其是高阶导数)较繁。如果作一个等价无穷小替代,那么运算就方便得多。其运算如下:

limx0tanxxx2sinx=limx0tanxxx3=limx0sec2x13x2=limx02sec2xtanx6x=13limx0tanx3x=13

Warning

后面的章节中, 我们会介绍更加强大的计算极限的工具---泰勒展开. 而泰勒展开体现的也是微分的思想.