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

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

Matlab MATrix LABoratory Mathworks Inc.

Matlab Składnia + podstawy programowania

Wprowadzenie do środowiska

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

Podstawy Automatyki ćwiczenia Cz.1. Środowisko Matlab

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

MATLAB ŚRODOWISKO MATLABA OPIS, PODSTAWY

Matlab Składnia + podstawy programowania

Wprowadzenie do Scilab: macierze

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

Podstawowe operacje na macierzach

Obliczenia w programie MATLAB

Metody i analiza danych

Wprowadzenie do Scilab: macierze

Zanim zaczniemy GNU Octave

do MATLABa programowanie WYKŁAD Piotr Ciskowski

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

Elementy metod numerycznych - zajęcia 9

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

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

Podstawy MATLABA, cd.

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

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

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

Przetwarzanie sygnałów

MATLAB Podstawowe polecenia

PODSTAWY INFORMATYKI 1 MATLAB CZ. 3

Zakłócenia w układach elektroenergetycznych LABORATORIUM

MATLAB - laboratorium nr 1 wektory i macierze

MATLAB - podstawy użytkowania

Wprowadzenie do pakietów MATLAB/GNU Octave

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

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ć

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

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

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

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

Wprowadzenie do systemu Scilab

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

Ćwiczenie 1. Wprowadzenie do programu Octave

Algebra macierzy

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

Wykład 4. Matlab cz.3 Tablice i operacje na tablicach

Instalacja Pakietu R

Wprowadzenie do Scilab: macierze

Informatyka. MATLAB Zasady zaliczenia Wykład. Plan tematów. Literatura. Wykład 1 45 min. 10/7/2013

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

1 Programowanie w matlabie - skrypty i funkcje

WPROWADZENIE DO ŚRODOWISKA SCILAB

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

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

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

Ćwiczenie 1. Wprowadzenie do programu Octave

PODSTAWY INŻYNIERII SYSTEMÓW TECHNICZNYCH

1 Podstawy c++ w pigułce.

Technika obliczeniowa i symulacyjna (TOiS)

Wprowadzenie do środowiska MATLAB. Zapis wyrażeń arytmetycznych. Matematyczne funkcje biblioteczne. Tworzenie wektorów i macierzy

Wprowadzenie do środowiska Matlab/GNU Octave

Wykład 4. Matlab cz.3 Tablice i operacje na tablicach

Metody i analiza danych

Wstęp do Programowania Lista 1

Matlab MATrix LABoratory Mathworks Inc.

Matematyka finansowa w pakiecie Matlab

MATLAB jako narzędzie do obliczeń numerycznych

Ćwiczenie 3: Wprowadzenie do programu Matlab

Metody numeryczne Laboratorium 2

PRZYKŁADOWE SKRYPTY (PROGRAMY W MATLABIE Z ROZSZERZENIEM.m): 1) OBLICZANIE WYRAŻEŃ 1:

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?

10/13/2013. Przeszukiwanie macierzy WYŚWIETLANIE MACIERZY I ICH ROZMIARÓW >> A=[1 35; 467]; 1. find (A>3) 2. A>3. Operator dwukropkowy

Operatory arytmetyczne

Laboratorium Komputerowego Wspomagania Analizy i Projektowania

Wybrane elementy syntaktyki pakietu Matlab Przemysław Korohoda Katedra Elektroniki, AGH

Wprowadzenie do Octave

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

1 Podstawy c++ w pigułce.

Programowanie w języku Python. Grażyna Koba

1 Typy i formaty danych

ŚRODOWISKO MATLAB WPROWADZENIE. dr inż. Dariusz Borkowski. Podstawy informatyki. (drobne) modyfikacje: dr inż. Andrzej Wetula

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

Wprowadzenie do MATLABa

Pakiety matematyczne INP2708W,L

Podstawy Programowania C++

WPROWADZENIE ŚRODOWISKO OBLICZEŃ NUMERYCZNYCH MATLAB - SIMULINK

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

Wprowadzenie do Mathcada 1

Instalacja

MATLAB skalary, macierze, liczby zespolone, standardowe funkcje

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

Materiały do Laboratorium Programowania Obliczeń Komputerowych MATLAB

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

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

Program na zaliczenie: Odejmowanie widm

Laboratorium Wstawianie skryptu na stroną: 2. Komentarze: 3. Deklaracja zmiennych

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

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

Podstawy Informatyki 1. Laboratorium 1

Wprowadzenie do Scilab: podstawy języka Scilab

MATLAB tworzenie własnych funkcji

Transkrypt:

Modele układów dynamicznych - laboratorium MATLAB wprowadzenie śycie jest zbyt krótkie, aby tracić czas na pisanie pętli! 1

2 MATLAB MATLAB (ang. matrix laboratory) to pakiet przeznaczony do wykonywania obliczeń numerycznych oraz graficznej prezentacji wyników, opracowany w firmie MathWorks. Matlab posiada przyborniki (toolbox) z procedurami i funkcjami specyficznymi dla danej dziedziny nauki np. SIMULINK do symulacji systemów dynamicznych

Podstawowe informacje o pakiecie MATLAB Praca w środowisku Matlab polega na wydawaniu poleceń w wierszu poleceń okna Matlaba, które są wykonywane przez interpreter. Duże i małe litery są rozróżniane w nazwach zmiennych oraz poleceń: standardowe polecenia Matlaba należy pisać małymi literami, do nazywania własnych programów i zmiennych można używać małych i dużych liter. Wartość polecenia zakończonego średnikiem nie będzie wyświetlana na ekranie. 3

Nazwy zmiennych Nazwy zmiennych rozpoczynają się od litery, a następnie może wystąpić dowolna kombinacja liter, cyfr i znaków podkreślenia (rozróżniane 19). Zmienna nie musi być deklarowana ani mieć określonego rozmiaru. Implementacja zmiennej rozpoczyna się razem z nadaniem jej wartości. >> z1=5, z2=-6 Aby sprawdzić wartość istniejącej już zmiennej, należy w wierszu poleceń wpisać jej nazwę. >> z2 Usunięcie zmiennej następuje po wywołaniu komendy clear nazwa_zmiennej (usunnięcie wszystkich zmiennych - clear all) 4

Typy zmiennych MATLAB operuje tylko na jednym typie danych - na macierzach. Wektory i skalary są szczególnymi przypadkami macierzy (posiadającymi jeden wiersz lub/i jedną kolumnę). Macierze występują także w roli wartości logicznych oraz łańcuchów tekstowych ('str'). Innym typem danych są dane reprezentowane przez liczby zespolone, z których również mogą być budowane macierze. 5

Macierze Definicji macierzy można dokonać na kilka sposobów: przez wymienienie elementów, przez wygenerowanie elementów, przez zbudowanie z innych macierzy, poprzez zastosowanie dwóch lub więcej wyżej wymienionych technik razem. 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. 6

Macierze c.d. Cała lista elementów musi być ujęta w nawiasy kwadratowe. Wprowadzić macierz A (2x2) >> A=[3,1; 6,4] (>> A=[3 1; 6 4]) Wprowadzić macierz B (3x3) >> B=[1.5,2,0; 2,5.8,1; 7,5,4.3] Macierze i wektory mogą być generowane przy użyciu dwukropka (min:krok:max) Wygenerować wektor x (1x9), y (1x10) >> x=[1:9] >> y=[2:2:20] 7

Macierze - generowanie Zaleca się wcześniejsze generowanie macierzy przez rezerwowanie pamięci, gdy jej rozmiar jest znany. W tym celu można stosować instrukcje: eye(n)- macierz jednostkowa nxn; eye(n, m) - z jedynkami na głównej przekątnej ones(n)- macierz jedynek nxn; zeros(n)- macierz zerowa nxn; rand(n) - macierz nxn liczb pseudolosowych z przedziału <0,1> o rozkładzie jednostajnym; randn(n)-macierz nxn liczba pseudolosowych o rozkładzie normalnym ze średnią 0 i wariancją 1. 8

Wybór elementów macierzy x(j:k) elementy wektora wierszowego x o numerach od j do k A(i,:) i-ty wiersz macierzy A A(i,j:l)- wszystkie elementy w wierszu i macierzy A o numerach od j do l A(:,j) - j-ta kolumna macierzy A A(:, j:k) - kolumny od j do k macierzy A A(i:k,j:l) - wszystkie elementy w kolumnach od j do l wierszy od i do k 9

Wybór elementów macierzy c.d. 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 >> y(4:8) >> A (:,2) >> A(1,:) >> B(:,2:3) >> B(:) 10

Macierze- rozmiary size(a) - wyświetla rozmiar macierzy/wektora A (liczbę wierszy i kolumn); [n m]=size(a) - przypisuje zmiennej n liczbę wierszy, a zmiennej m liczbę kolumn; n=size(a,1) - 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. 11

Operacje macierzowe Operacje macierzowe określone sąs regułami algebry liniowej. Transpozycja macierzy A' Dodawanie i odejmowanie macierzy A+B Mnożenie macierzy A*B Dzielenie macierzy A/B, B\A Potęgowanie macierzy A^2 12

Operacje na tablicowe na macierzach (notacja kropkowa) Operacje tablicowe są wykonywane na elementach macierzy. Dostępne są operacje.*,./,.\,.^, które wykonuje się element po elemencie macierzy (A.*B A(i,j)*B(i,j)) Macierze muszą być tych samych wymiarów. Dodawanie i odejmowanie tablicowe są zdefiniowane tak samo jak dla operacji macierzowych. 13

Elementy języka. Instrukcje sterujące działaniem programu Instrukcja warunkowa if if wyrażenie_logiczne1 instrukcje1 elseif wyrażenie_logiczne2 instrukcje2 else instrukcje3 end Instrukcja for for zmienna=macierz_wartości end instrukcje Instrukcja warunkowa switch switch wyrażenie case wartość1 instrukcje case wartość2 instrukcje... otherwise instrukcje end Instrukcja while while wyrażenie end instrukcje 14

Inne funkcje... sin(z), cos(z), tan(z), cot(z) - sinus, cosinus, tangens, cotangens; argument funkcji w radianach; sqrt(z) - pierwiastek z ; z<0 wynik zespolony; exp(z) e z log(z), log2(z) logarytmy: naturalny, o podstawie 2; z<0 wynik zespolony; abs(z) moduł z lub moduł liczby zespolonej imag (z) część urojona liczby zespolonej (z=a+bj, z=a+bi) real(z) - część rzeczywista liczby zespolonej angle(z) kąt fazowy liczby zespolonej w radianach [-π, π] atan2(im(z), re(z)) arcus tangens (= angle(z)) 15

Inne funkcje.c.d. Działania na wielomianach Współczynniki wielomianów są zapisywane w wektorach, których pierwszym elementem jest współczynnik przy najwyższej potędze zmiennej: x 4 +2x+5 >> x=[1 0 0 2 5] roots() funkcja wyliczająca pierwiastki wielomianu poly() wielomian charakterystyczny Równania algebry liniowej Zapis układu równań w postaci A*x=b gdzie: A macierz m x n b wektor kolumnowy o m elementach x poszukiwany wektor rozwiązań układu Zalecanym sposobem rozwiązania układu jest użycie operatora lewostronnego dzielenia macierzy \, wtedy x=a\b 16

Grafika Funkcje graficzne zwracają wykresy w nowych oknach, których nazwy jeśli nie zostaną zdefiniowane przyjmują nazwę Figure No. kolejny numer. Polecenie figure otwiera nowe okno graficzne. Rysowanie funkcji plot(x,y) - rysuje y wzgledem x plot(y) rysuje y dla kolejnych wartości plot(x,y, 'typ linii'), 'k-', 'r:', >> t = 0:.3:10; >> y = sin(t); >> plot(t,y) Rysowanie funkcji ciągłej podanej wzorem fplot('wzór funkcji', przedział,) >>fplot('sin(x*x)/x',[0 4*pi]) 17

Grafika c.d. Umieszczenie w aktywnym oknie kilku wykresów subplot(m,n,p) m - liczba wykresów w pionie (m = 1,2,3 9) n - liczba wykresów w poziomie (n = 1,2,3 9) p - numer wykresu, który zostanie wykreślony jako pierwszy po użyciu funkcji plot (wykresy numerowane są od lewej do prawej, a wiersze od góry do dołu). Inne instrukcje do wykresów xlabel( nazwa ), ylabel( nazwa'), title( tytuł ), text(x,y,'tekst'), figure, grid on/off, hold on/off, subplot, axis([x0 xk y0 yk]), legend 18

M-pliki M-plik jest plikiem dyskowym z rozszerzeniem *.m. Tworzy się je przy użyciu edytorów (np. edytora Matlaba). Zawierają sekwencję poleceń Matlaba. Mogą zawierać wywołania do innych m-plików. Rozróżnia się dwa rodzaje m-plików: skryptowe, funkcyjne. 19

M-pliki skryptowe Skrypty zawierają ciągi poleceń Matlaba potrzebnych do wykonania danego programu. Skrypt może być wykonywany wielokrotnie. Działają na zmiennych globalnych w przestrzeni roboczej Matlaba. Nie mają argumentów wejściowych czy wyjściowych. 20

M-pliki funkcyjne M-pliki funkcyjne zawierają funkcje tworzone przez użytkownika. Mogą akceptować argumenty wejściowe czy zwracać argumenty wyjściowe. Działają na zmiennych lokalnych. Zmienne można zdefiniować jako globalne instrukcją global. Rozpoczynają się od słowa kluczowego function. Musza zawierać nazwę funkcji oraz listę argumentów wejściowych w nawiasach (). function [argumenty_wyjściowe]=nazwa_funkcji(argumenty wejściowe) function [y1,y2]=oblicz(x1,x2) function rysuj() Nazwa funkcji powinna być taka sama jak nazwa m-pliku, w którym ją zapisano. 21

Operacje na plikach Zawartość aktualnego katalogu uzyskamy poleceniem dir scieżka. Zmiana aktualnego katalogu poleceniem chdir nowy_katalog lub w oknie Set path z menu File. Wszystkie zmienne można zapisać na dysku poleceniem save nazwa_pliku. Odczytanie danych jest możliwe poleceniem load nazwa_pliku. Pamiętać o zapisywaniu swoich plików do własnego katalogu imie_nazwisko_grupa! 22

Pomoc Matlaba Plecenie help lub help nazwa_polecenia help lista bibliotek, np.: matlab\general (komendy) matlab\elmat (podst.operacje na macierzach) matlab\elfun (podst.funkcje matematyczne) matlab\matfun (algebra liniowa) matlab\polyfun (wielomiany) matlab\strfun (operacje na tekstach) help nazw_biblioteki lista funkcji help nazwa_funkcji podręczny opis funkcji Menu okna graficznego Matlaba 23