StartAlgorytmyFraktaleDrapieżny Ptak
Baza Wiedzy
Wersja offline serwisu przeznaczona na urządzenia z systemem Android.

Darowizny
darowiznaWspomóż rozwój serwisu


Nagłówki RSS
Kanał artykuły
Kanał implementacje
Kanał komentarze
Kanał forum


Bookmarki









Sonda
Implementacji w jakim języku programowania poszukujesz?
 
Drapieżny Ptak
Ocena użytkowników:+++++ / 1
SłabyŚwietny 
Wpisany przez Tomasz Lubiński
środa, 22 lipca 2009 14:44
Podobnie jak w przypadku innych fraktali również dla Płonącego Statku definiuje się zbiory wyższych rzędów. Zbiór o jeden stopień wyższy od Płonącego Statku nazywa się Drapieżny Ptak (ang. Bird of prey). Kolejne, wyższe rzędy nie mają nadanych nazw. Proces generowania przybliżeń takich zbiorów przebiega identycznie jak w przypadku zbioru Płonącego Statku zmienia się jedynie stopień potęgi użytej we wzorze na ciąg.

Poniżej znajdują się definicje zbiorów wraz z ich reprezentacją graficzną (do kolorowania użyto skali logarytmicznej):

  • Płonący statek
    z0 = 0
    zn+1 = ( | Re(zn) | + i | Im(zn) | )2 + p

    Płonący Statek


  • Drapieżny Ptak
    z0 = 0
    zn+1 = ( | Re(zn) | + i | Im(zn) | )3 + p

    Drapieżny Ptak


  • Quadratur
    z0 = 0
    zn+1 = ( | Re(zn) | + i | Im(zn) | )4 + p

    Drapieżny Ptak Quadratur


  • Penta
    z0 = 0
    zn+1 = ( | Re(zn) | + i | Im(zn) | )5 + p

    Drapieżny Ptak Penta


  • Hexa
    z0 = 0
    zn+1 = ( | Re(zn) | + i | Im(zn) | )2 + p

    Drapieżny Ptak Hexa


  • Hepta
    z0 = 0
    zn+1 = ( | Re(zn) | + i | Im(zn) | )2 + p

    Drapieżny Ptak Hepta


  • ...


Przypomnijmy jeszcze działania na liczbach zespolonych jakie będziemy potrzebować podczas obliczeń. Liczba zespolona z składa się z częsci rzeczywistej zr oraz częsci urojonej zi, czyli z = zr + i zi.
Mnożenie definiujemy następująco:
a * b = (ar*br - ai*bi) + i(ar*bi + ai*br)
Dodawanie definiujemy następująco:
a + b = (ar + br) + i(ai + bi)
Moduł z liczby zespolonej definiujemy następująco:
moduł liczby zespolonej |z|=\sqrt{z_{r}^{2}+z_{i}^{2}} ,
dlatego też w praktyce warunek |z| < 2 zastępuje się równoważną nierównością (zr2 + zi2) < 4. Pozbywamy się tutaj czasochłonnego obliczania pierwiastka kwadratowego.


Przykład w JavaScript:
Zaznaczając obszar uzyskasz jego powiększony obraz. Kliknięcie prawym klawiszem (bądź dotknięcie dwoma palcami na urządzeniach z ekranem dotykowym) spowoduje powtórne pokazanie całego zbioru.

Rząd zbioru:

Autor Język programowania Komentarz Otwórz Pobierz Ocena
Tomasz Lubiński C# MS Visual Studio .net
Implementacja w C#
Implementacja w C#
++++- / 1
Tomasz Lubiński C/C++ Borland Builder 6
Implementacja w C/C++
Implementacja w C/C++
++++- / 1
Tomasz Lubiński Delphi/Pascal Borland Delphi 5
Implementacja w Delphi/Pascal
Implementacja w Delphi/Pascal
++++- / 1
Tomasz Lubiński Java Script Firefox 3.0+, Safari 3.0+, Chrome 3.0+, Opera 9.5+, IE 9.0+
Implementacja w Java Script
Implementacja w Java Script
----- / 0
 
Dodaj własną implementację tego algorytmu
  • Zaloguj się na stronie
Plik:
Język programowania:
Komentarz:
  By móc dodać implementacje zaloguj się na stronie



Poprawiony: wtorek, 21 czerwca 2011 19:22

Dodaj komentarz

Kod antysapmowy
Odśwież