著者:上野 覚 (著)
ページ数:142

¥700¥0

 自分でプログラミングできて、その結果がインタラクティブに見て分かる、アニメーションで分かるという体験ができる。「自分で動かした」という達成感に、子供も大人も感動します。
 力学は高校から学習していきますが、教科書ベースの授業では、速度や位置を表す関数を単に公式として学習し、その物理的意味よりも暗記と当てはめに重点を置いているため、理解しづらく敬遠されることが多かったようです。力学の法則は、原理(運動方程式)から速度や位置に係る諸公式を導くことができる体系を形成していることを本書で紹介したいと思います。
 また、関数で記述された自然現象を数式からイメージするのはなかなか困難で、この点からも物理への興味を減じていたように思われます。現実の物体の運動と、それを抽象化・数値化した数式との関係を一目で関連づけることのできる可視化ツールが求められていました。両者を関連づけるものとして物理シミュレーションがありますが、従来コンピュータを用いてこれを行うには、球の作成、物理法則にしたがった運動及びその可視化環境等その全てに渡ってプログラミングを行う必要がありました。コンピュータのハードからソフトにわたる幅広い知識が求められるため、3D技術の扱いは通常のユーザーには敷居が高く、手掛け難い分野になっていました。
 近年ICTの進展によりグラフィック機能や操作性が充実し使い易くなったコンピュータのソフトやハードが出現してきました。例えばゲームエンジンと呼ばれるソフトは、球や立方体などゲームに活用できる素材が事前に用意されており又ゲームの基本的な仕組みを内蔵しているため、球などのゲームオブジェクトをマウスを用いたクリック操作により簡単に作成し、動かすことができるようになりました。また、この球にプログラムを組み込むことで物理法則に則った運動ができるようになりました。
 このように3D技術の進歩により力学シミュレーションを行うハードルが下がり、パーソナルコンピューターでも力学シミュレーションを楽しみながら物理を学べる環境が出現しました。このことが本書を書こうと思った大きなきっかけです。
 本書では、具体的にはUnity Technologies社が開発した3DゲームエンジンのUnityを用いました。Unityは2005年に登場し、当初はゲーム開発に用いられる高価なツールでしたが、2015年3月にリリースされたUnity5からは無償版も用意され、また多くの書籍が出版されてきており、セミナーも開催され、初心者も取り組み易くなっています。
 本書では、Unityのインタラクティブなプログラミング環境を紹介すると共にこの環境を活用して力学シミュレーション教材としての活用を紹介しています。それは自分でプログラムを入力し、すぐに動かすことができ、その結果をアニメーションで観ることができる、という教材です。学習の過程では、対象について体系立てたイメージを頭の中に形成することで理解が進み易くなると期待されるので、図表を多く取り入れています。サンプルプログラムは短いものを用意しているので、初めての人でも「簡単にプログラミングでき、シミュレーションが楽しめる」教材です。「一つずつ理解して積み上げていく」タイプの教材ではなく、「まず動かして楽しもう」というタイプの教材を意図しています。参考例のスクリプトを数多く用意していますので、これらを基に、改良することから始められると良いでしょう。実際に自分の手で書いて、書いたコードをコンピュータで実行させてみることがプログラミング上達の王道です。コードを間違えてもその部分を修正し、また実行してみる、というコンピュータとの対話を繰り返し続けていくことでプログラミングは上達していきます。そのような学習環境がUnityには用意されています。本を片手に、ゲームオブジェクトの球を動かしながら、プログラミングと力学シミュレーションを楽しんで好きになって頂ければければと思っています。

本書の内容は以下のようになっています。

第1章準備
1.1 近代科学の方法
1.2 Unityについて
1.3 力学シミュレーションの全体像
1.4 微分積分の力学への活用

第2章 Unityの準備及び力学シミュレーションへの活用
2.1 Unityのダウンロード、インストール及び起動
2.2 Unityの力学シミュレーションへの活用(1)
  (物理エンジンでオブジェクト球を操作する力学シミュレーション)
 2.2.1 新たなオブジェクト球の作成
 2.2.2 物理エンジンでオブジェクト球を操作する方法
 2.2.3 物理エンジンでオブジェクト球を操作する力学シミュレーションの手順
2.3 Unityの力学シミュレーションへの活用(2)
  (スクリプトでオブジェクト球を操作する力学シミュレーション)
 2.3.1 新たなC#ファイルの作成及びスクリプトでオブジェクト球を操作する方法
 2.3.2 スクリプトでオブジェクト球を操作する力学シミュレーションの手順

第3章 Unityのプログラミング
3.1 新たなC#ファイルの作成とテンプレート
3.2 Unityでのプログラミングの方法
3.3 文字列や数値の出力
3.4 演算子を用いた計算とその結果の出力
3.5 変数を用いた計算とその結果の出力
3.6 制御構文を用いた条件分岐処理とその結果の出力
3.7 その他

第4章 等加速度運動をする物体のシミュレーション
4.1 等加速度運動をする物体の運動方程式
4.2 運動方程式の解析的・数値的な解法
 4.2.1 運動方程式の解析的な解法
 4.2.2 運動方程式の数値的な解法
4.3 等加速度運動をする物体の運動方程式の解析解及びシミュレーション
4.4 等加速度運動をする物体の運動方程式の数値解及びシミュレーション
4.5 Unityを用いた力学シミュレーションのまとめ

第5章 等速直線運動をする物体のシミュレーション
5.1 等速直線運動をする物体の運動方程式
5.2 等速直線運動をする物体の運動方程式の解析解及びシミュレーション
5.3 等速直線運動する物体の運動方程式の数値解及びシミュレーション

第6章 斜方投射運動をする物体のシミュレーション
6.1 斜方投射運動をする物体の運動方程式
6.2 斜方投射運動をする物体の運動方程式の解析解及びシミュレーション
6.3 斜方投射運動をする物体の運動方程式の数値解及びシミュレーション

第7章 2つの物体のシミュレーション
7.1 等速直線運動をする2つの物体のシミュレーション
7.2 等加速度運動をする2つの物体のシミュレーション

第8章 微分と積分について(付録)
8.1 微分について
8.2 積分について
8.3 微分と積分をつなぐ基本定理

シリーズ一覧

  • 同シリーズの電子書籍はありませんでした。

 

  Kindle Unlimitedは、現在30日間無料体験キャンペーンを行っています!

この期間中は料金が980円→0円となるため、この記事で紹介している電子書籍は、すべてこのKindle Unlimited無料体験で読むことが可能です。

Kindle Unlimited 無料体験に登録する