第4週 拡散方程式の基礎 - toyo...
TRANSCRIPT
第4週拡散方程式の基礎
アウトライン
• 偏微分方程式の代表である拡散方程式の差分法による数値解法を紹介する.
• 偏微分方程式の場合,変数が二つ以上あるために初期・境界条件を設定する必要がある.境界条件とは何かを簡単にみる.
• 拡散方程式の数値解が初期・境界条件によってどのように異なるのかを確認する.
拡散方程式
• ある場所にあった物質が空間的に広がってゆく過程を説明する方程式.
• 粒子の隙間を移動する流体の流れを説明する方程式でもある.
• 特に のとき,拡散方程式は Laplace (ラプラス)方程式と呼ばれる.
3
2
2
x
uD
t
u
0/ tu
02
2
x
u
拡散方程式が表していること
• 拡散方程式が表しているのは,濃度差がある場合にはその濃度差に比例して濃度差が小さくなるように働くシステムである.
• これはあとで見るように差分化するとさらによく理解することができる.
• 拡散定数 D は,濃度差があるときに,それを
小さくする働きの強さを表す.別の言葉で言えば,物質の移動のしやすさを表している.
4
解析解
• 拡散方程式は解析的に解くことができる場合がある.偏微分方程式の解析解を得る方法を説明する授業ではないので結果の例だけを以下に示す.
• 時刻 において位置 に集中的に濃
度 があるとき,拡散方程式の解は以下の式となる.ただし無限遠の境界での値をゼロと仮定する.
5
0t ax
0u
Dt
ax
eDt
utxu 4
)(
0
2
4
1),(
解析解の補足説明
• 初期条件がデルタ関数なので,前述の解はGreen 関数である(と言われても困ると思うけど).
• 前述の解を組み合わせることによって,任意の初期条件についての解が得られる(詳細は略).
6
Dt
ax
eDt
utxu 4
)(
0
2
4
1),(
変数の無次元化
• 例えば我々がほしい解についての方程式が,
であったとする.方程式を解く前に
という変数変換を行うと方程式は左下のように変更される. と をうまく選ぶと,方程式は係数を含まなくすることができる.これを無次元化という.
7
2
2
x
uD
t
u
',' XxxTtt
2
2/
2
2
2 ''''
2
x
u
t
u
x
u
X
DT
t
u DXT
T X
無次元化の長所と短所
• 長所– ひとつの解を導ければ自動的にさまざまな時空スケールに応用できる.
– 解の安定性を保証しながら計算することができる.
• 短所– 解を得た後に無次元化の作業の逆を行うことによってほしい解を導出しなければならない.
• 最近の数値計算では無次元化を行わないことも多い.
8
差分による拡散方程式の数値計算(1)
• 再び,拡散方程式
を考え,差分によって数値解を導出するアルゴリズムを考える.
• 最も簡単な方法として,時間 と空間 の両方の差分化を考える.
9
2
2
x
uD
t
u
t x
差分による拡散方程式の数値計算(2)
• 時間について前進差分を使うと,前述の差分の式から,
• 空間について2次の偏導関数の差分近似から,
• 従って方程式は,
10
t
txuttxu
t
u
),(),(
2
),(2),(),(),(),(
x
txutxxutxxu
t
txuttxu
22
2 ),(2),(),(
x
txutxxutxxu
x
u
差分による拡散方程式の数値計算(3)
• 得られた方程式を u について解くと,
• 上の式を拡散方程式の差分解法と呼ぶ.
• 式からみてわかるように拡散方程式とは周囲との差を縮めるように数値を変えてゆく作業である.つまり,空間の2階微分というのは,値のでっぱり具合である.
11
),(2),(),(
),(),(
2txutxxutxxu
x
t
txuttxu
微小量を選択することに関する問題
• 拡散方程式の差分解法,
を用いるには微小量 と の大きさを決める必要がある.
• この値の選択を間違えると発散する.とりあえずは としなければならないことだけを注意しておく.
12
),(2),(),(
),(),(
2txutxxutxxu
x
t
txuttxu
t
2/1/ 2 xt
x
境界条件
• 境界条件にはディリクレ条件とノイマン条件がある.
• ディリクレ条件とは境界を常に同じ値にし続けることである.物質の移動の場合には濃度が一定であることを意味している.
• ノイマン条件とは境界における微分値を与えることである.物質の移動の場合には注入量や排出量を与えることを意味する.
• 拡散方程式でノイマン条件を与える場合には,仮想的に境界の尐し先の値を決めておく方法がある.今回の計算で,「物質が外に出ていかない」としたケースは,尐し先の値を尐し手前の値と同じにして,出て行った分だけ入る仕組みを作っている.
解の安定性
• 偏微分方程式は差分の取り方(微小量の設定の仕方)が正しくないと解が発散してしまう.
• 差分による偏微分方程式の解法は線形計算の繰り返しに過ぎない.従って,一回の計算を表す行列の固有値が大きくなりすぎないように微小量を調節しなければならない.
• この調節として適切な量が である.
• 詳細は専門書に任せる.ちなみに二次元(後述)では ½ が ¼ に変わるので注意すること.
14
2/1/ 2 xt
Excel による数値計算
• 同時に配布したファイル(2009week04.xlsm)には後で紹介する拡散方程式を計算するマクロが保存されている.
• 実行すると下に示したように,位置 x における値が各時刻ごとに表示される.ただし,すべての時刻について表示すると煩雑なので,出力は一部の数値のみである.
15
いくつかの条件における計算結果
• 1次元の場合について,幾つかの計算結果を示しておく.
• 検討してみるのは以下のとおりである.
–一箇所に同じ濃度の物質が発生しつづける場合
–ある領域に均等に分布した場合
–ある領域で拡散係数が周囲と異なる場合
16
例1:一箇所に同じ濃度の物質が発生しつづける場合(1)
• 左端の値がずっと同じ値をとりつづけるように計算する.一定濃度のものに接し続ける物質中の拡散の単純なモデル化になっている.右端の濃度を常にゼロとする.
17
0
0.2
0.4
0.6
0.8
1
1.2
0 0.2 0.4 0.6 0.8 1
t = 0.00
t = 0.05
t = 0.10
t = 0.15
t = 0.20
t = 0.25
t = 0.30
t = 0.35
t = 0.40
t = 0.45
例2:一箇所に同じ濃度の物質が発生しつづける場合(2)
• 条件は例1と同じであるが,右端から物質は逃げないとした.
18
0
0.2
0.4
0.6
0.8
1
1.2
0 0.2 0.4 0.6 0.8 1
t = 0.00
t = 0.05
t = 0.10
t = 0.15
t = 0.20
t = 0.25
t = 0.30
t = 0.35
t = 0.40
t = 0.45
例3:ある領域に均等に分布した場合
• 幅 0.2 の領域に濃度 1 が均等に分布したときの拡散.境界の値を常にゼロとした.
19
0
0.2
0.4
0.6
0.8
1
1.2
0 0.2 0.4 0.6 0.8 1
t = 0.00
t = 0.02
t = 0.04
t = 0.06
t = 0.08
t = 0.10
t = 0.12
t = 0.14
t = 0.16
t = 0.18
例4:ある領域に均等に分布した場合
• 条件は例3と同じであるが,境界から物質は逃げないとした.
20
0
0.2
0.4
0.6
0.8
1
1.2
0 0.2 0.4 0.6 0.8 1
t = 0.00
t = 0.02
t = 0.04
t = 0.06
t = 0.08
t = 0.10
t = 0.12
t = 0.14
t = 0.16
t = 0.18
例5:ある領域で拡散係数が周囲と異なる場合
• 例4の計算を 0.5 から 1 までの拡散係数を半
分にして実行した.そのため,対称性が破れている.
21
0
0.2
0.4
0.6
0.8
1
1.2
0 0.2 0.4 0.6 0.8 1
t = 0.00
t = 0.02
t = 0.04
t = 0.06
t = 0.08
t = 0.10
t = 0.12
t = 0.14
t = 0.16
t = 0.18