
Matlab jest środowiskiem obliczeniowym przeznaczonym dla inżynierów i naukowców, umożliwiającym przeprowadzanie obliczeń matematycznych, analizy numerycznej, wizualizacji otrzymanych wyników w postaci dwu i trójwymiarowych wykresów funkcji, wizualizację wyników obliczeń w postaci rysunków statycznych i animacji, jak również tworzenie algorytmów i programów. Matlab wiąże analizę numeryczną, obliczenia macierzowe, przetwarzanie sygnałów i grafikę w sposób przyjazny dla użytkownika, gdzie zarówno zadania jak i rozwiązania są zapisane matematycznie bez uwzględnienia zasad tradycyjnego programowania. Wykorzystując porty, możliwe jest pobieranie danych pomiarowych z urządzenia zewnętrznego w celu ich obróbki i analizy. Wszystko to powoduje, że program ten znajduje bardzo szerokie zastosowanieMatlab jest językiem programowania wysokiego poziomu.
![]() |
| Przykładowy wykres 3D stworzony w Matlabie |
Język programowania pakietu Matlab jest pełnoprawnym językiem programowania wysokiego poziomu, o składni wzorowanej na języku C. Pozwala on na używanie funkcji i struktur, oraz umożliwia pisanie programów zorientowanych obiektowo. Tak jak wszystkie współczesne języki programowania wysokiego poziomu posiada on instrukcje sterujące takie jak: if, for, while, switch.
W zakresie programowania obiektowego możemy: definiować własne klasy obiektów i metody (funkcje) je obsługujące, przeciążać (nadpisywać) funkcje i operatory, oraz dziedziczyć klasy obiektów.
Zaawansowane możliwości programowania w Matlabie, duża ilość gotowych funkcji bibliotecznych (w tym implementacji metod numerycznych) oraz możliwości graficzne powodują że Matlab pozwala na rozwiązanie wielu problemów numerycznych w czasie znacznie krótszym, niż zajęłoby napisanie własnego kodu w C lub Fortranie.
Charakterystyczne dla języka programowania Matlaba jest automatyczne rozpoznawanie typów zmiennych - nie występuje deklaracja typu. Matlab rozpoznaje typ zmiennej przy jej pierwszym użyciu, należy tylko odpowiednio ją wywołać.
Wszelkie wprowadzane i deklarowane dane (liczby, tekst) Matlab traktuje jako macierz - pojedyncza liczba jest traktowana jako macierz o wymiarze 1x1.
Matlab cechuje obiektowy system graficzny:
- obiekty graficzne (nadrzędne okno graficzne, układ współrzędnych, okno menu, przyciski i suwaki etc.) są hierarchicznie uporządkowane w postaci drzewa - każdy obiekt ma jednego przodka i może mieć dowolną ilość potomków (dziedziczenie)
- każdy obiekt graficzny ma swoje właściwości (kolor, rozmiar, położenie etc.)
Pisząc okienkowy program w Matlabie wykorzystujemy gotowe obiekty graficzne, lub możemy tworzyć własne obiekty dziedzicząc już zdefiniowane.
![]() |
| Przykładowy model stworzony w Matlabie |
Wczytywane obrazy są w pamięci zapisywane w postaci macierzy liczb double (w zakresie 0 - 1) lub liczb unit8 (zakres 0 - 255), obróbka obrazu polega na dokonywaniu operacji matematycznych na takiej macierzy.
Matlab zawiera także wiele narzędzi zgrupowanych w pakiety, ukierunkowane na konkretne obszary zastosowań, np.
- pakiet symulacji Simulink,
- biblioteki do modelowania ukladow sterowania,
- narzedzia projektowania systemow przetwarzania sygnalow i obrazow.
Simulink jest pakietem służącym do modelowania, symulacji i analizy układów dynamicznych. Pomaga w rozwiązywaniu układów liniowych jak i nieliniowych, ciągłych i dyskretnych. Simulink dostarcza graficzny interfejs użytkownika, umożliwiający konstruowanie modeli w postaci diagramów blokowych jedynie przy użyciu myszki. Dzięki temu można szkicować model myszą dokładnie tak, jakby był szkicowany na kartce. Po zdefiniowaniu modelu, można rozpocząć symulacje, wybierając jedną z dostępnych w Simulink metod, bądź teź wpisując odpowiednie komendy w linii poleceń w okienku Matlaba. Simulink udostępnia narzędzia pozwalające śledzić wyniki już w trakcie symulacji modelu. Istnieją również narzędzia pozwalające na zmianę wybranych parametrow modelu i natychmiastowe sprawdzenie wpływu tej zmiany na badany proces. Dla celów wizualizacji i postprocessingu wyniki symulacji można przetwarzać za pomocą narzędzi z innych pakietow Matlaba. Poniewaz Matlab i Simulink są zintegrowane, można przeprowadzać symulacje, analizować i śledzić ewolucje modelu w każdym z tych środowisk, w dowolnym momencie.
![]() |
| Przykładowe wykresy stworzone w Matlabie |
Skrzynki Narzędziowe (Toolbox-y)
Toolboksy (z ang. toolboxes) to zbiór dodatkowych bibliotek do rozwiązywania specjalistycznych problemów z określonych dziedzin (automatyka, robotyka, elektronika, telekomunikacja, matematyka etc.). Biblioteki te rozszerzają możliwości Matlaba i pisane są także przez oddzielnych producentów oprogramowania.
- Image Processing Toolbox - specjalizowane procedury komputerowej analizy i przetwarzania obrazow obrazów od wyświetlania poprzez filtrowanie, analizę do różnego rodzaju transformacji
- Control Toolbox - zbiór algorytmów, które umożliwiają projektowanie, analizę i modelowanie systemów kontroli
- Signal Processing Toolbox - zestaw narzedzi umozliwiajacych przetwazanie sygnalow, poczawszy od generowania fal, poprzez projektowanie i wdrazanie filtrow, modelowanie parametryczne, a skonczywszy na analizie spektralnej.
- Statistic Toolbox - jest uzyteczny w rozwiazywaniu szerokiej gamy zadan statystycznych, poczawszy do generowania liczb losowych, poprzez dopasowywanie krzywych, projektowanie eksperymentow statystycznych, a skonczywszy na sterowaniu procesami statystycznymi.
- Symbolic Math Toolbox - zawiera efektywne algorytmy manipulacji na wyrazeniach symbolicznych. Pozwala na rozniczkowanie i calkowanie symboliczne, podstawianie, rozwijanie i upraszczanie wyrazen, dzialania na szeregach formalnych, symboliczne rozwiazywanie rownan algebraicznych i rozniczkowych, udostepnia algorytmy kombinatoryczne i wiele innych.
- Identyfication Toolbox - zajmuje się problemem budowy matematycznych modeli dynamicznych systemów opartych na zastanym zbirze danych
- Opimization Toolbox - zajmuje się minimalizacją i maksymalizacją funkcji, głównie nieliniowych; zawiera również zbiór funkcji rozwiązujących standardowe problemy macierzowe jak np. programowanie liniowe
- Neural Network Toolbox - sieci neuronowe
- Fuzzy Logic Toolbox - środowisko do projektowania i diagnostyki inteligentnych układów sterowania wykorzystujących metody logiki rozmytej i uczenie adaptacyjne.
- Spline Toolbox - zestaw bibliotek do aproksymacji i interpolacji funkcjami sklejanymi.
- Wavelet Toolbox - biblioteka do analizy sygnałów oraz usuwania szumów.
Nazwa programu pochodzi od angielskich słów MATrix LABoratory, gdyż początkowo program ten był przeznaczony do numerycznych obliczeń macierzowych. Pra-początki Matlab-a sięgają lat siedemdziesiątych, gdy w USA na zlecenie National Science Foundation powstały biblioteki języka Fortran do obliczeń macierzowych: Linpack i Eispack. Jeden z autorów tych bibliotek, Cleve Moler prowadził zajęcia z algebry liniowej na Uniwersytecie stanu Nowy Meksyk. Chcąc ułatwić życie swoim studentom napisał on w roku 1980 program, który umożliwiał korzystanie z tych bibliotek bez potrzeby programowania w Fortranie. Program ten napisany (także w Fortranie) w formie prostego interaktywnego języka poleceń i rozprowadzany na zasadach public domain był pierwowzorem Matlaba.
![]() |
| Logo programu Matab |
ostatnia aktualizacja: 2011
