初心者歓迎 スレ立てる前に此処で質問を 903

■ このスレッドは過去ログ倉庫に格納されています
1名無し三等兵
垢版 |
2018/10/17(水) 15:49:10.86ID:+mJzfIaB
軍事に関する質問はこのスレッドで

前スレ

初心者歓迎 スレ立てる前に此処で質問を 902
https://mevius.5ch.net/test/read.cgi/army/1538207516/l50
838831
垢版 |
2018/11/10(土) 01:07:32.17ID:JZyldm1v
>>835
ちょっと長くなるけどこんな感じ

砲弾には地球の重力加速度ベクトルg(r)、空気抵抗による加速度ベクトルD(r, v)、
地球の自転で生じる遠心力による加速度ベクトルCe(r)とコリオリの力による
加速度ベクトルCo(r, v)がかかり、トータルの加速度ベクトルはこれらの足し合わせになる
(rは砲弾の3次元空間内の位置ベクトル、vは砲弾の速度ベクトル(速さと針路)で、
g(r)は重力加速度が砲弾の位置で、D(r, v)は空気抵抗が砲弾の位置と速さと針路で
決まるってことを意味している)

具体的には
g(r) = -(M/|r|^3)*r (1)
D(r, v) = -(0.5*ρ(r)*S*C*|v|/m)*v (2)
Ce(r) = -(w^2)*h (3)
Co(r, v) = (2*w)*(n×v) (4)

各記号は
M:地心重力定数(ある決まった値)
ρ(r):砲弾のある位置での大気密度
S:砲弾の断面積
C:砲弾の抗力係数
m:砲弾の質量
w:地球自転の角速度
h:砲弾の位置から地球の自転軸に垂直に向かうベクトル
n:地球の中心から北極点の方向に向いた長さ1のベクトル
n×v:ベクトルnとベクトルvの外積
839831
垢版 |
2018/11/10(土) 01:08:29.96ID:JZyldm1v
続き

空気抵抗は高度、つまり砲弾の位置が決まれば計算式があるので計算できるし、
それ以外のパラメータの大半は初期条件で与えられるので、まずやるべきことは
与えられた初期条件(初期位置r0、初速度v0)から(1)〜(4)の式を使って最初の
加速度ベクトルa0を求めることになる

そうやってa0がわかったら、次は速度と加速度は短い時間Δt(例えば0.1秒)の間には
変化しないとみなして、r0からΔtの間に進んだ後の位置r1を計算する
これはr1 = r0+v0Δtで計算でき、r1における速度はv1 = v0+a0Δtで計算できる
そしたら次はr1における重力、空気抵抗、遠心力とコリオリの力を(1)〜(4)式で計算して
r1における加速度a1を求める
そしたらまたv1とa1がΔtの間は変化しないと考えて、r1から更にΔt経過後の位置r2と速度v2を
r2 = r1+v1Δt、v2 = v1+a1Δtで計算する
後はこの計算をコンピュータで延々繰り返せば砲弾の位置と速度が求められるって寸法
840831
垢版 |
2018/11/10(土) 01:14:33.38ID:JZyldm1v
オイラー法ってのはこんな感じ
実際にはΔtの間は加速度も速度も変化しないなんてことはないわけだけど、
そこはΔtを十分小さくして小刻みに計算すれば誤差はある程度小さくできる
(あまり小さくしすぎるとコンピュータの計算精度の限界で逆に誤差が出るけど)

あと>>839の2行目の最初は空気抵抗じゃなくて大気密度の間違いなので訂正
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況