Helmholtz分解を理解しよう!!

どうもみなさんこんにちは。ひよこてんぷらです。いつの間にか大学を卒業し、卒業式も入学式もないままぬるっと大学院生になってしまいました。自宅にひきこもってばかりの日々ですが、意外と勉強ははかどっていると思います(たぶん)。

 

さて、今回はSohr"The Navier-Stokes Equations"やTemam"NAVIER-STOKES EQUATIONS"などを参考にHelmholtz分解について考えていきたいと思います。なぜこんなことをいきなりするかというと、指導教官からついに論文が渡されたからです!!やばい!!難しい!!

 

前回Fractional powerについて書きましたが、それを使ったNavier Stokes方程式の解析に関する論文(On the nonstationary Navier-Stokes system)が渡されましたので、せっせと読もうとしたわけですが、どうやらNS方程式関連の知見が全くない僕にはきつすぎることが判明しました!!Helmholtz分解やStokes作用素に関する知識は仮定されてしまっているので、まずはこの辺から少しずつ理解を深めよう、ということで、まずはHelmholtz分解です。

 

Helmholtz分解に関しては一般には L^p の分解が成立するようですが、これはどうも難しいようで、また論文には十分すぎるということで、今回は簡単な L^2 のHelmholtz分解について考えることにしました(それでも難しかったけど……)。

 

今回もPDFを張り付けておきます。

 

Helmholtz.pdf

 

前回の場合にならって、今回もここで少し概要だけ述べておきます。さて、Helmholtz分解というのは、次の定理を指します。

 

n \ge 2 とし、 \Omega \subset \mathbb{R}^n をdomainとします。また、

\begin{align} \{ C_{0, s}^{\infty}(\Omega) \}^n = \left\{ f \in \{C_0^{\infty}(\Omega)\}^n \ | \ \mathrm{div}f=0 \right\} \end{align}

\begin{align} \mathcal{H}_{s} = \overline{\{C_{0,s}^{\infty}(\Omega)\}^n}^{\|\cdot\|_{\{L^2\}^n}} \end{align}

\begin{align} \mathcal{G} = \left\{ \nabla p \in \{L^2(\Omega)\}^n \ | \ p \in L_{\mathrm{loc}}^2(\Omega) \right\} \end{align}

\begin{align} \mathcal{H}_{s}^{\perp} =\left\{ f \in \{L^2(\Omega)\}^n \ | \ (f,v)_{\{L^2\}^n}=0 \ \ \ {}^{\forall}v \in \mathcal{H}_{s} \right\} \end{align}

とおくと、 \mathcal{G}=\mathcal{H}_{s}^{\perp} であって

\begin{align} {}^{\forall}f \in \{L^2(\Omega)\}^n , \ \ \ {}^{\exists !}f_0 \in \mathcal{H}_{s} , \ \ \ {}^{\exists !}\nabla p \in \mathcal{G} \ \ \ \mathrm{s.t.} \ \ \ f=f_0+\nabla p \end{align}

が成立します。

 

何を言っているのかいまいちわかりずらいかもしれませんが、要するに発散が 0 になる部分と勾配で表せる部分に分解できる、といったような感じです。証明自体は発想はシンプルであり、特に直交性さえ示せてしまえば後半の主張はHilbert空間における射影定理を使えばいいだけの話ですから、問題は直交性を示すことにあります。こちらはなかなか難しく、たくさんの補題を必要とします。また補題の証明にも関数解析vector解析などさまざまな知識を総動員するので、かなり骨のある内容になります。

 

……詳しくは添付の方を見てもらうことにし、次に射影作用素について考えましょう。いまHelmholtz分解によって f=f_0+\nabla p と表されるわけですが、この分解は一意であることから、特に射影作用素 PPf=f_0 となるように定義することができます。これをHelmholtz projectionと呼びます。これについては、以下が成立します。

 

n \ge 2 とし、 \Omega \subset \mathbb{R}^n をdomainとします。 P \in \mathcal{L}(\{L^2(\Omega)\}^n,\mathcal{H}_{s}) であり、 \|P\| \le 1 が成立します。また、 {}^{\forall}f,g \in \{L^2(\Omega)\}^n に対して

\begin{align}\begin{array}{ll} P(\nabla p)=0 & (I-P)f=\nabla p \\ (I-P)^2f=(I-P)f & P^2f=Pf \\ (Pf,g)_{\{L^2\}^n}=(f,Pg)_{\{L^2\}^n} & \|f\|_{\{L^2\}^n}^2=\|Pf\|_{\{L^2\}^n}^2+\|(I-P)f\|_{\{L^2\}^n}^2 \end{array}\end{align}

が成立します。

 

一見いろいろな内容が書いてあるように思えますが、Helmholtz分解の性質からどれも容易に導かれます。また、上の定理からただちに P が非負値自己共役作用素であることも分かります。

 

以上でHelmholtz分解の大まかな内容は終わりですが、もうすこしだけ特殊な場合についても考えてみることにします。

 

まずはbounded Lipschitz domainの場合を考えましょう。要するに領域がある程度滑らか(境界がLipschitz連続関数で表せるくらい)でかつ有界な場合を考えよう、ということです。この場合は以下が成立します。

 

n \ge 2 とし、 \Omega \subset \mathbb{R}^n をbounded Lipschitz domainとします。

\begin{align} \{ C_{0,s}^{\infty}(\Omega) \}^n = \left\{ f \in \{C_0^{\infty}(\Omega)\}^n \ | \ \mathrm{div}f=0 \right\} \end{align}

\begin{align} \mathcal{H}_{s} = \overline{\{C_{0,s}^{\infty}(\Omega)\}^n}^{\|\cdot\|_{\{L^2\}^n}} \end{align}

\begin{align} \mathcal{S} = \left\{ f \in \{L^2(\Omega)\}^n \ | \ \mathrm{div}f=0 , \ \nu \cdot f|_{\partial \Omega}=0 \right\} \end{align}

\begin{align} \mathcal{G} = \left\{ \nabla p \in \{L^2(\Omega)\}^n \ | \ p \in L_{\mathrm{loc}}^2(\Omega) \right\} \end{align}

\begin{align} \mathcal{G}' = \left\{ \nabla p \in \{L^2(\Omega)\}^n \ | \ p \in L^2(\Omega) \right\} \end{align}

とします。このとき

\begin{align} \mathcal{H}_{s}=\mathcal{S} , \ \ \ \mathcal{G}=\mathcal{G}' \end{align}

が成立します。

 

さて、この場合は  \nu \cdot f|_{\partial \Omega}=0 という記号が登場します。いわゆる境界値とよばれるものですが、連続関数に対しては境界付近の極限でもって境界値を定義できますが、連続でない関数に対しても境界値をうまく定義できるでしょうか??これはgeneralized trace operatorとよばれるものを用いてうまく定義ができます。この定義においてはSobolev空間における一般論を用いて、境界上の 1/2 次Sobolev空間 H^{1/2}(\partial \Omega) というものを用います。このとき、以下が成立します。

 

n \ge 2 とし、  \Omega \subset \mathbb{R}^n をbounded Lipschitz domainとします。このとき {}^{\exists}\gamma \in \mathcal{L}(H^1(\Omega),H^{1/2}(\partial \Omega)) であって

\begin{align} \gamma u=u|_{\partial \Omega} \ \ \ {}^{\forall}u \in C^{\infty}(\overline{\Omega}) \end{align}

が成立します。また、 \gamma全射になります。また、右逆写像が存在し、特に {}^{\exists}L_{\Omega}\in \mathcal{L}(H^{1/2}(\partial \Omega),H^1(\Omega)) であって

\begin{align} \gamma \circ L_{\Omega}=I \ \ \ \mathrm{in} \ H^{1/2}(\partial \Omega) \end{align}

が成立します。

 

次に空間 E(\Omega) を定義します。

\begin{align} E(\Omega) = \{v \in \{L^2(\Omega)\}^n \ | \ \mathrm{div}v \in L^2(\Omega)\} \end{align}

とすると、 E(\Omega)

\begin{align} \|v\|_{E(\Omega)} = \|v\|_{\{L^2(\Omega)\}^n}+\|\mathrm{div}v\|_{L^2(\Omega)} \end{align}

をnormにもつBanach空間になります。さらに、 \Omega \subset \mathbb{R}^n をbounded Lipschitz domainとするとき、  \overline{\{C^{\infty}(\overline{\Omega})\}^n}=E(\Omega) が成立します。そして、次の定理が成立します。

 

n \ge 2 とし、 \Omega \subset \mathbb{R}^n をbounded Lipschitz domainとします。また、 \nu\partial \Omega に対する外向き単位法線vectorとします。このとき {}^{\exists}\gamma_{\nu}\in\mathcal{L}(E(\Omega),H^{1/2}(\Omega)^*) であって

\begin{align} (\gamma_{\nu}v)(\gamma u) = \int_{\partial \Omega} \gamma_{\nu}v\gamma u dS \end{align}

に対してgeneralized Stokes formula

\begin{align} (\gamma_{\nu}v)(\gamma u)=(\mathrm{div}v,u)_{L^2}+(v,\nabla u)_{\{L^2\}^n} \ \ \ {}^{\forall}v \in E(\Omega) , \ {}^{\forall}u \in H^1(\Omega) \end{align}

および

\begin{align} \gamma_{\nu}v=\nu \cdot v|_{\partial \Omega} \ \ \ {}^{\forall}v \in \{C^{\infty}(\overline{\Omega})\}^n \end{align}

が成立します。

 

これが示されれば、定義域が稠密な有界線形作用素は一意に拡張できることに注意して、 {}^{\forall}f \in \left\{ f \in \{L^2(\Omega)\}^n \ | \ \mathrm{div}f=0 \right\} \subset E(\Omega) に対して

\begin{align} f_n \to f \ \ \ \mathrm{in} \ E(\Omega) \end{align}

となるような \{f_n\} \subset \{C^{\infty}(\overline{\Omega})\}^n をとり,

\begin{align} \nu \cdot f|_{\partial \Omega} = \lim_{n \to \infty}\nu \cdot f_n|_{\partial \Omega}=\lim_{n \to \infty}\gamma_{\nu}f_n=\gamma_{\nu}f \end{align}

と定義することで, generalized trace

\begin{align} \nu \cdot f|_{\partial \Omega}=0 \end{align}

を定義することができます。こうして、境界値が定義できました。

 

さて、最後に全空間の場合を考えましょう。この場合は、以下が成立します。

 

n \ge 2 とします。また、

\begin{align} \{ C_{0,s}^{\infty}(\mathbb{R}^n) \}^n = \left\{ f \in \{C_0^{\infty}(\mathbb{R}^n)\}^n \ | \ \mathrm{div}f=0 \right\} \end{align}

\begin{align} \mathcal{H}_{s} = \overline{\{C_{0,s}^{\infty}(\mathbb{R}^n)\}^n}^{\|\cdot\|_{\{L^2\}^n}} \end{align}

\begin{align} \mathcal{H}_{s}' = \left\{ f \in \{L^2(\mathbb{R}^n)\}^n \ | \ \mathrm{div}f=0 \right\} \end{align}

\begin{align} \mathcal{G} = \left\{ \nabla p \in \{L^2(\mathbb{R}^n)\}^n \ | \ p \in L_{\mathrm{loc}}^2(\mathbb{R}^n) \right\} \end{align}

\begin{align} \nabla C_0^{\infty}(\mathbb{R}^n) = \left\{ \nabla p \in \{C_0^{\infty}(\mathbb{R}^n)\}^n \ | \ p \in C_0^{\infty}(\mathbb{R}^n) \right\} \end{align}

\begin{align} \mathcal{C} = \overline{\nabla C_0^{\infty}(\mathbb{R}^n)}^{\|\cdot\|_{\{L^2\}^n}} \end{align}

とします。このとき

\begin{align} \mathcal{H}_{s}=\mathcal{H}_{s}' , \ \ \ \mathcal{G}=\mathcal{C} \end{align}

が成立します。

 

証明は軟化子を用いた近似を使います。さて、これでHelmholtz分解の概要は以上です!!最後におさらいしておきましょう。

 

n \ge 2 とし、 \Omega \subset \mathbb{R}^n をdomainとします。このとき以下の直和分解

\begin{align} \{L^2(\Omega)\}^n=\overline{\left\{ f \in \{C_0^{\infty}(\Omega)\}^n \ | \ \mathrm{div}f=0 \right\}}^{\|\cdot\|_{\{L^2\}^n}} \oplus \left\{ \nabla p \in \{L^2(\Omega)\}^n \ | \ p \in L_{\mathrm{loc}}^2(\Omega) \right\} \end{align}

が成立します。特に、 \Omega がbounded Lipschitz domainのとき、

\begin{align} \{L^2(\Omega)\}^n=\left\{ f \in \{L^2(\Omega)\}^n \ | \ \mathrm{div}f=0 , \ \nu \cdot f|_{\partial \Omega}=0 \right\} \oplus \left\{ \nabla p \in \{L^2(\Omega)\}^n \ | \ p \in L^2(\Omega) \right\} \end{align}

であり、また

\begin{align} \{L^2(\mathbb{R}^n)\}^n= \left\{ f \in \{L^2(\mathbb{R}^n)\}^n \ | \ \mathrm{div}f=0 \right\} \oplus \overline{\left\{ \nabla p \in \{C_0^{\infty}(\mathbb{R}^n)\}^n \ | \ p \in C_0^{\infty}(\mathbb{R}^n) \right\}}^{\|\cdot\|_{\{L^2\}^n}} \end{align}

が成立します。

 

以上で今回の内容はおしまいです!!お疲れさまでした!!さて次はStokes作用素の性質について調べたり、実際にNS方程式にHelmholtzの分解定理を適用して式の変形などを行ってみたいと思います!!いつか論文の解説もできるといいですね……では今回はこの辺にしましょう!!最後まで読んでいただきありがとうございます!!