x=0 : pi/30 : pi/3 %dane x
y=sin(x)+rand(size(x))/l 00 %dane y (zdeformowana sinusoida)
Krok 1: Rysowanie wykresu surowych danych: Masz już zatem dane x i y. Sporządź ich wykres, wpisując polecenie plot (x,y,’o’).
Krok 2: Porównanie aproksymacji kwadratowej i sześciennej za pomocą polecenia Basic Fitting: Przejdź do okna graficznego, otwórz menu Tools i wybierz polecenie Basic Fitting (jak w poprzednim przykładzie). W oknie Basic Fitting zaznacz opcje quadratic oraz cubic. Zaznacz także pola opcji Show eąuations, Plot residuals i Show norm of residuals.
Rezultat przedstawiony jak na rysunku 4. Odchylenia dla punktu danych zostały wykreślone na dolnym wykresie, dla poszczególnych aproksymacji. Na wykresie pokazane są także normy. Zauważ, że jakkolwiek wizualnie obie krzywe niemal niewidocznie odchylają się od danych źródłowych, to jednak odchylenie aproksymacji sześciennej jest o rząd wielkości mniejsze niż kwadratowej. Stąd wniosek, że w tym przypadku należy użyć aproksymacji sześciennej.
Rys. 4. Porównanie aproksymacji kwadratowej i sześciennej dla tych samych danych, wykonane przy użyciu polecenia Basic Fitting z menu Tools.
(Zwróć uwagę, że jeśli wykonasz ten przykład samodzielnie, to wykresy będą się nieznacznie różnić, ponieważ dane y zawierają losowe zakłócenia).
Aproksymacja krzywych za pomocą funkcji wielomianowych
Zapewne warto rozumieć, jak odbywa się dopasowywanie krzywych (aproksymacja). MATLAB sprawia, że aproksymacja wielomianowa jest zadaniem dość łatwym, a to dzięki wbudowanym funkcjom wielomianowym, obliczającym potrzebne współczynniki poprzez minimalizację błędu aproksymacji metodą najmniejszych kwadratów.
W(x,a)=ai xn+ a2 xn'1 +...+a„ x+ an+i,
Zadaniem aproksymacji jest znalezienie funkcji f(x) przybliżającej w sposób optymalny zależność pomiędzy x i y.