变分法简介

引言

变分法是一个与最小化 (或最大化) 函数 (即输入为函数的实值函数) 有关的数学领域. 一个典型的例子是两相系统中自由能的表征, 即相场方法, 它引出了一个称为 Allen-Cahn 方程的 PDE [1].

变分法利用变分 (即函数和函数的微小变化) 来寻找泛函的最大值和最小值. 泛函通常用涉及函数及其导数的定积分来表示. 利用变分法的欧拉-拉格朗日方程可以求出函数的最大值或最小值 [摘自Wikipedia].

泛函

考虑定义如下的泛函 \(F\)\[ F(\phi):=\int_{a}^{b}f(\phi(x),\phi^\prime (x))dx,\tag{1}\]其中 \(f:\mathbb{R}\times \mathbb{R}\to \mathbb{R}\). 对 \(d\)-维空间中的函数而言, 泛函定义如下\[ F(\phi):=\int_{\Omega}f(\phi(x),\nabla \phi (x))dx, \quad f:\mathbb{R}\times \mathbb{R}^d\to \mathbb{R}. \tag{2}\]一般我们假设函数 \(f\) 充分光滑. 为叙述方便, 函数 \(f(\phi, \nabla \phi)\) 关于第二个参数的梯度定义:\[ \nabla _{\nabla \phi} f:= [\frac{\partial }{\partial (\frac{\partial \phi}{\partial x_1} )}, …, \frac{\partial }{\partial (\frac{\partial \phi}{\partial x_d})}]^{\mathrm{T}}f,\]此定义完成类似于 \(\nabla_\mathbf{z} g(x,\mathbf{z})\), 其中 \(g(\mathbf{z}):\mathbb{R}^d \to \mathbb{R}\) 为一个多元函数.

下面的定理给出了泛函 \(F\) 达到极小值的一个必要条件.

定理 (Euler-Lagrange 方程). 设 \(\phi \in C^2(\bar{\Omega})\) 满足如下不等式\[ F(\phi) \leq F(\psi)\tag{3}\]对所有的 \(\psi \in C^2(\bar{\Omega})\) 且在边界 \(\partial \Omega\) 上 \(\psi=\phi\). 那么就有如下等式成立\[ \frac{\partial }{\partial \phi} f(\phi, \nabla \phi) -\mathrm{div}_x \nabla_{\nabla \phi} f(\phi,\nabla \phi)=0 \tag{4}\]

证明. 任取 \(\eta(x)\in C_c^0(\Omega)\), 由已知条件可知 \(F(\phi+t \eta)\geq F(\phi)\). 从而, \(t=0\) 为函数的极小值点, 即 \(\frac{d}{dt}_{|t=0}F(\phi+t \eta) =0\). 直接计算可得\[ 0=\int_{\Omega}\frac{d }{d t}_{|t=0} f(\phi+t \eta, \nabla \phi+t \nabla \eta)dx\\ =\int_{\Omega}\frac{\partial }{\partial \phi} f(\phi, \nabla \phi) \eta + \nabla_{\nabla \phi} f(\phi,\nabla \phi)\cdot \nabla \eta dx\\ =\int_{\Omega}\left[ \frac{\partial }{\partial \phi} f(\phi, \nabla \phi) -\mathrm{div}_x \nabla_{\nabla \phi} f(\phi,\nabla \phi) \right] \eta dx.\]由 \(\eta\) 的任意性, 等式 (4) 成立, 证明结束. \(\heartsuit\)

定理 (边界条件). 设 \(\phi \in C^2(\bar{\Omega})\) 满足如下不等式\[ F(\phi) \leq F(\psi)\]对所有的 \(\psi \in C^2(\bar{\Omega})\). 那么, \(\phi\) 满足 Euler-Lagrange 方程 (4) 和如下的边界条件\[ \nabla_{\nabla \phi} f(\phi,\nabla \phi) \cdot n=0 \tag{5}\]

泛函导数

令 \(x \in \mathbb{R}^d\). 由导数的链式法则,\[ \frac{d}{dt}_{|t=0} \phi(x+t y) = \nabla \phi \cdot y \quad \forall y \in \mathbb{R}^d. \tag{6}\]利用 (6) 中函数的性质可以类似定义 \(\phi\) 的导数. 也就是说, 找到一个唯一的函数 \(\mathbf{q}(x)\) 使得如下性质成立\[ \frac{d}{dt}_{|t=0} \phi(x+t y) = \mathbf{q} \cdot y.\]

类似地, 我们可以定义泛函 \(F\) 的导数. 由 (4) 的证明过程可知,\[ \frac{d}{dt}_{|t=0}F(\phi+t \eta) =\left( \frac{\partial }{\partial \phi} f(\phi, \nabla \phi) -\mathrm{div}_x \nabla_{\nabla \phi} f(\phi,\nabla \phi), \eta \right)_{L^2(\Omega)}.\]其中 \(L^2(\Omega)\)-内积扮演了线性空间中点积的角色. 因此, 我们可以定义泛函 \(F(\phi)\) 的梯度或导数\[ \nabla F(\phi) := \frac{\partial }{\partial \phi} f(\phi, \nabla \phi) -\mathrm{div}_x \nabla_{\nabla \phi} f(\phi,\nabla \phi). \tag{7}\]有时, 泛函导数也记为 \(\frac{\delta F}{\delta \phi(x)}\).

值得将 (7) 与 (6) 进行比较. 对于 (6), 如果 \(\nabla \phi(x_0)=0\), 那么 \(x_0\) 就是一个鞍点, 此时, \(\phi(x_0)\) 达到最小值或最大值, 或者只是一个稳定点. 同样,对于 (7), 当 \(\nabla F(\phi_0)=0\) 时, 我们得到了一个鞍点, 它使得 \(F\) 达到一个稳定点.

[2]. 令 \(F(\phi)=- C\int [p(x)]^n dx \). 那么,\[ \lim_{t \to 0} \frac{dF}{d t}(\phi+t \eta) =\int C n [p(x)]^{n-1} \eta(x) dx,\]即 (这里不需要进行分步积分)\[ \frac{\delta F}{\delta \phi(x)} = C n [p(x)]^{n-1}.\]

关于变分法更多的示例和应用, 可以参阅 [4].

梯度下降

为了数值计算 \(\nabla F(\phi)=0\), 我们采用梯度下降法, 它对应于 PDE\[ \begin{cases} \frac{\partial u}{\partial t} (x,t) = – \nabla F(u(x,t)) & \Omega \times (0,T),\\ u(x,0) = u_0(x) & \Omega,\\ u(x,t) = g(x) & \partial \Omega\times (0,T). \end{cases}\tag{8}\]基本的思想是这样的: 给定一个初始猜想解 \(u_0(x)\), \(u(x,t)\) 会沿着泛函 \(F\) 的负梯度方向变化. 当 \(u\) 趋于稳定的时候, \(-\nabla F=0\) 就表明 \(F\) 到达一个稳定点.

但, (8) 式中的 \(u(t)\) 是否真的会不断减小 \(F\) 并到达一个极小值点吗?

为说明收敛性质, 考虑如下 Dirichlet 问题\[ F(u) = \int_{\Omega} \frac{1}{2}|\nabla u|^2 – u j(x) dx,\tag{9a}\]其中, 在边界 \(\partial \Omega\) 上 \(u=g\). 直接计算可得 \(\nabla F=-\nabla\cdot \nabla u-j(x)\) 且 Euler-Lagrange 方程为\[ \nabla\cdot \nabla u+j=0,\tag{9b}\]对应的梯度下降方程为\[ u_t = \nabla\cdot \nabla u+j. \tag{9c}\]

如下的计算表明, 对边界条件 \(u=g\) 或者 \(\nabla u \cdot n=0\), 满足 (9c) 的解 \(u\) 的确会不断减小能量\[ \begin{align*} \frac{d }{d t}F(u) &=\int_{\Omega}- j(x) u_t + \nabla u\cdot \nabla u_t dx \\ &=\int_{\Omega}\left[ – j(x) -\nabla\cdot \nabla u \right] \phi_t dx +\int_{\partial \Omega}\nabla u \cdot n u_t\\ &=-\int_{\Omega}\left( u_t \right)^2 dx \leq 0. \end{align*}\]

定理 (收敛性). 令 \(u^* \in C^2(\bar{\Omega})\) 满足 \(\nabla F(u^*)=0\). 令 \(u\) 为方程 (8) 的解且满足\[ u(x,t) = u^*(x,t) \quad \partial \Omega\times (0,T).\]那么,\[ \|u-u^*\|_{L^2(\Omega)}^2 = \|u(0)-u^*(0)\|_{L^2(\Omega)}^2 -2\int_{0}^{t}\|\nabla u-\nabla u^*\|_{L^2(\Omega)}^2 dt. \quad \forall t\geq 0.\]

证明. 定义\[ e(t) = \frac{1}{2} \|u-u^*\|_{L^2(\Omega)}^2.\]利用 \(\nabla F(u)=f_u(u, \nabla u) -\mathrm{div}_x \nabla_{\nabla u}f(u,\nabla u)=-j(x)-\nabla\cdot \nabla u\), 可得\[ \begin{align*} e^\prime (t)&=(u-u^*, u_t)\\ &=-(u-u^*, \nabla F(u)-\nabla F(u^*))\\ &=-(u-u^*, [-j(x)-\nabla\cdot \nabla u]-[-j(x)-\nabla \cdot \nabla u^*])\\ &=-\|\nabla u-\nabla u^*\|_{L^2(\Omega)}^2. \end{align*}\]因此, \(e(t)\) 关于时间是非增函数, 并且当 \(\nabla u-\nabla u^*\neq 0\) 或 \(u\neq u^*\) 时 \(e'(t)<0\). 由此可知, \(u \to u^*\) 不断收敛直到 \(u= u^*\). \(\heartsuit\)

参考

[1] J. Calder, The Calculus of Variations. 2022.
[2] R. LeSar, Introduction to computational materials science: fundamentals to applications. Cambridge ; New York: Cambridge University Press, 2013.
[3] Physical background of Allen-Cahn equation.
[4] Calculus of variations.

分享到:
0 0 投票数
文章评分
订阅评论
提醒
guest

0 评论
内联反馈
查看所有评论