Przeglądaj wersję html pliku:

Matlab 2


Instytut Robotyki i In»ynierii Oprogramowania Wy»sza Szkoªa In»ynierska w Zielonej Górze

Laboratorium Systemów Przetwarzania Numerycznego i Symbolicznego

Podstawy obsªugi pakietu MATLAB
Przed przyst¡pieniem do ¢wiczenia nale»y zapozna¢ si¦ z rozdziaªem pt.

zwi¡zane

MATLAB i oprogramowanie z nim
Wydawnictwa

w pracy M. Szymkat:

Komputerowe wspomaganie w projektowaniu ukªadów regulacji ,

Naukowo-Techniczne, Warszawa, 1993 (gªównie chodzi o strony 4356, ale wskazane jest przeczytanie caªego rozdziaªu). Program ¢wiczenia obejmuje nast¦puj¡ce zadania: 1. Zapozna¢ si¦ z niektórymi mo»liwo±ciami programu poprzez wprowadzenie polecenia 2. Wyznaczy¢ warto±¢ sumy

demo.

1−

1 1 1 1 1 1 1 1 1 1 1 + − + − + − + − + − 2 3 4 5 6 7 8 9 10 11 12

Jak zapisa¢ w linii polece« tak dªug¡ formuª¦? Czym ró»ni¡ si¦ rezultaty operacji

81\1900 ?

1900/81

oraz

3. Omówi¢ ró»nice mi¦dzy poleceniami cych do obliczania pierwiastka ( sinus to po angielsku sine). Co

ang.

help oraz lookfor . Na tej podstawie okre±li¢ nazwy funkcji sªu»¡root), logarytmu ( ang. logarithm) oraz funkcji arc sin (polskie uzyskuje si¦ poprzez polecenie help cedit ? help
jest

Bardzo po»ytecznym poleceniem przy przegl¡daniu pomocy wy±wietlanych przez polecenie

more.

Prosz¦ zapozna¢ si¦ z jego skªadni¡ i przetestowa¢ dziaªanie.

4. Jak w MATLABie deniuje si¦ zmienne? W jaki sposób nadaje si¦ im warto±ci? Jak wypisa¢ na ekranie monitora aktualn¡ warto±¢ danej zmiennej? Po przypisaniu zmiennym wyznaczy¢ (a) (b)

x, y

i

z

wybranych warto±ci

a i b,

je»eli
3

a=

|x − 1| −

|y|,

b = x arc tg z + e−(x+3) ; (y − x)2 |y − x|3 + ; 2 3 b= 1 + cos(y − 2) ; x4 + sin2 z

y−1 a= 3+e , |y − tg z|

b = 1 + |y − x| +

(c)

a = (1 + y) a=

x + y/(x2 + 4) , e + 1/(x2 + 4)
−x−2

(d)

2 cos (x − π/6) , 1/2 + sin2 y

b = 1 + tg2 z ; 2 y z + x2 /4 , 1 b = cos2 arc tg z .

(e)

a = ln (y −

|x|) x −

Czy MATLAB rozró»nia du»e i maªe litery?

1

5. (Kilka uzupeªnie«) Jak¡ rol¦ peªni w MATLABie ±rednik na ko«cu wprowadzanego polecenia? Prosz¦ sprawdzi¢ to na przykªadzie polece«

>> p = 3.5
oraz

>> p = 3.5;
Co naprawd¦ reprezentuje sob¡ napis

ans

wypisywany np. po wprowadzeniu polecenia

>> 4 + 3
Co powoduj¡ polecenia 6. Zdeniowa¢ macierz

who

oraz

whos?
1 A= 4 7   2 3 5 6  8 9
Jak w takim razie

oraz wektor wierszowy

r=

10

doprowadzi¢ do tego, aby macierz

11 12 . Co spowoduje polecenie A = [A; r] ? A miaªa posta¢   1 2 3 13  4 5 6 14   A=  7 8 9 15  10 11 12 16

Na zako«czenie prosz¦ jeszcze zinterpretowa¢ rezultaty polece«

>> size(A)
oraz

>> length(r)
Czy istnieje mo»liwo±¢ deniowania tablic trójwymiarowych? 7. Dane s¡ macierze

1  4 A=  0 1
Obliczy¢ (a) (b) (c) (d) (e)



0 2 1 3 −1 3 1 2

 −1 0  , 8  2

2  4 B=  5 9



−4 0 0 4

 1 3 4 5   0 3  1 8

A+B A−B 3A + 4B AB A3 + A2 − 2A

2

8. Dane s¡ tablice

1 A= 2 3



 2 1 , 2

1 B= 2 1



−1 1 1

 0 0 , −1

C=

3

1

5

,

3 D= 2 1



1 1 2

 5 4  4

Obliczy¢, o ile jest to mo»liwe, warto±ci nast¦puj¡cych wyra»e«:

B + D,

3A,

−2C,

BA,

DB,

2A + B − C,

CD − DC,

2B − D,

D2 ,

B 2 + D2

9. Dane s¡ tablice

−1 A= 6 2
Sprawdzi¢, »e zachodzi równo±¢



 1 4 , 3

B=

1 2

1 2

,

C=

1 0

0 1

A(B + C) = AB + AC . B
o elementach zespolonych:

10. Iloma sposobami mo»na wprowadzi¢ tablic¦

B=
Zmiennej

1 + 5i 2 + 6i 3 + 7i 4 + 8i

z

przypisa¢ warto±¢ elementu znajduj¡cego si¦ w pierwszym wierszu i drugiej kolumnie

rozwa»anej tablicy. 11. Znale¹¢ odwrotno±ci poni»szych macierzy (o ile istniej¡). Sprawdzi¢ otrzymane rezultaty.



1  1 3

1 3 2

 3 2 , 1 x



0  1 0

0 0 1

 1 0 , 0



1  0 0

2 1 0 √ 3

 3 3 , 1



1  2 1

1 3 1

 2 2 , 3



3  1 2

2 −1 3

 2 1  1

12. Wprowdzi¢ wektor

postaci

x=
Co spowoduje polecenie

−1.3

4 (1 + 2 + 3) 5

x(5) = abs(x(1)) ?
A
i

13. Zapisa¢ warto±ci wszystkich u»ytych do tej pory zmiennych na dysku. Ponadto warto±¢ tablic zapisa¢ w pliku

temp.mat . Zako«czy¢ prac¦ z programem. Okre±li¢ format plików, w których zapisano

x

przed chwil¡ warto±ci zmiennych (binarny czy tekstowy). Ponownie uruchomi¢ program, a nast¦pnie odtworzy¢ warto±ci zmiennych, które zapisano w plikach. Jak zmieni¢ format danych zapisywanych w omawiany sposób? Czym ró»ni¡ si¦ polecenia

what

i

dir?

Czy polecenie

type

ma jaki± zwi¡zek z poleceniem DOSa o

tej samej nazwie? Bez opuszczania MATLABa przej±¢ do katalogu gªównego, a nast¦pnie wy±wietli¢ na ekranie zawarto±¢ plików

cd).
plik

autoexec.bat i cong.sys

(do zmiany aktualnego katalogu sªu»y polecenie

Powróci¢ do poprzedniego katalogu i skopiowa¢ plik

matlab.mat

do pliku

matlab.old

(tak»e bez

opuszczania programu!). Sprawdzi¢, czy operacja zako«czyªa si¦ oczekiwanym rezultatem. Jak skasowa¢

matlab.old ?

14. Do czego sªu»y polecenie MATLABa. 15. Wprowadzi¢ wektor

diary ? Wydaje si¦ ono do±¢ przydatne w pocz¡tkowym etapie nauki polece«

x

za pomoc¡ polecenia

>> x = [4\3 1.2345e-6]

3

Sprawdzi¢, w jaki sposób wypisywana jest jego warto±¢ po wprowadzeniu ka»dego z poni»szych polece«: (a) (b) (c) (d) (e) (f ) (g)

format format format format format format format

short short e long long e bank hex
+

Prosz¦ zastanowi¢ si¦ nad u»yteczno±ci¡ ostatniego z tych polece«. Jeszcze jednym poleceniem tego typu jest na ekranie przed i po jego wprowdzeniu. 16. (Operacja transpozycji) Prosz¦ wprowadzi¢ polecenia

format compact .

Porówna¢ sposób wy±wietlania informacji

>> A = [1 2 3; 4 5 6; 7 8 0] >> B = A'
Wywnioskowa¢ st¡d jak¡ rol¦ peªni w MATLABie apostrof

'.

Jaki wi¦c b¦dzie rezultat polecenia

>> x = [-1 0 2]'
17. Rozwi¡za¢ poni»sze ukªady równa«. Sprawdzi¢ poprawno±¢ otrzymanych rezultatów. W jaki sposób mo»na stwierdzi¢ czy ukªad ma jednoznaczne rozwi¡zanie, nie posiada rozwi¡zania lub ma niesko«czenie wiele rozwi¡za«? (

Wskazówka:

przypomnie¢ sobie twierdzenie Kroneckera-Capelliego.)

(a)

(b)

(c)

(d)

(e)

(f )

(g)

18. W MATLABIE rozwi¡zanie ukªadu równa« liniowych eliminacji Gaussa ( x

x + 3y + 4z = 0 4x + 2y − 2z = 0  2x + y + z = 8   x + 2y − 4z = 1 x + 4y − 2z = 2  x−y+z = 1   2x − 4y + 3z − 4w = 2   −x + 3y − 2z + w = 4 2x − y + z + 2w = 3    x + 2y − z + w = 1   x + y + 3z 2 = 1 x + y − z2 = 3  2x + 3y = 1  x+y+z = 6  2x + y + 6z = 22  3x + 6y + z = 18   x+y+z = 1 x + 2y + z = 4  x+y+z = 2  x+y+z = 1  2x + 7y − 3z = 7  3x + 3y + 3z = 3

 

Ax = b

= A \ b ),

mo»na otrzyma¢ albo stosuj¡c metod¦

albo korzystaj¡c z zale»no±ci

x = A−1 b (x = inv(A) * b ).

Który

z wymienionych sposobów wymaga mniejszego nakªadu oblicze«? Odpowied¹ sprawdzi¢ na ukªadach równa« z poprzedniego zadania poprzez wykorzystaniu funkcji

flops .

4

 
statystyka