HOME > natural science Laboratory > コンピュータ・シミュレーション講座 > 仮想物理実験室

VisualC++ と OpenGL を利用した仮想物理実験室
【2-6-1】重力+空気抵抗力による運動の運動方程式とアルゴリズム

文責:遠藤 理平 (2010年8月29日) カテゴリ:仮想物理実験室(325)

【2-1-1】加速度・力・質量の関係:ニュートンの運動方程式で導出したニュートンの運動方程式から、【2-1-2】重力による運動のアルゴリズムの導出では、重力による運動のアルゴリズムを導出しました。

(2.6.1)
時刻 t=tn[s] におけるニュートンの運動方程式

初速度の設定によって、様々な運動をすることをシミュレーションしました。 簡単にまとめると以下のとおりです。

■初速度なし:自由落下運動
■初速度 v_{z0}:鉛直投射運動
■初速度 v_{x0}:水平投射運動
■初速度 v_{z0}と v_{x0}:斜方投射運動
■初速度 v_{0}と投射角度θ:斜方投射運動2

これまでの運動はすべて、物体に作用している力が重力のみの場合でした。しかしながら、日常の体験では、投げられたボールは空気抵抗によって飛距離が伸びないことを知っています。 本節では、空気抵抗を加味した運動方程式を導出し、シミュレーションのためのアルゴリズムを構築します。

空気抵抗とは

本節では、無風の状態を考えます。 無風の中でじっとしている場合、我々は重力を除いて他に力を受けていません。 また、車から手を少し出した場合、手は車の進行方向とは逆に力を受けます。 さらに車の速度が上がるほど、手が受ける力は大きくなります。 運動しているボールの場合を考えた場合、、ボールにかかる空気抵抗力に次の関係があると仮定します。

(2.6.2)
空気抵抗力と速度の関係

上記の関係は空気抵抗力と速度とが比例関係にあることを表現しています。 マイナスをつけたのは、ボールが感じる空気抵抗力が、進んでいる方向とは逆の方向にかかっていることを表すためです。 「空気抵抗力」とは、ボールの形状や変形、回転、ボール周辺の空気の流れなどを全部加味した、非常に複雑な振る舞いによる力です。本節ではそのような複雑な議論には入らずに、ボールは速いほど空気抵抗力は大きくなるという日常の経験的な因果関係から、速度と空気抵抗力は比例関係であると「仮定」します。

また、力の単位である[N]は、【2-1-1】加速度・力・質量の関係:ニュートンの運動方程式で定義したとおり、

(2.6.3)
Nの定義

なので、比例定数の単位は[kg/s]と決まります。

物理量:空気抵抗力

(2.6.4)
空気抵抗力と速度の関係

この関係がx軸, y軸, z軸それぞれに対して成り立つとすると、 空気抵抗力 f[N] は次のようになります。

(2.6.5)
空気抵抗力と速度の関係式

重力+空気抵抗力がある場合の運動方程式

ボールに作用する力 F[N] は、-z 軸方向の重力と速度に比例する空気抵抗力の合力となります。 x,y,z 成分それぞれに作用する力は、

(2.6.6)
力

となります。式(2.6.6)を【2-1-1】加速度・力・質量の関係:ニュートンの運動方程式で導出したニュートンの運動方程式

(2.6.7)
ニュートンの運動方程式

に代入することで、空気抵抗がある場合のボールの運動方程式が得られます。

(2.6.8)
ニュートンの運動方程式

空気抵抗を考慮すると、これまでボールの運動に関与しなかった質量がでてきます。 上式の x 成分を見ると、ボールの加速度 a_x[m/s^2]は、質量 m[kg]に反比例することがわかります。つまり上式は、「空気抵抗力による加速度は重いほど小さく、軽いほど大きくなる」ことを意味しています。 これは、直感的に成り立っていることがわかります。

重力+気抵抗力による運動のアルゴリズムの導出

式(2.6.8)として得られたニュートンの運動方程式を【2-1】重力による運動:自由落下運動と同様に、コンピュータでシミュレーションするためのアルゴリズム導出します。 式(2.6.8)を差分で表すと、

(2.6.9)
差分方程式

となります。上式は、t = t_n[s] のときの加速度 a_n[m/s^2] は、そのときの速度 v_n[m/s]で得られることを表しています。得られた加速度と等加速度直線運動のアルゴリズムを用いることで、速度 v[m/s] と位置 x[m]とを決定することができます。

(2.6.10)
速度

(2.6.11)
位置

初期位置(x_0, y_0, z_0), 初速度(v_{x0}, v_{y0}, v_{z0}) を指定することで、様々な運動のシミュレーションを行うことができます。 次節は、重力+空気抵抗力+自由落下運動のシミュレーションを行います。

VisualC++ と OpenGL を利用した仮想物理実験室

第0章 仮想物理実験室の構築

第1章 様々な運動

第2章 ニュートンの運動方程式

第3章 剛体の運動(エネルギー保存則と運動量保存則)

付録

  • 【A-1】参考文献
    ・(A-1-1)OpenGL について
    ・(A-1-2)VisualC++ について
    ・(A-1-3)物理シミュレーション
    ・(A-1-4)数値計算

未分類

力学

量子力学

波動論



▲このページのトップNPO法人 natural science トップ

関連記事

仮想物理実験室







▲このページのトップNPO法人 natural science トップ




Warning: mysqli_connect(): (28000/1045): Access denied for user 'xsvx1015071_ri'@'sv102.xserver.jp' (using password: YES) in /home/xsvx1015071/include/natural-science/include_counter-d.php on line 8
MySQL DBとの接続に失敗しました