微分積分を使って高校物理の力学をざっくりやり直す - 等加速度直線運動編

## 対象とする読者
- 初等関数の微分積分ができる
    - 例えば$\frac{d}{dx}(ax^n)$や$\int_1^t\frac{1}{x}dx$ぐらい
- 高校の力学を大雑把に復習したい
- 暇だから何か読みたい

　筆者は数学屋でも物理屋でもないただのちょっとしたシミュレーションをするために高校物理が必要になっただけの情報系の学生なので、数学的・物理的な厳密さは目をつぶっていただけると幸いです……。

## 最終目標
　水平投射や斜方投射と呼ばれる問題を、運動方程式$\vec{F}=m\vec{a}$だけで解きます。まず一度水平投射の問題を高校レベルの力学でそのまま解いてみましょう。映画『名探偵コナン 天国へのカウントダウン』から有名なワンシーンをお借りします。切羽詰まった状況で60m先、20m下の別のビルの屋上に飛び移るというシーンで、そのために必要な速さを計算するシーンです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2883306/6e1b5540-cc7d-fe1c-2cee-a7350fbb44f2.png)
灰原哀さんのセリフがこちらです。
> 　ビルの間は50メートル。飛び移るという事になれば、60メートルって所ね。隣のビルとの高低差は20メートル。地球上の物体は、空間では水平方向に同じ速度で進むけど、下向きには重力により、決まった割合で速度を上げながら落下して行くの。20メートル落下する時間を求める式は
$t=\sqrt{\frac{2s}{g}}$
$t=$求める時間(秒)
$g=$重力加速度 $9.80665m/sec.^2$
$s=$落下距離 $20m$
　これを式に当てはめると2.02秒。つまり、20メートル落下するのに約2秒。2秒で60メートル進まなくてはいけない。という事は、1秒で30メートル。時速に置きかえると、108km/h。

　この問題を学校の問題らしく書き直すとこのようになります。

> 　ある高さのビルの屋上から$20.0[\text{m}]$低い別のビルの屋上へ物体を速さ$v_0$で水平方向に投げ出す。2つのビルの間隔を$60.0[\text{m}]$とすると、物体が別のビルの屋上へ届くためには速さ$v_0$はいくらよりも大きくなければならないか。ただし重力加速度を$g=9.807[\text{m/s}^2]$とする。

　水平方向については等速直線運動と考えられるので、物体は速さ$v_0$で$60.0[\text{m}]$だけ移動します。よってかかる時間を$t$とおくと、速さ=道のり$\div$時間なので、
$$
v_0=60.0[\text{m}]\div t=\frac{60.0[\text{m}]}{t}
$$
　鉛直方向については自由落下のため、物体が$s=20.0[\text{m}]$を落下するのにかかる時間は、等加速度直線運動の式$x=v_0t+\frac{1}{2}t^2$を用いて、
$$
\begin{align}
s&=0\cdot t+\frac{1}{2}gt^2=\frac{1}{2}gt^2\newline
\frac{2}{g}s&=t^2\newline
t&=\sqrt{\frac{2s}{g}}=\sqrt{\frac{2\cdot 20.0[\text{m}]}{9.807[\\text{m/s}^2]}}=2.01958\ldots[\text{s}]\simeq2.02[\text{s}]
\end{align}
$$
　従って、必要な速さ$v_0$は、
$$
v_0=\frac{60.0[\text{m}]}{t}
=\frac{60.0[\text{m}]}{\sqrt{\frac{2\cdot 20.0[\text{m}]}{9.807[\\text{m/s}^2]}}}
=29.7090\ldots[\text{m/s}]\simeq29.7[\text{m/s}]
$$
　時速に直すと
$$
\frac{60.0[\text{m}]}{\sqrt{\frac{2\cdot 20.0[\text{m}]}{9.807[\\text{m/s}^2]}}}
\times60(\text{min})\times60(\text{hour})=106952[\text{m/h}]\simeq107[\text{km/h}]
$$

　と、このようになります。灰原さんの数字と多少異なるのは[有効数字](https://ja.wikipedia.org/wiki/%E6%9C%89%E5%8A%B9%E6%95%B0%E5%AD%97 )の取り扱いの都合ですが、緊迫した場面でここまでの計算を一瞬でやってのけるのは流石としか言いようがありませんね。

## 運動方程式と変数の定義
　それでは本題に入っていきます。ここまでは等速直線運動だから○○、等加速度直線運動だから○○と場合に応じて公式を使い分けてきましたが、そもそもこれらの公式とされているものはどれもたった一つの式から導かれるものなのです。それだけでなく、その式から慣性の法則や作用反作用の法則などの基本的な法則も示すことができます。その式こそが運動方程式$m\vec{a}=\vec{F}$なのです。
　まず、基本的な事柄を整理していきましょう。ここまで運動を考えてきた物体というのは、より正確には「質点」と呼ばれるもので、質量を持ち大きさを考えない点のことです。この質点について、以下のようにパラメータを設定します。
- 質量: $m$
- 時刻$t$における位置: $\vec{r(t)}=\big( x(t), y(t), z(t)\big)$

　では、ここから微積分を使って位置・速度・加速度の関係を考えていきます。簡単のため$x$成分だけを考えますが、$y\cdot z$成分についても同様に考えることができます。
　時刻$t_0$において$x(t_0)$に質点が存在し、$\Delta t$秒後に$x(t_0+\Delta t)$へ移動しました。このとき、平均の速さ$\bar{v_x}$は
 $$
\bar{v_x}=\frac{x(t_0+\Delta t)-x(t_0)}{\Delta t}
 $$
　となります。ここで、$\Delta t$が限りなく小さくなった、時刻$t_0$における瞬間の速さ$v_x(t_0)$を考えてみましょう。
$$
v_x(t_0)=\lim_{\Delta t \to 0}\frac{x(t_0+\Delta t)-x(t_0)}{\Delta t}
$$
　これは[導関数の定義](https://ja.wikipedia.org/wiki/%E5%BE%AE%E5%88%86#1%E5%A4%89%E6%95%B0%E9%96%A2%E6%95%B0%E3%81%AE%E5%BE%AE%E5%88%86%E6%B3%95)
$$
 f'(x)=\lim _{h\to 0}\frac {f(x+h)-f(a)}{h}
$$
そのものですね。つまり、位置の微分が定義的に速度であることが示されたと思います。式にすると以下の通りです。

$$
\begin{align}
\vec{v}(t)&=\big(v_x(t),v_y(t),v_z(t)\big)\newline
&=\Big(\frac{dx}{dt},\frac{dy}{dt}\frac{dz}{dt}\Big)\newline
&=\frac{d\vec{r}}{dt}
\end{align}
$$
　加速度についても同様に考えていきましょう。時刻$t_0$における質点の速さが$v_x(t_0)$で、$\Delta t$秒後に$v_x(t_0+\Delta t)$へ加速しました。この時の平均の加速度$\bar{a_x}$は
$$
\bar{a_x}=\frac{v_x(t_0+\Delta t)-v_x(t_0)}{\Delta t}
$$
であり、$\Delta t$が限りなく小さくなった、時刻$t_0$における瞬間の加速度$a_x(t_0)$は、
$$
a_x(t_0)=\lim_{\Delta t \to 0}\frac{v_x(t_0+\Delta t)-v_x(t_0)}{\Delta t}
$$
となります。そのため加速度についても、定義的に速度の微分であり位置の二回微分であることが示されました。ここまでを式でまとめましょう。
$$
\begin{align}
位置\quad\vec{r(t)}&=\big( x(t), y(t), z(t)\big)\newline
\newline
速度\quad\vec{v}(t)&=\big(v_x(t),v_y(t),v_z(t)\big)\newline
&=\Big(\frac{dx}{dt},\frac{dy}{dt}\frac{dz}{dt}\Big)\newline
&=\frac{d\vec{r}}{dt}\newline
\newline
加速度\quad\vec{a}(t)&=\big(a_x(t),a_y(t),a_z(t)\big)\newline
&=\Big(\frac{dv_x}{dt},\frac{dv_y}{dt}\frac{dv_z}{dt}\Big)\newline
&=\frac{d\vec{v}}{dt}\newline
&=\Big(\frac{d^2x}{dt^2},\frac{d^2y}{dt^2}\frac{d^2z}{dt^2}\Big)\newline
&=\frac{d^r\vec{r}}{dt^r}\newline
\end{align}
$$

　さて、これで役者が出揃いました。では運動方程式へと行きましょう。
　質量$m$の質点の時刻$t$における位置が$\vec{r}$であり、加わる力の合力が$\vec{F}$であるとき、これらの関係は次のように表されます。
 $$
m\frac{d^2\vec{r}}{dt^2}=\vec{F}
 $$
　これを運動方程式、または[ニュートンの運動方程式](https://ja.wikipedia.org/wiki/%E3%83%8B%E3%83%A5%E3%83%BC%E3%83%88%E3%83%B3%E3%81%AE%E9%81%8B%E5%8B%95%E6%96%B9%E7%A8%8B%E5%BC%8F)と呼びます。この運動方程式は実験から導かれたもので、数学的な証明はできないらしいです。何かそういうものらしいです。

 ## 運動方程式を用いて水平投射を考える
 　では、早速やってみましょう。問題は先ほどのものを使いまわします。
  > 　ある高さのビルの屋上から$20.0[\text{m}]$低い別のビルの屋上へ物体を速さ$v_0$で水平方向に投げ出す。2つのビルの間隔を$60.0[\text{m}]$とすると、物体が別のビルの屋上へ届くためには速さ$v_0$はいくらよりも大きくなければならないか。ただし重力加速度を$g=9.807[\text{m/s}^2]$とする。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2883306/6e1b5540-cc7d-fe1c-2cee-a7350fbb44f2.png)

　まずは変数の定義及び確認です。ただし水平右向きを$x$軸正方向、鉛直下向きを$y$軸正方向とします。
$$
\begin{align}
\vec{r_0}&=\big(x(0),y(0)\big)=(0,0)\newline
\vec{r_t}&=\big(x(t),y(t)\big)=(60.0[\text{m}], 20.0[\text{m}])\newline
\newline
\vec{v}(0)&=\vec{v_0}=(v_{0x}, 0)
\end{align}
$$
 
　ある時刻$t$において物体は空中を落下しているため、物体に働く力は重力のみです。式で表すと以下の通りです。
$$
\begin{align}
F_x&=0\newline
F_y&=mg
\end{align}
$$
　水平方向の運動方程式を立ててみましょう。
$$
\begin{align}
m\frac{dv_x}{dt}&=F_x=0\newline
\frac{dv_x}{dt}&=0\newline
\end{align}
$$
　両辺を$t$で積分します。積分変数の$t$と積分区間の$[0, t]$がややこしいですが、これって混同しちゃっていいやつでしたっけ？なんかダメな気がします。ちゃんと変数置いた方がいい気がします。詳しい人助けてください。
$$
\begin{align}
\int_0^t\frac{dv_x}{dt}dt&=0\newline
\big[v_x\big]^t_0&=0\newline
v_x(t)-v_x(0)&=0\newline
v_x(t)&=v_x(0)=v_{0x}
\end{align}
$$

 水平方向については等速であることが分かりました。1行目の積分については置換積分を用いて以下のように計算することもできます。今回は被積分関数が$\frac{dv_x}{dt}$だけなのでこれで問題ないですが、被積分関数が$v_x$を含む複雑なものだと変数変換したほうが楽かもしれません。

$$
\begin{align}
x=g(t)とおくと、a=g(\alpha),b=g(\beta)のとき\newline
\int_a^bf(x)dx=\int_\alpha^\beta f\big(g(t)\big)\frac{d}{dt}g(t)\ dt
\end{align}
$$
$$
\begin{align}
v_xはtの関数であるから、g(t)=v_x,f\big(g(t)\big)=f(x)=1とみて\newline
\int_0^t\frac{dv_x}{dt}dt
=\int_{v_x(0)}^{v_x(t)}1\cdot dv_x
=\big[v_x\big]^{v_x(t)}\_{v_x(0)}
=v_x(t)-v_x(0)
\end{align}
$$
　話がそれましたが、$v_x(t)=\frac{dx}{dt}$だったので両辺をもう一度$t$で積分して変位$x(t)$の式を出しましょう。

$$
\begin{align}
\int_0^tv_x(t)dt&=\int_0^tv_{0x}dt\newline
\int_0^t\frac{dx}{dt}dt&=\big[v_{0x}\cdot t\big]_0^t\newline
\big[x(t)\big]\_{0}^{t}&=v\_{0x}t-v\_{0x}\cdot0\newline
x(t)-x(0)&=v\_{0x}t\newline
x(t)&=v\_{0x}t
\end{align}
$$

　ということで、複雑な計算の果てに道のり$=$速さ$\times$時間という式が求められました。当たり前の結論ですが、変数の定義と運動方程式$m\frac{d^2\vec{r}}{dt^2}=\vec{F}$からこれが求められたということは計算ミスをしていない証拠だと思います。後のために$v_{0x}$について解いておきましょう。
$$
v_{0x}=\frac{x(t)}{t}
$$

　それでは、次は鉛直方向について考えていきましょう。運動方程式は以下の通りです。
$$
\begin{align}
m\frac{dv_y}{dt}&=F_y=mg\newline
\frac{dv_y}{dt}&=g\newline
\int_0^t\frac{dv_y}{dt}dt&=\int_0^tg\ dt\newline 
\big[v_y(t)\big]\_{0}^{t}&=\big[gt\big]_0^t\newline
v_y(t)-v_y(0)&=gt-0\newline
v_y(t)&=gt
\end{align}
$$
　鉛直方向の初速度は0なので、時刻$t$における速さはそのまま重力加速度$g$を用いて$gt$となります。ではこちらも水平方向同様両辺を$t$で積分し、変位$y(t)$の式を出しましょう。

 $$
\begin{align}
v_y(t)&=gt\newline
\int_0^tv_y(t)dt&=\int_0^tgt\ dt\newline
\int_0^t\frac{dy}{dt}dt&=\bigg[\frac{1}{2}gt^2\bigg]_0^t\newline
\big[y(t)\big]\_{0}^{t}&=\frac{1}{2}gt^2-\frac{1}{2}g\cdot0^2\newline
y(t)-y(0)&=\frac{1}{2}gt^2-0\newline
y(t)&=\frac{1}{2}gt^2
\end{align}
 $$
　
　ではこちらを$t$について解きます。
$$
\begin{align}
y(t)&=\frac{1}{2}gt^2\newline
\frac{2y(t)}{g}&=t^2\newline
t&=\sqrt{\frac{2y(t)}{g}}
\end{align}
$$

　これを先程求めた$v_{0x}=\frac{x(t)}{t}$に代入し、それぞれの数字を代入します。
$$
\begin{align}
v_{0x}&=\frac{x(t)}{\sqrt{\frac{2y(t)}{g}}}\newline
&=\frac{60.0[\text{m}]}{\sqrt{\frac{2\cdot 20.0[\text{m}]}{9.807[\text{m/s}^2]}}}\newline
&=29.70908952\ldots[\text{m/s}]\newline
&\simeq29.7[\text{m/s}]
\end{align}
$$
　時速に直します。

$$
\begin{align}
\frac{60.0[\text{m}]}{\sqrt{\frac{2\cdot 20.0[\text{m}]}{9.807[\text{m/s}^2]}}}\times 60(\text{min})\times60(\text{hour})\div10^3&=106.9527223\ldots[\text{km/h}]\newline
&\simeq107[\text{km/h}]
\end{align}
$$

　以上になります。このように、運動方程式だけから水平投射の問題を解くことができました。

 ## まとめ

 　質量$m$の質点の時刻$t$における位置が$\vec{r}$であり、加わる力の合力が$\vec{F}$であるとき、これらの関係は次のように表されます。
$$
\begin{align}
\vec{F}&=m\frac{d^2\vec{r}}{dt^2}\newline
&=m\frac{d\vec{v}}{dt}\newline
&=m\vec{a}\newline
\end{align}
$$

 これを用いて適当に立式・変形することで、あらゆる力学の問題を解くことができるらしいです。今回は等加速度直線運動について扱いましたが、ほかのいろんな問題についてもそのうちやるかもです。仕事と力学的エネルギーとか。取り敢えず今回はここまでとなります。お読みいただきありがとうございました。