第25回 力と運動

Cinderella.2の3つの機能のうち、CindyLabは物理実験室です。力学、電磁気学についてのシミューレーションを行なうことができます。Cinderella.2の作図の感覚でできる簡単なシミューレーションから、CindyScriptを用いた高度なシミューレーションまで、その可能性は非常に大きなものがあります。現在のところ 、CindyLabでどこまでできるのか不明ですが、マニュアル(ユーザーズガイド)を読むと、力の場の表示ができたり、霧箱のシミューレーションができたりと興味はつきません。また、MatheVitalには、ケプラーの第2法則をアニメーションで見せるものがあります。

ここでは、円運動を例に、粒子に力を働かせて運動させる方法を調べていきます。

(1) 円軌道を作成

半径つき円を加えるツールで適当な(少し大きめの)半径の円を描きます。

(2) 運動する点をとる

速度つき質点を加えるツールで、円周上に点をとりまが、このとき速度も設定するので、まず円周上の適当な点をクリックしたらそのままドラッグします。速度を表す矢印が出るので適当な長さでマウスボタンを離します。速度の向きは円の斜め外を向くようにしましょう。

画面左下にコントローラが出るので、プレイボタンを押してみましょう。点が円周上を回りますね。これが「等速円運動」です。

「等速度」ではありません。向きが変わるからです。実際、速度を表す矢印の向きが変わっていますね。

<観察すること>

ストップボタンを押し、要素を動かすモードにして、速度の矢印の向きや大きさを変えてみましょう。

このとき、プレイボタンを押したら、一時停止ボタンを押してみましょう。今設定した速度の矢印はどう変化していますか?

また、元の矢印の長さと、動いている途中の矢印の長さの関係はどうなっているでしょうか。

これらのことは、等速円運動をする点の速度についての理論と一致します。

(3) 重力を追加する

重力を加えるツールで重力を加えてみましょう。少し大きめがよいです。プレイボタンを押して動きを観察しましょう。

コントローラの上のバーを動かして、動きをおそくすると見やすいでしょう。こんどは、矢印の大きさも変化しているのがわかりますか。重力を加えたからです。

初めの速度の大きさを小さくすると、円を回れなくなります。上にあがろうとするとき、重力に打ち勝つだけの速度が得られないからです。

さて、重力を加えると速度の大きさ(速さ)も変化することはわかったと思いますが、何となく日常のものの動きとは違う感じがするでしょう。それは、「摩擦力」がないからです。日常の物体であれば、レールとの間に摩擦があったり、空気との摩擦があったりします。では、「摩擦力」を設定してみましょう。

 (4) 摩擦力を加える

編集メニューからインスペクタを開き、質点 (上の図のB)を選択して、インスペクタの「物理シミュレーション全体の属性」(地球アイコン)を選びます。「摩擦力」のスライダを少しだけ動かして、プレイボタンを押してみましょう。

どうですか? 驚くほどリアルな動きになるでしょう。

このように、速度矢印で質点に力を加え、全体に働く力として重力や摩擦力を設定することにより、物体の動きをシミュレートすることができます。

では、重力や摩擦力を加えたときの速度の変化を数値として観察しましょう。

スクリプトメニューからCindyScriptをひらき、Drawスロットをクリックして、次の1行を入力します。(ここからカットアンドペーストすることもできます)

println(B.v+","+|B.v|+",  "+B.f+","+|B.f|);

println() はメインウィンドウの下のコンソールに表示して改行 (ln)する関数です。

B.v は質点Bの速度をベクトルで表したもの(速度ベクトル)

B.f は質点Bにかかっている力をベクトルで表したもの

|B.v| は速度ベクトルの大きさ、|B.f| は力の大きさです。

入力したら、スクリプトエディタの実行アイコン(歯車アイコン)をクリックします。

下のコンソールに、何か表示されましたね。

これが、実行前の速度と力に関する情報です。

では、プレイボタンを押し、すぐにストップしましょう。スクリプトエディタのコンソールに、数字がずらずらと並びます。

点Bが運動したとき、速度と力がどう変化しているかをあらわしています。見にくかったら、ウィンドウを横長にしましょう。

つぎに、重力を消して(選択して消去ツールをクリック)、インスペクタで摩擦力も0にします。つまり、点Bには最初に与えた速度だけで、力はかかっていない状態にします。

これで、実行してみましょう。力は0,速度ベクトルは変化するけれど、速度の大きさが一定 になりましたか?