一个 多元函数 指的是输入或输出由多个数字组成。相反,如果一个函数的输入和输出都是单个数字,那么我们称之为 一元函数

如果一个函数的输出是向量,我们称之为 向量值函数;而输出是一个单个数字的函数,它或者被称为 标量值 函数,或者被称为 实值 函数,这通常在理论数学中比较常见(实数的意思)

可视化

多维图形

我们可以在三维空间中绘制点来表示一个具有二维输入和一维输出的函数。

它最终看起来像一个三维的面, 这个面在 xyxy- 平面以上的高度表示每个点上的函数值。

例: 钟形曲线

函数:f(x,y)=e(x2+y2)f(x,y)=e^{-(x^2+y^2)}

图:钟形曲线

等高线地图

选择一组输出值来描述函数,对这些输出值中的每一个,画出一条线,这条线包含且仅包含所有函数值 f(x,y)f(x,y)为输出值的输入值(x,y)(x,y)。为了清楚地知道哪条线对应哪个值, 人们通常在每条线旁标注适当的数字.

例:抛物面

函数:f(x,y)=x2+y2f(x,y)=x^2+y^2

图:抛物面

参数曲线

具有一维输入和多维输出的函数可以想像成在空间中绘制曲线。 这样的函数被称为 参数函数, 它的输入叫做 参数。 在多元微积分中,有时你需要找到一个具有特殊曲线的参数函数,这叫做将曲线 参数化

请注意,和图形不同,在图形中我们试图同时描绘输入空间和输出空间;和等高线也不同,在等高线中我们只是画出输入空间。用参数来解释函数让我们只观察输出空间,其中输出空间的维数比输入空间多,但是其输入信息不明确

函数:

f(t)=[cos(t)sin(t)]f(t)=\begin{bmatrix} \cos(t) \\ \sin(t) \end{bmatrix}

图形显然为一个圆:圆

参数曲面

要绘制一个具有二维输入和三维输出的函数,你可以从输入空间中选择某个区域,画出这个区域对应的所有输出值的点。这会生成一个面,即所谓的参数曲面

将这个过程反过来,从空间中的一个面着手,试着找到一个函数,函数的图形就是这个曲面,就是 参数化 这个面。一般来说,这是一件棘手的事情。

示例: 参数化圆环

我们的策略是画这个圆环的每个圆形的切片。图中给出了一些我所说的切片的样例 (蓝色的部分):

核心思想: 我们将把圆环上的每个点描述成两个向量的和:

向量 c\vec{c} 的起点是原点,它指向红色圆圈上的某个点。要确定这个点是红圈上的哪个点,我们将会设计一个向量值函数,它取决于参数 tt。当 tt 的值发生改变时,用来描述红圈上的点的向量 c(t)\vec{c}(t) 也会随之发生变化。

向量 d\vec{d} 的起点是红圈上的那个点,它指向圆环上相应“切片”上的某个点,它的方向取决于它在红圈上的锚点。我们将推出第二个参数 uu,用它确定 d\vec{d} 指向蓝色圆圈上的哪部分。

这意味着圆环上的每个点都将被描述为两个向量的和,即:

c(t)+d(u,t)\vec{c}(t)+\vec{d}(u,t)

若大圆半径为 33,则其中:

c(t)=3[cos(t)sin(t)0],0t2π\vec{c}(t)=3 \left[ \begin{matrix} \cos(t) \\ \sin(t) \\ 0 \end{matrix} \right] , 0 ≤ t ≤ 2π

d(u,t)=cos(u)j^(t)+sin(u)k^=cos(u)[cos(t)sin(t)0]+sin(u)[001]=[cos(u)cos(t)cos(u)sin(t)sin(u)],0u2π,0t2π\begin{aligned} \vec{d}(u,t)&=\cos(u)\hat{j}(t)+\sin(u)\hat{k} \\ &=\cos(u)\left[ \begin{matrix} \cos(t) \\ \sin(t) \\ 0 \end{matrix} \right] +\sin(u) \left[ \begin{matrix} 0 \\ 0 \\ 1 \end{matrix} \right]\\ &= \left[ \begin{matrix} \cos(u)\cos(t) \\ \cos(u)\sin(t) \\ \sin(u) \end{matrix} \right],0 ≤ u ≤ 2π ,0 ≤ t ≤ 2π \end{aligned}

最终:

f(u,t)=c(t)+d(u,t)=[3cos(t)+cos(u)cos(t)3sin(t)+cos(u)sin(t)sin(u)],0u2π,0t2π\begin{aligned} \vec{f}(u,t) &=\vec{c}(t)+\vec{d}(u,t)\\ &=\left[ \begin{matrix} 3\cos(t)+\cos(u)\cos(t) \\ 3\sin(t)+\cos(u)\sin(t) \\ \sin(u) \end{matrix} \right],0 ≤ u ≤ 2π ,0 ≤ t ≤ 2π \end{aligned}

向量场

向量场将一个向量与空间中的每个点相关联。

向量场和流体流动是齐头并进的。

可以将向量场视为表示一个多变量函数,其输入和输出空间各具有相同的维度。

在向量场中绘制的箭头长度通常不是为了缩放,但一个向量的长度与另一个向量长度的比例应该是准确的。有时矢量长度使用颜色进行表示。

考虑这个函数:

f(x,y)=[xy]f(x,y)=\left[ \begin{matrix} x \\ y \end{matrix} \right]

图像如下:

偏导数和梯度

偏导数

对于一个多变量函数,例如 f(x,y)=x2yf(x,y)=x^2y,计算偏导数如下所示:

fx=xx2y视 y 为常数=2xy\frac{∂f}{∂x}=\underbrace{\frac{∂}{∂x}x^2y}_{\text{视 y 为常数}}=2xy

fy=yx2y视 x 为常数=x2\frac{∂f}{∂y}=\underbrace{\frac{∂}{∂y}x^2y}_{\text{视 x 为常数}}=x^2

偏导数出现的原因是当一个函数的输入量由多个变量组成,我们希望通过只让其中一个变量改变而保持所有其他变量不变,看到函数是如何变化的。

关于三维图表,你可以将偏导数 fx\frac{∂f}{∂x} 视为 ff 的恒定 yy 值的平面切面,然后测量出切割线的斜率。

梯度

标量的多变量函数 f(x,y,)f(x,y,⋯) 的梯度称为 f∇f,将其所有的偏导数信息打包成一个向量:

f=[fxfy]∇f= \begin{bmatrix} \frac{∂f}{∂x} \\ \frac{∂f}{∂y} \\ ⋮ \end{bmatrix}

这意味着 f∇ f 是一个向量值函数,其指向最速上升。

方向导数

如果你有一些多变量函数 f(x,y)f(x,y) 和在函数输入空间中的一些向量 v\vec{v}ff 沿 v\vec{v} 方向的方向导数告诉我们当输入值随向量 v\vec{v} 移动时 ff 的速率变化。

公式为:

vf=fv∇_{\vec{v}}f=∇f⋅\vec{v}

向量值函数

向量值函数的导数和微分

r(t)=x(t)i^+y(t)j^\vec{r}(t)=x(t)\hat{i}+y(t)\hat{j}

r(t)=x(t)i^+y(t)j^\vec{r}^{\prime}(t)=x^{\prime}(t)\hat{i}+y^{\prime}(t)\hat{j}

dr=dxi^+dyj^\mathrm{d}\vec{r}=\mathrm{d}x\hat{i}+\mathrm{d}y\hat{j}

曲率

曲线上某个点的曲率半径,简单地说,就是在那一点处最贴合该曲线的圆的半径。

曲率为曲率半径的倒数,即

κ=1Rκ= \frac{1}{R}

第 1 步:求单位切线向量 T(t)T(t)

单位化:

T(t)=s(t)s(t)T(t)=\frac{\vec{s}^{\prime}(t)}{|\vec{s}^{\prime}(t)|}

第 2 步:求 dTds\frac{\mathrm{d}T}{\mathrm{d}s}

κ=dTds=dTdtdsdtκ=\bigg|\frac{\mathrm{d}T}{\mathrm{d}s}\bigg| =\frac{|\frac{\mathrm{d}T}{\mathrm{d}t}|}{|\frac{\mathrm{d}\vec{s}}{\mathrm{d}t}|}

特别地,若 s(t)=[x(t)y(t)]s(t)=\left[\begin{matrix} x(t)\\ y(t) \end{matrix}\right],则

κ=x(t)y(t)y(t)x(t)[x2(t)+y2(t)]32κ=\frac{x^{\prime}(t)y^{\prime \prime}(t)-y^{\prime}(t)x^{\prime \prime}(t)}{[x^{\prime 2}(t)+y^{\prime 2}(t)]^{\frac32}}

若写成叉乘形式:

κ=ss×sss=s×ss3κ=\frac{\frac{\vec{s}^{\prime}}{|\vec{s}^{\prime}|}×\frac{\vec{s}^{\prime \prime}}{|\vec{s}^{\prime}|}}{|\vec{s}^{\prime}|} =\frac{\vec{s}^{\prime}×\vec{s}^{\prime \prime}}{|\vec{s}^{\prime}|^3}

多元链式法则

ddtf(x(t),y(t))=fxdxdt+fydydt\frac{\mathrm{d}}{\mathrm{d}t}f(x(t),y(t))=\frac{∂f}{∂x}\frac{\mathrm{d}x}{\mathrm{d}t}+\frac{∂f}{∂y}\frac{\mathrm{d}y}{\mathrm{d}t}

向量形式:

ddtf(v(t))=fv(t)\frac{\mathrm{d}}{\mathrm{d}t}f(\vec{v}(t))=∇f⋅\vec{v}^{\prime}(t)

散度与旋度

散度

用解释物体流动的方法解释向量场。

散度是一个算子,它接受定义该向量场的向量值函数,并输出一个标量值函数,用于测量每个点处流体密度的变化。

散度的公式:

divv=v=v1x+v2y+\operatorname{div}\vec{v}=∇⋅\vec{v}=\frac{∂v_1}{∂x}+\frac{∂v_2}{∂y}+⋯

旋度

旋度测量向量场中的 "旋转程度"。

在二维空间中,如果向量场由函数 v(x,y)=v1(x,y)i^+v2(x,y)j^\vec{v}(x,y)=v_1(x,y)\hat{i}+v_2(x,y)\hat{j} 表示,它的旋转程度由如下公式给出

v=×v=v2xv1y\vec{v}=∇×\vec{v}=\frac{∂v_2}{∂x}-\frac{∂v_1}{∂y}

三维空间同理。

二阶偏导

拉普拉斯算子

Δf=fΔf=∇⋅∇f

调和函数

满足 Δf=0Δf=0 的函数 ff 被称为调和函数

类比 f=0f^{\prime \prime}=0

雅可比矩阵与雅可比行列式

虽然函数变换不一定是线性的,但在一个点周围极小的一块区域可以视为线性变换,故有一个表示该变换的矩阵,即雅可比矩阵。

形式如下:

[y1x1y1xnymx1ymxn]\begin{bmatrix} \frac{∂y_1}{∂x_1} & ⋯ & \frac{∂y_1}{∂x_n} \\ ⋮ & ⋱ & ⋮ \\ \frac{∂y_m}{∂x_1} & ⋯ & \frac{∂y_m}{∂x_n} \end{bmatrix}

易得:梯度是雅可比矩阵的转置

雅可比行列式衡量变换后的空间是变小了还是变大了。

切平面和局部线性化

切线平面

双变量函数 f(x,y)f(x,y)(x0,y0)(x_0,y_0) 处的切线平面方程是:

T(x,y)=f(x0,y0)+fx(x0,y0)(xx0)+fy(x0,y0)(yy0)T(x,y)=f(x_0,y_0)+f_x(x_0,y_0)(x-x_0)+f_y(x_0,y_0)(y-y_0)

类比单变量函数的切线方程:y=f(x0)+f(x0)(xx0)y=f(x_0)+f^{\prime}(x_0)(x-x_0)

局部线性法

局部线性法将切平面的概念泛化到任何多变量函数。

这样做的目的是用一个简单函数去近似一个函数,该函数在相同输入时有相同输出的,以及相同的偏导数的值。

线性函数:

f(x1,,xn)=[a1an]xf(x_1,⋯,x_n)= \begin{bmatrix} a_1\\ ⋮\\ a_n \end{bmatrix}⋅\vec{x}

用向量的方式描述 ffx0x_0 附近的局部线性法:

Lf(x)=f(x0)+f(x0)(xx0)L_f(x)=f(x_0)+∇f(x_0)⋅(x-x_0)

二次近似

海森矩阵

海森矩阵是一个组织一个标量值函数的所有第二偏导数的矩阵。

[2fx1x12fx1x22fx1xn2fx2x12fx2x22fx2xn2fxnx12fxnx22fxnxn]\begin{bmatrix} \frac{∂^2f}{∂x_1∂x_1} & \frac{∂^2f}{∂x_1∂x_2} & ⋯ & \frac{∂^2f}{∂x_1∂x_n} \\ \frac{∂^2f}{∂x_2∂x_1} & \frac{∂^2f}{∂x_2∂x_2} & ⋯ & \frac{∂^2f}{∂x_2∂x_n} \\ ⋮&⋮&⋱&⋮\\ \frac{∂^2f}{∂x_n∂x_1} & \frac{∂^2f}{∂x_n∂x_2} & ⋯ & \frac{∂^2f}{∂x_n∂x_n} \\ \end{bmatrix}

二次近似

对于具有任何多维输入的标量值函数 ff,此方法的一般形式如下:

Qf(x)=f(x0)+f(x0)(xx0)+12(xx0)THf(x0)(xx0)Q_f(x)=f(x_0)+∇f(x_0)⋅(x-x_0)+\frac 12(x-x_0)^TH_f(x_0)(x-x_0)

类比单变量函数的二阶近似:y=f(x0)+f(x0)(xx0)+12(xx0)f(x0)(xx0)y=f(x_0)+f^{\prime}(x_0)(x-x_0)+\frac 12 (x-x_0)f^{\prime \prime}(x_0)(x-x_0)

最大值、最小值和鞍点

图形上:多变量函数的局部极大值是山峰,对应于具有平面切平面的图形。

数值上:多变量函数在最小点处的梯度为零向量,且二阶导数矩阵为正定矩阵

正式地说,当我们输入多变量函数时,局部极大值点是输入空间中的一个点,该点附近的一个小区域中的所有其他输入产生的值都比他小。