Ćwiczenie 5. Matlab równania różniczkowe, aproksymacja

Podobne dokumenty
Matlab (5) Matlab równania różniczkowe, aproksymacja

Ćwiczenie 3. Iteracja, proste metody obliczeniowe

Na podstawie informacji zdobytych na poprzednich zajęciach proszę wykonać następujące zadania:

Podstawy MATLABA, cd.

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Rozwiązywanie równań różniczkowych z niezerowymi warunkami początkowymi

Matematyka licea ogólnokształcące, technika

Interpolacja, aproksymacja całkowanie. Interpolacja Krzywa przechodzi przez punkty kontrolne

Kinematyka: opis ruchu

Matematyka 2. Równania różniczkowe zwyczajne rzędu drugiego

Wstęp do równań różniczkowych

Wstęp do równań różniczkowych

Modelowanie Systemów Dynamicznych Studia zaoczne, Automatyka i Robotyka, rok II. Podstawy MATLABA, cz2.

Metody numeryczne. Sformułowanie zagadnienia interpolacji

Ruch jednostajnie zmienny prostoliniowy

FUNKCJA KWADRATOWA. Wykresem funkcji kwadratowej jest parabola o wierzchołku w punkcie W = (p, q), gdzie

27. RÓWNANIA RÓŻNICZKOWE CZĄSTKOWE

MATLAB ŚRODOWISKO MATLABA OPIS, PODSTAWY

Różniczkowanie numeryczne

Definicje i przykłady

Mathcad c.d. - Macierze, wykresy 3D, rozwiązywanie równań, pochodne i całki, animacje

Laboratorium 1b Operacje na macierzach oraz obliczenia symboliczne

Dział I FUNKCJE I ICH WŁASNOŚCI

Ćwiczenie 4. Matlab - funkcje, wielomiany, obliczenia symboliczne

MATLAB Prowadzący: dr hab. inż. Marek Jaszczur Poziom: początkujący

Biotechnologia, Chemia, Chemia Budowlana - Wydział Chemiczny - 1

WYMAGANIA EDUKACYJNE Z MATEMATYKI DLA KLASY DRUGIEJ LICEUM OGÓLNOKSZTAŁCĄCEGO ZAKRES PODSTAWOWY

GNU Octave (w skrócie Octave) to rozbudowany program do analizy numerycznej.

FUNKCJA LINIOWA - WYKRES

Powtórzenie wiadomości z klasy I. Temat: Ruchy prostoliniowe. Obliczenia

METODY NUMERYCZNE. Wykład 3. Plan. Aproksymacja Interpolacja wielomianowa Przykłady. dr hab.inż. Katarzyna Zakrzewska, prof.agh. Met.Numer.

Rozwiązywanie równań nieliniowych

METODY OBLICZENIOWE. Projekt nr 3.4. Dariusz Ostrowski, Wojciech Muła 2FD/L03

Numeryczne rozwiązywanie równań różniczkowych ( )

ANALIZA MATEMATYCZNA Z ELEMENTAMI STATYSTYKI MATEMATYCZNEJ

IX. Rachunek różniczkowy funkcji wielu zmiennych. 1. Funkcja dwóch i trzech zmiennych - pojęcia podstawowe. - funkcja dwóch zmiennych,

Wykorzystanie programów komputerowych do obliczeń matematycznych, cz. 2/2

Drugi sposób definiowania funkcji polega na wykorzystaniu polecenia:

Geometria analityczna

Funkcja kwadratowa. f(x) = ax 2 + bx + c,

WYMAGANIA EDUKACYJNE NIEZBĘDNE DO OTRZYMANIA PRZEZ UCZNIA POSZCZEGÓLNYCH ŚRÓDROCZNYCH I ROCZNYCH OCEN KLASYFIKACYJNYCH Z MATEMATYKI

INSTRUKCJA DO ĆWICZENIA NR 7

PLAN WYNIKOWY (zakres podstawowy) klasa 2. rok szkolny 2015/2016

Aproksymacja funkcji a regresja symboliczna

Pojęcie funkcji. Funkcja liniowa

WYMAGANIA EDUKACYJNE NA POSZCZEGÓLNE OCENY. (zakres podstawowy) klasa 2

OBLICZANIE POCHODNYCH FUNKCJI.

Spis rysunków Widok okien głównych Matlaba i Scilaba Edytory skryptów w Matlabie i Scilabie... 7

Temat wykładu: Równania różniczkowe. Anna Rajfura, Matematyka na kierunku Biologia w SGGW 1

5 Równania różniczkowe zwyczajne rzędu drugiego

Elementy projektowania inzynierskiego Przypomnienie systemu Mathcad

Lista zadań nr 2 z Matematyki II

Analiza matematyczna dla informatyków 3 Zajęcia 14

Aproksymacja. funkcji: ,a 2. ,...,a m. - są funkcjami bazowymi m+1 wymiarowej podprzestrzeni liniowej X m+1

Funkcja kwadratowa. f(x) = ax 2 + bx + c = a

FUNKCJE I RÓWNANIA KWADRATOWE. Lekcja 78. Pojęcie i wykres funkcji kwadratowej str

Równania różniczkowe zwyczajne

Rozwiązywanie równań różniczkowych zwyczajnych za pomocą komputera

INTERPOLACJA I APROKSYMACJA FUNKCJI

Zakres materiału obowiązujący do egzaminu poprawkowego z matematyki klasa 1 d LO

Wartości x-ów : Wartości x ów można w Scilabie zdefiniować na kilka sposobów, wpisując odpowiednie polecenie na konsoli.

FUNKCJA LINIOWA - WYKRES. y = ax + b. a i b to współczynniki funkcji, które mają wartości liczbowe

Funkcja liniowa i prosta podsumowanie

Modelowanie rynków finansowych z wykorzystaniem pakietu R

Równania nieliniowe. LABORKA Piotr Ciskowski

Metody numeryczne. Instytut Sterowania i Systemów Informatycznych Wydział Elektrotechniki, Informatyki i Telekomunikacji Uniwersytet Zielonogórski

{H B= 6 kn. Przykład 1. Dana jest belka: Podać wykresy NTM.

Laboratorium 7. Zad. 1 Całkowanie w Matlabie. Zapoznać i wypróbować komendy: Przekazywanie funkcji: sqr x.^2 a = sqr(5)

x a 1, podając założenia, przy jakich jest ono wykonywalne. x a 1 = x a 2 ( a 1) = x 1 = 1 x.

FUNKCJA LINIOWA, RÓWNANIA I UKŁADY RÓWNAŃ LINIOWYCH

Układy równań i równania wyższych rzędów

Funkcja pierwotna, całka oznaczona na podstawie funkcji pierwotnej

ELEMENTY ANALIZY NUMERYCZNEJ ELEMENTY ANALIZY NUMERYCZNEJ. Egzamin pisemny zestaw 1 24 czerwca 2019 roku

Ćwiczenia nr 7. TEMATYKA: Krzywe Bézier a

Egzamin ustny z matematyki semestr II Zakres wymaganych wiadomości i umiejętności

Wykład 14 i 15. Równania różniczkowe. Równanie o zmiennych rozdzielonych. Definicja 1. Równaniem różniczkowym zwyczajnym rzędu n nazywamy równanie

a =, gdzie A(x 1, y 1 ),

Zaawansowane metody numeryczne Komputerowa analiza zagadnień różniczkowych 4. Równania różniczkowe zwyczajne podstawy teoretyczne

Metody numeryczne. Sformułowanie zagadnienia interpolacji

Wykresy i własności funkcji

Analiza Matematyczna część 5

Laboratorium nr 1. dsolve( rownanie1, rownanie2,, warunek 1, warunek 2 );

dr inż. Damian Słota Gliwice r. Instytut Matematyki Politechnika Śląska

ELEMENTY ANALIZY NUMERYCZNEJ ELEMENTY ANALIZY NUMERYCZNEJ. Egzamin pisemny zestaw 1 26 czerwca 2017 roku

Funkcja liniowa - podsumowanie

KONSPEKT ZAJĘĆ EDUKACYJNYCH

Równania różniczkowe liniowe II rzędu

Pojęcia, wymagania i przykładowe zadania na egzamin poprawkowy dla klas II w roku szkolnym 2016/2017 w Zespole Szkół Ekonomicznych w Zielonej Górze

Kurs ZDAJ MATURĘ Z MATEMATYKI MODUŁ 6 Teoria funkcje cz. 2

. Funkcja ta maleje dla ( ) Zadanie 1 str. 180 b) i c) Zadanie 2 str. 180 a) i b)

FUNKCJA KWADRATOWA. 1. Definicje i przydatne wzory. lub trójmianem kwadratowym nazywamy funkcję postaci: f(x) = ax 2 + bx + c

RÓWNANIA RÓŻNICZKOWE ZWYCZAJNE. Wiele obiektywnych prawidłowości przyrodniczych udaje się zapisać w postaci równości formalnej

SCENARIUSZ LEKCJI. Wielomiany komputerowe wykresy funkcji wielomianowych

MECHANIKA 2. Prowadzący: dr Krzysztof Polko

Projekt Era inżyniera pewna lokata na przyszłość jest współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

FUNKCJE. Kurs ZDAJ MATURĘ Z MATEMATYKI MODUŁ 5 Teoria funkcje cz.1. Definicja funkcji i wiadomości podstawowe

MECHANIKA II. Dynamika ruchu obrotowego bryły sztywnej

lim Np. lim jest wyrażeniem typu /, a

Modelowanie systemów empirycznych - analiza modelu amortyzacji samochodu o dwóch stopniach swobody

KOŚć i przyspieszenie. O PRĘDKOŚCI. Aby ZROZumIEć to POjĘCIE,

Transkrypt:

5. Matlab równania różniczkowe, aproksymacja Równania różniczkowe - funkcja dsolve() Funkcja oblicza symbolicznie rozwiązania równań różniczkowych zwyczajnych. Równania są określane przez symboliczne wyrażenia zawierające literę D do oznaczenia stopnia. Symbole D2, D3... DN, odnoszą się do drugiej, trzeciej,..., n-tej pochodnej. D2y jest zatem odpowiednikiem symbolicznym. Zmienna niezależna domyślna to t. Nazwy zmiennych symbolicznych nie powinny zatem zawierać litery D. Zmienną niezależną można zmienić i podać jako ostatni argument. Warunki początkowe mogą być określone przez dodatkowe równania. Jeśli nie określono warunków początkowych, rozwiązania zawierają stałe całkowania: C1, C2, itp. Przykład 1. Rozwiązać równanie różniczkowe: () = + () f=dsolve dsolve('dy=1+y^2') tan(t+c1) f=dsolve dsolve('dy=1+y^2','x') tan(x+c1) Po wstawieniu przykładowego warunku początkowego: dsolve('dy=1+y^2','y()=1') %sprawdzenie spr= diff(f,t)-1-f^2 tan(t+1/4*pi) s= Przykład 2. Rozwiązać równanie: 5() = 75() r=dsolve dsolve('dx = -a*x') r = C1*exp(-a*t) Przykład 3. Równanie różniczkowe drugiego stopnia: (5) 5 = 89:(5) z dwoma warunkami początkowymi: y()=1; y'()= y = dsolve('d2y=cos(2*x)-y','y()=1','dy()=', 'x') y = 4/3*cos(x)-1/3*cos(2*x) simplify(y) %uproszczenie ans = 4/3*cos(x)-2/3*cos(x)^2+1/3 Przykład 4. Rozwiązać równanie: = >? =5 > =? warunki początkowe: u()=1, u'()=-1, u"()=π 1

u = dsolve('d3u=u','u()=1','du()=-1','d2u() = pi','x') u = 1/3*pi*exp(x)-1/3*(pi+1)*3^(1/2)*exp(-1/2*x)*sin(1/2*3^(1/2)*x)+ (1-1/3*pi)*exp(-1/2*x)*cos(1/2*3^(1/2)*x) D3u reprezentuje d 3 u/dx 3, D2u() odpowiada u"() Układ równań różniczkowych Funkcja dsolve rozwiązuje także układ równań różniczkowych zwyczajnych kilku zmiennych, z warunkami początkowymi lub bez. Przykład Dwa równania liniowe, pierwszego rzędu: @ = 3A(B) + 4C(B) ; D() S = dsolve('d 3*f+4*g', 'Dg = -4*f+3*g') = 4A(B) + 3C(B) S = f: [1x1 sym] g: [1x1 sym] Rozwiązania są zwracane w strukturze S. Można określić wartości f i g, wpisując: S.f exp(3*t)*(c1*sin(4*t)+c2*cos(4*t)) g = S.g g = exp(3*t)*(c1*cos(4*t)-c2*sin(4*t)) Jeśli chcemy uzyskać f i g bezpośrednio, oraz uwzględnić także warunki początkowe, wpisujemy: [f,g] = dsolve('df=3*f+4*g, Dg =-4*f+3*g', 'f() =, g() = 1') g = exp(3*t)*sin(4*t) exp(3*t)*cos(4*t) Poniżej jeszcze jeden przykład składni w Symbolic Math Toolbox. + 4I(B) = JK ; y()=1 y = dsolve('dy+4*y = exp(-t)', 'y() =1') spr=diff diff(y,t)+4*y %sprawdzenie rozwiązania spr = simplify(spr) t=; %sprawdzenie warunku początkowego wp=subs subs(y) y = spr = spr = wp = (1/3*exp(3*t)+2/3)*exp(-4*t) exp(-4*t)*exp(3*t) exp(-t) 1 2

Zadanie Równanie oscylatora harmonicznego bez tłumienia to: +ω 2 I(B) = gdzie: y(t) położenie ciała, ω O częstość drgań, zaś oscylatora z tłumieniem: P Q I PI + 2β PBQ PB +ω O Q I(B) = gdzie: β współczynnik tłumienia. Rozwiązać obydwa równania przyjmując różne warunki początkowe. Utworzyć wykresy y(t) dla założonych wartości ω i β oraz różnych warunków początkowych. Zadanie z ćw. 3 wykonane metodą rozwiązania równania różniczkowego: Samochód startuje w chwili t = od prędkości v = i przyspiesza ruchem jednostajnie przyspieszonym do prędkości v 1 = 2m/s w czasie 5 sekund. Jedzie ze stałą prędkością przez 1 sekund, a następnie hamuje przez 4 sekundy i zatrzymuje się. Przeanalizować i zrozumieć etapy wykonania zadania. %Ruch złożony, a=const clc,clear syms t tp sp vp a V %dane T=[ 5 15 19] V=[ 2 2 ] sp=; %droga początkowa N=length(T)-1; %liczba przedziałów s=dsolve('d2s=a','s(tp)=sp','ds(tp)=vp') %Obliczenie S(t) w przedziałach A(k)=(V(k+1)-V(k))/(T(k+1)-T(k)); % przyspieszenia tp=t(k); vp=v(k); a=a(k); if k==1 sp=sp; S(k)=subs(s); t=t(k+1); sp=subs(s(k)); %obliczenie war. pocz. dla nast. przedziału syms t %czas z powrotem symboliczny S % wypisz tablicę wyrażeń symb. S(t) w przedziałach %wykresy subplot(3,1,1) ezplot(s(k),[t(k) T(k+1)]) t=t(k+1); %końcowy czas przedziału zasieg(k)=subs(s(k)); %wstaw do wzoru zasieg %tablica zasięgów w przedziałach 3

z=max(zasieg) %na wypadek gdyby auto się cofało fprintf('auto przejechało %d m\n',zasieg()); axis([t(1) T() z]) title('s(t)'); %wykres prędkości syms t subplot(3,1,2) v(k)=diff(s(k)) ezplot(v(k),[t(k) T(k+1)]) axis([t(1) T() min(v)-5 max(v)+5]) title('v(t)'); %wykres przyspieszeń subplot(3,1,3) syms a a(k)=diff(v(k)) ezplot(a(k),[t(k) T(k+1)]); axis([t(1) T() min(a)-2 max(a)+2]); title('a(t)'); s(t) 2 1 5 1 15 t v(t) 2 1 5 1 15 t a(t) 5-5 5 1 15 x Aproksymacja Metoda aproksymacji polega na znalezieniu funkcji f(x), której wykres przechodzi w pobliżu zbioru zadanych punktów, zaś sama funkcja minimalizuje wartość pewnego kryterium dopasowania, najczęściej sformułowanego w postaci: 4

g c = d[i e A(f e )] Q ehi gdzie f e to wartości zmiennej niezależnej, I e to wartości zmiennej zależnej. Tego typu aproksymacja nazywana jest aproksymacją średniokwadratową. Niech w naszym przypadku funkcją aproksymującą f(x) będzie wielomian n-tego stopnia w(x). Wtedy do znalezienia współczynników wielomianu używamy funkcji polyfit, której składnia ma postać: a=polyf polyfit it(x,y,n) gdzie: x - jest zbiorem N posortowanych rosnąco wartości współrzędnych zmiennej niezależnej, y - jest zbiorem N odpowiadających wartości zmiennej zależnej, n - jest zadanym stopniem wielomianu aproksymującego, a - jest wektorem poszukiwanych wartości współczynników wielomianu aproksymującego. Obliczyć współczynniki paraboli y=p 1 x 2 +p 2 x+p 3, która przyjmuje wartości na końcach przedziału <,1>, a wartość 1 w połowie przedziału. Z warunków zadania wynika, że: x 1=, y 1= x 2=5, y 2=1 x 3=1, y 3= Zapisujemy wartości współrzędnych x 1,x 2,x 3 wektorze x, a wartości y 1,y 2,y 3 w wektorze y x=[, 5, 1] y=[,1,] Wykonujemy funkcję polyfit p=polyfit(x,y,2) Metoda obliczeń w Matlab-ie: % Obliczenie współczynników paraboli y(x)=p(1)*x^2 + p(2)*x+p(3) x=[,5,1]; y=[,1,]; p=polyfit(x,y,2) plot(x,y,'o') %wykres punktowy % sprawdzenie na wykresie x1=:.1:1; y1=p(1)*x1.^2+p(2)*x1+p(3); plot(x1,y1) Obliczyć współczynniki wielomianu 5-go stopnia, stanowiącego aproksymację dla zbioru punktów: p1(, ), p2(1, 1), p3(2, 1), p4(3, 1), p5(4, 1), p6(5,) Przeanalizować poniższe rozwiązanie: clear clc N=5 %stopień wielomianu x1=[ 1 2 3 4 5] y1=[ 1 1 1 1 ] p=polyfit polyfit(x1,y1,n) x=:.1:5; 5

y=; %pętla sumująca elementy wielomianu for m=1:n+1 y=y+p(m)*x.^(n-m+1); ; %dwa wykresy plot(x1,y1,'o',x,y) axis([ 5-1 2]) Obliczenie wartości wielomianu o znanych współczynnikach Wartości otrzymanego wielomianu, w dowolnych zadanych punktach wektorem xx oblicza funkcja polyval. ypi = polyval(p,xx) gdzie p - wektor współczynników wielomianu ypi - wektor wartości wielomianu w zadanych punktach xx Realizacja obliczeń: xx=[:.1:1]; p= [1 3 1]; ypi=polyval(p,xx); plot(xx,ypi) % rysowanie wykresu paraboli w przedziale (,1) Zbadać wielomiany stopnia od n=5 do 7, aproksymujące losowo wybrane wartości y z przedziału (,1) dla punktów x=[1 2 3 4 5] oraz zgromadzić wykresy funkcji wielomianowych w jednym układzie współrzędnych. Realizacja obliczeń: clc x=1:5; y=round(1*rand(1,5)) plot(x, y, 'o') for k=4:7 % pętla stopni wielomianu p=polyfit polyfit(x,y,k) xx=:.1:5; yy=polyval polyval(p,xx); plot(xx,yy) Jak można zauważyć jednoznaczność rozwiązania istnieje dla stopnia wielomianu n mniejszego od liczby punktów N. Zadania 1. Napisać program, który wczytuje stopień wielomianu n instrukcją: n = input('n = ') oblicza wektor P współczynników wielomianu instrukcją polyfit dla danych: x=[1:12]; y=[1.2 3.7 4.7 4.5 3.4 1.9 1.7 1.8 2.3 3.8 5.4 7.5]; oblicza wartości yy wielomianu instrukcją polyval dla danych: xx =[1:.2:12]; oraz wyświetla wykresy y(x) oraz yy(xx) instrukcją plot. 6

2. Obliczyć współczynniki paraboli z=q 1 y 2 +q 2 y+q 3, która przyjmuje wartości na końcach przedziału <,2>, a wartość 1 w połowie przedziału i narysować wykres tej paraboli. 7