エクセルで作った軌道シミュレータver.2に、空気力を追加しver.3にアップデートします。
空気力にはブレーキとして作用する「抗力」と、曲げる力として作用する「揚力」の二種類があります。
まずは抗力を追加します。
また今回は速度成分の大きいx方向(ホーム方向)のみ抗力を考えます。
抗力Dはボールの進行方向、つまり速度vと逆方向に働きブレーキをかける力です。
抗力Dは以下のような式で表されます。
(CD:抗力係数、ρ:空気の密度、v:ボールの速度、A:ボールの断面積)
抗力Dは速度vに依存しますが、その速度vは抗力Dを受け減速します。
抗力Dをボール重量で割ったものが加速度で、これを時間積分したものが速度の変化量となります。
そのため投げた瞬間から、Dとvはお互いに影響しあって時間変化していきます。
そのせいで、重力のように時間によらず一定の力が働く場合と比べて
少し複雑な計算になります。
では、式を立てます。
[計算式]
x軸をホーム方向、y軸を一塁方向、z軸を上空方向と定義
x方向
(vx : ボール速度のx方向成分)
上記3式から、
加速度と速度の関係
t=0秒の時
y,z方向
ver.2と同じ
ここで、
v0:リリース時の球速、x0,y0,z0:リリース位置、
θ:上向きリリース角度、φ:横向きリリース角度、t:リリース後経過時間
[計算式おわり]
ボール位置x,y,zのうち、xについてはtを代入すれば求まる形の式にできないため
エクセルで数値積分の方法により求めます。
では、エクセルへ入力していきます。
単位系はSI単位系です。
[エクセル入力]
まず初期条件を入力。
ver.2の時と同じにしました。
次に空気密度とボール特性を追加します。
抗力係数CDは個人で計算や実測をするのが難しいので
ネットで拾った値を使います。
次に時間tを少しずつ増加させて複数入力します。
ver.2と同じく、0.02秒おきにしました。
数値積分をするので時間間隔が小さいほど計算結果は正確になります。
時間t列のとなりに、d2x/dt2とdx/dtの列を挿入します。
そしてdx/dt列の一番上のセルに、時間t=0における速度を入力します。(④式)
d2x/dt2列に、dx/dtからd2x/dt2を計算する式を入力します。(①式)
再びdx/dt列に戻り、t>0のセルに数式を入力します。
②式の計算を数値積分で行うために下図のように数式を入力します。
x列の一番上のセルに、時間t=0におけるx位置を入力します。(⑤式)
xのt>0について③式の計算を数値積分で行うために下図のように数式を入力します。
x位置の計算はこれで完成です。
あとはy,zをver.2と同様に入力します。
yの数式を入力します。(⑥式)
zの数式を入力します。(⑦式)
これで各時刻におけるボール位置x,y,zの値が計算できました。
[エクセル入力おわり]
計算した値を、散布図でグラフ表示します。
[エクセルグラフ化]
このようになりました。
抗力なしのver.2と重ねてみました。見やすいように0.3m上にずらしてあります。
結構ブレーキがかかっています。
リリース時に140[km/h]だった球速は、18.44m位置では127[km/h]まで減速して
います。
抗力なしと比べ0.77mの差を付けられ、0.022秒遅れて18.44mに到達します。
[エクセルグラフ化おわり]
では、また。
(よかったら押してください。)
にほんブログ村
0 件のコメント:
コメントを投稿