環境 ArchLinux PostgreSQL 11.5 Julia 1.1.1 LibPQ.jl 0.11.0 Tables.jl 0.2.10 Docker で PostgreSQL を立ち上げる $ docker run -d --name postgres -e POSTGRES_PASSWORD=test -p 5432:5432 postgres:11.5 Julia から PostgreSQL に接続する julia> usin…
環境 ArchLinux MySQL 8.0 Julia 1.1.1 MySQL.jl 0.7.0 JSON.jl 0.21.0 Tables.jl 0.2.10 Docker で MySQL を立ち上げる $ docker run --name mysql -e MYSQL_ROOT_PASSWORD=test -d -p 3306:3306 mysql:8.0 # 以下 MySQL 8.0 の場合は必要 $ cd ~/.julia/pa…
2つの配列を結合するときは何故 push! よりも append! が推奨されるのか? sizehint! を何故使うべきなのか? とかあたりの話。今回は一次元配列 (Vector) のみの話で、多次元配列は扱いません。 最近今更ながらデータ構造とアルゴリズムを勉強しているのです…
ふと「そういえば、Juliaのリダクション (reduction) は分かりづらかったなぁ」と思い出したので複数の変数をリダクションする方法と自前のリダクション演算子(reduction operator, reducer)の作り方について紹介します。 環境 Julia での for 文の並列化 そ…
Julia 1.0 が出てから半年経って Julia に慣れてきた頃なのか、私のパッケージの作り方の記事が地味に見られているようなので、パッケージを作るときに知っておいて損はない Requires.jl について紹介します。 goropikari.hatenablog.com 環境 三種の神器 Re…
PackageCompiler.jl の README によるとついに Plots.jl がコンパイルできるようになったらしいので試してみました。 github.com 環境 Plots.jl をコンパイルする スピードを比較 Linux デフォルト PackageCompiler Windows 10 デフォルト PackageCompiler m…
環境 Julia 1.1.0 OS: ArchLinux IJulia で ; から始めると Shell mode になるので Bash*1 コマンドが使えるけれども、2行以上書くと実行できなくなる。 run を使えば長々書くことも出来るけれども、それは面倒だなぁというときは以下のマクロを定義する。 #…
環境 Julia 1.1.0 Julia の中から Julia を実行する Julia を使っていると、 Julia の中から run を使って Julia を起動したいと思うことがあると思います。 このように run(`julia ex.jl`) ただこの方法はすでに julia へ PATH が通っていれば良いのですが…
環境 キーボードからの入力 任意の個数の入力を受ける 特定の文字が入力されたら停止する方法 Ctrl-D で停止する方法 環境 OS: ArchLinux Julia 1.0.5 ※ 2019/12/22 Base.prompt の例を追加 キーボードからの入力 Python3でいうところの input はJuliaではBa…
Aizu Online Judge (AOJ) を Julia で遊ぶための野良パッケージを作ったので使い方を紹介します。 AOJ とは? このパッケージで出来ること・出来ないこと 環境 インストール 使い方 問題を選ぶ プログラムを作る サンプルでテストする 判定する 制限時間を変…
環境 Julia 1.0.1 string(EnumName(数字)) とするとその数字を割り当てられた変数の名を文字列で取得することができる。 julia> @enum Fruit apple orange kiwi julia> apple apple::Fruit = 0 julia> orange orange::Fruit = 1 julia> Int(apple) 0 julia> …
環境 入出力先を変える 使いどころ(?) 参考 環境 OS: ArchLinux Julia 1.0.1 入出力先を変える Python だと stdout を気軽に上書きして標準出力先をファイルにできますが、Julia の場合はそれができません。 julia> f = open("out.txt", "w") IOStream(<file out.txt>) jul</file>…
julia-vscode v0.11.0 から Julia 1.0 に対応したのでこの記事を読む必要はありません。master ブランチのものを入れたい場合は手順だけ参考になるかもしれません。(2019/1/29) 現状、VSCode の Marketplace から入れることの出来る Julia の拡張機能を使う…
どこで使うと便利なのかわからないけれど、一応できたのでメモ。 公式ドキュメントだけでこの方法を思いつく人は相当訓練された Julian だと思う(思いたい)。 Julia 1.0 でのやり方 f.(arg...) の挙動を変えたい場合、broadcast でなく、broadcastedをオーバ…
環境 無駄な method を消す pretty-print 落とし穴 参考 LICENSE 環境 Julia 1.0 無駄な method を消す Julia といえば多重ディスパッチが有名ですよね*1。 julia> f(x::Int64) = println("Intだよ") f (generic function with 1 method) julia> f(x::Float6…
Julia でパッケージを追加する場合、pkg mode で (v1.0) pkg> add Example などとすれば良いですよね、公式パッケージ*1の場合は。 野良パッケージの場合は次の例のように github の URL を打ち込まないといけません。 (v1.0) pkg> add https://github.com/g…
先日、DiracNotation.jl という拙作が METADATA.jl にマージされ、野良パッケージから公式パッケージ*1へと昇格しました。 Julia 1.0 が出て以降では初めてパッケージを新規登録したので不安もあったのですが、とりあえず無事にマージされてほっとしています…
格安静電容量無接点式キーボード NiZ Plum 75 を購入してから2ヶ月弱経ちましたが概ね満足しています。 しかし、一つ問題があります。それはキートップに印字があること! 単純に無刻印に憧れがあったということもありますが、私は Dvorak 配列を使っている…
Jupyter notebook って便利ですよね。私も数式の入ったメモを入れたい場合や、コードとプロット結果を一緒にしたいときにはよく利用しています*1。 ただ一つ問題があって git との相性が恐ろしいほどに悪いことで有名ですよね。たった1行コードを追加しただ…
環境 OS: ArchLinux Julia 1.0.2 型そのものを関数に渡す 整数型の変数とかではなく Int とか型そのものを引数に取る関数を作りたい場合、 hoge(::Type{Int}) = println("Hello World!") の様に引数にとりたい型を Type でくるんでやればいいらしい。 julia>…
目次 目次 TL;DR 環境 自作のパッケージ オリジナルパッケージの雛形を作る テストを書く 自分のパッケージの中で他のパッケージを使う場合 Julia 以外のライブラリに依存する場合 UUID GitHub に公開する MyPackage に PATH を通す METADATA.jl に登録する …
この記事は Qiita に 2018/08/04 に投稿したものです。2020/3/26 移行しました。 目次 目次 できるようになること 環境 基本 IOContext 出力をきれいに魅せる カラフルにする 文字幅 小数・複素数の表示をきれいにする Base.alignment 1つ目の例を再現 配列 …
購入まで 打ち心地 ファームウェアのアップデート キー配置を変更 参考 追記 購入まで 私は普段キーボードは HHKB Lite2 と Mistel BAROCCO MD600 (赤軸) を使っています。 MD600 は今年の4月より使い始めましたが、最近は MD600 の押下圧に慣れてきたせいで…
タイトルの ”複合n進数” というのは便宜上の用語で正式名称は知らない。 ここでは各桁ごとに繰り上がる数が違う数字列のことを "複合n進数" と呼ぶこととする。 例えば、 の0桁目*1は2進数、1桁目が3進数だとすると 00, 01, 10, 11, 20, 21 と数が増えていく…
目次 目次 環境 QISKit を使う利点 QISKit を使った場合の CNOT ゲート QISKit を使った場合の Toffoli ゲート ゲートの省略 QISKit が空気を読んでくれない時 恒等演算子への変換編 SWAP ゲート編 まとめ 余談 参考 Jupyter Notebook 環境 OS: ArchLinux Py…
環境 OS: ArchLinux import sys, qiskit print(sys.version) print("qiskit version:", qiskit.__version__) 3.6.5 (default, May 11 2018, 04:00:52) [GCC 8.1.0] qiskit version: 0.5.4 OpenQASM 文法で書いた文字列から回路を作る from qiskit import loa…
下記のQiitaの記事を読んで実機でも試してみたいと思ったので試してみた。 qiita.com ※注意: 私は量子コンピュータの専門家ではありません。以下の内容は間違って入る可能性が十分にあります。 追記: 以下では Toffoli, CNOT, SWAP を自分で定義していますが…
import sys, qiskit print(sys.version) print("qiskit version:", qiskit.__version__) 3.6.5 (default, May 11 2018, 04:00:52) [GCC 8.1.0] qiskit version: 0.5.4 from qiskit import ClassicalRegister, QuantumRegister from qiskit import QuantumCir…
この記事は Qiita に 2018/01/12 に投稿したものです。2020/3/26 移行しました。 Youtube で Intel の Tim Mattson 氏の OpenMP の解説動画 を見ていて、Juliaでもスレッド並列やってみるかと思い立ったので試してみました。 ちなみに私は Julia使用歴 2 年 …
この記事は Qiita に 2018/01/07 に投稿したものです。2020/3/26 移行しました。 Juliaの式をLaTeXコマンドに変換してくれる Latexify.jl を紹介したいと思います。 Latexify.jl は Mathematica でいったらTeXForm, Maxima でいったらtex, MATLAB でいったら…