# Nは乱点の数を決める引数 # f1 は黄金比の値をデフォルトとする値。この値を黄金比から変えると格子としての良い性格がなくなる # k=1をデフォルトとし、フィボナッチ格子を描くためにはk=1。ただし、その背景にあるらせんを描くためにはこの値をいじって、らせん上の点の数を増やす必要がある fib.lattice.S2 <-function(N,f1=(sqrt(5)+1)/2,k=1){ f2 <- f1-1 # 黄金比はx^2-x-1=0の1つの根。もう1つの根を取り出す P <- 2*N+1 i <- seq(from=-N, to=N,by=k) theta <- asin(2*i/(2*N+1)) phi <- 2*pi*i*f2 x <- cos(theta)*cos(phi) y <- cos(theta)*sin(phi) z <- sin(theta) return(cbind(x,y,z)) } # フィボナッチ格子点の座標 N <- 20 fl <- fib.lattice.S2(N) library(rgl) # らせんの座標 N2 <- N fl2 <- fib.lattice.S2(N2,k=0.01) # らせんを描いて plot3d(rbind(fl2)) # フィボナッチ格子を重ね描き points3d(fl,size=10) rgl.snapshot("fib.png")
遺伝学・遺伝統計学関連の姉妹ブログ『ryamadaの遺伝学・遺伝統計学メモ』
京都大学大学院医学研究科ゲノム医学センター統計遺伝学分野のWiki
講義・スライド
医学生物学と数学とプログラミングの三重学習を狙う学習ツール
駆け足で読む○○シリーズ
ぱらぱらめくるシリーズ
カシオの計算機
オンライン整数列大辞典