プログラミング/julia

(445d) 更新


公開メモ

目次

噂の julia をやってみる

julia を Mathematica 代わりに使うと便利なのかどうか、試してみようと思います。

jupyter 環境を用意する

jupyter は多言語対応の REPL (Read-eval-print loop) 環境で、 ブラウザからアクセスできるのでかなり便利。

julia を jupyter から使うとグラフなども見やすく表示できるし、 結果を Gist などに保存して、履歴を管理したり一般に公開することもできる。

juliabox

まずは自分でインストールするよりも juliabox で試すのが良いみたい。

https://juliabox.com/

juliabox.png

サイト上部の "Log in with XXX" のところからログインしないと何もできないので始め面食らうけれど、 ログインしてしまえばすぐに使える julia on jupyter が手に入ってとても便利。

自前で jupyter & julia を容易するのは思った以上に面倒で、 人の jupyter notebook を再現しようとしてもやれアレが足りない、 これが足りない、となって凹む。

公開する jupyter notebook はなるべく juliabox 標準に合わせるのが吉なのだと思う。

どういう原理で動いているのかとか、どういう制限があるのかとか、まだよく分かってない。。。

自分で julia を入れてみる?

結構いろいろそこそこ大変。

julia-on-jupyter.png

環境

Debian と Ubuntu で試しています。

内容

情報源

julia on jupyter の使い方

インストール方法と使い方との記事を分けよう(意気込み

  • ノートに目次を追加する -> nbextention の Table of Contents を使う

各種ライブラリ

https://github.com/JuliaNLSolvers とか

Mathematica でやった計算の後追いをやってみた

プログラミング/平方根を使わずに距離を求める

と同じ計算を julia でやってみます。

雑感

  • plotfunc2d のようなヘルパーを用意することで、julia でもかなり楽に「関数のグラフ」を書ける
  • ただ、普通にやったのではグラフ描画時にメッシュ間隔が一定になってしまうため、グラフのクオリティを上げようとすると計算時間が非常に長いことかかってしまう
    • Mathematica は複雑な形状の部分のみメッシュを細かくするような最適化が働くので有利だ
      mathematica-mesh-optimization2.png julia-constant-mesh.png
      Mathematica では「カド」にメッシュ点が来るけれど、何も考えずに julia でやるとメッシュ点が「カド」を外してしまうので、必要以上にメッシュを細かくしないとキレイなグラフにならない。
  • それ以外にもいろいろ、まあ、julia でもできなくはない。できなくはないけど、、、Mathematica が使えるなら Mathematica を使うかなあ・・・
  • julia の Plots を使っている限り、ちょっと表現力不足を感じる
    • PyPlot を直接呼び出せば違うのかもしれない???

コメント・質問





Counter: 2620 (from 2010/06/03), today: 2, yesterday: 0