MATLAB jako narzędzie do obliczeń numerycznych

Podobne dokumenty
WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI INSTYTUT AUTOMATYKI I INFORMATYKI KIERUNEK AUTOMATYKA I ROBOTYKA STUDIA STACJONARNE I STOPNIA

Ćwiczenie 3. MatLab: Algebra liniowa. Rozwiązywanie układów liniowych

Wprowadzenie do środowiska

MATLAB ŚRODOWISKO MATLABA OPIS, PODSTAWY

MATLAB wprowadzenie śycie jest zbyt krótkie, aby tracić czas na pisanie pętli!

AKADEMIA MORSKA W SZCZECINIE WI-ET / IIT / ZTT. Instrukcja do zajęc laboratoryjnych nr 1 AUTOMATYZACJA I ROBOTYZACJA PROCESÓW PRODUKCYJNYCH

Podstawy Automatyki ćwiczenia Cz.1. Środowisko Matlab

PODSTAWY INFORMATYKI 1 MATLAB CZ. 3

Matlab MATrix LABoratory Mathworks Inc.

Metody i analiza danych

Komputerowe Wspomaganie Obliczeń. dr Robert Kowalczyk

Wprowadzenie do Scilab: macierze

Pakiety matematyczne. Matematyka Stosowana. dr inż. Krzysztof Burnecki

Podstawy MATLABA, cd.

Matlab Składnia + podstawy programowania

Podstawowe operacje graficzne.

Diary przydatne polecenie. Korzystanie z funkcji wbudowanych i systemu pomocy on-line. Najczęstsze typy plików. diary nazwa_pliku

Wprowadzenie do środowiska MATLAB z zastosowaniami w modelowaniu i analizie danych

Metody Numeryczne. Laboratorium 1. Wstęp do programu Matlab

WPROWADZENIE DO ŚRODOWISKA SCILAB

Obliczenia w programie MATLAB

Zakaz rozpowszechniania w sieci, tylko na użytek studentów informatyki UwB. WYKŁAD 1- Matlab

1 Programowanie w matlabie - skrypty i funkcje

MATLAB - laboratorium nr 1 wektory i macierze

Wykorzystanie programów komputerowych do obliczeń matematycznych

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

Laboratorium Algorytmy Obliczeniowe. Lab. 9 Prezentacja wyników w Matlabie

Spis treści. I. Skuteczne. Od autora... Obliczenia inżynierskie i naukowe... Ostrzeżenia...XVII

MATLAB - podstawy użytkowania

Matlab Składnia + podstawy programowania

Graficzna prezentacja wyników

Wprowadzenie do pakietów MATLAB/GNU Octave

MATLAB PROJEKTOWANIE GRAFICZNE. Maciej Ulman ETI 9.2. Funkcje graficzne moŝna podzielić na cztery podstawowe grupy:

Wprowadzenie do Mathcada 1

PODSTAWY AUTOMATYKI. MATLAB - komputerowe środowisko obliczeń naukowoinżynierskich - podstawowe operacje na liczbach i macierzach.

Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki

Laboratorium 1b Operacje na macierzach oraz obliczenia symboliczne

ANALIZA DANYCH I PROCESÓW. Mgr inż. Paweł Wojciech Herbin

Metody i analiza danych

Wprowadzenie do Scilab: macierze

Ćwiczenie 3. Iteracja, proste metody obliczeniowe

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

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

Wprowadzenie do programu Mathcad 15 cz. 1

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

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

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

Podstawowe operacje na macierzach

Zygmunt Wróbel i Robert Koprowski. Praktyka przetwarzania obrazów w programie Matlab

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

1) Podstawowe obliczenia. PODSTAWY AUTOMATYKI I ROBOTYKI Laboratorium. Wykonał: Łukasz Konopacki Sala 125. Grupa: poniedziałek/p,

Przetwarzanie sygnałów

LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab

Matlab II skrypty, funkcje, wizualizacja danych. Piotr Wróbel Pok. B 4.22

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

Operatory arytmetyczne

Metody numeryczne Laboratorium 2

Elementy metod numerycznych - zajęcia 9

Pracownia Informatyczna Instytut Technologii Mechanicznej Wydział Inżynierii Mechanicznej i Mechatroniki. Podstawy Informatyki i algorytmizacji

Programowanie: grafika w SciLab Slajd 1. Programowanie: grafika w SciLab

PODSTAWY INŻYNIERII SYSTEMÓW TECHNICZNYCH

Elementy projektowania inzynierskiego Przypomnienie systemu Mathcad

Różniczkowanie numeryczne

MATLAB Podstawowe polecenia

Pakiety matematyczne INP2708W,L

Laboratorium Cel ćwiczenia Ćwiczenie ma na celu praktyczne przedstawienie grafiki 3D.

Ćwiczenie 0 : Wprowadzenie do cyfrowego przetwarzania sygnałów. wyświetla listę tematów pomocy. wyświetla okno pomocy (Help / Product Help)

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

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

Laboratorium Komputerowego Wspomagania Analizy i Projektowania

TWORZENIE WYKRESÓW (1)

Wprowadzenie do Scilab: macierze

Robert Barański, AGH, KMIW MathScript and Formula Nodes v1.0

Materiały do Laboratorium Programowania Obliczeń Komputerowych MATLAB

WEKTORY I MACIERZE. Strona 1 z 11. Lekcja 7.

Zakłócenia w układach elektroenergetycznych LABORATORIUM

Ćwiczenie 1. Matlab podstawy (1) Matlab firmy MathWorks to uniwersalny pakiet do obliczeń naukowych i inżynierskich, analiz układów statycznych

ARKUSZ KALKULACYJNY komórka

1 Podstawy c++ w pigułce.

Wizualizacja funkcji w programie MATLAB

Ćwiczenie 1. Wprowadzenie do programu Octave

Wprowadzenie do systemu Scilab

Ćwiczenia nr 4. Arkusz kalkulacyjny i programy do obliczeń statystycznych

MACIERZE. Sobiesiak Łukasz Wilczyńska Małgorzata

Interpolacja i aproksymacja, pojęcie modelu regresji

VII. WYKRESY Wprowadzenie

Rozwiązywanie równań różniczkowych cząstkowych metodą elementów skończonych - wprowadzenie

Ćwiczenie 3: Wprowadzenie do programu Matlab

Obliczenia iteracyjne

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

ŚRODOWISKO MATLAB cz.4 Tworzenie wykresów funkcji

Obliczenia inżynierskie arkusz kalkulacyjny. Technologie informacyjne

Grafika w Matlabie. Wykresy 2D

Algebra macierzy

Ćwiczenia 11 (12) (4 godziny). Wizualizacja i manipulacja w Matlabie

Zastosowanie GeoGebry w realizacji zagadnień związanych z trygonometrią 13. Wykresy funkcji sin x i cos x Paweł Perekietka 13

Wymagania edukacyjne z informatyki dla klasy szóstej szkoły podstawowej.

Zad. 3: Układ równań liniowych

Arkusz kalkulacyjny. R. Robert Gajewski omklnx.il.pw.edu.pl/~rgajewski

Rok akademicki: 2016/2017 Kod: JIS s Punkty ECTS: 6. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

Transkrypt:

MATLAB jako narzędzie do obliczeń numerycznych Pakiet MATLAB jest to potężne narzędzie stosowane do przeprowadzania obliczeń i symulacji w wielu dziedzinach nauki. Głównym przeznaczeniem pakietu są obliczenia nauko-techniczne, inżynierskie oraz wizualizacje dwu i trójwymiarowe. Program ten pozwala na wykonywanie skomplikowanych obliczeń numerycznych z końcową wizualizacją otrzymanych wyników. Cel ćwiczenia: Zapoznanie się z pakietem MATLAB wstęp. Samodzielne rozwiązanie wybranych problemów matematycznych przy użyciu pakietu. Przebieg ćwiczenia: I. Uruchomienie pakietu MATLAB (ikona na pulpicie). - po uruchomieniu dostępne jest okno komend MATLAB a, w którym wprowadzane są wszystkie polecenia, II. W otwartym oknie napisz help (po znakach >> ) i naciśnij ENTER. - efektem tej komendy będzie wyświetlenie nazw wszystkich dostępnych w pakiecie toolbox ów. W Dodatku przedstawiono listę wybranych toolbox ów wraz z krótkim opisem. - napisz help nazwa_toolbox u wyświetlenie listy funkcji dostępnych w danym toolbox ie. III. Nadawanie wartości zmiennym. Podstawowym typem danych wykorzystywanych w MATLAB-ie są macierze. W pamięci przechowywane są w dwojaki sposób: gęsty przechowuje całą macierz i x j w pamięci albo rzadkizapamiętywane są tylko wartości niezerowe wraz z ich położeniami. Należy pamiętać, że MATLAB traktuje liczby i wektory jako macierze, tzn. liczby są traktowane jak macierze x, a wektory jak macierze xn. Macierze dwuwymiarowe (w pakiecie dostępne są również macierze wielowymiarowe) Tworząc macierz należy pamiętać o tym że: elementy w wierszu macierzy muszą być oddzielane spacją lub przecinkami średnik kończy wiersz macierzy i powoduje przejście do następnego cała lista elementów musi być ujęta w nawiasy kwadratowe. obowiązuje zasada indeksowania macierzy począwszy od Najprostszą macierz tworzy się wymieniając jej elementy w nawiasach kwadratowych. Napisz: >>M=[ 2.2 4 ; 5. 8 2 ]; Następnie napisz: >>M W efekcie otrzymamy macierz następującej postaci: M=.0000 2.0000 0.2000 4.0000 5.000 8.0000 2.0000.0000 Napisanie: >>M=[ 2.2 4 ; 5. 8 2 ] Powoduje natychmiastowe wyświetlenie macierzy. Odwołania do macierzy oraz kilka podstawowych komend umieszczono w Dodatku 2. IV. Podstawowe operatory arytmetyczne Operatory: +,-,*,/,^ to odpowiednio: dodawanie, odejmowanie, mnożenie, dzielenie i potęgowanie (wymiary macierzy muszą umożliwiać wykonanie danej operacji).

Wykonaj przykład (napisz): >>a=[,,;2,2,2;3,3,3] >>b=[0,0,;0,,0;,,] >>a+b >>c=a+b >>a-b >>d=a*b >>e=a/b (jeżeli chcesz wiedzieć w jaki sposób wykonywane jest to działanie, to napisz :) >>help / >>f=a^2 >>g=exp(a) (operacja bardzo często wykonywana przy rozwiązywaniu zadań z automatyki) V. Skrypty Skrypt jest plikiem tekstowym o rozszerzeniu.m (m-plikiem), zawierającym polecenia i instrukcje Matlaba. Polecenia w pliku muszą być zgodne z semantyką MATLABA. Skrypty nie pobierają żadnych argumentów wejściowych ani nie zwracają argumentów wyjściowych mogą tylko operować na zmiennych dostępnych w przestrzeni roboczej MATLAB-a. Umieszczanie komentarza w pliku skryptu (pierwsze 3 linie) daje nam możliwość uzyskania pomocy na temat skryptu. Wywołujemy: help nazwa skryptu. Funkcje obsługi wejścia skryptu:. x=input(tekst) - wyświetla łańcuch tekst, oczekuje na wpisanie przez użytkownika danej liczbowej i przypisuje ją zmiennej liczbowej x, zamiast danej liczbowej można wpisać wyrażenie MATLAB-a, 2. x=input(tekst,s) - wyświetla łańcuch tekst, oczekuje na wpisanie przez użytkownika łańcucha znakowego i przypisuje go zmiennej x, 3. pause - zatrzymuje wykonywanie skryptu do momentu naciśnięcia dowolnego klawisza, 4. pause(n) - zastępuje wykonywanie skryptu na n sekund. Przykład : W oknie komend MATLAB-a, na pasku narzędzi (na górze ikona z biała kartką) wybierz ikonę New M-FILE (w ten sposób otworzysz okno edytora). Napisz w edytorze: %To jest skrypt %Dodaje dwie macierze aa=input('wprowadź macierz A: ') bb=input('wprowadź macierz B: \n') cc=aa+bb; cc Zapamiętaj utworzony skrypt pod nazwą naszskrypt.m tzn. na pasku w edytorze wybierz ikonę z dyskietką i zamiast untitle wpisz naszskrypt. Następnie w oknie komend MATLAB-a uruchom skrypt pisząc: >>naszskrypt Nie zapomnij poprawnie wprowadzić dwie macierze A i B. 2

VI. Wizualizacja wyników. MATLAB udostępnia liczne metody wizualizacji otrzymanych wyników obliczeń. Funkcje graficzne można podzielić na cztery podstawowe grupy:. przeznaczone do tworzenia wykresów dwu- i trójwymiarowych, 2. prezentujące wykresy ciągłe i dyskretne, 3. umożliwiające tworzenie grafiki wektorowej i rastrowej, 4. wysokiego i niskiego poziomu. Bliżej zajmiemy się grafiką dwuwymiarową 2D w układzie kartezjańskim. Przykład 5.: Dane są dwie funkcje: 2x f ( x) = oraz g( x) = sin( x) x 2 + 5 Znajdź graficznie współrzędne wszystkich punktów z przedziału <-0; 0> dla których funkcje te przyjmują te same wartości. Funkcję f(x) wykreśl zieloną, a g(x) czerwoną linią ciągłą. Napisz odpowiedni skrypt. Po otwarciu czystego dokumentu w edytorze należy napisać: fplot( -sin(.2*x),[-0,0],'r') hold on fplot( (-2*x)/(x^2+),[-0,0],'g') grid hold off ginput (3) Skrypt zapamiętać pod dowolną nazwą np. wykresy i uruchomić w oknie komend MATLAB-a. - komenda hold on powoduje, że następny wykres będzie rysowany bez niszczenia poprzedniego, hold off wyłącza ten tryb; - ginput (n) pozwala odczytać współrzędne n punktów na wykresie (klikając na nie). Przykład 5.2: Napisz odpowiedni skrypt i rozwiąż graficznie następujący układ równań (wykresy mają być wykreślone w nowym oknie w tym celu należy użyć funkcji figure): y = + 6 2 2 ( x 0.3) + 0.0) ( x 0.9) + 0.04) 2 2 y + x = 4 W edytorze napisz: figure ezplot('./((x - 0.3).^2 + 0.0) +./((x - 0.9).^2 + 0.04)-y-6',[-0,0]) hold on ezplot('y^2+x^2-',[-0,0]) grid hold off 3

Zapamiętaj i nazwij utworzony skrypt, a następnie uruchom go w oknie komend MATLAB-a pisząc jego nazwę. Przeskaluj współrzędne, aby dokładniej odczytać rozwiązania (użyj funkcji axis([xmin,xmax,ymin,ymax]). Napisz w oknie komend MATLAB-a : axis([-3,3,-3,3]) Zobacz ile jest rozwiązań podanego układu równań i używając funkcję ginput (n) odczytaj te rozwiązania. Przykład 5.3 Po jakim torze przemieszcza się punkt, jeżeli wiadomo, że w czasie t jedna współrzędna zmienia się wg funkcji x=sin(t), a druga y=cos(t). Wykreśl tor dla czasu t z przedziału [0,0Π]. Napisz skrypt lub bezpośrednio w oknie komend MATLAB-a : >>t = 0:pi/50:0*pi; >>plot3(sin(t),cos(t),t) >>grid Operacja t = 0:pi/50:0*pi tworzy wektor t 50-elementowy (sprawdź używając length(t)) o wartościach od 0 do 0*Π co Π. 50 Dodatek Poniżej przedstawiono listę wybranych TOOLBOX-ów z krótkim opisem: Chemometrix Toolbox przeznaczony do opracowywania danych chemicznych, Financial Toolbox przeznaczony do analiz i obliczeń finansowych (planowanie stałych przychodów, badanie wydajności obligacji, kalkulacja przepływu gotówki, obliczanie stóp procentowych etc.). Fuzzy Logic Toolbox środowisko do projektowania i diagnostyki inteligentnych układów sterowania wykorzystujących metody logiki rozmytej i uczenie adaptacyjne, Image Processing Toolbox programowe narzędzia do przetwarzania obrazów, Mapping Toolbox przeznaczony do analizy informacji geograficznych i wyświetlania map, z możliwością dostępu do zewnętrznych źródeł geograficznych, Neural Network Toolbox zbiór funkcji do projektowania i symulacji sieci neuronowych, Higher-Order Spectral Analisis Toolbox przeznaczony do analizy sygnałów zakłóconych szumem niegaussowskim lub sygnałami generowanymi przez procesy nieliniowe. Biblioteka ta znajduje zastosowanie w biomedycynie, akustyce, ekonometrii, oceanografii, przetwarzaniu sygnałów mowy, technice radarowej i sonarowej, Symbolic Math Toolbox zestaw funkcji do obliczeń symbolicznych - rozszerza możliwości Matlaba o możliwość wykonywania obliczeń symbolicznych, Parial Differential Equation Toolbox zestaw funkcji do numerycznego rozwiązywania równań różniczkowych cząstkowych metodą elementów skończonych, Simulink pakiet służący do modelowania, symulacji i analizy układów dynamicznych. Simulink dostarcza także graficzny interfejs użytkownika umożliwiający konstruowanie modeli w postaci diagramów blokowych, Spline Toolbox zestaw bibliotek do aproksymacji i interpolacji funkcjami sklejanymi, 4

Wavelet Toolbox biblioteka do analizy sygnałów oraz usuwania szumów. Dodatek 2 Odwołania do macierzy i kilka podstawowych komend (obliczanie rzędu macierzy, wektrów wasnych ipt.): x(j:k)- elementy wektora wierszowego x o numerach od j do k A(i,:)- wszystkie elementy w wierszu i macierzy A A(i,j:l)- wszystkie elementy w wierszu i macierzy A o numerach od j do l A(i:k,j:l)- wszystkie elementy w kolumnach od j do l wierszy od i do l A(x,j:l)- wszystkie elementy w kolumnach od j do l w wierszach macierzy A o numerach określonych przez elementy wektora x A(:,:)- cała dwuwymiarowa macierz A A(:)- cała macierz A w postaci wektora kolumnowego. disp(a)- wyświetla zawartość macierzy A w oknie poleceń size(a)- wyświetla rozmiar dwuwymiarowej macierzy A (liczbę wierszy i kolumn) w postaci dwuelementowego wektora wierszowego; [n m]=size(a) - przypisuje zmiennej n liczbę wierszy, a zmiennej m liczbe kolumn; n=size(a,)- przypisuje zmiennej n liczbę wierszy macierzy A. m=size(a,2) przypisuje zmiennej m liczbę kolumn macierzy A. length(x)- zwraca długość wektora x lub dłuższy z wymiarów macierzy det(a)- zwraca wyznacznik macierzy kwadratowej A. inv(a)- zwraca macierz odwrotną do macierzy A. eye(n)- tworzy macierz jednostkową nxn tril(a)- utworzenie z macierzy A macierzy trójktnej dolnej. triu(a)- utworzenie z macierzy A macierzy trójkątnej górnej. Dodatek 3 Do rysowania prostych wykresów służy funkcja: plot. W zależności od podanych parametrów wywołania: plot(x,y) - rysuje wykres elementów wektora y względem elementów wektora x, plot(y) - rysuje wykres elementów wektora y, przyjmując x =, plot(x,y,s) - rysuje wykres y(x) z określeniem dokładnego wyglądu linii; s łańcuch zawierający kody, plot(x,y,x2,y2,...) - rysuje w jednym oknie wiele wykresów:y(x), y2(x2),..., plot(x,y,s,x2,y2,s2,..) - rysuje w jednym oknie wiele wykresów z określeniem dokładnego wyglądu linii każdego z nich. ezplot(f,[a,b]) rysuje wykres f=f(x,y)=0 w przedziale [a,b]. plot3(x,y,z) - rysuje wykres trójwymiarowy, Funkcja linspace pomaga w tworzeniu danych do wykresu: linspace(x,x2,n) - generuje wierszowy wektor N liczb rozłożonych równomiernie wprzedziale od x do x2, linspace(x,x2) - generuje domyślnie 00 liczb z przedziału x dox2, fplot(f,[x0,xk]) - f-łańcuch znaków zawierających nazwę funkcji x0,xk-poczatek i koniec przedziału rysowania funkcji, [x,y]=fplot(...) - nie powoduje narysowania wykresu, tylko zwraca wektor argumentów x i wektor wartoci funkcji y. Wykres uzyskanych danych można narysować za pomocą polecenia plot(x,y) W celu dokładniejszych informacji o funkcji plot, fplot, ezplot skorzystaj z np. help plot. 5

Funkcje wykorzystywane do opisu wykresów: Aby zwiększyć czytelność i zrozumienie wykresów warto je opisywać. Można to zrealizować korzystają z jednej z funkcji: title(txt) - tekst opisujący dany wykres, text(x,y,txt) - umieszczenie tekstu w podanych współrzędnych x i y, xlabel(txt), ylabel(txt) - opis tekstowy osi układu, gird - bezparametrowe wywołanie, nakładamy siatkę na układ współrzędnych. 6