Time Derivative and Upwind Method
Upwind Method

数値計算を長年やっていて、最後まで私を悩ましたのが、1階微分の離散化です。 ここで紹介するUpwind method も完璧な方法ではありませんが、一応、問題は解決してくれます。

■Conventional Approach■
ここで取り上げる微分方程式としては、以前紹介した下式を使います。Upwind method の概念を 説明するには、1次元の微分方程式で十分です。

上の式によると、熱は熱伝導係数(k)だけでなく、 流体の速度(u)によっても運ばれることになります。 この速度(u)が熱伝導による拡散速度よりも速い時に、 数値解析で問題を引き起こすのです。 この問題を披露してから、Upwind method を紹介します。 まずは、有限要素式を導くところから始めましょう。 その前に、上式のGeneral solution は、次の様になります。貴方は、General solutionが正しいかどうかを チェックして下さいね。

T(x) = C1+C2eux/k

ここに、C1とC2は、境界条件によって決められる定数です。

そして、上の微分方程式の残差は、次の様になります。残差とは、上の微分方程式のT(x)に 近似解を代入したときに、下式のR(T)に入る値でしたね。

さらに、積分式は、残差に重み関数をかけて、0 から L まで積分してゼロと置くことにより、 得られんでしたね。すると、次の様になります。Lは、要素の長さを意味します。

ここに、q は下に示す様に heat flux になっています。

さらに、1次要素で上の積分式を近似すると、 マトリックス型有限要素式は、次に様になります。

BACK to Time derivative NEXT
Menu Heat Equation Time derivative Upwind 1 Dim Example