計算代数システム用ソフトの紹介

計算機代数ノート

1 数式処理ソフト:Mathematica/Maximaの紹介

当Academia Notes計算機数学ラボでは数式処理ソフトとしてMathematicaとMaximaを採用している。Mathematica(https://www.wolfram.com/mathematica/)は業界老舗Wolfram Reserch社の有償ソフトだ。Maxima(https://maxima.sourceforge.io/)も無償ソフトとして長い歴史がある。本稿は数値計算ラボの解説記事(ブラックホールをあなたの手の上に)などのを読み進めるため、必要最低限の予備知識として基本的な操作方法を解説する。

1.1 Mathematica

環境のセットアップ

現在2022年7月で以下a)、b)、c) の三つのオプションが検討できる。

a) PCで利用(Win/Mac/Linux)

Wolfram Reserch社のホームページ(https://www.wolfram.com/mathematica/)より自分に適したMathematicaを購入するか、評価版をダウンロードする。学生なら「学生用デスクトップ」、社会人で趣味の範囲なら「家庭用デスクトップ」あたりがお薦めかもしれない。以下の様なセルベースのノートブックで実行できる。

b) ラズベリーパイで利用

組み込み用コンピュータプラットホームであるラズベリーパイのハードウエアを購入するとWolfram + Raspberry Piプロジェクト:すべてのRaspberry PiにWolfram Engineを搭載の通り、最初からOSにバンドルされている。ラズベリーパイのハードウエアを購入にあったっては、”Raspberry Pi”のキーワードで検索すると購入方法やセットアップ方法の記事を参照できる。

例えばRaspberry Pi 4 Kit Setting – Qiitaなど

上記 a) よりは安くなるが、速度性能は劣る。

c) PCで[Wolfram Engine+Jupyter]を使う(Win/Mac/Linux)

お薦め>無料で長期間そこそこヘビーに使い込みたい人向け。

以下のようにjupyterのノートブックとしてMathematicaを実行させることができる。jupyterはAI開発言語として有名なPythonのブラウザベースの開発環境だ。

Wolfram 社はMathematicaを含むWolfram 言語の実行エンジンをjupyterに登録できるようパッケージを提供している。尚上記A) b)では純正のWolfram 社製ノートブックが使えて何かと便利ではある。

キーワード”Wolfram Engine Jupyter”で検索すると導入方法の記事を参照できる。

例えばJupyter Notebook Viewer (nbviewer.org)

wolfram engineをjupyterで使う方法(windows版)|HY|noteなど。

注意

私の場合を実行時にWindouws10のPC4台中2台で「configure-jupyter.wls add」の操作でエラーとなり、JuyterにMathematicaが登録できなかった。ネットで調べてみるとPathに関した問題等色々なことが起きているようであるが、この2台への解決方法が見つからなかった。仕方なくダウンロードしたconfigure-jupyter.wlsをデバッグしてパッチを当てて何とかエラーになっていた2台のPCを動かしたので、その方法を以下に記載する。私と同様、他の手段でも解決できなかった人は試してほしい。

1)Wolfram社からダウンロードしたホルダーを開きconfigure-jupyter.wlsをテキストエディタで開く。

2)プログラムの終わりの方に以下のコードを見つけ、水色で囲ったように (* および *) でコメントアウトするか、削除し、赤で囲ったコードを追加する。元のファイルはバックアップしておくこと。

3)手順通り「configure-jupyter.wls add」を実行する。

以上でエラーとなった2台のPCでMathematicaがJupyter上で動くようになった。

このコメントアウトしたSwitch文のコードに不正な記述は見当たらなかった。にもかかわらず”add”のサブコマンドを見逃して最後のPrint[helpMessage];で使用法を表示していた。そこで赤で囲った部分 command={False, False};を追加し、”add”と同様の結果を与えた。何らかのPC環境が青で囲ったSwitch文の動作を不安定にさせているのかもしれない。

動作確認

Wolfram社の指示通りアクティベーション等を行い、導入が完了したら新規でnotebookを開きコマンドを入力してみよう。

Wolframのドキュメントセンター(https://reference.wolfram.com/language/index.html.ja?source=footer)の中から目的のコマンドやチュートリアルを検索できる。

1.2 Maxima

Maximaの公式サイト(https://maxima.sourceforge.io/)より自分の環境に合わせてダウンロードし指示に従いインストールする。

マニュアル等のダウンロードも可能だ。

インストール後、Maximaを起動すると以下の様なMathematicaと同様セルベースのノートブックが開かれる。動作確認のコマンドをたたいてみよう。

参考文献等はWikipedia(https://ja.wikipedia.org/wiki/Maxima)の外部リンクに日本語での解説等が記載されている。

Mathematicaと比較しても数式処理の範囲では遜色は無く、十分実用に耐えるものだと思う。

2 数値処理ソフト:Matlab/Scilabの紹介

信号処理ではアルゴリズム検証、シミュレーション等で数値処理ソフト利用する場合が多い。本稿ではMatlab、Scilabを利用して解説しておりここで入手方法等を紹介する。

2.1 Matlab

MatlabはMathworks社(https://jp.mathworks.com/products/matlab.html)の有償ソフトだ。入手方法は(https://jp.mathworks.com/pricing-licensing.html?prodcode=ML&intendeduse=home)などを参考にダウンロードする。ホームユースや学生向けが安く設定されている。また評価版も有るようだ。アカデミアノーツでは現時点で準備ができていないので、導入でき次第詳細を公開したい。

2.2 Scilab

Matlabに似た数値処理ソフトだ。https://www.scilab.org/よりダウンロードし無償で利用可能だ。信号処理の基礎数学(https://academians.net/mathematic-for-signal-processing)で数式の解説に利用しており、内容に興味のある方はぜひ環境を準備されたい。

コメント

タイトルとURLをコピーしました