MatLab_fun.doc

(75 KB) Pobierz
MATLAB

MATLAB

Rozdział 1

1.     Podstawy podstaw

A wiec… zaczynamy… J żeby wypisac cos wystarczy cos wpisac np.:

2+2

I wyskoczy nam

Ans:

              4

Haaa działa :D jestem de beast :D

Matlab posiada także zestaw znaczników czy jak to się tam nazywa… chodzi o to ze np. jak wpiszemy i albo j to mamy liczbe zespolona J np.:

(2*i)^2+2

I wyskoczy nam

Ans:

              -2

Haaa działa… :P co lepsza program ma jaja i potrafi nawet obliczyc np. Moduł J albo pokazac czesc rzeczywista

 

Z = 3+2i

Real(z) = 3   - ta komenda pokazuje czesc rzeczywistą liczby zespolonej

Imag(z) = 2   - czesc urojona

Conj(z) = 3-2i   - sprzężenie liczby zespolonej

Angle(z) = 0.5880   - argument liczby zespolonej… ( co kolwiek to znaczy…)

Abs(z) = 3.6   - nie to nie jest abs z samochodu :P to moduł J

 

 

Co lepsza matlab posiada help’a :D i lookfor’a :D jeżeli nie wiemy co znaczy jakas komenda to możemy wpisac np.:

help exp

i wyświetli nam się

EXP    Exponential.

    EXP(X) is the exponential of the elements of X, e to the X.

    For complex Z=X+i*Y, EXP(Z) = EXP(X)*(COS(Y)+i*SIN(Y)).

 

    See also expm1, log, log10, expm, expint.

 

    Overloaded functions or methods (ones with the same name in other directories)

       help fints/exp.m

       help xregcovariance/exp.m

       help sym/exp.m

 

    Reference page in Help browser

       doc exp

 

czyli gówno nam to daje… ale fajnie ze jest… to samo z lookfor

 

lookfor exp

 

WOW to jest lepsze niż wikipedia qrwa J wyświetliło mi się z 1000 linijek :D mówiąc szczerze czekam już 30 sekund a to się jeszcze wyswietla… tez nam to gowno da bo egzamin jest na kartce… ale to tak na marginesie…:P

 

2.     Macierze

Qrwa :/… maciesz tworzy się tak…

 

A = [1 2 3; 1 2 3]

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

A = [1,2,3

1,2,3]

Można używać polecen :P

A = [1+2,3+2i;1,1-exp(2)+cos(1)+pi-sin(0)-pi^2]

J

Można używać też np… qrwa slownik w wordzie mi sie na angielski zmienil do huja wacka ;/ kurwa… oo działa nie podkreśliło kurwa J dobra lecimy dalej. A wiec np.:

A =[1:5]   - co oznacza ze macierz będzie miała jeden wiersz czyli będzie wektorem od 1 do 5… A[pierwsza_liczba:ostatnia_liczba]

To samo będzie przy uzyciu

A = [1,2,3,4,5] :p

 

Można tez dodac krok a wiec A[pierwsza_liczba:krok:ostatnia_liczba]

A = [1:5:10]… otrzymamy 1 i 6… wiem ze dziwne ale tak jest… bo pierwsza liczba to 1 a krok to 5 a wiec 1 + 5 = 6… :P

Do tworzenia macierzy są gotowe komendy…:

Eye(2) - czyli maciez jednostkowa     1 0

                                                                               0 1

Zeros(2) -macierz wypełniona zerami

Ones(4) -maciez wypelniona jedynkami

rand(2,3)  - maciez losowa z przedziału od 0 do 1

randn(2,3)  - rozklad normalny o zerowej srednie i jednostkowej warjanci… jebcie to… ja to przepisałem  książki…

 

Wypisywanie macierzy…

Tworzymy macierz:

X = [1:1:5;1:2:10]

I teraz chcemy ją wypisac czyli dajemy

X(1:2,1:5)

Albo w skrucie

X(:,:) ---  i będzie to samo :p

:P czyli w skrucie… X(wiersze,kolumny)

Można też tworzyc macierz z macierzy :P

Np.

A = [1,2;3,4];

B = [1:5;1:2:10];

C = [A,B]

 

Aha… 2 sprawy :P tworzac macierz z macierzy musza zgadzac  się wszystkie kolumny i wiersze oraz… mowilem już ze jak na koncu komendy zaraz przed enterem damy „;” to nam się nie wyświetli to co się zrobilo? :p

 

Matlab pozwala nam na odczytywanie ilości wierszy i kolumn… np.:

Size(B)

Wyświetli nam

Ans:

              2              5

Size(B,1) – wyswietla ilość wierszy

Size(B,2) – ilość kolumn…

 

Można też zmienic wymiar macierzy komenda reshape(macierz,wiersze,kolumny) pod warunkiem ze zgadza się ilość pól.

 

Można też bardzo szybko uzyskac macierz sprzężona poprzez”’”

Czyli

B’

Da nam macierz sprzężoną

 

Teraz oczywiście operatory logiczne… wszystko zgodnie z intuicją czyli aby dodac albo odjąć macierze musza być takie same. Przy mnożeniu liczba wierszy pierwszej rowna liczbie kolumn drugiej chyba że… i tu wchodzi nam operator „.” Czyli kropka !! haaa matlab rox… albo sux… jeden huj…

A = [B]

A*B  - się wysypie bo nie zgadza się liczba kolumn i wierszy

A.*B element pierwszy maciezy A jest pomnozony z elementem pierwszym macierzy B… drugi z drugim… itd… to samo tyczy się operatora potęgowego… „^” tylko tu jest burdel :P

B^2 – czyli B*B – czyli się wysypie w naszym przypadku

B.^2 – czyli każdy element z B do potęgi 2…

A = [1,2;1,2]

2^A – wyjda nam jakies gowna ale chodzi o to ze dwa jest podnoszone do potegi maciezy… cos w tym stylu… wali mnie to :p

 

 

3.     Łańcuchy testowe

Czyli:

A = ‘test’

i da nam to zmienna typu string o zawartości ‘test’ za to abs(A) da nam wektor liczbowy slowa test :P abs rule….

I to by było na tyle :p

4.     Skrypty

A wiec primo pierwsze… nigdy nie dawajcie nazwy skryptowi np. if…. ja stworzyłem plik if.m i przez qrwa prawie 1h się wkurwialem czemu mi nie dziala :/ a potem zmieniłem nazwe i dziala :P o co chodzilo… wczytywanie polega na wywoływaniu nazwy pliku bez rozszerzenia… a jak wpiszemy zwykle if… po prostu wyskoczy nam ze brak argumentu… L.

 

A wiec skrypt tworzymy poprzez File->New->M-file, a wywołyjemy plik poprzez podanie jego nazwy bez rozszerzenia… no to marudzic nie ma co przejdźmy do konkretów…

 

(daruje sobie opisywanie poszczególnych funkcji… po prostu funkcja i składnia…)

 

IF…

              If warunek

                                          Zawartość

              Elseif warunek

                                          Zawartosc

              Else

                                          Zawartosc

              End

 

 

              While

              While warunek

                            Zawartosc

              End

 

              For

              For warunek_poczatkowy:warunek_koncowy

                            Zawartosc
              end

 

              For warunek_poczatkowy:krok:warunek_koncowy

                            Zawartosc

              end

 

5.     Funkcje

Tutaj zaczyna się już trochę komplikacji ale jeszcze idzie to ogarnąć J

Generalnie funkcja ma formułę:

Function [zmienne_wyjściowe]=nazwa_funkcji(zmienne_wejsciowe)

Zawartość;

Zawartość;

 

UWAGA!!! Nazwa funkcji musi mieć taka sama nazwe jak plik w którym się znajduje…

 

Wywoływanie funkcji wyglada tak:

Nazwa_funkcji(argumenty)

 

Tylko ze w tym wypadku jak np. będziemy mieli 2 zmienne wyjściowe to funkcja zwróci nam wartość tylko jednej, tej pierwszej, dlatego lepiej stosowac

[x,y,z…]=nazwa_funkcji(argumenty)

Wtedy funkcja zwraca tyle wartości ile chcemy… oczywiście o ile tyle wartości jest zadeklarowanych…

 

 

6.Dalsze działania na macierzach

No to lecimy z komendami…

Inv(macierz kwadratowa) -  tworzy macierz odwrotną

Pinv(macierz) – macierz pseudoodwrotna

Dobra darujmy se… ja to i tak mam z kursu z neta a wiec nie będę wypisywal… mam notatki… kolegi… to z nich potem omówie dokładniej funkcje które koleś podawał na wykładach…

 

7.Wielomiany

Tutaj oczywiście jest kilka fajnych funkcji… a wiec zaczynamy:

Polyval(a,b) – przy zalozeniu ze „a” to jakis wektor to ta funkcja z tego wektora tworzy wielomian natomiast „b” jest to jakis punkt. Calosc podaje nam wartość funkcji „a” w punkcje „b”.

 

Roots(a) – Oblicza pierwiastki wielomianu (wektora) „a”

 

Polyder(a) – Oblicza wsuplczynniki pochodnej wielomianu „a”

 

Poly([miejsca_zerowe]) – czyli podajemy miejsca zerowe i otrzymujemy współczynniki wielomianu monicznego.

 

Conv([jeden_wielomian],[drugi_wielomian]) – podaje współczynniki iloczynu dwóch podanych wektorów.

 

Deconv([jeden_wielomian],[drugi_wielomian]) – podaje współczynniki iloczynu tych wielomianow i reszte z dzielenia.

6.     Grafika

Podstawowa funckaj to plot(x,y)… jej 3 parametry to:

Kolor:

              Z angielskiego… c – jasnoniebieski, k- czarny, m- purpurowy… a reszta normalnie…

Rodzaje linij:

                            „-„ ciągła

                            „- - „ przerywana

                            „:” wielopunktowa

                            „.-„ kropkowana

                            „+””x” – krzyżyki

                            „.” Wypełnione kółko

                            „o” nie wypełnione kółko

                            „*” gwiazdki

 

Hold on – blokuje wykres

Hold off – odblokowuje wykres

 

Plot może być wieloargumentowa czyli

Plot(x1,y1,’g-‘,x2,y2,’r-‘,…)

 

Można tez podzielic okno z wykresami dzieki komendzie subplot

Subplot(wiersze,kolumny,miejsce)

 

Warto nadawac wykresom nazwy oraz opisywac osie, służy do tego polecenie

Xlable(‘xxx’)

Ylable(‘xxx’)

Title(‘xxx’)

                           

 

 

 

             

Rozdział 2

Uzupełnienie z wykładów

1.     Qrwa znowu mi się słownik popierdlił ;/

            Ooo już działa…

2.     macierze i po...

Zgłoś jeśli naruszono regulamin