Piramida Sierpińskiego

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania

Piramida Sierpińskiego, Gąbka Sierpińskiego, tetrixzbiór fraktalny, trójwymiarowy odpowiednik trójkąta Sierpińskiego.

Konstrukcja[edytuj | edytuj kod]

Piramida Sierpińskiego – 5. etap konstrukcji
Progresja rekurencji piramidy poprzez 7 kroków

Piramida Sierpińskiego powstaje z czworościanu foremnego przez wykonanie następującego algorytmu:

  1. Weź ostrosłup o krawędzi długości x.
  2. Utwórz 4 ostrosłupy o krawędzi długości 1/2x i umieść je w przestrzeni tak, by zawierały się w dużym ostrosłupie oraz każdy miał wspólny jeden wierzchołek z dużym ostrosłupem.
  3. Usuń ośmiościan foremny, który pozostaje w środku dużego ostrosłupa (o wierzchołkach w 1/2x).
  4. Do każdego z 4 małych ostrosłupów zastosuj ten algorytm.

Po nieskończonej liczbie powtórzeń opisanych operacji otrzymujemy piramidę Sierpińskiego.

Własności[edytuj | edytuj kod]

Program w Mathematica[edytuj | edytuj kod]

Krótki program w języku Mathematica. Procedura rekurencyjna SiPyramid generuje piramidę dowolnego rzędu n:

vect[1] = {0, 0, 0};
vect[2] = {1, 0, 0};
vect[3] = {0.5, 3^0.5/2, 0};
vect[4] = {0.5, 1/3*3^0.5/2, ((3^0.5/2)^2 - (1/3*3^0.5/2)^2)^0.5};
Tetron[{i_, j_, k_}] := 
 Tetrahedron[{vect[1] + {i, j, k}, vect[2] + {i, j, k}, vect[3] + {i, j, k}, vect[4] + {i, j, k}}];
SiPyramid[0, {i_, j_, k_}] := {Tetron[{i, j, k}]};
SiPyramid[n_, {i_, j_, k_}] := 
  Module[{s = {}}, 
   Do[s = Union[s, 
      SiPyramid[n - 1, 2^(n - 1)*vect[u] + {i, j, k}]], {u, 4}]; s];

Zobacz też[edytuj | edytuj kod]