Matroids Matheplanet Forum Index
Moderiert von nzimme10
Analysis » Folgen und Reihen » Grenzwert einer rekursiv definierten Folge berechnen
Seite 1   [1 2]   2 Seiten
Autor
Kein bestimmter Bereich J Grenzwert einer rekursiv definierten Folge berechnen
spitzwegerich
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 13.06.2005
Mitteilungen: 1327
  Themenstart: 2006-08-16

Sei die Folge a_n rekursiv definiert durch: a_0 = 1 a_1 = 0 a_(n+1) = a_n + 1/((2n-1)(2n+1)) a_(n-1) für alle n >= 1 Vermutung: lim(n->\inf ,a_n) = 1/e Die Folge ist in dieser  Diskussion aufgetaucht (heißt dort w_n), der Wert a_n ist die Wahrscheinlichkeit, dass in einem gemischten Kartenstoss aus n Kartenpaaren (insgesamt also 2n Karten) kein Paar zusammensteckt. In der verlinkten Diskussion habe ich mit Hilfe des Wallisschen Produkts eine Folge von oberen Schranken für die Folge a_n angegeben. Ich habe jedoch keine Idee, wie ich den Grenzwert 1/e beweisen kann. Kommt jemand drauf? [ Nachricht wurde editiert von spitzwegerich am 16.08.2006 11:37:02 ]


   Profil
gilgamash
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 28.10.2005
Mitteilungen: 495
Wohnort: Düsseldorf, Deutschland
  Beitrag No.1, eingetragen 2006-08-16

Grüße! ich habe nur mal schnell die Rekursion in Matlab eingegeben und ene Vermutung bestätigt: Der Grenzwert ist nicht 1/e sondern liegt irgendwo bei 0.071544...... Ich denke, in Deiner Rekursionsbedingung muss es auch n >= 2 heißen, sonst klappt das nicht:-) Vielleicht habe ich heute nochmal Zeit, mich damit zu beschäfigen. Gruß, G.


   Profil
kostja
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 29.12.2004
Mitteilungen: 5432
Wohnort: Stuttgart
  Beitrag No.2, eingetragen 2006-08-16

Hallo! Also entweder ist die Kovergenz extrem langsam, oder Deine Vermutung mit dem  Grenzwert scheint nicht zu stimmen: Danke für den Hinweis Snowball (Post No. 4), habs korrigiert, aber dann muss die Konvergenz schon extrem langsam sein \sourceontest.cpp (C++) #include using std::cout; using std::endl; #include using std::abs; double static rec_a(const int N, const int n, const double a_1, const double a_2) { if (n > N) return a_1; double a_n = a_1 + a_2/(2*(n-1)-1)/(2*(n-1)+1); return rec_a(N, n+1, a_n, a_1); } double a(const int n) { const double a_0 = 1.; const double a_1 = 0; if (n == 0) return a_0; if (n == 1) return a_1; return rec_a(n, 2, a_1, a_0); } int main() { cout << abs(1/M_E - a(1 << 30)) << endl; return EXIT_SUCCESS; } \sourceoff \sourceonbash g++ test.cpp -Wall -O3 -march=pentium-m && ./a.out 0.0241747 \sourceoff Achtung, die Optimierung durch den Compiler ist wichtig, sonst kann man (auf meiner Kiste zumindest) nur bis ca. n = 2^19 rechnen. MfG Konstantin [ Nachricht wurde editiert von kostja am 16.08.2006 11:09:59 ]


   Profil
fru
Senior Letzter Besuch: im letzten Monat
Dabei seit: 03.01.2005
Mitteilungen: 21456
Wohnort: Wien
  Beitrag No.3, eingetragen 2006-08-16

2006-08-16 10:41: gilgamash schreibt: Ich denke, in Deiner Rekursionsbedingung muss es auch n >= 2 heißen, sonst klappt das nicht:-) Hi gilgamash! Dann wäre aber a2 nicht definiert und an daher für alle n, die größer als 2 sind, ebenfalls unbestimmt. Liebe Grüße, Franz


   Profil
Snowball
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 15.07.2005
Mitteilungen: 497
Wohnort: Darmstadt
  Beitrag No.4, eingetragen 2006-08-16

Hallo, ich hatte bei der numerischen Auswertung auch zuerst das gleiche Problem wie ihr. Beachtet dabei, dass links in der Rekursionsgleichung nicht a_n, sondern a_(n+1) steht! Dann klappt es und "scheint" gegen 1/e zu konvergieren.


   Profil
spitzwegerich
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 13.06.2005
Mitteilungen: 1327
  Beitrag No.5, vom Themenstarter, eingetragen 2006-08-16

Danke für die Antworten. Ich habe die Definition nochmal genau angeschaut und kann keinen Fehler erkennen. Hier mal die ersten Werte der Folge: \ w_0 = 1 w_1 = 0 w_2 = 1/3 \approx 0.33333 w_3 = 1/3 \approx 0.33333 w_4 = 12/35 \approx 0.34286 w_5 = 47/135 \approx 0.34815 w_6 = 731/2079 \approx 0.35161 w_7 = 1772/5005 \approx 0.35405 ... 1/e \approx 0.36787 Man liest sofort aus der Definition ab, dass die Folge für n>=1 monoton steigend ist, für n>=3 sogar streng monoton. [ Nachricht wurde editiert von spitzwegerich am 16.08.2006 11:33:07 ]


   Profil
kostja
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 29.12.2004
Mitteilungen: 5432
Wohnort: Stuttgart
  Beitrag No.6, eingetragen 2006-08-16

Das ist seltsam. Ich bekomme mit meinen Programm für n=2^30 a_n = 0.343705... raus. Kann das an Rechenungenauigkeit liegen? MfG Konstantin


   Profil
gilgamash
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 28.10.2005
Mitteilungen: 495
Wohnort: Düsseldorf, Deutschland
  Beitrag No.7, eingetragen 2006-08-16

@fru: Oops, stimmt. war ein Versehen von mir, Da steht ja ein n+1 bei der linken Seite der Rekursion.... G.


   Profil
spitzwegerich
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 13.06.2005
Mitteilungen: 1327
  Beitrag No.8, vom Themenstarter, eingetragen 2006-08-16

@kostja: Möglicherweise gibts in deinem Programm in dem Ausdruck 2*(n-1)+1 einen Integer-Überlauf. Vielleicht solltest du aus n einen double machen. Ansonsten würd ich mal kontrollieren, ob die ersten Werte deines Programms mit den von mir angegebenen übereinstimmen. Fall ja, muss dein Programm irgendwo die Monotonie der Folge verletzen, dann solltest du herausfinden an welcher Stelle. Ich muss aber sagen, dass es mir eigentlich nicht darum geht, numerische Werte der Folge auszurechnen. Das habe ich bereits gemacht, so bin ich auch auf die Vermutung gekommen. Wichtiger wäre mir ein Beweis der Vermutung, oder zumindest eine Idee für einen Beweis. [ Nachricht wurde editiert von spitzwegerich am 16.08.2006 12:20:12 ]


   Profil
kostja
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 29.12.2004
Mitteilungen: 5432
Wohnort: Stuttgart
  Beitrag No.9, eingetragen 2006-08-16

2006-08-16 12:13: spitzwegerich schreibt: Ich muss aber sagen, dass es mir eigentlich nicht darum geht, numerische Werte der Folge auszurechnen. Das habe ich bereits gemacht, so bin ich auch auf die Vermutung gekommen. Uns doch auch nicht... 2006-08-16 12:13: spitzwegerich schreibt: Wichtiger wäre mir ein Beweis der Vermutung, oder zumindest eine Idee für einen Beweis. wir haben ja nur versucht Deine Vermutung zu widerlegen :-P MfG Konstantin


   Profil
Snowball
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 15.07.2005
Mitteilungen: 497
Wohnort: Darmstadt
  Beitrag No.10, eingetragen 2006-08-16

Du versuchst sie durch offensichtlich falsche numerische Berechnungen zu widerlegen? ... ;)


   Profil
kostja
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 29.12.2004
Mitteilungen: 5432
Wohnort: Stuttgart
  Beitrag No.11, eingetragen 2006-08-16

2006-08-16 12:59: Snowball schreibt: Du versuchst sie durch offensichtlich falsche numerische Berechnungen zu widerlegen? ... ;) Ich wäre Dir dankbar, wenn Du mir meinen Fehler zeigst :-D An einem Überlauf kann es nicht liegen, auch für n = 2^10, was für ein int kein Problem darstellen sollte, bekomme ich ein ähnliches Ergebniss. MfG Konstantin


   Profil
Ollie
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 03.05.2003
Mitteilungen: 5872
Wohnort: Aachen
  Beitrag No.12, eingetragen 2006-08-16

Hi, ich vermute auch 1/e als Grenzwert, was meine excelberechnung nahelegt. Vielleicht könnte man folgende Partialsumme ansetzen: a_n=sum((-1)^k/k!,k=0,n) und durch einsetzen in die Rekursionsgleichung versuchen, a_n vielleicht sogar explizit zu bestimmen. a_(n+1)=sum((-1)^k/k!,k=0,n+1)=(-1)^(n+1)/(n+1)!+a_n a_(n-1)=... nur so eine Idee. mfG [ Nachricht wurde editiert von Ollie am 16.08.2006 13:25:01 ]


   Profil
spitzwegerich
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 13.06.2005
Mitteilungen: 1327
  Beitrag No.13, vom Themenstarter, eingetragen 2006-08-16

@kostja Dein Programm liefert bei mir einen "Segmenation Fault", weil durch die Rekursion der Unterfunktionen-Stack explodiert. Kein Wunder, müssten doch 2^30 Funktionen gestartet werden bis mal die erste beendet werden kann. Die Werte für n=2,3,4,5 gibt dein Programm dagegen korrekt aus. Die richtige Methode ist es, die Rekursion in eine Schleife umzuwandeln: \sourceon include int main() {         double c, b=0, a=1, n=1;         while(1) {                 c = b+a/(2*n+1)/(2*n-1);                 a = b;                 b = c;                 n++;                 printf("%10.f: %.15f\n",n,c);         } } \sourceoff [ Nachricht wurde editiert von spitzwegerich am 16.08.2006 13:39:31 ]


   Profil
kostja
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 29.12.2004
Mitteilungen: 5432
Wohnort: Stuttgart
  Beitrag No.14, eingetragen 2006-08-16

2006-08-16 10:54: kostja schreibt: \sourceonbash g++ test.cpp -Wall -O3 -march=pentium-m && ./a.out 0.0241747 \sourceoff Achtung, die Optimierung durch den Compiler ist wichtig, sonst kann man (auf meiner Kiste zumindest) nur bis ca. n = 2^19 rechnen. MfG Konstantin


   Profil
spitzwegerich
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 13.06.2005
Mitteilungen: 1327
  Beitrag No.15, vom Themenstarter, eingetragen 2006-08-16

@kostja: Ich habe keine Ahnung, was bei dir genau passiert, aber das Programm kann trotz irgendwelcher Optimierungen so sicher nicht funktionieren. Denn ich bezweifle, dass deine Kiste genug Speicher hat, um 2^30 geschachtelte Unterprogrammaufrufe zu verkraften. Auch die folgende Überlegung zeigt, dass es so nicht gehen kann: Die Funktion zur rekursiven Berechnung ruft sich selbst zweimal auf, einmal mit n-1, einmal mit n-2. Insgesamt ergibt sich für die Anzahl der abzuarbeitenden Funktionen die 2^30-ste Fibonacci-Zahl. Diese Anzahl von Rechenoperationen kann dein Rechner nie nie bewältigen. Ich hoffe, dass du das einsiehst, und danach die Rekursion in eine Schleife umwandelst.


   Profil
spitzwegerich
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 13.06.2005
Mitteilungen: 1327
  Beitrag No.16, vom Themenstarter, eingetragen 2006-08-16

@Ollie: Du meinst, dass ich die Darstellung 1/e = exp(-1) = sum((-1)^k /k!,k=1,\inf) benutzen soll? Ich habe gerade ein wenig herumgespielt, ob ich meine Folge a_n mit irgendwelchen Partialsummen dieser Darstellung in Verbindung bringen kann, habe dabei aber nichts passendes gefunden. Was auch dagegenspricht, ist, dass dass die obige Darstellung für 1/e viel schneller konvergiert als meine Folge a_n. [ Nachricht wurde editiert von spitzwegerich am 20.08.2006 23:27:23 ]


   Profil
spitzwegerich
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 13.06.2005
Mitteilungen: 1327
  Beitrag No.17, vom Themenstarter, eingetragen 2006-08-16

Noch eine Rekursionsformel: Nach Definition gilt für n>=1 die Beziehung a_(n+1)-a_n = a_(n-1)/((2n-1)(2n+1)) Für n>=1 folgt mittels einer Teleskopsumme: a_(n+1) = a_1 + sum((a_(i+1)-a_i),i=1,n) = sum(a_(i-1)/((2i-1)(2i+1)),i=1,n) [ Nachricht wurde editiert von spitzwegerich am 16.08.2006 15:11:29 ]


   Profil
kostja
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 29.12.2004
Mitteilungen: 5432
Wohnort: Stuttgart
  Beitrag No.18, eingetragen 2006-08-17

Hallo Spitzwegerich, die Funktion rec_a ruft sich nur einmal rekursiv auf und es übergibt, die zur weiteren Berechnung nötigen Werte a_(n-2) und a_(n-1). Diese werden nicht erneut berechnet! Das Programm läuft also linear in n mit konstantem Speicherverbrauch, falls der Compiler optimiert. MfG Konstantin


   Profil
Wauzi
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.06.2004
Mitteilungen: 11604
Wohnort: Bayern
  Beitrag No.19, eingetragen 2006-08-17

Hallo, es müßte mit folgendem Ansatz gehen: f(x)=sum(a_n*x^n,n=0,\inf ) Dann ist f(x)=1+x*sum(a_n*x^n,n=1,\inf )+x/2*(sum(a_(n-1)/(2n-1)*x^n,n=1,\inf )-sum(a_(n-1)/(2n+1)*x^n,n=1,\inf )) und dann ergibt sich: f(x)=1+x^2/(2*(1-x))*(sum(a_n/(2n+1)*x^n,n=0,\inf )-sum(a_n/(2n+3)*x^n,n=0,\inf )) Hieraus bastelt man eine Differentialgleichung für f. Gruß Wauzi [ Nachricht wurde editiert von fed am 18.08.2006 01:21:56 ]


   Profil
spitzwegerich
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 13.06.2005
Mitteilungen: 1327
  Beitrag No.20, vom Themenstarter, eingetragen 2006-08-17

@kostja: Entschuldigung, ich hab offenbar nicht genau genug hingesehen bei deinem Programm. Jedenfalls hast du recht, so wie du es programmiert hast sollte es linear laufen. Andererseits glaube ich nicht, dass der gcc die Rekursion von selber in eine Schleife umbaut. Ich habe es auf meinem iBook G3 mit g++ -O3 -mcpu=750 -fsigned-char -mpowerpc-gfxopt kompiliert (gcc Version 3.4.6), und ich bekomme nach wie vor einen "Segmentation Fault". Mit dem gdb sieht man, dass es daran liegt, dass zuviele verschachtelte Funktionsaufrufe stattfinden. [ Nachricht wurde editiert von spitzwegerich am 17.08.2006 23:50:38 ]


   Profil
Wauzi
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.06.2004
Mitteilungen: 11604
Wohnort: Bayern
  Beitrag No.21, eingetragen 2006-08-18

So, ich habe mal auf die Schnelle gebastelt und bekomme folgendes Monster: Setzt man z^2=x, so ergibt sich: y'*(1-r(z))=1+r(z)*y mit r(z)=z^3/(2*(1-z^2)) Ob das jetzt so stimmt, weiß ich nicht, die Fehlersuche sei Geduldigeren überlassen. Aber der Weg erscheint mir gangbar. Und wir haben doch sicher hier ein paar Spezialisten für DGlen. Gruß Wauzi


   Profil
Quant
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 14.12.2005
Mitteilungen: 953
  Beitrag No.22, eingetragen 2006-08-18

hi, maple gibt ( falls y nach x abgeleitet wird ) nach einigem zicken folgende lösung: ttp://s2.bilder-hosting.de/img/A7VVW.jpg     Mfg edit:um mit dem großen bild nicht zu nerven,hab ich das h am anfang des links entfernt. [ Nachricht wurde editiert von Quant am 18.08.2006 00:40:47 ]


   Profil
Wauzi
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.06.2004
Mitteilungen: 11604
Wohnort: Bayern
  Beitrag No.23, eingetragen 2006-08-18

das ist ja beruhigend. so geht es also wohl nicht.


   Profil
spitzwegerich
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 13.06.2005
Mitteilungen: 1327
  Beitrag No.24, vom Themenstarter, eingetragen 2006-08-18

@Wauzi, Quant: Danke für eure Beiträge. Ich hab vor auch schon versucht, die erzeugende Funktion von a_n herzuleiten, konnte aber die sich ergebende Differentialgleichung nicht lösen (Maple konnte es auch nicht). Möglicherweise hab ich bei der Herleitung der Differentialgleichung aber verrechnet, denn soweit ich mich erinnern kann, hat das etwas anders ausgesehen als bei euch. Ich werde mir meinen alten Ansatz und den von Wauzi morgen nochmal genauer anschauen.


   Profil
Ollie
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 03.05.2003
Mitteilungen: 5872
Wohnort: Aachen
  Beitrag No.25, eingetragen 2006-08-18

Man könnte auch mal, versuchen, die Gleichung einer z-Transformation zu unterziehen und dann den Grenzwertsatz anzuwenden.  hier mal morgen sehen...


   Profil
Wauzi
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.06.2004
Mitteilungen: 11604
Wohnort: Bayern
  Beitrag No.26, eingetragen 2006-08-18

Dann will ich auch nochmal eine Idee in die Runde werfen. Eine Idee, die ich aber nicht geschafft habe, umzusetzen: Wäre die Rekursion ein bißchen anders, nämlich a_(n+1)=1/((2n-1)*(2n+1))*a_n+a_(n-1) dann würde dies auf einen schönen Kettenbruch führen. Vielleicht gibt es einen Rechentrick, die Folge geschickt abzuändern, um die Rekursion so hinzutrimmen, daß der Faktor nicht vor dem n-1 ten sondern vor dem n-ten Glied steht. Aber, wohlgemerkt, dies ist nur so eine vage Idee..... Gruß Wauzi


   Profil
Ollie
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 03.05.2003
Mitteilungen: 5872
Wohnort: Aachen
  Beitrag No.27, eingetragen 2006-08-19

Ich schieb mal hoch, weil es mich auch interessiert. Mein Versuch mit z-Trafo hat leider nicht geklappt. Vielleicht hat ja einer noch eine Idee.


   Profil
spitzwegerich
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 13.06.2005
Mitteilungen: 1327
  Beitrag No.28, vom Themenstarter, eingetragen 2006-08-19

2006-08-18 00:15: Wauzi schreibt: So, ich habe mal auf die Schnelle gebastelt und bekomme folgendes Monster: Setzt man z^2=x, so ergibt sich: y'*(1-r(z))=1+r(z)*y mit r(z)=z^3/(2*(1-z^2)) Wie hast du die Gleichung hergeleitet? Das was in deinem vorherigen Beitrag steht, kann ich nachvollziehen. Ich schreibe mal auf, was ich versucht habe, um die erzeugende Funktion f(x) zu berechnen. Es ergibt sich (ähnlich wie bei Wauzi): f(x) = 1 -x + x f(x) + 1/4 x sqrt(x) int(f(x)/sqrt(x),x) - 1/4 sqrt(x) int(sqrt(x) f(x),x) Da der Fed-Editor (warum gibts hier eigentlich kein TeX?) momentan äußerst langsam reagiert, schreibe ich nur noch die Anleitung auf, wie ich weitergemacht habe: Die beiden Seiten leitet man nun einmal bzw. zweimal ab, und kann damit dann die beiden Integralausdrücke als Linearkombination von 1, f(x), xf(x), f'(x), xf'(x), xf''(x), x^2*f''(x) darstellen. Eingesetzt in die obige Gleichung ergibt sich dann eine gewöhnliche Differentialgleichung für f. In meinem Fall konnte Maple die Differentialgleichung nicht lösen, möglicherweise hatte ich mich aber verrechnet. Vielleicht mag ja jemand nochmal nachrechnen. Deine Idee mit der Kettenbruchentwicklung gefällt mir, Wauzi. Ich habe ein wenig herumgespielt, bin aber auf keine passende Variante der Rekursionsvorschrift gekommen. Auch die Kettenbruchentwicklung der ersten Folgenglieder habe ich mir angesehen, konnte aber keine Regelmäßigkeit erkennen. [ Nachricht wurde editiert von spitzwegerich am 19.08.2006 19:39:03 ]


   Profil
Wauzi
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.06.2004
Mitteilungen: 11604
Wohnort: Bayern
  Beitrag No.29, eingetragen 2006-08-19

Hallo spitzwegerich, mein Ansatz ergibt sich durch folgende Idee: Setze ich x=z^2, so steht in der Summe sum(a_n/(2n+1)*z^2n,n=0,\inf )= 1/z*sum(a_n/(2n+1)*z^(2n+1),n=0,\inf ) Damit ist die Ableitung der Summe =  sum(a_n*z^2n,n=0,\inf )=sum(a_n*x^n,n=0,\inf ) Meine Kettenbruchidee rührt von Folgendem her: Betrachten wir einen Kettenbruch der Art: X=[0;...,r(n),....], so ist X=lim(n->\inf ,b(n)/c(n)) mit: b(0)=1 b(1)=0 c(0)=0 c(1)=1. Der Rest ist eine für beide Folgen gleiche Rekursion: b(n+1)=r(n)*b(n)+b(n-1) ( Für c genauso) In unserer Folge steht das r(n)=1/(4n^2-1) nur beim falschen Folgenglied. Meine Idee war, die Folge umzuändern, so daß dieses Manko beseitigt wird. Aber noch immer ist mir dazu keine Idee gekommen.   Gruß Wauzi


   Profil
spitzwegerich
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 13.06.2005
Mitteilungen: 1327
  Beitrag No.30, vom Themenstarter, eingetragen 2006-08-20

Der Fed-Editor reagiert wieder, ich schreibe mal genauer auf, was ich gerechnet habe. Ich habe für die erzeugende Funktion f die Gleichung: f(x) = 1 -x + x f(x) + 1/4 x sqrt(x) int(f(x)/sqrt(x),x) - 1/4 sqrt(x) int(sqrt(x) f(x),x) Ableiten auf beiden Seiten führt zu: f'(x) = -1 +f(x) + x f'(x) + 3/8 sqrt(x) int(f(x)/sqrt(x),x) - 1/8 1/sqrt(x) int(sqrt(x) f(x),x) Nochmaliges Ableiten ergibt: f''(x) = 1/4 f(x) + 2 f'(x) + x f''(x) + 3/16 1/sqrt(x) int(f(x)/sqrt(x),x) + 1/16 1/(x sqrt(x)) int(sqrt(x) f(x),x) Mit Hilfe der zweiten und der dritten Gleichung lassen sich jetzt die beiden Integralausdrücke als Linearkombination von Ausdrücken der Form x^k f^(l) darstellen: sqrt(x) int(f(x)/sqrt(x),x) = 2/3 \( 2 - 2 f(x) - x f(x) + 2 f'(x) - 10 x f'(x) + 4 x f''(x) - 4 x^2 f''(x) \) 1/sqrt(x) int(sqrt(x) f(x),x) = 2 \( -2 +2 f(x) - x f(x) -2 f'(x) - 6 x f'(x) + 4 x f''(x) - 4 x^2 f''(x) \) Einsetzen in die erste Gleichung liefert jetzt eine gewöhnliche lineare Differentialgleichung: 3 + x -3 f(x) -x f(x) + x^2 f(x) + 4 x f'(x) + 4 x^2 f'(x) - 4 x^2 f''(x) + 4 x^3 f''(x) = 0 Maple 10 ist nicht in der Lage, die Differentialgleichung zu lösen, die Fehlermeldung ist: Error, (in odsolve/2nd_order/0F1/parameters) unable to compute coeff Die Differentialgleichung stimmt aber ziemlich sicher, denn der dsolve-Befehl mit dem Parameter "series" zeigt die richtige Reihe. Ist jemand in der Lage, die Differentialgleichung zu lösen? [ Nachricht wurde editiert von spitzwegerich am 20.08.2006 23:37:12 ]


   Profil
Ollie
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 03.05.2003
Mitteilungen: 5872
Wohnort: Aachen
  Beitrag No.31, eingetragen 2006-08-20

doch nicht. schade [ Nachricht wurde editiert von Ollie am 20.08.2006 21:29:09 ]


   Profil
Snowball
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 15.07.2005
Mitteilungen: 497
Wohnort: Darmstadt
  Beitrag No.32, eingetragen 2006-08-20

Maple 8 spuckt auch eine Lösung aus, geht allerdings über zwei Zeilen und enthält Integrale über Besselfunktionen und hypergeometrische Funktionen.


   Profil
spitzwegerich
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 13.06.2005
Mitteilungen: 1327
  Beitrag No.33, vom Themenstarter, eingetragen 2006-08-20

@Ollie: Ich habe ausprobiert, die Laplace-Transformation auf die Differentialgleichung anzuwenden. Dabei kommt aber nur wieder eine neue, für Maple ebenfalls unlösbare Differentialgleichung raus. @Snowball: Hast du die Randwerte f(0)=1, f'(0)=0 mit übergeben? Weil ansonsten gibt Maple die komplette parametrische Lösung aus, und falls das bei dir der Fall war, sollte die Lösung durch die Zusatzbedingungen ein wenig handlicher werden. Außerdem könntest du durch dsolve(ode,f(x),series); mal sicherstellen, dass du die DGL richtig eingetippt hast. Es muss dabei etwas von der Form 1 + 1/3 x^2 + 1/3 x^3 + 12/35 x^4 + 47/135 x^5 + O(x^6) herauskommen. [ Nachricht wurde editiert von spitzwegerich am 20.08.2006 23:24:06 ]


   Profil
Wauzi
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.06.2004
Mitteilungen: 11604
Wohnort: Bayern
  Beitrag No.34, eingetragen 2006-08-20

Hallo, auch ich habe vorhin wieder ein wenig rumgerechnet und glaube mittlerweile, daß eine DGl nicht weiterführt. Zumindest nicht der Versuch, sie zu lösen, da möglicherweise eine explizite Darstellung gar nicht existiert. Deshalb bin ich nochmal auf die Ausgangsdefinition gegangen. Ich definiere eine Folge s(n): Setzt man r(n)=1/(4n^2-1), so ist a(n+1)=a(n)+r(n)a(n-1) =(1+r(n))*a(n-1)+r(n-1)*a(n-2)= =s(n-1)*a(n-1)+s(n-0)*r(n-1)*a(n-2) mit s(n):=1 =(s(n-1)+r(n-1)*s(n-0))*a(n-2)+s(n-1)*r(n-2)*a(n-3)= =s(n-2)*a(n-2)+s(n-1)*r(n-2)*a(n-3) Damit ist also s(n-k)=s(n-k+1)+r(n-k+1)*s(n-k+2) Mir erscheint die Behandlung der Folge s einfacher zu sein. Diese Folge s läßt sich als Bruch schreiben mit einem einfachen Produkt im Nenner. Eine geschickte Abschätzung des Zählers könnte ermöglichen, s(2) zu bestimmen. Dann ist a(n+1)=s(2)*a(2)+0=s(2)/3 Explizit läßt sich s(2) genausogut bzw genauso schlecht bestimmen wie Glieder von a(n). Die Möglichkeit ist aber die, für große n s besser als a in den Griff zu bekommen Gruß Wauzi


   Profil
spitzwegerich
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 13.06.2005
Mitteilungen: 1327
  Beitrag No.35, vom Themenstarter, eingetragen 2006-08-21

Ich verstehe nicht, wie die Folge s_n definiert sein soll, Wauzi. Wenn ich richtig ahne, was du machen willst, dann bräuchtest du etwas von zwei Variablen abhängiges (also s(n,k)). Ganz oben habe ich geschrieben, dass die Folge ursprünglich aus  dieser Diskussion stammt, siehe Beitrag 9 dort. Ich wiederhole hier kurz, was ich von der dortigen Information für interessant und möglicherweise brauchbar halte. 1.) Die Folge heißt in der verlinkten Version w_n und wurde als ein Quotient a_n/b_n von ganzzahligen Folgen definiert. Dabei ist der Zähler a_n die "komplizierte" Folge, der Nenner b_n besitzt eine explizite Darstellung. Leider lässt sich die Notation nicht mehr analog zu der verlinkten Diskussion wählen, ich nenne die Zählerfolge darum jetzt b_n, die Nennerfolge braucht keinen Namen. Es gilt a_n = b_n (2^n n!)/(2n)! wobei b_n eine durch folgende Rekursionsvorschrift gegebene ganzzahlige Folge ist: b_0 = 1 b_1 = 0 b_(n+1) = (2n+1) b_n + b_(n-1) Vielleicht lohnt es sich, diese "Zählerfolge" b_n näher unter die Lupe zu nehmen. Die alternierende Version dieser Folge ist unter der Nummer A000806 in der "Online-Encyclopedia of Internet Sequences" verzeichnet. Da dort keine explizite Darstellung angegeben ist, gehe ich davon aus, dass es keine gibt. Dort ist außerdem ein Zusammenhang zu den Bessel-Polynomen y_n angegeben. (a_n ist der Absolutwert des Bessel-Polynoms y_n an der Stelle -1.) 2.) Mit Hilfe des Wallisschen Produkts habe ich eine Folge s_n von oberen Schranken angegeben (siehe Beiträge 10 und 12 in der verlinkten Diskussion), man überlegt sich auch leicht, dass s_n den selben Grenzwert wie a_n besitzt. Definition von s_n: s_2 = 1/8 \pi s_3 = 15/128 \pi für n >= 2: s_(n+1) = (1 - 1/((2n)^2)) s_n + 1/((2n)^2) (1- 1/((2(n-1))^2) ) s_(n-1) Wenn man also zeigen könnte, dass der Grenzwert von s_n gleich 1/e ist, dann folgt diese Aussage auch für a_n und die Aufgabe wäre gelöst.


   Profil
Wauzi
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.06.2004
Mitteilungen: 11604
Wohnort: Bayern
  Beitrag No.36, eingetragen 2006-08-21

Auf Ausdrücke wie den letzten und auf das Wallissche Produkt bin ich auch gekommen, aber das Problem ist, daß der Grenzwert weniger von den großen n, sondern von den Anfangswerten abhängt. Mit einer zu deiner Folge b(n) verwandten habe ich mich schon mal beschäftigt und habe zumindest die erzeugende Funktion, allerdings in einer unschönen Reihendarstellung herausbekommen. Bei mir war aber der multiplikative Faktor nicht 2n+1 sondern n. Und das ist dann doch bei der erzeugenden Funktion ein weiter Unterschied. Aber ich bleibe da nochmal dran, das Problem ist interessant. Gruß Wauzi  


   Profil
Ollie
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 03.05.2003
Mitteilungen: 5872
Wohnort: Aachen
  Beitrag No.37, eingetragen 2006-08-21

Ich habe mal bei mathworld gestörbert, hier Was meinen die hier mit "solved" ? Ich glaube, durch die Umformungen wird nur die Konvergenz beschleunigt, so daß es numerisch besser lösbar ist, oder übersehe ich was ? Bild


   Profil
fru
Senior Letzter Besuch: im letzten Monat
Dabei seit: 03.01.2005
Mitteilungen: 21456
Wohnort: Wien
  Beitrag No.38, eingetragen 2006-08-21

Hi Ollie! Das ist hier nicht brauchbar, weil bei uns die Koeffizienten x,y nicht konstant sind. Einer ist eine Funktion von n. Liebe Grüße, Franz [ Nachricht wurde editiert von fru am 21.08.2006 13:44:37 ]


   Profil
spitzwegerich
Senior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 13.06.2005
Mitteilungen: 1327
  Beitrag No.39, vom Themenstarter, eingetragen 2006-08-21

@Ollie: In unserem Fall liegt leider keine lineare Rekursionsgleichung vor. Der von dir verlinkte Mathworld-Artikel ist deshalb nicht anwendbar. Für lineare Rekursionsgleichungen ist die Frage nach dem Grenzwert in vielen Fällen ziemlich einfach zu beantworten: Falls nicht gerade die Summe der Koeffizienten (in dem Mathworld-Artikel wäre es A + B + C + ...) gleich 1 ist, ist der Grenzwert -- sofern er existiert -- gleich 0. Das sieht man, indem man auf beiden Seiten der Rekursionsgleichung den Grenzübergang vornimmt. Daraus ergibt sich dann für den Grenzwert a die Gleichung a = (A + B + C + ...) * a Die einzige Lösung ist a=0. Für unsere nichtlineare Rekursionsgleichung liefert dieser Ansatz (Grenzübergang auf beiden Seiten der Rekursionsgleichung) jedoch nichts brauchbares: lim(n->\inf,a_n)=lim(n->\inf,a_(n+1)) = lim(n->\inf,(a_n + 1/((2n-1)(2n+1)) a_(n-1) ) )= = lim(n->\inf,a_n) + 0*lim(n->\inf, a_n) = lim(n->\inf,a_n) [ Nachricht wurde editiert von spitzwegerich am 21.08.2006 14:17:46 ]


   Profil
-->> Fortsetzung auf der nächsten Seite -->>
Seite 1Gehe zur Seite: 1 | 2  

Wechsel in ein anderes Forum:
 Suchen    
 
All logos and trademarks in this site are property of their respective owner. The comments are property of their posters, all the rest © 2001-2023 by Matroids Matheplanet
This web site was originally made with PHP-Nuke, a former web portal system written in PHP that seems no longer to be maintained nor supported. PHP-Nuke is Free Software released under the GNU/GPL license.
Ich distanziere mich von rechtswidrigen oder anstößigen Inhalten, die sich trotz aufmerksamer Prüfung hinter hier verwendeten Links verbergen mögen.
Lesen Sie die Nutzungsbedingungen, die Distanzierung, die Datenschutzerklärung und das Impressum.
[Seitenanfang]