タグ

ブックマーク / www.cas.cmc.osaka-u.ac.jp/~paoon (9)

  • julia について

    小さな問題では余り気にならないが、少し規模が大きくなってくると、少しでも計算が速い方がいい. そのあたり、ごくごく簡単に、気づいたことを書いて» 数値解析のための個々の話をつなげるために、ここで一つ、Julia を使って、「通しで」いろいろやってみよう. 対象は、ごく簡単なものだけれども、» 様々な情報を入手 いつでもヘルプ Julia 環境ではいつでも、先頭に ? をつけて ?命令 とするとその命令のマニュアルをその場で読むことが出来る. 例えば、行列» Package “Interact” を使ってみよう Julia の Jupyter 環境などでは Interact package を使うと,パラメータをマウスでコントロールしながら計算などを行わせることができる. これを試してみよう» 2018.05 NLsolve package の仕様変更に伴う修正. 以前のコードが動かなくなっ

    julia について
    mnru
    mnru 2017/12/13
  • 超入門 · julia について

    様々な情報を入手 いつでもヘルプ Julia 環境ではいつでも、先頭に ? をつけて ?命令 とするとその命令のマニュアルをその場で読むことが出来る. 例えば、行列の指数関数(後述する)である expm() について、 ?expm としてみよう. 以降、困ったらまずこの機能を使ってみよう. ドキュメント jupyter 環境では、上の “Help” 経由で Julia 自体やそのパッケージについてマニュアルを web 経由で参照することが出来る. 気軽に見てみよう. あと、日語で書かれていて、かつ、クリエイティブ・コモンズライセンスで公開されている、分かりやすい解説資料 JuliaBook C89版, C90版 がある. 入手して読んでおくと、大変大変ためになる. 動作をみてみる コマンドや式が実際にどのような動作しているのかを少しだけ詳しく見てみたければ、そのコマンド等の前に @cod

    mnru
    mnru 2017/11/10
  • Plots/GR: グラフ package のおすすめ · julia について

    Julia にはグラフを描くためのデフォルトの仕組みは(いまのところ?)無く、自分の好きな Package を選んで使ってね、というのが現状だ. そういう Package の有名ドコロの名前を挙げると、 Gadfly ゴージャスだが、遅くない? Gaston gnuplot を使う. 軽くて速いけど、メンテが止まっているので、普通のユーザには使いにくいなあ. GLVisualize 3D 専用の可視化ツール、というところかな. GR GR framework を使う.Plots のバックエンドとして、稿のお勧め. PGFPlots LaTeX の pgfplots package を使う. 大変理論的にグラフを描けるが、作業はちょっと辛いかも? PlotlyJS Plotly のようなグラフを描ける.Plotly のアカウントは不要のようだ. Plots 他のツールをバックエンドとした、

    Plots/GR: グラフ package のおすすめ · julia について
    mnru
    mnru 2017/11/01
  • Applied Mathematics 7 (2016)

    Julia とは何か ここで紹介する Julia とは、MIT とか NYU あたりの人たちが開発中の,2012年に公開が始まった,科学技術計算の専用言語のこと. 家 web にマニュアルやらチュートリアルやら動画やら、大変多くの様々な資料があるので、困ったらまずはここをみると良い. そしてその言語の能力であるが、 開発者らが欲張りだと自認するだけあって,後発の強みも活かして, 科学技術計算に便利な文法になっている 科学技術計算に便利なコマンドやライブラリが最初からある 計算が速い 1 言語設計が近代的なので,プログラミングが随分楽 という、大変多くの利点がある言語になっている. 開発版ですらまだバージョン 0.5 という未完成な状態ながら,これからが楽しみな言語だ. 今のところ?2 JIT compile, つまり「実行時にコンパイルして動かすスタイル」をとっているので,使い勝手的には

    Applied Mathematics 7 (2016)
    mnru
    mnru 2017/07/21
  • 配列の添字を自由にする(構造保存解法コードサンプル有り) · julia について

    Julia では配列の添字は 1 から始まる 1 ことになっていて,しかも変えられない. 1から始まるこのルールは線形代数を始めとする多くの数学の場面で使い勝手の良いものだが,かといってそういう場面ばかりでもないよなあ. これが自由に変えられれば便利なのになあ,ということは皆が思うところで,そのあたりを解消しようというパッケージもいくつかある.特に柔軟そうなものとして FlexibleArrays というのがあって,仕様や source をみるとかなり力が入っている. ただまだ開発途中で,最小限の機能もまだ実装されていないし 2 , 結構大きなバグ 3 もある. こんな状況なので,言語仕様やパッケージに頼れるようになるのは少し先になりそう. 仕方ないので急場しのぎを考える てきとー その1: マクロで数字を書き換える 以前のコードで使っている方法なんだけど,見えている数字を実際は違う数字に

    配列の添字を自由にする(構造保存解法コードサンプル有り) · julia について
    mnru
    mnru 2017/07/20
  • 魔法の加速法 · julia について

    意外に知られていない, 加速法ってやつについてちょろっと書いとこう. ほんのわずかな計算コストでより良い情報を引き出せる可能性が結構高いオトクな技法で、そういう意味でまあ魔法みたいなもんだな. 知っておいて損はないと思うぞ. で、加速法とは何かっつうと、収束する 1 数列をもとにして 「もっと速く収束する数列を作る」 数学的な方法、っつうことになる. そして「計算なり観測なり実験なりを進めて、収束していると期待される数字の列がデータとして得られるんだ.この収束先が求めたい値なんだ」 という、収束先がわからない状況が、応用として想定されるシチュエーションだ. で、そのまま計算なりを進めるよりも、手元に既にあるデータを加速法で変換したほうが低コストでより良い収束先の近似値が得られるかもよ? というのが加速法の使い方、ということになる. そして実は、加速法ってのはたくさんある 2 んだけど、ここ

    魔法の加速法 · julia について
    mnru
    mnru 2017/07/20
  • 高速な計算にむけて · julia について

    小さな問題では余り気にならないが、少し規模が大きくなってくると、少しでも計算が速い方がいい. そのあたり、ごくごく簡単に、気づいたことを書いておこう. そもそも論でもっと速い計算法が他にあるかも? 計算量が画期的に小さいアルゴリズムが他にないか、が最初に考えるべきことだろうなあ. 例えば、ガウス が 10歳のときのエピソードで有名な、整数を小さい方から足していくだけの問題 \begin{equation} \sum_{k=1}^n = \frac{n(n+1)}{2} \end{equation} は、左辺の式のとおりに計算すると $n-1$ 回の足し算が必要だけれども、右辺ならば足し算が 1回、掛け算が 1回、割り算が 1回 で済むので、大きな $n$ では右辺のやり方で計算する方が計算量が小さい. 「え? 当たり前だろ」と思うかもしれないけれども、これまで計算速度のことで相談された経験

    高速な計算にむけて · julia について
    mnru
    mnru 2017/07/18
  • 自分の PC にインストール · julia について

    (注: 2016.11 現状に合わせて更新) 普段の開発環境をどうするかにもよるし,使っている OS にも依存する話になってしまうので,とりあえず,以下の状況を想定して説明しよう. OS は Windows. Julia のインターフェイスは主に jupyter で ( = ウェブブラウザ で ). ライブラリとか Python とか,細かいことはよくわからないのでなるべくインストーラにお任せしたい 「Mac や Unix などの他の OS にインストールしたい」とか、 「なるべくインストーラを使わずに自力でインストールしたい」など場合もそう難しくはない. そういうケースは、家 web のインストールドキュメント や下記の例を参考にやってみると良いだろう. インストーラのダウンロード 家 web > downloads から、Julia (command line version) の

    自分の PC にインストール · julia について
    mnru
    mnru 2016/08/13
  • 配列の添字を自由にする · julia について

    Julia では配列の添字は 1 から始まる 1 ことになっていて,しかも変えられない. 1から始まるこのルールは線形代数を始めとする多くの数学の場面で使い勝手の良いものだが,かといってそういう場面ばかりでもないよなあ. これが自由に変えられれば便利なのになあ,ということは皆が思うところで,そのあたりを解消しようというパッケージもいくつかある.特に柔軟そうなものとして FlexibleArrays というのがあって,仕様や source をみるとかなり力が入っている. ただまだ開発途中で,最小限の機能もまだ実装されていないし 2 , 結構大きなバグ 3 もある. こんな状況なので,言語仕様やパッケージに頼れるようになるのは少し先になりそう. 仕方ないので急場しのぎを考える てきとー その1: マクロで数字を書き換える 以前のコードで使っている方法なんだけど,見えている数字を実際は違う数字に

    配列の添字を自由にする · julia について
    mnru
    mnru 2016/07/27
  • 1