SSブログ

1/fゆらぎ

1/fゆらぎのパターンを生成するアルゴリズムの一つに間欠カオス法というのがある。
if (x < 0.5) {
  x = x + 2*x*x;
} else {
  x = x - 2*(1-x)*(1-x);
}

簡単なコードで1/fのパワースペクトルを得られるのだけど、そのままだと0.0や1.0に張り付きやすいという問題もある。
そこで0近傍や1近傍に近寄ったときに引き剥がす方向の処理を入れたのが修正間欠カオス法。
if (x < 0.05) {
  x = x + 0.06;
} else if (x >= 0.95) {
  x = x - 0.04;
} else if (x < 0.5) {
  x = x + 2*x*x;
} else {
  x = x - 2*(1-x)*(1-x);
}

Maker Faire Kyoto 20..1/fゆらぎの続き ブログトップ

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。