Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
1
MATLAB
2
MATLAB Systém pro provádění numerických výpočtů a vizualizaci
Umožňuje řešit úlohy mnohem pohodlněji než klasické programovací jazyky (C++, VB, Delphi, Fortran) Obsahuje mnoho funkcí Toolbox – přídavný modul obsahující další funkce FEMLAB nadstavba Matlabu pro řešení diferenciálních rovnic MATLAB = MATicová + LABoratoř Základní proměnná je matice (dvoudimenzionální pole)
3
MATLAB : proměnné Vytvoření matice: napsáním z klávesnice
vytvořením pomocí funkce 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 oddělovač prvků je mezera nebo čárka oddělovač řádků je středník nebo Enter ans … proměnná při vynechání jména (answer)
4
MATLAB : proměnné M = [3 –4 1 –2 0 5 –3 2 4] nebo
jedno číslo: matice o jednom řádku a sloupci řádkový vektor: matice o jednom řádku sloupcový vektor: matice o jednom sloupci A = 5 A = 5; % nevypíše se V = [3 –2 1] % řádkový 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 who vypíše seznam proměnných whos vypíše navíc podrobné informace Mazání matic: clear M smaže matici M clear all smaže všechno
6
MATLAB : proměnné Vytvoření pomocí funkce (příklady):
M = rand(m,n) % náhodná matice H = hilb(m) % Hilbertova matice C = magic(n) % magický čtverec Vektory s konstantním krokem: vek = d:k:h d … dolní mez h … horní mez k … krok Příklady: V1 = 1:2:7 V1 = V2 = 1:7 V2 =
7
MATLAB : proměnné Načtení ze souboru:
soubor musí být ve formátu ASCII (např. Poznámký blok) jeho obsahem musí být matice použije se příkaz čtení load jmeno.prp -ascii Uložení do souboru: save uloží všechno do matlab.mat příkaz load všechno načte po restartu Matlabu
8
MATLAB : operace Maticové operace: + sčítání – odčítání * násobení
^ umocňování ’ transponování \ levé dělení / pravé dělení Operace s polem: .* násobení .^ umocňování .\ levé dělení ./ pravé dělení Operace musí být proveditelná Maticové násobení není komutativní, proto dvě dělení x=A\b je řešení Ax=b x=b/A je řešení xA=b
9
MATLAB : operace Několik příkladů: A = [3 –4 1; –2 0 5; –3 2 4]
C = A+B C = 5 –4 2 – C = A*B C = 13 –6 20 11 – 4 –6 –7
10
MATLAB : operace Dělení: Ax=b A-1Ax=A-1b Ix=A-1b x=A-1b yM=c
yMM-1=cM-1 yI=cM-1 y=cM-1 y=c/M x=A\b
11
MATLAB : operace Využití operace s polem: vykonávají se po prvcích
tabulky a grafy funkcí Příklad: S=[ ].* [ ] S= D=[ ].^2 … 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 Cyklus s daným počtem opakování: x=[]; for i=A
for i = 1:n x=[x,i^2] end for i=A příkazy end příkazy se vykonávají pro každý prvek matice A Vznikne vektor x=[ …] Stejný vektor v opačném pořadí: x=[]; for i = n:-1:1, x=[x,i^2], end
18
MATLAB : cyklus while Cyklus řízený podmínkou: while podmínka příkazy
end Příklad: n=0; while 2^n < a n=n+1 end n Zobrazí nejmenší přirozené číslo n takové, že 2na.
19
MATLAB : podmíněný příkaz if
Rozhodování je (skoro) stejné jako ve VB: if podmínka1 příkazy1; elseif podmínka2 příkazy2; … else příkazyX; end 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
21
MATLAB : programy Příklad: funkce počítající funkční hodnoty
f(x) = (x2-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ší studijní 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í)
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.