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

Podobne dokumenty
MATLAB - podstawy użytkowania

Matlab MATrix LABoratory Mathworks Inc.

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

Wprowadzenie do środowiska

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

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

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

1 Podstawy c++ w pigułce.

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

Obliczenia w programie MATLAB

Instalacja

Cw.12 JAVAScript w dokumentach HTML

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

JAVAScript w dokumentach HTML (1)

Pakiety matematyczne INP2708W,L

Instalacja Pakietu R

Podstawy obsługi pakietu GNU octave.

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

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

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

Zanim zaczniemy GNU Octave

Podstawowe operacje na macierzach

1 Podstawy c++ w pigułce.

Zakłócenia w układach elektroenergetycznych LABORATORIUM

MATLAB ŚRODOWISKO MATLABA OPIS, PODSTAWY

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

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

Podstawy Informatyki 1. Laboratorium 1

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

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

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

PRZETWARZANIE I ORGANIZOWANIE DANYCH: ARKUSZ KALKULACYJNY

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

Obliczenia inżynierskie arkusz kalkulacyjny. Technologie informacyjne

Wstęp do Programowania Lista 1

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

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

Elementy metod numerycznych - zajęcia 9

Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory

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

Podstawy Programowania Podstawowa składnia języka C++

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

2 Przygotował: mgr inż. Maciej Lasota

Informatyka- wykład. Podstawy programowania w Pythonie. dr Marcin Ziółkowski

Programowanie w języku Python. Grażyna Koba

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

Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 WYKŁAD 7 WSTĘP DO INFORMATYKI

Ćwiczenie 1. Wprowadzenie do programu Octave

Metody i analiza danych

Elementy języków programowania

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

Algorytmika i Programowanie VBA 1 - podstawy

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

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

MATrix LABoratory. A C21 delta tvx444 omega_zero. hxx J23 aaa g4534 Fx_38

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

do MATLABa podstawowe operacje na macierzach WYKŁAD Piotr Ciskowski

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia

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

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

Podstawy programowania. 1. Operacje arytmetyczne Operacja arytmetyczna jest opisywana za pomocą znaku operacji i jednego lub dwóch wyrażeń.

ARKUSZ KALKULACYJNY komórka

Podstawy programowania skrót z wykładów:

Matlab Składnia + podstawy programowania

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

Temat 1: Podstawowe pojęcia: program, kompilacja, kod

Jak napisać program obliczający pola powierzchni różnych figur płaskich?

Adres komórki-nazwa kolumny i nazwa wiersza, na przecięciu których znajduje się komórka. B3- adres aktywnej komórki

Wprowadzania liczb. Aby uniknąć wprowadzania ułamka jako daty, należy poprzedzać ułamki cyfrą 0 (zero); np.: wpisać 0 1/2

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki

Programowanie w Matlabie (cz.2)

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?

1. Wypisywanie danych

Podstawy Programowania C++

Laboratorium Komputerowego Wspomagania Analizy i Projektowania

Podstawy Programowania

Ćwiczenie 1. Wprowadzenie do programu Octave

WYRAŻENIA ALGEBRAICZNE

Dodatkowo klasa powinna mieć destruktor zwalniający pamięć.

Tablice (jedno i wielowymiarowe), łańcuchy znaków

Matlab Składnia + podstawy programowania

Wprowadzenie do Scilab: podstawy języka Scilab

Kształcenie w zakresie podstawowym. Klasa 1

Spis treści MATLAB CZ. 1 OPERACJE ARYTMETYCZNE NA LICZBACH RZECZYWISTYCH I ZESPOLONYCH. Technologie Informacyjne

Ćwiczenie 3: Wprowadzenie do programu Matlab

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.

Metody numeryczne Laboratorium 2

MATLAB Z3. Rafał Woźniak. Warsaw, Faculty of Economic Sciences, University of Warsaw

Wprowadzenie do Scilab: macierze

Wprowadzenie do programu Mathcad 15 cz. 1

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

1 Powtórzenie wiadomości

Wstęp do programowania

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

dr inż. Jarosław Forenc

Spis treści MATLAB CZ. 1 OPERACJE ARYTMETYCZNE NA LICZBACH RZECZYWISTYCH I ZESPOLONYCH. Technologie Informacyjne

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

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre)

WPROWADZENIE DO ŚRODOWISKA SCILAB

Transkrypt:

MATLAB Wprowadzenie Zbigniew Rudnicki (dr inż) 1 MATLAB (MATrix LABoratory) - pakiet oprogramowania matematycznego firmy MathWorks Inc. (od roku 1984) to język i środowisko programowania do obliczeń naukowo-technicznych oraz obszerny zestaw tematycznych bibliotek podprogramów (toolbox ów) i wiele tysięcy stron podręczników Dlaczego warto poznać MATLABa? bo : jest powszechnie nauczany na uczelniach Świata jest łatwy (w prostych programach) jak BASIC a nie jak C czy C++ jest często używany w badaniach naukowych ( publikacje) posiada bardzo obszerną i przystępnie napisaną dokumentację, oraz przykłady i system pomocy (w jęz. angielskim) specjalistyczne toolbox y czynią go narzędziem dostosowanym do prawie każdej dziedziny pozwala poznawać metody matematyczne w praktyce pozwala tworzyć wykresy, animacje, aplikacje,... jest stale rozwijany i wzbogacany Literatura po polsku: Materiały do zajęć na stronie WWW przedmiotu Informatyka Z. Rudnicki: Wprowadzenie do informatyki i programowania a także: A.Kamińska, B.Pańczyk: Matlab - przykłady i zadania - wyd. Mikom 2002, z serii ćwiczenia z... (10 stron) J.Brzózka, L.Dorobczyński: Programowane w Matlab wyd.mikom 1998. (314 stron) B.Mrozek, Zb.Mrozek: MATLAB.x, Simulink 2.x. wyd. PLJ 1998 B.Mrozek, Zb.Mrozek: MATLAB uniwersalne środowisko obliczeń naukowo-technicznych. PLJ 1996 3 4 Niektóre cechy MATLABa Przyjazne dla użytkownika okienka dialogowe tworzące, tzw. interaktywne środowisko Matlaba (IDE - Interactive Development Environment) Język programowania wysokiego poziomu Zbiór kilkudziesięciu toolbox ów - zestawów funkcji Zbiór podręczników (ok.70 po kilkaset stron) MATLAB umożliwia m.in: wykonywanie obliczeń naukowych i inżynierskich, modelowanie i symulację, analizę danych (w tym: sygnałów i obrazów) graficzną wizualizację danych i wyników obliczeń. Podstawowym typem danych w MATLABie jest tablica (macierz) o elementach rzeczywistych lub zespolonych. Co to jest "Środowisko programowania" czyli IDE Programista potrzebuje narzędzi takich jak: edytor do pisania i poprawiania programów, translator (kompilator lub interpretator) do ich tłumaczenia na kod procesora i uruchamiania, debugger (do wykrywania błędów) oraz system pomocy (help). Narzędzia te mogą być połączone w jednym programie nazywanym " zintegrowanym środowiskiem programowania" lub IDE od angielskiego: Integrated Development Environment. 6 1

Interaktywne środowisko Matlab a: Pisanie programów w edytorze Pomoc (podręczniki) Historia (poprzednie komendy) Bieżący folder Okno KOMEND i wyników (dialogu) 7 Darmowi krewni Matlab a Matlab jest drogim programem ale opracowano także jego darmowe odpowiedniki: FreeMat - można pobrać z serwera Katedry lub ze stron http://freemat.sourceforge.net/ a także: OCTAVE - http://octave.sourceforge.net/ SCILAB - www.scilab.org, Informacje: po polsku - Wikipedia-Scilab, SCICOS dla SCILAB'a - odpowiednik Simulink'a dla Matlab'a 8 FreeMat - podobny do Matlab a Tryby użytkowania Matlab a 1) tryb bezpośredni - wpisywanie poleceń w oknie komend - naciśnięcie ENTER powoduje natychmiastowe wykonanie (przez interpreter Matlaba) poleceń wpisanych w tej linii; 2) tryb pośredni - programowy - pisanie programów w edytorze Matlab a, zapisywanie do pliku (z rozszerzeniem.m ) i uruchamianie; 3) tryb graficzny - z wykorzystaniem graficznego interfejsu użytkownika - GUI - graphic user interface i ewentualnie kreatora GUIDE 4) tryb symulacyjny - symulacja działania układów za pomocą SIMULINK a i pakietów rozwiniętych na jego bazie jak np.: SimMechanics 9 10 MATLAB: Działania w oknie komend czyli działanie w trybie bezpośrednim najprostsze polecenia stałe, zmienne, wyrażenia typy wartości reguły dotyczące nazw operatory działań funkcje Działanie w oknie komend Matlaba W jednej linii okna komend można wpisać jedno lub kilka poleceń oddzielanych przecinkami lub średnikami. Naciśnięcie ENTER powoduje wykonanie poleceń, jeśli: mają budowę zgodną z regułami składni języka Matlab, a zmienne w wyrażeniach mają nadane wcześniej wartości. W przeciwnym przypadku wyświetlany jest komunikat o błędzie. Wyniki poleceń nie zakończonych średnikiem [;] - są wyświetlane czyli średnik zapobiega wyświetleniu wyniku polecenia. Klawisz [ ] przywołuje poprzednie polecenia, które można powtórnie wykonać lub zmodyfikować przed wykonaniem. Bardzo długie polecenia można zapisać w kilku liniach kończąc je znakiem kontynuacji czyli trzema kropkami [...]. 11 12 2

Elementy języka - wyrażenia i instrukcje Programy składają się z poleceń (inaczej: komend albo instrukcji). Składnikami poleceń są: słowa kluczowe (np.: if, while, end,...) wyrażenia arytmetyczne a wśród nich: stałe, zmienne i funkcje (jako najprostsze postacie wyrażeń) wyrażenia logiczne: a) proste czyli relacje np.: a-b>0 b) złożone, z użyciem operatorów logicznych (negacja, alternatywa, koniunkcja) wyrażenia tekstowe (m in.funkcje do: sklejania i wycinania fragmentów tekstów) 13 Najprostsze polecenia Gotowość do przyjmowania poleceń jest sygnalizowania znakiem: Najprostsze polecenia to: 1) wyrażenie np.: 2*sqrt(.33)/(.7-3.2*sin(pi/6)^2) 2) instrukcja przypisania zmiennej wartości wyrażenia, zwana też instrukcją podstawiania, o budowie: zmienna = wyrażenie co oznacza: Oblicz wartość wyrażenia i przypisz ją zmiennej na przykład: x=pi/6; y=3*sin(x)^2 x=x+1 14 Wyrażenia arytmetyczne i ich składniki Wyrażenia arytmetyczne mogą zawierać: stałe (liczby) zmienne (nazwy zmiennych) operatory działań nawiasy funkcje Jednak inaczej niż w innych językach - wyrażenia te dotyczą tablic (macierzy), które w szczególności mogą być skalarami (pojedynczymi liczbami). 1 Wyrażenia jako polecenia (obliczenia kalkulatorowe) Znak gotowości do przyjmowania komend: Wpisanie w oknie komend wyrażenia np.: 2+3 daje wynik: 2+3 ans = Nie wstawiliśmy wyniku do żadnej zmiennej dlatego MATLAB użył zmiennej ans - od angielskiego answer - odpowiedź. Gdy przypiszemy wartość wyrażenia zmiennej x i nie zakończymy polecenia średnikiem to otrzymamy: x=2+3 16 Operacje arytmetyczne na skalarach lub macierzach realizowane są przy pomocy operatorów: + dodawanie - odejmowanie / dzielenie * mnożenie ^ potęgowanie Inne działania realizowane są przy pomocy FUNKCJI np.: pierwiastek z 2: sqrt(2) 17 Stałe liczbowe - postacie zapisu liczb Podobnie jak w większości języków programowania zapis liczb w MATLABie może zawierać: początkowy znak plus (na ogół pomijany) lub minus kropkę dziesiętną (NIE PRZECINEK!) poprzedzającą część ułamkową np.: -97.6397 może być stosowana tzw. notacja naukowa w której e oznacza "dziesięć do potęgi..." np.: -1.60210e-23 oznacza: -1.60210 razy 10 do potęgi -23 w zapisie liczb urojonych i zespolonych stosuje się symbole i oraz j np.: 1i, 2-3.1419j, 3ei 18 3

Przypisywanie wartości zmiennym i wyświetlanie wartości Możemy wyniki obliczeń podstawiać do zmiennych. Gdy w jednej linii ma być kilka poleceń to oddzielamy je przecinkami lub średnikami: x=2, y=3; z=x+y 2 z = Komenda zakończona średnikiem wykonała się lecz nie został wyświetlony jej wynik. W dowolnej chwili możemy sprawdzić aktualną wartość zmiennej, po prostu wpisując jej nazwę i naciskając ENTER y y = 19 3 Nadawanie (przypisywanie) wartości zmiennym i wyświetlanie wartości zmiennych c.d. Każda zmienna pamięta nadaną wartość aż do czasu gdy nadamy jej nową wartość albo usuniemy zmienne poleceniem clear y y = 3 y=y+1 y = 4 z z = 20 Polecenia who, whos Można sprawdzić jakie zmienne zdefiniowaliśmy poleceniami who lub whos: who Your variables are: ans x y z whos Name Size Bytes Class ans 1x1 8 double x 1x1 8 double y 1x1 8 double z 1x1 8 double 21 Polecenia clear, clc, help Polecenie clear usuwa wszystkie zmienne, natomiast clear zmienna1 zmienna2... usuwa wymienione zmienne (oddzielane odstępami) clear - po tym poleceniu komendy who i whos nic nie wyświetlą: whos who Polecenie: clc czyści okno komend (usuwa wyświetlone wyniki) Polecenie: help nazwa funkcji lub grupy tematów wyświetla objaśnienia. Na przykład: help elfun - wyświetli objaśnienia funkcji elementarnych help ops - wyświetli objaśnienia operatorów 22 Polecenia save, load save - zapisuje pamięć zmiennych do pliku matlab.mat load - wczytuje pamięć zmiennych z pliku matlab.mat 23 Zmienne - macierze - deklarowanie Wszystkie zmienne w MATLABie sa traktowane jak macierze Skalary i wektory są szczególnymi przypadkami macierzy Deklarowanie typu i wymiarów macierzy odbywa się automatycznie i w trakcie wykonywania programu - przez rozpoznanie rodzaju wpisanych wartości oraz maksymalnych wskaźników. Nazywane jest to typowaniem dynamicznym np.: M=[3,2,;1,4,8] % Zmiennej M przypisano macierz M = 3 2 1 4 8 M='Jola' % Tej samej zmiennej M przypisano tekst M = Jola 24 4

Nazwy zmiennych (identyfikatory) Nazwy zmiennych można tworzyć według następujących reguł: muszą rozpoczynać się od litery, a dalej mogą mieć tylko litery angielskie, nie wolno dawać polskich np.:ą, ć, ę, ł, ń,... oraz cyfry i znaki podkreślenia np.: Moment_sily9 długość nazwy nie powinna przekraczać max. 19 znaków (tyle jest zapamiętywanych) MATLAB rozróżnia duże i małe litery. Polecenia standardowe należy pisać małymi literami a dla nazw własnych programów i zmiennych można używać małych i dużych liter Przykłady poprawnych i niepoprawnych nazw zmiennych DOBRE: Moc2 MomentGn1 moment_gn_1 SILA_Px1 ZŁE: 2Moc Moment-1 moment_gnący1 SIŁA_Px1 2 26 Typy wartości stałych, zmiennych oraz wyrażeń Matlab nie wymaga deklarowania typów zmiennych lecz nadaje zmiennej typ zależny od wprowadzanej wartości. Domyślnie wszystkie zmienne są traktowane jak macierze. Matlab potrafi dynamicznie zmieniać zarówno typ jak i rozmiar macierzy przypisywanych zmiennym. Stałe i zmienne liczbowe mają domyślnie typ double a łańcuchy znaków (teksty) typ char. Sprawdzić typ zmiennej można funkcją class(zmienna) a typy wszystkich zdefiniowanych zmiennych poleceniem whos. W wyrażeniach logicznych można używać wyrażeń liczbowych - wtedy ZERO jest traktowane jako FAŁSZ a wartość różna od zera jako PRAWDA 27 Typ double Typ double czyli liczb rzeczywistych podwójnej precyzji jest jedynym typem w obrębie którego można wykonywać działania arytmetyczne. Zakres liczb typu double sięga od - realmax do +realmax, gdzie realma1.7977 e+308 Najmniejszy ułamek ma wartość: realmin=2.221 e-308 Precyzja: Liczby są pamiętane z dokładnością ok. 1-16 cyfr znaczących. Wartość typu double zajmuje 8 bajtów (64 bity) w pamięci 28 Inne typy wartości. Konwersja typów Łańcuchy znaków czyli teksty mają typ array of char - tablica znaków W wyrażeniach logicznych wartość ZEROWA jest równoznaczna z FAŁSZEM a wartości różne od zera traktowane są jako PRAWDA Do oszczędniejszego przechowywania danych - na przykład obrazów - mogą służyć takie typy jak: - uint8, uint16, uint32 - liczby całkowite bez znaku - int8, int16, int32 - liczby całkowite ze znakiem Możliwe jest dokonywanie różnych konwersji typów m.in.: num2str(liczba) - przekształca liczbę na ciąg znaków str2num(tekst) - przekształca tekst (ciąg cyfr) na liczbę uint8, uint16, uint32 - konwertują do całkowitych bez znaku int8, int16, int32 - konwertują do całkowitych ze znakiem 29 Postacie wyświetlanych wyników Obliczenia są dokonywane z dużą dokładnością ale standardowo wyświetlane są 4 miejsca po kropce dziesiętnej czyli domyślny jest format short w=x/y w = 0.6667 można zmienić format wyświetlania np.: format long w w = 0. 66666666666667 lub: format long e w w = 30 6.66666666666667e-001

Funkcje i stała pi Aby obliczyć sinus 30 stopni trzeba przeliczyć stopnie na radiany: x=sin(pi/6) 0. Komenda zakończona średnikiem też wykona się lecz nie będzie wyświetlony jej wynik: x=sin(pi/6); możemy sprawdzić aktualną wartość zmiennej x wpisując jej nazwę i naciskając ENTER x 31 0. Przykład obliczeń z funkcją sinus Chcemy obliczyć 3sinus 2 30 stopni i wstawić do zmiennej x. Wiemy że sinus 30 stopni wynosi 0, (stosunek najkrótszego do najdłuższego boku w ekierce nierównoramiennej), a więc wynik powinien być równy 0,7. Czy dobre będą zapisy 3sin 2 30, 3SIN 2 (30), 3sin 2 (30)? (1) argumenty każdej funkcji muszą być w nawiasach, Oczywiście NIE! bo: (2) dla funkcji trygonometrycznych - argument musi być w radianach, a nie stopniach (3) nazwy funkcji standardowych (z bibliotek Matlab'a) piszemy małymi literami (4) separatorem części ułamkowej w liczbach jest kropka a nie przecinek,... () nie wolno pomijać znaku mnożenia [*] (6) do kwadratu mamy podnosić obliczoną wartość sinusa z 30 stopni a nie nazwę A więc musimy napisać tak: 3*(sin(pi/6))^2 0.7 lub tak: 3*sin(pi/6)^2 0.7 32 Jakie funkcje mamy do dyspozycji - pokaże HELP Funkcje według kategorii 33 34 Alfabetyczny wykaz funkcji Ważniejsze elementarne funkcje matematyczne abs(x) - wartość bezwzględna sqrt(x)- pierwiastek exp(x) - e do x log(x) - logarytm naturalny log2(x) - logarytm o podstawie 2 log10(x) - logarytm o podst 10 gcd(x) - największy wspólny podzielnik lcm(x) - najmniejsza wspólna wielokrotność mod(x) - reszta z dzielenia sign(x) - znak Opis ich można uzyskać wpisując: help elfun 3 36 6

Funkcje do zaokrąglania wartości liczbowych ceil - sufit - zaokrąglenie w górę fix - zaokrągla w stronę zera floor - podłoga - zaokrągla w dół round - zaokrągla do najbliższej całkowitej 37 Ciągi i wektory Każdy ciąg jest zarazem wektorem Definicja ciągu X typu postęp arytmetyczny ma postać: X = pocz : przyrost : koniec na przykład: -0.2 : 0.1 : 0.3-0.2-0.1 0 0.1 0.2 0.3 Przyrost pominięty w definicji jest uważany za równy 1 i=1:6 i = 1 2 3 4 6 Ciąg można też definiować jako wyrażenie wykorzystujące wcześniej zdefiniowany ciąg indeksów np.: a=(i-1)/2 a = 0 0. 1.0 1. 2.0 2. 38 Wektory wierszowe i kolumnowe Dowolny wektor wierszowy można zdefiniować przez wpisanie jego składowych oddzielanych przecinkami wewnątrz nawiasów prostokątnych: W=[12.1, -3.2, 0.03] W = 12.1000-3.2000 0.0300 Dowolny wektor kolumnowy można zdefiniować przez wpisanie jego składowych oddzielanych średnikami wewnątrz nawiasów prostokątnych: K=[12.1; -3.2; 0.03] K = 12.1000-3.2000 0.0300 39 Mnożenie macierzowe W Matlabie - domyślnie operującym na macierzach - mnożenie zapisywane operatorem * jest działaniem macierzowym które wyznacza sumy iloczynów wyrazów wiersza przez wyrazy kolumny np.: a = [1, 3], b = [2; 4] a = 1 3 b = 2 4 c = a*b c = 14 bo: c = 1*2 +3*4 Macierzowo nie można więc mnożyć wektora wierszowego przez wierszowy: a*a??? Error using ==> mtimes Inner matrix dimensions must agree. 40 Mnożenie i potęgowanie tablicowe (operatory z kropką) Potęgowanie elementów wektora lub macierzy oraz mnożenie dwu macierzy o jednakowych rozmiarach są możliwe przy zastosowaniu operatorów z kropką.^ i.* czyli działań tablicowych Mnożenie tablicowe przy pomocy operatora.* dotyczy par odpowiadających sobie elementów: a = [1, 3] a = 1 3 d=a.*a d = 1 9 bo: d = [1*1, 3*3] c = a.^2 c = 1 9 bo: c = [1^2, 3^2] 41 Definiowanie macierzy Jednym ze sposobów definiowania macierzy jest wpisanie wszystkich jej elementów wewnątrz nawiasów prostokątnych, przy czym elementy wiersza oddzielane mają być przecinkami lub spacjami a poszczególne wiersze oddzielane średnikami. Np.: A=[4,1,; 2,3,6] A = 4 1 2 3 6 42 7

Macierze - indeksy i rola dwukropka A=[4,1,; 2,3,6] A = 4 1 2 3 6 Dwukropek zastępuje wszystkie wartości indeksu (wskaźnika) A więc pierwszy wiersz macierzy to: A(1,: ) ans = 4 1 Podobnie aby wybrać trzecią kolumnę wpisujemy: A(:,3) ans = 6 A(2,2) Jak otrzymać wykres funkcji x=0:0.1:4*pi; plot(x,sin(x)); grid on ans = 3 43 44 Wykres powierzchni trójwymiarowej [x,y]=meshgrid(-3*pi:0.1:3*pi,-3*pi:0.1:3*pi); z=600-x.*y+0*sin(x)+0*sin(y); mesh(x,y,z) 4 Tematyka toolbox-ów Matlaba SIMULINK - Symulacja układów dynamicznych Układy Sterowania 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 Identyfikacja systemów Analiza falkowa i Fourier'a Optymalizacja Równania różniczkowe Sterowanie nieliniowe Sterowanie predykcyjne Analiza chemiczna Geografia i mapy Funkcje sklejane (splajny) Metoda elem. skończonych Teoria grafów 46........ Koniec wykładu wprowadzającego do Matlaba 47 8