Transcript
  • 1

    MatLabczęść I

  • 2

    Zanim zaczniemy – GNU Octave

  • 3

    Zanim zaczniemy – GNU Octave

  • 4

    Zanim zaczniemy – GNU Octave

  • 5

    Środowisko MatLab-aMatLab — ang. MATrix LABoratoryObliczenia numeryczne i symboliczne

    operacje na macierzachgraficzna prezentacja danych (wykresy)metody numeryczneoperacje symboliczneprzetwarzanie sygnałówprzyborniki (toolboxes)

  • 6

    Elementy okna MatLab-a

    katalog bieżącyCurrent Directory

    katalog bieżącyCurrent Directory

    przestrzeń robocza

    Workspace

    historia poleceńCommand History

    okno poleceńCommand Window

  • 7

    Elementy okna MatLab-a

  • 8

    Elementy okna MatLab-a

  • 9

    Elementy okna MatLab-a

  • 10

    Elementy okna MatLab-a

  • 11

    Podpowiedzi w oknie poleceńPolecenie help wyświetla skrypt pomocyW przypadku konkretnego polecenia piszemy: help nazwa_polecenia . Polecenie to wyświetla całą zawartość nagłówka skryptu (m-pliku) definiującego dane poleceniePolecenie lookfor słowo_kluczowe szuka podanego słowa w pierszej linii nagłówka (linii H1) wszystkich dostępnych m-plikówZachęcam do używania polecenia help! Zazwyczaj w nagłówkach m-plików dosyć obszernie opisane są składnie zdefiniowanych w nich funkcji

  • 12

    Podpowiedzi w oknie poleceń

  • 13

    Format liczb w oknie poleceńStandardowo liczby są wyświetlane w formacie krótkim Format zmieniamy poleceniem format nazwa_formatuFormaty:

    short – krótki – 0.0023short e – krótki zmiennoprzecinkowy – 2.3421e-003long – długi – 0.00234213145623 (14 znaków po znaku dziesiętnym)long e – długi zmiennoprzecinkowy – 2.34213145623134e-003bank – walutowy – 1.27 (dwa miejsca po przecinku)rat – ułamkowy

    Więcej: help format

  • 14

    Jak działa MatLab?MatLab działa jak interpreter języka linii poleceńJeśli w linii poleceń wpiszemy pewien ciąg znaków, np. bleble, to interpreter wykona następujące działania:

    Sprawdzi, czy bleble jest nazwą zmiennejSprawdzi, czy bleble jest nazwą wbudowanej funkcjiPoszuka pliku (skryptu) bleble.m w bieżącym kataloguPoszuka pliku (skryptu) bleble.m w katalogach podanych ścieżkami dostępu

    M-pliki (pliki o rozszerzeniu *.m) zawierają skrypty (zbiory poleceń) lub definicje funkcji

  • 15

    Katalog bieżącyUstawiony jest w skrócie wywołania MatLab-a, w okienku Rozpocznij wNajczęściej ma on nazwę work

    katalog bieżący

  • 16

    Katalog bieżący – c.d.Jeśli nie podamy ścieżki dostępu, to tam są zapisywane i poszukiwane m- i mat-pliki (pliki *.m oraz *.mat)Zmianę bieżącego katalogu wykonujemy poleceniem cd jakaś_ścieżka_dostępuSamo polecenie cd podaje ścieżkę dostępu aktualnego katalogu bieżącegoZawartość katalogu bieżącego (m- i mat-pliki) wyświetla się poleceniem what

  • 17

    Ścieżki dostępuAktualne ustawienie ścieżek dostępu uzyskuje się za pomocą polecenia pathNową ścieżkę dodaje się poleceniem addpath ścieżka_dostępu oraz w postaci funkcyjnej: (path, 'ścieżka_dostępu') – w drugim przypadku ścieżka dostępu podana w apostrofach!Ścieżkę usuwa się poleceniem rmpath ścieżka_dostępu . Postać funkcyjna analogiczna jak w przypadku addpath

  • 18

    Ścieżki dostępu – c.d.Można też posłużyć się przeglądarką:

    Menu>File>SetPath

  • 19

    Przestrzeń roboczaJest to obraz części pamięci operacyjnej obsługującej program MatLabZawiera wyszczególnienie wszystkich zmiennych i ich opisZmienną np. a usuwamy z pamięci poleceniem clear a . Całą pamięć czyścimy poleceniem clearPrzestrzeń roboczą konsoliduje polecenie packPolecenie who wypisuje w oknie poleceń zawartość przestrzeni roboczej (tylko nazwy zmiennych); polecenie whos podaje również rozmiary zmiennych, liczbę zajmowanych przez nie bajtów i ich klasę

  • 20

    Przestrzeń robocza – zapis do pliku

    Polecenie save zapisuje przestrzeń roboczą do pliku binarnego matlab.mat w bieżącym katalogu. Podczas zamykania sesji roboczej zapis następuje automatyczniePojedyncze zmienne (np. a b) można zapisać poleceniem save a bPolecenie save nazwa_pliku zapisuje przestrzeń roboczą do pliku o podanej nazwie. Rozszerzenie *.mat dodawane jest automatycznie. W nazwie można podać jeszcze dodatkowo ścieżkę dostępu, inną niż katalogu bieżącegoZapis do pliku tekstowego wymuszamy opcją -ASCIIWięcej na ten temat: help save

  • 21

    Przestrzeń robocza – odczyt z pliku

    Podczas otwarcia sesji roboczej następuje automatyczny odczyt pliku matlab.mat z bieżącego katalogu. Odczyt ten można wymusić poleceniem load Pojedyncze zmienne odczytujemy poleceniem load a bInne pliki odczytujemy poleceniem load nazwa_pliku . W nazwie pliku możemy podać dodatkowo ścieżkę dostępu. W przypadku, gdy rozszerzenie jest inne niż *.mat plik traktowany jest jako plik ASCII (tekstowy)Można wymusić opcję odczytu parametrami -MAT lub -ASCII, niezależnie od rozszerzenia Więcej na ten temat: help load

  • 22

    Inne typy plików danychDane separowane przecinkiem (ang.: Comma Separated Values — CSV). Odczyt: csvread. Zapis: csvwrite. Więcej: help itd.Dane separowane znakiem (ang.: delimiter). Odczyt: dlmread. Zapis: dlmwrite. Więcej: help itd.Dane ze skoroszytu Excela. Odczyt: xlsread. Zapis: xlswrite. Więcej: help itd.Pliki tekstowe ogólnego formatu – dowolny plik tekstowy. Tylko odczyt: textscan. Jest to najbardziej elastyczny format odczytu danych z pliku, więc więcej o nim na następnym wykładzie!UWAGA!: tak nie da się wczytać liczb zespolonych – trzeba wczytać osobno Re i Im i z nich skonstruować liczby zespolone

  • 23

    Zmienne i ich nazwyNazwy zmiennych tworzy się z kombinacji liter i cyfr oraz znaku podkreślenia, zaczynając od litery.Rozróżniane są małe i wielkie litery! Tzn. Zmienna A to nie to samo, co zmienna a.Typ zmiennej dobierany jest automatycznie do wyniku działania lub przypisania wartości.Jeśli nie podamy nazwy zmiennej, do której zwracany ma być wynik działania, to przechowany będzie w zmiennej standardowej o nazwie ans.

  • 24

    Typy zmiennychPostawowym typem zmiennych są macierze.Formalnie macierzami są też wektory (macierz jednowymiarowa: tylko 1 wiersz lub tylko 1 kolumna) i skalary (pojedyncza liczba czyli macierz zerowymiarowa: 1 wiersz × 1 kolumna).Można tworzyć macierze więcej niż dwuwymiarowe poprzez np. tworzenie macierzy (wektorów), których elementami są macierze (wektory).Przydatne dla tworzenia takich struktur jest polecenie cat, np.: a=cat(3,[1,2,3;4,5,6],[7,8,9;10,11,12])Parametr 3 oznacza, że łączenie macierzy odbywa się wzdłuż trzeciego wymiaru – w rezultacie z dwu macierzy 2×3 otrzymujemy macierz 2×3×2

  • 25

    Pozostałe typy zmiennychNowsze wersje MatLaba pozwalają na tworzenie bogatszych struktur danych, niż tylko macierze.Pozostałe typy zmiennych:

    wektory komórkowe (cell arrays) – wektory, których komórki mogą zawierać dane różnego typu; więcej na ten temat: help cellstruktury – obiekty podobne do struktur języka C lub rekordów języka Pascal, czyli obiekty przechowujące kilka wartości (mogą być różnych typów) w polach, do których odwołujemy się poprzez ich nazwyobiekty – struktury zawierające zarówno dane jak i funkcje (metody) – pozwala to na projektowanie obiektowe w MatLabie

  • 26

    Standardowe stałeW MatLabie zdefiniowanych jest kilka funkcji zwracających wartości, które możemy traktować jak stałe:

    pi – wartość liczby niewymiernej πeps – wartość najmniejszej liczby, która dodana do 1 da wartość >1 (u nas: 2.2204e-016)realmax – wartość największej dostępnej liczby zmiennoprzecinkowej (u nas: 1.7977e+308)realmin – wartość najmniejszej dostępnej liczby zmiennoprzecinkowej (u nas: 2.2251e-308)Inf – wartość symboliczna nieskończoności (jak np. wynik dzielenia przez 0 – nie dostajemy błędu!)NaN – wartość nieokreślona (jak np. wynik dzielenia 0 przez 0 – nie dostajemy błędu!)i oraz j – symbole urojone (wynik działania: sqrt(-1) )

  • 27

    Standardowe stałe

    Slajd 1Slajd 2Slajd 3Slajd 4Slajd 5Slajd 6Slajd 7Slajd 8Slajd 9Slajd 10Slajd 11Slajd 12Slajd 13Slajd 14Slajd 15Slajd 16Slajd 17Slajd 18Slajd 19Slajd 20Slajd 21Slajd 22Slajd 23Slajd 24Slajd 25Slajd 26Slajd 27


Recommended