skrypt_matlab.pdf

(529 KB) Pobierz
143301568 UNPDF
Obliczenia z użyciem
programu MATLAB
Skrypt powstał w ramach prac Centrum Korepetycji
Koła Naukowego Studentów Politechniki „Gambrinus”.
www.gambrinus.pwr.wroc.pl
Autorzy:
Karol Białowąs – rozdziały 1,2,4,7
Anna Borowska – rozdział 3
Paweł Góra – rozdział 5
Natalia Gemza - rozdział 6
143301568.002.png
Spis treści:
1. Podstawy, proste obliczenia ....................................................................... 1
1.1 Interfejs ........................................................................................................ 1
1.2 Proste obliczenia .......................................................................................... 2
1.3 Wbudowane funkcje .................................................................................... 2
1.4 Zmienne ....................................................................................................... 3
1.5 Przydatne polecenia ..................................................................................... 4
1.6 Przenoszenie danych z arkusza kalkulacyjnego do Matlaba ....................... 5
2. Macierze i wektory ..................................................................................... 6
2.1 Sposoby definiowania macierzy i wektorów ............................................... 6
2.2 Dostęp do elementów macierzy/wektorów .................................................. 7
2.3 Operacje na wybranym wierszu/kolumnie ................................................... 9
2.4 Podstawowe operacje rachunku macierzy ................................................... 10
2.5 Rozwiązywanie układów równań liniowych metodą macierzy odwrotnej .. 11
3. Wielomiany ................................................................................................ 12
3.1 Obliczanie wartości wielomianu (polyval) .................................................. 12
3.2 Obliczanie pierwiastków wielomianu (roots) .............................................. 12
3.3 Mnożenie i dzielenie wielomianów (conv i deconv) ................................... 13
3.4 Pochodna wielomianu (polyder) .................................................................. 13
3.5 Aproksymacja wielomianowa (polyfit) ....................................................... 14
4. Funkcje i skrypty ........................................................................................ 15
4.1 Skrypty ........................................................................................................ 15
4.2 Funkcje ........................................................................................................ 17
4.3 Zmienne globalne ........................................................................................ 21
4.4 Funkcja jako argument innej funkcji ........................................................... 22
4.5 Znajdowanie miejsc zerowych dowolnej funkcji (fzero) ............................ 23
5. Pętle i instrukcje warunkowe ..................................................................... 25
5.1 Pętla for ....................................................................................................... 25
5.2 Pętla while ................................................................................................... 26
5.3 Instrukcja warunkowa if .............................................................................. 28
6. Grafika w Matlabie .................................................................................... 31
6.1 Funkcja plot ................................................................................................. 31
6.2 Edycja wykresu ............................................................................................ 31
6.3 Hold on ........................................................................................................ 35
6.4 Subplot ......................................................................................................... 36
6.5 Interpolacja .................................................................................................. 37
6.6 Funkcja fplot ................................................................................................ 38
7. Całkowanie ................................................................................................ 40
7.1 Funkcja trapz ............................................................................................... 40
7.2 Funkcja ode45 ............................................................................................. 42
7.3 Funkcja ode45 – całkowanie układów równań ........................................... 45
7.4 Zdarzenia (Events) ...................................................................................... 46
1. Podstawy, proste obliczenia
Matlab to zaawansowane środowisko do obliczeń matematycznych. Udostępnia ogromną ilość
specjalistycznych funkcji oraz język skryptowy pozwalający nawet tworzyć programy z GUI
(graficznym interfejsem użytkownika). W kursie tym postaramy się przybliżyć niewielką część
najpotrzebniejszych inżynierowi – chemikowi funkcji programu.
1.1 Interfejs
Zacznijmy od przyjrzenia się interfejsowi.
Okno po uruchomieniu programu Matlab.
Elementy, które będą nas interesować wyróżniono czerwonym kolorem.
1 – przycisk uruchamiający edytor M-plików
2 – przycisk uruchamiający Simulink
3 – Command Window
4 – okno Workspace
O dwóch pierwszych pozycjach więcej powiemy w dalszych częściach kursu. Na razie korzystać
będziemy jedynie z:
Command Window – okno, w którym możemy bezpośrednio wpisywać polecenia i w
którym zobaczymy wyniki ich wykonania
Workspace – w tym oknie znajdują się zmienne utworzone w czasie aktualnej sesji
1
143301568.003.png
1.2 Proste obliczenia
Pierwsza operacja jaką wykonamy to zwykłe dodawanie. Wpiszmy w oknie Command Window:
>> 3+2
i wciśnijmy enter. Powinniśmy zobaczyć następujący wynik:
>> 3+2
ans =
5
>>
Zwróć uwagę, że w oknie Workspace pojawiła się zmienna o nazwie ans i wartości 5. Do zmiennej
tej będziemy mogli się później odwoływać. Analogicznie możemy obliczać wartości wszystkich
innych wyrażeń algebraicznych. Spróbuj teraz samodzielnie wykonać następujące operacje i
sprawdź ich wyniki:
3-2
3*2
3/2
3^2
Ostatnia z tych operacji to podnoszenie do potęgi. Spróbujmy teraz obliczyć wartość nieco bardziej
skomplikowanego wyrażenia:
2.3∗ e 3.4 6∗10 −3
1.23−3 4.2
>> (2.3*exp(3.4) + 6e-3)/(1.23 - 3*sqrt(4.2))
ans =
-14.0140
Zauważ, że w Matlabie mozesz stosować nawiasy. Kolejność wykonywania działań jest
standardowa, tj. potęgowanie, następnie mnożenie/dzielenie itd., z uwględnieniem nawiasów. W
przykładzie tym zwróć uwagę na to jak zapisano wyrażenie 6*10 -3 - 6e-3. Jest to tak zwany zapis
wykładniczy. Warto pamiętać że liczby można w matlabie zapisywać właśnie w ten sposób.
1.3 Wbudowane funkcje
Kolejna istotna rzecz pokazana w tym przykładzie to funkcje.
exp(3.4) oraz sqrt(4.2)
Łatwo domyślić się co one oznaczają – exp to funkcja eksponent czyli „e do x” a sqrt to pierwiastek
kwadratowy z liczby. Matlab udostępnia jeszcze wiele funkcji. Kilkanaście często używanych
zebrano w tabeli poniżej.
Funkcja
Co oblicza:
exp(x)
e^x
sqrt(x)
Pierwiastek kwadratowy
log(x)
Logarytm naturalny
2
143301568.004.png 143301568.005.png 143301568.001.png
Zgłoś jeśli naruszono regulamin