運動の法則が2階の微分方程式になることを,具体的な方程式で確かめます.初めの状態から少しずつ先へ進める計算は,コンピューターで運動を求めるときの基本でもあります.
定理 数学の道具:2階の微分方程式と初期条件
未知の関数 𝑞(𝑡) とその導関数の関係を表す式を微分方程式といい,含まれる最も高い導関数の階数をその方程式の階数という.2階の微分方程式 ¨𝑞 =𝑓(𝑞, ˙𝑞, 𝑡) の解は,ある時刻 𝑡0 の 𝑞(𝑡0) と ˙𝑞(𝑡0)(初期条件)を決めると,ただ1つに決まる.自由度 𝑠 の系では 𝑠 本の2階の方程式があり,解を決めるには 2𝑠 個の数が要る.
ここで「ただ1つに決まる」ことは,𝑓 がなめらかな関数なら成り立つことが知られています.証明は大学の数学に任せ,ここでは例で確かめます.
いちばん簡単な例は ¨𝑥 = −𝑔(𝑔 は定数)です.1回積分すると ˙𝑥 = −𝑔𝑡 +𝐶1,もう1回積分すると 𝑥 = −12𝑔𝑡2 +𝐶1𝑡 +𝐶2 です.積分定数が2つ出て,𝑡 =0 の位置 𝑥0 と速度 𝑣0 を与えると 𝐶2 =𝑥0,𝐶1 =𝑣0 と決まります.2階の方程式で,初期条件がちょうど2つ要るのは,積分を2回するからだと見ることもできます.
もう1つの例は ¨𝑥 = −𝜔2𝑥 です.第7章で見たように,解は 𝑥 =𝐴cos𝜔𝑡 +𝐵sin𝜔𝑡 で,ここにも定数が2つあります.𝑥(0) =𝑥0,˙𝑥(0) =𝑣0 とすると 𝐴 =𝑥0,𝐵 =𝑣0/𝜔 です.
ポイント 数学の道具:少しずつ進める(オイラー法)
¨𝑞 =𝑓(𝑞, ˙𝑞, 𝑡) の解を,時間の刻み Δ𝑡 ごとに
𝑞𝑛+1=𝑞𝑛+˙𝑞𝑛Δ𝑡,˙𝑞𝑛+1=˙𝑞𝑛+𝑓(𝑞𝑛,˙𝑞𝑛,𝑡𝑛)Δ𝑡
で求める方法をオイラー法という.Δ𝑡 を小さくするほど,本当の解に近づく.
オイラー法は,状態から次の状態を作る手続きそのものです.使うのは各時刻の 𝑞𝑛 と ˙𝑞𝑛 だけで,加速度は 𝑓 から計算されます.運動の法則が2階の方程式であることと,「状態から未来が決まる」ことが,ここで同じことになっています.
練習1 次の系の自由度を答えよ.(a) 平面の上を,向きを変えながら滑る細い棒.(b) 軽い棒の両端に小球をつけ,空間に投げたもの.(c) 空間を自由に動く剛体.
練習2 ¨𝑥 = −𝜔2𝑥 で,𝑥(0) =𝑥0,˙𝑥(0) =𝑣0,¨𝑥(0) =𝑎0 の3つを勝手に決めると,一般には解が無いことを示せ.
答え 練習1:(a) 棒の中点の位置 (𝑥, 𝑦) と向き 𝜑 で3.(b) 2つの小球の位置で6個の数だが,棒の長さが一定という条件が1つあるので5(重心の位置3つと棒の向きの角2つ).(c) 重心の位置3つと向き3つで6.練習2:方程式から ¨𝑥(0) = −𝜔2𝑥(0) なので,𝑎0 = −𝜔2𝑥0 のときしか解が無い.加速度は初めに自由に選べない.
例題
次の系の自由度を答え,一般化座標を1組選べ.
鉛直な平面内で振れる,長さ 𝑙1 と 𝑙2 の軽い糸でつないだ2つのおもり(二重振り子).
水平な床の上を滑らかに動ける斜面台と,その斜面の上を滑る小物体.ただし,どちらも紙面内だけで動くとする.
[図:一般化座標の選び方]左は糸の角θ₁,θ₂と長さl₁,l₂で表す二重振り子.右は床に沿う台の位置Xと,斜面の上端から下向きに測る位置s.力は描いていない.
解答を見る
考え方 平面内の小物体は2つの数で位置が決まり,長さが決まった糸や,面の上に乗っているという条件が1つあるごとに,必要な数が1つ減る.
おもりは2つで,平面内なので数は4つ.糸の長さが一定という条件が2つあるので,自由度は2.一般化座標には,2本の糸が鉛直となす角 𝜃1,𝜃2 を選べる.
台は床の上を水平に動くだけなので,位置 𝑋 の1つで決まる.小物体は斜面の上にあるので,斜面に沿った位置 𝑠 の1つで決まる.自由度は2で,一般化座標は (𝑋, 𝑠).
どちらも,一般化座標の選び方は1通りではない.(2) で小物体の水平位置を使ってもよい.ただし,条件を自動的に満たす座標を選ぶと,後の計算が楽になる.
¨𝑥 = −𝜔2𝑥 について答えよ.
𝑥(0) =𝑥0,˙𝑥(0) =𝑣0 を満たす解を求めよ.
𝑥(0) =𝑥0 だけを決めたとき,解はどれだけあるか.𝜔 =2.0 s−1,𝑥0 =0.10 m として,𝑡 =0.50 s の 𝑥 がとりうる値の範囲を答えよ.
[図:同じ位置と異なる初期速度]ω = 2.0 s⁻¹,x₀ = 0.10 mの例.初期速度だけを変えた5本の曲線は同じ点から出発する.点線はt = 0.50 sを示す.
解答を見る
考え方 一般の解 𝑥 =𝐴cos𝜔𝑡 +𝐵sin𝜔𝑡 の2つの定数を,条件で決める.条件が1つ足りなければ,定数が1つ自由に残る.
𝑥(0) =𝐴 =𝑥0,˙𝑥(0) =𝐵𝜔 =𝑣0 なので
𝑥=𝑥0cos𝜔𝑡+𝑣0𝜔sin𝜔𝑡
𝐴 =𝑥0 だけが決まり,𝐵 はどんな実数でもよい.解は無数にある.𝑡 =0.50 s では 𝜔𝑡 =1.0 rad で,sin1.0 ≈0.84 ≠0 なので
𝑥=0.10cos1.0+𝐵sin1.0≈0.054+0.84𝐵 [m]
は,𝐵 を変えるとどんな値にもなる.範囲は「すべての実数」で,位置だけでは0.5秒後の位置について何も言えない.
確かめ:sin𝜔𝑡 =0 となる時刻(𝑡 =𝜋/𝜔 など)だけは,𝐵 によらず 𝑥 = ±𝑥0 に決まる.振動の周期の半分ごとに,必ず同じ位置(または反対の位置)に戻るからである.
¨𝑥 = −𝑔(𝑔 =9.8 ms−2)を,𝑥(0) =0,˙𝑥(0) =2.0 ms−1 から,オイラー法で Δ𝑡 =0.10 s として3回進めよ.
𝑡 =0.30 s の 𝑥 と ˙𝑥 を求め,本当の解と比べよ.
𝑛 回進めたときの 𝑥𝑛 を式で表し,𝑡 =𝑛Δ𝑡 を一定に保って Δ𝑡 →0 とすると本当の解に近づくことを示せ.
解答を見る
考え方 表に 𝑥𝑛 と ˙𝑥𝑛 を並べ,「位置は今の速度で,速度は今の加速度で」進める.
𝑛 | 𝑡 [s] | 𝑥𝑛 [m] | ˙𝑥𝑛 [ms−1] |
|---|
0 | 0 | 0 | 2.00 |
1 | 0.10 | 0.200 | 1.02 |
2 | 0.20 | 0.302 | 0.04 |
3 | 0.30 | 0.306 | −0.94 |
本当の解は 𝑥 =2.0𝑡 −4.9𝑡2,˙𝑥 =2.0 −9.8𝑡 で,𝑡 =0.30 s では 𝑥 =0.159 m,˙𝑥 = −0.94 ms−1.速度は合うが,位置は 0.15 m ほど大きすぎる.各段で「段の初めの速度」で位置を進めるので,速度が減っていくこの運動では,位置を進めすぎるからである.
˙𝑥𝑘 =𝑣0 −𝑔𝑘Δ𝑡 なので
𝑥𝑛=𝑛−1∑𝑘=0˙𝑥𝑘Δ𝑡=𝑣0𝑛Δ𝑡−𝑔Δ𝑡2𝑛(𝑛−1)2=𝑣0𝑡−12𝑔𝑡(𝑡−Δ𝑡)
本当の解 𝑣0𝑡 −12𝑔𝑡2 との差は 12𝑔𝑡 Δ𝑡 で,Δ𝑡 →0 で0になる.確かめ:𝑡 =0.30 s,Δ𝑡 =0.10 s なら差は 0.147 m で,(1) の差と合う.
ポイント ここまでのまとめ
2階の微分方程式の解は,初めの位置と速度(初期条件)でただ1つに決まる.自由度 𝑠 なら 2𝑠 個の数が要る.
加速度は方程式から決まるので,初めに自由には選べない.
オイラー法は,状態から次の状態を作る手続きで,刻みを小さくするほど本当の解に近づく.
一般化座標は,系の条件を自動的に満たすように選ぶと後が楽になる.