Zaprezentowano koncepcję badania sygnałów akustycznych stanów przedawaryjnych silnika synchronicznego



Pobieranie 0,49 Mb.
Strona1/6
Data14.02.2018
Rozmiar0,49 Mb.
  1   2   3   4   5   6


Podstawy Informatyki


Laboratorium 3

1. Cel ćwiczenia

Celem ćwiczenia jest zapoznanie się z tworzeniem macierzy w programie MATLAB. W ćwiczeniu wprowadzono opis podstawowych operacji macierzowych takich jak transpozycja, odwracanie itp. Dodatkowym celem jest nabycie praktycznych umiejętności posługiwania się funkcjami i operatorami macierzowymi języka MATLAB.


2. Wprowadzenie
2.1. Tworzenie macierzy

W języku MATLAB istnieje wiele sposobów utworzenia wektorów (macierzy). Poniżej zestawiono trzy spośród nich. Inne sposoby zostaną wprowadzone w opisie realizacji ćwiczenia. Macierze w języku MATLAB tworzy się m.in.:

• poprzez wyliczenie elementów,

• poprzez zastosowanie funkcji generującej,

• z innych macierzy (wektorów).

Aby utworzyć zmienną wektorową przez wyliczenie, elementy wektora należy zamknąć wewnątrz nawiasów kwadratowych, np.: a = [1 2 3 4 5]. Utworzony wektor jest wektorem wierszowym ponieważ odstęp (spacja) rozdziela kolumny. Polecenie b = [1; 2; 3; 4; 5] tworzy natomiast wektor kolumnowy, gdyż do rozdzielania wierszy używa się średnika (;). Zestawiając ze sobą dwa powyższe sposoby można utworzyć macierz: a = [1 2 3; 4 5 6; 7 8 9]. Powyższe polecenie tworzy macierz zdefiniowaną wyrażeniem (4).


(4)
Do tworzenia macierzy i wektorów w programie MATLAB można wykorzystać wiele wbudowanych funkcji generujących. W tab. 1 zestawiono niektóre z nich.
Tab. 1. Wybrane funkcje środowiska MATLAB do generowania macierzy


Nazwa funkcji

Działanie

zeros(m,n)

Generuje macierz o wymiarze m×n wypełnioną zerami

ones

Generuje macierz o wymiarze m×n wypełnioną jedynkami

randn(m,n)

Generuje macierz o wymiarze m×n wypełnioną wartościami pseudolosowymi

Innym sposobem tworzenia wektorów i macierzy jest wykorzystanie zmiennych znajdujących się już w przestrzeni roboczej środowiska MATLAB. Ten sposób tworzenia jest szczególnie przydatny gdy zachodzi potrzeba wykorzystania uzyskanych wcześniej wyników w kolejnym etapie obliczeń. Ten sposób tworzenia zmiennych został objaśniony w części praktycznej.



2.2. Dostęp do elementów macierzy

Operacje na macierzach wymagają dostępu do ich elementów. Dostęp ten uzyskuje się poprzez indeksy. Indeks stanowi numer wiersza i/lub kolumny umieszczony wewnątrz nawiasów zwykłych. Dla przykładu, aby odwołać się do elementu leżącego na przecięciu drugiego wiersza i trzeciej kolumny macierzy opisanej wzorem (4) należy wprowadzić polecenie: >>a(2,3). Oprócz prostego indeksowania zmiennych w języku MATLAB można odwoływać się do części macierzy lub wektorów. Umożliwia to tzw. notacja dwukropkowa. Dla przykładu, jeżeli w obliczeniach niezbędne są dane zawarte w drugiej kolumnie macierzy — wzór (4) — dane te można uzyskać wprowadzając polecenie >>a(:,2). Dwukropek można odczytać jako „wszystkie wiersze”, natomiast stojąca po przecinku liczba 2 oznacza, że wiersze te wybiera się z drugiej kolumny. Po wprowadzeniu powyższego polecenia do zmiennej ans zostanie przypisany wektor postaci:


(5)

2.3. Operacje tablicowe i funkcje wspomagające przetwarzanie macierzy

W poprzednim ćwiczeniu wprowadzono symbole podstawowych operatorów (+), (), (*), (/) i (^). W przypadku, gdy argumentami operacji są macierze (lub wektory), operatory te działają macierzowo. Na przykład operator (*), umożliwia mnożenie macierzy w sensie Cauchy’ego (iloczyn macierzowy). Aby wymusić działanie operatora na poszczególnych elementach macierzy lub wektora należy operator poprzedzić kropką. Taki operator nazywany jest operatorem tablicowym. W języku MATLAB istnieje wiele funkcji wspomagających przetwarzanie macierzy.


3. Program ćwiczenia
1. Przetwarzanie macierzy o następującej postaci:

z wykorzystaniem notacji dwukropkowej. W celu realizacji zadania wykonać poniższe polecenia.

(a) Wprowadzić:

>>A=[2 4 1; 6 7 2; 3 5 9]

Polecenie tworzy w przestrzeni roboczej macierz zadaną powyższym równaniem. Tak, jak to opisano w poprzednich punktach, poszczególne wiersze oddzielone są średnikami a kolumny odstępami. Utworzona macierz ma rozmiar 3 × 3.

(b) Wprowadzić:

>>x1=A(1,:)

Polecenie tworzy wektor wierszowy x1 przypisując do niego pierwszy wiersz macierzy A. Dwukropek występujący w miejscu numeru kolumny, oznacza wybranie wszystkich kolumn pierwszego wiersza (czyli cały pierwszy wiersz).

(c) Wprowadzić:

>>y3=A(:,3)

Polecenie tworzy wektor kolumnowy y3 przypisując do niego trzecią kolumnę macierzy A. Dwukropek występujący w miejscu numeru wiersza oznacza wybranie wszystkich wierszy trzeciej kolumny (czyli całą trzecią kolumnę). Wprowadzić:

>>x23=A(2:3,:)

Polecenie tworzy macierz x23 o rozmiarze 2 × 3. W celu wybrania drugiego i trzeciego wiersza zamiast indeksu wybrano zakres za pomocą dwukropka. 2 : 3 w miejscu numeru wiersza oznacza wiersze od drugiego do trzeciego. Dwukropek w miejscu indeksu kolumny oznacza wszystkie kolumny. Z macierzy A wybierane są wszystkie kolumny drugiego i trzeciego wiersza.

(d) Wprowadzić:

>>y12=A(:,1:2)

Polecenie tworzy macierz y12 o rozmiarze 3 × 2. W celu wybrania elementów macierzy A zastosowano notację dwukropkową, analogicznie jak w poprzednim podpunkcie. Porównać wynik działania polecenia z wynikiem uzyskanym w poprzednim podpunkcie.

(e) Wprowadzić:

>>y13=A(:,[1 3])

Polecenie tworzy macierz y13 o rozmiarze 3 × 2. Macierz ta zbudowana jest z elementów wszystkich wierszy oraz pierwszej i trzeciej kolumny macierzy A.

(f) Wprowadzić:

>>sk=sum(A)

Polecenie oblicza sumy elementów leżących w kolumnach (sumuje po kolumnach) macierzy A i umieszcza je w wektorze wierszowym sk o rozmiarze 1 ×3. Przeliczyć ręcznie sumy elementów w wierszach macierzy A. Porównać wyniki z uzyskanymi w MATLAB’ie.

(g) Wprowadzić:

>>sw=sum(A’)

Polecenie oblicza sumy elementów leżących w wierszach (sumuje po wierszach) macierzy A i umieszcza je w wektorze kolumnowym sw o rozmiarze 3 × 1. Przeliczyć ręcznie sumy elementów w kolumnach macierzy A. Porównać wyniki z uzyskanymi w MATLAB’ie.

(h) Wprowadzić

inv(A)


Odwraca macierz.

(i) Wyczyścić zawartość okna poleceń programu MATLAB poleceniem:



>>clc

  1   2   3   4   5   6


©operacji.org 2017
wyślij wiadomość

    Strona główna