Code
using Plots
plot(sin,
x->sin(2x),
0,
2π,
=false,
leg=(0,:lavender)) fill
数値計算への新たな接近
司馬博文
9/05/2020
7/04/2024
A Blog Entry on Bayesian Computation by an Applied Mathematician
$$
$$
Julia は Why We Created Julia の文書と共に,2/14/2012 に公開された科学計算向けの言語である.論文 (Bezanson et al., 2017) が発表されて後,2018 年にはバージョン 1.0 がリリースされた.
現在の最新は,12/26/2023 リリースの v1.10.0
である.
Quarto は Jupyter を通じて,Pytho, R だけでなく Julia もサポートしている.1
Quarto で Julia を始めるために,最も簡便なインストール方法は こちら.
まずは Julia をインストール
すると,julia
コマンドで対話的セッションを開始できる.これを Julia では REPL (Read-Eval-Print Loop) と呼ぶ.
続いて,Quarto で julia
ブロックを動かすには,IJulia
パッケージをインストールする.次を REPL で実行する:
これで,Jupyter Notebook で Julia を使うことができる.2
Revise.jl
も追加すると,Julia セッションを再起動するためが省ける
Jupyter Cache も追加すると,ソースが変わらない限りその出力がキャッシュされ,再実行が控えられる.
Julia を始めるにあたって最も心強いのは,Julia 独自のパッケージマネジャー Pkg
の存在である.
julia
キーワードで立ち上がる対話的実行環境 REPL(第 [@-sec-REPL] 節)において,]
キーでパッケージモードに入り,add
でパッケージを追加する.
でパッケージの情報が表示される.
でアップデートが可能である.
パッケージ管理システム Pkg
が提供する環境分離システムの単位を プロジェクト という.3
generate
は新たなディレクトリと,Project.toml
と src/MyPackage.jl
を作成する.
activate .
はパスを引数に取り,そのディレクトリにある Project.toml
を有効化する.
引数なしで activate
を実行することで,デフォルトの環境に戻る.
は,working directory にプロジェクトファイル(Project.toml
と Manifest.toml
)を作成する.
何よりコードの見た目の特徴に,LaTeX コマンドと数学記号が使える ことがある.
law tex を打って tab を押すと処理されるのである!
加えて,プロットのタイトルにも使える:
これと合わせ,変数名にはUnicodeが許される.÷
, ^
などの使用が直感的に行える.
また,変数の前に数値をつけると暗黙に乗算と解釈する.
そのほかにも関数定義など,数学的にも直感的に読める,文芸的プログラミングの精神が込められている言語である.
などのコマンドが使える.
Base
クラスに属する.julia
コマンドで起動される
—project
—project=@.
の略記..
にある Project.toml
によるプロジェクトを有効化する,JULIA_PROJECT
を @.
に変更することと等価.Ctrl+D
かexit()
で終了ans
:直近の evaluated term が格納されて居る.5つのモードがある.
?
で発動.backspace で戻る.使いやすい!]
で発動.標準では GitHub のリポジトリ上の任意のモジュールがインストール可能.;
で発動Pkg
]
で package mode に入る.
st
(= status
の alias)
Status ~/.julia/environments/v1.5/Project.toml
rm
(= remove
の alias)
up
(= update
の alias)
gc
(garbage collection)
Config file としては TOML 形式を採用している.可読性も高い.
ディクショナリ構造に明確にマッピングされるように設計されている
Tom’s Obvious, Minimal Language
TOML の構文は,大部分がキーと値の組
key = "value"
[テーブル名]
# コメント
の3種類からなる.
Project.toml
Manifest.toml
pkg 管理モードのコマンド
activate .
—project=@.
オプションで julia から実行する.Julia package に必要な要素は次のとおり.
pkg 管理モードのコマンド
generate MyPackage
using MyPackage
と MyPackage.greet()
で呼べる.