Kostka Mengera

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj
Kostka Mengera po 4 iteracjach IFS
Animacja kostki Mengera w czasie proporcjonalnym do stopnia rekurencji (1-4).
Nietrywialna wariacja kostki Mengera nawiązująca do przyrody polegająca na rekurencyjnym zostawianiu 8 kostek narożnych i jednej środkowej - płatek śniegu Sierpińskiego-Mengera (5 stopni rekurencji). Ten ciekawy trójwymiarowy fraktal posiada dokładnie wymiar Hausdorffa niefraktalnego objektu rodowicie dwuwymiarowego np. płaszczyzny tzn. : log39 = ln 9 / ln 3 = 2

Kostka Mengera, gąbka Mengerabryła fraktalna, trójwymiarowy odpowiednik zbioru Cantora i dywanu Sierpińskiego. Wymiar fraktalny kostki Mengera wynosi:

log320 = ln 20 / ln 3 ≈ 2,726833.

Konstrukcja kostki została podana przez austriackiego matematyka Karla Mengera w roku 1927.

Konstrukcja[edytuj | edytuj kod]

Kostka Mengera powstaje w następujący sposób:

  1. Dany jest sześcian
  2. Tniemy go na 27 sześcianów równej wielkości płaszczyznami równoległymi do ścian
  3. Usuwamy wszystkie sześciany przyległe do środków ścian pierwotnego sześcianu oraz sześcian znajdujący się w jego środku
  4. Do każdego z 20 pozostałych sześcianów stosujemy poprzednią procedurę

Po nieskończonej liczbie powtórzeń opisanych operacji otrzymujemy kostkę Mengera.

Poniższy pseudokod, będący rekurencyjną implementacją kostki Mengera, wykorzystywany jest często w wielu językach programowania, przy czym:

  • n – złożoność – liczba całkowita nieujemna,
  • x,y,z – współrzędne środka,
  • d – długość krawędzi:
Menger(n,x,y,z,d):
 jeżeli n=0
  to utwórzSześcian(x,y,z,d)
  w przeciwnym przypadku
   dla i={-1,0,1}
    dla j={-1,0,1}
     dla k={-1,0,1}
      jeżeli (i*i+j*j)*(i*i+k*k)*(j*j+k*k)>0
       to Menger(n-1,x+i*d/3,y+j*d/3,z+k*d/3,d/3)
Sześcian
1. iteracja
2. iteracja
3. iteracja
4. iteracja
5. iteracja

Własności[edytuj | edytuj kod]

Każda ściana kostki jest dywanem Sierpińskiego. Przekątna kostki jest zbiorem Cantora. Kostka jest zwartym podzbiorem przestrzeni euklidesowej, a jej miara Lebesgue'a jest równa 0.

Definicje formalne[edytuj | edytuj kod]

Definicja rekurencyjna[edytuj | edytuj kod]

Precyzyjne określenie kostki Mengera jest następujące:

M := \bigcap_{n\in\mathbb{N}} M_n

gdzie M0 oznacza sześcian {(x,y,z) : 0 ≤ x,y,z ≤ 1}

M_{n+1} := \left\{
(x,y,z)\in\mathbb{R}^3: \  {
\exists i,j,k\in\{0,1,2\}: (3x-i,3y-j,3z-k)\in M_n
\atop \mbox{ i co najwyzej jedna z liczb }i,j,k\mbox{ jest rowna 1 }}
\right\}

Definicja nierekurencyjna[edytuj | edytuj kod]

Kostkę Mengera można też zdefiniować w równoważny sposób nie używając rekurencji:
Kostka Mengera to domknięcie zbioru punktów (x,y,z) takich, że 0 ≤ x,y,z ≤ 1 i w nieskończonych rozwinięciach współrzędnych x,y,z w trójkowym systemie liczbowym nigdzie na tej samej pozycji cyfra 1 nie występuje więcej niż jeden raz.

Dokładna kostka Sierpińskiego[edytuj | edytuj kod]

"Galaretkowa" objętościowa animacja dokładnej kostki Sierpińskiego poprzez kroki rekurencji. Aby umożliwić lepszą widoczność ciemniejsze obszary oznaczają pusta przestrzeń. Wybrane przekroje tnące największą wnękę centralną równolegle do ścian prostopadłościanu są dywanami Sierpińskiego.

Kostka Mengera nie jest dokładnym odpowiednikim kostki Sierpińskiego. Używając dokładnie logiki konstrukcji dwuwymiarowej dywanu w trzech wymiarach należy z każdą rekurencją usuwać jedynie zmniejszoną kostkę centralną bez kostek bocznych. Inaczej w dywanie należałoby usuwać nie jeden a pięć kwadratów tworzących razem krzyż grecki. Oczywiście struktura fraktalna takiej kostki nie jest widoczna od razu bez jej przecięcia. Ponieważ liczba elementów wypełniających rośnie teraz o czynnik 26 przy zachowaniu skali zmniejszania jest ona prawie trójwymiarowa i jej wymiar Hausdorffa wynosi:

log326 = ln 26 / ln 3 ≈ 2.965647.

W podobny sposób możemy konstruować inne kostki fraktalne usuwając w każdym kroku z większych kostek dowolną liczbę N kostek mniejszych w skali 1/3 np. kostkę centralną i 8 kostek narożnych, i w ogólnosci niesymetrycznie. Większość tak skonstruowanych kostek jest także dziwnymi geometrycznie w przestrzeni trójwymiarowej fraktalami o wymiarze Hausdorffa

log3(27-N) = ln (27-N) / ln 3

nie będącym liczbą naturalną. Jedynie rekurencyjne usuwanie 26 kostek zostawiając jedną w rogu zbiega do trywialnego jednego punktu o wymiarze 0.

Zobacz też[edytuj | edytuj kod]

Linki zewnętrzne[edytuj | edytuj kod]