Matlab operacje na macierzach, skrypty


MATLAB  operacje na macierzach, skrypty
Operacje na macierzach mo emy podzieli na dwie grupy
" operacje macierzowe  wykonywane na całych macierzach zgodnie z regułami algebry,
" operacje tablicowe  wykonywane na poszczególnych elementach macierzy.
operacja macierzowa tablicowa uwagi
dodawanie + +
odejmowanie  
mno enie * .*
pot gowanie ^ .^
dzielenie prawostronne / ./ A./B => A(i,j)/B(i,j)
dzielenie lewostronne \ .\ A.\B => B(i,j)/A(i,j)
Przykłady operacji
a11 a12 b11 b12
A = , B =
a21 a22 b21 b22
Dodawanie i odejmowanie (tablicowe i macierzowe tak samo):
a11 + b11 a12 + b12 a11 + b11 a12 + b12
A + B = A + B =
a21 + b21 a22 + b22 a21 + b21 a22 + b22
Mno enie (tablicowe): Mno enie (macierzowe):
a11 *b11 a12 *b12 a11 *b11 + a12 *b21 a11 *b12 + a12 *b22
A.* B = A* B =
a21 *b21 a22 *b22 a21 *b11 + a22 *b21 a21 *b12 + a22 *b22
Pot gowanie (tablicowe): Pot gowanie (macierzowe):
k k
a11 a12
A A

A.^k = A^ k = A* A* *...*

k k
a21 a22
k
Dzielenie prawostronne (tablicowe): Dzielenie lewostronne (tablicowe):
a11 / b11 a12 / b12 b11 / a11 b12 / a12
A./ B = A.\ B = B./ A =
a21 / b21 a22 / b22 b21 / a21 b22 / a22
Dzielenie prawostronne (macierzowe): Dzielenie lewostronne (macierzowe):
A/ B = A* B-1 A \ B = A-1 * B
Operacje tablicowe s wymuszane, je li jeden z argumentów jest skalarem
" A+5  do ka dego elementu macierzy zostanie dodana warto 5
" B/3  ka dy element macierzy zostanie podzielony przez 3
Inne funkcje i operatory
`  transpozycja macierzy (zamiana wierszy na kolumny)
w przypadku macierzy o warto ciach zespolonych:
1
`  transpozycja ze sprz eniem
.`  sama transpozycja
det(A)  wyznacznik macierzy
inv(A)  macierz odwrotna do macierzy A
size(A)  wy wietla rozmiar macierzy A (liczb wierszy i kolumn)
max(A)  zwraca najwi kszy element wektora A
min(A)  zwraca najmniejszy element wektora A
sum(A)  zwraca sum elementów wektora A
prod(A)  zwraca iloczyn elementów wektora A
mean(A)  zwraca redni arytmetyczn elementów wektora A
Je li w powy szych funkcjach A jest macierz dwuwymiarow , to funkcje te zwracaj wyniki
odnosz ce si do poszczególnych jej kolumn.
Przykład  układ równa :
3x1 + 2x2 - x3 = 5
x1 + x2 + x3 =11
2x1 - x2 + 4x3 = 8
>> A=[3 2  1; 1 1 1; 2  1 4]
>> B=[5;11;8]
>> x=A\B  równowa ne inv(A)*B
Skrypty
Skrypt jest to zwykły plik tekstowy zawieraj cy polecenia i instrukcje MATLAB-a, maj cy
rozszerzenie .m. Skrypty mo na tworzy za pomoc dowolnego edytora tekstowego, zapisuj cego
niesformatowane pliki tekstowe.
Oprócz polece i instrukcji z MATLAB-a w skrypcie mo na umieszcza komentarze. Na
komentarz składaj si linie tekstu zaczynaj ce si od znaku %. Dodatkowo je li s to pierwsze
linie w skrypcie, to stanowi pomoc wy wietlan na ekranie po wywołaniu polecenia:
>>help skrypt
gdzie słowo skrypt jest nazw skryptu (bez rozszerzenia .m)
Skrypt uruchamia si podaj c jego nazw (bez rozszerzenia) w wierszu polece MATLAB-a.
Skrypt musi znajdowa si w katalogu bie cym lub w katalogu udost pnionym poleceniem path.
Katalog bie cy jest to katalog, w którym zapisywane s pliki tworzone podczas pracy z pakietem:
dir, ls  wy wietl enie plików w bie cym lub podanym katalogu
(mo na u ywa znaków globalnych: *, ?),
cd katalog  zmiana bie cego katalogu,
pwd  wy wietlenie pełnej cie ki okre laj cej bie cy katalog,
path  wy wietlenie listy cie ek,
path(path,kat1)  dodanie do listy cie ek katalogu o podanej nazwie (kat1).
Przykład:
Zawarto skryptu o nazwie macierz.m jest nast puj ca:
% Skrypt generuje losowo macierz o rozmiarze 3x3
% nast pnie liczy jej wyznacznik i macierz odwrotn
clc;
A=rand(3,3);
2
disp(A);
% obliczenie wyznacznika
w=det(A);
disp( Wyznacznik macierzy to :  );
disp(w);
% obliczenie macierzy odwrotnej
B=inv(A);
disp( Macierz odwrotna do A: );
disp(B);
Polecenie
>> help macierz
spowoduje wy wietlenie informacji o skrypcie:
Skrypt generuje losowo macierz o rozmiarze 3x3
nast pnie liczy jej wyznacznik i macierz odwrotn
natomiast wpisanie:
>> macierz
spowoduje wykonanie skryptu.
Wczytywanie danych do skryptu
Podczas wykonywania skryptu mo na wczytywa do niego dane z klawiatury wykorzystuj c
funkcj input:
x=input(napis) - w tej postaci wy wietlana jest zawarto ła cucha znaków napis, a nast pnie
Matlab czeka na wprowadzenie liczby, która przypisywana jest zmiennej x,
x=input(napis, s ) - działa j.w., ale słu y do wczytania ła cucha znaków.
Przykład:
% Skrypt generuje macierz prostokatna
% o rozmiarze wczytanym z klawiatury
n=input( Podaj liczbe wierszy:  );
m=input( Podaj liczbe kolumn:  );
A=rand(n,m);
disp(A);
3


Wyszukiwarka

Podobne podstrony:
34 Pliki Operacje na plikach w Pascalu
operacje na plikach tekstowych
wycena operacji na rachunku
operacje na ramkach danych solucja
Operacje na histogramie
670 Przekwalifikowanie leasingu operacyjnego na finansowy
operacje na plikach
Kurs CorelDRAW 12 Część 4 Zaawansowane operacje na obiektach
operacje na rekordach zadania
operacje na rekordach
Asembler Operacje na Plikach
Matematyjka Dzialania na macierzach
Operacje na plikach multimedialnych
4 Operacje na tablicach (prezentacja)
Lab Operacje na plikach
zbiory i operacje na zbiorach

więcej podobnych podstron