INFORMATYKA
INFORMATYKA
1
LAB
INSTRUKCJA DO ĆWICZENIA NR 1
TEMAT:
WPROWADZENIE DO PAKIETU MATLAB
INFOMATYKA
Przedmiot: INFORMATYKA – Katedra Robotyki i Mechatroniki AGH
Laboratorium 1 „ Wprowadzenie do Pakietu MATLAB”
I.
CEL ĆWICZENIA:
Celem ćwiczenia jest zapoznanie się z pakietem MATLAB, poznanie podstawowych technik obliczeniowych z wykorzystaniem zapisu macierzowego, oraz pisanie prostych skryptów (m-plików).
II.
PODSTAWOWE KOMENDY UŻYWANE W ĆWICZENIU: Komenda
Przykład
Opis
help nazwafunkcji
help plot
Wyświetla pomoc w zastosowaniu danej funkcji
;
A=[1,2,3];
Użycie średnika blokuje wyświetlanie operacji na ekranie Brak średnika
A=[1,2,3]
Brak średnika po linii wyświetla operację na ekranie
...
A=[1,2,...
Umożliwia przeniesienie komendy do następnej lini
bench
bench bench(2)
Testuje wydajność obliczeniową komputera
clear
clear; clear all; clear A
Usuwa wszystkie lub wybrane zmienne
who
who
Wyświetla listę wszystkich utworzonych zmiennych
save
save nazwapliku
Zapisuje aktualne zmienne z przestrzeni roboczej do pliku load
load nazwapliku
Wczytuje do przestrzeni roboczej zmienne zapisane w pliku
[ ] (nawias)
A=[1,2;3,4];
Tworzenie wektorów lub macierzy
( ) (nawias)
A()
Odwołanie do wybranych elementów macierzy
A(1:3;1:3);
Wybiera podmacierz 3x3 z macierzy A
C(2,1:6);
Wybiera elementy 1do6 z drugiego wiersza macierzy C
D([1 10], 1:6);
Wybiera elementy 1do6 z pierwszego i 10 wiersza macierzy D
E(4,:);
Pobranie wszystkich elementów z wiersza 4 macierzy E
F(:,8);
Pobranie wszystkich elementów z 8 kolumny macierzy F
G(80); (dla macierzy)
80 element macierzy liczony od lewej strony od góry do dołu disp
disp(G)
Wyświetla macierz G
size
[a b]=size(F)
Przypisuje a=ilość wierszy, b=ilość kolumn macierzy F
length
c=length(G)
Zwraca długość wektora lub dłuższy z wymiarów macierzy
[] (macierz pusta)
H(:,6)=[]
Usuwa 6 kolumnę macierzy H
i lub j
B=2+3*i; C=4+6*j
i, j oznacza jednostkę urojoną – tworzy liczny zespolone
:
D=[1:10]; E=[1:0.1:10] Generowanie elementów z krokiem co 1 lub co dowolny krok
‘
E’
Wykonuje operację transponowania macierzy lub wektora
+
C=A+B
Dodawanie macierzy (dodawanie poszczególnych elementów)
-
C=A-B
Odejmowanie macierzy (odejmowanie poszczególnych el.)
*
C=A*B; C=A*3
Mnożenie 2 macierzy (macierzowo) lub macierzy przez liczbę
.*
C=A.*B; C=A.*3
Mnożenie macierzy (tablicowo) tzn. element przez element
./
C=A./B
Dzielenie macierzy (tablicowo) tzn. element przez element
.\
C=A.\B
Dzieli macierz B przez A (j.w), czyli A./B=B.\A
.
C=A.^2
Podnoszenie do potęgi (tablicowo) tzn. element po elemencie
<,>,==,~=,<=,>=
A<B (op. porównania)
Zwracają wektor logiczny [0,1...] 1-spełnione, 0-niespełnione sqrt
sqrt(A)
Pierwiastkuje każdy element macierzy A (osobno)
sin, cos, tan
sin(E)
Funkcje trygonometryczne – operacja tryg. na elementach E
log, log10
log10(Z)
Logarytm naturalny oraz logarytm przy podstawie 10 z Z
abs
abs(R)
Wartość bezwzględna elementów macierzy R
any
any(T)
zwraca 1 jeżeli jakikolwiek element T jest niezerowy
all
all(T)
zwraca 1 jeżeli wszystkie elementy T są niezerowe
eye
eye(m); eye(m,n)
Tworzy macierz jednostkową kwadratową lub m x n
ones
ones(m); ones(m,n)
Tworzy macierz z samymi jedynkami m x m lub m x n
zeros
zeros(m); zeros(m,n)
Tworzy macierz z samymi zerami m x m lub m x n
rand
rand(n); rand(m,n)
Tworzy macierz z elementami pseudolosowymi wymiar j.w.
linspace
linspace(A,B,N)
Tworzy wektor N liczb równomiernie rozmieszcz. od A do B
logspace
logspace(A,B,N)
Tworzy wektor N liczb logarytmicznie rozm. od 10A do 10B
2
Przedmiot: INFORMATYKA – Katedra Robotyki i Mechatroniki AGH
Laboratorium 1 „ Wprowadzenie do Pakietu MATLAB”
plot
plot(R); plot(R,t)
Rysuje elementy wektora R lub wykres R=f(t)
m-plik
Nazwa.m
Plik tekstowy (z rozszerzeniem *.m) z listą komend wykonywanych w MATLABIE, wywołany z okna głównego
MATLABa wykonuje zapisany wewnątrz skrypt.
III.
ZADANIA DO WYKONANIA:
1. Stwórz wektor wierszowy A składający się z 4 elementów każdy. Każdy następny element jest większy od poprzedniego o 2.
2. Stworzyć dwa wektory 13 elementowe jeden o rozkładzie równomiernym drugi o rozkładzie logarytmicznym a następnie przemnożyć je przez siebie macierzowo i arytmetycznie.
3. Stwórz wektor kolumnowy B będący wektorem transponowanym wektora A.
4. Stwórz losowy wektor kolumnowy składający się z 15 elementów, uszeregowanych malejąco.
5. Stwórz 5-elementowe wektory losowe a następnie stwórz z nich macierz kwadratową.
6. Stwórz 25-elementową macierz jednostkową.
7. Porównaj wyniki operacji arytmetycznych macierzowych i operacji arytmetycznych tablicowych. Na dwóch losowych macierzach 9-elementowych (+,-,/,\,*).
8. Stwórz losową macierz [3x4], a następnie stwórz na podstawie tej macierzy wektory:
− wierszowy składający się z pierwszej kolumny macierzy
− kolumnowy składający się z parzystych elementów macierzy 9. Stworzyć macierz [5x4] jedynek a następnie zamienić parzyste elementy macierzy na elementy losowe 10. Stworzyć macierz losową [10x10] i wyszukać wszystkie wartości większe od 0.5 i stworzyć z nich wektor kolumnowy.
11. Określić długość wektora stworzonego w punkcie 10.
12. Rozwiąż (macierzowo) następujący układ równań:
40x + 2z – 7 = 0
–5z + 3y + 2x – 10 = 0
2x + 4y + 5z = 0
13. Narysuj wykres funkcji y=sin(x) w zakresie wartości x=[0,360], Należy przyjąć taki krok wektora x, aby wykres był gładki.
14. Narysuj wykres funkcji z=tan(x) w dowolnej dziedzinie.
15. Zapisz wszystkie zmienne w pliku o dowolnej nazwie
16. Utwórz skrypt (m-plik), który:
− Wyczyści wszystkie zmienne w przestrzeni matlaba
− Wczyta zmienne zapisane pod wybraną nazwą w punkcie 15
− Utworzy wektor czasu t od 0 do 100[s] z krokiem co 0.5[s]
− Wyświetli na ekranie przebieg funkcji y=cos(t)
3
Przedmiot: INFORMATYKA – Katedra Robotyki i Mechatroniki AGH
Laboratorium 1 „ Wprowadzenie do Pakietu MATLAB”
IV.
SPRAWOZDANIE:
W sprawozdaniu należy zamieścić wszystkie zrealizowane w punkcie III zadania. Każde zadanie powinno być zatytułowane i ponumerowane, zgodnie z numeracją w instrukcji. Jeżeli jest to wymagane to sprawozdanie powinno zawierać metodę wykonania i wynik w postaci rysunku lub listingu. W sprawozdaniu nie umieszczamy wniosków, chyba że jest to wyraźnie zaznaczone.
Ogólne uwagi dotyczące sprawozdania:
• Strona tytułowa, powinna zawierać: Imiona i nazwiska osób, numer grupy, nazwę przedmiotu, tytuł
ćwiczenia, numer ćwiczenia i datę wykonania ćwiczenia,
• Układ strony powinien być następujący: marginesy 0,5 cm z każdej strony, czcionka 10, odstęp 1.
• Wykresy możliwie małe, ale czytelne, opisane i umieszczone bezpośrednio pod lub obok układu tak, żeby było wiadomo który przebieg należy do którego układu,
• Sprawozdanie nie powinno być długie ale powinno zawierać wszystkie niezbędne informacje.
Uwaga: Sprawozdanie należ y przesyłać na pocztę lub wskazany przez prowadzą cego serwer FTP w formacie PDF zatytułowane w nastę pują cy sposób:
NumerGrupy_Nazwisko_Imię _ć wNumerCwiczenia.pdf na przykład:
13_Kowalski_Jan_ć w1.pdf
14_Nowak_Krzysztof_ć w9.pdf
15_Student_Janusz_ć w8.pdf
Sprawozdania oddane w innej formie lub z nieprawidłowym opisem nie bę dą przyjmowane!
4