Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

MATLAB. MATLAB Systém pro provádění numerických výpočtů a vizualizaci Systém pro provádění numerických výpočtů a vizualizaci Umožňuje řešit úlohy mnohem.

Podobné prezentace


Prezentace na téma: "MATLAB. MATLAB Systém pro provádění numerických výpočtů a vizualizaci Systém pro provádění numerických výpočtů a vizualizaci Umožňuje řešit úlohy mnohem."— Transkript prezentace:

1 MATLAB

2 MATLAB Systém pro provádění numerických výpočtů a vizualizaci Systém pro provádění numerických výpočtů a vizualizaci Umožňuje řešit úlohy mnohem pohodlněji než klasické Umožňuje řešit úlohy mnohem pohodlněji než klasické programovací jazyky (C++, VB, Delphi, Fortran) programovací jazyky (C++, VB, Delphi, Fortran) Obsahuje mnoho funkcí Obsahuje mnoho funkcí Toolbox – přídavný modul obsahující další funkce Toolbox – přídavný modul obsahující další funkce FEMLAB nadstavba Matlabu pro řešení diferenciálních rovnic FEMLAB nadstavba Matlabu pro řešení diferenciálních rovnic MATLAB = MATicová + LABoratoř MATLAB = MATicová + LABoratoř Základní proměnná je matice (dvoudimenzionální pole) Základní proměnná je matice (dvoudimenzionální pole)

3 MATLAB : proměnné Vytvoření matice: napsáním z klávesnice napsáním z klávesnice vytvořením pomocí funkce vytvořením pomocí funkce načtení ze souboru vytvořeného mimo Matlab načtení ze souboru vytvořeného mimo Matlab Vytvoření napsáním z klávesnice: prvky jsou v hranatých závorkách prvky jsou v hranatých závorkách oddělovač prvků je mezera nebo čárka oddělovač prvků je mezera nebo čárka oddělovač řádků je středník nebo Enter oddělovač řádků je středník nebo Enter ans … proměnná při vynechání jména (answer) ans … proměnná při vynechání jména (answer)

4 MATLAB : proměnné M = [3 –4 1 M = [3 –4 1 –2 0 5 –2 0 5 –3 2 4] –3 2 4]nebo M = [3 –4 1; –2 0 5; –3 2 4] M = [3 –4 1; –2 0 5; –3 2 4] jedno číslo: matice o jednom řádku a sloupci jedno číslo: matice o jednom řádku a sloupci řádkový vektor: matice o jednom řádku řádkový vektor: matice o jednom řádku sloupcový vektor: matice o jednom sloupci sloupcový vektor: matice o jednom sloupci A = 5 A = 5 A = 5; % nevypíše se A = 5; % nevypíše se V = [3 –2 1] % řádkový vektor V = [3 –2 1] % řádkový vektor W = [–4; 1; 5] % sloupcový vektor W = [–4; 1; 5] % sloupcový vektor

5 MATLAB : proměnné Zobrazení vytvořených matic: napsáním jména se zobrazí obsah matice napsáním jména se zobrazí obsah matice who vypíše seznam proměnných who vypíše seznam proměnných whos vypíše navíc podrobné informace whos vypíše navíc podrobné informace Mazání matic: clear M smaže matici M clear M smaže matici M clear all smaže všechno clear all smaže všechno

6 MATLAB : proměnné Vytvoření pomocí funkce (příklady): M = rand(m,n) % náhodná matice M = rand(m,n) % náhodná matice H = hilb(m) % Hilbertova matice H = hilb(m) % Hilbertova matice C = magic(n) % magický čtverec C = magic(n) % magický čtverec Vektory s konstantním krokem: vek = d:k:h vek = d:k:h d … dolní mez h … horní mez k … krok Příklady: V1 = 1:2:7 V1 = V1 = V2 = 1:7 V2 = 1:7 V2 = V2 =

7 MATLAB : proměnné Načtení ze souboru: soubor musí být ve formátu ASCII (např. Poznámký blok) soubor musí být ve formátu ASCII (např. Poznámký blok) jeho obsahem musí být matice jeho obsahem musí být matice použije se příkaz čtení použije se příkaz čtení load jmeno.prp -ascii load jmeno.prp -ascii Uložení do souboru: save save uloží všechno do matlab.mat uloží všechno do matlab.mat příkaz load všechno načte po restartu Matlabu příkaz load všechno načte po restartu Matlabu

8 MATLAB : operace Maticové operace: + sčítání + sčítání – odčítání – odčítání * násobení * násobení ^ umocňování ^ umocňování ’ transponování ’ transponování \ levé dělení \ levé dělení / pravé dělení / pravé dělení Operace musí být proveditelná Operace musí být proveditelná Maticové násobení není komutativní, proto dvě dělení Maticové násobení není komutativní, proto dvě dělení x=A\b je řešení Ax=b x=A\b je řešení Ax=b x=b/A je řešení xA=b x=b/A je řešení xA=b Operace s polem:.* násobení.* násobení.^ umocňování.^ umocňování.\ levé dělení.\ levé dělení./ pravé dělení./ pravé dělení

9 MATLAB : operace Několik příkladů: A = [3 –4 1; –2 0 5; –3 2 4] A = [3 –4 1; –2 0 5; –3 2 4] B = [2 0 1; –1 1 –4; 3 –2 1] B = [2 0 1; –1 1 –4; 3 –2 1] C = A+B C = A+B C = C = 13 – – – – –6 –7 4 –6 –7 C = C = 5 –4 2 5 –4 2 –3 1 1 – C = A*B C = A*B

10 MATLAB : operace Ax=b Ax=b A -1 Ax=A -1 b A -1 Ax=A -1 b Ix=A -1 b Ix=A -1 b x=A -1 b x=A -1 b yM=c yM=c yMM -1 =cM -1 yMM -1 =cM -1 yI=cM -1 yI=cM -1 y=cM -1 y=cM -1 x=A\b y=c/M Dělení:

11 MATLAB : operace Využití operace s polem: vykonávají se po prvcích vykonávají se po prvcích tabulky a grafy funkcí tabulky a grafy funkcí Příklad: S=[ ].* [ ] S=[ ].* [ ] S= S= D=[ ].^2 … totéž … … totéž …

12 MATLAB : operace Tabulka a graf: x=0:0.01:1; % x-ové souřadnice y=x.*sin(1./x); % y-ové souřadnice tabulka = [x’ y’] % tabulka plot(x,y)

13 MATLAB : indexy Prvek v i-tém řádku a j-tém sloupci: M(i,j) M(2,3)=3 Vektorizování operací: méně cyklů = rychlejší výpočty M(2,[1,3])=[1 3]M(2,[1,2,3])=[1 -1 3] M(2,1:2:3)=[1 3] M(2,1:3)=[1 -1 3] M(2,:)=[1 -1 3]

14 MATLAB : speciální matice eye … jednotková matice zeros … nulová matice ones … matice jedniček diag … vybere nebo vytvoří diagonálu triu … vybere horní trojúhelníkovou část tril … vybere dolní trojúhelníkovou část rand … náhodná matice magic … magický čtverec hilb … Hilbertova matice toeplitz Skládání matic: A=ones(3) B=[A, zeros(3,2); zeros(2,3), eye(2)]

15 MATLAB : matem.funkce sin cos tan asin acos atan exp log … přirozený logaritmus rem … zbytek po celočíselném dělení abs … absolutní hodnota sqrt … odmocnina sign … znaménko round … zaokrouhlování floor … zaokrouhlování ceil … zaokrouhlování Nápověda: help, help plot

16 MATLAB : vektorové funkce max … maximální složka vektoru min … minimální složka vektoru sum … součet složek vektoru prod … součin složek vektoru sort … uspořádání složek vektoru any … existenční kvantifikátor all … obecný kvantifikátor vykonávají se po sloupcích

17 MATLAB : cyklus for x=[]; for i = 1:n x=[x,i^2] end Vznikne vektor x=[ …] Stejný vektor v opačném pořadí: x=[]; for i = n:-1:1, x=[x,i^2], end Cyklus s daným počtem opakování: for i=A příkazy end příkazy se vykonávají pro každý prvek matice A

18 MATLAB : cyklus while while podmínka příkazy end Zobrazí nejmenší přirozené číslo n takové, že 2 n a. Cyklus řízený podmínkou: Příklad: n=0; while 2^n < a n=n+1 end n

19 MATLAB : podmíněný příkaz if Rozhodování je (skoro) stejné jako ve VB: if podmínka1 příkazy1; příkazy1; elseif podmínka2 příkazy2; příkazy2;… else příkazyX; příkazyX; end lze vypustit lze vypustit Relační operátory:, =, ==, ~= Logické operátory: & (a současně), | (nebo), ~ (negace)

20 MATLAB : programy Program = M-soubor: soubor s příponou m skript … posloupnost příkazů v externím souboru funkce … obsahuje hlavičku vstupní a výstupní proměnné function [vystup]=jmeno(vstup) příkazy příkazy

21 MATLAB : programy Příklad: funkce počítající funkční hodnoty f(x) = (x 2 -2x+2)sinx function y=fce(x) y=(x.^2-2*x+2).*sin(x); Uloží se do souboru: fce.m Spuštění: y=fce(-1:0.1:2)

22 MATLAB : programy Příklad: skript, který nakreslí graf funkce dvou proměnných (vektorizovaný postup bez cyklů) x=-2:0.1:2; % x-ové souřadnice y=x; % y-ové souřadnice n=length(x); % počet souřadnic X=diag(x)*ones(n); % x-ové v matici X Y=ones(n)*diag(y); % y-ové v matici Y Z=exp(-X.^2-Y.^2); % funkční hodnoty mesh(x,y,Z) % graf [X,Y]=meshgrid(-2:0.1:2); % generuje stejné X a Y

23 MATLAB : alternativy Volně šiřitelné alternativy Matlabu: OCTAVE … SCILAB … Programy pro symbolické počítání: komerční … Toolbox, Maple, Derive, Mathematica MAXIMA …

24 MATLAB : alternativy Dal ší s tudijní zdroje: Zaplatílek, Doňar: Matlab pro začátečníky. Zaplatílek, Doňar: Matlab tvorba uživatelských aplikací. Kermit Sigmon: Matlab Primer (1993 volné vydání)


Stáhnout ppt "MATLAB. MATLAB Systém pro provádění numerických výpočtů a vizualizaci Systém pro provádění numerických výpočtů a vizualizaci Umožňuje řešit úlohy mnohem."

Podobné prezentace


Reklamy Google