はじめての数式処理ソフト Maxima で楽しむ数式処理と物理グラフィック

著者竹内薫
シリーズブルーバックス B-1560
発行所講談社
刊行2007/07/20(第1刷)
入手九大図書館で借りた
読了2021/01/07

学生が Maxima を使い始めたので、私も使ってみようと思い、この本で勉強することにした。 ただし、この本はもう販売されておらず、中身も以下に「細かい点で気づいたこと」で書いたように 少し古い点があるようだ。といっても、Maxima の本はあまり売られていないので、図書館で探して とりあえずこれで入門することにした。ブルーバックスとしても薄めの本で、ざっとであればわりと速く読めるし、 プログラムの入った CD も付属しているということで、それなりには役に立った。

著者はサイエンスライターとして有名な竹内薫氏である。 本書では、例として竹内氏がご専門の素粒子論関係のものがたくさんでてくる。ペンローズのツイスター、 カラビ・ヤウ空間、ボームの量子ポテンシャルに関する図を描くというところがそうである。 いずれもちょっと高級過ぎて、私には図の見どころがよくわからなかったし、どういうプログラムかも よくわからず、その部分は Maxima の勉強にもあまりならない。著者としては、面白い例で工夫したということだと思うが、 物理の勉強としても Maxima の勉強としても中途半端になって、著者の意欲が空振りしているように思う。

書いてあるところによると、竹内氏がMaxima の使い手というわけではなくて、 竹内氏は Mathematica を使っているのだが、それを岡田哲哉氏に Maxima に翻訳してもらって本にしたとのこと。 Mathematica は値段が高いので、ブルーバックス読者向けではないということのようだ。

私は Mathematica のだいぶん古いバージョンを使える環境にいるので、Mathematica と Maxima の比較ができる。 本書で扱われているようなプログラムに関しては、両者の構造はほぼ同じで、ほぼ逐語訳できるのだが、 Mathematica だと [] になるのが、Maxima だと () になるというように、 いちいち記号やコマンドを変えていかないと翻訳できないのが面倒なところである。 というわけで両者ほぼ同様に使えるのだが、Mathematica の方がやはり賢いようで、本書にも Mathematica ではできて Maxima ではできない積分の例が載っている。それは、

という例である。答えには超幾何関数がでてくるもので、現在でも Maxima では対応できないようである。 ボランティアでは、超幾何関数が出てくる積分までは装備できないのだろう。超幾何関数自体は装備されているが、 マニュアルによると、Maxima has very limited knowledge of these functions とのことである。 それと、描画機能で Mathematica ではできて、Maxima ではできないことがあるようで、本書においては そういうときは gnuplot で直接描くスクリプトが掲載されている。

細かい点で気づいたこと(本は第1刷、Maxima は 5.44.0)

そのままではスクリプトが動かない箇所

スクリプトがそのままでは動かない箇所がある

プロットオプションが効いていないと思われる箇所

plot3d のオプションで [gnuplot_preamble, "unset pm3d; set hidden3d"] は付けても付けなくても 同じ結果になるようである。gnuplot との関係がどうなっているのかよくわからない。 このオプションに関しては、Maxima のデフォルト設定が gnuplot_preamble の設定を上書きしているように思える。