勤務医開業つれづれ日記・3

「このマンガがすごい!2021」参加してます。あふれる”好き”を形に。マンガ感想とか書評を中心にしたブログです。

【MacでMaxima】シロウトでもできるGnuplot5.2.5、Maxima5.36.1そしてwxMaxima15.04.0のインストール【微分方程式への道・その3】

 

はじめに

 

wxMaximaのインストールもその3になりました。ついにwxMaximaのインストールです!最後までがんばりましょう。

 

本記事を最後まで行くと、こういうのも描けますよ。

wxMaximaで描いたメビウスリング(Aqua Term使用)

f:id:med2016:20181229143804p:plain

plot3d([cos(s)*(3+t*cos(s/2)),sin(s)*(3+t*cos(s/2)),t*sin(s/2)],[s,0-%pi,%pi],[t,-1,1]);  

 

 

<その1です>

kaigyou-turezure.hatenablog.jp

<その2です>

kaigyou-turezure.hatenablog.jp

 

目次

 

Gnuplotのインストール 

これは前回<その2>でも紹介させてもらった、 

https://home.hiroshima-u.ac.jp/rgdlab/rgdl_html/programming/gnuplot_install_mac.htm

の続きを参照しております。ありがとうございます。

 

Gnuplotインストール

Gnuplotはターミナルを用いてインストールしますので、ターミナルを開きましょう。  

f:id:med2016:20181229135222p:plain

 

ターミナルに以下を打ち込みます。

 

brew install gnuplot -–with-aquaterm --with-x11

 

Enterキーを押してください。 インストールが始まります。途中で一度止まることがあります。press enterの指示があればもう一度Enterキーを押してください。

 

インストールは結構時間がかかります。インストールが終了するとこのような画面になります。

f:id:med2016:20181229141204p:plain

(以下はhttps://home.hiroshima-u.ac.jp/rgdlab/rgdl_html/programming/gnuplot_install_mac.htmより引用させていただいております)

 

Gnuplotの確認

インストールが終わったらGnuplotが入っているか確認しましょう。Gnuplotのバージョンが上がっていますので上記のサイトの記載をコピペすると動きません。こちらに変更してください。

 

cd /usr/local/Cellar/gnuplot/5.2.5 

 

(古い方では5.2.3になっています)

を入力し、"ls"コマンドでフォルダ内容を表示すします。 

f:id:med2016:20181229141649p:plain

 

さらにbinフォルダに移動 ("cd bin"で改行) して, フォルダ内容を表示させる (”ls”で改行) 。属性も表示させるために更に (”ls –l”で改行)と打つと下記の表示となります。 

f:id:med2016:20181229141700p:plain

./bin/フォルダ下にある”gnuplot”はファイルであり、これがgnuplotの実行ファイルである。 ここで、“./gnuplot”と入力するとgnuplotが起動します。

(前記のマニュアルでは“./gnuiplot”とスペルミスがありますのでご注意ください。"i"が余分に入っています) 

 

gnuplotを終了するには、”exit”を入力して改行します。これで元のターミナル画面に戻れます。 

 

Gnuplotの移動

このままではGnuplotは他のフォルダでは動きません。Gnuplotを移動させましょう。

 

先ほどの/usr/local/Cellar/gnuplot/5.2.5/binに戻って、そこにあるgnuplotファイルを/usr/local/binに移動させます。さらにcd⏎でホームフォルダに移動します。そのうえで、再び”gnuplot⏎”と入力するとどのフォルダでも立ち上がります。

まとめると以下のようになります。

 

cd /usr/local/Cellar/gnuplot/5.2.5/bin

→ /gnuplot/5.2.5/bin/フォルダに移動

 

mv gnuplot /usr/local/bin

→ ファイルの移動

 

cd

→ ホームフォルダに移動

 

gnuplot

→ gnuplotの起動 

 

 

 

Gnuplotで作図(Aqua Term、x11の切り替え)

どこのフォルダでも開くようになりましたのでGnuplotで作図をしてみたいと思います。

 

ターミナルで"gnuplot"と入力してGnuplotを立ち上げると、使用しているターミナル表示が出てくると思います。ふつうはこのような表示が出ると思います。

 

Terminal type is now 'aqua'

 

「その2」でインストールしているAqua Termが起動している状態です。

 

他にターミナルがどうなっているかは"set terminal"を打ち込んで確認してみてください。下記にようになっているとインストールに成功しています。

$ gnuplot

 

G N U P L O T

Version 5.2 patchlevel 5    last modified 2018-10-06 

 

Copyright (C) 1986-1993, 1998, 2004, 2007-2018

Thomas Williams, Colin Kelley and many others

 

gnuplot home:     http://www.gnuplot.info

faq, bugs, etc:   type "help FAQ"

immediate help:   type "help"  (plot window: hit 'h')

 

Terminal type is now 'aqua'

gnuplot> set terminal

 

Available terminal types:

             aqua  Interface to graphics terminal server for Mac OS X

       cairolatex  LaTeX picture environment using graphicx package and Cairo backend

           canvas  HTML Canvas object

              cgm  Computer Graphics Metafile

          context  ConTeXt with MetaFun (for PDF documents)

          domterm  DomTerm terminal emulator with embedded SVG

             dumb  ascii art for anything that prints text

              dxf  dxf-file for AutoCad (default size 120x80)

            eepic  EEPIC -- extended LaTeX picture environment

              emf  Enhanced Metafile format

            emtex  LaTeX picture environment with emTeX specials

         epscairo  eps terminal based on cairo

         epslatex  LaTeX picture environment using graphicx package

              fig  FIG graphics language for XFIG graphics editor

              gif  GIF images using libgd and TrueType fonts

             hpgl  HP7475 and relatives [number of pens] [eject]

             jpeg  JPEG images using libgd and TrueType fonts

            latex  LaTeX picture environment

              lua  Lua generic terminal driver

               mf  Metafont plotting standard

               mp  MetaPost plotting standard

Press return for more: 

             pcl5  HP Designjet 750C, HP Laserjet III/IV, etc. (many options)

         pdfcairo  pdf terminal based on cairo

              png  PNG images using libgd and TrueType fonts

         pngcairo  png terminal based on cairo

       postscript  PostScript graphics, including EPSF embedded files (*.eps)

          pslatex  LaTeX picture environment with PostScript \specials

            pstex  plain TeX with PostScript \specials

         pstricks  LaTeX picture environment with PSTricks macros

              qms  QMS/QUIC Laser printer (also Talaris 1200 and others)

          sixelgd  sixel using libgd and TrueType fonts

              svg  W3C Scalable Vector Graphics

          tek40xx  Tektronix 4010 and others; most TEK emulators

          tek410x  Tektronix 4106, 4107, 4109 and 420X terminals

          texdraw  LaTeX texdraw environment

             tgif  TGIF X11 [mode] [x,y] [dashed] ["font" [fontsize]]

             tikz  TeX TikZ graphics macros via the lua script driver

         tkcanvas  Tk canvas widget

             tpic  TPIC -- LaTeX picture environment with tpic \specials

          unknown  Unknown terminal type - not a plotting device

            vttek  VT-like tek40xx terminal emulator

              x11  X11 Window System interactive terminal

             xlib  X11 Window System (dump of gnuplot_x11 command stream)

Press return for more: 

 

途中で一度改行を押さいないと続きが出てこないと思います。前回「その2」でインストールしたAqua Termとx11が入っているか確認してください。

 

x11を使用する場合にはGnuplotのターミナル画面に下記を入力します。x11で反応がなければxtermを入力してみてください。 

"set terminal x11" 

"set terminal xterm"

 

注意!

x11は一度再起動しないと動きません。

管理人はずっと一気にインストールをしていて、どうやってもx11がGnuplotとリンクしなくて四苦八苦しました。PCをいったん再起動したらスッキリと連携できました。

"gnuplot: X11 aborted." - 明太子ソースに鮭フレークを添えて

 

 

Aqua Termを使用するとき、Gnuplotを立ち上げるとふつうは最初にAqua Termがたちあがるようです。もしx11と切り替えたいときにはGnuplotのターミナル画面に、

"set terminal aqua" 

と入力してください。 

 

How to installにあるように、splot sin(x*y)と入力してみましょう。

$ gnuplot

 

G N U P L O T

Version 5.2 patchlevel 5    last modified 2018-10-06 

 

Copyright (C) 1986-1993, 1998, 2004, 2007-2018

Thomas Williams, Colin Kelley and many others

 

gnuplot home:     http://www.gnuplot.info

faq, bugs, etc:   type "help FAQ"

immediate help:   type "help"  (plot window: hit 'h')

 

Terminal type is now 'aqua'

gnuplot> splot sin(x*y)

gnuplot> 

 

 こちらがAqua Termでの3次元グラフです。きれいです。

f:id:med2016:20181229220924p:plain

x11に切り替えてみましょう。set terminal x11と入力してください。

gnuplot> set terminal x11

 

Terminal type is now 'x11'

Options are ' nopersist enhanced'

gnuplot> splot sin(x*y)

gnuplot> 

するとターミナルがx11に入れ替わります。

同じようにsplot sin(x*y)と入力してみます。こちらがx11で描かれた3次元グラフです。やや荒いかもしれません。

f:id:med2016:20181229221534p:plain

 

x11の面白ところは、この図をマウスでいろいろな方向に回転することができるということです。上から覗き込むとこうなります。f:id:med2016:20181229221643p:plain

横から見たイメージです。

f:id:med2016:20181229221744p:plain

このようにAqua Termとx11はそれぞれいいところがありますので、必要に応じて使い分けてもらったらいいかと思います。個人的には両方あったほうがいいかと思います。

 

Gnuplotのアンインストール、再インストール

もしもうまくGnuplotがうまくインストールされていない場合にはGnuplotを一度アンインストールしてみるのも手です。

 

ターミナルから、

 

brew uninstall gnuplot 

 

を入力するとGnuplotがアンインストールされるはずです。

 

そして上述のようにもう一度、 

 

brew install gnuplot -–with-aquaterm --with-x11 

 

でインストールしてみてください。 

 

Aqua Termトラブル備忘録

今回のインストールで管理人が一番苦労したのがGnuplotがAqua Termと連携しないことでした。一度wxMaximaまでインストールしたのですが、Aqua Termで図を描けませんでした。

 

・wxMaximaがAqua Termを介して図を書いていない

 ↓

・wxMaxima抜きでGnuplotを立ち上げてもAqua Termで図が描けない

 ↓

・Gnuplotのset terminationでAqua Termがない

 

という順番で発覚しました。つまりはGnuplotとAqua Termの連携がうまく行っていないのですね。 

 

みなさん当たり前のようにAqua Termと接続しているのですが、管理人だけうまく行かず、x11と同じようにAqua TermのためにPCを再起動したり(認識されず失敗)、一度Macのクリーンインストールをやり直してから再インストールしたり(それでも失敗した)、パスを通そうとして苦戦したりと苦労しました。

 

最終的に上記の方法でGnuplotだけアンインストールして、それからGnuplotを再インストールするとAqua Termを認識するようになりました。

 

トラブルとしては結局解決策が明確ではないまま解決してしまいました。状況としてはこちらの記載にあるものと同じような状況です。備忘録としてとっておきます。 

13.1 10.4-3 公開迄

 

以下、GnuplotとAquaTermの関係についていろいろと検索してみました。個人的には結局はあまり上手く行きませんでしたが、何かのご参考になりましたら幸いです。

 

・手動でシンボリックリンクを張る必要の可能性

最新版のgnuplot-5.2.2をインストールをしてaquatermに描く様にターミ... - Yahoo!知恵袋

・AquaTerm が Gatekeeper によってブロックされている可能性 

【Mac AquaTermについて】 - MacBook Air にgnuplot とAquaTermをインス... - Yahoo!知恵袋

・LDFLAGSで認識させる(Xcode の SDKが/usr/local や /Library/Frameworks をデフォルトで見てないため?)  

Gnuplot で AquaTerm を使えるようにビルドする - sci

・AquaTermインストール後ライブラリにリンクを張るといいのかも 

ちっぷす:OS X 10.10 Yosemite で gnuplot, png, gd library をインストール

・ダウンロードしたMaximaのHow to installに書かれているように指定する

(管理人は上手くいきませんでした)

wxMaximaのインストール 2016mac - walkingmask’s development log

 

 

MaximaそしてwxMaximaのインストール

それでは最後のMaximaそしてwxMaximaのインストールを行ってみましょう。

 

MaximaとwxMaximaは一緒にインストールできます。

https://wxmaxima-developers.github.io/wxmaxima/

f:id:med2016:20181229150008p:plain

 

ダウンロードをクリックするとこの画面が出ます。

f:id:med2016:20181229150145p:plain

Macの場合は真ん中を押しましょう。ダウンロードがスタートします。

 

f:id:med2016:20181229150229p:plain

 

ダウンロードが終了しました。ファイルをクリックして展開します。

f:id:med2016:20181229150302p:plain



このようになります。すでにGnuplotはインストールしていますので今回は使用しません。MaximaそしてwxMaximaのインストールを行います。

f:id:med2016:20181229150504p:plain

このMaximaそしてwxMaximaを自分のPCの”アプリケーション”フォルダにドラッグアンドドロップしてください。

f:id:med2016:20181229151024p:plain

 

 

Maxima起動

このアプリケーションフォルダやLaunchpadからMaximaを開こうとすると警告が出てきます。

 

”Maxima.app”は開発元が未確認のため開けません。

 

となってしまい開くことができません。しかし、強引に開きましょう。

 

自分のPCのアプリケーションフォルダで"command"を押しながらクリックするか、トラックパッドの二本指クリック(ウィンドウズの右クリック)で開くを出し、クリックしてください。

 

Launchpadからは最初は開くことができませんのでご注意ください。

f:id:med2016:20181229151730p:plain



もう一度警告が出ますが、今回はOKボタンがでます。OKを押してください。

f:id:med2016:20181229150429p:plain

ターミナル.appを制御するアクセスを要求しています。はOKで進みましょう。

f:id:med2016:20181229154212p:plain

これでMaximaが起動できると思います。簡単な計算をしてみましょう。

 

最初に

1+1;

を入れていました。

次に2次方程式の一般解を解いてみました。

 

f:id:med2016:20181229154236p:plain

うまく行っているようです!

 

wxMaximaの起動とパス設定

次にwxMaximaを起動します。同じようにアプリケーションフォルダから右クリックで開くを押して立ち上げてください。

 

wxMaximaが立ち上がってこんな画面が出てきます。

f:id:med2016:20181229152159p:plain

起動時にいろいろとアドバイスをするウィンドウです。全部で20個ぐらいあるのでしょうか。一応全部見ましたので、次回から必要ないと判断。

下の「起動時にヒントを表示する」を外すと次回から表示は出なくなります。

 

wxMaximaの新規ウィンドウが出てきます。

f:id:med2016:20181229154544p:plain

早速1+1を入れると、あれ?

エラー表示が出てしまいます。

f:id:med2016:20181229154608p:plainwxMaximaがMaximaと接続していない、ということです。では接続しましょう。

wxMaxima>設定

に行きます。

f:id:med2016:20181229155552p:plain

設定の中のMaximaをクリックします。

Maxima本体のパス:

にMaximaとしか書かれていないと思います。自動でMaximaを探すとかいてある説明もありますが、自分で設定しなくてはいけません。

 

これをPCのアプリケーションフォルダのMaximaがある場所に設定しましょう。

となりにある参照からアプリケーションを開き、Maximaをクリックしてください。

f:id:med2016:20181229155650p:plain

このようになると思います。

 

 

 

あらためてwxMaximaに計算を入れるとこのようになります。

f:id:med2016:20181229155241p:plain

できました!


 

ここでこの記事トップの入力式を入れるとこのようになります。

f:id:med2016:20181229160243p:plain

plot3d([cos(s)*(3+t*cos(s/2)),sin(s)*(3+t*cos(s/2)),t*sin(s/2)],[s,0-%pi,%pi],[t,-1,1]);  

 

これでAqua Termと連携したGnuplotが立ち上がり、このような美しいグラフを書くことができました!

f:id:med2016:20181229143804p:plain

 

最後にちょっぴり微分方程式

では最後にMaximaを使って微分方程式を解いてみましょう。

f'(x)=2xが点(1,1)を通る場合の特殊解を求めてみました。 

(%i1) %q9_2:'diff(f(x),x)=2*x;

                                d

(%o1)                           -- (f(x)) = 2 x

                                dx

(%i2) %gs:ode2(%q9_2,f(x),x);

                                        2

(%o2)                           f(x) = x  + %c

(%i3) ic1(%gs,x=1,f(x)=1);

                                     2

(%o3)                        f(x) = x  + f(1) - 1

(%i4) subst(1,f(1),%);

                                           2

(%o4)                              f(x) = x

(%i5) 

 

diffは微分を表します。
'diffは微分方程式を表します。

%gsは一般解のgeneral solutionの頭文字です。

1階微分方程式で初期条件に対応する特殊解を求めるにはic1を使用します。 

1階微分方程式では積分定数は%cで表されます。 

substは代入です。最後に点(1,1)を代入してf(x)=x^2という結果になりました。 

 

 

同じ微分方程式をwxMaximaでやったらこうなりました。

f:id:med2016:20181230063814p:plain

やっぱりwxMaximaはきれいですね。でも出てくる中身はMaximaと一緒です。
 

 

 

まとめ

以上で、2013年のMacBookProにMaximaをインストールしてみました。いかがでしたか?

 

MacにMaximaをインストールするのは本当に敷居が高いのですが、一つ一つ問題を解決していくのは楽しい道のりでした。インストールの道のりは、3段階に分けて書かせてもらっています。

 

 

1)Xcode・Command Line Tools・gfortranのインストール

【MacでMaxima】シロウトでもできるXcode・Command Line Tools・gfortranのインストール【微分方程式への道・その1】 - 勤務医開業つれづれ日記・3

2)Homebrew・AquaTerm・X11のインストール

【MacでMaxima】シロウトでもできるHomebrew・AquaTerm・X11のインストール【微分方程式への道・その2】 - 勤務医開業つれづれ日記・3

3)gnuplot・MaximaそしてwxMaxima のインストール(本記事)

 

数学ソフトのMaximaや、2次元もしくは3次元のグラフを作成するためのアプリケーションソフトであるGnuplotを、自分の手持ちのPCにインストールする必要がある人はそれほど多いとは思いません。

 

でも管理人は数学に関しては専門外ですが、こんなことができたら楽しいだろうな、と思ってインストールをしてみました。

  

タイトルにある微分方程式はこれからいろいろと勉強をしていきたいと思います。現時点では公式をいろいろと計算して確認しているところです。

 

おまけ・管理人と数学について

管理人は医学部に行ったので、高校より上の数学は完全に独学です。誰とも数学の話をしたことがなく、本とネットだけで勉強しています。現代に生まれてよかった。

 

自分が数学の道に入っていたらどうなっていたのかな?

一体どんな世界が広がっていたのかな?

 

そう思うことが時々あります。数式を追っていると知的な好奇心が刺激されることが多々あります。

 

逆に数式を全く理解できない場合には(そういうことのほうが多いのですが)、自分の数学的な才能の無さにがっかりすることがあります。一人でやっているから無駄な努力をしたり、迷ったり、偏ったりしているのかな、とか思ったりもします。

 

でもおおむね数式をいじっているときは楽しいです。余計なことを考えずにすむという事はとても楽しく、パズルを解いているのと同じような感覚です。筋トレのときの精神状態に近いかもしれません。現時点では一般相対性理論を数学的に理解するのが目標で、テンソルとライプニッツ則を勉強中です。

 

当ブログは漫画ばっかり読んでいたり、ときどきマニアックな小説を読んだり、たまにPCの設定について記事を書いたりして、とりとめがないと思います。数学もふくめて管理人の趣味の一部です。ブログに来た人は、あまりに関係なさすぎてびっくりするかと思います。

 

ただただ、自分にとって楽しいことをブログに書いていけたらいいな、と思っています。


 

こんなマニアックなブログ記事をその3の最後まで読んでもらってありがたいです。読者の方いて初めて当ブログは成り立っています。

今後ともよろしくお願いいたします。


 

 

 

いつでも・どこでも・スマホで数学! Maxima on Android活用マニュアル 単行本 – 2017/12/19 梅野 善雄 (著) 

「ニガテな計算をもっとラクにしたい」 「解き方はわかるけど、計算が複雑で面倒」 「関数のグラフがどんな形なのかわからない」 数学を学んだことがある方ならだれでも、 こんな風に思ったことがあるのではないでしょうか? その悩みは、あなたのスマホが解決してくれるかもしれません。 手軽に数学の計算ができるAndroid用アプリ「Maxima on Android」を使えば、 あなたのスマホやタブレットが、学校・職場はもちろん電車でも布団のなかでも、 まさに「いつでも」「どこでも」頼れる優秀な数学ツールになります。 基本的な演算だけでなく、方程式の解法や微分積分の計算、 曲線・曲面などさまざまな関数のグラフの描画も、数式入力ひとつで行えます。 本書では、アプリの操作方法はもちろん、「日常のあらゆる計算がずっとラクになる」 Maxima on Androidの活用テクニックについて、ゼロから解説しています。 最新の数学ツールを持ち運べる便利さを、体感してみよう。 ◆電子版が発行されました ◆詳細は、森北出版Webサイトにて 

 

一般相対性理論を一歩一歩数式で理解する 単行本 – 2017/3/27 石井 俊全 (著) 

いわゆる相対性理論にはアタマに「特殊」と「一般」とつくものがあります。「一般」というのは簡単に言うと、どのような条件でも成り立つ理論という意味であり、「特殊」な状況を切り取った理論より、はるかに複雑で難解なものになります。いまからおよそ100年前、アインシュタインはこの「一般相対性理論」を導きました。これは表面的な概念だけで語れるようなものではありません。それを表現する言語は「数式」以外にないのです。本書は、相対性理論を理解するのに必要な知識を獲得するところから始まり、はじめから一歩一歩着実に、「一般相対性理論」を数式で理解できるよう、徹底的に詳しく解説していきます。 

 

 

 

 

 

wxMaxima HTML export

 

 

 

 

ご参考になりましたら幸いです。

 

 

 

 

 

 

 

 

 

Copyright © 2016-2018 kaigyou-turezure All Rights Reserved.