Wprowadzenie do MATLAB.pdf
(
178 KB
)
Pobierz
35632465 UNPDF
Wprowadzenie do MATLAB
Ma“gorzata Strycharz , Magdalena Kwiatkowska
Akademia G
ó
rniczo-Hutnicza
im. Stanis“awa Staszica w Krakowie
Wydzia“ Elektrotechniki Automatyki Informatyki i Elektroniki
kierunek: Informatyka
rok II B grupa 6
http://student.uci.agh.edu.pl/strychar/mownit.html
http://student.uci.agh.edu.pl/magkwiat/mownit.html
1 Wiadomo–ci wstƒpne
1.1 Kr
ó
tka charakterystyka
MATLAB stanowi uniwersalne, interakcyjne –rodowisko programowe oraz jednocze–nie wysokiego
poziomu jƒzyk programowania. Przeznaczeniem pakietu s¡ przede wszystkim obliczenia naukowo -
techniczne, in»ynierskie oraz wizualizacje. Program ten pozwala na wykonywanie skomplikowanych
oblicze« numerycznych z ko«cow¡ wizualizacj¡ otrzymanych wynik
ó
w. S¡ one dostƒpne natychmiast,
a pakiet oferuje mo»liwo–¢ przedstawienia ich w postaci dwu lub trzech wymiarowych wykres
ó
w.
MATLAB “¡czy analizƒ numeryczna, obliczenia macierzowe, przetwarzanie sygna“
ó
w i gra
kƒ w “atwe
do u»ycia –rodowisko, w kt
ó
rym zar
ó
wno problemy jak i ich rozwi¡zania zapisane s¡ matematycznie
bez uwzglƒdnienia zasad tradycyjnego programowania.
1.2 Trochƒ historii
Nazwa MATLAB pochodzi od MATrix LABoratory i wi¡»e siƒ z pierwotna koncepcja pakietu, pole-
gaj¡c¡ na udostƒpnieniu u»ytkownikowi procedur LINPACK-a i EISPACK-a przy pomocy prostego
interakcyjnego jƒzyka polece«. Pierwsza wersja MATLAB-a zosta“a napisana w Fortranie w 1980.
Jej autorem jest C.Moler. W piec lat p
ó
„niej
rma MathWorks Inc. wprowadzi“a na rynek wersje
komercyjn¡, napisana w jƒzyku C. Wersja ta do dzisiaj zosta“a znacznie rozszerzona i obejmuje
r
ó
»ne platformy sprzƒtowe pocz¡wszy od PC, a sko«czywszy na superkomputerach. Je–li przet“u-
maczy¢ by pe“n¡ nazwƒ pakietu na jƒzyk polski -
Laboratorium Macierzowe
oczywistym staje siƒ to,
i» u»ytkownik operuje tylko na jednym typie danych, a mianowicie na macierzach. Poci¡ga to za sob¡
fakt, »e nawet pojedyncze liczby s¡ reprezentowane w formie jednowymiarowej macierzy kwadratowej.
1.3 Dziedziny zastosowa«
Ze wzglƒdu na bardzo szerokie mo»liwo–ci, zakres zastosowa« pakietu obejmuje bardzo r
ó
»norodne
dziedziny nauki i techniki. Mo»na tu wymieni¢ cho¢by elektronikƒ, telekomunikacjƒ, automatykƒ,
ekonomiƒ, ale r
ó
wnie» zagadnienia z meteorologii, biologii i medycyny. W dziedzinach algorytm
ó
w
numerycznych algebry liniowej, analizy matematycznej i numerycznej, czy ca“kowania numerycznego
i oczywi–cie rachunku macierzowego bardzo wa»n¡ role odgrywa dostƒp do ich najnowszych implemen-
tacji, jest to jedna z bardzo znacz¡cych zalet MATLAB’a. Przyjazny u»ytkownikowi interfejs (okienka,
przyciski, menu) znacznie u“atwiaj¡ pracƒ z pakietem. Natomiast rozszerzalno–¢ pakietu przez impor-
towanie w“asnych aplikacji napisanych w jƒzyku C lub Fortranie stanowi wa»ny i po»yteczny model
pracy z pakietem.
2 Podstawowe zasady programowania
Praca w –rodowisku MATLAB-a przypomina pracƒ w typowym systemie operacyjnym. Polega
na wydawaniu polece«, kt
ó
re po zatwierdzeniu s¡ wykonywane przez interpreter.
obowi¡zuje zasada indeksowania macierzy pocz¡wszy od 1
inicjalizacja zmiennych odbywa siƒ automatycznie, wtedy, gdy po raz pierwszy przypisuje siƒ im
warto–¢
sta“e tekstowe zapisuje siƒ w apostrofach
wyr
ó
»niona jest prede
niowana zmienna ans - przyjmuj¡ca wynik ostatniej operacji, dla kt
ó
rej
nie okre–lono zmiennej wynikowej
w ka»dej chwili mo»na zobaczy¢ listƒ zmiennych zde
niowanych przez u»ytkownika przy u»yciu
komendy who
usuniecie zmiennej o podanej nazwie nastƒpuje po wywo“aniu komendy clear nazwa-zmiennej,
gdy nie podano nazwy zmiennej to usuwane s¡ wszystkie do tej pory zde
niowane zmienne
nazwy zmiennych powinny zaczyna¢ siƒ od dowolnej litery, po niej mog¡ nast¡pi¢ litery, cyfry
lub podkreslenia w dowolnej ilo–ci, ale rozr
ó
»niane jest tylko pierwsze 19 znak
ó
w
du»e i ma“e litery s¡ rozr
ó
»niane
funkcja przestaje by¢ dostepna, je–li utworzymy zmienn¡ o nazwie identycznej jak nazwa
tej funkcji, jest dostƒpna spowrotem przy ponownym uruchomieniu programu
zawarto–¢ aktualnego katalogu uzyskujemy poleceniem dir –cie»ka-i-znaki-masek
do zmiany aktualnego katalogu s“u»y polecenie chdir nowy-katalog
wszystkie zmienne mo»na zapisa¢ na dysku poleceniem save nazwa-pliku
odczytanie zapisanych danych umo»liwia polecenie: load nazwa-pliku
je»eli po poleceniu wystepuje –rednik, to warto–¢ bƒd¡ca wynikiem jego wykonania nie bƒdzie
wy–wietlona na ekranie
3 Macierze i operacje na macierzach
3.1 Spos
ó
b przechowywania w pamiƒci
Macierze s¡ podstawowym typem danych wykorzystywanym w MATLAB-ie. Dopuszcza on dwa sposoby
przechowywania macierzy w pamiƒci:
gƒsty - przydzielana jest pamiƒ¢ dla tablicy
n£m
liczb rzeczywistych
rzadki - pamietane s¡ tylko elementy niezerowe wraz z ich po“o»eniem
3.2 De
niowanie macierzy
Najprostsz¡ macierz tworzymy wymieniaj¡c jej elementy w nawiasach kwadratowych.
Przyk“ad:
>>M=[1 2 .3 5 ; 5.1 3 2 1/3]
W efekcie otrzymamy macierz nastƒpuj¡cej postaci:
M=
1.0000 2.0000 0.3000 5.0000
5.1000 3.0000 2.0000 0.3333
Macierze mo»na tworzy¢ tak»e za pomoc¡ funkcji bibliotecznych np.
eye(n) - daje w efekcie macierz jednostkow¡ n-wymiarow¡
rand(m,n) - utworzy macierz maj¡c¡ m wierszy i n kolumn oraz wype“ni j¡ liczbami losowymi z
przedzia“u <0,1>
ones(m,n) - utworzy macierz o podanych wymiarach i zainicjalizuje j¡ jedynkami
zeros(m,n) - utworzy macierz o podanych wymiarach i zainicjalizuje j¡ zerami
3.3 Dostƒp do element
ó
w macierzy
Do elementu macierzy mo»emy siƒ odnie–¢ podaj¡c nazwƒ macierzy oraz w nawiasach numery wiersza
i kolumny.
Przyk“ad:
>>M(1,1)=1;
Je»eli wykroczymy poza wymiary macierzy, to automatycznie zostanie jej nadany odpowiedni wymiar,
a brakuj¡ce pola zostan¡ zainicjalizowane zerami.
Przyk“ad:
>>M(2,5)=3
M =
1.0000 2.0000 0.3000 5.0000 3.0000
5.1000 3.0000 2.0000 0.3333
0
3.4 G“
ó
wne operatory macierzowe
Na macierzach mo»na dokonywa¢ nastƒpuj¡cych dzia“a« przy pomocy operator
ó
w:
dodawanie dw
ó
ch macierzy lub dodanie skalaru do macierzy
Przyk“ad:
>>A+1;
>>A+B;
odejmowanie macierzy lub odjƒcie skalaru od macierzy
mno»enie macierzy lub skalar
ó
w (przy mo»eniu macierzy A*B liczba kolumn macierzy A musi by¢
r
ó
wna liczbie wierszy macierzy B, w przeciwnym razie generowany jest komunikat o b“ƒdzie)
Przyk“ad:
>> A=[1 1;2 2;3 3]\\
A=
1.0000 1.0000
2.0000 2.0000
>> B=[1;2]
B=
1.0000
2.0000
>>A*B
ans =
3.0000
6.0000
9.0000
potƒgowanie macierzy
Przyk“ad:
>>B^2;
3.5 Inne operacje na macierzach
Opr
ó
cz podstawowych operacji arytmetycznych, na macierzach mo»na dokonywa¢ szeregu innych
dzia“a«.
Przyk“ady:
mno»enie tablicowe macierzy o tych samych wymiarach - czyli mno»enie odpowiadaj¡cych sobie
element
ó
w dw
ó
ch macierzy
>>A.*B
potƒgowanie tablicowe - podniesienie ka»dego elementu macierzy do podanej potƒgi
>>A.^3
u»ycie dwukropka
A(:) - przestawia wszystkie elementy macierzy w wektor kolumnowy
A(:,i) A(i,:) - wypisuje odpowiednio i-t¡ kolumnƒ lub i-ty wiersz macierzy A
A(i:n) - wypisuje elementy macierzy od i-tego do n-tego
A(:,i:n) - wypisuje kolumny pocz¡wszy od i-tej do n-tej
A(i:n,:) - wypisuje elementy od i-tego do n-tego wiersza
3.6 Funkcje przekszta“caj¡ce macierze
Obok operator
ó
w tablicowych MATLAB zawiera tak»e funkcje tablicowe, kt
ó
re przekszta“caj¡ ka»dy
z element
ó
w macierzy z osobna.
Przyk“ad:
>>A=[1 2 4; 2 16 64];sqrt(A)
ans=
1.0000 1.4142 2.0000
1.4142 4.0000 8.0000
Elementami macierzy wynikowej s¡ pierwiastki stopnia drugiego element
ó
w macierzy A. Funkcje tabli-
cowe mo»na podzieli¢ na cztery grupy:
trygonometryczne, hiperboliczne i odwrotne do nich np sin(A) - sinus, atan(A) - arcus tangens,
cosh(A) - cosinus hiperboliczny, asinh(A) - arcus sinus hiperboliczny
funkcje logarytmiczne, wyk“adnicze i potƒgowe np. exp(A) - funkcja wyk“adnicza pow2(A) -
oblicza warto–ci potƒgi liczby 2 dla wyk“adnik
ó
w bƒd¡cych elementami macierzy A, log(A) -
logarytm naturalny element
ó
w macierzy A
funkcje zwi¡zane z obliczeniami w dziedzinie liczb zespolonych np. abs(A) - macierz modu“
ó
w
element
ó
w macierzy A, real(A) - macierz czƒ–ci rzeczywistych element
ó
w macierzy A, imag(A)
- macierz czƒ–ci urojonych element
ó
w macierzy A
funkcje zaokr¡gle« i reszty z dzielenia ceil(A) - zaokr¡gla elementy macierzy A w g
ó
rƒ,
oor(A)
- zaokr¡gla elementy macierzy A w d
ó
“, round(A) - zaokr¡gla elementy macierzy do najbli»szej
liczby ca“kowitej, rem(A,B) - oblicza resztƒ z dzielenia odpowiadaj¡cych sobie element
ó
w macierzy
A i B
Plik z chomika:
lazarusp22
Inne pliki z tego folderu:
simpson całkowanie matlab.pdf
(181 KB)
Newton Raphson menggunakan MATLAB(1).pdf
(134 KB)
Newton Raphson menggunakan MATLAB.pdf
(134 KB)
method numeric Matlab 2.pdf
(677 KB)
method numeric Matlab 1.pdf
(118 KB)
Inne foldery tego chomika:
matlab.m
Zgłoś jeśli
naruszono regulamin