ミュレーション終了時刻MaxTimeとの大小比較をおこなう必要があるが,このとき求 まった離散変化時刻T =√
2とMaxTimeとの比較が正しくおこなわれているかどうか を確認する.今回はシミュレーション終了時刻をmaxTime= 6として実行結果の比較を おこなった.
まず,MCSを選択した場合の実行結果を図7.1 に示す.
続いて,RCSを選択した場合の実行結果を図7.2に示す.
MCSとRCSとの二者のシミュレーション結果を比較すると,最後のIPにおける各変 数の式は形式に多少の差異は認められるものの,一致していることが分かる.
また,実行の結果として得られたtの式をプロットしたものを図7.3に示す.
図より,質点が地面をすり抜けるなどすることなく,高さy= 0においてバウンドする 解軌道を正しく求められていることが確認できる.これは,前述の通り,無理数を含む数 式の大小比較が正しくおこなってこそ得られるものであり,第5章における区間値への変 換等の処理一環が正しくおこなわれたことを意味する.
7.2 bouncing particle interval
2つめの例題は,2.2.6節において示した,初期値に幅を持った質点が自由落下し,地面 でバウンドするモデルである.
このモデルにおいては,質点は初期位置(高さ)yが9以上11以下となっている.そ
のため,Hyroseによりy のパラメタ定数であるpyが追加され,パラメタ定数に関する
制約9 ≤ py ≤11が新たに追加される.この時,時刻 tの変化に対するこの質点の高さ
の式はy(t) = −5∗t2 +py となり,パラメタ定数を含んだ形となる.このとき,地面
(y = 0)に衝突するシミュレーション時刻T はT =√py
5 となる.ここで,この求まっ た時刻とシミュレーション終了時刻MaxTimeとの大小比較をおこなうことを考えると,
9 ≤ py ≤ 11の条件のもとで,√py
5 < MaxTimeが成り立つかどうかを調べる必要があ る.パラメタ定数を含んだ離散変化時刻が求まった場合の処理が正しくおこなわれている かどうかを確認する.今回はシミュレーション終了時刻をmaxTime= 6として実行結果 の比較をおこなった.
まず,MCSを選択した場合の実行結果を図7.4 に示す.
続いて,RCSを選択した場合の実行結果を図7.5に示す.
MCSとRCSとの二者のシミュレーション結果を比較すると,最後のIPにおける各変 数の式は形式に多少の差異は認められるものの,一致していることが分かる.
7.2 bouncing particle interval 30
#---1--- ---PP---time : 0
y : 10
y’ : 0
y’’ : -10
---IP---time : 0 -> 2^(1/2) y : (-5)*(-2+t^2) y’ : (-10)*t
y’’ : -10
#---2--- ---PP---time : 2^(1/2)
y : 0
y’ : 8*2^(1/2) y’’ : UNDEF
---IP---time : 2^(1/2) -> 13/5*2^(1/2) y : -26+18*2^(1/2)*t+(-5)*t^2 y’ : 2*(9*2^(1/2)+(-5)*t) y’’ : -10
#---3--- ---PP---time : 13/5*2^(1/2)
y : 0
y’ : 32/5*2^(1/2) y’’ : UNDEF
---IP---time : 13/5*2^(1/2) -> 97/25*2^(1/2)
y : (-2522)/25+162/5*2^(1/2)*t+(-5)*t^2 y’ : 162/5*2^(1/2)+(-10)*t
y’’ : -10
#---4--- ---PP---time : 97/25*2^(1/2)
y : 0
y’ : 128/25*2^(1/2) y’’ : UNDEF
---IP---time : 97/25*2^(1/2) -> 6
y : (-118922)/625+1098/25*2^(1/2)*t+(-5)*t^2 y’ : 1098/25*2^(1/2)+(-10)*t
y’’ : -10
#time ended
図7.1 bouncing particleのMCSによる実行結果
7.2 bouncing particle interval 31
#---1--- ---PP---time : 0
y : 10
y’ : 0
y’’ : -10
---IP---time : 0 -> 2^(1/2) y : -5*t^2+10 y’ : -10*t y’’ : -10
#---2--- ---PP---time : 2^(1/2)
y : 0
y’ : 8*2^(1/2) y’’ : UNDEF
---IP---time : 2^(1/2) -> 13*2^(1/2)/5
y : 18*2^(1/2)*t+(-(5*t^2))+(-26) y’ : 18*2^(1/2)+(-(10*t))
y’’ : -10
#---3--- ---PP---time : 13*2^(1/2)/5
y : 0
y’ : 32*2^(1/2)/5 y’’ : UNDEF
---IP---time : 13*2^(1/2)/5 -> 97*2^(1/2)/25
y : (810*2^(1/2)*t+(-(125*t^2))+(-2522))/25 y’ : (162*2^(1/2)+(-(50*t)))/5
y’’ : -10
#---4--- ---PP---time : 97*2^(1/2)/25
y : 0
y’ : 128*2^(1/2)/25 y’’ : UNDEF
---IP---time : 97*2^(1/2)/25 -> 6
y : (27450*2^(1/2)*t+(-(3125*t^2))+(-118922))/625 y’ : (1098*2^(1/2)+(-(250*t)))/25
y’’ : -10
#time ended
図7.2 bouncing particleのRCSによる実行結果