* ブラウン運動 [#tad2af9f] 物理学実験II 「ブラウン運動」に関する情報を載せているページです。 #contents ** 実験概要、目的 [#b81fb117] 「ブラウン運動」では、原子、分子のランダムな熱運動によって生じる巨視的な物理量の揺らぎを扱う。具体的には、抵抗の熱雑音(電子の熱運動)及び、ねじれ型振動子の熱振動を測定する。この実験を通して、熱雑音についての理解を深めると同時に、微小振動計測の技術と、ランダムプロセスの統計処理について学んでもらう。 ** テキスト、資料 [#yfe09283] 実験の詳細については、以下のテキストと資料を参照のこと。 ブラウン運動テキスト &ref("main2009.pdf"); 説明会資料 &ref(brown2009.pdf); ** データ置き場 [#u127c794] 実験で取ったデータを教育用計算機センターや自分のパソコンで解析するために、ここにデータをアップロードできる。~ 以下にある、自分の組番号のページ(1-A等)に、ファイルをアップロードすること。~ 上部にある、添付というリンクをクリックすれば、ファイルがアップロードできる。~ アップロードにはパスワードが必要なので、実験担当者に聞くように。 [[2009年>BrownData2009]] ** データ解析の方法 [#r7ac152b] ブラウン運動では、測定したデータをどう解析するかが大きな意味合いを持っている。解析が不十分なレポートは減点対象である。実験指導側から、データ解析のツールについて特に指定はしないので、各自好みの方法を用いてよい。 ここでは、どのようなツールを用いて良いのかわからない学生のために、いくつかのツールを紹介する。 *** [[MATLAB>http://www.mathworks.com/products/matlab/]] [#b4d800b4] Matlabは、行列ベースの汎用数値処理言語である。Matlabには以下のような特徴がある。 - 数値処理言語としての歴史は古く、広く使われているため、ノウハウが蓄積されている。また、使われているアルゴリズムの品質、正確さについてもある程度の信頼が置ける。 - Toolboxと呼ばれる追加もジュールを利用することで、科学技術関連の広範な分野のニーズに対応している。 - Mathworks社が開発、販売する商用製品であるため、有料である。普通に買うと数十万円するが、学生向けには二万円程度の学生版が存在する。 - 東大では、教育用計算機センターのマシンにインストールされている。しかし、ライセンスが全学で19本しかないため、他に多数の人間が利用している場合、使えない可能性がある。 - 習得のしやすい、平易な文法である。一方、経験を積んだプログラマーには言語仕様に不満が残る。 Matlabを用いたデータ解析の例は[[こちら>BrownMatlab]]。 *** [[Scilab>http://www.scilab.org/]] [#ebae2431] Scilabは、[[INRIA>http://ja.wikipedia.org/wiki/INRIA]]で開発されている、行列ベースの数値解析システムである。機能、文法共にMatlabに非常に良く似ており、ほとんどの目的においてMatlabを置き換えることが可能である。 - オープンソースなので、無料で利用可能 - Windows, Linux, Mac版が存在 - INRIAが組織として開発しているので、ある程度の信頼性が担保される Scilabを用いたデータ解析の例は[[こちら>BrownScilab]] *** [[Python>http://www.python.org/]] [#c734b969] Pythonは、MatlabやScilabとは違い、数値計算に限定しない汎用のインタープリタ言語である。その適用範囲は広大で、個人が日常の細かい作業を行うのに使うスクリプトから、動的Webページの生成、大掛かりなアプリケーションまで様々に利用されている。Pythonはそもそもモジュールによって機能拡張する事を前提として設計されており、そのため数値計算や数式処理用の拡張モジュールが開発され、科学技術分野で徐々に利用されてきている。 - 汎用言語であり、様々な用途の拡張モジュールが開発されているので、非常に幅広い応用分野を持つ - 各種プラットフォーム用のPythonがオープンソースで開発されており、無料で利用可能 - プログラミング言語としてのデザインがMatlabやScilabよりも優れている(著者私見)。 - Pythonは初心者にとって最も学びやすい言語の一つとされる。 - 科学技術計算用に、[[Scipy>http://www.scipy.org/]]や[[Matplotlib>http://matplotlib.sourceforge.net/]]等のモジュールを導入することにより、強力な数値計算言語として利用可能 - Matplotlibで生成されるグラフの品質は、MatlabやScilabよりずっと高い - [[Sympy>http://code.google.com/p/sympy/]]を利用すれば、数式処理も可能 Pythonを利用したデータ解析の例は[[こちら>BrownPython]]。