Funktion zur Kurve finden



  • @MatheDepp

    Du willst aus einem zweispaltigen Array mit X und Y- Wertepaaren eine Diagramm- Kurve darstellen als Funktion Y=f8X) mit welcher Du an jedem Zwischenwert für X einen interpolierten Y- Wert berechnen kannst?

    Dann Google mal nach stückweiser Interpolation!

    Oder mach einfach:

    - Unterteile das Array in Teilstücke
    - erstelle für jedes Intervall zw. zwei X- Werten zwei Quadratische Funktionen
    - derart, dass beide durch die angrenzenden Punkte verlaufen UND jeweils
    - durch den Startpunkt des voherigen Abschnittes bzw.
    - durch den Endpunkt des folgenden Abschnittes verläuft
    . mit zwei gegenläufigen Gewichtsfunktionen f(t) multiplizierst Du
    beide Qudratischen Funktionen und addierst das Ergebnis.
    - Laufparameter läuft für jedes Segmen 0.0. .. 1.0
    Die Summe beider Gewichrtsfunktionen muss für alle t 1.0 ergeben
    - Die Werte- Parre im Array müssen nach aufsteigenden X- Werten sortiert sein!

    - am besten geht das mit kubischen Gewichtsfunktionen.

    Ergebnis mit geeigneten Gewichtsfunktionen:

    Eine Funktion mit folgenden Eigenschaften:
    - Funktion im gesamten Bereich "Quasistetig"
    => Verlauf geht durch alle Stützpunkte,
    - Anstieg rechtseitig UND linksseitig der Kontrollpunkte gleich
    => tangentialer Verlauf.
    - Auch die 2. Ableitung ist im gesamten Bereich "Quasistetig"!

    "Quasistetig bedeutet:
    Obwohl für jeden Abschnitt andere Funktionen berechnet werden ist der resultierende Gesamtverlauf als stetig zu betrachten- von Rundungsfehlern am Übergang abgesehen.

    Wenn Du das geeignet in ne DLL packst, kannste das wie EINE normale Funktion benutzen ) Y= Funktion (X)

    Sone DLL klappt prima auch in Fremdprogrammen! (Ist so getestet)

    Gruss
    Frank


Anmelden zum Antworten