普林斯顿微积分读本 · 第六章
导数——度量变化率的工具
导数的定义是一切求导方法的根基。无论多么复杂的求导法则,最终都归结到这个定义:
这个公式度量的是:当自变量 x 发生一个微小变化 h 时,函数值 f(x) 的变化量与 h 的比值在 h 趋近于 0 时的极限。这就是瞬时变化率的精确含义。
导数 f'(a) 等于函数 y = f(x) 在点 (a, f(a)) 处切线的斜率。割线的斜率 [f(a+h)-f(a)]/h 当 h→0 时趋近于切线的斜率。
第一步:写出定义式
第二步:展开分子
第三步:约分并取极限
x² 的导数是 2x,x³ 的导数是 3x²,x⁴ 的导数是 4x³......这个规律就是幂法则:(xn)' = nxn-1。用定义可以严格证明这一法则。
第一步:写出定义式
第二步:通分
第三步:约分并取极限
1. 写出 [f(x+h) - f(x)] / h
2. 展开 f(x+h),化简分子
3. 约去 h(或通过有理化、通分等技巧消去 h)
4. 令 h → 0,得到导数表达式
虽然用定义可以求出任何可导函数的导数,但每次都回到定义会非常繁琐。以下法则让我们能够高效地求导。
常数的倍数可以直接提到导数外面。例如 (3x²)' = 3 · (x²)' = 3 · 2x = 6x。
导数可以逐项求。例如 (x² + sin(x))' = 2x + cos(x)。
"第一个的导乘第二个,加第一个乘第二个的导"
想象两个函数 f 和 g "合作"产生乘积 fg。它们各自都要"贡献"一份——f 要乘 g(自己求导),g 也要乘 f(自己求导),然后把两份加起来。
例如:(x² · ex)' = 2x · ex + x² · ex = ex(2x + x²)。
"低导高减高导低,放在低下真逍遥"
"低"指分母 g,"高"指分子 f。分子是"低乘高的导 减 高乘低的导",整体除以"低的平方"(g²)。注意分子中是 g'f - fg' 的顺序,分母的导数项在前。
例如:(sin(x)/x)' = (cos(x) · x - sin(x) · 1) / x² = (x cos(x) - sin(x)) / x²。
链式法则是求复合函数导数的核心工具。当函数嵌套函数时,我们需要"从外到内"逐层求导,然后把各层的导数相乘。
想象两个齿轮咬合在一起。大齿轮(外层函数 f)的转速取决于小齿轮(内层函数 g)的转速。如果小齿轮转得快(g'(x) 大),大齿轮也会转得快。总的效果是两个传动比的乘积——这就是链式法则 f'(g(x)) · g'(x)。
求复合函数的导数就像剥洋葱——从最外层开始,逐层向内。每剥一层就乘上该层的导数,直到最内层。例如 d/dx[sin(x²)]:先对外层 sin 求导得 cos(x²),再对内层 x² 求导得 2x,最终结果为 cos(x²) · 2x。
求 d/dx sin(x²)
第一步:识别复合结构
外层函数 f(u) = sin(u),内层函数 g(x) = x²
第二步:分别求导
f'(u) = cos(u),g'(x) = 2x
第三步:应用链式法则
| 法则名称 | 公式 | 记忆口诀 |
|---|---|---|
| 常数倍法则 | (cf)' = cf' | 常数直接提出来 |
| 和差法则 | (f ± g)' = f' ± g' | 逐项求导 |
| 乘积法则 | (fg)' = f'g + fg' | 第一个的导乘第二个,加第一个乘第二个的导 |
| 商法则 | (f/g)' = (f'g - fg')/g² | 低导高减高导低,放在低下真逍遥 |
| 链式法则 | [f(g(x))]' = f'(g(x)) · g'(x) | 从外到内,逐层相乘 |
以下表格汇集了微积分中最常用的导数公式,建议熟记。这些公式都可以通过导数定义严格证明。
| 函数 f(x) | 导数 f'(x) | 备注 |
|---|---|---|
| xn | nxn-1 | 幂法则,n 为任意实数 |
| ex | ex | 唯一导数等于自身的函数 |
| ln(x) | 1/x | 自然对数,x > 0 |
| sin(x) | cos(x) | 弧度制下成立 |
| cos(x) | -sin(x) | 注意负号 |
| tan(x) | sec²(x) = 1/cos²(x) | 利用商法则推导 |
| ax | ax ln(a) | 换底为 ex ln(a) |
| loga(x) | 1 / (x ln(a)) | 换底为 ln(x)/ln(a) |
| arcsin(x) | 1 / √(1 - x²) | |x| < 1 |
| arctan(x) | 1 / (1 + x²) | 对所有实数 x |
三角函数的导数:sin 和 cos 是一对"舞伴"——sin 的导数是 cos,cos 的导数是 -sin。每次求导就像跳一步舞,sin→cos→-sin→-cos→sin,每四步循环一次。
指数函数的导数:ex 的导数就是自身,这是它最独特的性质。ax 的导数多了一个 ln(a) 的因子。
反三角函数的导数:arcsin 和 arctan 的导数分母都含有 1 - x² 或 1 + x²,区别在于 arcsin 是开根号(只取正值),arctan 不开根号。
如果使用角度制而非弧度制,(sin x)' = (π/180) cos x,公式会多出一个常数因子。只有弧度制才能让 (sin x)' = cos x 成立,这也是数学和物理中统一使用弧度制的原因。
导数最直接的几何应用就是求切线方程。如果已知函数 f(x) 和切点 x = a,那么:
这就是点斜式:已知切点 (a, f(a)) 和斜率 f'(a),直接代入即可。
法线是过切点且与切线垂直的直线。由于两条垂直直线的斜率乘积为 -1,法线的斜率为 -1/f'(a):
1. 求出 f(a)——切点的 y 坐标
2. 求出 f'(x),再代入 x = a 得到 f'(a)——切线的斜率
3. 代入点斜式 y - f(a) = f'(a)(x - a)
4. 化简为 y = kx + b 的形式(如果需要)
导数在物理学中最经典的应用就是描述运动。位移、速度和加速度之间的关系完全由导数建立:
| 物理量 | 数学表达 | 含义 |
|---|---|---|
| 位移 | s(t) | 物体在时刻 t 的位置 |
| 速度 | v(t) = s'(t) | 位移的变化率(一阶导数) |
| 加速度 | a(t) = v'(t) = s''(t) | 速度的变化率(二阶导数) |
速度告诉你"现在移动得多快",加速度告诉你"速度变化得多快"。速度为正表示前进,为负表示后退。速度为零的瞬间,物体处于瞬时静止——这正是函数的驻点。
一个物体的位移为 s(t) = t³ - 6t² + 9t(单位:米,t 的单位:秒)。
求速度
求加速度
分析运动
v(t) = 0 时 t = 1 或 t = 3,即物体在 t = 1s 和 t = 3s 时瞬时静止。
当 0 < t < 1 时 v > 0(前进),1 < t < 3 时 v < 0(后退),t > 3 时 v > 0(再次前进)。
a(t) = 0 时 t = 2,即 t = 2s 时加速度为零(速度达到极小值)。
二阶导数 s''(t) 就是加速度。在数学上,二阶导数告诉我们一阶导数(斜率)的变化趋势:s'' > 0 意味着函数"加速上升"(凹向上),s'' < 0 意味着函数"减速上升"(凹向下)。这将在后续章节的函数图像分析中发挥关键作用。
分段函数在每一段内部可以正常求导,但在分段点处需要特别小心。分段点处的导数是否存在,取决于左右导数是否都存在且相等。
f'(a) 存在 ⇔ f'+(a) 和 f'-(a) 都存在,且 f'+(a) = f'-(a)
注意:即使函数在分段点处连续,导数也未必存在。连续是可导的必要条件,但不是充分条件。
考虑分段函数 f(x) = { x²,当 x ≤ 1;2x - 1,当 x > 1 },求 f'(1)。
第一步:验证连续性
f(1) = 1² = 1,lim(x→1+) f(x) = 2(1) - 1 = 1。左右极限相等且等于函数值,函数在 x = 1 处连续。
第二步:求左导数
第三步:求右导数
第四步:判断
因为 f'-(1) = f'+(1) = 2,所以 f'(1) = 2 存在。
f(x) = |x| 在 x = 0 处连续,但 f'-(0) = -1,f'+(0) = 1,左右导数不相等,因此 f'(0) 不存在。函数图像在原点处有一个"尖角"——没有唯一的切线。这再次说明:连续不保证可导。
电路中电流是电荷的导数:电流 I = dQ/dt 表示单位时间内通过导体截面的电荷量。在电路设计中,通过分析电流的变化率(电荷的二阶导数),工程师可以预测电路的瞬态响应和稳定性。
热传导中的温度梯度:傅里叶热传导定律 q = -k dT/dx 中,热流密度与温度梯度(温度的空间导数)成正比。导热系数 k 决定了热量传递的效率,是建筑保温和散热器设计的核心参数。
经济学中的边际成本与边际收益:边际成本 MC = dC/dq 表示增加一单位产量所增加的成本。企业通过令边际成本等于边际收益(MC = MR)来确定利润最大化的最优产量,这是微观经济学的核心结论。
机器学习中的梯度下降:在训练神经网络时,损失函数 L(θ) 对参数 θ 的导数(梯度)指示了参数更新的方向。梯度下降算法沿着负梯度方向迭代更新参数,使损失函数最小化,这是深度学习的基础优化方法。
求 f'(x),其中 f(x) = x³ · sin(x)
第一步:识别两个因子
令 u = x³,v = sin(x)
第二步:分别求导
u' = 3x²,v' = cos(x)
第三步:应用乘积法则
求 f'(x),其中 f(x) = sin(x)/x(x ≠ 0)
第一步:识别分子和分母
令 u = sin(x)(高),v = x(低)
第二步:分别求导
u' = cos(x),v' = 1
第三步:应用商法则
求 f'(x),其中 f(x) = e(3x²)
第一步:识别复合结构
外层函数 f(u) = eu,内层函数 g(x) = 3x²
第二步:分别求导
f'(u) = eu,g'(x) = 6x
第三步:应用链式法则
求 y = f(x) = x² - 3x + 1 在 x = 2 处的切线方程
第一步:求切点坐标
f(2) = 2² - 3(2) + 1 = 4 - 6 + 1 = -1
切点为 (2, -1)
第二步:求导数(斜率)
f'(x) = 2x - 3
f'(2) = 2(2) - 3 = 1
切线斜率 k = 1
第三步:代入点斜式
求 f'(x),其中 f(x) = √(sin(x² + 1))
第一步:识别多层复合结构
最外层:f(u) = √u = u1/2
中间层:g(v) = sin(v)
最内层:h(x) = x² + 1
第二步:逐层求导
f'(u) = (1/2)u-1/2 = 1/(2√u)
g'(v) = cos(v)
h'(x) = 2x
第三步:链式法则逐层相乘
第四步:化简
以下 MATLAB 代码帮助你可视化导数的核心概念。运行这些代码,直观感受函数与导数之间的关系。