divrot in an infinitesimal box

Julia, python, algorithmのメモです

論文の図をjupyterで、、、

書くほどでもないが、 plt.savefig('hogepng', format='png', dpi=1000) みたいにするqualityの高い図が生成される。epsも可能。

Julia 論理配列の操作

論理配列の演算は、&や|である。&&や||ではない

Python / Jupyterでのmoduleを自動再読み込みする

Jupyterでテストをして最中なんだけど、エディターでモジュールの変更をして、反映させたいというとき、 もう一度 import hoge とやってもだめである。 そこでautoreloadを読んでおくと、ちゃんと反映される %load_ext autoreload %autoreload 2 http://ipyt…

Julia: 数値をまるめるいろいろ

Juliaで数値をまるめる関数は四つくらいあるが、微妙に違いがある。 厳密には以下 http://docs.julialang.org/en/release-0.4/manual/mathematical-operations/#man-rounding-functions を参照してもらいたいが、試しにN/2を各種のまるめ関数で実行すると以…

Julia ためになるリンク

ためになるなあ。 What's wrong with this Julia?

PyPlot (imshow)

imshow Winstonは普通のグラフはまあ許容レベルですが、マップになるとやはり論文出版レベル とまではいきません。なので、PyPlot呼び出すしか無いという実感です。 pyplotの細かい設定はpythonと同じなんだけど書き方が違う http://qiita.com/tg-git/items/…

Julia - arrayの操作(II)

append, push, shift, unshift 反転

Julia mpfit (python版)をbindする

さてmpfit (python)が使えるようになった所で、Julia用にラップしたい。 いまのところ、PyCallでの関数とかDictionaryの受け渡しが分からないので、 関数とmpfit受け渡し用のpython interfaceを用いて実装している(ちょっといまいち) python interface 部 Ju…

Julia PyCallで使うpython

どうもUrekaとかCanopyとか余計なものが入っていたせいでよくわからなく なったのでMac python一本にしました。そしたらPyCallするとkernelが落ちてしまう ようになった。PyCallの呼び出すpythonを指定してBuildしなおしたらなおったのでメモ。 julia> ENV["…

python mpfitをつかう

非線形フィットの定番、マルカート法。 すばらしいと評判のmpfitのpython版を試す。 インストール ここからダウンロードして展開して、環境変数PYTHONPATHに追加するのみ https://code.google.com/p/astrolibpy/downloads/detail?name=mpfit_2013.tar.gz&can…

Healpy 作図

Juliaでは作図が大変なので、Healpixの作図はpython/Healpyで行ったほうが良いかもしれない。 こんな感じで作図可能。 flip="geo" 球の外側からみた表示。もともとHealpixはCMB用なので球の内側から見た表示がデフォルト。 cmap=plt.cm.pink カラーマップは …

Julia - arrayの操作(I)

arrayの操作はいろいろあるので、まとめるのが難しいがメモ。 マスク マスクはpythonと同様にできますが、> でなくて .>であるとか、==ではなくて.==であるとかに注意が必要である。 一次元配列いろいろ(I) 一次元の配列は、1d column vector (N-element arr…

Julia - 内挿 (Interpolations)

InterpolationはInterpolations moduleを用いることで可能。 Interpolationは頻繁に使うので最下部にGist例を示しておく。 特に間違いやすいのが、 Interpolations.interpolate((t,) ... の、このtupleの部分 (t,)と書くというところである。

Julia - moduleを使う

moduleを使用するための幾つか pathを設定する module hoge を作成し、そのmoduleを他のjuliaファイルやjuliaのコンソールなどから 呼び出したいとき、見つからないと怒られる。これはjuliaがmoduleを探すpathを指定することで解決するが、 複数の解決方法が…

Julia - Healpixを使いたい

JuliaでHealpixを使いたい!! 一つの解はHealpyをbandleする。juliaのみでやりたいなら一つは開発中らしいHealpix.jlを使うこと。ただしたとえばpix2angとか重要な機能がまだ実装されていない。 これは簡単。両方のやり方のメモ Healpyを使う Healpyがイン…

Julia - fortran 90をwrap (bind) する

FortranのコードをJuliaに変換するのは、ものによっては結構しんどいので、juliaからfortran (90)を呼び出そうという例です。 最も簡単な例 まず、ただ入力値をprintするだけのsubroutine printintを格納したfortran90 module testfを用意します。 module fo…

Generalized Coltrane Changes

本記事は、 divrot-hajime.tumblr.com の http://divrot-hajime.tumblr.com/post/125174466518/generalized-coltrane-changes http://divrot-hajime.tumblr.com/post/125341867738/generalized-coltrane-changes-%E3%81%AE%E5%AE%9F%E8%A3%85 初出: Jul 28th…

Julia - install, package, and emacs

Juliaを始めることにした(=つまりJuliaが使われることに賭けることにした) - Macにインストール Mac版の単体Julia 0.4.2をインストール。 これまでのpythonの仕事環境としては、ターミナル上でemacs開いて書いて、実行するという古いスタイルなので、慣れ親…