力学に関するメモ: 仮想仕事の原理、ダランベールの原理

ひさしぶりに力学の本を読んでいる。その影響で、仮想仕事の原理とダランベールの原理周辺についてメモを書く気になった。
拘束条件(拘束力)のある系をうまく扱うにはどうすればいいだろう、というのがポイントのひとつ。

仮想仕事の原理

系が釣り合うというのは、

各点iで \mathbf{F}_i = 0となる。

ということである。ところで \mathbf{F} = 0であるというのは

任意の(=どのような)\delta \mathbf{x}に対しても \mathbf{F} \cdot \delta \mathbf{x} = 0となる。

というのと同値である(ここで\delta \mathbf{x}は数式変形のために導入した人工的な量と考え、具体的な意味は与えない)。したがって、釣り合い条件も次のように言い換えることができる。

(系の釣り合い条件の言い換え1)
どの点iについても、任意の\delta \mathbf{x}_iに対して \mathbf{F}_i \cdot \delta \mathbf{x}_i = 0になる。

これはさらに次のことと等しい。

(系の釣り合い条件の言い換え2)
任意の(\delta \mathbf{x}_1, \delta \mathbf{x}_2, \ldots)に対して
\sum_i \mathbf{F}_i \cdot \delta \mathbf{x}_i = 0

このように言い換えた釣り合い条件は「仮想仕事の原理」と呼ばれる(けれど「仮想仕事」という言葉を持ち出すと、よけいな説明が増えてかえって解りにくくなると思うので、そのあたりの説明は略)。
これは、系全体の釣り合い条件がただ一つの式で表されているという特徴があるという以外は、あまり意味のない書き換えに見える。でも拘束力を扱う場合に、この書き換えが有用になる。

拘束力

拘束力は外力に比べて扱うのが面倒になりやすい。簡単な拘束条件による拘束力なら「面から受ける抗力は面に垂直」「糸や棒の両端にかかる張力は大きさが等しく向きは逆」のようにどのように力が働くかは比較的簡単に判断できるし、計算上無視しても構わないかどうかの判断も付きやすい。でも拘束条件が複雑になってくると、拘束力がどう働くかを考えるのは大変になる。
しかし多くの場合、拘束力 \mathbf{f}_iは次のような性質を持っている。

(拘束力の性質)
拘束条件に反しない任意の変位(\delta \mathbf{x}_1, \delta \mathbf{x}_2, \ldots)に対して
\sum_i \mathbf{f}_i \cdot \delta \mathbf{x}_i = 0
となる。

理由は次のとおり。
拘束力は、あくまでも拘束条件から外れないように働く力なので、拘束条件を満たす変位に対しては能動的な影響を与えない→系全体のエネルギーの変化を起こすことはない。しかし、拘束条件に反しないようなある変位\delta \mathbf{x}_iについて
\sum_i \mathbf{f}_i \cdot \delta \mathbf{x}_i \not= 0
になったとすると、拘束条件を満たす変位\delta \mathbf{x}_iを生じたときに拘束力に由来するエネルギー変化が生じることになってしまう。

仮想仕事の原理と拘束力

この拘束力の性質を仮想仕事の原理と組み合わせる。まず仮想仕事の原理に出てくる力を外力\mathbf{F}^{(ex)}と拘束力\mathbf{f}に分ける。

(系の釣り合い条件の言い換え3)
任意の変位(\delta \mathbf{x}_1, \delta \mathbf{x}_2, \ldots)に対して
\sum_i \mathbf{F}^{(ex)}_i \cdot \delta \mathbf{x}_i + \sum_i \mathbf{f}_i \cdot \delta \mathbf{x}_i= 0

これと拘束条件の性質より次が出る。

系が釣り合っているならば、拘束条件を満たすような任意の変位(\delta \mathbf{x}_1, \delta \mathbf{x}_2, \ldots)に対して
\sum_i \mathbf{F}^{(ex)}_i \cdot \delta \mathbf{x}_i = 0
を満たす。

この条件は、元の条件より緩くなっている。そのため、この条件を満たすということだけからは拘束力を決定することができない。しかし逆に、拘束力を気にする必要はなくて外力の値についてだけ考えたいなら、この式だけを考えれば良い。よって拘束力\mathbf{f}のことは全く気にせずに式を立てて、釣り合いの問題を考えることができる。

使用例

例としてテコ(あるいはシーソー)の両側に力を加えた場合の釣り合い条件を考えてみる。

もちろん「力の大きさ×支点からの距離」が左右で等しくなるように力を加えれば釣り合うというのが答えになる。でもこのことを力の釣り合いからちゃんと導くのは面倒。
例えば、支点には回転以外の動きが起こらないように拘束力が働いているし、棒が曲がらず真っ直ぐを保つように棒の各点に拘束力が発生している。これらを全部考慮して釣り合いを考えなければならない。
でも、さっき導いた新しい条件を使えば、拘束力は考えなくて済む。
テコが動いた場合の回転角度を\delta \thetaとすれば、右側の点の可能な変位は\delta x_1 = l_1 \cdot \delta \thetaで、左側の点の可能な変位は\delta x_2 = -l_2 \cdot \delta \thetaとなる。よって釣り合い条件は、
 F_1 \cdot \delta x_1 + F_2 \cdot \delta x_2 = (F_1 \cdot l_1 - F_2 \cdot l_2) \delta \theta = 0
となり \delta \thetaは任意なので、結局
 F_1 \cdot l_1 =  F_2 \cdot l_2
が、釣り合う条件となる。よって、力の大きさ×支点からの距離が両側で等しいときに釣り合うという結果が得られた。

ラグランジュの未定乗数法

拘束条件が比較的単純な場合は、上のように簡単に問題を解くことができる。でも拘束条件が複雑になってくると「拘束条件を満たすような任意の変位(\delta \mathbf{x}_1, \delta \mathbf{x}_2, \ldots)」を考えるのが大変になってくる。
そのような場合への対応のひとつは、拘束条件をあらかじめ考慮した座標を使うことである。上の例で\delta \thetaを使ったのも、拘束条件を考慮した座標の導入の一種とも言える。
別の対応として、ラグランジュの未定乗数法を使うことができる。
例えば拘束条件としてg_1(x_1, \ldots, x_n) = 0g_2(x_1, \ldots, x_n)=0……が与えられているとする。このとき拘束条件を満たす変位(\delta \mathbf{x}_1, \delta \mathbf{x}_2, \ldots)は、

 \sum_i\frac{\partial g_1}{\partial x_i} \delta x_i = 0, \qquad \sum_i\frac{\partial g_2}{\partial x_i} \delta x_i = 0, \qquad \ldots

を満たさないといけない。よって釣り合い条件は次のようになる。

 \sum_i\frac{\partial g_1}{\partial x_i} \delta x_i = 0, \qquad \sum_i\frac{\partial g_2}{\partial x_i} \delta x_i = 0, \qquad \ldots
を満たす任意の変位(\delta \mathbf{x}_1, \delta \mathbf{x}_2, \ldots)に対して
 \sum_i F^{(ex)}_i \delta x_i = 0
となること。

ラグランジュの未定乗数法によれば、これは次と等しい。

ある定数 \lambda_1,\lambda_2, \ldotsがあって、任意の変位(\delta \mathbf{x}_1, \delta \mathbf{x}_2, \ldots)に対して
 \sum_i F^{(ex)}_i \delta x_i  - \lambda_1 \sum_i\frac{\partial g_1}{\partial x_i} \delta x_i - \lambda_2 \sum_i\frac{\partial g_2}{\partial x_i} \delta x_i - \cdots = 0
となること。

この式と仮想仕事の原理の初めの式を比べると、新しく付け加えた項が拘束力に対応していることがわかる。せっかく拘束力を消した式を導いたのに、こちらの式は再び拘束力を表す項が出てきて逆戻りのようにも見えるけど、そうではない。
元の式では、拘束力が具体的にどのような式で表されるかは幾何学的な考察などを使って決定する必要がある。でもラグランジュの未定乗数法を使う場合は、拘束条件が式で与えられていればそこから拘束力の項を計算で出すことができる。

ダランベールの原理

ここまでの話は、系が釣り合い状態にあるかどうかという静力学の問題だった。しかし同様のアプローチは動力学つまり力学一般にも適用することができる。
それには、点iでの釣り合い条件

 \mathbf{F}_i = 0

を、常に成立する

 \mathbf{F}_i - m_i \ddot{\mathbf{x}_i}= 0

に置き換えるだけでよい。後は同様の議論により上と類似した結論が得られる。

(力学で常に成り立たないといけない性質1)
任意の変位(\delta \mathbf{x}_1, \delta \mathbf{x}_2, \ldots)に対して
\sum_i \mathbf{F}_i \cdot \delta \mathbf{x}_i - \sum_i m_i \ddot{\mathbf{x}_i} \cdot \delta \mathbf{x}_i  = 0
が成立する。

(力学で常に成り立たないといけない性質2)
拘束条件を満たすような任意の変位(\delta \mathbf{x}_1, \delta \mathbf{x}_2, \ldots)に対して
\sum_i \mathbf{F}^{(ex)}_i \cdot \delta \mathbf{x}_i - \sum_i m_i \ddot{\mathbf{x}_i} \cdot \delta \mathbf{x}_i  = 0
が成立する。
(拘束力が出てこない形になっている)

ここでの議論のどこかのことを「ダランベールの原理」という。でも何を「ダランベールの原理」といっているのか良くわからない。山本義隆古典力学の形成』の17.1節「D'Alembertの原理をめぐって」にも

肝心のd'Alembertの原理それ自体の表現や意味が教科書毎にバラバラで、
(山本義隆古典力学の形成』日本評論社 p.308)

とある。ダランベール自身の論文と説明については13章「D'Aembertの原理」で扱っているけど、それを読んでもやっぱり良くわからない。

古典力学の形成―ニュートンからラグランジュへ

古典力学の形成―ニュートンからラグランジュへ



しかしそもそも読んでいるのはランダウ・リフシッツの本なので、ここに書いた話は別に必要なかったりする。