Matlab MATrix LABoratory Mathworks Inc.



Podobne dokumenty
MATLAB - podstawy użytkowania

Matlab MATrix LABoratory Mathworks Inc.

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

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

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

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

Podstawy Automatyki ćwiczenia Cz.1. Środowisko Matlab

Matlab Składnia + podstawy programowania

Wstęp do Programowania Lista 1

Przykład 1 -->s="hello World!" s = Hello World! -->disp(s) Hello World!

Cw.12 JAVAScript w dokumentach HTML

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

PODSTAWY INFORMATYKI 1 MATLAB CZ. 3

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

JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.

Wprowadzenie do środowiska

Matlab Składnia + podstawy programowania

1 Podstawy c++ w pigułce.

JAVAScript w dokumentach HTML (1)

Przetwarzanie sygnałów

Podstawy MATLABA, cd.

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

1 Podstawy c++ w pigułce.

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

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

JAVAScript w dokumentach HTML - przypomnienie

Wprowadzenie do pakietów MATLAB/GNU Octave

Programowanie w języku Python. Grażyna Koba

Obliczenia w programie MATLAB

Pętle iteracyjne i decyzyjne

Instalacja

Operatory arytmetyczne

Maxima i Visual Basic w Excelu

WPROWADZENIE DO ŚRODOWISKA SCILAB

Metody i analiza danych

do MATLABa podstawowe operacje na macierzach WYKŁAD Piotr Ciskowski

Skrypty i funkcje Zapisywane są w m-plikach Wywoływane są przez nazwę m-pliku, w którym są zapisane (bez rozszerzenia) M-pliki mogą zawierać

Modelowanie rynków finansowych z wykorzystaniem pakietu R

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

Elementy metod numerycznych - zajęcia 9

Metody i analiza danych

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

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

Wykorzystanie programów komputerowych do obliczeń matematycznych

Wprowadzenie do Scilab: podstawy języka Scilab

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

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

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

do MATLABa programowanie WYKŁAD Piotr Ciskowski

SKRYPTY. Zadanie: Wyznaczyć wartość wyrażenia arytmetycznego

PRZETWARZANIE I ORGANIZOWANIE DANYCH: ARKUSZ KALKULACYJNY

Ćwiczenie 1. Wprowadzenie do programu Octave

MATLAB Wprowadzenie. Literatura po polsku: Niektóre cechy MATLABa. Dlaczego warto poznać MATLABa? bo : Co to jest "Środowisko programowania" czyli IDE

Podstawy Programowania C++

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

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

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

Podstawy obsługi pakietu GNU octave.

Instalacja Pakietu R

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

Scilab - podstawy. Wersje instalacyjne programu Scilab mogą zostać pobrane ze strony

Ćwiczenie 1. Wprowadzenie do programu Octave

PODSTAWY INŻYNIERII SYSTEMÓW TECHNICZNYCH

Zakłócenia w układach elektroenergetycznych LABORATORIUM

Algebra macierzy

Metody numeryczne Laboratorium 2

MATLAB Materiały pomocnicze do ćwiczeń z Podstaw Informatyki

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

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

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

ŚRODOWISKO MATLAB cz.3 Implementowanie algorytmów w skryptach i funkcjach programu

MATLAB Podstawowe polecenia

Przykładowo, jeśli współrzędna x zmienia się od 0 do 8 co 1, a współrzędna y od 12 co 2 do 25, to punkty powinny wyglądać następująco:

Wprowadzenie do Scilab: macierze

Wprowadzenie do Pakietu R dla kierunku Zootechnika. Dr Magda Mielczarek Katedra Genetyki Uniwersytet Przyrodniczy we Wrocławiu

Scilab - wprowadzenie

Wprowadzenie do systemu Scilab

AKADEMIA GÓRNICZO-HUTNICZA im. Stanisława Staszica w Krakowie

Materiały do Laboratorium Programowania Obliczeń Komputerowych MATLAB

zajęcia 2 Definiowanie wektorów:

1 Programowanie w matlabie - skrypty i funkcje

Pascal - wprowadzenie

Wprowadzenie do Octave

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

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia

Scilab skrypty (programowanie)

Laboratorium Programowanie Obrabiarek CNC. Nr H7

Obliczenia inżynierskie arkusz kalkulacyjny. Technologie informacyjne

AUTOMATYZACJA OBLICZEŃ INŻYNIERSKICH. Dr hab. inż. Jacek Kucharski, prof. PŁ Dr inż. Piotr Urbanek

Przetwarzanie i analiza obrazów w Matlabie

WIMIM/MIBM/N1/-/B04 WIMIM/ME/S1/-/C46 WIMIM/IM/S1/-/B19

Pisząc okienkowy program w Matlabie wykorzystujemy gotowe obiekty graficzne, lub możemy tworzyć własne obiekty dziedzicząc już zdefiniowane.

Pakiety matematyczne INP2708W,L

Laboratorium 3 Grafika 2D i 3D w Matlabie. Wprowadzenie do programowania

Komentarze w PHP (niewykonywane fragmenty tekstowe, będące informacją dla programisty)

Algorytmika i Programowanie VBA 1 - podstawy

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

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

Transkrypt:

Małgorzata Jakubowska Matlab MATrix LABoratory Mathworks Inc.

MATLAB pakiet oprogramowania matematycznego firmy MathWorks Inc. (www.mathworks.com) rozwijany od roku 1984 język programowania i środowisko do obliczeń naukowotechnicznych obszerny zestaw tematycznych bibliotek podprogramów (toolbox ów) obszerna dokumentacja (wiele tysięcy stron podręczników i pomoc wbudowana) oraz przykłady

MATLAB Zalety: architektura otwarta możliwość pisania własnych funkcji oraz modyfikacji wbudowanych możliwość rozszerzania zakresu działania z wykorzystaniem procedur dostępnych w internecie wykonywanie obliczeń naukowych i inżynierskich graficzna wizualizacja danych i wyników obliczeń przyjazne, interaktywne środowisko pracy

Zalety: MATLAB daje możliwość programowania bez konieczności rozpoznawania środowiska programistycznego (jak BASIC a nie jak C czy C++) jest często używanym narzędziem w badaniach naukowych jest powszechnie nauczany na uczelniach jest stale rozwijany i wzbogacany.

Tematyka toolboxów Matlaba SIMULINK - Symulacja układów dynamicznych Przetwarzanie i analiza Sygnałów Przetwarzanie i analiza Obrazów Sieci Neuronowe Logika rozmyta Statystyka Finanse i giełda Akwizycja danych Projektowanie filtrów Bazy danych Matematyka symboliczna

Tematyka toolboxów Matlaba Analiza falkowa i Fourier'a Optymalizacja Równania różniczkowe Sterowanie nieliniowe Sterowanie predykcyjne Analiza chemiczna Geografia i mapy Funkcje sklejane (spline) Metoda elem. skończonych Teoria grafów........

MATLAB okno programu Aktualny katalog Obszar roboczy Okno Historia komend

MATLAB podstawowym typem danych w MATLABie jest tablica (macierz) o elementach rzeczywistych lub zespolonych wszystkie zmienne w MATLABie są traktowane jak macierze wektory i skalary są szczególnymi przypadkami macierzy nazwy zmiennych rozpoczynają się od litery, a po niej mogą być litery, cyfry i znaki podkreślenia pamiętanych jest 31 pierwszych znaków

Nazwy i definicje zmiennych MATLAB rozróżnia duże i małe litery polecenia standardowe należy pisać małymi literami do nazywania własnych programów i zmiennych można używać małych i dużych liter definiowanie typu i wymiarów macierzy odbywa się automatycznie - przez rozpoznanie rodzaju wpisanych wartości MATLAB generuje zmienną automatycznie podczas jej pierwszego użycia aby sprawdzić wartość istniejącej już zmiennej, należy w wierszu poleceń wpisać jej nazwę.

Liczby Stałopozycyjne - z opcjonalnym użyciem znaku + lub oraz kropki dziesiętnej Zmiennopozycyjnej -z użyciem znaku e lub E poprzedzającego wykładnik potęgi 10, np. 1e2=100 Do zapisu części urojonej liczb zespolonych używa się stałej i lub j.

Polecenia po wydaniu polecenia i naciśnięciu klawisza Enter Matlab natychmiast wyświetla jego wynik umieszczenie po poleceniu średnika spowoduje wykonanie obliczeń, ale bez zwracania wyniku polecenie powinno się mieścić w jednym wierszu kilka poleceń w jednym wierszu oddzielamy od siebie przecinkami lub średnikami.

Proste obliczenia Komendy wprowadzamy w oknie interpretera po znaku zachęty >>. >> 5+7 ans = 12 >> a=13 a= 13 >> x=sin(pi/2) x= 1 Komenda zakończona średnikiem wykona się lecz nie będzie wyświetlony wynik. >> x=sin(pi/2); >>

>> a=10 a = 10 >> b=20 b= 20 >> c=30 c= 30 >> the_average=(a+b+c)/3 the_average= 20 Proste obliczenia

>> s=3.1415 s= 3.1415 Skalar, wektor, macierz >> w=[7, 13, 12] w= 7 13 12 >> w=[7 ; 13 ; 12] w= 7 13 12 >> m=[2,12,44,14 ; 7,17,27,101 ; 3,13,33,202] m= 2 12 44 14 7 17 27 101 3 13 33 202

Wprowadzanie wektorów <zmienna> =<wartość początkowa>:<krok>:<wartość końcowa> >>czasi=0:100:2300; wprowadzi wektor o długości 24 elementy zawierający wartości 0, 100, 200,..., 2300 >>czasi(3) ans= 200 >>czasi(24) ans= 2300

Wprowadzanie macierzy elementy w wierszu macierzy muszą być oddzielane spacją lub przecinkami średnik lub znak nowego wiersza kończy wiersz macierzy i powoduje przejście do następnego cała lista elementów musi być ujęta w nawiasy kwadratowe. >>A=[1:10; 2:2:20] A= 1 2 3 4 5 6 7 8 2 4 6 8 10 12 14 16

Operacje na macierzach i ich elementach Operacje macierzowe operacje na macierzach określone regułami algebry liniowej. X*Y mnożenie macierzy, zgodna z zasadami rachunku macierzowego (liczba kolumn X jest równa liczbie kolumn Y) X+Y sumowanie macierzy X-Y odejmowanie macierzy X transpozycja macierzy

Operacje na macierzach i ich elementach Operacje tablicowe operacje na elementach macierzy. X.*Y mnożenie elementów wektorów lub macierzy o tych samych indeksach tzn. X(i,j)*Y(i,j) X.+Y sumowanie elementów macierzy o tych samych indeksach X.-Y odejmowanie elementów macierzy o tych samych indeksach

Operacje na macierzach i ich elementach >> X=[1 2 3]; Y=[4 5 6]; >>Y % transpozycja wektora ans= 4 5 6 >>X*Y ans= >>X.*Y ans= 32 4 10 18

Funkcje matematyczne Wbudowane - część jądra pakietu, do których użytkownicy nie mają dostępu (np. sqrt) Implementowane w m-plikach - przechowywane w ogólnie dostępnych plikach (np. sinh); takie m-pliki użytkownicy mogą tworzyć sami.

Ważniejsze elementarne funkcje matematyczne abs -wartość bezwzględna funkcje trygonometryczne, hiperboliczne i odwrotne ceil - zaokrąglenie w górę exp - e do x fix - zaokrągla w stronę zera floor - zaokrągla w dół gcd -największy wspólny podzielnik imag -część urojona lcm - najmniejsza wspólna wielokrotność log - logarytm naturalny log2 - logarytm o podstawie 2 log10 - logarytm o podstawie 10 mod - reszta z dzielenia round - zaokrągla do najbliższej całkowitej sign - znak sqrt- pierwiastek

Operacje graficzne

Wykresy dwuwymiarowe Polecenie plot(x,y) plot(y) plot(x,y,s) Opis rysuje wykres elementów wektora y względem elementów wektora x rysuje wykres elementów wektora y, przyjmując x=1:length(y) rysuje wykres y(x) z określeniem dokładnego wyglądu linii; s-łańcuch zawierający kody

Rysowanie wykresów >> x=[1 2 3 4 5] x=[1 2 3 4 5] >> y=[25 0 20 5 15] y=[25 0 20 5 15] >>plot(x, y);

Rysowanie wykresów parabola >> x=-5 :.1 : 5; >> y=x.^ 2; >>plot(x, y); >>xlabel( x-axis ); >>ylabel( y-axis ); >>title( A Parabola ); >>grid on;

Kilka wykresów na rysunku >> x=-10 :.05 : 10; >> line = 5.* x; >> parabola = x.^ 2; >> exponential = exp(x); >> absolute_value=abs(x); >> subplot(2,2,1); plot(x, line)); >> title( Here is the line ); >> subplot(2,2,2); plot(x, parabola)); >> title( Here is the parabola ); >> subplot(2,2,3); plot(x, exponential)); >> title( Here is the exponential ); >> subplot(2,2,4); plot(x, absolute value)); >> title( Here is the absolute value );

Wykres 3D Matlab zawiera dużą liczbę wbudowanych funkcji służących do wizualizacji obiektów trójwymiarowych. M.in. do tworzenia wykresów krzywych przestrzennych (plot3), siatek (mesh), powierzchni (surf) oraz wykresów konturowych (contour). Aby uzyskać w Matlabie pomoc na temat funkcji 3D należy w oknie komend wydać komendę help graph3d. Polecenie plot3(x,y,z,s) generuje trójwymiarową krzywą złożoną z punktów (xi, yi, zi), których współrzędne zostały określone w wektorach x, y, z. Wektory muszą być tej samej długości. Funkcja ta jest odpowiednikiem funkcji plot w grafice dwuwymiarowej.

Wykres 3D meshgrid(x,y) - jako argumenty podajemy ciągi (wektory) wartości x oraz y a w wyniku uzyskujemy dwie macierze zawierające łącznie wszystkie pary współrzędnych dla których mają być wyznaczane wartości funkcji zmiennych x, y. mesh(x,y,z,c) rysuje powierzchnię opisaną macierzami x, y, z w postaci kolorowej siatki o polach wypełnionych kolorem tła; elementy macierzy c określają kolory linii poszczególnych pól.

Wykres 3D

Wykres 3D

Programowanie w Matlabie

Instrukcja warunkowa if warunek polecenia1 elseif warunek polecenia2 else polecenia3 end; Przykład >> if (a ~= 0) c=b/a; else c=12; end;

Operatory porównania a==b a~=b a<b a>b a<=b a>=b równy nierówny mniejszy większy mniejszy lub równy większy lub równy

Operatory logiczne operator opis relacja a b a&b ~a alternatywa koniunkcja negacja a lub b a i b nie a

Instrukcja pętli while warunek polecenia end; Instrukcja wykonuje polecenia tak długo, dopóki warunek jest spełniony. Przykład >> i=1; >> while i<10 p(i)=i^2; i=i+2; end;

for zmienna = macierz wartości end; polecenia Instrukcja pętli ALE NAJCZĘŚCIEJ for zmienna = wartość początkowa : krok : wartość końcowa polecenia end; Instrukcja powtarza wykonanie poleceń dla zmiennej przyjmującej wartości od wartości początkowej do wartości końcowej, zmieniając co krok. Przykład >> for i =1:5 p(i) = (2*i)^2; end;

M-pliki własne programy (wieloliniowe) można pisać w edytorze MATLABa lub w notatniku zapisywane są do plików z rozszerzeniem *.m uruchamiane (wywoływane) są przez wpisanie nazwy pliku (bez rozszerzenia.m) w oknie komend Rozróżniamy: skrypty - operujące na zmiennych przestrzeni roboczej Matlaba funkcje - posiadające zmienne lokalne

Skrypty Skrypt jest plikiem tekstowym o rozszerzeniu.m (m-plikiem), zawierającym polecenia i instrukcje 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 Matlaba.

Przykład m-pliku skryptowego M-pliki skryptowe % po znaku procentu są tzw. komentarze % program rozwiązywania równania kwadratowego a=input('a='); b=input('b='); c=input('c='); delta = b*b-4*a*c; if delta<0 disp('brak pierwiastków rzeczywistych'); else x1=(-b-sqrt(delta))/(2*a); x2=(-b+sqrt(delta))/(2*a); disp('x1='); disp(x1); disp('x2='); disp(x2); end

Funkcje Pierwszy wiersz m-pliku musi zawierać definicję nowej funkcji: słowo kluczowe function nazwę funkcji - musi być taka sama, jak nazwa pliku (bez rozszerzenia.m), w którym znajduje się funkcja wartości funkcji (lista argumentów wyjściowych) parametry funkcji (lista argumentów wejściowych).

Funkcje function [lista parametrów wejść] = nazwa funkcji (lista param wejść) function c = pitagoras(a,b); c2 = a.^2 + b.^2; % c2 zmienna lokalna C = sqrt(c2); Funkcję zapisać w pliku pitagoras.m Wywołanie funkcji: >> x=3; y=4; z=pitagoras(x,y)

Dziękuję za uwagę!