表計算ソフトによる計算例
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/05/01 04:26 UTC 版)
「バーンズリーのシダ」の記事における「表計算ソフトによる計算例」の解説
プログラム言語の構文と同じ計算を、以下のように表計算ソフトの関数を使用することでも実現できる。 ABCDEFGH1w a b c d e f p 2ƒ1 0 0 0 0.16 0 0 0.01 3ƒ2 0.85 0.04 -0.04 0.85 0 1.6 0.85 4ƒ3 0.2 -0.26 0.23 0.22 0 1.6 0.07 5ƒ4 -0.15 0.28 0.26 0.24 0 0.44 0.07 6random ƒ X Y 7 0 0 ←initial 8=RAND() B8 C8 D8 ←data なお、B8,C8,D8のセルには以下のような複数条件判定の関数(ネスティング参照)を入力する。 B8=IF(A8<($H$2),1,IF(A8<($H$2+$H$3),2,IF(A8<($H$2+$H$3+$H$4),3,4))) C8=IF(B8=1,$B$2*C7+$C$2*D7+$F$2,IF(B8=2,$B$3*C7+$C$3*D7+$F$3,IF(B8=3,$B$4*C7+$C$4*D7+$F$4,$B$5*C7+$C$5*D7+$F$5))) D8=IF(B8=1,$D$2*C7+$E$2*D7+$G$2,IF(B8=2,$D$3*C7+$E$3*D7+$G$3,IF(B8=3,$D$4*C7+$E$4*D7+$G$4,$D$5*C7+$E$5*D7+$G$5))) 最終8行目をオートフィルで適当な行数だけコピーし、XY散布図とするとバーンズリーのシダのフラクタル図が得られる。各変換式ƒの係数a,b,c,d,e,fと確率pは任意に変更可能である。 各列は以下のような計算を行っている。 A列乱数を発生させる。 B列乱数をもとに確率pに応じた条件判定を行い、用いる変換ƒを決める。 C列先に決めた変換ƒに対応する計算をおこない、Xを求める。 D列先に決めた変換ƒに対応する計算をおこない、Yを求める。 新たなXとYは前の行のXとYの値を使用し、反復的に計算を進める。
※この「表計算ソフトによる計算例」の解説は、「バーンズリーのシダ」の解説の一部です。
「表計算ソフトによる計算例」を含む「バーンズリーのシダ」の記事については、「バーンズリーのシダ」の概要を参照ください。
- 表計算ソフトによる計算例のページへのリンク