Práce s vektory a maticemi

10
Práce s vektory a maticemi Matice = základní objekt v Matlabu Zápis matic/vektorů a) výčtem A=[1 2;3 4] ... matice b1=[1 2 3 4 5] ... vektor R22=[4 8 9;22 3 0] ... matice matici zapisujeme po řádcích,prvky řádku jsou odděleny mezerami nebo čárkou

description

Práce s vektory a maticemi. Matice = základní objekt v Matlabu Zápis matic/vektorů a) výčtem A= [1 2;3 4] ... matice b1=[1 2 3 4 5] ... vektor R22=[4 8 9;22 3 0] ... matice matici z apisujeme po řá dc í ch ,prvky řádku jsou odděleny mezerami nebo čárkou. b) intervalem - PowerPoint PPT Presentation

Transcript of Práce s vektory a maticemi

Page 1: Práce s vektory a maticemi

Práce s vektory a maticemi

• Matice = základní objekt v Matlabu

Zápis matic/vektorů

a) výčtemA=[1 2;3 4] ... matice

b1=[1 2 3 4 5] ... vektor

R22=[4 8 9;22 3 0] ... matice

matici zapisujeme po řádcích,prvky řádku jsou odděleny mezerami nebo čárkou

Page 2: Práce s vektory a maticemi

b) intervalem

osat=0:2*pi/20:2*pi

Tvar intervalu:

startovací prvek:krok:konečný prvek

startovací prvek:konečný prvek

! Pozor: U definic dlouhých intervalů používat středník (;)

na konci definice intervalu

Příklady:a1=0:5 a1=0:2

a2=6:11 a2=3:5

Page 3: Práce s vektory a maticemi

Základní operace s maticemi a maticové funkce

• Aritmetické operátory+ (binární) - (binární)+ (unární) - (unární)* maticové násobení.* násobení polí (stejnolehlých prvků)^ maticové mocnění.^ mocnění polí/ pravé maticové dělení\ levé maticové dělení./ pravé dělení polí.\ levé dělení polí

Page 4: Práce s vektory a maticemi

• Maticové operaceC=A+B součet matic (stejnolehlé prvky)D=A-B rozdíl matic (stejnolehlé prvky)E=A*B klasické násobení maticF=A.*B násobení stejnolehlých prvkůG=A/B dělení matic zprava = A*B-1=A*inv(B)H=A./B podíl stejnolehlých prvků A a BI=A\B dělení matic zleva =inv(A)*BJ= A.\B podíl stejnolehlých prvků

• Příklad: A1=[ 1 2 3;4 5 6;11 12 130]• Maticové funkce

B=inv(A1) inverze čtercové maticeC=A1´ transpozice

Page 5: Práce s vektory a maticemi

det(A1) determinat čtvercové maticeE=sum(A1) -matice: vektor,prvky součtem sloupců

-vektor: číslo=součet prvků vektoruF=sign(A1) vrací matici stejného řádu s prvky:

1 je-li prvek > 0-1 je-li prvek < 00 je-li prvek = 0

G=max(A1) -matice: vektor s nejv. prvky sloupců-vektor: číslo=největší prvek

vektoruH=size(A1) vektor 2 čísel s počtem řádků a sloupcůD=eig(A1) vektor vlastních čísel maticeI=diag(A1) vektor prvků na hlavní diagonáleJ=isempty(A1)0 – matice je neprázdná

1 – matice je prázdná

Page 6: Práce s vektory a maticemi

K=triu(A1) vrací horní trojúhelník.matici (upper)K=tril(A1) vrací dolní trojúhelník.matici (lower)ones(3,2) matici samých „1“ udaných rozměrůeye(3) jednotkovou matici („1“na diagonále)rot90(A1) rotace matice o 90o

mean(A1) matice: vektor prvků, které jsou aritm.průměry prvků

sloupcůvektor: číslo=aritm.průměr prvků

Funkce lze vrstvit tam, kde to má smysl , např.: maximum=max(max(A1)) ... největší prvek matice A suma=sum(sum(A1)) ... výpočet součtu prvků mat.

Page 7: Práce s vektory a maticemi

Zvláštní typy matic

• ones matice ze samých 1Př.: ones(2,4)

• eye jednotková čtvercová maticePř.: eye(3)

• magic součet každého řádku,každého sloupce a hlavní diag. je stejný

• rand generování náh.čísel s rovnoměrným rozložením

Př.: M1=rand(2) pro M1 rozměrů 2x2V1=rand(1,4) pro V1 rozměrů 1x4

• randn generování pseudonáh.čísel s normálním rozl.Př.: Y=randn(1,3)

Page 8: Práce s vektory a maticemi

Indexování matic

Index = číslo udávající polohu prvku v matici či vektoruPříklady :v=[16 5 9 4 2 11 7 14] % definice vektoru výčtemk=v(5) % k = obsah 5 prvku vektoru vv1=v([1 5]) % definuje nový vektor výběrem z původníhov2=v([3:7]) % definuje nový vektor výběrem z původníhov3=v([5:7,1:3]) % definuje nový vektor výběrem z původníhov(end) % poslední prvekv(5:end) % pátý až poslední prvekv(5:end-1) % pátý až předposlední prvekv4=v(1:2:end) % všechny liché prvkyv(:) % všechny prvky ve formě sloupcového

vektoru

Page 9: Práce s vektory a maticemi

v(end:-1:1) % převrácení pořadí vektoru

v([2 3 4])=[10 15 20] % přepsání prvků vektoru

v([2 3])=30 % přepsání prvků vektoru stejným číslem

A=magic(4) % definice matice funkcí magic

A([3 4 1 2] , :) % přehození řádků

A(: , 4:-1:1) % přehození sloupců

A( 4 , : ) =[] % výmaz 4 řádku

A % výpis matice

A(: , :) % výpis matice (jako A)

A(:) % sloupcový vektor ze sloupců matice

A>13 % které prvky jsou >13

Page 10: Práce s vektory a maticemi

Příklad: řešení soustavy lineárních algebraických rovnic

• metody přímé (nalezení přesného řešení), rychlejší ( např Gaussova eliminační metoda). Musíme znát koeficienty matice soustavy a vektor pravých strana soustava musí být regulární (nenulový determinant) Jsou rychlejší a častěji používané.

• nepřímé – iterační – výsledkem je pouze aproximace řešení a je jí dosaženo po konečném počtu iterací

Řešte přímou metodou následující soustavu rovnic:2,4795x1+1,6235x2+4,6231x3 = 0,0647 Ax = b

1,4752x1+0,9589x2+1,3253x3 = 1,0475

2,6951x1+2,8965x2+1,4794x3 = -0,6789

Použijte k výpočtu vzorec: x = A-1*b = A\b = inv(A)*b