
ピックオーバー・ストークとは、フラクタル幾何学の研究において、マンデルブロ集合に経験的に見られる特定の種類の詳細である。[ 1 ]ピックオーバー・ストークは、その発見に大きく貢献した「イプシロン・クロス」法を考案した研究者クリフォード・ピックオーバーにちなんで名付けられた。「イプシロン・クロス」とは、十字形の軌道トラップである。
ヴェプスタス(1997)によると、「ピックオーバーは、内部点の軌道がx軸とy軸にどれだけ近づくかを見るという斬新な概念を思いついた。これらの図では、点がx軸とy軸に近づくほど色のスケールが高くなり、赤が最も接近していることを示す。距離の対数は細部を強調するために取られている」[ 2 ] 。

バイオモルフは、生物的な外観を持つピックオーバー・ストークスです。[ 3 ]ピックオーバーは1980年代末、ジュリア集合やフラクタル・マンデルブロ集合に類似した生物学的フィードバック生物を開発しました。[ 4 ]ピックオーバー(1999)によると、彼は「無脊椎動物に似た多様で複雑な形状を作成するために使用できるアルゴリズムを説明した。その形状は複雑で、実際にマッピングを実験するまで予測することは困難である」と要約しています。彼は「これらの技術が、他の人々がさらなる探求を行い、偶然に科学と芸術の境界にある新しい形状を発見することを奨励する」ことを期待していました。[ 5 ]
ピックオーバーは、無脊椎動物に似た非常に複雑な形状を作り出すアルゴリズム(ランダムな摂動や自然法則を用いない)を開発した。数学的変換の反復、すなわち再帰によって、生物学的形態が生成される。彼はこれを「バイオモルフ」と呼んだ。彼がこれらのパターンを「バイオモルフ」と名付けたのと同時に、著名な進化生物学者リチャード・ドーキンスも、全く異なる手順で到達した独自の生物学的形状集合を指すためにこの言葉を用いた。より厳密に言えば、ピックオーバーの「バイオモルフ」は、「ジュリア集合」理論の分野における従来の収束判定にわずかな変更を加えることで生み出される生物学的形態のクラスを包含する。[ 5 ]
ピックオーバーのバイオモルフは、異なるスケールにおいて自己相似性を示す。これはフィードバックを伴う力学系に共通する特徴である。海岸線や山脈といった現実のシステムも、いくつかのスケールにおいて自己相似性を示す。2次元パラメトリック0Lシステムは、ピックオーバーのバイオモルフのように見えることがある。[ 6 ]

擬似コードで記述された以下の例では、変換ベクトルと色配当を持つ Pickover Stalk を使用して色付けされた マンデルブロ集合をレンダリングします。
変換ベクトルは、水平軸と垂直軸までの点の距離をサンプリングするときに (x, y) 位置をオフセットするために使用されます。
色配当は、レンダリング時に茎の太さを決定するために使用される浮動小数点数です。
ターゲット上の各ピクセル (x, y) に対して、次の操作を実行します。 { zx = ピクセルのスケールされたx座標(マンデルブロXスケール(-2.5、1)に収まるようにスケール) zy = ピクセルのスケールされたy座標(マンデルブロYスケール(-1, 1)に収まるようにスケール) float2 c = (zx, zy) //マンデルブロ式におけるオフセット float x = zx; //反復する座標 フロート y = zy; float trapDistance = 1000000; // 距離を追跡し、最初は高い値に設定します。 int 反復 = 0; (x*x + y*y < 4 && 反復回数 < 最大反復回数) { float2 z = float2(x, y); z = cmul(z, z); // z^2, cmulは複素数の乗算関数です z += c; x = zx; y = zy; float distanceToX = abs(zx + transformationVector.x); //垂直軸までの距離をチェックする float distanceToY = abs(zy + transformationVector.y); //水平軸までの距離をチェックする smallestDistance = min(distanceToX, distanceToY); // 小さい方の軸の距離のみを使用する トラップ距離 = min(トラップ距離、最小距離); 反復++; } 戻り値: trapDistance * color / dividend; //配当は外部フロートであり、値が大きいほど茎が太くなります }