ifs_-_iterierte_funktionensysteme
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
ifs_-_iterierte_funktionensysteme [2024/01/20 16:58] – torsten.roehl | ifs_-_iterierte_funktionensysteme [2024/01/20 18:41] (aktuell) – [Beispiel] torsten.roehl | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== IFS - Iterierte Funktionensysteme | ====== IFS - Iterierte Funktionensysteme | ||
+ | Iterierte Funktionssysteme sind in der Lage, mit wenigen Regeln komplexe, natürlich aussehende Geometrien zu erzeugen. | ||
+ | {{ : | ||
===== Typen von Transformationen ===== | ===== Typen von Transformationen ===== | ||
+ | Ein Punkt P(x|y) der Ebene wird durch eine Gleichung auf einen anderen Punkt P′(x|y) abgebildet (transformiert). | ||
+ | Wenn der Punkt lediglich verschoben wird, dann spricht man von einer Translation. Aber es gibt noch andere wichtige Transformationen. | ||
+ | |||
+ | * Translation (Verschiebung) | ||
+ | * Rotation (Drehung) | ||
+ | * Scherung | ||
+ | * Spiegelung | ||
+ | |||
+ | Am elegantesten lassen sich solche Transformation in Matrixschreibweise darstellen bzw. berechnen. Multipliziert man diese Matrizen aus, gelangt man zu den weiter unten stehenden Gleichungen. Dieser Abschnitt geht nicht weiter auf die Matrizenrechnung ein, da sie für unser Vorhaben nicht notwendig ist. Es sei noch angemerkt, dass diese Art der Darstellungen aber z.B. in der Computergrafik wichtig ist. | ||
+ | In der Ebene lassen sich alle genannten Transformationen durch die folgenden beiden Gleichungen vollständig beschreiben: | ||
+ | |||
+ | xn+1=axn+byn+eyn+1=cxn+dyn+f | ||
+ | |||
+ | |||
+ | |||
+ | Die Koeffizienten a,b,c,d,e,f | ||
+ | |||
===== Iterierte Funktionensysteme - das Prinzip ===== | ===== Iterierte Funktionensysteme - das Prinzip ===== | ||
+ | Das Prinzip der iterierten Funktionensysteme ist in der obenstehenden Abbildung erläutert. Im Allgemeinen ist ein Satz von | ||
+ | Diesen so erhaltenen neuen Punkt " | ||
+ | |||
===== IFS-Code ===== | ===== IFS-Code ===== | ||
+ | Ein IFS-Code ist eine Tabelle, in der die Koeffizienten (a, | ||
+ | |||
+ | ^Funktion^a^b^c^d^e^f^Wahrscheinlichkeit^ | ||
+ | |f1(x,y)|0|0|0| 0.16|0|0|0.01| | ||
+ | |f2(x,y)|0.85 |0.04 |-0.04 |0.85 |0 |1.6 |0.85| | ||
+ | |f3(x,y)|0.2 |-0.26 |0.23 |0.11 |0 |1.6 |0.07 | | ||
+ | |f4(x,y)|-0.15 |0.28 |0.26|0.24|0|0.44|0.07| | ||
+ | |**// | ||
===== Beispiel ==== | ===== Beispiel ==== | ||
+ | In der Praxis benötigt man viele 10.000 Punkte. Wir hören hier nach drei Iterationen auf.\\ | ||
+ | **Das Beispiel bezieht sich auf die Tabelle: IFS-Code 1.** | ||
+ | |||
+ | - Anfangspunkt: | ||
+ | - zufällig gewählte Funktion f2 (ist mit 85% auch die am häufigsten benutzte) | ||
+ | - mit f2(1,1) | ||
+ | - gewählte Funktion | ||
+ | - mit f2(0.89,2.41) ergibt sich dann für P2(−0.85|3.61) | ||
+ | - zufällig gewählte Funktion diesmal f3 | ||
+ | - mit f3(−0.85,3.61) erhält man nun P3(−0.77|2.19) | ||
+ | - .... | ||
+ | |||
+ | Die Punkte P1, P2, | ||
===== Weitere IFS-Codes ===== | ===== Weitere IFS-Codes ===== | ||
- | ==== IFS-Code | + | ==== IFS-Code: 2 ==== |
- | ==== IFS-Code | + | ^Funktion^a^b^c^d^e^f^Wahrscheinlichkeit^ |
- | ==== IFS-Code | + | |f1(x,y)|0.14 | 0.01 | 0 |0.51 | -0.08 |
- | ==== IFS-Code | + | |f2(x,y)|0.43 | 0.52 | -0.45 | 0.5 | 1.49 | -0.75 |0.35 | |
- | ==== IFS-Code | + | |f3(x,y)|0.45 | -0.49 | 0.47 |0.47 | -1.62 |-0.74 |0.35 | |
+ | |f4(x,y)|0.49 | 0 | 0 | 0.51 | 0.02 | 1.62 |0.2 | | ||
+ | |**// | ||
+ | ==== IFS-Code: 3 ==== | ||
+ | ^Funktion^a^b^c^d^e^f^Wahrscheinlichkeit^ | ||
+ | |f1(x,y)|-0.04 | ||
+ | |f2(x,y)| 0.61 | 0 | 0 | 0.31 | 0.07 |3.5 |0.22 | | ||
+ | |f3(x,y)| 0.65 | 0.18 | -0.3 | 0.48 | 0.74 |0.39 |0.15 | | ||
+ | |f4(x,y)| 0.64 |-0.2 |0.32 | 0.56 |-0.66 | ||
+ | |**// | ||
+ | ==== IFS-Code: 4 ==== | ||
+ | ^Funktion^a^b^c^d^e^f^Wahrscheinlichkeit^ | ||
+ | |f1(x,y)|0.05| 0| 0| 0.6| 0 | 0| 0.028| | ||
+ | |f2(x,y)|0.05|0 |0| -0.5| 0| 1| 0.023256| | ||
+ | |f3(x,y)|0.459627 |-0.321394 | ||
+ | |f4(x,y)|0.469846| -0.153909| | ||
+ | |f5(x,y)|0.433013| 0.275000| -0.250000| 0.476314| 0| 1.0 |0.255814| | ||
+ | |f6(x,y)|0.421325| 0.257115| -0.353533| 0.306418| 0| 0.7| 0.204651| | ||
+ | |**// | ||
+ | ==== IFS-Code: 5 ==== | ||
+ | ^Funktion^a^b^c^d^e^f^Wahrscheinlichkeit^ | ||
+ | |f1(x,y)|0.05|0|0|0.6|0|0| 1/6| | ||
+ | |f2(x,y)|0.05|0|0| -0.5|0| 1| 1/6| | ||
+ | |f3(x,y)|0.459677| -0.321343| 0.385612|0.383065|0| 0.6| 1/6| | ||
+ | |f4(x,y)|0.469858|-0.153966| 0.170979| 0.422841| 0| 1.1|1/6| | ||
+ | |f5(x,y)|0.432912| 0.275191| -0.250174| 0.476204| 0| 0.1|1/6| | ||
+ | |f6(x,y)|0.421371| 0.257075| -0.353478| 0.306452| 0| 0.7|1/6| | ||
+ | |**// | ||
+ | ==== IFS-Code: 6 ==== | ||
+ | ^Funktion^a^b^c^d^e^f^Wahrscheinlichkeit^ | ||
+ | |f1(x,y)|0.05|0|0 |0.4 |-0.06 |-0.47 |0.026000| | ||
+ | |f2(x,y)|-0.05| 0 |0 |-0.4 |-0.06 |-0.47 |0.026399| | ||
+ | |f3(x,y)|0.03| -0.14 |0 |0.26 |-0.16 | ||
+ | |f4(x,y)|-0.03| 0.14 |0 |-0.26 |-0.16 |-0.01 | ||
+ | |f5(x,y)|0.56| 0.44 |-0.37 |0.51 |0.3 |0.15 |0.591869| | ||
+ | |f6(x,y)|0.19| 0.07|-0.01 |0.15 |-0.2 |0.28 |0.038543| | ||
+ | |f7(x,y)|-0.33| -0.34 |-0.33 |0.34 |-0.54 |0.39 |0.296597| | ||
+ | |**// | ||
ifs_-_iterierte_funktionensysteme.1705769934.txt.gz · Zuletzt geändert: 2024/01/20 16:58 von torsten.roehl