Lineární algebra s Matlabem. Přednáška 1

Podobné dokumenty
Předmluva 9 Obsah knihy 9 Typografické konvence 10 Informace o autorovi 10 Poděkování 10

Základy algoritmizace a programování

X37SGS Signály a systémy

KTE / PPEL Počítačová podpora v elektrotechnice

Seminář z MATLABU. Jiří Krejsa. A2/710 krejsa@fme.vutbr.cz

MATrixLABoratory letný semester 2004/2005

Numerické metody a programování

KTE / PPEL Počítačová podpora v elektrotechnice

pi Ludolfovo číslo π = 3,14159 e Eulerovo číslo e = 2,71828 (lze spočítat jako exp(1)), např. je v Octave, v MATLABu tato konstanta e není

MATLAB základy. Roman Stanec PEF MZLU

Numerické metody a programování. Lekce 4

- transpozice (odlišuje se od překlopení pro komplexní čísla) - překlopení matice pole podle hlavní diagonály, např.: A.' ans =

Co je obsahem numerických metod?

Doňar B., Zaplatílek K.: MATLAB - tvorba uživatelských aplikací, BEN - technická literatura, Praha, (ISBN:

Stručný návod k programu Octave

MATLAB Úvod. Úvod do Matlabu. Miloslav Čapek

Aplikovaná numerická matematika - ANM

Wolfram Alpha. v podobě html stránky, samotný výsledek je často doplněn o další informace (např. graf, jiné možné zobrazení výsledku a

Matematika 1 MA1. 2 Determinant. 3 Adjungovaná matice. 4 Cramerovo pravidlo. 11. přednáška ( ) Matematika 1 1 / 29

Systém je citlivý na velikost písmen CASE SENSITIVE rozeznává malá velká písmena, např. PROM=1; PROm=1; PRom=1; Prom=1; prom=1; - 5 různých proměnných

Připomenutí co je to soustava lineárních rovnic

Úlohy nejmenších čtverců

KIV/ZI Základy informatiky MS EXCEL MATICOVÉ FUNKCE A SOUHRNY

Všechno, co jste kdy chtěli vědět o maticích, ale báli jste se zeptat

Pro tvorbu samostatně spustitelných aplikací je k dispozici Matlab library.

Univerzitní licence MATLABu. Pište mail na: se žádostí o nejnovější licenci MATLABu.

LINEÁRNÍ ALGEBRA S MATLABEM

PPEL Ing. Petr Kropík ICQ: tel.: (odd.

Praktické využití Mathematica CalcCenter. Ing. Petr Kubín, Ph.D. Katedra elektroenergetiky, ČVUT v Praze, FEL

Četba: Texty o lineární algebře (odkazy na webových stránkách přednášejícího).

ROZ1 - Cv. 1 - Zobrazenэ snэmku a zсklady Matlabu

Úlohy k přednášce NMAG 101 a 120: Lineární algebra a geometrie 1 a 2,

VYBRANÉ PARTIE Z NUMERICKÉ MATEMATIKY

Operátory pro maticové operace (operace s celými maticemi) * násobení maticové Pro čísla platí: 2*2

Základy algoritmizace a programování

aneb jiný úhel pohledu na prvák

PSAT Power System Analysis Toolbox

FP - SEMINÁŘ Z NUMERICKÉ MATEMATIKY. Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci

AVDAT Vektory a matice

ÚSTAV MATEMATIKY A DESKRIPTIVNÍ GEOMETRIE. Matematika 0A1. Cvičení, zimní semestr. Samostatné výstupy. Jan Šafařík

Matematika B101MA1, B101MA2

Základy programování: Algoritmizace v systému MATLAB

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

1 Projekce a projektory

PPEL_4_cviceni_MATLAB.txt. % 4. cvičení z předmětu PPEL - MATLAB. % Lenka Šroubová, ZČU, FEL, KTE %

Matice. Modifikace matic eliminační metodou. α A = α a 2,1, α a 2,2,..., α a 2,n α a m,1, α a m,2,..., α a m,n

MATEMATIKA I. Marcela Rabasová

TECHNICKÁ UNIVERZITA V LIBERCI

SOUSTAVY LINEÁRNÍCH ALGEBRAICKÝCH ROVNIC

MATLAB a Simulink R2015b

Četba: Texty o lineární algebře (odkazy na webových stránkách přednášejícího).

Příklad elektrický obvod se stejnosměrným zdrojem napětí

Operace s vektory a maticemi + Funkce

Několik poznámek na téma lineární algebry pro studenty fyzikální chemie

Matematika v programovacích

A0B17MTB Matlab. Úvod. Miloslav Čapek Filip Kozák, Viktor Adler. Katedra elektromagnetického pole B2-626, Dejvice

maticeteorie 1. Matice A je typu 2 4, matice B je typu 4 3. Jakých rozměrů musí být matice X, aby se dala provést

while cyklus s podmínkou na začátku cyklus bez udání počtu opakování while podmínka příkazy; příkazy; příkazy; end; % další pokračování programu

4. Trojúhelníkový rozklad p. 1/20

ALGORITMIZACE A PROGRAMOVÁNÍ

Operace s maticemi. 19. února 2018

VYUŽITÍ MATLABU PRO VÝUKU NUMERICKÉ MATEMATIKY Josef Daněk Centrum aplikované matematiky, Západočeská univerzita v Plzni. Abstrakt

Slajdy k přednášce Lineární algebra I

Matematika (CŽV Kadaň) aneb Úvod do lineární algebry Matice a soustavy rovnic

KTE / PPEL Počítačová podpora v elektrotechnice

Úvod do Matlabu. Praha & EU: Investujeme do vaší budoucnosti. 1 / 24 Úvod do Matlabu

Čtvercové matice. Čtvercová matice je taková matice, jejíž počet řádků je roven počtu jejích sloupců

Základy matematiky pro FEK

Bakalářská matematika I

Využití programu GeoGebra v Matematické analýze

(Cramerovo pravidlo, determinanty, inverzní matice)

Soustavy lineárních rovnic

a vlastních vektorů Příklad: Stanovte taková čísla λ, pro která má homogenní soustava Av = λv nenulové (A λ i I) v = 0.

1 0 0 u 22 u 23 l 31. l u11

Paralelní a distribuované výpočty (B4B36PDV)

Četba: Texty o lineární algebře (odkazy na webových stránkách přednášejícího).

5. Maticová algebra, typy matic, inverzní matice, determinant.

Matematický software pro Linux

PPEL_3_cviceni_MATLAB.txt. % zadat 6 hodnot mezi cisly 2 a 8 % linspace (pocatek, konec, pocet bodu)

cyklus s daným počtem opakování cyklus s podmínkou na začátku (cyklus bez udání počtu opakování)

Středoškolská technika SCI-Lab

Učební texty k státní bakalářské zkoušce Matematika Vlastní čísla a vlastní hodnoty. študenti MFF 15. augusta 2008

MATEMATIKA PRO INŽENÝRY 21. STOLETÍ

Operace s maticemi

České vysoké učení technické v Praze Fakulta jaderná a fyzikálně inženýrská OKRUHY. ke státním závěrečným zkouškám BAKALÁŘSKÉ STUDIUM

Obsah. Předmluva 13. O autorovi 15. Poděkování 16. O odborných korektorech 17. Úvod 19

a počtem sloupců druhé matice. Spočítejme součin A.B. Označme matici A.B = M, pro její prvky platí:

Státní závěrečná zkouška z oboru Matematika a její použití v přírodních vědách

[1] LU rozklad A = L U

ALG2: Lineární Algebra (Skripta Horák, jako doplněk i skripta Kovár v IS)

Vybrané kapitoly z matematiky

Matematika 2 (Fakulta ekonomická) Cvičení z lineární algebry. TU v Liberci

4. LU rozklad a jeho numerická analýza

DRN: Soustavy linárních rovnic numericky, norma

MATEMATIKA PRO PŘÍRODNÍ VĚDY LINEÁRNÍ ALGEBRA, DIFERENCIÁLNÍ POČET MPV, LADP TUL, ZS 2009/10

MOORE-PENROSEOVA INVERZE MATICE A JEJÍ APLIKACE. 1. Úvod

Programy pro ˇreˇsen ı ulohy line arn ıho programov an ı 18. dubna 2011

11MAMY LS 2017/2018. Úvod do Matlabu. 21. února Skupina 01. reseni2.m a tak dále + M souborem zadané funkce z příkladu 3 + souborem skupina.

Speciální numerické metody 4. ročník bakalářského studia. Cvičení: Ing. Petr Lehner Přednášky: doc. Ing. Martin Krejsa, Ph.D.

Počítačové řešení elektrických obvodů

Transkript:

Lineární algebra s Matlabem Přednáška 1

Základní informace Kontakt Michal Merta michal.merta@vsb.cz Kancelář IT447 homel.vsb.cz/~mer126 Čt 16:00 (předn.), 17:45 (cv.), PorEB413 Konzultace po předchozí domluvě Zápočty jsou automaticky uznané, o zrušení nutno požádat v prvních 14 dnech semestru.

Základní informace Průběh semestru (pravděpodobně se změní) Přednášky Úvod do MATLABu (přehled toolboxů a funkcí, help). Programování v MATLABu (matice, vektory, příkazy řízení toku, 2D a 3D grafika, vektorizace). Systémy ukládání řídkých matic (pásové, profilové, komprese po řádcích, sloupcích). Řešení soustav lineárních rovnic (regulární, nedourčené a přeurčené systémy). Gaussova eliminace (řádková a sloupcová verze, pivotizace). LU a Choleského rozklad (řádková a sloupcová verze, pivotizace). Iterační řešiče QR rozklad (Givensova a Householderova transformace). Vlastní čísla a spektrální rozklad (QR a LR algoritmus, shift). Singulární rozklad, pseudoinverzní matice. Lanczosova metoda, metoda sdružených gradientů. Prezentace projektů. Cvičení Seznámení se s MATLABem, přehled funkcí. Programovací techniky v MATLABu, tvorba matic, vektorů, aplikace příkazů řízení toku, vykreslení 2D a 3D funkcí. Tvorba grafů. Implementace řídkých matic (pásové, profilové, komprese po řádcích, sloupcích). Výpočet řešení soustav lineárních rovnic (regulární, nedourčené a přeurčené systémy). Řešení soustav pomocí Gaussovy eliminace (implementace, řádková a sloupcová verze, pivotizace). Řešení soustav pomocí LU a Choleského rozkladu (implementace, řádková a sloupcová verze, pivotizace). Užití QR rozkladu (implementace, Givensova a Householderova transformace, aplikace). Výpočet vlastních čísel a spektrálního rozkladu (implementace, QR a LR algoritmus, shift, aplikace). Výpočet singulárního rozkladu a pseudoinverzní matice (implementace, aplikace) Aplikace Lanczosovy metody a metody sdružených gradientů (implementace, řešení soustav). Prezentace projektů.

Základní informace Výukové materiály Kozubek T. et al. Lineární algebra s Matlabem. VŠB-TUO 2012. http://mi21.vsb.cz/modul/linearni-algebra-s-matlabem Golub G., Loan C. F. Matrix Computations. The John Hopkins University Press 1996. Trefethen, L. N., Bau, D. Numerical Linear Algebra. SIAM 1997. Online dokumentace. Podmínky absolvování Test max. 10 b. Projekt max. 20 b. (min 10 b.) Zkouška max. 70 b. Celkem min. 51 b.

Matlab MATrix LABoratory Prostředí pro numerické výpočty Jazyk pro numerické výpočty, vývoj algoritmů, analýzu a vizualizaci dat GUI pro interaktivní zadávání příkazů Knihovna funkcí pro základní a pokročilou matematiku, import a export dat, datovou analýzu, vizualizaci, atd. Velké množství toolboxů První verze z roku 1984

Matlab Má v sobězahrnuty externí řešiče optimalizované pro danou architekturu (např. BLAS Basic Linear Algebra Subroutines, UMFPACK, atd.) Interface k C/C++, Java,.NET, Python, SQL, Hadoop, MS Excel Nástroje k vytváření GUI Rozsáhlá dokumentace https://www.mathworks.com/help/matlab/index.html

Přehled nejdůležitějších toolboxů https://www.mathworks.com/products.html Parallel Computing Toolbox Pro paralelní výpočty na vícejádrových počítačích, grafických kartách a clusterech Symbolic Math Toolbox Pro analytické výpočty (derivace, integrály, zjednodušování výrazů, řešení rovnic, atd.) Optimization Toolbox Řešení optimalizačních problémů

Přehled nejdůležitějších toolboxů Partial Differential Equation Toolbox Řešení parciálních diferenciálních rovnic pomocí metody konečných prvků Statistics and Machine Learning Toolbox Signal Processing Toolbox Image Processing Toolbox Segmentace obrazu, redukce šumu, transformace, atd. Computer Vision, Automatic Driving, Neural Network Toolbox, atd.

Instalace https://install.vsb.cz/stu/matlab/ (požadováno přihlášení) Nutno požádat o licenci přes helpdesk http://idoc.vsb.cz/xwiki/wiki/infra/view/pc/stu-zam Při spuštění je třeba být v síti VŠB (nebo VPN)

Alternativy GNU Octave Freemat Scilab Python (NumPy, SciPy, Matplotlib)

Uživatelské rozhraní Current folder Command window Workspace Command history

Některé užitečné příkazy help <nazev funkce> Vypíše stručný help k dané funkci doc <nazev funkce> Zobrazí stránku s dokumentací dané funkce help elfun Zobrazí seznam elementárních matematických funkcí ans Poslední výsledek clc Vyčistí command window clear Vymaže proměnné z workspace format format long à pi = 3.141592653589793 format short à pi = 3.1416 format bank à pi = 3.14 Ovlivňuje pouze to, jak jsou proměnné vypsány, ne přesnost výpočtu! tic, toc Slouží k měření času Znak % značí komentář Zastavení výpočtu: Ctrl+C, Ctrl+Break, Command+. (Mac)

Konstanty

Matice, vektory, skaláry Základní datový typ je matice A = [1 2; 3 4; 5 6] A = [1, 2; 3, 4; 5, 6] A = [1 2 3 4 5 6] Skalár je matice 1x1 skalar = [1] nebo skalar = 1 Vektor je matice nx1 nebo 1xn sloupcovyvektor = [1; 2; 3], radkovyvektor = [1 2 3];

Základní operace Podobně jako v jiných jazycích: +, -, *, /, ^ (mocnina) Operátory pracují s čísly i maticemi [1, 2; 3, 4] * [5, 6; 7, 8] násobení matice-matice [1, 2] * [3; 4] skalární součin vektorů [1, 2; 3, 4]^2 mocnina matice atd. Operace po prvcích Symbol tečky před operátor [1, 2; 3, 4].* [5, 6; 7, 8] Transpozice pomocí apostrofu: V případě komplexních matic se jedná o hermitovskou transpozici (transpozice + komplexni konjugace). Klasickou transpozici vynutíme tečkou před apostrofem.

Základní operace Operátory porovnání a logické operátory ==, ~=, <, <=, >, >=, &, ~ Lze porovnávat dvě matice se stejnými rozměry nebo matici a skalár

Lomítkové operátory K řešení soustav lineárních rovnic AX=B slouží operátor zpětného lomítka: \ X = A\B Přibližně odpovídá násobeníinverzní maticí zleva: X = inv(a)*b K řešení soustav lineárních rovnic XA=B slouží operátor klasického lomítka: / X = B/A Přibližně odpovídá násobeníinverzní maticí zprava: X = B*inv(A) Mezi oběma lomítky platí vztah Vyvarujte se použití explicitní inverze inv(a)!

Generování matic zeros(m, n) matice nul ones(m, n) matice jedniček eye(m, n) jednotková matice rand(m, n) matice náhodných čísel magic(m, n) magický čtverec

Dvojtečkový operátor Generuje vektor po sobě jdoucích čísel

Manipulace s maticí Velikost: size(a), pro vektor length(a) Výběr prvků matice: Matlab indexuje od jedničky [A] ij à A(i, j) Lze vybrat více prvků najednou (submatici), např. A([1 2], 2) diag(a) vybere diagonálu sum(a) vrací vektor se součty přes každý sloupec matice Mazání sloupců, řádků: A(:, 1) = [], A(1, :) = []; Slučování (konkatanace): C = [A, A+10];

Skripty a funkce Soubory s příponou.m Umožnují spustit celouposloupnost příkazů Skript Nepřijímávstupní argumenty a nemá výstupníargumenty Funkce Přijímá vstupní argumenty a může vracet výstupníargumenty Matlab není interpret Při prvním volání funkce se vždy m-soubor s její definicí přeloží do pseudokódu, který se uloží do paměti a zůstává tam po celou dobu běhu aplikace. Maže se příkazem clear, např. clear jmeno_funkce. Pseudokód lze uložit do souboru s příponou.p pomocí příkazu pcode jmeno_funkce Není třeba publikovat zdrojové m-soubory, ale jen nečitelné p-soubory.

Základní struktura funkce

Řetězce Vektory znaků str = muj retezec Spojování pomocí strcat() nebo podobně jako vektory strcat( Hello, world ), [ Hello, world ] Porovnávání pomocí strcmp, strncmp, strcmpi, strncmpi Prohledávání pomocí findstr, strrep Funkce pro konverzi z řetězce na čísla a naopak