Einzelnen Beitrag anzeigen
  #106  
Alt 29.05.12, 11:51
Benutzerbild von richy
richy richy ist offline
Singularität
 
Registriert seit: 01.05.2007
Ort: karlsruhe
Beitr?ge: 4.170
Beitrag AW: Math Verhulst 1989

************************************************** *********
Wie genau approximiert der analytisch berechnete Zweig n der Umkehrfunktion die exakte reverse Funktion, wenn beide sich graphisch scheinbar ueberdecken ?
************************************************** *********

Numerisches Experiment :

Es wird ein Loesungszweig n fest vorgegeben und yi0 von 0.1 bis 0.9 in 50 Schritten durchschritten. Die Fehlerabweichung der beiden Funktionen wird mittels der Methode der kleinsten Quadrate bestimmt.
Fuer yi0=0.2 stellt n=1 einen geeigneten "ueberdeckenden" Loesungszweig dar :

k=0 n_min=0 y_invers=.2890137599998 2^k=1
k=1 n_min=1 y_invers=.9216000000001 2^k=2
k=2 n_min=1 y_invers=.6400000000000 2^k=4
k=3 n_min=1 y_invers=.2000000000000 2^k=8


Darstellung des Fehlers fuer drei Zeitschritte m=3 ueber yi0 = 0.1 ... 0.9 (n=1)



Bereich y0=0.2 ... 0.3



Die Umkehrfunktion ist hier nicht nur an den gazzahligen Stuetzstellen exakt, sondern ueber den ganzen Funktionsverlauf.

Weiteres Beispiel :
n=2 m=4



Quellcode :

> restart;
> N_max:=100;
> ta:=0; te:=3;
> dt:=(te-ta)/(N_max-1);
>
> Z_max:=50;
> ya:=0.1; ye:=0.9;
> dy:=(ye-ya)/(Z_max-1);
> y0:=ya;
>
> for jj from 0 to Z_max-1 do
> t:=ta;
> y0:=y0+dy;
> for i from 0 to N_max-1 do
> y[i]:= evalf(1/2*(1-cos(2^(t)*arccos(1-2*y0))));
> t:=t+dt;
> od;
>
> t:=ta;
> err[jj]:=0;
>
> for i from 0 to N_max-1 do
> yi[i]:=y[N_max-1-i];
> yi1[i]:=evalf(1/2*(1-cos(2^(-t)*(arccos(1-2*yi[0])+1*2*Pi))));
> t:=t+dt;
> err[jj]:=err[jj]+( yi1[i]-yi[i] )^2 ;
> od:
>
> od; #of jj#
> druck_err:=seq([jj, err[jj]],jj=0..Z_max-1):
> plot([[druck_err]]);

Ge?ndert von richy (29.05.12 um 12:49 Uhr)
Mit Zitat antworten