Φράκταλ του Νεύτωνα

Από τη Βικιπαίδεια, την ελεύθερη εγκυκλοπαίδεια
Το φράκταλ του Νεύτωνα προς

Το φράκταλ του Νεύτωνα[1] σε μια μη σταθερή μερομορφική συνάρτηση που απεικονίζει τους μιγαδικούς αριθμούς στον εαυτό της είναι ένα υποσύνολο του συνόλου των μιγαδικών αριθμών. Για την ακρίβεια, είναι το σύνολο Julia στη συνάρτηση

η οποία περιγράφει την μέθοδο Νεύτωνα για την εύρεση των μηδενικών της συνάρτησης . Η ίδια η μέθοδος Νεύτωνα κατασκευάζει μια ακολουθία από μια αρχική τιμή με τον κανόνα αναδρομής . Ανάλογα με την αρχική τιμή , η τροχιά του μπορεί να είναι

παρουσιάζουν αρκετά διαφορετική συμπεριφορά.

Σημείωση: Εδώ ο εκθέτης αναφέρεται στην ως συνάρτηση και όχι στην τιμή της συνάρτησης. σημαίνει έτσι την -πλάσια επαναληπτική εφαρμογή της στο (ή την n n-οστή επαναληπτική της ), τυπικά λοιπόν .

Για τη δυναμική σε ένα περιβάλλον υπάρχουν ακριβώς δύο δυνατότητες:

  1. υπάρχει μια γειτονιά του τέτοια ώστε η ακολουθία των αποστάσεων είναι περιορισμένη, ή
  2. για οποιαδήποτε (έστω και μικρή) γειτονιά του , οι εικόνες επικαλύπτονται ολόκληρο το μιγαδικό επίπεδο συμπεριλαμβανομένου του σημείου άπειρο (δηλαδή ολόκληρη η σφαίρα αριθμών Ρίμαν).

Τα σημεία στην πρώτη περίπτωση σχηματίζουν το σύνολο Φατού του , τα σημεία στη δεύτερη περίπτωση το σύνολο Julia . Ειδικότερα, στο σύνολο Φατού μπορεί να τύχει η ακολουθία των αποστάσεων να συγκλίνει στο μηδέν, οπότε οι τροχιές των σημείων προσεγγίζουν την τροχιά του . Αν το έχει τουλάχιστον τρία μηδενικά, το σύνολο Julia είναι πάντα ένα "Φράκταλ", επομένως το μερικές φορές ονομάζεται και "φράκταλ του Νεύτωνα του ".

Σημασία για τη μέθοδο Νεύτωνα[Επεξεργασία | επεξεργασία κώδικα]

Αν η αρχική τιμή της επανάληψης Νεύτωνα είναι κοντά σε ένα μοναδικό μηδέν του , τότε η μέθοδος συγκλίνει τετραγωνικά προς αυτό το μηδέν (δηλαδή, ο αριθμός των σωστών δεκαδικών ψηφίων διπλασιάζεται μακροπρόθεσμα σε κάθε βήμα)[2]. Στην περίπτωση ενός πολλαπλού μηδενός, η μέθοδος Νεύτωνα εξακολουθεί να συγκλίνει γραμμικά. Τα μηδενικά βρίσκονται πάντα στο σύνολο Φατού.

Ωστόσο, όσο πιο κοντά είναι η αρχική τιμή στο σύνολο Julia, τόσο πιο μη διαχειρίσιμο είναι το αποτέλεσμα της μεθόδου Νεύτωνα:

  • Ακόμη και αρχικές τιμές που απέχουν πολύ από ένα μηδέν μπορούν να συγκλίνουν προς αυτό, ακόμη και αν άλλα μηδενικά είναι πολύ πιο κοντά στην αρχική τιμή (στην περίπτωση 1).
  • Υπάρχουν αρχικές τιμές που δεν συγκλίνουν στο μηδέν, αλλά μόνο σε έναν περιοδικό κύκλο (στην περίπτωση 1). Ένα τέτοιο παράδειγμα είναι το πολυώνυμο . Εδώ υπάρχουν αρχικές τιμές που συλλαμβάνονται από τον ελκτικό κύκλο {0,1}, έτσι ώστε ολόκληρες περιοχές στο επίπεδο δεν συγκλίνουν προς κάποιο μηδέν.
  • Αν η αρχική τιμή βρίσκεται στο ίδιο το σύνολο Julia, τότε δεν συγκλίνει στο μηδέν (στην περίπτωση 2).

Παραδόξως, το σύνολο Julia (το φράκταλ του Νεύτωνα) μπορεί επίσης να έχει θετική μέτρηση στο σχέδιο: αυτό σημαίνει ότι οι τυχαίες αρχικές τιμές βρίσκονται στο σύνολο Julia και επομένως δεν συγκλίνουν προς ένα μηδέν (ή έναν άλλο ελκτικό κύκλο του ) (αυτή η συμπεριφορά εμφανίζεται μόνο σε λίγες περιπτώσεις και επίσης αποδείχθηκε μόλις πριν από λίγα χρόνια, αλλά είναι αρκετά πιθανή). Έτσι, ακόμη και αν το φράκταλ του Νεύτωνα είναι ένα μηδενικό σύνολο, μπορεί να υπάρχουν ολόκληρα πεδία στα οποία η μέθοδος δεν συγκλίνει σε ένα μηδενικό.

Η εν λόγω δήλωση ισχύει επίσης για τις ορθολογικές συναρτήσεις πραγματικών τιμών. Και πάλι, το πολυώνυμο χρησιμεύει ως παράδειγμα. Επειδή έχει πραγματικούς συντελεστές, οι τιμές επανάληψης του Νεύτωνα για πραγματικές αρχικές τιμές παραμένουν πραγματικής αξίας. Καθώς ο πραγματικός άξονας διέρχεται από περιοχές μη σύγκλισης, υπάρχουν διαστήματα για τα οποία δεν υπάρχει σύγκλιση. Υπάρχει άπειρος αριθμός τέτοιων διαστημάτων.

Παράδειγμα φράκταλ[Επεξεργασία | επεξεργασία κώδικα]

Παράδειγμα 1[Επεξεργασία | επεξεργασία κώδικα]

Figure 1: Newton fractal to

Στο Σχήμα 1 παρουσιάζεται το φράκταλ Νεύτωνα (με λευκό χρώμα) στο , με χρωματική κωδικοποίηση ανάλογα με το ρυθμό σύγκλισης και τα τρία μηδενικά. Οι αρχικές τιμές που βρίσκονται στις περιοχές που έχουν σχεδιαστεί με μπεζ χρώμα συγκλίνουν στο ίδιο μηδέν (σε ανοιχτό μπεζ χρώμα στην εικόνα στα αριστερά), κατ' αναλογία για τις πράσινες και μπλε περιοχές. Τα μηδενικά για τις πράσινες και τις μπλε περιοχές βρίσκονται συμμετρικά προς τον οριζόντιο άξονα συμμετρίας στα δεξιά της εικόνας. Όσο πιο γρήγορα συγκλίνει μια αρχική τιμή στο μηδέν της, τόσο πιο ανοιχτόχρωμη είναι. Οι τιμές στις άπειρες κόκκινες περιοχές δεν συγκλίνουν στο μηδέν, αλλά συλλαμβάνονται από τον ελκυστικό κύκλος . Το φράκταλ του Νεύτωνα - αναγνωρίσιμο στην εικόνα ως φωτεινή δομή - δεν είναι οριοθετημένο. Στις τρεις κατευθύνσεις που μπορούν να αναγνωριστούν, εκτείνεται στο ∞.

Εικόνα 2: Newton fractal σε πολυώνυμο με 7 τυχαία επιλεγμένα μηδενικά

Παράδειγμα 2[Επεξεργασία | επεξεργασία κώδικα]

Στο Σχήμα 2 παρουσιάζεται το φράκταλ του Νεύτωνα σε ένα πολυώνυμο με 7 τυχαία επιλεγμένα μηδενικά (λευκές κουκκίδες), το εύρος αντιπροσωπεύει . Παραδείγματος χάριν, το ίδιο το φράκταλ, η ακμή της κίτρινης περιοχής. Ομοίως, είναι η ακμή της πράσινης περιοχής, η ακμή της τυρκουάζ περιοχής, κ.λπ. Αυτή η ιδιότητα είναι κοινή για όλα τα σύνολα Julia. (Τα χρώματα κόκκινο και ροζ χρησιμοποιήθηκαν δύο φορές- παρ' όλα αυτά, τα όρια της κόκκινης και της ροζ περιοχής, αντίστοιχα, αντιστοιχούν επίσης στο φράκταλ του Νεύτωνα).

Γενίκευση των φράκταλ του Νεύτωνα[Επεξεργασία | επεξεργασία κώδικα]

Άλλα φράκταλ όπου πολλαπλασιάζονται δυναμικές και τριγωνομετρικές συναρτήσεις. p(z) = zn*Sin(z) - 1

Φράκταλ Nova[Επεξεργασία | επεξεργασία κώδικα]

Το φράκταλ Nova εφευρέθηκε στα μέσα της δεκαετίας του 1990 από τον Πολ Ντέρμπισαϊρ,[3][4] είναι μια γενίκευση του φράκταλ του Νεύτωνα με την προσθήκη μιας τιμής c σε κάθε βήμα:[5]

Η παραλλαγή "Julia" του φράκταλ Nova διατηρεί το c σταθερό σε όλη την εικόνα και αρχικοποιεί το z0 στις συντεταγμένες των εικονοστοιχείων. Η παραλλαγή "'Μάντελμπροτ" του φράκταλ Nova αρχικοποιεί το c στις συντεταγμένες εικονοστοιχείου και θέτει το z0 σε ένα κρίσιμο σημείο, όπου[6]

Συνήθως χρησιμοποιούμενα πολυώνυμα όπως p(z) = z3 − 1 ή p(z) = (z − 1)3 οδηγούν σε κρίσιμο σημείο στο z = 1.

Εφαρμογή[Επεξεργασία | επεξεργασία κώδικα]

Για να υλοποιηθεί το φράκταλ του Νεύτωνα, είναι απαραίτητο να υπάρχει μια αρχική συνάρτηση καθώς και η παράγωγη συνάρτηση της:

Οι τρεις ρίζες της συνάρτησης είναι

Οι παραπάνω συναρτήσεις μπορούν να μεταφραστούν σε ψευδοκώδικα ως εξής:

//z^3-1 
float2 Function (float2 z)
{
	return cpow(z, 3) - float2(1, 0); //cpow is an exponential function for complex numbers
}

//3*z^2
float2 Derivative (float2 z)
{
	return 3 * cmul(z, z); //cmul is a function that handles multiplication of complex numbers
}

Τώρα είναι απλώς θέμα εφαρμογής της μεθόδου Νεύτωνα χρησιμοποιώντας τις δεδομένες συναρτήσεις.

float2 roots[3] = //Roots (solutions) of the polynomial
{
	float2(1, 0), 
	float2(-.5, sqrt(3)/2), 
	float2(-.5, -sqrt(3)/2)
};
	
color colors[3] =  //Assign a color for each root
{
    red,
    green,
    blue
}

For each pixel (x, y) on the target, do:
{
	zx = scaled x coordinate of pixel (scaled to lie in the Mandelbrot X scale (-2.5, 1))
    zy = scaled y coordinate of pixel (scaled to lie in the Mandelbrot Y scale (-2, 1))

    float2 z = float2(zx, zy); //z is originally set to the pixel coordinates

	for (int iteration = 0;
	     iteration < maxIteration;
	     iteration++;)
	{
		z -= cdiv(Function(z), Derivative(z)); //cdiv is a function for dividing complex numbers

        float tolerance = 0.000001;
        
		for (int i = 0; i < roots.Length; i++)
		{
		    float2 difference = z - roots[i];
		    
			//If the current iteration is close enough to a root, color the pixel.
			if (abs(difference.x) < tolerance && abs (difference.y) < tolerance)
			{
				return colors[i]; //Return the color corresponding to the root
			}
		}
		
    }
    
    return black; //If no solution is found
}

Δείτε επίσης[Επεξεργασία | επεξεργασία κώδικα]

Παραπομπές[Επεξεργασία | επεξεργασία κώδικα]

  1. «Newton fractal». www.scientificlib.com. Ανακτήθηκε στις 22 Αυγούστου 2023. 
  2. Schleicher, Dierk; Stoll, Robin (2017-06). «Newton's method in practice: finding all roots of polynomials of degree one million efficiently». Theoretical Computer Science 681: 146–166. doi:10.1016/j.tcs.2017.03.025. http://arxiv.org/abs/1508.02935. 
  3. Damien M. Jones. «class Standard_NovaMandel (Ultra Fractal formula reference)». 
  4. Damien M. Jones. «dmj's nova fractals 1995-6». Αρχειοθετήθηκε από το πρωτότυπο στις 20 Αυγούστου 2017. Ανακτήθηκε στις 23 Αυγούστου 2023. 
  5. Michael Condron. «Relaxed Newton's Method and the Nova Fractal». 
  6. Frederik Slijkerman. «Ultra Fractal Manual: Nova (Julia, Mandelbrot)».