Aus Werten Funktion berechnen bzw. generieren?

...komplette Frage anzeigen

4 Antworten

Es gibt viele Interpolationen, die die gewünschten Stützstellen exakt treffen:

a) Polynominterpolation 

z.B.: bei der Polynomanalyse au folgender Seite:

http://www.gerdlamprecht.de/Mittelwerte.html

y[i]: hier bis zu 9 Werte mit Komma getrennt eingeben 

Dezimaltrennzeichen ist Punkt

x[i]: schon voreingestellt 0,1,2,.. kann aber editiert werden (muss aufsteigend sein)

Nachteil: starkes Überschwingen an den Rändern. Für mehr als 8 Stützstellen nicht geeignet

pow(x,y) = x^y =x hoch y

Die Funktion unten kann kopiert und per Plotter (LINK auch dort) angezeigt werden

b) Trigonometrische Interpolation

Vorteil: fast beliebig viele Punkte machbar

(noch habe ich die Berechnungsseite nicht online)

unter

http://www.gerdlamprecht.de/Liniendiagramm_Scientific_plotter.htm#ZZZZZ0118

kann man sich die Ergebnisse dieser Formel grafisch ansehen. Beispiele

99 - 111, 118

ABER: das ist alles theoretische Mathematik und hat mit der realen Physik meist nichts zu tun. Da nimmt man für Messwerte besser nichtlineare Regression und lässt eine Toleranz zu (also kein exaktes Treffen aller Punkte). Auch abschnittsweise Behandlung denkbar -> immer eine Frage, was man mit der Formel erreichen will.

Für Vorhersagen, also wie die Funktion (z.B. für physikalische Vorgänge) weiter geht, sind a) & b) absolut ungeeignet!!

Antwort bewerten Vielen Dank für Deine Bewertung

" bei der alles zutrifft"

Das nennt sich Interpolation.

Das lässt sich in jedem Fall mit Hilfe eines Gleichungssystems lösen.

Das Problem dabei ist, dass es sich in vielen Fällen um ein nichtlineares Gleichungssystem handelt, da kann es bei vielen Lösungsmethoden Schwierigkeiten mit der Konvergenz geben.

Beispiel :

y = a * e ^ (b * x) + c + d * x + f * x ^ 2

a, b, c, d, f sind Parameter

e ist die Eulersche Zahl 2.71828182845904523536...

y = 0.12 * e ^ (0.015 * x) + 1 + 0.2 * x + 0.017 * x ^ 2

Es sind 5 Parameter, deshalb muss man auch 5 Wertepaare (x | y) haben.

Stützwerte :

0 | 1.12

1 | 1.33881

2 | 1.59165

3 | 1.87852

4 | 2.19942

Damit erhält man nun folgendes nichtlineare Gleichungssystem :

I.) a * e ^ (b * (0)) + c + d * (0) + f * (0) ^ 2 = 1.12

II.) a * e ^ (b * (1)) + c + d * (1) + f * (1) ^ 2 = 1.33881

III.) a * e ^ (b * (2)) + c + d * (2) + f * (2) ^ 2 = 1.59165

IV.) a * e ^ (b * (3)) + c + d * (3) + f * (3) ^ 2 = 1.87852

V.) a * e ^ (b * (4)) + c + d * (4) + f * (4) ^ 2 = 2.19942

Wenn es dir gelingt, ein Programm zu finden, oder selber zu programmieren, was solche nichtlinearen Gleichungssysteme zuverlässig auflösen kann, dann hast du das, was du suchst.

Ich kenne kein kommerzielles Programm beim Namen, was das kann.

Diese Webseite kannst du mal ausprobieren :

http://www.arndt-bruenner.de/mathe/scripts/gleichungssysteme2.htm

(Eventuell muss für diese Webseite Java aktiviert werden, Arndt Brünner hat viele Java-Programme, kann auch sein, dass du kein Java brauchst.)

Die Eulersche Zahl e musst du auf der Webseite als 2.71828182845904523536 schreiben.

Wenn du diese Webseite benutzt dann erhältst du für manche Parameter jedes mal andere Werte, das verdeutlicht schon eine der Schwierigkeiten bei solchen Gleichungssystemen.

a = 0

b = 4.266931938231596

c = 1.12

d = 0.201795

f  = 0.017015

Der Parameter b ist unsicher und kann im Prinzip alles sein.

Die wahren Parameter lauteten :

a = 0.12

b = 0.015

c = 1

d = 0.2

f = 0.017

Das Beispiel zeigt bereits einer der Kernprobleme dabei, was allerdings nicht schlimm ist, wenn einem die Parameter egal sind.

Antwort bewerten Vielen Dank für Deine Bewertung

Sinnvoll wird dies eigentlich nur, wenn man außer einigen Punkten auch Angaben darüber liefert, welche Art von Funktion gesucht ist. Einige Möglichkeiten:

Lineare Funktion, quadratische Funktion, kubische Funktion, Exponentialfunktion, gebrochen rationale Funktion z.B. von der Form  f(x)=a*x+b/(x-c) , Funktion  f(x)=a*sin(x/b)+c  etc.

Die Wahl des Modells sollte der dahinter stehenden praktischen Aufgabe "auf den Leib geschneidert" sein. Ferner ist zu wählen, ob die Datenpunkte exakt getroffen werden müssen (Interpolation) oder ob auch eine gute Approximation genügt oder sogar sinnvoller ist als eine exakte Interpolation.

Antwort bewerten Vielen Dank für Deine Bewertung

Eigentlich nicht auszuschließen, kenne selbst nur welche, die dir Ableitungen etc. ausrechnen.

Jenachdem wie komplex die Abbildung ist, könntest du auch versuchen zu interpolieren.

Antwort bewerten Vielen Dank für Deine Bewertung

Was möchtest Du wissen?