はじめに

この記事は、物理シミュレーション作成ソフト「Modellus」で物理現象を視覚化する① ~導入と使い方~の続きです。

前回は、Modellusの入手とインストール、そして簡単な等速直線運動のシミュレーションを作成し、Modellusの基本的な使い方をお伝えしました。
今回はもう少し発展させ、落下運動の物理シミュレーションを行います。さらに、物体の状態によって挙動を変化させる、条件分けの記述をご紹介します。これをマスターすると、シミュレーションの幅がグッと広がるでしょう。

自由落下をシミュレーションする

さっそく、自由落下の数学的モデルを作成してみましょう。

高さyを定義する式を書く

今回もまずは、「Mathematical Model(数学的モデル)」ウインドウに式を記述していきます。
今回も、他のウインドウは最小化しておきましょう。

「Mathematical Model(数学的モデル)に、自由落下における高さyと時間tの式を入力します。以下のように入力してみてください。

y=-1/2*g*t^2

すると、以下のように表示されるはずです。

「tの2乗」は、「t^2」と入力することで表せます。
乗算記号「×(入力は「*」)」は省略できないことに注意してください。「gt」と続けて書いてしまうと、gtという名前の変数である(gとtではない)と認識されてしまいます。
また、マイナス「-」をつけていますが、Modellusでは上方向および右方向が正になっています
今回は落下運動、すなわち下方向への運動ですので、マイナスがついています。

これで、-(1/2)gを比例定数として、yがtの2乗に比例することが定義されました。
これは、自由落下の位置を表す式ですね。

自由落下させるオブジェクトを置く

では、これをアニメーションにしてみましょう。
前回と同じく、「Animation」タブより「Particle(粒子)」を選択して、背景をクリックしてください。ボールが出現します。

※前回の使い回しです。式が違いますがお気になさらず…

オブジェクトの見た目を変更する

さて、ボールを動かしてもいいのですが、少し味気ないですね。見た目を変更してみましょう。
ボールをクリックすると、「Object-Propeties」タブが現れます。そこの「Appearance(見た目)」の「≫(下二重矢印の先)」より、物体の見た目を自由に変更できます。今回は落下運動ということで、リンゴに変更してみましょう。

オブジェクトの初期表示位置(原点)を調整する

また落下運動ですので、オブジェクトのリンゴは画面の高い位置に置いておきましょう。リンゴの左下にある「┗」マークは、リンゴの原点(座標がx:0,y:0の点)を表しています。これをクリック&ドラッグすることで、リンゴの位置を動かすことができます。背景上方に移動させましょう。

物体のy座標を設定する

そして、リンゴの位置を、定義したyに設定します。リンゴをクリックした状態で「Coordinates(座標)」にて、x:「0」、y:「y」を選びます。

従属変数の値を設定する

yは、tgによって定義されています。tはModellusで元々定義されていますが、gは独自に設定した従属変数です。値を設定する必要があります。
「Mathematical Model(数学的モデル)」の「Parameters(パラメータ)」をクリックし、gのcase1(今回もcase2以後は使いません)に「9.8」―――重力加速度の値を入力します。

シミュレーションを行う

これで、自由落下のシミュレーションが完成しました。左下、再生ボタン「▶」をクリックします。
すると、リンゴが自由落下を行います。

放置しておくと、ぐんぐんと速度が増して、すぐに画面下の外へフレームアウトしてしまいます。
シミュレーションをストップさせるには、動作中に左下のボタンが一時停止ボタン「❙❙」になっていますので、それをクリックします。アニメーションがその時の状態でストップします。初期状態に戻したいときは、今度はウインドウ右下のリセットボタン「❘◀」をクリックします。

落下限度を設定する(条件分けの設定)

しかし、すぐにフレームアウトしてしまう今の状態ですと、少々不便ですね。ですので地面、すなわち落下限度を数学的モデルに組み込んでみましょう

「条件」を組み込む

追加で組み込むのは、「yがある量まで到達したら、その量でyを固定する」という、条件分けの式です。
「Mathematical Model(数学的モデル)」ウインドウの、y=(-1/2)*g*t^2の式の「=」の後に入力カーソルを合わせます(マウスクリックでは合いにくいので、キーボードの左右キーで合わせてください)。その状態で「Model」タブの「Condition(条件)」をクリックします。
すると、「=」の後に大カッコ([)が挿入され、「=」以後が上下2つに分かれます。

場合分けを記述する

上の行に、以下のように入力してみましょう。

-300,y<=-300 (すでに入力されている<の後に、=を入れる)

そして下の行、自由落下の式の後に、以下のように入力します。

,y>-300

すると、以下のようになるはずです。

各行のカンマ(,)後は、カンマ前の式が適応されるときの条件が記述されます
今回の場合、「yが-300より大きいときは自由落下させ、yが-300以下になったらy=-300で固定する」という意味合いになります。

この状態で「Model」タブの「Interpret(解釈)」をクリックして、「Model:OK」が表示されることを確認しておきましょう。

この状態で再生ボタン▶を押すと、落下が途中で止まることが確認できます。

終わりに

今回は、自由落下のシミュレーションを作成しながら、累乗や分数の数学的モデル上での記法や、条件に寄る場合分けの方法、オブジェクトの見た目の変更の仕方を紹介いたしました。これを応用することで、様々な運動を記述・シミュレーションできるようになることと思います。

次回は、様々な物理量の可視化について紹介します。物理シュミレーションの利点の1つとして、位置、速度、加速度、力、エネルギー、運動量等々の物理量を、視覚的にわかりやすく表示する様々な機能が存在します。これを使いこなすことで、Modellusの視覚性が極めて大きく向上します。

次回も引き続きご覧いただけますと幸いです。

No responses yet

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です