MATLAB, rozdzial1

background image

Wykład 1: Wprowadzenie – pierwsze kroki w Matlabie

http://zss.ie.pwr.wroc.pl/studenci

Podstawowa literatura

1. Bogumiła Mrozek, Zbigniew Mrozek, „Matlab - uniwersalne środowisko do obliczeń

naukowo-technicznych”, Wyd. PLJ, Warszawa 1996.

2. Jerzy Brzózka, Lech Dorobczyński, "Programowanie w Matlab", MIKOM, Warszawa

1998.

3. Stanisław Osowki, Andrzej Toboła, „Analiza i projektowanie obwodów z

zastosowaniem języków MATLAB i PCNAP”, Oficyna Wyd. Polit. Warszawskiej,
Warszawa 1995.

Najkrótsza charakterystyka Matlaba

MATLAB jest interakcyjnym pakietem programów do obliczeń numerycznych,

ukierunkowanym na zastosowania inżynierskie. MATLAB jest skrótem od MATrix
LABoratory. MATLAB został napisany w języku C przez firmę MathWorks.
Dostępne są wersje MATLAB-a pracujące w systemach operacyjnych: DOS, UNIX,
XWindows, Windows

Podstawowe operacje macierzowe zostały bezpośrednio zaimplementowane w języku C

jako funkcje podstawowe wbudowane do Matlaba i są dostępne dla użytkownika po ich
wywołaniu. Oznacza to mi.in., że duża litera i ta sama mała litera w nazwie funkcji są różnymi
nazwami.

Większość działań i operacji dostępnych jest w postaci m._plików funkcyjnych.
Podstawowe m._pliki znajdują się w katalogu głównym. Pliki wyspecjalizowane

umieszczone są w podkatalogach tematycznych (toolbox).

Inżynier elektryk może być zainteresowany m.in. następującymi toolboxami: Control

System Toolbox – teoria sterowania, Optimization Toolbox – optymalizacja , Signal Processing
Toolbox – przetwarzanie sygnałów, SIMULINK - graficzne modelowanie i symulacja.

Uwaga

Wykłady z programowania w Matlabie są dostosowane do wymagań wersji 4.2.

Jedynie w niektórych przypadkach – tam gdzie to okazało się być niezbędne – do
uruchomienia programów wymagana jest co najmniej wersja 5.3.

Wszystkie programy w wersji 4.2 mogą być uruchomione bez przeszkód w wersjach

nowszych.

10 pierwszych kroków w Matlabie

Krok 1-szy

Każdy użytkownik Matlaba powinien pracować w sowim własnym katalogu. W tym

celu na początku zajęć należy założyć na dysku twardym swój unikalny katalog, np.

c:\nazim.iwe

gdzie naz oznacza 3 pierwsze litery nazwiska, imi – 3 pierwsze litery imienia., iwe – symbol
nazwy przedmiotu.

1

background image

Wykład 1: Wprowadzenie – pierwsze kroki w Matlabie

http://zss.ie.pwr.wroc.pl/studenci

Aby uniknąć błędnej interpretacji nazwy katalogu przez starsze wersje Matlaba, nazwa

powinna mieć 8 znaków ASCII i 3 znaki rozszerzenia ASCII. Nie wolno używać polskich
liter!

Krok 2-gi

Kliknąć na ikonie Matlaba. Po uruchomieniu Matlaba pojawi się okno poleceń

/Command Window/ wraz ze znakiem zachęty:
>>

Oznacza to, że użytkownik może wprowadzić polecenia oddzielone przecinkami lub

średnikami. Po napisaniu polecenia należy nacisnąć klawisz Enter.

Krok 3-ci

Pracę należy rozpocząć od skierowania Matlaba do własnego katalogu

cd c:\nazimi.iwe

Gdy tekst nie mieści się w jednej linii można przejść do następnej wpisując 3 kropki ...

przed naciśnięciem klawisza Enter , następnie kontynuować tekst polecenia w kolejnej linii.
Na przykład polecenie
function [a,b,c]=test(x,y,z,A,B,C) <ENTER>
jest równoważne poleceniu
function[a,b,c]= ... <ENTER>

test(x,y,z,A,B,C) <ENTER>

Należy tu także zwrócić uwagę, że duże litery są innymi nazwami aniżeli te same małe litery.

Krok 4-ty

Z podstawową obsługą Matlaba najszybciej można się zapoznać uruchamiając

program demonstracyjny Matlaba
>> demo
Uruchamia ono zestawy programów pokazujących podstawowe operacje Matlaba.

Krok 5-ty

Dodatkowe informacje o danej wersji Matlaba można uzyskać poprzez wykonanie

takich poleceń jak :

whatsnew , info , ver , intro , help help

Krok 6-ty

Możliwości grafiki w MATLAB-ie można wstępnie ocenić, wykonując próbny

rysunek wielomianu dwu zmiennych, za pomocą polecenia:
>> peaks

Krok 7-my

Szybkość działania własnego komputera w środowisku Matlaba można poznać

wypisując polecenie
>> bench
Polecenie testujące bench bada oddzielnie czasy wykonywania typowych algorytmów. Może
służyć do oceny, czy posiadany komputer jest odpowiednio skonfigurowany z punktu
widzenia szybkości obliczeń i przetwarzania grafiki w Matlabie.

2

background image

Wykład 1: Wprowadzenie – pierwsze kroki w Matlabie

http://zss.ie.pwr.wroc.pl/studenci

Krok 8-my

Okno poleceń Matlaba można wyczyścić poleceniem

>> clc
Polecenia MATLAB-a są wprowadzane w trybie tekstowym. Jednakże pisanie z klawiatury
długich sekwencji poleceń lub komplikowanych wyrażeń matematycznych jest uciążliwe.
Dlatego polecenia grupuje się w plikach zewnętrznych /zapisywanych na dysku/ z
rozszerzeniem *.m. Pliki z rozszerzeniem *.m mają znaczenie specjalne i nazywa się je m -
plikami .

M-pliki można tworzyć korzystając z dowolnego edytora ASCII. W żadnym

przypadku nie może to być edytor wprowadzający widzialne lub niewidzialne znaki sterujące
(Word, Acrobat, itp).

W przypadku, gdy MATLAB współpracuje z MS Windows można tworzyć i

modyfikować m-pliki korzystając z opcji FILE głównego menu okna poleceń.

Tworząc m-plik, z menu opcji FILE należy wybrać New / M-file. W rezultacie

otworzy się okno edycyjne, w którym można zapisać tekst m-pliku. Aby zapamiętać ten tekst,
trzeba z menu wybrać komendę Save as .. . Możliwe jest wtedy zapisanie nowopowstałego
pliku i zapamiętanie go na dysku .

W przypadku, gdy m-pliki już istnieją można je wczytać za pomocą opcji Open M -

file ... . Powoduje to otwarcie okna zawierającego wykaz plików z rozszerzeniem *.m .

Krok 9-ty

Okno poleceń posiada nagłówek MATLAB Command Window i zawiera rozwijane

menu.

Operacje na plikach dostępne w rozwijanym menu

File – rozwinięcie menu

New / M-file - otwiera okno edycyjne dla utworzenia nowego m-pliku
New / Figure - otwiera okno graficzne
New / Model - otwiera okno Untitled dla tworzenia nowego modelu SIMULINK-a
Open M-file ... -otwiera istniejący plik celem jego edycji
Run M-file ... - uruchamia m-plik
Print - wykonuje wydruk m-pliku (parametry ustawia się w Printer Setup .. )
Exit MATLAB - ( quit ) – koniec sesji Matlaba

Edycja

Edit - umożliwia kopiowanie wybranych informacji do bufora. Współpracę z buforem
realizuje się za pomocą opcji: Cut, Copy, Paste, Clear Session

Opcje okna poleceń
Options
lub Preferences- pozwala na wybór edytora oraz parametrów związanych z

edycją poleceń i odpowiedzi pakietu. Są to ustawienia formatu wartości numerycznych,
koloru i wielkości czcionki znaków na ekranie.

Lista otwartych okien
Windows
- wyświetla wszystkie otwarte okna w postaci rozwiniętego menu .

Pomoc

3

background image

Wykład 1: Wprowadzenie – pierwsze kroki w Matlabie

http://zss.ie.pwr.wroc.pl/studenci

Help - zapewnia szybką informację o wybranych elementach składowych Matlaba.

Objaśnienia zgrupowane są w zestawach tematycznych , dostępny jest także spis alfabetyczny
poleceń i funkcji.

Krok 10-ty

Polecenie
help nazwa

wypisuje opis polecenia, funkcji, operacji, itp., np.

help svd

powoduje wypisanie najważniejszych informacji dotyczących dekompozycji SVD (definicje,
ograniczenia, sposoby wywołania).

Zawartość plików tekstowych może być wyświetlona za pomocą polecenia
type nazwa_pliku_tekstowego

Powoduje ono wyświetlenie zawartości pliku. Jeżeli tekst przekracza stronę ekranową, to
można włączyć stronicowanie podając polecenie

more on

Kolejne stronice tekstu można wyświetlać naciskając klawisz spacji, a przerwanie
wyświetlania - naciskając klawisz "Q". Odwołanie stronicowanie następuje przez

more off
Polecenie
which nazwa_m-pliku

lub

which nazwa_m-funkcji

powoduje wyświetlenie ścieżki dostępu do m-pliku lub m-funkcji (nazwy podaje się bez
rozszerzenia *.m).

Nazwy zmiennych i ilość wolnej pamięci jest udostępniana za pomocą funkcji

standardowej

who
Wybrane zmienne można usunąć z pamięci za pomocą polecenia
clear nazwy_usuwanych_zmiennych

np. clear c A

Najważniejsze polecenia plikowe i systemowe

Poniżej podane najczęściej stosowane polecenia systemowe w oknie poleceń Matlaba
pwd

- zwraca pełną ścieżkę określającą aktualny katalog

P = path

- zwraca nazwy katalogów, do których ma dostęp MATLAB

dir (lub ls)

- nazwy plików w aktualnym katalogu

dir nazwa katalogu - wyświetla nazwy plików w katalogu o podanej nazwie
cd

- przejście do danego katalogu

cd \

- przejście z dowolnego poziomu do głównego katalogu

cd ..

- przejście o jeden poziom wyżej w drzewie katalogowym

del

- usuwa plik o podanej nazwie

home

- ustawia kursor w lewym górnym rogu okna poleceń

!tree

- wyświetla strukturę drzewa katalogowego w katalogu

4

background image

Wykład 1: Wprowadzenie – pierwsze kroki w Matlabie

http://zss.ie.pwr.wroc.pl/studenci

Zapamiętywanie historii całej sesji obliczeniowej

Pojawienie się polecenia
diary

powoduje otwarcie pliku diary, do którego dopisywane są wszystkie operacje
alfanumeryczne wykonywane przez program. Nie dotyczy to wyników graficznych, które
muszą być zapamiętane w inny sposób.

Użycie polecenia diary z nazwą pliku spowoduje otwarcie pliku o podanej nazwie

różnej od diary i dopisywanie do niego wyników operacji matematycznych.

Wyłączenie zapamiętywania historii sesji
Polecenie
diary off

powoduje przerwanie zapisywania.

Zawartość aktualnego katalogu

Zawartość katalogu uzyskuje się za pomocą polecenia
dir ścieżka_i_znaki_masek(*oraz?)

lub

is ścieżka_i_znaki_masek(*oraz?)

np.

dir c:\nazimi.iwe

lub

is c:\nazimi.iwe

Wywołanie poleceń DOS

W starszych wersjach Matlaba można korzystać z poleceń DOS. Jeśli polecenia

zostaną poprzedzone wykrzyknikiem

!

to będą traktowane jako polecenia systemu DOS.
np.

!dos – przejście do sesji DOS

Powrót z DOS do okna poleceń Matlaba nastąpi po komendzie exit lub zamknięciu okna
DOS.

Podstawowe operacje macierzowe

Początkujący użytkownicy Matlab wykonują często obliczenia macierzowe

korzystając z okna poleceń Matlaba. Poniżej podano podstawowe operacje macierzowe,

A = [ 1 2 3; 1 0 1; 1 1 1];

- tworzenie macierzy

lub

A = [ 1 2 3

5

background image

Wykład 1: Wprowadzenie – pierwsze kroki w Matlabie

http://zss.ie.pwr.wroc.pl/studenci

1 0 1
1 1 1
]

Do macierzy o dowolnych wymiarach można zawsze dodać skalar, np.
A=A+10
daje w wyniku
A =
11 12 13
11 10 11
11 11 11

B = A^(-1)

- odwracanie macierzy

lub

A^(-1)

- odwracanie macierzy

C = A + B

- dodawanie macierzy

C = A – B

- odejmowanie macierzy

Przy mnożeniu liczba kolumn macierzy A musi być równa liczbie wierszy macierzy B

C = A*B

- mnożenie klasyczne macierzy, np.

A =[
11 12 13
11 10 11
11 11 11
]
B=[1 2; 3 4; 5 6]

C=A*B
daje w wyniku
C =
112 148
96 128
99 132

Mnożenie macierzy przez skalar

C = A*2

- każdy element macierzy A jest mnożony przez 2, np.

A = [
11 12 13
11 10 11
11 11 11
]
C=A*2
daje
C =
22 24 26
22 20 22

6

background image

Wykład 1: Wprowadzenie – pierwsze kroki w Matlabie

http://zss.ie.pwr.wroc.pl/studenci

22 22 22

A`

- transpozycja macierzy

C = A/B

- prawostronne dzielenie macierzy

np.

x = A/B

- odpowiada rozwiązaniu równania macierzowego xB = A

C = A\B

- lewostronne dzielenie macierzy

np.

x = A\B

- odpowiada rozwiązaniu równania macierzowego Ax = B

Jeżeli w wyrażeniu nie wskazano zmiennej, w której ma być zapamiętany wynik, to

wynik zostanie umieszczony w standardowej zmiennej o nazwie

ans

disp

- wysyła zawartość macierzy lub łańcucha do okna poleceń Matlaba.

Uwaga!

Wartości będą wysyłane na ekran, jeśli polecenie nie zostanie zakończone

średnikiem.

[n,m] = size(A)

- zwraca liczbę wierszy m oraz kolumn n macierzy A

det(A)

- wyznacznik macierzy

cond(A)

- wskaźnik uwarunkowania macierzy. Im większa wartość

cond(A) tym gorsze uwarunkowanie

rcond(A)

- odwrotność wskaźnika uwarunkowania macierzy. Im mniejsza

wartość rcond(A) tym gorsze uwarunkowanie, aż do wartości zerowej

rank(A)

- rząd macierzy

length(x)

- długość wektora x

Liczby zespolone są zapisywane za pomocą symbolu i lub j, jednak nieco odmiennie od
zapisu matematycznego
sqrt(-1)

ans =
0 + 1.0000i

z= 3+4i

z =
3.0000 + 4.0000i

7

background image

Wykład 1: Wprowadzenie – pierwsze kroki w Matlabie

http://zss.ie.pwr.wroc.pl/studenci

z=3+4j

z =
3.0000 + 4.0000i

Użytkownik może sam zdefiniować zmienną j w przestrzeni roboczej Matlaba i

zapisywać liczby zespolone z wykorzystaniem mnożenia
j=sqrt(-1);
z=3+j*4;
disp(z);

Przy wyznaczaniu wartości własnych macierzy otrzymujemy wynik często w postaci

liczb zespolonych

[X, D] = eig(A)

- wyznaczanie wartości własnych macierzy A.

Diagonalna macierz D zawiera wartości własne

λ

będące rozwiązaniem równania

charakterystycznego

det(A -

λ

I) = 0

Kwadratowa macierz X zawiera wektory własne zgodnie z równaniem charakterystycznym

AX = X D

[U, S, V] = svd(A) - analiza wartości singularnych.

Dla dowolnej macierzy rzeczywistej przeprowadzana jest dekompozycja wg relacji

A = U S V`

Diagonalna macierz S zawiera wartości singularne uporządkowane według malejących
wartości. U i V są macierzami ortogonalnymi.

Uwaga! Transpozycja macierzy o elementach zespolnych oznacza jednocześnie

sprzeżenie elementów macierzy.

Podstawowe funkcje matematyczne MATLABA

Matlab umożliwia wykonywania wielu obliczeń korzystających z podstawowych

funkcji matematycznych

abs

– wartość absolutna / moduł liczby zespolonej/

angle – argument liczby zespolonej
atan

– arcus tangens

conj

- sprzężenie liczby zespolnej

cos

– cosinus

exp

– exponent

imag – część urojona liczby zespolonej
inf

- nieskończoność /wynik dzielenia przez 0/

8

background image

Wykład 1: Wprowadzenie – pierwsze kroki w Matlabie

http://zss.ie.pwr.wroc.pl/studenci

log

– logarytm naturalny

max - największa wartość
min

- najmniejsza wartość

nan

- nieliczba /dzielenie 0 przez 0 lub inna niezdefiniowana matematycznie

operacja/

pi

- liczba

π

real

- część rzeczywista liczby zespolonej

sin

- sinus

sqrt – pierwiastek kwadratowy
sum

- suma

Zadania do samodzielnego rozwiązania

Zadanie 1

Przy przechodzeniu z układu fazowego A, B, C do układu składowych symetrycznych

0, 1, 2 wykorzystuje się definicję operatora obrotu

a = e

j2 3

π

/

= cos(120

o

) + j sin(120

o

) =

0,5 + j

3

2

)

Sprawdzić następujące własności operatora a

a

2

= (e

j2 3

π

/

)

2

= cos(240

o

) + jsin(240

o

) = cos(

120

o

) + jsin(

120

o

) =

0,5

j

3

2

1 + a + a

2

= 0

a

3

= (e

j2 3

π

/

)

3

= cos(360

o

) + jsin(360

o

) = 1 + j0 = 1

a* = a

2

a

4

= a

(a

2

)* = a

Zadanie 2

Macierz przekształcenia układu współrzędnych fazowych A, B, C na składowe

symetryczne 0, 1, 2 ma następującą postać

S

=

1

3

1

1

1

1
1

2

2

a

a

a

a

Obliczyć wyznacznik macierzy S, a następnie wyznaczyć macierz odwrotną S

-1

. W oparciu o

otrzymane wyniki sprawdzić, czy otrzymana macierz ma następującą postać

9

background image

Wykład 1: Wprowadzenie – pierwsze kroki w Matlabie

http://zss.ie.pwr.wroc.pl/studenci

S

=

1

2

2

1

1

1

1
1

a

a

a

a

Zadanie 3

Wzory transformacji prądów oraz napięć z układu A, B, C do układu 0, 1, 2 są następujące

I

012

= S I

ABC

U

012

= S U

ABC

Wzory transformacji prądów oraz napięć z układu 0, 1, 2 do układu A, B, C są następujące

I

ABC

= S

-1

I

012

U

ABC

= S

-1

U

012

Z pomiarów otrzymano następujące wartości napięć i prądów

U

A

= 0 V, U

B

= 400e

-j2

π

/3

V, U

C

= 400e

+j2

π

/3

V

I

A

= 100e

-j

π

/2

V A, I

B

= 0 A, I

C

= 0 A

Należy wyznaczyć wartości napięć i prądów w układzie 0,1,2.

Zadanie 4

Moc trójfazową w stanie niesymetrycznego obciążenia można obliczyć w układzie A,

B, C z następującego wzoru

P + jQ =

U I

U I

U I

A A

B B

C C

ABC

T

ABC

*

*

*

*

+

+

=

U

I

lub w układzie 0, 1, 2 ze wzoru

P + jQ = 3

U I

012 012

0 0

1 1

2 2

3

3

3

T

U I

U I

U I

*

*

*

*

=

+

+

Należy sprawdzić tożsamość wzorów na moc 3-fazową dla wartości napięć i prądów z
zadania 2 i 3.

10


Document Outline


Wyszukiwarka

Podobne podstrony:
MATLAB rozdzial3
MATLAB, rozdzial2
MATLAB rozdzial1
MATLAB, rozdzial6
MATLAB, rozdzial3
MATLAB rozdzial2
MATLAB rozdzial6
MATLAB rozdzial4
MATLAB rozdzial5 id 768819 Nieznany
Matlab cw1 2 zaoczni
Podstawy zarządzania wykład rozdział 05
cz 1, Matlab moj
Image Processing with Matlab 33
2 Realizacja pracy licencjackiej rozdziałmetodologiczny (1)id 19659 ppt
Ekonomia rozdzial III
rozdzielczosc
kurs html rozdział II
MATLAB graf(1)
Podstawy zarządzania wykład rozdział 14

więcej podobnych podstron