tsis laboratorium1, Automatyka i Robotyka, sV, TSiS

[ Pobierz całość w formacie PDF ]
Katedra
Podstaw
Konstrukcji
Maszyn
Wydział
Mechaniczny
Technologiczny
Teoria Systemów
i Sygnałów
Politechnika
Śląska
Kierunek studiów AiR, semestr 5
Prowadzący przedmiot
Prof. dr hab. Wojciech Moczulski
Rok akademicki 2009/10
Instrukcja do ćwiczeń laboratoryjnych
Ćwiczenie 1
Temat
Środowisko Matlab. Wprowadzenie
Opracowała: dr inż. A. Timofiejczuk
ul. Konarskiego 18a
44-100 Gliwice
tel. 237 1467
fax 237 1360
A0PT18P00D53-001
Gliwice 2009-10-01
- 1/10 -
I. Zadania do wykonania
Cel ćwiczenia: Zapoznanie się ze środowiskiem Matlab, w którym wykonywane będą zadania
dotyczące następnych ćwiczeń.
Zadanie 1.
Zapoznanie się ze sposobami przypisania wartości zmiennym oraz wykonywanie
działań na macierzach. Macierze:
123
234
345
57 8
78 9
8910
















i




zapisać pod zmiennymi
m1
i
m2
.
wyznaczyć maksymalną wartość elementów tych macierzy pod zmiennymi
max1
i
max2
,
wyznaczyć wyniki działań:
m1
+
m2
,
m1
/
m2
,
m1
*
max1
.
Zadanie 2.
Wyznaczyć rozwiązanie układu równań:
234 1
32 4 5
32
+−=−
−+=
−+ − =−
x
x
x



1
2
3
x
x
x
1
2
3
x
x
x
4
1
2
3
Sprawdzić czy otrzymane rozwiązanie spełnia ten układ
Zadanie 3.
Wyznaczyć optymalne rozwiązanie układu równań „słabo” sprzecznych:
234 1
32 4 5
32 4
232
+−=−
−+=
−+ − =−
++=
x
x
x

1
2
3

x
x
x
1
2
3

x
x
x


1
2
3
x
x
x

1
2
3
Sprawdzić w jakim stopniu otrzymane rozwiązanie spełnia układ równań.
Zadanie 4.
Sporządzić wykres funkcji:
yx
dla
[ ]
=− −
(
2
)(
x
3
)(
x

4
)
x
∈ 1;
Zadanie 5.
Sporządzić wykres funkcji: (a) w postaci 3-wymiarowej, b) w postaci mapy warstwcowej)
z
dla
[ ]
x
∈−3;,
[
]
2
2
=− −
8
x
y
y
∈−3;
Zadanie 6.
W macierzy d1 zapisać kolejne wyrazy szeregu:
y
=
2
sin(
240
t
+ +
2
)
3
sin(
150
t
+
3
) wyznaczone dla
t
= 099
:
Zadanie 7.
Opracować i uruchomić funkcję
wykres01
(
macierz
), która pozwoli na wykonanie wykresu
elementów szeregu z poprzedniego zadania.
A0PT18P00D53-001
Gliwice 2009-10-01
- 2/10 -
II. Objaśnienia
1.
Wstęp
MATLAB jest pakietem uniwersalnych narzędzi matematycznych pozwalających na
wykonywanie obliczeń numerycznych z wielu dziedzin.
Pakiet składa się z:

interpretera języka programowania,

biblioteki gotowych funkcji podstawowych,
a także

bibliotek gotowych funkcji specjalistycznych (przyborników ang. toolboxes).
(liczba oraz rodzaje bibliotek dodatkowych zależne są od potrzeb użytkownika i
zakresu stosowania całego pakietu Matlab)
Matlab umożliwia specyficzny zapis funkcji i zmiennych co pozwala na znaczne
uproszczenie skomplikowanych algorytmów, w szczególności obliczeń macierzowych.
Ta cecha pakietu Matlab będzie szczególnie wykorzystywana na zajęciach
laboratoryjnych.
Uwaga
Zajęcia laboratoryjne z
Teorii systemów i sygnałów
opierają się na funkcjach
zawartych w module podstawowym i module służącym do analizy sygnałów (Signal
Processing Toolbox).
2.
Zmienne

wszystkie zmienne zadeklarowane w pakiecie Matlab są
macierzami
,

pierwsze wywołanie zmiennej (przypisanie jej wartości) jest równoznaczne z jej
deklaracją
Zmienne specjalne
ans
– zmienna przyjmująca wartość ostatnio wykonywanego działania,
pi
– stała 3.14;
NaN
– wynik drukowany dla operacji matematycznie niezdefiniowanych (nie liczba)
inf
– wynik drukowany dla operacji matematycznych, których wynikiem jest
niskończoność)
Sposoby przypisywania zmiennym wartości
średnik na końcu linii powoduje, że wynik operacji nie ukaże się w kolejnym wierszu,
brak średnika powoduje wypisanie wyniku operacji w kolejnym wierszu.
przez wyliczanie elementów macierzy:
przykład
objaśnienie
a=2;
macierz jednokolumnowa i jednowierszowa, zawierająca
element o wartości 2
b=[1 2 3 4 5 6];
macierz zawierająca jeden wiersz i sześć kolumn
c=[1; 2; 3; 4; 5; 6];
macierz zwierająca sześć wierszy i jedną kolumnę
( ; - w zapisie macierzy oddziela kolumny)
d=[ 1 1 1; 2 2 2];
macierz zawierająca dwa wiersze i trzy kolumny
przez wygenerowanie elementów:
przykład
objaśnienie
A0PT18P00D53-001
Gliwice 2009-10-01
- 3/10 -
 e=1:1:10;
macierz zawierająca jeden wiersz i dziesięć kolumn,
w których elementy przyjmują wartości od 1 do 10 z
krokiem 1 wg schematu:
e=wartość pocz.: krok: wartość końcowa
Uwaga:
pominięcie kroku (np. e=1:10) powoduje
automatyczne przyjęcie wartości kroku jako 1.
f=[10:10:70;20:20:140];
macierz zawierająca dwa wiersze i siedem kolumn,
elementy wiersza pierwszego przyjmują wartości od
10 do 70 z krokiem 10, a elementy wiersza drugiego
wartości od 20 do 140 z krokiem 20
Uwaga:
liczba elementów w kolejnych wierszach macierzy
jest zawsze taka sama
przez budowanie z innych macierzy:
przykład
objaśnienie
g=[d f]
macierz zawierająca dwa wiersze i dziesięć kolumn
h=[g;e]
macierz zawierająca trzy wiersz i dziesięć kolumn
Funkcje wspomagające przypisywanie wartości zmiennym
ones(m,n)
funkcja tworzy macierz, której wszystkie elementy przyjmują wartość 1,
m
i
n
oznaczają liczbę wierszy i liczbę kolumn macierzy
a=ones(10,10);
macierz zawierająca 10 wierszy i 10 kolumn, której
wszystkie elementy przyjmują wartość 1
zeros(m,n)
funkcja tworzy macierz, której wszystkie elementy przyjmują wartość 0,
m
i
n
oznaczają liczbę wierszy i liczbę kolumn macierzy
b=zeros(1,20);
macierz zawierająca 1 wiersz i 20 kolumn, której
wszystkie elementy przyjmują wartość 0
rand(m,n)
funkcja tworzy macierz, której elementy przyjmują wartości losowe o rozkładzie
równomiernym w przedziale [0,1],
m
i
n
oznaczają liczbę wierszy i liczbę kolumn
macierzy
c=rand(2,5);
macierz zawierająca dwa wiersze i pięć kolumn, których
elementy przyjmują wartości losowe o rozkładzie
równomiernym
randn(m,n)
funkcja tworzy macierz, której elementy przyjmują wartości losowe o rozkładzie
normalnym ze średnią równą 0 i wariancją równą 1,
m
i
n
oznaczają liczbę
wierszy i liczbę kolumn macierzy
d=randn(10,20);
macierz zawierająca dziesięć wierszy i dwadzieścia
kolumn, których elementy przyjmują wartości losowe o
rozkładzie normalnym
linspace(x1,x2,k)
macierz zawierająca jeden wiersz i
k
kolumn, w którym elementy przyjmują
wartości od x1 (pierwszy element) do x2 (ostatni element) z równomiernym
skokiem
A0PT18P00D53-001
Gliwice 2009-10-01
- 4/10 -
 e=linspace(0,10,5);
macierz jednowierszowa [0 2.5 5 7.5 10]
logspace(x1,x2,k)
macierz zawierająca jeden wiersz i
k
kolumn, w którym elementy przyjmują
wartości od 10
x1
(pierwszy element) do 10
x2
(ostatni element)
f=logspace(0,4,5);
macierz jednowierszowa [1 10 100 1000 10000]
meshgrid(x1:k:x2)
macierz zawierająca siatkę punktów pozwalająca na specjalne wygenerowanie
danych dla funkcji wielu zmiennych (takie wygenerowanie danych pozwala na
nie stosowanie pętli)
[x,y]=meshgrid(-5:1:5);
dwie macierze x i y (11x11); gdzie macierz x zawiera
11 jednakowych wierszy, o elementach od –5 do 5 z
krokiem , a macierz y zawiera 11 jednakowych
kolumn o elementach od –5 do 5 z krokiem 1
Odwoływanie się do elementów macierzy
Przykład:
a=[1 2 3; 4 5 6; 7 8 9]

123
456
789





a=


a1=a(2,2)
element w drugim wierszu i w drugiej kolumnie (a1= 5)
a2=a(1:2,1:2)
odwołanie się do elementów macierzy między elementami
(1,1) i (2,2) (a2=[1 2;4 5])
a3=a(3,1:2)
odwołanie się do elementów od 1 do 2 w wierszu 3 (a3=[7 8])
a4=a(:,2)
odwołanie się do elementów we wszystkich wierszach
macierzy i w kolumnie drugiej (a4=[2; 5; 8])
a5=a(2:3,:)
odwołanie się do elementów w wierszach od 2 do 3 we
wszystkich kolumnach (a5=[4 5 6;7 8 9]
Rozmiary macierzy
Przykład:
a=[1 2 3; 4 5 6], b=[10 20 30 40];
[n,m]=size(a)
funkcja zwraca liczbę wierszy
n=2
i liczbę kolumn
m.=3
n=size(a,1)
funkcja zwraca liczbę wierszy
n=2
m=size(a,2)
funkcja zwraca liczbę kolumn
m=3
l=length(b)
funkcja zwraca długość wektora
l=4
lm=length(a)
funkcja length zwraca większy wymiar macierzy
lm=3
2.
Operatory arytmetyczne
+
dodawanie
/
dzielenie
-
odejmowanie
\
dzielenie
mnożenie
potęgowanie
*
^
3.
Działania na zmiennych
W pakiecie Matlab wszystkie zmienne są macierzami. Działania wykonywane na
zmiennych są zgodne z tradycyjnym rachunkiem macierzowym.
A0PT18P00D53-001
Gliwice 2009-10-01
- 5/10 -
  [ Pobierz całość w formacie PDF ]
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • cs-sysunia.htw.pl