Lektion 9 – Kurven Fitten und Interpolieren, Lineare Gleichungssysteme

Kurven fitten in MATLAB

In dieser Lektion des MATLAB-Kurses lernen Sie, wie man eine Kurven mit einer Ausgleichskurve fittet. Außerdem zeige ich Ihnen, wie Sie in MATLAB lineare Gleichungssysteme lösen.

Zum Erzeugen einer Ausgleichskurve durch Messdaten gibt es in MATLAB verschiedene Möglichkeiten:

  1. Fitten eines Polynoms über die Funktion polyfit
  2. Lösen eines überbestimmten Gleichungssystems über Methoden der linearen Algebra
  3. Verwenden der Curve Fitting Toolbox

In dieser Lektion lernen Sie, wie Sie die ersten beiden Varianten verwenden. Auf die Darstellung der dritten Variante verzichte ich, da es mein Ziel ist, dass alle Lektionen dieses Kurses auch ohne zusätzliche Toolboxes verwendbar sind.

Verwendung von polyval und polyfit

Für die folgenden Beispiele benötigen wir einen Beispieldatensatz. Der Datensatz besteht aus einem Vektor x mit 150 Werten zwischen 0 und 10 und einem Vektor y mit den Werten der Funktion 12+3*x^2-0.2*x^3. Außerdem addieren wir zu den Werten der Funktion noch etwas normalverteiltes Rauschen über die Funktion randn.

Sie können den Beipieldatensatz folgendermaßen erzeugen:

x = linspace(0,10,150); %150 Werte zwischen 0 und 10
y = 12+3*x.^2-0.2*x.^3 + randn(size(x));

Anstatt Zeile 2 können Sie auch den MATLAB-Befehl polyval verwenden. Der Befehl polyval([a b c d],x) wertet beispielsweise das Polynom a*x.^3+b*x.^2+c*x+d aus, wobei in a, b, c und d einzelne Zahlen stehen. Wenn Sie die Ordnung des Polynoms erhöhen wollen, müssen Sie einfach weitere Werte vor a einfügen. Die alternative Version von Zeile 2 sieht dann so aus:

y = polyval([-0.2,3,12],x) + randn(size(x));

Lösen von linearen Gleichungssystemen

Kurven Fitten durch Lösen von Linearen Gleichungssystemen