Matlab1 4 id 287787 Nieznany

background image

© Zbigniew Rudnicki (dr inż)

MATLAB -

podstawy

użytkowania

MATLAB

(MAT

rix

LAB

oratory

)

- 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

background image

Dlaczego warto poznać MATLABa?

Bo :

• jest powszechnie nauczany na uczelniach Świata

• jest łatwy (jak BASIC a nie jak C czy C++)

• staje się najczęściej używanym narzędziem

w badaniach naukowych (

 publikacje)

• posiada bardzo obszerną i przystępnie napisaną

dokumentację, oraz przykłady i system pomocy

• 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:

• A.Kamińska, B.Pańczyk: „Matlab - przykłady i zadania”

- wyd. Mikom 2002, z serii „ćwiczenia z...” (150 stron)

• J.Brzózka, L.Dorobczyński: „Programowane w Matlab”

wyd.Mikom 1998. (314 stron)

• B.Mrozek, Zb.Mrozek: „MATLAB 5.x, Simulink 2.x”.

wyd. PLJ 1998

• B.Mrozek, Zb.Mrozek: „MATLAB uniwersalne

ś

rodowisko obliczeń naukowo-technicznych”. PLJ 1996

• Z.Wróbel, R.Koprowski: „Przetwarzanie obrazu w

programie MATLAB”. Wyd. Uniw. Śl., K-ce 2001

background image

Interaktywne środowisko Matlab’a:

Okno

KOMEND

i wyników

(dialogu)

Bieżący

folder

Pomoc

(podręczniki)

Historia

(poprzednie

komendy)

Niektóre cechy MATLABa

(wersja 6)

• Przyjazne dla użytkownika, interakcyjne środowisko

• Język programowania wysokiego poziomu

• Zbiór (ok.30) toolbox’ów - zestawów procedur i funkcji

• Zbiór podręczników (ok.70 x kilkaset stron, 433MB)

• 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.

background image

Typy i nazwy zmiennych

 Wszystkie zmienne w MATLABie sa 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 19 pierwszych znaków

Nazwy i deklarowanie zmiennych

• MATLAB rozróżnia duże i małe litery

– polecenia standardowe należy pisać

małymi literami

– dla nazw własnych programów i zmiennych

można używać małych i dużych liter

Deklarowanie typu i wymiarów macierzy

odbywa się automatycznie - przez
rozpoznanie rodzaju wpisanych wartości
oraz maksymalnych wskaźników

background image

Łagodny start - kalkulator

Znak gotowości do przyjmowania komend:

>>

Wpisanie w oknie komend 2+3 daje wynik:

>>

2+3

ans =

5

>>

Nie wstawiliśmy wyniku do żadnej zmiennej

dlatego MATLAB użył zmiennej „ans”

Obliczenia kalkulatorowe c.d.

Możemy wyniki obliczeń podstawiać do zmiennych np.:

>>

x=sin(pi/2)

x =

1

>>

Komenda zakończona średnikiem wykona

się lecz nie będzie wyświetlony jej wynik:

>>

x=sin(pi/2);

>>

background image

Jakie funkcje mamy do dyspozycji

- pokaże HELP

Funkcje według kategorii

background image

Alfabetyczny wykaz funkcji

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 podst 10

mod - reszta z dzielenia

round - zaokrągla do najbliższej całkowitej

sign - znak

sqrt- pierwiastek

background image

Ciągi i wektory

Przykłady definiowania ciągów:

>>

i=1:6

i = 1 2 3 4 5 6

_____________________________

>>

a(i)=(i-1)/2

a = 0 0.5 1.0 1.5 2.0 2.5

____________________________

>>

x=-0.2:0.1:0.3

x = -0.2 -0.1 0 0.1 0.2 0.3

____________________________

>>

v=[12.1, -3.2, 0.03, 44.4]

v = 12.1000 -3.2000 0.0300 44.4000

Macierze

>>

A=[4,1,5; 2,3,6]

A =
4 1 5
2 3 6

Dwukropek zastępuje wszystkie wartości wskaźnika

A więc pierwszy wiersz macierzy to:

>>

A(1,: )

ans = 4 1 5

Podobnie aby wybrać trzecią kolumnę wpisujemy:

>>

A(:,3)

ans =
5
6

>>

A(2,2)

ans = 3

background image

Operacje na macierzach czy na ich elementach?

Wpisanie x=0 : 0.1 : 0.5 daje macierz wierszową:

>>

x=0 : 0.1 : 0.5

x = 0 0.1000 0.2000 0.3000 0.4000 0.5000

Operatory bez kropki to działania macierzowe a mnożenie dwu

macierzy to mnożenie wierszy przez kolumny a więc nie można:

>>

y=x^2

??? Error using ==> ^ Matrix must be square.

ani nie da się:

>>

y=x*x

??? Error using ==> * Inner matrix dimensions must agree.

natomiast trzeba użyć działania na elementach czyli operatora z

kropką:

>>

y=x .* x

y = 0 0.0100 0.0400 0.0900 0.1600 0.2500

Jak otrzymać wykres funkcji

>>

x=0:0.1:4*pi;

>>

plot(x,sin(x));

>>

grid on

background image

Wykres powierzchni trójwymiarowej

>> [x,y]=meshgrid(-3*pi:0.1:3*pi,-3*pi:0.1:3*pi);

>> z=600-x.*y+50*sin(x)+50*sin(y);

>> mesh(x,y,z)

Programy czyli ”m-pliki”: skrypty i funkcje

Programy (wieloliniowe) można pisać w edytorze

MATLABa lub w Notatniku

Zapisywane są do plików z rozszerzeniem

*.m

Uruchamiane 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

background image

Przykład m-pliku skryptowego

% po znaku procentu są tzw. komentarze
% program rozwiazywania równania kwadratowego

a=input('a='); b=input('b='); c=input('c=');
delta = b*b-4*a*c;

if delta<0

disp('Brak pierwiastkow rzeczywistych');

else

x1=(-b-sqrt(delta))/(2*a); x2=(-b+sqrt(delta))/(2*a);
disp('x1='); disp(x1); disp('x2='); disp(x2);

end

To samo napisane jako funkcja prkw(a, b, c):

function [x1, x2] = prkw(a, b, c)

% ta funkcja oblicza pierwiastki x1, x2
% rownania: a*x^2 + b*x + c = 0

delta = b*b-4*a*c;

if delta<0

% dla delta<0 podstawimy NaN = "nieokreslone"

x1=NaN; x2=NaN

else

x1=(-b-sqrt(delta))/(2*a);
x2=(-b+sqrt(delta))/(2*a);

end

background image

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

. . . . . . . .


Wyszukiwarka

Podobne podstrony:
MATLAB~3 id 287655 Nieznany
matlab3 id 287802 Nieznany
matlabR id 287808 Nieznany
Matlab intro id 287680 Nieznany
MATLAB cw 2 id 287670 Nieznany
MATLAB cwiczenia cwmatl id 2876 Nieznany
konspekt Matlab 2012 id 245613 Nieznany
LAB1 MES MATLAB statyka 1 id 25 Nieznany
MATLAB AMGd wprowadzenie id 287 Nieznany
przetwrzanie obrazw matlab id 4 Nieznany
MATLAB rozdzial5 id 768819 Nieznany
matlab Komendy id 287424 Nieznany
pinf13 matlab cz3 id 358238 Nieznany
MATLAB cw 09 11 Wykresy id 2876 Nieznany
Abolicja podatkowa id 50334 Nieznany (2)
4 LIDER MENEDZER id 37733 Nieznany (2)
katechezy MB id 233498 Nieznany
metro sciaga id 296943 Nieznany

więcej podobnych podstron