「Maxima」を活用して数学の学習ロードを駆け抜けよう!
(注) MathJaxを使用しているので、 スマホでは表示に時間がかかることがあります。
モバイル利用(Android)でのメニュー選択は、 SiteMapを利用するか、 「長押し」から「新しいタブを開く」を選択してください。
■ 数式処理ソフト「Maxima」を活用した数学学習 [Map] |
| ||||
| ||||
[御案内] 「Maxima」(マキシマ)は,フリーの数式処理ソフトです.
有料の Mathematica や Maple に劣らないレベルの数式処理が可能であり,
Linux,Windows,MacOSのみならず,Android版もあります.
ここでは,数学学習での Maxima の活用法について解説します.
なお,世の中の多くのことは、 「正規分布」ではなく「ベキ分布」に従っているようです。 関連サイトをまとめた「ベキ分布:リンク集」も参照してください。 | ||||
[お知らせ] スマホ(Android)版Maximaの解説本を出版しました. 計算問題やグラフの確認をするときに非常に重宝します. フリーソフトなので一度試してみてください. PC版のコマンドレファランスとしても利用できます。
| ||||
|
■「Maxima」とは? |
|
Maximaはフリーの数式処理ソフトです.
数学に関心はあっても,
「数式処理」がどのようなことなのかイメージが沸かない方が
多いと思うので,最初に幾つかの画面を紹介します.
要するに,計算結果を数値で表示する電卓とは違い,
「文字式のままの計算ができる!」ということです.
★所持しているスマホやタブレットがAndroidの場合は, 「Maxima on Android」というアプリを組み込めば, PCのみならずスマホやタブレットでも以下の計算ができることになります! 各種の式の計算下図では,式の展開(%i1)や因数分解(%i2),方程式の解法(%i3), そして関数の微分・積分の計算が行われています. (%i4)では \(\small (\sin x)^2\) の第2次導関数が, (%i5)では \(\small e^{-x}\cos{x}\) の 不定積分が求められています. 3次方程式や4次方程式の解を解の公式を用いて求めることができ, 5次以上の方程式が因数分解できないときは近似解を求めるコマンドもあります. 積分範囲を指定すると定積分の計算をすることができます. 微分・積分の計算では変数を指定するので, 偏微分や累次積分の計算をすることもできます. 文字係数が含まれていてもかまいません. 積分定数は省略されます.
関数のグラフ グラフを終えて次のコマンドを打ち込むには, グラフ画面の右上の「×」を押してグラフ画面を閉じる必要があります. コマンドの最後を「;」で終えると, グラフ画面を閉じるとグラフ画面が自動的に保存されて 保存場所が表示されます.「$」(半角)で終えると, グラフが表示されるだけで保存はされません. 次々にいろいろなグラフを試すときは, 「;」ではなく「$」(半角)で終えた方がよいです. 「;」にして試していくと, 試した画面がことごとく保存されていくので注意してください. 「plot3d」を利用すると曲面を描くこともできます. 下図は,「メキシカンハット」とも呼ばれる \[\small f(x,y)=\frac{\sin\sqrt{x^2+y^2}}{\sqrt{x^2+y^2}}\] のグラフです.\(\small f(x,y)\) を事前に定義しておくと, 次のコマンドにより描画されます. 媒介変数のモードがあり, 円柱座標や球座標で表された曲面も描画することができます. 次のコマンドを打ち込むには, グラフ画面の右上の「×」を押してグラフ画面を閉じてください. 「plot3d(f(x,y), [x,-10,10], [y,-10,10], [grid,50,50])$」 |
ここでは,最初に行列(matrix) \(\small M\) を定義(%i6)して, その行列式(determinant) \(\small |M|\) , 特性(固有)多項式(characteristic polynomial) \( \small |M-xE|\), そして固有値(eigenvalues)が求められています. 行列の階数,基本変形,逆行列,そして 固有ベクトルを求めるコマンドもあります. (%o9) の後半にある [1,1] は,個々の固有値の重複度を表します. いずれも重複度が1なので重解ではないことが分かります.
微分方程式の解法
(%i11)では,1階微分方程式 \(\small \frac{dy}{dx}+y=0\) の一般解を求めています. 「%c」は任意定数です. (%i12)では,直前に求めた一般解の初期条件(initial condition) 「\(\small x=0, y=1\)」 を 満たす特殊解が求められています. 「%」は,直前の結果(%o11)のことです. (%i13)では,2階微分方程式 \(\small \frac{d^2x}{dt^2}+4x=\cos{t}\) の一般解を求めています. 「%k1, %k2」は任意定数です. (%i14)では,直前に求めた一般解の初期条件 「\(\small t=0, x=0, \frac{dx}{dt}=1\)」 を 満たす特殊解が求められています.
ベクトル場の表示 さらには,出力された数式をTeXの書式に変換することもできます. たとえば,(%o14)の式をTeXの書式に変換するには, 「tex(%);」とするだけです. (%o15)に「false」が返されていますが, TeXの書式が表示されています. 「tex(%)$」とすると「false」は表示されず, TeXの書式だけが表示されます. なお,スマホでも見やすい図とする都合上, 表示画面の右半分は省略されています. 実際には下記の内容が表示されます。 $$x={{\sin \left(2\*t\right)}\over{2}}-{{\cos \left(2\*t\right) }\over{3}}+{{\cos \left(t\right)}\over{3}}$$ (「$」は半角) この書式部分を選択してトップメニューの「編集」から 「コピー」して貼り付けてコンパイルすれば, 自分で結果をいちいち入力し直すことなく(%o14)の式が表示されます. (%o15)では円マーク「¥」がバックスラッシュで表示されていますが, 貼り付けると「¥」になります. なお,\(\small \frac{\sin(2t)}{3}\) は通常は「\frac{\sin(2t)}{3}」 と記述すると思うのですが, Maximaでは「\sin\left(2\*t\right)}\over{2}」と表されます. そのままコピーしても,修正することなくコンパイルすることができます.
Maximaの歴史 このページでは,Maximaのインストールの仕方, 基本的な使い方,そして学習上の利用法などについて解説します. 数学を学習する上での「数式処理」の威力を感じ取っていただければ幸いです. Maximaの高校・大学初年次のレベルでの機能は, 冒頭で紹介した書籍の 「 試し読み」にある目次を参照してください. さらに進んだ専門数学での機能は, 「 マニュアルの目次」を参照してください. 整数論や群論のパッケージを利用することもできます. なお,数学を学習中の者に「数式処理」を利用させると, 「解答」が丸写しされて「学生・生徒が考えなくなる」という反対意見を 述べられる方がおられますが,全くの杞憂と思います. 考えもせずに丸写ししているとどのような試験結果が待ち受けているかは, 学生・生徒が最もよく理解するでしょう. 「数学を分かりたい!」と最も思っているのは, 教員ではなく学生・生徒自身です. 単純な「答え合わせ」として利用するだけでも, 大きな教育効果が期待されます.さらに進んで, 「思考のツール」として使用するようになれば, 数学上の思考展開が大きく効率化されることが期待されます.
Maxima on line
|
|
■ダウンロードとインストール |
|
ダウンロード |
Maximaは下記のサイトからダウンロードできます.
Maxima, a Computer Algebra System 「数式処理」は, 英文では「Computer Algebra System」と呼ばれています. 略して,単に「CAS」と呼ぶこともあります. ダウンロードするには,トップバーにあるメニューから 「Downloads」を選択します. 下図は,選択後に表示される画面です. この画面から,Windows版,MacOS版,Linux版がダウンロードできます. Android版は,スマホやタブレットのGoogle Playで 「Maxima on Android」を検索すればダウンロードできます. インストールしないでどんな風になるかを見るには, 上記画面の「Windows」の上の箇所にある 「Maxima Online」をクリックしてください.以下では,Windows版の場合のダウンロードの過程を示します.
|
|
インストール |
ダウンロードしたEXEファイルをは自動解凍ファイルになっているので,
ファイルをクリックすると自動的に解凍されます.
そのEXEファイルは,
ブラウザーの[ダウンロード](Ctrl-J)の箇所から選択するとよいでしょう.
クリックすると,ちょっと間をおいて解凍作業が始まります.
解凍が終わるとインストーラーが立ち上がります. インストールの途中では,以下の事について確認が求められます. 特にこだわりが無ければ,「Ok」や「次に」を押し続けていればよいでしょう. 途中で確認を求められる主な事項は,下記の通りです.
以上の指定でインストールが開始され, 終了すると下図が表示されるので「完了」をクリックします. |
|
■ いろいろな「Maxima」 |
|
wxMaxma |
インストール後にスタートボタンを押すと,
「最近追加されたもの」として
「wxMaxima」という名称のアイコンが表示されます.
クリックすると,下記のようなwxMaxmaのトップ画面が現れます. この画面にコマンドを入力することで,いろいろな計算をすることができます. 白紙の状態ですが,左上の角でカーソルが点滅しています. いろいろな計算をさせるには, その箇所で最初に例示したようなコマンドを 打ち込みます. たとえば,「expand((x+1)^5)」と入力して [shift][Enter] を押すと, 入力式の最後に「;」が付加されて結果が表示されます. [Enter]だけだと改行されるだけなので, 結果を表示させるには必ず[shift][Enter]を押してください. コマンドを入力中は,その行の左端に「赤い記号」が表示されます. Maximaは,入力した式の区切りを示すために 式の最後には「;」をつける約束になっていますが, wxMaximaは [shift][Enter]が押されると式入力の終了と判断して 自動的に追加してくれます. 下図は,方程式の解を求めるコマンドを入力しているところです. 入力中の行の左端には赤い記号が表示されています. この後で[shift][Enter]を押すと, 入力した式に「;」が付加されて結果が表示されます. N番目に入力(input)した式には(%iN), その結果として出力(output)される式には(%oN)という記号が自動で付されます. 「wxMaxima」は,GUI (Graphical User Interface) 方式でMaximaを操作できる ようにしたソフトウェアです.Maximaのコマンドを覚えていなくても, 画面上部のメニューからでもMaximaを操作することができます. たとえば,画面上部のメニューにマウスポインターをあてがうと, 下図のように日本語のメニューが表示されます.そのメニューを通して コマンドを実行することもできます.ただし, 計算式の入力を求められるときと, 直前の結果に対していきなり処理が行われる場合とが混在しているので, その違いについて慣れる必要があります. 面倒でも,コマンドを入力する方式の方が 「自分でMaximaを操っている」感覚がするのではないかと思います. 下図は,「方程式(Q)」のメニューです. 連立方程式や,微分方程式の解を求めることもできます.
Maxiaの基本的な使い方については,
「数学学習での活用」や
「リンク集」を参照してください.
手っ取り早く全体像を把握したい場合は,
「Maximaを用いた数式処理」
を参照してください.
|
|
Maxima on Android |
「Maxima on Android」は,日本の本田康晃氏によりリリースされたものです.
結果はTeXで出力されます.
このアプリは,「Playストア」から「Maxima on Android」を
検索するだけでインストールすることができます.ただし,
スマホやタブレットの日本語入力のキーボードで数式を入力するのは,
不便極まりないです.
数式入力に特化した(ソフトウェア)キーボードがあるので,
そのようなキーボードに変更する必要があります. 下図は,そのようなキーボードに変更して実行した結果です. 出力されている式は, 最初の例示画面と同様にTeXにより出力されています. 2次元や3次元のグラフ描画も可能であり, Maxima(5.41.0)のほぼ全機能をスマホやタブレットで利用することができます. (2019.03.31現在) Maxima on Androidには,PC版にはない特徴があります. たとえば,次のような機能があります.
開発者のサイトでは, ガロア群,楕円関数,佐藤テイト予想,ゼータ関数などの 話題も取り扱われています. このアプリをスマホやタブレットにインストールしておけば, 思い立ったとき,「いつでも・どこでも」, 簡単な計算から高度な数学的計算まで行うことができるのです. |
|
TeXmacs |
TeXmacsを利用しても,
Maximaの計算結果をTeXによる出力で得ることができます.
冒頭での例示画面はTeXmacsによるものです.
TeXmacsは,
Wikipediaでは次のように解説されています.
GNU TeXmacsはGNUプロジェクトで開発されている科学技術に特化したワープロまたは組版のフリーソフトウェアである.TeXmacsはその機能にTeXとGNU Emacsの長所を取り入れており,ソースコードはどちらからも独立して書かれているが,TeXのフォントを利用する.TeXmacsはJoris van der Hoevenが開発,メンテナンスを行っている.TeXmacsを使うことで,WYSIWYGなGUIで構造化された文書を作成できる.また文書スタイルを新しく定義することもできる.TeXmacsは高品質な組版アルゴリズムとTeXフォントにより,商用に耐えうる品質の文書を生成することができる.要するに,LaTeX文書を見たままに(wysiwygに)編集できる, フリーのエディターです.その概要は,やや専門的ですが GNU TeXmacs (PDF)を参照してください. おそらくは英語論文の作成のためのものであり, 日本語での文書作成には適さないと思います. 使い方を日本語で解説しているサイトは,見つけられませんでした. 私は,TeXmacsはMaximaの出力式をTeX仕様で得たいがために 利用しているので,Maximaを組み込む以外のTeXmacsの使い方は 分かりません.ここでは,TeXmacsのインストールとMaximaの組み込み方に ついてだけ解説します. TeXmacsにMaximaを組み込むには, 相互のバージョンに注意が必要です. 組み込めるバージョンには相性があるようです. 私の場合は,TeXmacsのバージョンは「1.99.9」, Maximaのバージョンは「5.38.1」で使用しています. 以前は「5.31.2」と書いていましたが, 再度試すと「5.38.1」でも大丈夫でした. Maximaのデフォルトでのインストール先は, 古いバージョンは「C:\Program files (x86)」になっていますが, 「5.39.0」以降ではルートディレクトリ(C:\)になっています. TeXmacsにMaximaの最新版が組み込めないのは, このインストール先が異なるからではないかと思われます. Maximaの過去のバージョンを表示させるには, ダウンロード画面の1行目にある 「 Files section」をクリックします. 下図は,「Files section」をクリックして表示される画面です. 各OSごとのフォルダーがあるので,Windowsであれば「Maxima-Windows」を クリックすると古いバージョンのリストが表示されます. 下図は,「Maxima-Windows」の内容です. この中から「5.38.1-windows」(2016-06-12)のファイルを選択して ダウンロードとインストールを行ってください. ちょっと古いバージョンになりますが, Maxima自体は1960年代に開発されたものなので, すでに十分なほどの歴史があります.通常使用では, 多少は古くても特に支障はないと思われます. インストールの際,wxMaximaのショートカットを作成するかどうかを 問われますが, 最新版のwxMaximaをすでにインストール済みの場合は, この古いバージョンのショートカットは作成しない方がよいです. 「作成(create)」にチェックをいれると,インストール済みである 最新版wxMaximaのショートカットに上書きされてしまいます. 間違って上書きした場合はショートカットを削除して, 最新版のwxMaximaのショートカットを 作成してください. |
|
次に,TeXmacsをダウンロードします.
下記のサイトからダウンロードできます.
下図がトップ画面です.
ここに表示されているような文書を作成できるようようです.
「Download」をクリックすると,ダウンロード画面に変わります. 上記の画面では, 「TeXmacs-1.99.9-installer.exe」をダウンロードするように設定されています. その箇所に表示されるファイルが最新版です. TeXmacsの古いバージョンは,右端にある「another here」をクリックすると 表示されます.下図が,過去のバージョンのリストです. ファイルが古い順に表示されるので, 上部に表示される「Last modified」をクリックして 最新のものから表示させます. 古いバージョンをインストールするときは, この中から選択してファイルを保存します. とりあえずは,最新版をインストールしてください. 保存されたTeXmacsのファイルをダブルクリックすると インストール作業が始まります.保存先のフォルダー名や スタートアップフォルダーへのショートカット登録などの 確認を求められた後にインストールが始まり, 終了すると次の画面が表示されるので, 「Finish」を押してセットアップを完了させます. |
|
次に,TeXmacsを起動します.スタートボタンを押すと
「最近追加されたもの」に「TeXmacs」のアイコンが表示され,
デスクトップにも同じアイコンが追加されています.
下図は,最初にTeXmacsを起動させたときの初期画面です.
クリックして立ち上がるまでには,ちょっと時間がかかります.
この画面は,TeXmacsをインストールして最初に起動したときの画面です. この画面は,いったん閉じます.終了させるには, 「ファイル」から「Texmacsを閉じる」を選択するか, 「ctrl-Q」を押すか,または右角の「×」をクリックします. もう一度TeXmacsを立ち上げると次のような画面になります. この状態では,まだMaximaは使えません. Maximaを組み込むには,トップメニューにある「挿入」をクリックして, 表示されるサブメニューの最後にある「セッション」をクリックします. 挿入できるアプリ名が表示されるので,その中の「Maxima」をクリックします. TeXmacsとMaximaのバージョンによっては, この「セッション」の箇所に「Maxima」が表示されません. ここでの説明のようにしてもうまくいかないときは, TeXmacsやMaximaのバージョンをさらに落として試してみるとよいでしょう. 上記の「挿入>セッション」で「Maxima」をクリックすると下図が表示され, この画面でMaximaを利用することができます. 冒頭の例示画面は, このようにしてTeXmacsにMaximaを組み込んで実行した画面です. 式を入力後に[Enter]を押すと, 入力式の最後に「;」が付加されて結果が表示されます. [shift][Enter]とすると改行されて実行はされないので注意してください. なお,10年以上も前の解説になりますが, 下記でも「TeXmacs+Maxima」について詳しく解説されています.ただし, ダウンロードやインストールの方法はかなり古いファイルで解説されているので, その箇所は読み飛ばして 後半にあるMaximaの基本的なコマンド解説を参照してください. TeXmacsを終了するには,「ファイル」から「TeXmacsを閉じる」を選択する, 「ctrl-Q」を押す,または右上角の「×」をクリックします. |
|
imaxima |
Maximaをエディターの中で利用することもできます.「imaxima」です.
UNIXのエディターとして著名なEmacs上で利用することができます.
Emacx上でimaximaを組み込みと,エディターの中でMaximaを動かすことができます.
出力はTeXによる出力になります.使用されているTeXは「MiKTeX」です。
実際にはWindows版のEmacsを利用することになりますが, imaximaを組み込むには, まずEmacsというエディターの使い方に習熟している必要があります. EmacsはWindowsの通常のエディターとはキーバインドが大きく異なるので, それを使いこなすには強い「決意」と「慣れ」が必要です. また,Emacsを使えるようにするまでの準備段階では, LISP言語の初歩的な知識も必要になるので, Windowsユーザーにとってはかなりハードルが高いかもしれません. 少なくとも,「ちょっと試しにやってみたい」という意識レベルでは, 試してみることすら難しいでしょう。 「使用しているエディターをEmacsに切り替える」という強い思いが必要です. 私は,以前はEmacs系のエディターである 「Mule」を使用していて,漢字変換には 「SKK」 を使用していたことがあります.この項目を書くために, 昔を思い出しながらちょっと試そうと思いましたが, 日本語入力ができるようにするところで挫折してしまいました. すでに,使い方自体を忘れてしまっていました。 imaximaや日本語を利用できるEmacsは下記よりダウンロードできますが, それを実際に利用可能な状態にするにはかなりの困難が伴うと思われます. 最初の初期ファイル(init.el)をどのように設定するかがポイントです. ★imaximaでは,その入力と出力結果をそのままTeXのソースファイルに 変換することができて, 変換されたファイルはそのままコンパイル可能であるようです. 関心を持たれた方は挑戦してみてください.
|
|
maxima, xmaxima |
Maxima がインストールされたフォルダーのサブフォルダーに [bin]
があり,その中に「maxima.bat」があります.
このバッチファイルをダブルクリックして実行すると,
下図のような DOS モードの Maxima が立ち上がります.
ここではコマンドを入力するしかなくメニューを利用することはできませんが,
この画面でも Maxima の全機能を利用することができます.
wxMaxima ではコマンド入力時に「;」を省略できましたが,
ここでは「;」を自分で入力する必要があります.
結果出力は,[shift][Enter] ではなく,単に [Enter] だけでかまいません.
Maxima が開発された頃の入力・出力スタイルは,このようなものでした.
つまり,すべてが英数半角記号で表示されます. なお,Maximaではネイピア数を「%e」で表します. 終了するには 「quit();」とするか,または右上の「×」をクリックします. 同じ [bin] のフォルダーにある「xmaxima.exe」をダブルクリックすると, コンソールタイプの Maxima が立ち上がります. 幾つかのトップメニューが表示されていますが, 基本的には DOS モードの Maxima と同一です. 背景が白くなっているだけです. ただし,私の使用環境では, 指数や分数の表示位置がちょっとずれるようです. 積分記号も半角英数字の組み合わせで表示されます. (%i5)のように「'integrate」として「'」をつけると, 積分の計算は行わないで積分の式がそのまま出力されます. (%o5)では, \(\small \displaystyle \int e^{-x}\cos(x)\,dx\) を 半角英数字で表現した式が表示されています. なお,微分計算の「diff」も,「'diff」とすると微分記号の式で表示されます. 終了するには,[File]から[Exit]を選択するか, または右上の「×」をクリックします. |
|
iPhone/iPadの場合 |
MaximaのiOS版は提供されていません.
したがって,iPhone/iPadでMaximaを利用することはできませんが,
無料また廉価で利用できる数式処理ツールが多数あるので,
それを利用するとよいでしょう.
以下に,幾つか紹介します.
|
|
■数学学習での活用 |
|
■「Maxima」のリンク集 |
ここでは,Maximaの利用法を解説しているWebサイトを紹介します.
コマンドの詳しい使い方などを知るとき参照してください.
|