LeastSquaresCircle (FPScript)
Berechnet den Least-Squares Kreis (LSCI) einer zweidimensionalen Punktemenge (Referenzkreis der kleinsten Abweichungsquadrate). Wird verwendet zur Rundheitsbestimmung.
Syntax
LeastSquaresCircle(Points, [ OutputOptions = LSCI_OUTPUT_MIDDLE_CIRCLE ], [ CircleSize = 5000 ] [ , Algorithm = LSCI_ALGORITHM_KASA ])
oder
LeastSquaresCircle(Y, X, [ OutputOptions = LSCI_OUTPUT_MIDDLE_CIRCLE ], [ CircleSize = 5000 ] [ , Algorithm = LSCI_ALGORITHM_KASA ])
Die Syntax der LeastSquaresCircle-Funktion besteht aus folgenden Teilen:
Teil |
Beschreibung |
||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Points |
Die Y- und X-Punktemenge, für die der Least-Squares Kreis berechnet werden soll. Beide Komponenten des Signals müssen die gleiche Einheit besitzen. Erlaubte Datenstrukturen sind Signal. Es sind alle reellen Datentypen erlaubt außer Kalenderzeit und Zeitspanne. |
||||||||||||||||||||||||||||
Y |
Die Y-Punktemenge, die zur Berechnung des Least-Squares Kreises verwendet wird. Wenn Sie ein Signal angeben, wird dessen Y-Komponente verwendet. Die Einheit muss mit der Einheit des Arguments X übereinstimmen. Erlaubte Datenstrukturen sind Datenreihe und Signal. Es sind alle reellen Datentypen erlaubt außer Kalenderzeit und Zeitspanne. |
||||||||||||||||||||||||||||
X |
Die X-Punktemenge, die zur Berechnung des Least-Squares Kreises verwendet wird. Wenn Sie ein Signal angeben, wird dessen Y-Komponente verwendet. Die Einheit muss mit der Einheit des Arguments Y übereinstimmen. Erlaubte Datenstrukturen sind Datenreihe und Signal. Es sind alle reellen Datentypen erlaubt außer Kalenderzeit und Zeitspanne. |
||||||||||||||||||||||||||||
OutputOptions |
Gibt an, welche Ergebnisse zurückgegeben werden sollen. Mehrere Ergebnisse werden als Liste ausgegeben. Wenn z. B. der Radius des Referenzkreises und die Rundheit ausgegeben werden sollen, so muss das Argument den Wert LSCI_OUTPUT_MIDDLE_CIRCLE_RADIUS + LSCI_OUTPUT_ROUNDNESS enthalten. Das Argument OutputOptions kann folgende Werte haben:
Wenn das Argument nicht angegeben wird, wird es auf den Vorgabewert LSCI_OUTPUT_MIDDLE_CIRCLE gesetzt. |
||||||||||||||||||||||||||||
CircleSize |
Gibt die Anzahl der Werte zur Darstellung der gefitteten Kreise an. Wenn Sie Null angeben, bleibt die ursprüngliche Werteanzahl erhalten. Das Argument wird nur berücksichtigt, wenn für OutputOptions einer der aufgelisteten Kreise gewählt wurde. Erlaubte Datenstrukturen sind Einzelwert. Es sind alle ganzzahligen Datentypen erlaubt. Der Wert muss größer gleich 0 sein. Wenn das Argument nicht angegeben wird, wird es auf den Vorgabewert 5000 gesetzt. |
||||||||||||||||||||||||||||
Algorithm |
Bestimmt den Algorithmus zur Berechnung des Least-Squares Kreises. Es wird stets die Methode der kleinsten Fehlerquadrate verwendet. Das Argument Algorithm kann folgende Werte haben:
Wenn das Argument nicht angegeben wird, wird es auf den Vorgabewert LSCI_ALGORITHM_KASA gesetzt. |
Anmerkungen
Die Werte werden vor der Berechnung in 64-Bit Fließkommazahlen gewandelt.
Die Ausgabeoptionen des Arguments OutputOptions sind im folgenden Diagramm visualisiert:
Auf die Ergebnisse kann mit folgenden Listenelementnamen zugegriffen werden:
Konstante |
Bedeutung |
---|---|
.["Center_X"] |
X-Koordinate des Kreiszentrums des Referenzkreises. |
.["Center_Y"] |
Y-Koordinate des Kreiszentrums des Referenzkreises. |
.["Middle_Circle"] |
Referenzkreis (Referenzkreis der kleinsten Fehlerquadrate). |
.["Middle_Circle_Radius"] |
Radius des Referenzkreises. |
.["Inscribed_Circle"] |
Der auf den Referenzkreis bezogene größte Innenkreis. |
.["Inscribed_Circle_Radius"] |
Radius des auf den Referenzkreis bezogenen größten Innenkreises. |
.["Circumscribed_Circle"] |
Der auf den Referenzkreis bezogene kleinste Außenkreis. |
.["Circumscribed_Circle_Radius"] |
Radius des auf den Referenzkreis bezogenen kleinsten Außenkreises. |
.["Roundness"] |
Rundheitsabweichung als Differenz der Radien des Außen- und Innenkreises. |
.["Roundness_Max_to_Ref"] |
Spitze-zu-Referenz Rundheitsabweichung. |
.["Roundness_Ref_to_Min"] |
Referenz-zu-Tal Rundheitsabweichung. |
.["Roundness_Quadratic_Mean"] |
Quadratischer Mittelwert der Abweichungen der Datenpunkte zum Referenzkreis. |
Sie können auch stets die Syntax Formel.Listenelementname verwenden.
Hinweis Die LSCI-Rundheitsberechnungen orientieren sich an der aktuell gültigen Norm zur Rundheitsbestimmung, siehe [5].
Verfügbarkeit
FlexPro Professional, Developer Suite
Beispiele
LeastSquaresCircle(y, x)
Berechnet den LSCI-Kreis (Referenzkreis der kleinsten Abweichungsquadrate) einer Punktemenge.
LeastSquaresCircle(y, x, LSCI_OUTPUT_ROUNDNESS)
Berechnet den Least-Squares Kreis einer Punktemenge und gibt nur die Rundheit zurück.
LeastSquaresCircle(points, LSCI_OUTPUT_MIDDLE_CIRCLE_RADIUS + LSCI_OUTPUT_ROUNDNESS)
Berechnet den Least-Squares Kreis einer Punktemenge. Als Ergebnis wird der Radius des Referenzkreises und die Rundheit als Liste ausgegeben.
Dim alpha = Series(0, 2*PI, 0.05)
Dim r = 11.5 + Noise(1 # NumberOfRows(alpha), NOISE_NORMAL)
Dim points = Signal(Noise(1) + r*Sin(alpha), Noise(1) + r*Cos(alpha))
List("Points", points, "Least-Squares Circle", LeastSquaresCircle(points))
Berechnet den Least-Squares Kreis von zufällig verteilten Punkten in der zweidimensionalen Ebene.
Siehe auch
MaximumInscribedCircle-Funktion
MinimumCircumscribedCircle-Funktion
Analyseobjekt Kreisapproximation
Literatur
[1] I. Kasa: A curve fitting procedure and its error analysis. In: IEEE Trans. Inst. Meas., Vol. 25, Pages 8-14. http://ieeexplore.ieee.org/document/6312298/,1976.
[2] L.D. Coope: Circle fitting by linear and nonlinear least squares. In: Journal of Optimization Theory and Applications, Vol. 76, Issue 2, Pages 381-388. https://link.springer.com/article/10.1007/BF00939613,1993.
[3] V. Pratt: Direct least-squares fitting of algebraic surfaces. In: Computer Graphics, Vol. 21, Pages 145-152. https://dl.acm.org/citation.cfm?id=37420,1987.
[4] A. Al-Sharadqah and N. Chernov: Error Analysis for circle fitting algorithms. In: Electron. J. Statist., Vol. 3, Pages 886-911. https://projecteuclid.org/euclid.ejs/1251119958,2009.
[5] DIN Deutsches Institut für Normung e.V.: Part 1: Vocabulary and parameters of roundness (ISO 12181-1:2011); English translation of DIN EN ISO 12181-1:2011. In: Geometrical product specifications (GPS)- Roundness. 2011.