Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

OBLICZENIA NUMERYCZNE za pomocą pakietu MATLAB. Miejsca zerowe i minima funkcji x1=fzero(f,x0) zwraca miejsce zerowe x1 nieliniowej funkcji jednej zmiennej.

Podobne prezentacje


Prezentacja na temat: "OBLICZENIA NUMERYCZNE za pomocą pakietu MATLAB. Miejsca zerowe i minima funkcji x1=fzero(f,x0) zwraca miejsce zerowe x1 nieliniowej funkcji jednej zmiennej."— Zapis prezentacji:

1 OBLICZENIA NUMERYCZNE za pomocą pakietu MATLAB

2 Miejsca zerowe i minima funkcji x1=fzero(f,x0) zwraca miejsce zerowe x1 nieliniowej funkcji jednej zmiennej f(x); argument x0 określa początkowe przybliżenie wartości szukanego miejsca zerowego; f jest łańcuchem znaków określającym funkcję Matlaba: nazwę funkcji lub definicję funkcji inline x1=fminbnd(f,x0,xk) zwraca wartość x1, dla której nieliniowa funkcja jednej zmiennej f(x) osiąga minimum; argumentami funkcji są liczby x0 i xk, określające początek i koniec przedziału poszukiwań, oraz łańcuch znaków f

3 X=fminsearch(f,X0) zwraca wektor wartości X, dla których nieliniowa funkcja wielu zmiennych osiąga minimum; argumentami funkcji są: wektor X0, określający punkt startowy poszukiwań oraz f – łańcuch znaków, jak w przypadku funkcji fzero

4 Wszystkie powyższe funkcje można wywołać z opcjonalnym argumentem opcje, np.. x1=fzero(f,x0,opcje) Opcje określają parametry wywołania tych funkcji. Domyślne ustawienia parametrów można zmieniać za pomocą funkcji optimset: opcje=optimset(parametr, wartość,...) optimset – uzyskamy listę parametrów i ich możliwe wartości optimset(fminbnd) – wyświetli nazwy parametrów oraz ich domyślne wartości dla funkcji fminbnd

5 Parametry zmieniane za pomocą funkcji optimset DiagnosticWydruk diagnostyki minimalizowanej funkcji lub rozwiązywanego równania; dopuszczalne wartości:on lub off(domyślna) DisplaySposób wyświetlania wyników: bez wyświetlania (off), wyświetlanie wyników po każdej iteracji (iter), wyświetlanie tylko ostatecznego rozw.(final-wart.dom.) MaxFunEvalsMaks.dozwolona liczba obliczeń wartości funkcji (l.całk.dodat.) MaxIterMaks.dozwol.liczba iteracji (l.całk.dodat.) TolXDokładność wykonywania obliczeń(l.+)

6 Wyznaczanie pierwiastków wielomianu Wielomian n-tego stopnia ma ogólną postać: W(x,a)=a 1 x n +a 2 x n a n x+a n+1, gdzie a 1, a 2, a 3,..., a n+1 są współczynnikami wielomianu, uszeregowane według malejących potęg zmiennej x.

7 Funkcje wyznaczające pierwiastki wielomianów a=poly( r )Zwraca wektor a współczynników a 1, a 2, a 3,..., a n+1 wielomianu W(x,a) o pierwiastkach podanych w postaci wektora r=[r 1, r 2,..., r n ] p=polyval(a,x0) Zwraca wartości wielomianu W(x,a) w punkcie x=x0; współczynniki wielomianu określa wektor a, przy czym muszą być one uszeregowane w kolejności od najbardziej znaczącego (a 1 ) do wyrazu wolnego (a n+1 ); jeśli x0 jest wektorem (macierzą), wartości wielomianu obliczane są dla wszystkich elementów wektora x0

8 r=roots(a)Zwraca wektor r pierwiastków wielomianu W(x,a); a jest wektorem współczynników wielomianu a 1, a 2, a 3,..., a n+1

9 Ćwiczenie: wyznacz pierwiastki wielomianów: W(x)=x 2 +3x-4 W(x)=3x 5 -2x 4 +5x 2 -7

10 METODY NUMERYCZNE ALGEBRY LINIOWEJ rank(A)Oblicza rząd macierzy A det(A)Oblicza wyznacznik macierzy kwadratowej A norm(A)Oblicza normę macierzy A cond(A)Oblicza liczbę warunkową macierzy A L=eig(A)Zwraca wektor L, zawierający wartości własne macierzy kwadratowej A [V,D]=eig(A)Wyznacza macierz D, zawierającą na przekątnej wartości własne macierzy A, oraz macierz V wektorów własnych odpowiadających tym wartościom (A*V=V*D)

11 Ćwiczenie: oblicz rząd, wyznacznik i liczbę warunkową macierzy A=[1 1 1;1 2 3; 1 –1 1].

12 Układy równań liniowych [L,U]=lu(A)Dokonuje rozkładu LU macierzy A, tzn.znajduje macierze L i U takie, że A=L*U, przy czym L-macierz trójkątna dolna, U-macierz trójkątna górna x=inv(A)*b lub x=b/A Rozwiązuje układ równań A*x=b (b- wektor kolumnowy) x=b/ARozwiązuje układ równań x*A=b (b- wektor wierszowy)

13 Ćwiczenie: dokonaj rozkładu LU macierzy A. Sprawdź, czy dla znalezionych macierzy L i U spełniona jest równość A=L*U. Ćwiczenie: napisz skrypt rozwiązujący układ równań liniowych: x x2 = 1 1 –1 1 x3 2

14 Ćwiczenie: napisz skrypt rozwiązujący układ równań liniowych dla danych wpisywanych z klawiatury.

15 INTERPOLACJA Zagadnienie interpolacji można sformułować następująco: na przedziale [a; b] danych jest n+1 różnych punktów x0, x1,..., xn, które nazywamy węzłami interpolacji, oraz wartości pewnej funkcji y=f(x) w tych punktach f(x0)=y0, f(x1)=y1,..., f(xn)=yn. Zadaniem interpolacji jest wyznaczenie przybliżonych wartości funkcji w punktach nie będących węzłami oraz oszacowanie błędu tych przybliżonych wartości.

16 W tym celu należy znaleźć funkcję F(x), zwaną funkcją interpolującą, która w węzłach interpolacji przyjmuje takie same wartości co funkcja y=f(x). Interpolacja jest w pewnym sensie zadaniem odwrotnym do tablicowania funkcji. Przy tablicowaniu mając analityczną postać funkcji budujemy tablicę wartości, przy interpolacji natomiast na podstawie tablicy wartości funkcji określamy jej postać analityczną.

17 Standardowe procedury Matlaba realizują interpolację za pomocą wielomianów pierwszego i trzeciego stopnia oraz funkcji sklejanych stopnia trzeciego.

18 Funkcje interpolujące yi=interp1(x,y,xi,metoda) Zwraca wektor yi, będący wartościami funkcji 1 zmiennej y=f(x) w punktach określonych wektorem xi; węzły interp.określają wektory x i y; metoda- łańcuch znaków określający metodę interp. zi=interp2(x,y,z,xi,yi,meto da) Zwraca macierz zi, zawierającą wartości funkcji 2 zmiennych z=f(x,y) w punktach określonych wektorami xi i yi; węzły interp.określają macierze x,y,z

19 vi=interp3(x,y,z,v,xi,yi,zi, metoda) Interpolacja funkcją 3 zmiennych, analogicznie jak interp2 vi=interpn(x1,x2,x3,...,v,y 1,y2,y3,...) Interpolacja funkcją n zmiennych, analogicznie jak interp2

20 Metody interpolacji linear – interpolacja liniowa, spline – interpolacja funkcjami sklejanymi stopnia trzeciego, cubic – interpolacja wielomianami stopnia trzeciego. Wszystkie metody interpolacji wymagają, aby ciąg x był monotoniczny.

21 Ćwiczenie: przyjmując dane z tabeli x y znajdź wartości funkcji interpolującej w punktach –2,-1.9,-1.8,...,0,...,1.8,1.9,2. Zastosuj interpolację liniową i funkcjami sklejanymi. Dane oraz wyniki wyświetl na jednym rysunku.

22 Aproksymacja Jest to zagadnienie bardziej ogólne. Funkcja dana i funkcja szukana nie muszą przyjmować tych samych wartości w punktach węzłowych. Funkcję f(x), znaną lub określoną tablicą wartości, będziemy aproksymować (zastępować) inną funkcją F(x), zwaną funkcją aproksymującą lub przybliżeniem funkcji f(x).

23 Standardową metodą aproksymacji w Matlabie jest aproksymacja średniokwadratowa wielomianami wybranego stopnia. Polecenie: a=polyfit(x,y,n) znajduje wektor a współczynników wielomianu stopnia n najlepiej dopasowanego do danych wektorów x, y. Wartość wielomianu aproksymującego w dowolnym punkcie x0 (wektorze x0) można wyznaczyć, korzystając z polecenia polyval(a,x0).

24 Ćwiczenie: przyjmując dane x, y z poprzedniego ćwiczenia, znajdź współczynniki wielomianu aproksymującego stopnia drugiego i trzeciego. Wyniki wyświetl na jednym rysunku.


Pobierz ppt "OBLICZENIA NUMERYCZNE za pomocą pakietu MATLAB. Miejsca zerowe i minima funkcji x1=fzero(f,x0) zwraca miejsce zerowe x1 nieliniowej funkcji jednej zmiennej."

Podobne prezentacje


Reklamy Google