0 Daumen
138 Aufrufe

In der Biologie und in anderen Bereichen findet man manchmal eine Wachstumsformel mit dem Aussehen:

y(t)= y(t-1)+y(t-2) mit y(0)=1 und y(1)=1

Ich nehme an es handelt sich hierbei um die Rekursive Berechnungsformel für das Lineare Wachstum.

Nun soll ich die Werte von 2 bis 10 berechnen.

Wenn ich nun die Berechnungsformel: y(t)=y(t-1)+a nehme, ergibt sich:

y(0)=1

y(1)=1

y(2)= y(2-1)+....was soll ich jetzt plus nehmen?

a ist doch der Zunahmefaktor und der ist wenn ich y(0) und y(1) betrachte EINS oder?

y(2)=y(2-1)+1=2

y(3)=y(3-1)+1=3

y(4)=y(4-1)+1=4

y(5)=y(5-1)+1.....................

.

.


mfg spikemike

von

2 Antworten

0 Daumen
 
Beste Antwort

Ich weiß nicht genau wo dein "a" herkommt, aber um y(2) auszurechnen, musst du eigentlich nur einsetzen:

$$y(2)=y(2-1) + y(2-2) = y(1)+y(0)=1+1 = 2 \ . $$

Und weiter:

$$y(3)=y(3-1) + y(3-2) = y(2) + y(1) = 2 + 1 = 3 \ .$$

Bis hier hin stimmen deine Ergebnisse. Für t=4 jedoch:

$$y(4) = y(4-1) + y(4-2) = y(3) + y(2) = 3 + 2 = 5 \ . $$

Du nimmst an, dass der zweite Summand "y(t-2)" immer gleich 1 ist. Das macht keinen Sinn. Wenn du erklärt, wie du darauf kommst, kann ich dir gern sagen wo dein Fehler liegt.

von 1,6 k

Ich nehme die Differenz von y(0) und y(1).....Ich will mir einen Wachstumsfaktor a erzeugen, da

ich ab y(4) mit dem Gesetz (habe einen Film angeschaut) nicht mehr weiter komme.


mfg spikemike.

Gesetz der Fibonaccischen Zahlen wollte ich noch ergänzen.

Denn laut Lösungshinweis ist von y(2) bis y(10)folgendes zu errechnen:

2,3,5,8,13,21,34,55,89

y(5)= y(5-1)+(5-2)=7 und eben nicht 8 somit dachte ich, dass ab hier ein anderer Wachstumsfaktor her muss.

Jedoch handelt es sich um ein lineares Wachstum.

mfg spikemike

y(5)=y(5-1)+y(5-2)=y(3)+y(4)=3+5=8

y(6)=y(6-1)+y(6-2)=y(4)+y(5)=5+8=13

y(7)=y(7-1)+y(7-2)=y(5)+y(6)=8+13=21

y(8)=y(8-1)+y(8-2)=y(6)+y(7)=13+21=34

y(9)=y(9-1)+y(9-2)=y(7)+y(8)=21+34=55

y(10)=y(10-1)+y(10-2)=y(8)+y(9)=34+55=89


mfg spikemike.

0 Daumen

Besser, wenn Du Dich bei Arrays (Feldvariablen) wie bei fast allen Programmiersprachen  schon mal an eckige Klammern gewöhnst, da man es dann nicht mit Multiplikation eines normalen Klammerausdrucks verwechselt: 

y[t] := y[t-1] + y[t-2] 

in Worten: Feldvariable y[ ] mit Index t ergibt sich aus Vorgänger (mit Index [t-1] ) + Restfunktion

Restfunktion y[t-2] ist aber eine von t abhängige Funktion (Vor-Vorgänger) und keine konstante Zahl a! 

y[5] = y[5-1] + y[5-2] = y[4] + y[3] = 5 + 3 = 8 

denn y[3] = y[2] + y[1] = 2 + 1 

und das ist kein lineares Wachstum, wie man an der expliziten Formel sehen kann:

Iterationsrechner http://www.gerdlamprecht.de/Roemisch_JAVA.htm#ZZZZZ0008 Beispiel 8 leicht angepasst

zeigt alle 3 Algorithmen: 

Bild Mathematik

aC[i] ist Dein y[t] -> rekursive Form aus 2 Vorgängern

aB[i] ist rekursiv, jedoch aus nur 1 Vorgänger berechnet

aC[i] ist rein explizit, d.h. man kann beliebige reelle & komplexe Zahlen einsetzen (ohne Vorgänger)

(vergl. http://www.lamprechts.de/gerd/php/RechnerMitUmkehrfunktion.php Fibonacci(x) )

Hinweis: Wissenschaftler haben Fibonacci(0) =0 definiert

d.h. bei Index 1 und 2 gibt's das Ergebnis 1 -> also gegenüber Deiner Aufgabenstellung nur eine Offset-X um 1 verschobene Funktion:

Fibonacci(x) = y[x-1] weil nur die beiden Startwerte anders:

Fibonacci(1)=y[0]=1

Fibonacci(2)=y[1] =1

Andere Startwerte (wie 1 und 3) ist bekannt als Lucas-Funktion.

von 5,6 k

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Mathelounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community