Julia言語 ざっくりメモ †まだわからないことが多い. 基本 †起動とか終了とか †Ubuntu ではインストール後に terminal で julia と入力すれば始まる. $ julia _ _ _ _(_)_ | A fresh approach to technical computing (_) | (_) (_) | Documentation: https://docs.julialang.org _ _ _| |_ __ _ | Type "?help" for help. | | | | | | |/ _` | | | | |_| | | | (_| | | Version 0.6.2 (2017-12-13 18:08 UTC) _/ |\__'_|_|_|\__'_| | Official http://julialang.org/ release |__/ | x86_64-pc-linux-gnu julia> "?"を入力すれば上の "julia>" の欄が help?> に自動で変わり,コマンド名を入力すれば説明書きが出力される. コメント †# この行はコメントです (1行) #= "#= *** =#"で囲めば 複数行コメントアウトできる =# パッケージの追加など †v0.7.0 未満のバージョンでは,Pkg.add("hoge") でパッケージをインストールする. Pkg.add("PyPlot") 確認やアップデートは下記のように実行する. Pkg.status() Pkg.update() v0.7.0 以降は,Pkg を使うときは事前に using Pkg をすることが必須になった.v0.7.0 では警告を出してくれるが,v1.0.0 ではこれがないと julia> Pkg.add("IJulia") ERROR: UndefVarError: Pkg not defined となりエラーが出る. (v1.0) pkg> add GMT のようにしても追加ができる. 図の描き方が多様 †上記のように Pkg.add("Plots") でインストールしたら, using Plots でこのパッケージが利用できるようになる.他にも using Gadfly using PyPlot のような可視化ツールが見られる.
Plots は Plots 自体に図を描く機能はなく,入力に応じて描画機能を持ったバックエンドが働く. gr() # Plots.gr() に同じ pyplot() のようにして切り替えられる. using Plots: Plots Plots.plot() # この場合 plot() は not defined とする.import Plots でも良いけど,using で統一した方が良いと思う. 配列の要素は1から †0からではない.Fortran や MATLAB と同じ.ただし,配列を示す括弧は()ではなくて[]. セミコロン ; の役割 †これも MATLAB と同じ.式の最後に;をつければ結果が出力されない. julia> A = 1. 1.0 julia> A = 1.; ただし, julia> include("filename.jl"); のように,include でコンソール,REPL で直接実行しない場合は,ファイル内のセミコロンはあってもなくても関係ない. 1行の中で julia> A = 1., B = 2., ERROR: syntax: invalid assignment location "1" のようにはできず, julia> A, B = 1., 2.; はOK.このへんはPythonと似ている. 同様のことをMATLAB的にやるとすれば下記の通り. julia> A = 1.; B = 2.; これは,; 自体に特別な意味があるわけではなく,単にステートメントの区切りで ; で終われば最後のステートメントが空になる,という意味? 型の確認 †typeof(A) か isa(A,型の名前) でわかる. julia> typeof(A) Float64 julia> isa(A,Int64) false julia> isa(A,Float64) true julia> A = 1; isa(A,Int64) true 変数が定義されているか確認 †isdefined は,v0.7.0以降引数が2つ必要になった. @isdefined var_name isdefined(Main, :var_name) |