定常Navier-Stokes方程式に対するNewton法 例題プログラムの紹介. Stokes 方程式を有限要素法で解いてみよう.
領域とその三角形分割
Bebは(x,y) = (Lt,R) (t∈[0,1])と書いても同じことであるが、FreeFem++ では t について等分することを想定してプログラムを書いたため、この式を採 用しているのであろう。(こういう工夫が実際に効果があるのかどうかは分から ない。). では t について等分することを想定してプログラムを書いたため、この式を採 用しているのであろう。(こういう工夫が実際に効果があるのかどうかは分から ない。).
方程式
このプログラムが解く問題の方程式は(境界条件が、マニュアルにも、プログラムの注 釈にも明記されていないが(真面目にやってほしい)…)、多分、次のものである. 判断の根拠: 1というラベルをつけたΓ1でδu=0としていることから、そこでDirichlet 境界条件をつけているのだろう。Newton法の初期値u0は. 1e)は自然境界条件である(弱形式にはexplicitに現れない— Poisson方程式の問題 における同次Neumann境界条件のようなもの). 一様流(U:= (1,0)⊤)の中に置かれた円柱の周りの流れを求めよという問題である. 15「もう1つの弱形式」と類似点が多い。見比べてみよう.
このプログラムが解く問題の方程式は(境界条件が、マニュアルにも、プログラムの注 釈にも明記されていないが(真面目にやってほしい)…)、多分、次のものである. 判断の根拠: 1というラベルをつけたΓ1でδu=0としていることから、そこでDirichlet 境界条件をつけているのだろう。Newton法の初期値u0は. 1e)は自然境界条件である(弱形式にはexplicitに現れない— Poisson方程式の問題 における同次Neumann境界条件のようなもの).
問題点と対処の方針
問題になることと、それへの対処について、次の2点を指摘しておく. a) Navier-Stokes方程式は非線形方程式であるので、一度に解を求めるのが難しい. Newton法を用いて解くことにする(反復計算で近似解を求める). b) 動粘性係数ν=2001 は素朴な数値計算にとっては、かなり小さい(“円柱”の直径1 であるから、これを代表的な長さ、∥U∥= 1を代表的な速さに選ぶと、νの逆数が Reynolds数Re に相当するので、Re = 200ということになり、これが実はかなり 大きい、ということである)。Newton法の初期値は真の解に十分近いものを選ばな いと、反復が収束しないかもしれない。そのため、大きめのνについての解を求 め、それを小さいν の問題のNewton法の初期値とすることで、解きたいνに近づ いていく. Reynolds数の説明をうっかり飛ばしていた. Navier-Stokes方程式の無次元化と Reynolds数」. 問題になることと、それへの対処について、次の2点を指摘しておく. a) Navier-Stokes方程式は非線形方程式であるので、一度に解を求めるのが難しい. Newton法を用いて解くことにする(反復計算で近似解を求める). b) 動粘性係数ν=2001 は素朴な数値計算にとっては、かなり小さい(“円柱”の直径1 であるから、これを代表的な長さ、∥U∥= 1を代表的な速さに選ぶと、νの逆数が Reynolds数Re に相当するので、Re = 200ということになり、これが実はかなり 大きい、ということである)。Newton法の初期値は真の解に十分近いものを選ばな いと、反復が収束しないかもしれない。そのため、大きめのνについての解を求 め、それを小さいν の問題のNewton法の初期値とすることで、解きたいνに近づ いていく.
Reynolds数の説明をうっかり飛ばしていた.
Newton 法の復習
方程式f(u) = 0の近似解を求めるためのNewton法とは、まず適当な初期値u0を選 び、漸化式. により{ui}を定め、十分大きなi に対して、ui を近似解に採用する、というものである.
Newton 反復の弱形式
Newton 反復の弱形式 ( 続き )
プログラム中の弱形式解読
これは∇u を4次元ベクトルにしたものである. 注 FreeFem++では、’は転置を表す(MATLABでも使われる、古い記法の利用). これは∇u を4次元ベクトルにしたものである。これから.
プログラム中の弱形式解読 ( 続き )
初期値の選択
を Newton法の初期値としてNavier-Stokes方程式の解を求め、それをνを小さくした Navier-Stokes方程式に対するNewton法の初期値としている. 200 の場合のNavier-Stokes方程式の解を求めている. Newton法の収束が早ければ、νをより速く小さくしたり、Newton法が収束しなけれ.
それが筋が通ったものであるか、私には分からない。「そこまでやるか」と感心する気 持ちがある。こういうプログラムを公開してもらえるのは、大変ありがたいことである.
余談 : Oseen 方程式
Oseen方程式は、Navier-Stokes方程式を一様な定常流において線形近似したものであ. Stokes方程式は非線形項を落とした(u= 0において線形近似)). の採用が考えられる。この方程式が普通Oseen方程式と呼ばれる(と私は習った).
Oseen近似”という検索語でヒットした玉田[3]は、Oseen方程式が研究された経緯 が分かる解説であると私は感じた。ネットで読めるので興味があれば読んでみよう.