CodingTrain / CodingTrain/Suggestion-Box

Challenge: Calculating Feigenbaum constants

Aperta
#1,447 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Nessun dato sulla lingua
Stelle
570
Fork
85
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

# Logistic map
The feigenbaum constants are defined via the logistic map. The logistic map simulates population growth. It maps any value `x_n ` to a new value `x_(n + 1) = r * x_n * (1 - x_n)`. For values of `r` about `2` the logistic map settles to an equilibrium. It gets interesting at values of `r` about `3`. The logistic map doesn't settle but toggles between two values. At `3.4` it toggles between four and at `3.6` between eight and then **chaos (!)**.

# Bifurcation diagram
You can plot the relation of `x` and `r` in a so called bifurcation diagram.

![Bifurcation diagram](https://upload.wikimedia.org/wikipedia/commons/thumb/c/c8/Logistic_Map_Bifurcation_Diagram%2C_Matplotlib.svg/576px-Logistic_Map_Bifurcation_Diagram%2C_Matplotlib.svg.png)
*Source: https://wikipedia.org/ - Morn (unchanged)*

### Challenge:
I wrote a little [sketch](https://editor.p5js.org/felix-jealous/sketches/fm4t9vdJ) to paint a bifurcation diagram. This is still a little ugly with all the scattered points. I tried to do it with `vertex()` but I didn't want to put much effort into it now. So maybe you can do something based on this.

# Feigenbaum Constants
The first of the two Feigenbaum constants `delta`(also called Feigenbaum bifurcation velocity) is the ratio of `r_(n - 1) - r_(n - 2)` to `r_n - r_(n - 1)` (`r_n` being the n-th point where the diagram splits) as `n` approaches infinity. This value is the same for every bifurcation diagram not only the logistic map.

The second constant `alpha` (also called Feigenbaum reduction parameter) seems to be the exact opposite of `delta`. It is the ratio between the width of split and the width of the following split.

### Challenge:
Since the constants are the same for every non-linear map you could use make a sketch that draws a bifurcation diagram while calculation these values and try it with other maps too. Or you could build a little input, where the user can type his one non-linear map.

P.S.: The mandelbrot set is also a non-linear map. *wink wink*

## References
- https://en.wikipedia.org/wiki/Feigenbaum_constants
- https://en.wikipedia.org/wiki/Bifurcation_diagram
- https://www.youtube.com/watch?v=ovJcsL7vyrk

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia con lo sketch p5.js collegato e i riferimenti dell'issue sulle costanti di Feigenbaum e sui diagrammi di biforcazione. Determina come viene generato il diagramma di biforcazione esistente e scegli un ambito mirato: migliora il suo rendering, calcola delta e alpha oppure supporta un'altra mappa non lineare. Il lavoro è completato quando l'ambito selezionato è implementato e il diagramma o i valori risultanti sono utilizzabili e verificabili.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
javascript
Ambito
data-visualization
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.