MATLAB LEKCE 7
ZÁKLADNÍ OPERACE S MATICEMI C=A+B SOUČET MATIC, JSOU SČÍTÁNY STEJNOLEHLÉ PRVKY MATIC A+B D=A-B ROZDÍL MATIC, STEJNOLEHLÉ PRVKY MATIC A a B JSOU ODEČTENY E=A*B SOUČIN MATIC, KLASICKÉ NÁSOBENÍ MATIC A a B F=A.*B JSOU NÁSOBENY STEJNOLEHLÉ PRVKY MATIC A a B G=A/B DĚLENÍ MATIC ZPRAVA, PLATÍ TAKÉ A/B=A*inv(B) H=A./B PODÍL STEJNOLEHLÝCH PRVKŮ MATIC A a B I=A\B DĚLENÍ MATIC ZLEVA, PLATÍ TAKÉ A\B=inv(A)*B J=A.\B PODÍL STEJNOLEHLÝCH PRVKŮ MATIC B a A
PŘÍKLADY SEČTĚTE MATICE : A=[1 2;3 4]; a B=[3 4;0 4]; C=A+B ROZDÍL MATIC : A=[1 2;3 4]; a B=[3 4;0 4]; D=A-B NÁSOBENÍ MATIC : A=[1 2;3 4]; a B=[3 4;0 4]; E=A*B
PŘÍKLADY NÁSOBENÍSTEJNOLEHLÝCH PRVKŮ : A=[1 2;3 4]; a B=[3 4;0 4]; F=A.*B DĚLENÍ MATIC : A=[1 2;3 4]; a B=[3 4;0 4]; G=A/B PODÍL STEJNOLEHLÝCH PRVKŮ : A=[1 2;3 4]; a B=[3 4;0 4]; H=A./B DĚLENÍ MATIC ZLEVA : A=[1 2;3 4]; a B=[3 4;0 4]; I=A\B
ZÁKLADNÍ MATICOVÉ FUNKCE POČET PŘÍKAZŮ A POVELŮ JE POMĚRNĚ ROZSÁHLÝ. SEZNAM JE DOSTUPNÝ POMOCÍ help matfun. B=inv(A1) INVERZE ČTVERCOVÉ MATICE PŘÍKLAD – A1=[1 2 3;4 5 6;11 12 130] C=A1’ TRANSPOZICE MATICE PŘÍKLAD – A1=[1 2 3;4 5 6;11 12 130] det(A1) INVERZE ČTVERCOVÉ MATICE PŘÍKLAD – A1=[1 2 3;4 5 6;11 12 130]
det(A1) DETERMINANT ČTVERCOVÉ MATICE PŘÍKLAD – A1=[1 2 3;4 5 6;11 12 130] Maximum=max(max(A1)) V PROMĚNNÉ Maximum PAK BUDE NEJVĚTŠÍ PRVEK CELÉ MATICE A1 PŘÍKLAD – A1=[1 2 3;4 5 6;11 12 130] Suma=sum(sum(A1)) VÝPOČET SOUČTU PRVKŮ CELÉ MATICE A1 PŘÍKLAD – A1=[1 2 3;4 5 6;11 12 130]
MATICE SAMÝCH NUL ZVLÁŠTNÍ TYPY MATIC K FUNKCÍM, KTERÉ SE POUŽÍVAJÍ POMĚRNĚ ČASTO, PATŘÍ TAKÉ VYTVOŘENÍ MATICE ZE SAMÝCH NUL. Matnul=zeros(3,4) Veknul=zeros(5,1) ZVLÁŠTNÍ TYPY MATIC ones - MATICE ZE SAMÝCH JEDNIČEK NAPŘ. ones (2,4) eye - JEDNOTKOVÁ MATICE NAPŘ. eye(3) Magic - TZV.MAGICKÝ ČTVEREC, JDE O ČTVERCOVOU MATICI, KTERÁ MÁ TU VLASTNOST, ŽE SOUČET KAŽDÉHO ŘÁDKU, KAŽDÉHO SLOUPCE A HLAVNÍ DIAGONÁLY JE STEJNÝ, NAPŘ. MAGIC(4).
MATICE NÁHODNÝCH ČÍSEL GENEROVÁNÍ MATIC PSEUDONÁHODNÝCH ČÍSEL S ROVNOMĚRNÝM ROZLOŽENÍM Prvky budou náhodně rozloženy v intervalu <0,1> M1=rand(2) V1=rand(1,4) V PRAXI ČASTO POTŘEBUJEME GENEROVAT ČÍSLA ČI VEKTORY TAK, ABY GENEROVANÉ PRVKY LEŽELY V NÁMI ZVOLENÉM INTERVALU . A=10;B=50 X=A+(B-A)*randn(1,4) GENEROVÁNÍ MATIC PSEUDONÁHODNÝCH ČÍSEL S NORMÁLNÍM ROZLOŽENÍM PRŮBĚH HUSTOTY PRAVDĚPODOBNOSTI TOHOTO ROZDĚLENÍ SE NAZÝVÁ GAUSSOVA KŘIVKA Y=randn(1,3) generují se čísla se střední hodnotou rovnou nule, rozptylem a směrodatnou odchylkou rovnými jedné.
INDEXOVÁNÍ MATIC INDEXY ROZUMÍME ČÍSLA, UDÁVAJÍCÍ POLOHU (SOUŘADNICE) PRVKU V MATICI ČI VEKTORU. INDEXOVÁNÍ JE DALŠÍ ZE SILNÝCH ZBRANÍ SYSTÉMU MATLAB. UMOŽŇUJE OPRAVDU ŠIROKOU A EFEKTIVNÍ PRÁCI S MATICEMI, RESP. JEJÍMI PRVKY. PRÁCI S INDEXY POUŽIJEME ZEJMÉNA TEHDY, KDYŽ POTŘEBUJEME : ZJISTIT HODNOTU LIBOVOLNÉHO PRVKU MATICE NEBO JEJÍ ČÁSTI (ŘÁDKY, SLOUPCE ATD…) PROVÁDĚT PŘESUNY PRVKŮ V RÁMCI MATICE (PŘEHOZENÍ ŘÁDKŮ, SLOUPCŮ ATD..) PŘESUNOUT ČÁST DANÉ MATICE DO JINÉ VYTVOŘIT MATICI STEJNÉHO ROZMĚRU ATP.
PŘÍKLAD V=[ 16 5 9 4 2 11 7 14 ] V(3) - HODNOTA PRVKU NA TŘETÍM POŘADOVÉM MÍSTĚ VEKTORU V V1=V([1 5 6]) - DEFINUJE NOVÝ VEKTOR V1, JENŽ BUDE OBSAHOVAT PRVKY ZE TŘETÍHO, PÁTÉHO A ŠESTÉHO POŘADOVÉHO MÍSTA PŮVODNÍHO VEKTORU V V2=V([3:7]) - NOVÝ VEKTOR V2 BUDE OBSAHOVAT PRVKY PŮVODNÍHO VEKTORU V S INDEXY 3 AŽ 7 V3=V([5:7 1:3]) - VEKTOR V3 BUDE OBSAHOVAT PRVKY PŮVODNÍHO VEKTORU V S INDEXY 5 AŽ 7 A 1 AŽ 3 V(end) - VÝPIS POSLEDNÍHO PRVKU VEKTORU V V(5:end) - VÝPIS PRVKŮ VEKTORU V OD POŘADOVÉHO ČÍSLA 5 DO KONCE V(5:end-1) - VÝPIS PRVKŮ VEKTORU V OD POŘADOVÉHO ČÍSLA 5 DO PŘEDPOSLEDNÍHO PRVKU V4=V(1:2:end) - VÝPIS JEN LICHÝCH PRVKŮ VEKTORU V (PRVNÍ A POTÉ KAŽDÝ DRUHÝ)
V(:) - VÝPIS VŠECH PRVKŮ VEKTORU V VE FORMĚ SLOUPCOVÉHO VEKTORU ( PRO ŘÁDKOVÝ POUŽIT ZNAK APOSTROFU V(:) V(end:-1:1) - VÝPIS VEKTORU V V INVERZNÍM POŘADÍ (OD KONCE NA ZAČÁTEK) VYZKOUŠEJTE V([2 3 4]) = [10 15 20] ZMĚNA HODNOT PRVKŮ VEKTORU V NA POŘADOVÉM MÍSTĚ 2,3 A 4 V([2 3])=30 NA POŘADOVÉM MÍSTĚ 2 A 3 VEKTORU V BUDE ČÍSLO 30
ZÁKLADY PRÁCE S MNOHOČLENY VYTVOŘENÍ MNOHOČLENU JE V MATLABU SNADNOU ZÁLEŽITOSTÍ . STAČÍ ZAPSAT ŘÁDKOVÝ VEKTOR, NAPŘ. Poly=[1 20 100 ]. VYTVOŘILI JSTE TÍM MNOHOČLEN Y=X^2 + 20X + 100. VÝPOČET KOŘENŮ KORENY= roots(Poly)
ŘEŠENÍ SOUSTAVY LINEÁRNÍCH ALGEBRAICKÝCH ROVNIC 2,4795x1 + 1,6235x2 + 4,6231x3 = 0,0647 1,4752x1 + 0,9589x2 – 1,3253x3 = 1,0475 2,6951x1 + 2,8965x2 – 1,4794x3 = -0,6789 ŘEŠENÍ A=[2.4759 1.6253 4.6231;1.4725 0.9589 -1.3253;2.6951 2.8965 -1.4794] B=[0.0647 1.0475 -0.6789] X=A\B X= 1.8416 -2.0724 -0.2437
CVIČENÍ ŘEŠTE SOUSTAVU LINEÁRNÍCH ROVNIC : -x1 + x2 + 2x3 = 2 3x1 – x2 + x3 = 6 -x1 + 3x2 + 4x3 = 4