Sprawozdanie z laboratorium Technologii Informacyjnych |
||
Temat: |
Lab.2. Wprowadzenie do Matlaba |
|
Wykonał: |
Paweł Potęga I rok Elektronika i Telekomunikacja Semestr I Grupa dziekańska: III |
|
Data oddania: |
Ocena: |
Podpis: |
I. Wstęp
a) Cel Matlaba
Obliczanie wielu działań matematycznych o różnej trudności oraz sprawdzenie możliwości Matlaba w zastosowaniu matematyczym
b) Wygląd okna Matlaba
c) Środowisko pakietu Matlab
II. Opis teoretyczny
Matlab jest produktem firmy The Mathworks Inc. Z USA. Matlab jest językiem wysokiego poziomu. Jego polecenia, operatory i funkcje stosuje się do obliczeń numerycznych (w tym na macierzach i na liczbach zespolonych) ora wizualizacji wyników w grafice dwu- i trójwymiarowej. Ponad 500 funkcji Matlaba realizuje podstawowe algorytmy numeryczne, operacje na macierzach, wielomianach, metody interpolacji i aproksymacji, transformacje Fouriera, algorytmy całkowania równań różniczkowych. Implementacje specjalizowanych algorytmów dla macierzy rzadkich i wiele innych. W sumie w środowisku pakietu Matlab jest około 2500 funkcji.
III. Część praktyczna
1. Komendy i polecenia:
tab=rand (100,100) - przedstawienie macierzy 100x100 z wydrukiem wyniku
tab=rand (100,100); - przedstawienie macierzy 100x100 bez wydruku wyniku
clear tab - usuwanie funkcji
clear all - usuwanie wszystkich funkcji
dec2bin - przeliczanie dowolnej liczby całkowitej na liczbę w postaci dwójkowej
help dec2bin - uzyskiwanie pomocy na temat operacji „dec2bin”
2.Podstawowe działania i operacje:
a) Działania arytmetyczne:
a+b
a-b
a*b
a\b
a/b
b) Operacje porównania i instrukcja podstawiania:
a=7
b=5
c=a
a= =c 1 ~(a= =c) 0
a~=c 0 (a~=b & b<c) 1
a>c 0 (a~=b & b<c | c<a) 1
a<c 0 (a~=b & b<c | c>a) 1
a>=c 1
1- prawda
0- fałsz
Operator logiczny:
~ „NOT”
| “OR”
& „AND”
c) Liczby zespolone:
Wprowadzamy zmienne: a=2+3i
b=2-3i
c=a*b =10+15i
Poprzez wprowadzenie tych zmiennych możemy działać na działaniach matematycznych takich jak: dodawanie, odejmowanie, mnożenie, dzielenie, potęgowanie oraz pierwiastkowanie liczb zespolonych
d) Funkcje
- Potęgowanie: 2^7=128
- Pierwiastkowanie: sqrt(2)=1.4142
- Funkcja exponocjalna - jej pochodna =e* Jest to jedyna taka funkcja, której pochodna jest tą samą funkcją
- Funkcje logarytmiczne :
log (0.001)/log(10)= -3.0000
log10 (0.001)= -3
- Funkcje trygonometryczne:
sin
cos
tan
- Funkcje cyklometryczne:
asin
acos
atan
- Funkcje hiperboliczne:
sinh
cosh
tanh
- Funkcje odwrotne od hiperbolicznych:
asinh
acosh
atanh
e) Skrypty
Aby utworzyć skrypt należy wejść kolejno w: File, New, M-File
- Piszemy liczbę: a=2+3i
- Następnie z liczby wyznaczamy:
abs(a) - Moduł z liczby zespolonej „a”
angle(a) - Kąt z liczby zespolonej „a”
abs(a)*exp(1i*angle(a)) - po wprowadzeniu tych zmiennych otrzymujemy wynik =
2.000+3.000i
- analogicznie wyznaczamy kolejną skrypte:
real(a)
imag(a)
real(a)+1i*imag(a)
f) Zaokrąglanie liczb
„ceil” - zaokrąglanie do plus nieskończoności
„floor” - zaokrąglanie do minus nieskończoności
„fix” - zaokrąglanie do zera
„round” - zaokrąglanie do najbliższej
g) Wektory
Wektory wierszowe: u=[2, 4.4, -0.2, -1]
v=[0, 1, 2, -3]
wektor kolumnowy: x=[0.1; 0.5; 0; -1;]
wektor p=1:6 p=[1, 2, 3, 4, 5, 6]
wektor q= 0:3:10 q=[0, 3, 6, 9]
length(a) - sprawdzanie długości wektora `a'
length(v) - sprawdzanie długości wektora `v'
length(x) - sprawdzanie długości wektora `x'
Na wektorach można wykonywać różnego rodzaju działania: „+” , „-”, „*” i „/”
h) Macierze
C=[1 2;3 -4]
C= 1 2
3 -4
spacja w macierzy rozdziela kolumny
natomiast średnik rozdziela wiersze
det(c)= -10 - wyznacznik z macierzy C
inv(c) - macierz odwrotna do macierzy C
d=inv(c)
d*c - macierz jednostkowa
c*d
E=eye(3) - macierz mająca główną przekątna złożoną z jedynek
Z=zeros(2,3) - macierz wypełniona zerami
I=ones(3,2) - macierz wypełniona jedynkami
i) Program konwertujący i zastępujący funkcje dec2bin
konwertowanie ręczne
wprowadzenie zmiennej a=13
konwertowanie liczby „a” na liczby w postaci:
t1=dec2bin(a)=1101 - dwójkowej
t2=dec2hex(a)=D - szesnastkowej
konwertowanie na liczby rzeczywiste liczb w postaci:
bin2dec(`101011')=43 - dwójkowej
hex2bin(`2b')=43 - szesnastkowej
program konwertujący
a=5
abin=dec2bin(a)
pot=0;
s=0
for i=length(abin):-1:1
disp(i);
disp(abin(i)=='1');
end
IV. Wnioski
Matlab jest bardzo przydatnym programem do obliczania wszelkiego rodzaju obliczeń. Od najprostrzych dzialań matematycznych po skomplikowane i trudne dzialania do wykonania , dlatego tez Matlab z pewnością zdobył uznanie nie tylko wśród studentów ale i innych użytkowników. Wbrew pozorom, Matlab nie jest aż tak przyjaznym programem do obliczania na jakiego by wyglądał, gdyż bez znajomości komend i poleceń, utkniemy na mieliźnie. Jest też inny program do obliczania działań matematycznych jakim jest Matcad. Piszę o Matcadzie iż można go przyrównać do Matlaba z tym, że w Matcadzie nie jest potrzebna znajomość komend i poleceń z kolei ma mniejszy zakres obliczeń w porównaniu z Matlabem toteż Matlab jest lepszym programem ale i bardziej skomplikowanym. No cóż reasumując: Coś za Coś...
V. Literatura
„Matlab w zastosowaniu” S. Osowski, A. Cichocki, K. Siwek