6. 現象を支配する方程式(支配方程式)
現象は微分方程式によって記述
微分と積分が計算できれば現象を明らかにできる
支配方程式
場所や時間によって方程式は変わらない
流体の支配方程式
0
i
i
x
u
t
j
ij
ij
iji
xx
p
x
uu
t
u
i
i
i
iji
i
i
i
i
x
q
x
u
x
pu
x
Eu
t
E
(質量保存式)
(エネルギ保存式)
(運動量保存式)
先端GPGPUシミュレーション工学特論13 2015/06/04
7. 拡散方程式
物質の拡散を表す方程式
水の中に落ちたインクの拡散,金属中の熱伝導等
時刻t=0におけるuの分布(初期値)が既知
時間進行に伴い,uがどのように変化するかを計算
時間積分しながらuの分布を求める
2
2
),(),(
x
txu
t
txu
先端GPGPUシミュレーション工学特論14 2015/06/04
2
2
2
2
),,(),,(),,(
y
tyxu
x
tyxu
t
tyxu
30. 2次元への拡張
x方向2階偏微分
y方向を固定してx方向に偏微分
y方向2階偏微分
x方向を固定してy方向に偏微分
22
2
),(),(2),(
Δx
yΔxxuyxuyΔxxu
x
u
22
2
),(),(2),(
Δy
ΔyyxuyxuΔyyxu
y
u
先端GPGPUシミュレーション工学特論37 2015/06/04
31. 時間積分
時間微分項の離散化
時間微分項を前進差分で離散化
右辺のt+tの項を移行
t
tyxuttyxu
t
u
),,(),,(
先端GPGPUシミュレーション工学特論38 2015/06/04
u
t
u 2
t
u
ttyxuttyxu
),,(),,(
拡散方程式を代入
),,(),,(),,( 2
tyxuttyxuttyxu
u(x, y, t)の2階微分を計算できればu(x, y, t+t)が求められる
33. 離散化された拡散方程式
連続系
離散系
t秒後の値
2
2
2
2
),,(),,(),,(
y
tyxu
x
tyxu
t
tyxu
2
1,,1,
2
,1,,1,
1
, 22
y
uuu
x
uuu
t
uu n
ji
n
ji
n
ji
n
ji
n
ji
n
ji
n
ji
n
ji
2
1,,1,
2
,1,,1
,
1
,
22
y
uuu
x
uuu
tuu
n
ji
n
ji
n
ji
n
ji
n
ji
n
jin
ji
n
ji
先端GPGPUシミュレーション工学特論40 2015/06/04
48. CPUプログラム
uの積分
先端GPGPUシミュレーション工学特論55 2015/06/04
2
1,,1,
2
,1,,1
,
1
,
22
y
uuu
x
uuu
tuu
n
ji
n
ji
n
ji
n
ji
n
ji
n
jin
ji
n
ji
void integrate(double *u, double *ulap, double *unew){
int i,j,ij;
for(j=0;j<Ny;j++){
for(i=0;i<Nx;i++){
ij = i*Ny+j;
unew[ij] = u[ij] + dt*DIFF*ulap[ij];
}
}
}