Archiv verlassen und diese Seite im Standarddesign anzeigen : Math DZGL Katalog
Hi
Im Folgenden moechte ich mal einige Loesungen (nichtlinearer) DZGL's zusammenstellen, die sich im Laufe der Zeit so ergaben. Ebenso einen Platz schaffen um weitere loesbare DZGL's die sich synthesieren lassen zu dokumentieren. Allerdings weiss ich noch nicht ob ich lediglich die Loesung angeben soll oder auch kurz den Loesungsweg.
Gruesse
***********
Fibonacci DZGL
***********
f[k]=f[k-1]+f[k-2]
f0=1, f1=1
Loesungsweg A
************
Loesung von Binet
Loesung:
******
http://upload.wikimedia.org/math/5/5/e/55e16df31aed285ce1c6e074d832b354.png
*************************
mit
http://upload.wikimedia.org/math/8/4/5/845621a806b5235d5d60e2062e0b431c.png
Loesungsweg B
***********
Z-Transformation oder
Maple:
lsg:=rsolve({y(n+2)=y(n+1)+y(n), y(0)=1,y(1)=1},y(n));
evalc(lsg);
http://home.arcor.de/richardon/2011/maple3.gif
Darstellung in der komplexen Ebene
complexplot(lsg,n=0..5);
http://home.arcor.de/richardon/2011/maple2.gif
complexplot(lsg,n=-6..4);
http://home.arcor.de/richardon/richy2001/mathe/chaos/analytic/fib/fibspirale.gif
***************
"Kuehlschrank" DZGL
***************
f[k+2]=f[k+1]+2*f[k]
f0=1,f1=2
Loesung :
*******
y[k]=2^k
lsg:=rsolve({y(n+2)=y(n+1)+2*y(n), y(0)=1,y(1)=2},y(n));
Synthese :
********
ueber die verallgemeinerte Fibonacci DZGL (folgt noch)
Namensursprung :
http://www.quanten.de/forum/showthread.php5?t=850&highlight=Kuehlschrank
***************
"Mersenne" DZGL
***************
f[k+2]=f[k+1]+2*f[k]+2
f0=0,f1=1
Loesung :
*******
f[k]=2^k-1
Loesungsweg :
***********
Substitution
f[k]=z[k]-1
z[k+2]-1=z[k+1]-1+2*(z[k]-1)+2
fuehrt auf die "Kuehlschrankform"
z[k+2]=z[k+1]+2*z[k]
**********************
"Phi" DZGL (Kettenbruchform)
**********************
f[k+1]=1+1/f[k]
f0=1
Loesung :
*******
(Phi^(k+1)+phi^(k+1))
----------------------- =f[k]
(Phi^(k)+phi^(k))
Phi=1-phi=(1-sqrt(5))/2
(index muss noch geprueft werden)
Loesungsweg :
***********
Substitution
f[k]=z[k+1]/z[k]
fuehrt auf die "Fibonacci DZGL"
mermanview
21.11.11, 17:22
Hallo,
ich kann Differenzengleichungen noch nicht lesen,
aber was ist mit der allgemeinen Formel für Phi:
http://upload.wikimedia.org/wikipedia/de/math/1/3/b/13b262ebe6db49c206a466f584b2d46b.png
, die sich aus der Vorgabe (a+b)/a = a/b ergibt ?
Tut diese schlichte Formel hier nichts zur Sache,
weil es um's elegantere oder allgemeinere Herleiten per DZGL geht?
Gruß, Merman
Hi merman
Woher hast du dieser Gleichung ? Phi ist ein fester Zahlenwert. In dieser Gleichung jedoch nicht. Der Wert ist die Loesung von :
x^2=x+1
oder umgeformt
x=1+1/x
und eine verkettete Loesungsmethode liefert ueber den Fixpunktsatz :
x[k+1]=1+1/x[k], x0=1
Diese Iteration konvergiert gegen Phi. Aber wie verhaelt sich die Iteration genau ? Es gibt fuer eine nichtlineare DZGL in der Regel keine expliziten Loesungsmethode. Mein Katalog soll einige darstellen. Er ist noch lange nicht fertig. Es gibt einen weiteren Weg diese Reihe herzuleiten. Ueber die Fibonacci Reihe. Und da diese linear sind ist deren Loesung bekannt und damit kann man die Phi DZGL loesen.
Gruesse
mermanview
22.11.11, 17:44
Hi richy,
habe die Gleichung nach der Vorgabe des goldenen Schnittes (a+b)/a = a/b
selber hergeleitet, habe sie dann bei wiki (unter Diskussion) gepostet, um sie hier hoch zu laden.
In dieser Gleichung kann man jede Zahl einsetzen, das Ergebnis ist immer Phi.
Ich vermute, dass die Formel hier beim DZGL-Katalog nichts zur Sache tut.
Habe mir deine Plots angesehen, complexplot(lsg,n=0..5) und complexplot(lsg,n=-6..4), ... sehen gut aus, verdammt, sowas will ich auch können.
(Ich kann beim Betrachten von complexplot(lsg,n=-6..4) nicht ganz ausblenden, dass die Kurve aussieht, wie der Blick in ein Füllhorn, welches nach unten rechts wegbiegt :- )
(Überhaupt, ... müsste doch auch die Seitenansicht einer räumlichen Spirale (complexplot(lsg,n=0..5) eine Art Sinuskurve ergeben, insofern wäre doch interessant, ob elmag. Starhlung tatsächlich schwingt, oder eher entlang der Zeitachse kreiselt, ausgelöst z.B. von einem Elektron, als Kreisel (<- Spin))
Ich muss z.Zt. meinem Linuxrechner unter C- Programmierung erstmal beibringen (Headerdatei finden und einbinden) überhaupt Koordinaten zu zeichnen.
Aber das wird schon, ...
Wie du siehst ist mein Umgang mit Mathematik unbedarft, und es macht mir dabei ungeheuren Spass selber zu entdecken.
Gemessen an deinen Kenntnissen, bewege ich mich aber eher im Trivialen.
Ich habe unter dem youtube-Thread deine und Marco Polos Beiträge um "La Paloma" herum gelesen:
Frage: Ist Mathe dein Vergnügen, ... so nebenbei?
Kannst du vom Musizieren leben, wenn ja, dann Allerherzlichsten, und dickes toitoitoi hinterher, ditt hättick ooch gean.
Aber zurück zu den DZGLs,
Gruß Merman
***************
"Kuehlschrank" Kette
***************
f[k+1]=1+2/f[k]
f0=1,f1=2
Loesung :
*******
y[k]=2
trivial
***************
"Mersenne" kette
***************
f[k+2]=f[k+1]+2*f[k]+2
f0=0,f1=1
f[k+2]................2*f[k]+2
------ = 1 + -----------------
f[k+1].................f[k+1]
Der Term 2/f[k+1] laesst sich mittels z[k+2]=f[k+2] / f[k+1] nicht einfach substituieren.
LOESUNG DES SUBSTITUTION-PROBLEMS :
*******************************
Ich kenne doch die Loesung ! Und kann damit f[k+1] explizit ausdruecken :
f[k]=2^k-1
f[k+1]=2^(k+1)-1 ...yeah :-)
aufs Neue :
f[k+2]/f[k+1]=1+2*f[k]/f[k+1]+2/(2^(k+1)-1)
Substitution : z[k+1]=f[k+2]/f[k+1]
Substitution der Anfangswerte :
z[1]=f[2]/f[1]=3 (man muss den Index verschieben)
Eingesetzt :
z[k+1]=1+2/z[k]+2/(2^(k+1)-1)
(kann man auch weiter umformen ..)
Das ist ein neuer Gedanke. Existiert die Loesung, kann ich mit dieser Teile ersetzen, die sich nicht substituieren lassen ! Das ist auch praktisch fuer andere Probleme !
Die Mersene Kette ist ein Kettenbruch mit variablen Koeffizienten !!!
Diese stellen in der DZGL 2ter Ordnung eine Konstante dar !
***************
"Mersenne" kette
***************
z[k+1]=1+2/z[k]+2/(2^(k+1)-1)
z0=3
LOESUNG :
(2^(k+2)-1)/(2^(k+1)-1)
********************
Fibonacci mit beliebigen Anfangswerten
*****************************
s[k+2]=s[k+1]+s[k]
fuer beliebige Anfangswerte c0=s[0], c1=s[1]
l:=(rsolve({s(n+2)=s(n+1)+s(n),s(0)=c0,s(1)=c1},s) )
http://home.arcor.de/richardon/2008/fib/fibabb0.gif
Komplexwerige Darstellung :
l:=(rsolve({s(n+2)=s(n+1)+s(n),s(0)=c0,s(1)=c1},s) );
http://home.arcor.de/richardon/2008/fib/fibabb1.gif
A) Ein exponentiell wachsender Anteil
B) Exponentiell gedaempfter Realteil
C) Exponentiell gedaempfter Imaginaerteil
A+ B bilden dabei die Loesung fuer ganzzahlige k
Anwendung :
*********
Ueber letztere Darstelung lassen sich nun auch Anfangswerte so waehlen, dass verschiedene Charakteren vorgegeben werden koennen.
Beispiel 1
*******
Unterdruecken des Exponentielle Wachstums der Fib Zahlen :
Im Gegendatz zur ueblichen Darstellung sieht man sofort dass dies erfuellt ist wenn ich den ueber die Anfangswerte gebildeten Vorfaktors des Terms A geeignet waehle :
solve(1/5*c0+1/10*c1+1/10*5^(1/2)*c1=0,c0);
Die Loesung lautet :
c0=-c1*(1+wurzel(5) )/2
Fuer c1=-1 erhalt man (nicht unbedingt ueberraschenderweise)
c0= goldener Schnitt
Fib DZGL
s0=Phi, s1=1
**********
Bild der Spirale :
with(plots);
c1:=-1; c0:=-1/2*c1*(1+5^(1/2));
l:=evalc(rsolve({s(n+2)=s(n+1)+s(n),s(0)=c0,s(1)=c 1},s));
complexplot(l,n=0..50);
http://home.arcor.de/richardon/2008/fib/fibabb2.gif
Einige einfachste Loesungen der DZGL's vom Fibonaccityp :
Anfangswert Kuehlschrankform (2011)
f(n+2)=f(n+1)+2*f(n), f(0)=k, f(1)=2*k
Loesung : k*2^n
**************
f(n+2)=2*i*f(n+1)+f(n), f(0)=1, f(1)=i
Loesung : i^n = exp(i*Pi/2*n)
**********************
f(n+2)=-2*i*f(n+1)+f(n), f(0)=1, f(1)=-i
Loesung : (-i)^n
**********************
f(n+2)=2*i*f(n+1)+f(n), f(0)=1, f(1)=2*i
Loesung : (n+1)*i^n
**********************
f(n+2)=2*i*f(n+1)+f(n), f(0)=1, f(1)=-2*i
Loesung : (n+1)*(-i)^n
**********************
f(n+2)=f(n+1)-1/4*f(n), f(0)=k, f(1)=k
Loesung : k*(n+1)*(1/2)^n
***************************************
f(n+2)=f(n+1)-1/4*f(n), f(0)=2*k, f(1)=k
Loesung : 2*k*(1/2)^n
***********************************
Kuehlschrankform die zu Mersenne fuehrt
f(n+2)=f(n+1)+2*f(n), f(0)=1, f(1)=2
Loesung : 2^n
**************
EDIT 2010
Wenn ich noch bei allen wuesste wie ich damals darauf kam waere ich froh :-)
EDIT 2011
Indem man nicht den Re und Im Teil getrennt betrachtet wie im folgenden ?
Sowie durch herantasten.
Gleichungen um die einfachen Loesungen zu konstruieren :
***********
Fib P 1 DZGL
***********
f[k]=P*f[k-1]+f[k-2]
f0=1, f1=c1
l:=((rsolve({y(n+2)=P*y(n+1)+y(n),y(0)=1,y(1)=c1}, y)));
http://home.arcor.de/richardon/2011/FibP1.gif
***********
Fib Q 1 DZGL
***********
f[k]=f[k-1]+Q*f[k-2]
f0=1, f1=c1
l:=((rsolve({y(n+2)=y(n+1)+Q*y(n),y(0)=1,y(1)=c1}, y)));
http://home.arcor.de/richardon/2011/FibQ1.gif
***********
Fib PQ 1 DZGL
***********
f[k]=P*f[k-1]+Q*f[k-2]
f0=1, f1=c1
l:=((rsolve({y(n+2)=P*y(n+1)+Q*y(n),y(0)=1,y(1)=c1 },y)));
http://home.arcor.de/richardon/2011/FibPQ1.gif
Verhulst DZGL Logistische Gleichung :
****************************
x[n]=r*x[n-1]*(1+x[n-1])
x0=0..1
Loesungen :
*********
http://home.arcor.de/richardon/2010/verhulstlsg.gif
(Erwin Schreoeder verwender den sinus statt cosinus bei r=4)
Losungsweg A :
************
Der Loesungsansatz der Verhulst Gleichung besteht aus zwei Koordinatentransformationen. Eine lineare Transformation
T1: z(k)=1-2*x(k)
sowie eine nichtlineare Substitution, Transformation :
T2: s(k)=g{z(k)}
Folgende Aquivalenzen fueren zu T2:
***************************
r=4 : arccos(2*x^2-1) = |2*arccos(x)|
r=2 :ln(x)^2=2*ln(x)
Loesungsweg B fuer r=2
******************
Bestimmen der einzigen mehrfachen Nullstelle des Uebertragungspolynoms nach der Transformation T1
Der einfachste Prototyp der quadratischen Form ist
Die zentrierte Verhulst DZGL (Mandelbrotform)
*********************
x(k+1) = 1/2*r*(x(k)-1)*(x(k)+1)+1
****************************
x0=-1..1
Loesungen :
*********
r:=2
x(k)=exp(2^(k)*ln|x0|) (strebt gegen 0)
*****************
r:=4
x(k)=cos(2^(k)*arccos|x0|)
*********************
Synthese:
*******
Folgt aus der Verhulst Gleichung unter T1 : x(k)=1/2*(1-z(k))
Beispiele der verketteten Polynome der zentrierten Verhulst Gleichung
http://home.arcor.de/richardon//2010/okt1.gif
http://home.arcor.de/richardon//2010/okt2.gif
http://home.arcor.de/richardon//2010/okt3.gif
Feigenbaumdiagramm der modifizierten Iteration :
http://home.arcor.de/richardon//2011/feige24.gif
http://www.quanten.de/forum/showthread.php5?t=2077
Aus der zentrierten Form lassen sich durch lineares Dezentrieren viele weitere Varianten der Verhulst Gleichung konstruieren, die mit der selben Methode geloest werden koennen.
Ansatz :
zentriertes Polynom :
1/2*r*(s-1)*(s+1)+1
lineares dezentrieren :
Substitution s:=p+q*z
fuehrt auf das Polynom :
1/2*r*(p+q*z)^2-1/2*r+1
Loesbarer Fall r=2 :
(p+q*z)^2
Loesbarer Fall r=4 :
2*(p+q*z)^2-1
allgemeine Verhulst DZGL
*******************
Jede Differenzengleichung der Form
x[k+1]=(p+q*x[k])^2
*****************
oder
x[k+1]=2*(p+q*x[k])^2-1
********************
laesst sich mit folender Substitution "zentrieren"
T1 : x[k]=(z[k]-p)/q
Und ist dann ueber T2 loesbar.
Beispiel VDZGL:
***********
Die Verhulst DZGL laesst sich durch folgende Substitution zentrieren :
x(k)=1/2*(1-z(k))
MAPLECODE ALS TEST
restart;g:=x1=2*x0*(1-x0);
> x1:=(1-z1)/2;
> x0:=(1-z0)/2;
> solve(g,z1);
und mittels x(k)=(1-2*z(k)) dezentrieren
MAPLECODE ALS TEST
restart;g:=x1=x0^2;
> x1:=(1-2*z1);
> x0:=(1-2*z0);
> solve(g,z1);
Nichtlinearer Fibonaccityp der zentrierten VDZGL fuer r=2
Die zentrierte VDZGL :
x(k+1)=x(k)^2, x(0)=x0
ist identisch mit folgender nichtlinearen DZGL zweiter Ordnung :
x(n+2)=|x(n+1)|*x(n)^2, x(0)=x(0), x(1)=x(0)^2
*************************************
(Es kann nur eine Aussage ueber den Betrag getroffen werden)
Dezentrieren auf Verhulst Form :
************************
Die Vehulst DZGL :
x(k+1)=2*x(k)*(1-x(k), x(0)=x0
ist identisch mit folgender nichtlinearen DZGL zweiter Ordnung :
x(n+2)=-1/2*( (1-2*x(n+1))*(1-2*x(n)^2)-1), x(0)=x(0), x(1)=2*x(0)*(1-x(0))
************************************************** **********
*************************
Schwingungs (harmonische) DZGL
*************************
x[1]:=cos(dx); dx ist die Schrittweite
y[1]:=sin(dx);
x[n+1]:=x[n]*c1 - y[n]*c2; # -> Cosinuswerte
y[n+1]:=y[n]*c1 + x[n]*c2; # -> Sinuswerte
Herleitung :
Eine exakte ! numerische Simulation der harmonischen Schwingung ergbt sich aus den Additionstheoremen.
Additionstheoreme
**************
http://upload.wikimedia.org/wikipedia/de/math/f/c/3/fc3b266ea031def32c9f13d0f08c9853.png
http://upload.wikimedia.org/wikipedia/de/math/2/d/4/2d4ada696dc1fb1f302309618c6cf5fa.png
Fuer eine Startwert x und eine Schrittweite dx erhaelt man aus der ersten Gleichung:
cos(x+dx)=cos(x)*cos(dx)-sin(dx)*sin(x)
Anm: Ziel ist es eine Substitution X(n)=cos(x+n*dx) durchzufuehren.
Die Werte fuer die Sinusfunktion koennte man ueber die Beziehung sin(x)^2+cos(x)^2=1 ausdruecken. Allerdings weist eine solche lteration aufgrund des Wurzelvorzeichens lediglich enen Gueltigkeitsbereich im Intervall 0-180 Grad auf :
http://home.arcor.de/richardon/2011/merman1.gif
Eleganter,allgemeiner und effizienter ist es die Sinusfunktion ebenfalls iterativ aus dem Additionstheorem zu berechnen :
cos(x+dx)=cos(x)*cos(dx)-sin(dx)*sin(x)
sin(x+dx)=sin(x)*cos(dx)+sin(dx)*cos(x)
dx stellt in einer iterativen Betrachtung eine Konstante dar =>
cos(x+dx)=c1*cos(x)-c2*sin(x)
sin(x+dx)=c1*sin(x)+c2*cos(x)
die Gleichungen sind exakt fuer :
c1=cos(dx)
c2=sin(dx)
Erstetz man C1 ud C2 durch Taylorapproximationen erhaelt man 1.Ordnung eine Variante der Euler Chromer Integration. (Nur eine formale Variante !)
c1=1
c2=0
Die "Merman Naeherung" entspricht eine Taylorapproximation 2.Ordung die sich auch graphisch herleiten laesst.
c1:=1-dx^2/2;
c2:=sqrt(dx^2-dx^4/4);
(Notwendig sind solche Approximationen nicht.)
Mittels Substitution erhalten wir ein DZL System fuer X(n),Y(n)
(Im folgenden in Kleinbuchstaben geschrieben)
restart;
N:=360; # Anzahl Abtastwerte
P:=3; # Anzahl Perioden
M:=P*N;
dx:=evalf(2*Pi/N);
c1:=1-dx^2/2; #(Beispiel Menrman Naeherung)
c2:=sqrt(dx^2-dx^4/4); #(Beispiel Menrman Naeherung)
x[1]:=c1;
y[1]:=c2;
for n from 1 to M do
x[n+1]:=x[n]*c1 - y[n]*c2; # -> Cosinuswerte
y[n+1]:=y[n]*c1 + x[n]*c2; # -> Sinuswerte
od:
# DRUCKROUTINEN
druck1:=seq([i,y[i]],i=1..M):
druck2:=seq([i,sin(i*2*Pi/360)],i=1..M):
druck3:=seq([i,x[i]],i=1..M):
druck4:=seq([i,cos(i*2*Pi/360)],i=1..M):
plot([[druck1],[druck2],[druck3],[druck4]]);
Der Cordic Algo baut auf die vorgestellte DZGL auf.
Die Taylor (graphischen) Naeherungen sind nur von theoretischen Interesse, da die Methode der Additionstheoreme exakt ist. Diese stellt keine integrale Appproximation dar ! Bereits eine Taylor, Merman Approximation 2.ter Ordnung ist sehr genau.
http://home.arcor.de/richardon/2011/merman_elegant.gif
Da die Approximation nach den Additionstheoremen exakt ist, stellt die Loesung der DZGL die harmonische Schwingung dar. Die Taylor Naeherungen ergeben dagegen sehr komplexe Ausdruecke fuer die Loesung.
(Kommentare bitte im Diskussionsthread :-)
Weitere Spezielle Lukasfolgen (in P Fibonacci Form)
**************************************
Fuer P=2 wird die P Fibonacci Form auch als Pell Folge bezeichnet :
Gegeben sei folgende Differenzengleichung :
y(0)=1, y(1)=1
y(k+1)=p*y(k)+y(k-1)
Der Wert y(k+1)/y(k) konvergiert gegen den Wert folgender Iteration :
z(k+1)=p+1/z(k), z(0)=1
und damit gegen
z=1/2*(p+-Wurzel (p^2+4))
Fuer p=2 somit gegen 1+Wurzel(2)
y[2] := 3
y[3] := 7
y[4] := 17
y[5] := 41
y[6] := 99
y[7] := 239
y[8] := 577
y[9] := 1393
y[10] := 3363 ...
Weitere Attraktoren der P-Lukasfolge P=1,2,3,...
http://home.arcor.de/richardon/2012/lukas1.gif
vBulletin® v3.8.8, Copyright ©2000-2024, vBulletin Solutions, Inc.