さあ、今すぐマセマティカを使おう
MathematicaはWolframによって提供されている、数値解析に特化したプログラミング言語の一つ。
名前だけは聞いたことがあっても、「なんか難しそう」「使い方がよく分からない」といった理由で忌避されていることが多いと思います。実際、僕も研究室に配属されるまでは見向きもしていませんでした。
しかしながら、研究室配属後にマセマティカのプロフェッショナルと出会ったことで、その評価は180度変わります。
今までの解析に用いていたExcelやpythonがゴミと思えるほどの操作性、自由度、視認性をマセマティカは兼ね備えており、複雑な形の式の数値計算で圧倒的な力を発揮します。
文明開花
ここで、1つ衝撃的な例を挙げてみると、
通常、Excelやpythonで分数やルートを入力するとき、(a+b)/(c+d)や~.sqrt(a+b)といったコマンドを打ち込むと思います。短い式なら問題ないですが、sqrt(1/sqrt((a+b)/(c+d)))/sqrt(a+b)のような煩雑な式になってくると、ぱっと見でどのような式になっているのかが分かりにくいです。
一方で、マセマティカにおいてはショートカットキーを使うことで
のように、手書きで書いたような形式で入力し、計算することが可能になります。
いわゆる、ワードやパワポの数式エディタのような直感的な数式入力ができてかつ、そのまま計算ができるという優れもの。
もちろんこれだけではなく、行列、積分などもそのままの形で入力が可能です。
試しにやってみると、
といった感じになります。
(これは見やすい)
その他のコマンドについては、以下の記事を参照
実験系の学生が喉から手が出るほど欲しい機能
ここまでの話を聞いて、「マセマティカは数式入力で便利なんだ!」と思ってもらえたかもしれませんが、
これはまだマセマティカのほんの序の口。
実は、実験系の理系大学生にとって欠かせない誤差評価も自動で計算することができます。
マセマティカにはAround関数というものが存在しており、これを用いることで
のように誤差も合わせて表示することが可能。
無論、これを用いて計算することで
のように誤差伝播による結果も自動で計算してくれます。
(超面倒な偏微分とかしなくていいからめちゃくちゃ便利)
※この機能は誤差伝播を理解してから使用することを強く推奨します
圧倒的なグラフの操作性
また、マセマティカはグラフ描画においても圧倒的な操作性を発揮します。
例えば、f(θ)=cosθcos aθのパラメータ a を少しずつ変えていったら、f(θ)グラフはどう変化するのだろう? という状況を考えてみましょう。
こんなとき、Manipulate関数を使うことで任意のパラメータの数値を変えていったときのグラフの変化を表示できます。上記の例だと
のように、スライダーを動かすことでグラフを直感的に、自由に操作することが可能となります。
この点は、Excelやpythonより圧倒的に使いやすくて
便利だと思います。
最後に
マセマティカにできることは山ほどありますが、ここでは語り切れないため他の記事で紹介する予定です。
マセマティカは便利だけども、欠点として
価格が高い 導入が面倒 慣れるまでが大変
といったことが挙げられます。
ただ、学生であれば無料で使えるようにしている大学もいくつかあるため、
無料ならばこの記事をきっかけに使い始めてみるのもいいのではないでしょうか。
少しふざけた紹介記事になってしまいましたが
ここまで見てくれてありがとうございます。
コメント