# 9.7方向导数与梯度

## 阅读入口

* [方向导数](/knowledge/maths/multivariable-calculus/directional-derivative-gradient/)
* [梯度](/knowledge/maths/multivariable-calculus/gradient/)
* [全微分](/knowledge/maths/multivariable-calculus/total-differential/)（方向导数的计算公式以可微为前提）
* [偏导数](/knowledge/maths/multivariable-calculus/partial-derivative/)（方向导数是偏导数沿一般方向的推广）

## 学习安排

本节沿射线用距离 $\rho$ 定义方向导数，再在可微的前提下把它化成 $f_x\cos\alpha+f_y\cos\beta$ 的形式，然后把这两个系数抽成梯度。等值线与等值面用来解释梯度为什么垂直于它们、为什么指向函数值增大的方向。

复习时按“定义—公式—梯度”的顺序回看。判断“沿哪个方向增加最快”时直接看梯度方向，不必逐个方向代公式；要比较大小就取梯度的模。下一节讨论极值时，驻点条件就是梯度为零，两节的记号到那里合流。

## 方向导数的定义

本页讨论二元函数 $z=f(x,y)$，设它在点 $P_0(x_0,y_0)$ 的某个邻域内有定义。自 $P_0$ 引一条射线 $l$，设 $l$ 与 $x$ 轴正向、$y$ 轴正向的夹角分别为 $\alpha$、$\beta$。射线上的点

$$
P(x_0+\Delta x,\ y_0+\Delta y)
$$

到 $P_0$ 的距离记作

$$
\rho=\sqrt{(\Delta x)^2+(\Delta y)^2}.
$$

因为 $P$ 在射线 $l$ 上，增量必须取

$$
\Delta x=\rho\cos\alpha,\qquad \Delta y=\rho\cos\beta
$$

的形式，而不能是任意趋于零的一对增量。$\cos\alpha$、$\cos\beta$ 称为方向 $l$ 的**方向余弦**，满足

$$
\cos^2\alpha+\cos^2\beta=1.
$$

本页用到可微性。若

$$
\Delta z=f_x(x_0,y_0)\Delta x+f_y(x_0,y_0)\Delta y+o(\rho)
\qquad(\rho\to0),
$$

则称 $f$ 在 $P_0$ 处**可微**；可微的定义与判定见[全微分](/knowledge/maths/multivariable-calculus/total-differential/)，偏导数的记号见[偏导数](/knowledge/maths/multivariable-calculus/partial-derivative/)。三元函数的情形在相应位置单独说明。

若极限

$$
\lim_{\rho\to0^+}
\frac{f(x_0+\rho\cos\alpha,\ y_0+\rho\cos\beta)-f(x_0,y_0)}{\rho}
$$

存在，则称它为 $f$ 在点 $P_0$ 沿射线 $l$ 方向的**方向导数**，记作

$$
\left.\frac{\partial f}{\partial l}\right|_{P_0}.
$$

这个极限是单侧的：$P$ 只能沿射线从 $P_0$ 向外移动，$\rho>0$ 且 $\rho\to0^+$。因此方向导数依赖射线的指向，沿相反射线求出的结果一般与原值不同。

取 $l$ 为 $x$ 轴正向，此时 $\alpha=0$、$\beta=\pi/2$，差商是

$$
\frac{f(x_0+\rho,y_0)-f(x_0,y_0)}{\rho},
$$

极限为 $f_x(x_0,y_0)$。同理，取 $y$ 轴正向得到 $f_y(x_0,y_0)$。若相应偏导数存在，它等于沿该坐标轴正方向的方向导数；反过来仅有单侧方向导数不能保证双侧偏导数存在。

[来源：方向导数](/knowledge/maths/multivariable-calculus/directional-derivative-gradient/#definition)

定义里的极限在具体函数上不好算，下一段给出可微时的计算公式。

## 方向导数的计算

若 $f$ 在点 $P_0$ 可微，则 $f$ 在 $P_0$ 沿任一方向 $l$ 的方向导数都存在，且

$$
\left.\frac{\partial f}{\partial l}\right|_{P_0}
=f_x(x_0,y_0)\cos\alpha+f_y(x_0,y_0)\cos\beta .
$$

**证明**

由可微性，把 $\Delta x=\rho\cos\alpha$、$\Delta y=\rho\cos\beta$ 代入全增量：

$$
\Delta z=f_x(x_0,y_0)\,\rho\cos\alpha
+f_y(x_0,y_0)\,\rho\cos\beta+o(\rho).
$$

两边除以 $\rho>0$，得

$$
\frac{\Delta z}{\rho}
=f_x(x_0,y_0)\cos\alpha+f_y(x_0,y_0)\cos\beta
+\frac{o(\rho)}{\rho}.
$$

令 $\rho\to0$，最后一项趋于 $0$，即得所述公式。

对三元函数 $u=f(x,y,z)$，若 $f$ 在 $P_0(x_0,y_0,z_0)$ 可微，方向 $l$ 的方向余弦为 $(\cos\alpha,\cos\beta,\cos\gamma)$，则

$$
\left.\frac{\partial f}{\partial l}\right|_{P_0}
=f_x\cos\alpha+f_y\cos\beta+f_z\cos\gamma,
$$

其中三个偏导数都在 $P_0$ 取值。方向余弦仍满足

$$
\cos^2\alpha+\cos^2\beta+\cos^2\gamma=1.
$$

> [!WARNING]
> 公式以可微为前提，只有偏导数存在还不够。例如 $f(x,y)=x^2y/(x^2+y^2)$，并在原点补充定义 $f(0,0)=0$。它的两个偏导数在原点都等于 $0$，但沿方向 $(\cos\alpha,\sin\alpha)$ 的差商恒为 $\cos^2\alpha\sin\alpha$，取 $\alpha=\pi/4$ 得 $\sqrt2/4$，与公式给出的 $0$ 不符。原因正是 $f$ 在原点不可微。

[来源：方向导数](/knowledge/maths/multivariable-calculus/directional-derivative-gradient/#computation)

公式右端是两个偏导数的线性组合，把系数抽出来就是下一段的梯度。

## 梯度

设 $f$ 在平面区域 $D$ 内具有一阶连续偏导数。对每一点 $P(x,y)\in D$，把该点的两个偏导数排成一个向量

$$
\mathbf{grad}\,f(x,y)=\nabla f(x,y)
=f_x(x,y)\,\mathbf i+f_y(x,y)\,\mathbf j,
$$

称它为 $f$ 在点 $P$ 的**梯度**。三元函数 $u=f(x,y,z)$ 的梯度为

$$
\mathbf{grad}\,f=\nabla f
=f_x\,\mathbf i+f_y\,\mathbf j+f_z\,\mathbf k .
$$

记号 $\nabla$ 读作Nabla，称为**向量微分算子**，也叫哈密顿算子：

$$
\nabla=\frac{\partial}{\partial x}\mathbf i
+\frac{\partial}{\partial y}\mathbf j
+\frac{\partial}{\partial z}\mathbf k .
$$

它是一个运算符号，作用在标量函数 $f$ 上直接得到 $f$ 的梯度。

梯度是向量，其模为

$$
|\nabla f|=\sqrt{f_x^2+f_y^2},
$$

三元时根号内再加 $f_z^2$。梯度为零向量等价于两个（或三个）一阶偏导数同时为零。

[来源：梯度](/knowledge/maths/multivariable-calculus/gradient/#definition)

方向导数与梯度的定义到这里都齐了；课程约定把 $\nabla$ 与方向余弦的写法收在一起。

## 课程约定

* 教材用 $\alpha$、$\beta$ 表示射线与 $x$、$y$ 轴正向的夹角，三元时再加 $\gamma$，并称相应的余弦为方向余弦。
* 方向导数记作 $\left.\dfrac{\partial f}{\partial l}\right|_{P_0}$；梯度记作 $\mathbf{grad}\,f$ 或 $\nabla f$，教材把 $\nabla$ 称为向量微分算子，也叫Nabla算子。
* 方向导数的计算公式要求函数在该点可微。

## 易错点

* 方向导数沿射线定义，方向余弦取的是射线指向。沿相反射线再求一次，结果一般与原来的值不同。
* 把方向余弦写成两点连线向量的分量，忘记除以长度。公式要求的是单位方向。
* 只验证偏导数存在就套 $f_x\cos\alpha+f_y\cos\beta$。这个公式需要可微，偏导数存在并不够。
* 梯度是向量，方向导数是数。问“最大方向导数”时答案应是 $|\nabla f|$，不是 $\nabla f$。

## 复习要点

复习时先写出单位方向，再代公式；遇到“最速上升”“最速下降”的问题，先算梯度再回答方向，最后补充大小。等值线的法向量有两个方向，回答时要说明梯度指向函数值增大的一侧。
