• 締切済み

拡散方程式の数値計算(有限差分法)による解き方

下記の拡散方程式を数値計算(有限差分法)で解き方について教えてください。 拡散方程式 D∂^2C(x,y,t)/∂x^2+u∂C(x,y,t)/∂x=∂C(x,y,t)/∂t 境界条件 D∂C(x,y,t)/∂x=(K/β-u)×C(x,y,t)-KC'(y,t) at x=0 初期条件 C(x,y,0)=Co at t=0 質量保存則 ∂C'(y,t)/∂y=4/vd(K/β×C(0,y,t)-KC'(y,t) ) ---------------------------------------------------------- また、可能であれば、有限差分法以外にも数値解法(有限要素法、有限体積法など)があると思いますが、拡散方程式を解く場合、どの解法が一般的に適しているのか教えてください! よろしくお願い申し上げます。

みんなの回答

  • spring135
  • ベストアンサー率44% (1487/3332)
回答No.1

要するに微分方程式、境界条件、初期条件を差分表示し、空間で緩和した後時間を1ステップ進めてという操作を必要な回数やればよい。空間メッシュ、時間メッシュの切り方等試行錯誤をするしかない。ともあれ、一般的なことは十分事前にネット等で調べて置くべきである。 問題の場合、濃度と質量密度の状態方程式が必要であると思われる。拡散係数Dがコンスタントでない場合は相当実力と経験が必要である。しかも拡散方程式はDがイランな量の関数となる場合が多い様に思われるが最初からそのような扱いは到底無理である。 有限要素法の場合は微分方程式の変分表示から始めなければならない。質問者がその方面に明るいのであれば使えると思われる。差分法は何も考えなくても済むのが利点である。 最近は汎用プログラムが整備され、アルゴリズムを自分で考えるのは流行らないようであるので、結果を出したいだけならそのようなプログラムの入手を試みればよいと思う。 http://www.research.kobe-u.ac.jp/csi-viz/members/kageyama/lectures/H22_FY2010_latter/2nd_Sim_School/101207b_lecture_note.pdf

taisuki55
質問者

お礼

ご回答いただき、ありがとうございました。 ご連絡が遅れ、申し訳ございません。 数値計算の分野は初心者で、いろいろネット上にある情報を見てはいるのですが、質問させてもらった拡散方程式を差分法で解く方法、そのとっかかりが分からなかったので、質問しました。 濃度と質量密度の状態方程式が必要であるのですか…。拡散係数Dは、定数であるので、それほど難しくはならない!?のですね。もう少し、試行錯誤してみます。 ご回答、ありがとうございました!