www.vorhilfe.de
- Förderverein -
Der Förderverein.

Gemeinnütziger Verein zur Finanzierung des Projekts Vorhilfe.de.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Impressum
Forenbaum
^ Forenbaum
Status VH e.V.
  Status Vereinsforum

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Suchen
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Geraden und Ebenen" - Annäherungsfunktion
Annäherungsfunktion < Geraden und Ebenen < Lin. Algebra/Vektor < Oberstufe < Schule < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Geraden und Ebenen"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Annäherungsfunktion: Problemstellung
Status: (Frage) beantwortet Status 
Datum: 17:09 Fr 13.03.2009
Autor: Sirvivor

Hi,

Ich habe eine Funktion, die von drei Variablen abhängt, allerdings für meine Verwendung zu sperrig ist. Daher suche ich nach einer schnell berechenbaren Annäherung an diese Funktion.
Ich habe es bereits mit Taylor u. Ä. vesucht, aber es ist nicht nur in einem Fenster gut gelaufen.

Die Funktion Lautet:
[mm] z=acos(\bruch{x}{\wurzel{x^{2}+y^{2}}}) [/mm]

Mit Taylor habe ich nach der 5. Entwicklung über x=0 folgendes erhalten:

[mm] z=-11,459*\bruch{x^{5}}{y^{5}}+19,1\bruch{x^{3}}{y^{3}}-57\bruch{x}{y}+90 [/mm]

-240 [mm] \le [/mm] x [mm] \le [/mm] 240
0 [mm] \le [/mm] y [mm] \le [/mm] 240
0 [mm] \le [/mm] z [mm] \le [/mm] 180

[Dateianhang nicht öffentlich]

Allerdings liefert die Taylor Annäherung für große |x| und kleine y sehr Abweichende Werte.
Deshalb habe ich alle Werte von z > 180 auf 180 setzen lassen. Dadurch sieht das Bild schon garnicht mehr so schlimm aus, aber dennoch bleiben die beiden Dreiecke Oben links und unten Links schlecht an das Original Angenähert.
[Dateianhang nicht öffentlich]

Gibt es da noch bessere methoden?
Vielleicht eine einfache methode den acos() anzunähern, den rest bekommt man noch irgendwie hin.
Die haubtproblematik, ist, dass ich zwei noch komplexere Funktionen Annähern muss. k(x,y,z). Wenn das mit der Ebene Hinhaut, dann kann man sich ja auh daran versuchen.
Der Grund für mein Problem ist, dass diese sowie die beiden komplexeren Rechnungen von einem 8-Bit Microcontroller bei 16MHz in weniger als 1 ms berechnet werden müssen [mm] (\sim [/mm] 5000 Operationen). Da bleibt keine Zeit um ständig Iterationsverfahren durchlaufen zu lassen, um Zwischenergebnisse zu erzeugen.
Die Taylorformel könnt man sogar noch prozessorfreundlicher schreiben.
[mm] z=((-11,459*\bruch{x*x}{y*y}+19,1)*\bruch{x*x}{y*y}-57)*\bruch{x}{y}+90 [/mm]

Ich hoffe jemand hat eine Heißen Tipp für mich.
Vielen Dank für eure Mühen.

PS: Eine der anderen Formeln lautet:
[mm] \beta=90+acos(\bruch{x²+y²+z²-4000-40\wurzel{x²+y²}}{200*\wurzel{-40*\wurzel{x²+y²}+x²+y²+z²+400}})+atan(\bruch{z}{\wurzel{x²+y²}-20}) [/mm]



Dateianhänge:
Anhang Nr. 1 (Typ: JPG) [nicht öffentlich]
Anhang Nr. 2 (Typ: JPG) [nicht öffentlich]
        
Bezug
Annäherungsfunktion: Antwort
Status: (Antwort) fertig Status 
Datum: 18:18 Fr 13.03.2009
Autor: MathePower

Hallo Sirvivor,


> Hi,
>
> Ich habe eine Funktion, die von drei Variablen abhängt,
> allerdings für meine Verwendung zu sperrig ist. Daher suche
> ich nach einer schnell berechenbaren Annäherung an diese
> Funktion.
>  Ich habe es bereits mit Taylor u. Ä. vesucht, aber es ist
> nicht nur in einem Fenster gut gelaufen.
>  
> Die Funktion Lautet:
>  [mm]z=acos(\bruch{x}{\wurzel{x^{2}+y^{2}}})[/mm]
>  
> Mit Taylor habe ich nach der 5. Entwicklung über x=0
> folgendes erhalten:
>  
> [mm]z=-11,459*\bruch{x^{5}}{y^{5}}+19,1\bruch{x^{3}}{y^{3}}-57\bruch{x}{y}+90[/mm]


Die Taylor-Formel liefert hier ein Polynom 5.Grades in x und y, und zwar

[mm]T_{5}\left(x,y\right)=\summe_{n=0}^{5}\summe_{i=1}^{n}a_{i,n-i}\left(x-x_{0}\right)^{i}*\left(y-y_{0}\right)^ {n-i}[/mm]

wobei [mm]\left(x_{0}, y_{0}\right)[/mm] der Entwicklungspunkt

und [mm]a_{i,n-i}=\left{\bruch{1}{i! * \left(n-i\right)!}\bruch{\partial^{n} z\left(x,y\right)}{\partial x^{i} \partial y^{n-i}}} \right|_{\left(x_{0}, y_{0}\right)} = \bruch{1}{i! * \left(n-i\right)!}z_{\underbrace{x \cdots x}_{i-mal}\underbrace{y \cdots y}_{\left(n-i\right)-mal}}\left(x_{0}, y_{0}\right)[/mm]


>  
> -240 [mm]\le[/mm] x [mm]\le[/mm] 240
>  0 [mm]\le[/mm] y [mm]\le[/mm] 240
>  0 [mm]\le[/mm] z [mm]\le[/mm] 180
>  
> [Dateianhang nicht öffentlich]
>  
> Allerdings liefert die Taylor Annäherung für große |x| und
> kleine y sehr Abweichende Werte.
>  Deshalb habe ich alle Werte von z > 180 auf 180 setzen

> lassen. Dadurch sieht das Bild schon garnicht mehr so
> schlimm aus, aber dennoch bleiben die beiden Dreiecke Oben
> links und unten Links schlecht an das Original Angenähert.
> [Dateianhang nicht öffentlich]
>  
> Gibt es da noch bessere methoden?
>  Vielleicht eine einfache methode den acos() anzunähern,
> den rest bekommt man noch irgendwie hin.
>  Die haubtproblematik, ist, dass ich zwei noch komplexere
> Funktionen Annähern muss. k(x,y,z). Wenn das mit der Ebene
> Hinhaut, dann kann man sich ja auh daran versuchen.
>  Der Grund für mein Problem ist, dass diese sowie die
> beiden komplexeren Rechnungen von einem 8-Bit
> Microcontroller bei 16MHz in weniger als 1 ms berechnet
> werden müssen [mm](\sim[/mm] 5000 Operationen). Da bleibt keine Zeit
> um ständig Iterationsverfahren durchlaufen zu lassen, um
> Zwischenergebnisse zu erzeugen.
>  Die Taylorformel könnt man sogar noch
> prozessorfreundlicher schreiben.
>  
> [mm]z=((-11,459*\bruch{x*x}{y*y}+19,1)*\bruch{x*x}{y*y}-57)*\bruch{x}{y}+90[/mm]
>  
> Ich hoffe jemand hat eine Heißen Tipp für mich.
>  Vielen Dank für eure Mühen.
>  
> PS: Eine der anderen Formeln lautet:
>  
> [mm]\beta=90+acos(\bruch{x²+y²+z²-4000-40\wurzel{x²+y²}}{200*\wurzel{-40*\wurzel{x²+y²}+x²+y²+z²+400}})+atan(\bruch{z}{\wurzel{x²+y²}-20})[/mm]
>  
>  


Gruß
MathePower

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Geraden und Ebenen"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
ev.vorhilfe.de
[ Startseite | Mitglieder | Impressum ]