4 wxMaxima | |
→ | 4.10 Numerische Lösungen |
Ist ein Satz von Messwerten vorhanden, kann mit
lsquares_estimates(Daten, Variablen, Funktion, Koeffizienten [ , Optionen ]);
versucht werden, die Daten durch die vorgegebene Funktion
anzunähern.
Dabei werden bestimmte Koeffizienten der Funktion so gewählt, dass
die Summe der quadrierten Differenzen zwischen den y-Werten
der Punkte und der Funktion minimiert wird.
pdata: [ [ -525.0, 0.0 ], [ -470.0, 0.5 ], [ -420.0, 0.7 ], [ -330.0, 0.9 ], [ -220.0, 1.1 ], [ -120.0, 1.2 ], [ 0.0, 1.3 ] ]; disp("Matrix erzeugen:")$ M: apply('matrix, pdata); globalsolve: true; disp("Fitten:")$ lsquares_estimates(M, [x, y], y=m*x+n, [m, n]); disp("Plotten:")$ plot2d( [ [discrete, pdata], m*x+n ], [ x, -600, 0 ], [y, 0, 1.5], [ style, [points], [lines] ], [ legend, "Messpunkte", "Regressionsgerade" ], [ gnuplot_preamble, "set key left top" ] );
Die Funktion lsquares_estimates() erzeugt evtl.
Debug-Ausgabe. Im Beispiel werden die Punkte und die
Regressionsgerade geplottet.
Fitten mit einem anderen Kurvenverlauf als einer Gerade wäre hier
sicherlich sinnvoller. Die Gerade wurde hier gewählt, um das
Beispiel einfach und verständlich zu halten.