MATLAB移民のためのJulia tips

MATLAB移民のためのJulia tips

何も考えずに速く計算できないのならば、何もやりたくない。

サンプル

Stochastic block model

とある身内のご要望にお応えして、stochastic block model (SBM)を生成するコードを載せます。 Poisson次数分布の、一番基本的なSBMを生成します。 Affinity matrix (p_rs)の要素を陽に指定して、任意のブロック構造を作れます。 cinとcoutは、rescaleされた…

グラフの隣接頂点配列(速さ比較)

速度を比べっこ。 ランダムグラフのedgelist(links)を作ってみて、「各頂点の隣接頂点の配列」を要素に持つ、入れ子配列(nbsimpleとnb)を2通りで作ってみる。 links = round(Int64,10000*rand(50000,2)+1) links = vcat(links,hcat(links[:,2],links[:,1]))…

Indicator行列:broadcast

Indicator行列 例えば、各要素は1〜3番目のどれかが1、他は0になっていて、 要素1:1番目が1、他は0 要素2:3番目が1、他は0 要素3:2番目が1、他は0 要素4:1番目が1、他は0 というとき、 1 0 0 0 0 1 0 1 0 1 0 0 という行列。 作り方…

深さ優先探索(DFS):グラフの連結成分

どこにでも書いてある、DFSで連結成分を出してくるという操作のサンプル。 特にJuliaだから特殊ということはないはず。 枝の集合linksが与えられたときに、連結成分の頂点CCnodesを返す。 Stackでやる方法 function dfs_stack(nb,root) visited = Int64[] st…