Nicht lineare Kurvenanpassung (TRDL)
- Aktualisiert2025-07-30
- 5 Minute(n) Lesezeit
Bestimmt entweder anhand des Levenberg-Marquardt- oder anhand des Trust-Region-Algorithmus nach der Dogleg-Methode die Parameter, die die Eingangspaare (X, Y) und damit eine nicht lineare Funktion des Typs y = f(x,a) am besten erfüllen (a sind die Parameter). Die polymorphe Instanz muss manuell ausgewählt werden.

Ein-/Ausgänge
Daten
—
Daten enthält statische Daten, die von der benutzerdefinierten Funktion während der Ausführung benötigt werden.
f(x,a)
—
f(x,a) ist eine Referenz auf das VI, mit dem das Anpassungsmodell implementiert wird. a sind die von LabVIEW berechneten Parameter. Verwenden Sie die VI-Vorlage, die sich unter labview\vi.lib\gmath\NumericalOptimization\LM model function und gradient.vit befindet, um das VI anhand einer Vorlage zu erstellen.
Y
—
Y ist das Array mit den abhängigen Werten. Die Punkteanzahl muss größer als 0 und größer als die Anzahl der Anfangsparameter sein. Die Anzahl der Elemente in Y muss gleich der Anzahl der Elemente in X sein.
X
—
X ist das Array mit den unabhängigen Werten. Die Punkteanzahl muss größer als 0 und größer als die Anzahl der Anfangsparameter sein. Die Anzahl der Elemente von X muss der Anzahl der Elemente von Y entsprechen.
Gewichtung
—
Gewichtung ist ein Array mit den Gewichtungen für die Beobachtungswerte Y. Wenn Gewichtung offen gelassen wird, werden alle Elemente von Gewichtung automatisch auf 1 gesetzt. Wenn Gewichtung weniger Elemente als Y enthält, füllt dieses VI das Ende von Gewichtung mit Einsen auf, so dass die Länge von Gewichtung der Länge von Y entspricht. Wenn Gewichtung mehr Elemente als Y enthält, ignoriert das VI die zusätzlichen Elemente am Ende von Gewichtung. Bei Elementen kleiner als 0 wird mit dem Absolutwert gearbeitet.
Anfangsparameter
—
Anfangsparameter gibt die vermutete Lösung an. Der Erfolg einer nicht linearen Kurvenanpassung hängt davon ab, wie nah sich die Anfangsparameter an der Lösung befinden. Daher sollten Sie vor Anwendung dieses VIs alle zur Verfügung stehenden Quellen verwenden, um möglichst genaue Anfangskoeffizienten für die Schätzung zu erhalten.
Fehler (Eingang, kein Fehler)
—
Fehler (Eingang) beschreibt Fehlerbedingungen, die vor der Ausführung des Knotens auftreten. An Fehler (Eingang) werden Standardfehlerdaten übergeben.
Abbruch
—
Abbruch gibt die Bedingungen für den Abbruch des Anpassungsprozesses an.
Parametergrenzen
—
Parametergrenzen ist ein Cluster mit dem oberen und unteren Grenzwert für die zu optimierenden Parameter.
Methode
—
Methode legt das Anpassungsverfahren fest.
Anzahl der Funktionsaufrufe
—
Anzahl der Funktionsaufrufe gibt an, wie oft f(x,a) während des Anpassungsprozesses aufgerufen wurde.
Beste nichtlineare Anpassung
—
Beste nichtlineare Anpassung gibt die y-Werte des angepassten Modells aus, das den unabhängigen Werten in X entspricht.
Parameter für beste Anpassung
—
Parameter für beste Anpassung ist das Array aus Parametern, mit denen der mittlere gewichtete Fehler zwischen dem Lösungsvektor und den beobachteten y-Werten minimiert wird.
Kovarianz
—
Kovarianz ist die Matrix der Kovarianzen. Cjk ist die Kovarianz zwischen a[j] und a[k]. c[jj] ist die Varianz von a[j]. Dieses VI erzeugt die Kovarianz Cgemäß der folgenden Gleichung: C = (0,5D)^-1 , wobei D die Hessian der Funktion in Bezug auf ihre Parameter ist.
Restbetrag
—
Restbetrag gibt den mittleren gewichteten Fehler zwischen Beste nichtlineare Anpassung und beobachteten Y-Werten aus.
Fehler (Ausgang)
—
Fehler (Ausgang) enthält Angaben zum Fehler. Dieser Ausgang ist ein Standardausgang zur Fehlerausgabe. |
Daten
—
f(x,a)
—
Y
—
Fehler (Eingang, kein Fehler)
—
Abbruch
—
Max. Iterationen
—
Toleranz
—
Parametergrenzen
—
Methode
—
Anzahl der Funktionsaufrufe
—
Beste nichtlineare Anpassung
—
Kovarianz
—
Restbetrag
—
Fehler (Ausgang)
—