Projekt:
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech reg. č. CZ.1.07/2.3.00/45.0011
Didaktický materiál Kurz : Autor :
Aplikovaná matematika II. doc. Ing. Otto Severýn, Ph.D.
TENTO PROJEKT JE SPOLUFINANCOVÁN EVROPSKÝM SOCIÁLNÍM FONDEM A STÁTNÍM ROZPOČTEM ČESKÉ REPUBLIKY.
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
LINEÁRNÍ ALGEBRA
strana 1
3. – 4. ročník SŠ
AP
AM2 120 min. n. lekce
Prostředí Běžná učebna, možno využít počítače, ale není to nutné. Hlavní myšlenka lekce Co se myslí tím, když v matematice mluvíme o vektorech a o maticích.
Příprava lekce Není nutná. Vstupní požadavky na žáky SŠ matematika na úrovni 3. ročníku.
Zásadní otázky lekce Co to jsou vektory a matice v matematice? Jaké operace s nimi můžeme provádět? Jaké je praktické uplatnění lineární algebry?
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 2
1) Motivace
Cíl aktivity Stručná informace, co je to lineární algebra a proč je dobré (či spíše nutné) ji studovat. 10 min. Pomůcky Nejsou nutné.
Lineární algebra je jedním ze základních pilířů moderní matematiky. Na vysokých školách technického, přírodovědného i ekonomického zaměření bývá vyučována v 1. ročníku, někdy se skrývá pod názvem „Diskrétní matematika“. Většina složitějších výpočtů nakonec skončí u některého z problémů lineární algebry. Analogie s řidičem: Nemusím znát detaily, jak funguje motor, ale rámcovou představu bych měl mít. Stejně tak nemusím být specialista na lineární algebru, když provádím různé výpočty a simulace, ale základy LA bych měl znát – minimálně proto, abych poznal, kde může být problém, když něco nevychází dle mých představ. Co si lze představit pod pojmem „algebra“ a ještě ke všemu „lineární“: vektory v 2D a 3D, přímky, roviny, vícedimenzionální prostory, kuželosečky, matice, soustavy lineárních rovnic. LA souvisí s počítači: ukládání dat do polí/tabulek, počítačová architektura potřebuje pracovat s poli/vektory, počítačová grafika. Obecná algebra: matematické struktury (analogie s objekty v C++ a Javě), aplikace ve fyzice (popis symetrií), informatice (specifikace databází), kryptografii (rozklad na součin prvočísel), biologii (sekvenční analýza DNA).
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 3
2) Evokace
Cíl aktivity Vyložit základní definice týkající se vektorů, matic a operací s nimi. 70 min. Pomůcky
Provést stručný výklad základních pojmů lineární algebry. Stručnost a srozumitelnost by měla mít vyšší prioritu než úplnost výkladu. Není nutno jít formalismem definice – věta – důkaz. Cílem je předat základní myšlenky a koncepty. Pozornost je potřeba věnovat operacím – ne všechny jsou definovány (nap. dělení pro vektory a matice), některé mají různý typ operandů (např. násobení vektoru reálným číslem), u některých je výsledek jiného typu než operandy (např. skalární součin), některé matice lze mezi sebou násobit a jiné ne… Tento koncept je pro SŠ studenty (asi) nový a přitom je velmi důležitý. Jako východisko výkladu lze použít téměř libovolnou učebnici lineární algebry, dle preferencí vyučujícího. Je ale vhodné používat symboliku a nomenklaturu obvyklou na vysokých školách v ČR. Stručný přehled definovaných pojmů, operací a vět je v částech 5.1) a 5.2) tohoto metodického listu.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 4
3) Uvědomění
Cíl aktivity Procvičit získané poznatky na konkrétních příkladech.
Návrh příkladů vhodných pro zařazení do tohoto bodu výuky je v oddíle 5.3) tohoto metodického listu. Případně je možné příklady zařadit přímo do výkladu v bodě 2).
30 min. Pomůcky
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 5
4) Reflexe
Cíl aktivity Učitel společně se studenty shrne získané poznatky. 10 min. Pomůcky Vlastní poznámky žáků.
Kromě shrnutí získaných poznatků by v tomto bodě bylo vhodné poukázat na charakteristický rys matematiky – zobecňování. Vektory byly původně pouze dvou- či třísložkové, tedy ty, které používáme ve fyzice. Postupně došlo k jejich zobecnění na libovolný počet složek – někdy dokonce nekonečný, ale to je námět na jiný blok výuky. Dále je vhodné připomenout, že konkrétně tato kapitola nemá sama o sobě přímé praktické uplatnění, ale je nezbytným základem pro mnohé důležité aplikace matematiky, zejména v oboru numerického modelování.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 6
5) Problémový výklad 5.1) Vektory Aplikace vektorů studentům asi již známé: rovinné a prostorové vektory (orientované úsečky) popisují směr nebo spojnici dvou bodů, reprezentace – uspořádaná dvojice (trojice čísel), velikost vektoru (Pythagorova věta), skládání vektorů (násobek, součet, rozdíl, lineární kombinace), výpočet úhlů – skalární součin, Zavedení vektorů v Rn (reálný) vektor je uspořádaná n-tice čísel (značení se šipkou), nulový vektor, rovnost vektorů (stejný počet prvků a rovnost příslušných prvků). Pozn.: Obecnější chápání vektorů – prvky nějaké množiny, kde je definováno sčítání a násobení číslem s vhodnými vlastnostmi. Pak lze za vektory považovat např. číselné posloupnosti, reálné funkce apod. Je také možné zavést vektory nad komplexními čísly nebo obecněji nad tzv. tělesy. Součet dvou vektorů Definujeme jej jako součet po složkách (použití 3 teček). Oba vektory musí mít stejný počet prvků, výsledkem je vektor stejného typu. Násobení vektoru (reálným) číslem Definujeme po složkách. Skalární součin Algebraická definice (pomocí teček a sumy), geometrická definice (velikost vektorů a úhel). Oba vektory jsou stejného typu, výsledek je číslo. Pozn.: Výsledkem skal. součinu je číslo! Vektorový součin existuje jen v 3D. Vektory nelze dělit. Odbočka – skalární součin lze zavést i jinak a v jiném kontextu – podstatné jsou jeho charakteristické vlastnosti (pos. def., symetrie, linearita). Př.: skal. součin funkcí v L2. Lineární kombinace Vektor w je LK vektorů u a v, pokud existují čísla a, b taková, že w = au + bv. Př.: Parametrický zápis přímky, roviny v analytické geometrii. p: x=1+t, y=2-3t; r: x=t, y=2-t, z=u. Lineární nezávislost, báze, dimenze Motivace: dva rovnoběžné vektory nemohou určit rovinu. Definice: vektory v1...vk jsou LZ, pokud existuje LK s koeficienty a1...ak taková, že alespoň jedno z čísel a1...ak je nenulové a navíc a1v1+...+akvk = o (nulový v.) Vektory jsou LN, pokud nejsou LZ. Podprostor = množina všech LK daných vektorů v1...vk. Význam LN – žádný z vektorů neleží v podprostoru generovaném zbylými vektory. Báze Motivace: vektor v rovině v 3D lze napsat jako LK směrových vektorů. Existuje v každém podprostoru skupina vektorů, jejíž LK dá libovolný vektor? Ano, pokud je tato skupina navíc LN, nazývá se báze. Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 7
Př.: kanonická báze v R3, jiná báze (1,1,1), (1,1,0), (1,0,0) – transformace mezi souřadnými soustavami Dimenze Každý podprostor v Rn má bázi. Všechny báze mají stejný počet prvků. Počet prvků každé báze = dimenze. Př. přímka dim=1, rovina dim=2, dim Rn=n
5.2) Matice
Zavedení matic typu mxn Uspořádané pole čísel, které má m řádků a n sloupců, tedy celkem m.n čísel. Prvky matice A značíme aij, i...index řádku, j...index sloupce. Příklady Vektor je speciální typ matice, řádkový vs. sloupcový vektor. Tabulka naměřených teplot: 23. 11.
24. 11.
25. 11.
26. 11.
Londýn 10 °C 9 °C
9 °C
10 °C 11 °C 10 °C
Praha
6 °C
5 °C
4 °C
Řím
19 °C 20 °C 18 °C 17 °C 21 °C 20 °C
6 °C
27. 11. 3 °C
28. 11. 4 °C
Transponovaná matice – výměna řádků za sloupce: Londýn
Praha
Řím
23. 11.
10 °C
6 °C
19 °C
24. 11.
9 °C
6 °C
20 °C
25. 11.
9 °C
5 °C
18 °C
26. 11.
10 °C
4 °C
17 °C
27. 11.
11 °C
3 °C
21 °C
28. 11.
10 °C
4 °C
20 °C
Sousednost v orientovaném grafu. Černobílý digitální obraz se skládá z 320x240 bodů, každý bod má jeden z 256 odstínů šedi (0-255). Obraz tedy lze reprezentovat maticí typu 320x240, jejíž prvky jsou čísla 0-255. Transpozice B je transponovaná matice k A, pokud bij=aji. Příklad – viz výše. symetrická matice Součet, násobek číslem Stejné jako u vektorů. Sčítat lze pouze matice stejného typu. Součin Skalární součiny řádků se sloupci: A(mxn).B(nxp) = C(mxp), cij = sum_k(aik.bkj) příklad: [1 0 2; 0 1 0].[2 0; 1 -1; 3 1] = [8 2; 1 -1] příklad na nekomutativitu: [0 1; 0 0], [0 3; 0 2] Vlastnosti: AB není BA, AB může být 0 (nulová matice), i když A a B jsou nenulové. Jednotková matice: IA=AI=A Součin matice a vektoru Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 8
Lineární zobrazení (transformace vektorů): matice x vektor = vektor. Př.: rotace vektoru [cos sin; -sin cos] – ve směru hod. ručiček Př.: permutační matice – v každém řádku a sloupci 1 jednička (zopakovat, co je to permutace).
5.3) Příklady
Součet vektorů Podnik A vyrábí 4 výrobky (chléb, rohlíky, housky, koblihy), denní produkce v1,...,v4 … vektor v=(v1,v2,v3,v4), podnik B vyrábí tytéž výrobky s denní produkcí u=(u1,u2,u3,u4). Denní produkce obou podniků dohromady je u+v. Násobení vektoru reálným číslem Ceny n výrobků v korunách jsou složky vektoru p=(p1,...,pn). Je-li kurz jiné měny ke koruně 1:27,5, pak cena výrobků v jiné měně je (1/27,5)p. Skalární součin Obchod s potravinami prodává rohlíky za 2 Kč, mléko za 15 Kč a máslo za 30 Kč. Zákazník chce koupit 10 rohlíků, 2 l mléka a 1 máslo. Kolik zaplatí celkem? Vektor c=(2,15,30)...ceny, p=(10,2,1)...položky, celková cena je skalární součin p·c = 10x2+2x15+1x30 = 80 Kč. Lineární kombinace vektorů Obchodník nabízí ve výprodeji balíčky obsahující zboží z1, z2 a z3. Sada 1 obsahuje 1 ks z1, 2 ks z2, 4 ks z3. Sada 2 obsahuje 3 ks z1, 2 ks z2, 2 ks z3. Sada 3 obsahuje 2 ks z1, 1 ks z2, 3 ks z3. Zákazník chce koupit 20 ks z1, 15 ks z2, 25 ks z3. Kolik má koupit kterých balíčků? s1=(1,2,4), s2=(3,2,2), s3=(2,1,3), p=(20,15,25) Ptáme se, zda p je lineární kombinací s1,s2,s3, tj. zda existují čísla c1,c2,c3 taková, že p = c1s1 + c2s2 + c3s3. Dostaneme soustavu c1 + 3c2 + 2c3 = 20 2c1 + 2c2 + c3 = 15 4c1 + 2c2 + 3c3 = 25 Jejím jediným řešením je c1=2, c2=4, c3=3. Zákazník tedy musí koupit 2 ks s1, 4 ks s2 a 3 ks z3. Pozn. V praxi to takto vždy nevyjde – aby řešení bylo celočíselné a navíc nezáporné. Sčítání matic a násobení matice číslem V prodejně s porcelánem nabízejí hluboké, mělké a dezertní talíře ve dvou barevných variantách – modré a zlaté. Každý měsíc doplňují zásoby o potřebný počet kusů. V lednu: L= V únoru: U= V březnu: B= Celkem za 1. kvartál: L+U+B Průměrná měsíční objednávka: 1/3(L+U+B) Násobení matic Spojení s k přestupy: 1-2, 1-4, 2-1, 2-3, 2-4, 3-2, 3-4, 4-1, 4-2, 4-3, 4-5, 5-4, A^2...počty spojení s 1 přestupem, A+A^2...spojení přímé nebo s 1 přestupem
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
ZÁKLADY POUŽITÍ MATLABU
strana 9
3. – 4. ročník SŠ
AP
AM 90 min.
n. lekce
Prostředí Počítačová učebna, na počítačích nainstalován Matlab, příp. Octave. Hlavní myšlenka lekce Matlab je vhodný a standardní nástroj pro výpočty všeho druhu. Zásadní otázky lekce Jak používat Matlab jako kalkulačku? Jak provádět vektorové a maticové
operace v Matlabu? Jak vykreslovat grafy? Příprava lekce Instalace, příp. kontrola instalace Matlabu na počítačích. Nahrání příkladů na server/počítače. Vstupní požadavky na žáky SŠ matematika, Úvod do matic a vektorů v rámci tohoto kurzu.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 10
1) Motivace
Cíl aktivity Představit program Matlab a důvody, proč ho znát. 10 min. Pomůcky Možno zařadit ukázky (obrázky, animace) na téma „Co vše bylo spočítáno v Matlabu“.
Matlab je standardní nástroj pro vědeckotechnické výpočty. Při studiu matematického, přírodovědného, technického i ekonomického oboru je víc než pravděpodobné, že se s ním studenti setkají. Kromě nástroje pro výpočty jde také o programovací jazyk, který se v žebříčcích žádanosti na trhu práce drží v první dvacítce zaměstnavateli poptávaných jazyků. (Možno zařadit odkaz, např. http://www.tiobe.com/index.php/content/paperinf o/tpci/index.html). I z tohoto důvodu je vhodné ho znát… Původně byl zaměřen na počítání s maticemi, odtud i název (Matlab = Matrix Laboratory), dnes pokrývá téměř všechny obory počítání a simulací. Je to program – z hlediska počítačů – neobyčejně starý, začal být vyvíjen na konci 70. let, a knihovny, na kterých je založen, dokonce na začátku 70. let. Přesto je to produkt stále živý a rozvíjející se. Stáří programu není na škodu, základní knihovny jsou tak odladěné a optimalizované, že je téměř jisté (100% jistotu mít nelze), že počítají správně a nejrychleji, jak mohou. Mimo toho bude Matlab používán ve zbytku tohoto kurzu pro řešení různých úloh. Pozn.: Matlab je komerční produkt, navíc poměrně nákladný. Není-li dostupná licence Matlabu, lze bez problémů použít jeho volně šiřitelný klon GNU Octave https://www.gnu.org/software/octave/. Octave lze navíc stáhnout a používat na mobilních telefonech s OS Android, což může být pro účastníky kurzu zajímavé.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 11
2) Evokace
Cíl aktivity Seznámit studenty s prostředím Matlabu a základními funkcemi. 40 min. Pomůcky Počítače s nainstalovaným Matlabem/Octavem.
Postupovat dle bodů uvedených v oddíle 5.1) tohoto metodického listu. Začít použitím Matlabu jako kalkulátoru − základní operace, jednoduché funkce, které má kalkulačka. Poté přejít k maticím a vektorům. Jelikož na většině dnešních SŠ není standardně vyučováno programování, je nutno toto zohlednit při výkladu. Zvlášť koncept proměnné může činit problémy. V Matlabu je situace dále zhoršena tím, že pro operaci přiřazení se používá znak =, což může připomínat rovnici. Pokud studenti pro některé své výpočty používali MS Excel, je vhodné toho využít a ukázat paralely/rozdíly při použití obou nástrojů.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 12
3) Uvědomění
Cíl aktivity Na základě zkušeností z bodu 2) si zkusit vyřešit některé příklady na matice a vektory. 30 min. Pomůcky Stejné jako ve 2)
Návrh příkladů vhodných pro zařazení do tohoto bodu výuky je v oddíle 5.2) tohoto metodického listu. Snažit se studenty navést k samostatnosti při práci s programem – použití dokumentace v programu, jak číst dokumentaci – co je důležité vědět, jaké vstupy a výstupy funkce mají, jak jsou řešeny chybové stavy. Online zdroje pro práci s Matlabem, fóra, popisy numerických metod. Dále je možné zabývat se nadstavbami nad základním jádrem Matlabu – toolboxy. Pro studenty má asi význam „Symbolic toolbox“ a pro technicky orientované Simulink a s ním spojené nástavby.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 13
4) Reflexe
Cíl aktivity Učitel společně se studenty shrne získané poznatky. 10 min.
Po chvíli „hraní si“ s Matlabem by si studenti měli uvědomit, že jeho použití není svojí logikou příliš odlišné od použití běžné kalkulačky – ovšem se zcela jinými možnostmi. A ani se příliš neliší od způsobu, kterým člověk počítá „tužkou na papír“. V tuto chvíli studenti znají základy a vědí, jak používat nápovědu a hledat si další informace. V dalších lekcích kurzu na to bude navazováno.
Pomůcky Vlastní poznámky žáků.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 14
5) Problémový výklad 5.1) Úvod do příkazů a použití Matlabu Nástin témat, která by měl učitel studentům ukázat: 1. Popis prostředí (příkazová řádka, aktuální adresář, seznam proměnných). 2. Nápověda (příkaz help/doc nebo „Getting started“). 3. Stručný seznam příkazů http://labe.felk.cvut.cz/~posik/y33aui/uvod-domatlabu/ (Google: „uvod do matlabu“). 4. Proměnná – objekt, který nabývá nějaké hodnoty (číslo, vektor, matice, textový řetězec) definice proměnné: x = 1; x = 1 x 5. Definice vektoru: v = [ 1 2 3 ] v = [ 1; 2; 3 ] v = [ 1 2 3 ]' v(2) length(v), size(v). 6. Pozn. „=“ je operátor přiřazení (hodnota se přepíše), logický operátor je „==“ x == 2 (výsledek 1=ano, 0=ne). 7. Matlab je „case sensitive“, tj. rozlišuje malá a velká písmena. 8. Operátor : v = 1:10 v = 1:2:10 9. Definice matice: A = [ 1 2 3; 4 5 6; 7 8 9; 10 11 12 ] A' A(2,3) A(2:3,1:2) A(2,:) A(:,3) zeros(3,4) ones(3,4) eye(3,4) 10. Operace s vektory a maticemi (součet, násobek, součin): [ 1 2 ] + [ 3 4 ] 3*[1 2] norm([3 4]) dot([1 2], [2, -1]) ones(3,2)*[1 2 3; 4 5 6; 7 8 9] A^4 11. Grafy: x = [0:0.05:1]*2*pi; ysin = sin(x); plot(x, ysin); plot(x, ysin, 'ro--'); ycos = cos(x); hold on; plot(x, ycos, 'mx:'); 12. Načtení/uložení dat. Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 15
5.2) Úlohy pro řešení v Matlabu Typové úlohy pro seznámení se s programem. 5.2.1 Matlab jako kalkulačka Volný pád, vzorec t = sqrt( 2 * g * h ). Nejprve dát za úkol vypočítat, jak dlouho bude padat těleso z výšky 15 m. Potom na tom samém příkladu ukázat použití proměnných (g a h jako proměnné). Dále definici funkce. Nakonec vykreslení grafu funkce. 5.2.2 Výpočty s vektory Obchod prodává zboží za ceny (za ks/1 kg) uvedené v následující tabulce: rohlík
2 Kč
houska
3 Kč
chléb
30 Kč
máslo
35 Kč
pivo
20 Kč
brambory
12 Kč
jablka
25 Kč
rajčata
45 Kč
banány
32 Kč
okurky
15 Kč
Za nákup je možné platit v Kč, EUR, USD nebo GBP. Kurzy měn ke Kč jsou: EUR
1:27.6
USD
1:22.3
GBP
1:34.8
Zákazník má za úkol koupit: rohlík
10 ks
houska
10 ks
chléb
1 ks
máslo
2 ks
pivo
10 ks
brambory
5 kg
jablka
2 kg
rajčata
1 kg
banány
0.5 kg
okurky
2 ks
Úkoly: 1. Spočtěte cenu nákupu v Kč. 2. Vytvořte vektor, který má na i-tém místě cenu nákupu v i-té měně. Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 16
3. Vytvořte matici mxn, která má v i-tém sloupci ceník v i-té měně.
5.2.3 Výpočty s maticemi Jsou dány naměřené teploty v několika evropských metropolích: 23. 11.
24. 11.
25. 11.
26. 11.
27. 11.
28. 11.
Londýn
10 °C
9 °C
9 °C
10 °C
11 °C
10 °C
Praha
6 °C
6 °C
5 °C
4 °C
3 °C
4 °C
Řím
19 °C
20 °C
18 °C
17 °C
21 °C
20 °C
Úkol: Zapište hodnoty do matice T. Pomocí této matice a funkcí max(), min() a sum() vytvořte vektor s maximálními denními teplotami, vektor s minimálními denními teplotami a vektor s průměrnými denními teplotami pro každé místo. 5.2.3 Pokročilejší výpočet s maticemi Autobusy hromadné dopravy zajišťují spojení měst 1 až 5. Konkrétně existují spojení mezi městy 1 a 2, 1 a 4, 2 a 3, 3 a 4, 4 a 5 (obousměrně). Úkol: Nakreslete si graf spojení. Vytvořte matici sousednosti pro tento graf. Spočtěte pomocí ní matici, jejíž prvky udávají počet spojení mezi dvěma místy s použitím nejvýše jednoho přestupu.
5.3 ) Matlab – základy programování Doplňkový materiál, který doporučujeme zařadit pouze v případě, že studenti absolvovali základní kurz programování v běžném programovacím jazyce. Základní programátorské konstrukce: 1. Podmínka: if a>0 disp('a je kladne') elseif a < 0 disp('a je zaporne') else disp('a je nulove') end 2. Logické spojky (& |), porovnávání (<,>,==, ~=) - výsledkem je 1 (pravda) nebo 0 (nepravda). b=(a>3) | (a==1) 3. Cyklus: for i = 1:10 disp(i) end for i = [1 2 10] disp(i) end i=1; Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 17
while i<10 disp(i); i=i+1; end 4. Vlastní funkce (vhodné ukládat do tzv. skriptů – soubory s příponou .m). function [soucet,rozdil] = sr(x,y) soucet = x+y; rozdil = x-y; end
5.4 ) Matlab – pokročilejší úlohy, vyžadující programování Opět doplňkový materiál, který je vodné použít pouze, byly-li ukázány základy programování v Matlabu. 1 Napište funkci rmat(a), která vytvoří matici [cos(a) sin(a); -sin(a) cos(a)]. Spočtěte součin rmat(pi/4) a vektoru [1;0]. Jaký úhel svírá nový vektor s vektorem [1;0]? Co lze říci o součinu rmat(a)*rmat(-a)? 2 Napište funkci pmat(v), jejímž vstupem je permutace (vektor obsahující čísla 1...n, každé z nich právě jednou) a která vytvoří permutační matici. Vynásobte tuto matici s vektorem 1:n. Ověřte, že inverzní matici lze získat transponováním původní matice. 3 Funkce beam(d0,d1,n) vytvoří matici a pravou stranu pro úlohu popisující průhyb nosníku (d0 a d1 je poloha na koncích, n je počet uzlů). Spočtěte řešení (x=A\b) pro n=20 a vykreslete graf (plot(0:0.05:1, x)). Upravte funkci beam pro situaci, kdy na levou polovinu nosníku působí dvakrát větší síla než na pravou polovinu. 4 Napište funkci gauss(A,b), která vyřeší soustavu Ax=b pomocí Gaussovy eliminace. Otestujte ji na soustavě dané funkcí beam(0,1,n) pro n<=500. Pokuste se odvodit vzorec pro výpočetní (časovou) složitost. Pro měření času použijte funkce tic a toc.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
SOUSTAVY LINEÁRNÍCH ROVNIC
strana 18
3. – 4. ročník SŠ
AP
AM 180 min. n. lekce
Prostředí Běžná učebna, lépe ale počítačová učebna s nainstalovaným Matlabem/Octavem. Hlavní myšlenka lekce Řešení soustavy lineárních rovnic je jednou z nejdůležitějších úloh aplikované matematiky.
Zásadní otázky lekce Proč je tento typ úlohy tak důležitý? Jak jistě vyřešit takovouto úlohu? Jak ji vyřešit rychleji? Příprava lekce Není nutná. Vstupní požadavky na žáky SŠ matematika, absolvování bloku „lineární algebra“.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 19
1) Motivace
Cíl aktivity Ukázat, proč je řešení soustav lineárních rovnic tak důležité. 10 min. Pomůcky
Úloha řešení soustavy n-lineárních rovnic pro n-neznámých je jednou z nejčastěji řešených úloh aplikované matematiky. Každé vyhledávání na Internetu, téměř každá simulace fyzikálního děje (např. předpověď počasí) má ve svém jádru skryté řešení takovéto soustavy. To je dáno tím, že tato úloha je mimořádně vhodná pro řešení na počítači – vyžaduje velké množství opakování (v obecném případě úměrné třetí mocnině počtu rovnic) základních aritmetických operací. A ze stejného důvodu je tato úloha obtížně řešitelná „ručně“ – třetí mocnina narůstá příliš rychle: Vyřešit soustavu pěti rovnic trvá zhruba 16x déle než soustavu dvou rovnic. A deset rovnic 8x déle než pět. (V obecném případě; ve speciálním může být vše jinak a v praxi se vyskytují spíš ty speciální případy.) V průběhu vývoje matematiky byla vytvořena řada metod, které převádějí složitější úlohy na úlohu řešení n-lineárních rovnic pro n-neznámých, ale nebyly používány, právě pro tuto obtížnou řešitelnost ručně či jednoduchými kalkulátory. Například metoda konečných prvků, která byla zmíněna na prvním bloku výuky. Příchod počítačů vše změnil. Úloha, kterou se dnes budeme zabývat, je nejsložitější úloha, kterou počítač umí vyřešit „dobře“, tj. v konečném počtu kroků a v přesnosti úměrné strojové přesnosti. Dnes jsou běžně na PC řešeny soustavy řádově milionů rovnic – byť ve speciálním tvaru. Na clusterech, superpočítačích atp. řádově víc.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 20
2) Evokace
Cíl aktivity Představit úlohu, její maticový zápis, GaussJordanovu eliminaci a Gauss-Seidlovu iterační metodu. 110 min. Pomůcky Nejsou nutné.
Jedná se o klasickou partii lineární algebry, proto jako východisko výkladu lze použít téměř libovolnou učebnici tohoto oboru, dle preferencí vyučujícího. Je ale vhodné používat symboliku a nomenklaturu obvyklou na vysokých školách v ČR. Stručný přehled definovaných pojmů, operací a metod je v části 5) tohoto metodického listu. Z hlediska vedení studentů je důležitý přechod od algebraického zápisu typu: a11x1+a12x2+… +a1nxn = b1 … k maticově vektorovému zápisu Ax = b. Algebraický zápis studenti znají ze SŠ a minimálně také umí vyřešit soustavu dvou či tří rovnic. Nebude-li studentům dostatečně jasný princip sčítání rovnic, vysvětlit: Pokud a = b a c = d, tak a+b = c+d, ale ne naopak. Z a+b=c+c neplyne a = b a c =d! Vzhledem k rozsahu celého tématu a sylabu kurzu není možné v daném čase provést kompletní výklad, což ale není cílem. Cílem je přivést studenty k pochopení základních pojmů a jejich souvislostí v daném tématu. Zejména není nutno se příliš zabývat singularitou/regularitou matice, ta bude podrobněji rozebrána v dalším bloku výuky.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 21
3) Uvědomění
Cíl aktivity Podpořit pochopení probrané látky samostatným řešením příkladů. Ukázat řešení těch samých příkladů pomocí Matlabu. 50 min. Pomůcky Počítače s nainstalovaným Matlabem/Octavem.
Příklady lze převzít z libovolné učebnice lineární algebry. Doporučujeme tento postup: Zadat soustavu tří rovnic pro tři neznámé. Nechat studenty vyřešit ji tak, jak jsou zvyklí. Potom tu samou soustavu řešit Gauss-Jordanovou eliminací a potom Gauss-Seidelovou iterací (max. dvě iterace). Poté zkusit eliminaci na větší matici (5x5), ale ne celou. Spíš aby studenti získali představu, jak je to pracné a jak snadné je udělat přitom chybu – i když je matice zadána s celými čísly, tak při eliminaci brzy vzniknou zlomky, resp. desetinná čísla, která je obtížné zapisovat. Dále zkusit matici s většinou prvků nulových. Ve druhé části aktivity přejít k řešení těch samých úloh pomocí Matlabu/Octave. V této části je vhodné ukázat další funkce Matlabu – konkrétně načtení dat ze souboru, tj. ukázat možnost řešení větších soustav, než jaké lze zadat ručně.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 22
4) Reflexe
Cíl aktivity Učitel společně se studenty shrne získané poznatky. 10 min. Pomůcky Vlastní poznámky žáků.
Shrnout zásadní poznatky o řešení úlohy nlineárních rovnic o n-neznámých. Vypíchnout principiální rozdíl mezi metodami přímými (G.-J. eliminace) a iteračními (G.-S. iterace). Nalezení „přesného“ řešení v relativně dlouhém čase versus méně přesné řešení (v rámci stanovené tolerance) nalezené v řádově kratším čase. Přesná pravidla, kdy který typ použít, ale stanovit nelze, u iteračních metod závisí zásadním způsobem na vlastnostech matice a na volbě počátečního odhadu řešení. Dále zdůraznit, že při praktickém řešení, zvláště rozsáhlých soustav, velmi záleží na konkrétní úloze a na tom, jestli máme další informace o matici, jejím vzniku atp. Např. zmíněná MKP produkuje – ve svých obvyklých variantách – soustavy symetrické a pozitivně definitní, což je důležitá informace z hlediska řešení. Řešení soustav rovnic je pro praxi natolik důležitou úlohou, že je snaha přenést co nejvíce přímo do hardwarového návrhu počítačů – např. architektury počítačů pracující s vektory naráz, paralelizace algoritmů řešení atp.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 23
5) Problémový výklad Některé typy matic Inverzní matice. Motivace: k řešení ax=b potřebujeme dělit, analogií je maticová inverze. Def.: pro A čtvercovou... A.A^{-1} = A^{-1}.A=I Př.: I, diagonální matice, [1 1 1;0 1 1;0 0 1]^{-1} = [1 -1 0;0 1 -1;0 0 1] Nemusí existovat pro každou matici (taková matice se nazývá singulární). Pokud existuje A^{-1}, pak je jednoznačná a A se nazývá regulární. Regulární matice <=> řádky (sloupce) jsou LN. Př.: [1 0;0 0] Je-li čtvercová matice A regulární, pak soustava Ax=b má právě jedno řešení x=A^{-1}b inverzní matice se hodí použít tam, kde se řeší opakovaně soustava se stejnou maticí, ale různými pravými stranami. Řídká matice Má řádově kn nenulových prvků, kde n je počet řádků/sloupců a k<
j) v matici (A|b): Povolené způsoby: vynásobení řádku nenulovým číslem, přičtení násobku řádku k jinému řádku, prohození dvou řádků, prohození 2 sloupců (pak se prohodí i odpovídající neznámé). Nejprve pomocí 1. řádku vynulujeme prvky pod diagonálou v 1. sloupci, pak pomocí 2. řádku vynulujeme prvky pod diagonálou v 2. sloupci atd. Pokud se na diagonále nachází 0, prohodíme řádky/sloupce JE – provede zpětný chod – vynuluje prvky nad diagonálou (nejprve pomocí posledního řádku) Příklad: A = [1 0 2; 2 -1 3; -1 1 0], b=[2;1;0], x=[4;4;-1] Poznámky: Univerzálnost – je-li A regulární, pak GE/JE lze provést. Výpočet inverzní matice: JE matice (A|I) → (I|A^{-1}) Paměťová O(n^2) a výpočetní složitost O(n^3) Iterační metody - princip (počáteční odhad, postupné zpřesňování, zastavovací kritérium), - klasické metody Jacobi, Gauss-Seidel, přechodový jev. Doplňující poznatky Typy matic – (ne)symetrické, pos. def./regulární, husté/řídké. Př.: šifrování textu/obrazu, vsuvka o šifrovacích algoritmech.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
LINEÁRNÍ ALGEBRA – RŮZNÉ
strana 24
3. – 4. ročník SŠ
AP
AM 180 min. n. lekce
Prostředí Běžná učebna, lépe ale počítačová učebna s nainstalovaným Matlabem/Octavem. Hlavní myšlenka lekce V lineární algebře vše souvisí se vším.
Příprava lekce Není nutná. Vstupní požadavky na žáky Absolvování předchozích bloků kurzu zabývajících se lineární algebrou.
Zásadní otázky lekce Jaké jsou možné interpretace vztahu Ax=b? Co to je determinant? Co to jsou vlastní čísla matice?
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 25
1) Motivace
Cíl aktivity Velmi stručně zopakovat látku předchozích bloků lineární algebry. Nastínit, že dnes dojde na zajímavější témata.
V tuto chvíli znají účastníci kurzu základy lineární algebry. Byť jenom rámcově a neúplně, bez detailní znalosti definic a vět. V úvodu doporučujeme provést stručné zopakování dosud probraných pojmů a souvislostí. Např. formou myšlenkové mapy:
10 min. Pomůcky Nejsou nutné.
Následně studenty motivovat tím, že tyto poněkud „suché“ věci jsou probrané a že dnes se dostaneme k věcem zajímavějším, které ale vyžadují znalost těch suchých základů. Možná i na tomto místě zopakovat, že tento postup bude studenty provázet celým vysokoškolským studiem. Věci praktické a zajímavé se musí opírat o teoretický základ a bez znalosti teoretického základu není možné hlubší porozumění látce a jejím souvislostem.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 26
2) Evokace
Cíl aktivity Vyložit některé další pojmy a souvislosti lineární algebry. 110 min. Pomůcky Nejsou nutné.
Stejně jako u předchozích bloků lin. algebry je nutno zdůraznit, že se jedná o klasické partie oboru, proto jako východisko výkladu lze použít téměř libovolnou učebnici lineární algebry, dle preferencí vyučujícího. Stručný přehled definovaných pojmů, operací a metod je v části 5) tohoto metodického listu. Jako výchozí vztah vezměme zápis Ax = b, kde A je čtvercová matice rozměru nxn, x a b jsou sloupcové vektory o n složkách. Nyní položme otázku, co je neznámá a co je známá. Pomineme případ, kdy neznámou je A, tj. úlohu identifikace systému. Je-li známé x a neznámé b, je to úloha transformace vektoru, která vyžaduje pouze provedení maticového násobení. Naopak, je-li neznámou x musíme řešit soustavu n-lineárních rovnic pro n-neznámých. Zde je možno použít analogii s lineární algebraickou rovnicí ax = b, studentům důvěrně známou. V případě, že je a = 0, tak řešení buď neexistuje, nebo je jich nekonečně mnoho. Stejně tak pro soustavu – je-li A „něco jako nula“ – tedy singulární. Přitom ale A nemusí být nulová matice. Což vede na otázky, jak poznat singulární matici a jestli Gauss-Jordanova eliminace skončí vždy úspěšně. Od toho se odvíjí výpočet determinantů. Na to lze navázat výpočtem vlastních čísel, pojmem pozitivně definitní matice, podmíněnosti soustavy atd. Dále je vhodné ukázat, že matice a soustavy lin. rovnic „nepadají z nebe“, ale že jsou zpravidla výsledkem nějakého předchozího výpočtu či alespoň měření. To se odráží v typech matic, které lze v praxi nejčastěji potkat, a také v tom, že informace o tom, jak byla matice sestavena, nám může dát velkou výhodu při jejím řešení. A naopak: máme-li matici s nějakou výhodnou vlastností (např. řídkou), tak je žádoucí o tuto výhodu nepřijít např. nevhodně provedeným krokem eliminačního algoritmu.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 27
3) Uvědomění
Cíl aktivity Podpořit pochopení probrané látky samostatným řešením příkladů. Ukázat řešení těch samých příkladů pomocí Matlabu. 50 min. Pomůcky Počítače s nainstalovaným Matlabem/Octavem.
Příklady lze převzít z libovolné učebnice lineární algebry. Doporučujeme tento postup: Začít výpočtem determinantu pomocí Sarusova pravidla pro matice 2x2 a 3x3. Poté zkusit výpočet determinantu o něco větší matice (5x5) rozvojem – ukázat pracnost tohoto postupu, pokud pro rozvoj vybereme plný řádek/sloupec. Poté ten samý příklad řešit pomocí převodu na trojúhelníkovou matici. Dále zařadit příklady na výpočet vlastních čísel. Možno připomenout metody pro hledání kořenů polynomů z bloku výuky zabývajícího se nelineárními rovnicemi. Vložit ukázku špatně podmíněné soustavy rovnic, na ní provést výpočet vlastních čísel, determinantu, zkusit perturbaci soustav a její vliv na řešení. Ve druhé části aktivity přejít k řešení těch samých úloh pomocí Matlabu/Octave.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 28
4) Reflexe
Cíl aktivity Učitel společně se studenty shrne získané poznatky. 10 min. Pomůcky Vlastní poznámky žáků
Shrnout poznatky. Ukázat studentům důležitost probraných pojmů a zdůraznit, že v lineární algebře „vše souvisí se vším“ a pojmy mají velmi těsné souvislosti. A právě pochopení těchto souvislostí činí lineární algebru krásnou. Dále připomenout, že je vhodné si při studiu (nejen) lineární algebry zachovat jistý odstup, vnímat širší souvislosti a neztratit se v detailech. Byť se při studiu tyto detaily zdají velké a obtížně pochopitelné, neměly by zakrýt celkový obraz.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 29
5) Problémový výklad Determinanty Determinant jako funkce čtvercové(!) matice. Definice determinantu pomocí rozvoje – rekurzivní. Výpočet determinantů matic 2x2 a 3x3 – Sarusovo pravidlo. Pro větší matice neplatí! Operace s maticí, které nezmění determinant (příp. změní pouze znaménko). Výpočet determinantu pro větší matice – převod na diagonální matici. Srovnání časové náročnosti O(n!) a O(n3). Význam hodnoty determinantu. Kramerovo pravidlo – použití determinantů pro řešení soustav rovnic. Použití determinantů v geometrii – obsahy, objemy. Absolutní hodnota determinantu mnoho neříká, proto při rozhodování o singularitě/regularitě matice používáme jiných technik – zaokrouhlovací chyby mohou snadno výpočet determinantu zcela znehodnotit. Determinant je ale důležitý pro teoretické úvahy. Vlastní čísla Motivace – invariantní transformace vektorů. Při pohledu na Ax=b jako na transformaci, existují x takové, že je transformace neotočí, pouze natáhne/zkrátí? Odvození pomocí determinantů – hledáme netriviální řešení soustavy lin. rovnic, determinant musí být roven nule. det( A – Iλ ) = 0 Zdůraznit, že je nutné řešit obecně algebraickou rovnici n-tého stupně (odkaz na blok o nelineárních rovnicích), což může být problém. Dále zdůraznit, že úpravy matice typu násobení řádku číslem či sečtení řádků mění vlastní čísla, a proto nemůžeme pro snadný výpočet vlastních čísel použít např. Gauss-Jordanovu eliminaci. V praxi ale většinou nepotřebujeme znát všechna vlastní čísla, stačí nám nejmenší a největší. Spektrální poloměr matice. Definice pozitivně definitní matice, jejich příklady z fyziky (tenzory materiálových vlastností – mohou změnit směr toku (kapaliny, tepla), ale nemohou ho otočit proti spádu). Úvod do metod pro odhad vlastních čísel. Souvislost vlastních čísel s vlastními frekvencemi fyzikálních soustav (např. vlastní frekvence kmitů struny). Soustavy lineárních rovnic – doplnění Pojem podmíněnosti úlohy – jeho geometrická interpretace ve 2D. Zaokrouhlovací chyba jako změna původních přímek a velikost posunu průsečíku při dobře a při špatně podmíněné soustavě. Numerický příklad. Zopakovat jeden krok Gauss-Jordanovy eliminace – obsahuje dělení a odčítání. Může se stát, že bych dělil nulou nebo odčítal téměř totožná čísla. Techniky pivotáže – úplný a částečný výběr pivota. Varianty eliminace – LU rozklad, LLT rozklad, QR rozklad. Ukázka řešení soustavy pomocí LU rozkladu. Vlastní nalezení rozkladu, přímý a zpětný chod. Technika ukládání faktorů místo prvků původní matice. Použití rozkladů při opakovaném Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 30
řešení téže soustavy s různými pravými stranami. Řešení soustav s SPD maticí – praktické důsledky pro výběr numerické metody a její stabilitu. Řídké matice Pojem řídké matice, jak v praxi vzniká. Ukázka MKP sítě a vzniklé matice. Souvislost mezi topologií sítě a strukturou matice. Problém při řešení řídkých soustav – vznik zaplnění. Demonstrace na extrémním příkladu šípové matice – zároveň demonstrace vhodnosti přeuspořádání řídké matice. Reprezentace struktury matice grafem. Použití algoritmů teorie grafů pro minimalizaci zaplnění – metody obálkové a pásové, algoritmus minimálního stupně, algoritmus CuthillMcGee. Další matice vznikající při aplikaci numerických metod – pásové, blokové, indefinitní se speciální strukturou, vícediagonální atp.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 31
Pracovní list AM2 – lekce č. 9 Řešení nelineárních rovnic Úkol 1: Pomocí zabudované funkce MS Excelu vypočtěte hodnotu odmocniny ze dvou a zobrazte ji na 7 destinných míst. √2 = Úkol 2: Určete hodnotu √2 metodou půlení intervalu. Jako počáteční interval zvolte (0,2). Pravidla: je-li C^2 < 2, bereme v dalším kroku interval (c,b). Je-li c^2 > 2, bereme v dalším kroku interval (a,c).
č. kroku 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
a 0
c 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
b 2
a^2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
c^2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
b^2 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
chyba (c-√2) 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 32
Úkol 3: Určete hodnotu √2 Newtonovou metodou. Pravidlo: x_n+1 = (a/x_n+x_n)/ 2. a = 2, x_0 = 1
č. kroku 0 1 2 3 4 5 6 7 8 9
x_n 1
chyba (x_n√2) 1
Úkol 4: Vykreslete graf závislosti chyby obou metod na iteračním kroku.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 33
Pracovní list AM2 – lekce č. 11 Matlab/Octave Úkol 1 – Matlab jako kalkulačka: Vypočtěte, jak dlouho bude padat těleso volným pádem bez odporu prostředí z výšky 15m. Úkol 2 – Použití proměnných: Jelikož budeme hodnotu gravitačního zrychlení dále používat, uložte ji do proměnné g. Úkol 3 – Definice vlastních funkcí v Matlabu: Definujte funkci casVolnehoPadu, jejímž argumentem bude výška h a výsledkem čas volného pádu z výšky h. Úkol 4 – Kreslení grafů funkcí v Matlabu: Vykreslete graf funkce casVolnehoPadu pro rozsah výšek 0 – 20 m. Úkol 5 – Vektory a matice v Matlabu: Obchod prodává zboží za ceny (za ks / 1 kg) uvedené v následující tabulce: rohlík
2 Kč
houska
3 Kč
chléb
30 Kč
máslo
35 Kč
pivo
20 Kč
brambory
12 Kč
jablka
25 Kč
rajčata
45 Kč
banány
32 Kč
okurky
15 Kč
Za nákup je možné platit v Kč, EUR, USD nebo GBP. Kurzy měn ke Kč jsou: EUR
1:27.6
USD
1:22.3
GBP
1:34.8
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 34
Zákazník má za úkol koupit: rohlík
10 ks
houska
10 ks
chléb
1 ks
máslo
2 ks
pivo
10 ks
brambory
5 kg
jablka
2 kg
rajčata
1 kg
banány
0.5 kg
okurky
2 ks
1. Spočtěte cenu nákupu v Kč. 2. Vytvořte vektor, který má na i-tém místě cenu nákupu v i-té měně. 3. Vytvořte matici mxn, která má v i-tém sloupci ceník v i-té měně. Úkol 6 – Výpočty s maticemi v Matlabu: Jsou dány naměřené teploty v několika evropských metropolích: 23. 11.
24. 11.
25. 11.
26. 11.
27. 11.
28. 11.
Londýn
10 °C
9 °C
9 °C
10 °C
11 °C
10 °C
Praha
6 °C
6 °C
5 °C
4 °C
3 °C
4 °C
Řím
19 °C
20 °C
18 °C
17 °C
21 °C
20 °C
Zapište hodnoty do matice T. Pomocí této matice a funkcí max(), min() a sum() vytvořte vektor s maximálními denními teplotami, vektor s minimálními denními teplotami a vektor s průměrnými denními teplotami pro každé místo.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 35
Pracovní list AM2 – lekce č. 13 Lineární algebra – různá témata Úkol 1 – Sarusovo pravidlo: Pomocí Sarusova pravidla vypočtěte determinanty:
Úkol 2 – Výpočet determinantu rozvojem: Vypočtěte následující determinant rozvojem podle vhodného řádku/sloupce. Případně proveďte povolené úpravy pro jeho snadnější výpočet. =
Úkol 3 – Matice jako transformace vektoru: Vypočtěte hodnotu součinu matice a vektoru.
Úkol 4 – Výpočet vlastních čísel matice: Vypočtěte vlastní čísla této matice.
λ1 = λ2 = Úkol 5 – Výpočet vlastních vektorů matice: Pro matici z úkolu 4 vypočtěte pro každé její vlastní číslo λ1, λ2 k němu příslušný vlastní vektor.
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Severýn, Ph.D.: Aplikovaná matematika II.
strana 36
v1 =
v2 =
Vzdělávání pro efektivní transfer technologií a znalostí v přírodovědných a technických oborech, reg. číslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Sever´yn, Ph.D.: Aplikovan´a matematika II.
ˇ SEN ˇ ´I RE ´ ´ICH NELINEARN ´ ALGEBRAICKYCH ROVNIC
strana 37
ˇ 3.–4. roˇ cn´ık SS
AP 180 min. n. lekce
Prostˇred´ı bˇeˇzn´a tˇr´ıda, l´epe vˇsak poˇc´ıtaˇcov´a uˇcebna s nainstalovan´ym MS EXcelem ˇci jin´ym tabulkov´ym kalkul´atorem.
Hlavn´ı myˇslenka lekce Vˇetˇsinu algebraick´ych rovnic nelze vyˇreˇsit exaktnˇe“ ” — symbolicky. Nutn´e je numerick´e — a tud´ıˇz pˇribliˇzn´e — ˇreˇsen´ı.
Z´ asadn´ı ot´ azka/y lekce √ Jak vypoˇc´ıtat hodnotu 2? Jak souvis´ı ˇreˇsen´ı rovnic s hled´an´ım koˇren˚ u funkc´ı? Jak ohraniˇcit koˇren? Jak funguje metoda p˚ ulen´ı intervalu a dalˇs´ı metody?
Pˇr´ıprava lekce bˇeˇzn´a pˇr´ıprava uˇcebny
Vstupn´ı poˇ zadavky na ˇ z´ aky ˇ matematematiky, Z´aklady SS u´pravy v´yraz˚ u, porozumnˇen´ı pojmu funkce. Znalost z´aklad˚ u pr´ace s MS Excelem.
Vazba na jin´ e lekce Vhodn´e zaˇradit po lekci Poˇc´ıt´an´ı ” numerick´e a symbolick´e“ a pˇred lekc´ı Hled´an´ı extr´em˚ u ” funkc´ı.“
Vzdˇel´av´an´ı pro efektivn´ı transfer technologi´ı a znalost´ı v pˇr´ırodovˇedn´ych a technick´ych oborech, reg. ˇc´ıslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Sever´yn, Ph.D.: Aplikovan´a matematika II.
strana 38
1) Motivace
C´ıl aktivity Uk´azat, ˇze ne vˇsechny rovnice lze ˇreˇsit symbolicky.
10 min.
C´ılem je sezn´amit studenty se zp˚ usoby ˇreˇsen´ı neline´arn´ıch rovnic a zejm´ena je odprostit od typick´ych stˇredoˇskolsk´ych pˇr´ıklad˚ u, kter´e m˚ uˇzeme v drtiv´e vˇetˇsinˇe vyˇreˇsit analyticky. Naopak zd˚ uraznit, ˇze analyticky je ˇreˇsiteln´a pouze velmi omezen´a mnoˇzina u´loh, zat´ımco naprost´a vˇetˇsina neline´arn´ıch rovnic analyticky ˇreˇsit nelze. Na praktick´ych pˇr´ıkladech uk´aˇzeme, jak´e u´lohy neum´ıme snadno vyˇreˇsit s dosavadn´ımi znalostmi a uk´aˇzeme moˇznosti vybran´ych numerick´ych metod. D´ale studenty motivujeme t´ım, ˇze ne vˇzdy potˇrebujeme zn´at v´ysledek zcela pˇresnˇe, ale postaˇc´ı n´am vˇedˇet, jak pˇresn´y (nebo jak nepˇresn´y) v´ysledek m´ame.
Pom˚ ucky nejsou nutn´e
Vzdˇel´av´an´ı pro efektivn´ı transfer technologi´ı a znalost´ı v pˇr´ırodovˇedn´ych a technick´ych oborech, reg. ˇc´ıslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Sever´yn, Ph.D.: Aplikovan´a matematika II.
strana 39
2) Evokace Podrobn´y n´avrh na organizaci t´eto aktivity je uveden v ˇc´asti 5.1) tohoto metodick´eho listu. C´ıl aktivity Pomoc´ı jednoduch´ych pˇr´ıklad˚ u nav´est studenty na odvozen´ı jednoduch´e numerick´e metody.
60 min.
Pom˚ ucky poˇc´ıtaˇce s MS Excelem
Vzdˇel´av´an´ı pro efektivn´ı transfer technologi´ı a znalost´ı v pˇr´ırodovˇedn´ych a technick´ych oborech, reg. ˇc´ıslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Sever´yn, Ph.D.: Aplikovan´a matematika II.
strana 40
3) Uvˇ edomˇ en´ı
C´ıl aktivity Vyloˇzit z´akladn´ı numerick´e metody pro ˇreˇsen´ı neline´arn´ıch rovnic
Prov´est v´yklad z´akladn´ıch metod pro ˇreˇsen´ı neline´arn´ıch rovnic o jedn´e nezn´am´e. Jelikoˇz jde o relativnˇe klasickou partii numerick´e matematiky, je moˇzno jako z´aklad v´ykladu pouˇz´ıt t´emˇeˇr libovolnou uˇcebnici dan´eho oboru. Struˇcn´y pˇrehled metod vhodn´ych pro v´yklad v tomto kurzu je v ˇc´astech 5.2) a 5.3 tohoto metodick´eho listu.
100 min.
Pom˚ ucky pozn´amky stuent˚ u z minul´e aktivity
Vzdˇel´av´an´ı pro efektivn´ı transfer technologi´ı a znalost´ı v pˇr´ırodovˇedn´ych a technick´ych oborech, reg. ˇc´ıslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Sever´yn, Ph.D.: Aplikovan´a matematika II.
strana 41
4) Reflexe
C´ıl aktivity Uˇcitel spoleˇcnˇe se studenty shrne z´ıskan´e poznatky.
10 min.
Kromˇe shrnut´ı probran´eho uˇciva — tedy neumerick´ych metod pro ˇreˇsen´ı neline´arn´ıch algebraick´ych rovnic o jedn´e nezn´am´e — doporuˇcujeme vˇenovat se i obecn´ym pojm˚ um z numerick´e matematiky: konvergence metody, krok, tolerance, odhad chyby atp. D˚ uvodem je skuteˇcnost, ˇze pro vˇetˇsinu student˚ u jde o prvn´ı setk´an´ı s numerick´ymi metodami a nemaj´ı tyto pojmy dostateˇcnˇe zaˇzit´e. D´ale je vhodn´e zd˚ uraznit, ˇze praktick´e ´ulohy technick´e, ekonomick´e i pˇr´ırodovˇedn´e jsou zpravidla znaˇcnˇe sloˇzitˇejˇs´ı neˇz u´lohy ze stˇredoˇskolsk´ych uˇcebnic. Numerick´e ˇreˇsen´ı neline´arn´ıch rovnic je tak d˚ uleˇzit´e samo o sobˇe i jako souˇc´ast dalˇs´ıch metod.
Pom˚ ucky Vlastn´ı pozn´amky ˇz´ak˚ u
Vzdˇel´av´an´ı pro efektivn´ı transfer technologi´ı a znalost´ı v pˇr´ırodovˇedn´ych a technick´ych oborech, reg. ˇc´ıslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Sever´yn, Ph.D.: Aplikovan´a matematika II.
strana 42
5) Probl´ emov´ y v´ yklad
5.1) Motivaˇ cn´ı u ´lohy Zaˇcnˇeme se zd´anlivˇe trivi´aln´ımi pˇr´ıklady: x2 = 2,
x = 2 sin
π 4
d = |~u| = |(1, 1)|.
,
√ √ Ve vˇsech pˇr´ıpadech √ je v´ysledkem 2. Jak ale urˇ c ´ ıme hodnotu 2? Z´akladn´ı pˇredstavu m´ame, √ √ nebot’ v´ıme, ˇze 1 = 1 < 2 < 4 = 2, jak ale z´ısk´ame pˇresnˇejˇs´ı hodnotu, kdyˇz po ruce nen´ı kalkulaˇcka? • Jak to vyˇreˇs´ı truhl´aˇr, kter´y bude potˇrebovat uˇr´ıznout desku, kter´a m´a tvar pravo´uhl´eho troj´uheln´ıku se stranou 1 m? (Zde jeˇstˇe snadno – sestroj´ı odvˇesny s pˇresnost´ı dle prav´ıtka cca 0.5 mm a dor´ysuje pˇreponu 1414 mm = 1.414 m.) • Jak to vyˇreˇs´ı obsluha stroje, kter´a potˇrebuje zadat na ˇc´ıseln´e kl´avesnici hodnotu v milimetrech s pˇresnost´ı na 2 des. m´ısta, tedy 1414,21 mm = 1.41421 m? Jednu metodu si m˚ uˇzeme odvodit z grafick´eho n´ahledu naˇseho prvn´ıho probl´emu, tedy x2 = 2. To m˚ uˇzeme zapsat pomoc´ı funkce y(x) = x2 − 2 a probl´em se zmˇen´ı ve hled´an´ı bodu x, pro kter´y y(x) = 0, viz graf 1.
2
y = x2 - 2
1.5 1 0.5 y -2
-1.5
-1
-0.5
0
0
0.5
1
1.5
2
-0.5 -1 -1.5 -2 x
Obr´azek 1: Druh´a mocnina – parabola. Existenci dvou ˇreˇsen´ı nechme zat´ım stranou. Vyuˇzijme naˇseho odhadu zm´ınˇen´eho v´yˇse a omezme se na interval [1, 2]. Vˇsimneme si, ˇze funkce na tomto intervalu mˇen´ı v hledan´em bodˇe znam´enko. Rozdˇelme nyn´ı interval na dva [1, 1.5] a [1.5, 2.0] a pod´ıvejme se opˇet, ve kter´em z nich mˇen´ı funkce znam´enko – k tomu n´am postaˇc´ı vyj´adˇrit si hodnoty v krajn´ıch bodech
Vzdˇel´av´an´ı pro efektivn´ı transfer technologi´ı a znalost´ı v pˇr´ırodovˇedn´ych a technick´ych oborech, reg. ˇc´ıslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Sever´yn, Ph.D.: Aplikovan´a matematika II.
strana 43
interval˚ u a porovnat znam´enka. Vid´ıme, ˇze y(1) = 1 − 2 = −1 a y(1.5) = 2.25 − 2 = 0.25, a omez´ıme se tedy na prvn´ı z interval˚ u. Tento postup m˚ uˇzeme opakovat tak dlouho, aˇz interval omez´ıme natolik, ˇze se jeho krajn´ı body budou liˇsit o zanedbatelnou hodnotu. Postup nazveme metodou p˚ ulen´ı intervalu nebo tak´e metodou bisekce. Praktick´ e cviˇ cen´ı. V´yˇse popsan´y pˇr´ıklad udˇel´ame spoleˇcnˇe se studenty napˇr. v Excelu. Postaˇc´ı n´am znalost vkl´ad´an´ı a editace vzorc˚ u a funkce IF. V´ysledky metody m˚ uˇzeme shrnout do pˇrehledn´e tabulky, viz tabulka 1. V pˇr´ıpadˇe zad´an´ı pro obsluhu stroje ukonˇc´ıme v´ypoˇcet, kdyˇz se ˇc´ıslice na 5. des. m´ıstˇe krajn´ıch bod˚ u a a b d´ale nemˇen´ı. Jako v´ysledek vezmeme stˇred tohoto, tedy bod x = c = 1.414213. D´ale nech´ame studenty zkouˇset r˚ uzn´e volby poˇc´ateˇcn´ıho intervalu. Pokud interval zvˇetˇs´ıme, budeme pozorovat zmˇeny v poˇctu iterac´ı, po kter´ych je v´ysledek dostateˇcnˇe pˇresn´y. Co se d´ale stane, kdyˇz • zvol´ıme interval [3, 10], (v tomto intervalu neexistuje ˇreˇsen´ı) • zvol´ıme interval [−3, 3], (v tomto intervalu ˇreˇsen´ı existuje, ale hodnoty v obou bodech jsou kladn´e, tzn. nemˇen´ı znam´enko a my neum´ıme vybrat dalˇs´ı interval) • zvol´ıme interval [−5, 0]? √ (budeme se bl´ıˇzit ke druh´emu ˇreˇsen´ı, tj − 2) Tyto poznatky shrneme v kapitole . Ukaˇzme si nyn´ı zp˚ usob, jak vyˇreˇsit n´aˇs probl´em rychleji. Pouˇzijme iteraˇcn´ı vztah s 1 xi + , xi+1 = 2 xi
(1)
kde s je v naˇsem pˇr´ıpadˇe 2 (argument odmocniny). Zvol´ıme na zaˇc´atku nˇejak´y odhad, v´ıme ˇze z intervalu [1, 2], takˇze napˇr´ıklad x0 = 1.5. Tuto metodu pozdˇeji zobecn´ıme a nazveme Newtonova. Vzorec (1) potom i odvod´ıme. ´ Praktick´ e cviˇ cen´ı. Ulohu, ve kter´e pouˇzijeme vztah (1), m˚ uˇzeme opˇet snadno vyˇreˇsit pomoc´ı Excelu. V´ysledky shrneme do tabulky 2. Vid´ıme, ˇze dostateˇcnˇe pˇresn´y v´ysledek pro obsluhu stroje m´ame jiˇz ve 4. kroce. Abychom mˇeli pˇredstavu o chybˇe, nechali jsme si spoˇc´ıtat do tˇret´ıho sloupeˇcku i rozd´ıl od pˇresn´e“ hodnoty. Samozˇrejmˇe i tato pˇresn´a“ hodnota je v ” ” poˇc´ıtaˇci reprezentov´ana pouze s koneˇcnou pˇresnost´ı (v double na 16 des. m´ıst). Jak je vidˇet tak v 6. kroku jsou jiˇz hodnoty v Excelu totoˇzn´e, tj. chyba nulov´a. D´ale nech´ame studenty zkouˇset r˚ uzn´e volby poˇc´ateˇcn´ıho odhadu x0 . Co se d´ale stane, kdyˇz • budeme x0 zvyˇsovat (tˇreba aˇz k 109 ), (metoda bude i nad´ale fungovat, pouze skonˇc´ıme ve v´ıce kroc´ıch) • budeme se s odhadem x0 bl´ıˇzit k nule (tˇreba aˇz k 10−9 ), (poˇcet krok˚ u bude st´ale nar˚ ustat, pro x0 = 0 metoda selˇze kv˚ uli dˇelen´ı nulou) Vzdˇel´av´an´ı pro efektivn´ı transfer technologi´ı a znalost´ı v pˇr´ırodovˇedn´ych a technick´ych oborech, reg. ˇc´ıslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Sever´yn, Ph.D.: Aplikovan´a matematika II.
i 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
a 0 1 1 1.25 1.375 1.375 1.40625 1.40625 1.414062 1.414062 1.414062 1.414062 1.414062 1.414062 1.414184 1.414184 1.414184 1.414199 1.414207 1.414211
c 1 1.5 1.25 1.375 1.4375 1.40625 1.421875 1.414062 1.417968 1.416015 1.415039 1.414550 1.414306 1.414184 1.414245 1.414215 1.414199 1.414207 1.414211 1.414213
b 2 2 1.5 1.5 1.5 1.4375 1.4375 1.421875 1.421875 1.417968 1.416015 1.415039 1.414550 1.414306 1.414306 1.414245 1.414215 1.414215 1.414215 1.414215
y(a) -
strana 44
y(c) + + + + + + + + + + -
y(b) + + + + + + + + + + + + + + + + + + + +
ˇ e oznaˇceny vyb´ıran´e intervaly. Tabulka 1: Metoda p˚ ulen´ı intervalu pro funkci y(x) = x2 − 2. Zlutˇ • zvol´ıme x0 z´apornˇe? √ (budeme se bl´ıˇzit ke druh´emu ˇreˇsen´ı, tj − 2) Tyto poznatky shrneme v kapitole .
5.2) Numerick´ e metody Popiˇsme si nyn´ı obecnˇe metody, kter´e jsme pouˇzili v u´vodn´ı ˇc´asti. Zobecnˇeme si nˇekter´e vztahy a ukaˇzme vlastnosti metod. √ i xi |xi − 2| 0 1.0 0.41 1 1.5 8.58E-2 2 1.416666 2.45E-3 3 1.414215 2.12E-6 4 1.414213 1.59E-12 5 1.414213 0 Tabulka 2: Newtonova metoda pro y(x) = x2 − 2.
Vzdˇel´av´an´ı pro efektivn´ı transfer technologi´ı a znalost´ı v pˇr´ırodovˇedn´ych a technick´ych oborech, reg. ˇc´ıslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Sever´yn, Ph.D.: Aplikovan´a matematika II.
strana 45
Mˇejme funkci f : R → R definovanou na intervalu [a, b]. Hledejme nyn´ı x ∈ [a, b] takov´e, aby platilo f (x) = 0, tedy hledejme koˇren t´eto rovnice. Abychom zajistili, ˇze hledan´e ˇreˇsen´ı existuje, budeme uvaˇzovat, ˇze jsou splnˇeny pˇrepoklady n´asleduj´ıc´ı vˇety: Vˇ eta. Necht’ plat´ı, ˇze: 1. funkce f (x) je spojit´a na intervalu [a.b], 2. f (a) · f (b) < 0, pak na intervalu [a, b] existuje alespoˇn jedno ˇreˇsen´ı x rovnice f (x) = 0. Naˇse numerick´e metody budou vˇzdy tvoˇreny nˇejak´ym iteraˇcn´ım procesem. Ten mus´ıme v urˇcit´y moment ukonˇcit. Ukonˇcovac´ı krit´erium m˚ uˇzeme volit r˚ uznˇe: • absolutn´ı |xi − xi−1 | ≤ (chceme napˇr. urˇcit´y poˇcet des. m´ıst), i−1 | ≤ (chceme algoritmus ukonˇcit, kdyˇz se tento rozd´ıl d´ale procentu´alnˇe • relativn´ı |xi|x−x i−1 | nezmenˇsuje),
• v krajn´ım pˇr´ıpadˇe pouˇzijeme |f (xi )| ≤ , coˇz algoritmus tak´e ukonˇc´ı, ale nevypov´ıd´a nic o tom, jak jsme daleko od pˇresn´eho ˇreˇsen´ı. ˇ ıslu ˇr´ık´ame tolerance (absolutn´ı, relativn´ı) a v prvn´ıch dvou pˇr´ıpadech odpov´ıd´a pˇresnosti, s C´ jakou jsme obdrˇzeli v´ysledek (nebo sp´ıˇse chybˇe, jak´e jsme se dopustili). Pokud je r koˇrenem rovnice, tzn. f (r) = 0, a naˇse aproximace xi → r se mu bude bl´ıˇzit, budeme ˇr´ıkat, ˇze metoda konverguje. Metoda p˚ ulen´ı intervalu (bisekce) Mˇejme zadan´y poˇc´ateˇcn´ı interval [a, b] a funkci f (x). Rozdˇel´ıme interval na poloviny pomoc´ı stˇredu c = a+b a vypoˇc´ıt´ame hodnoty f (a), f (c) a f (b). Vyhodnot´ıme nerovnosti f (a)·f (c) < 0 2 a f (c) · f (b) < 0 a podle toho, kter´a je splnˇena vybereme nov´y interval [a, c], resp. [c, b]. Toto opakujeme, dokud rozd´ıl krajn´ıch bod˚ u a a b nen´ı dostateˇcnˇe mal´y, pak pouˇzijeme nˇekter´e z v´yˇse jmenovan´ych ukonˇcovac´ıch krit´eri´ı, kde xi = ci . Algoritmus: 1. poˇc´ateˇcn´ı volba [a, b] a , je vhodn´e zkontrolovat f (a) · f (b) < 0 2. v´ypoˇcet stˇredu c =
a+b 2
3. v´ypoˇcet f (c), pokud f (c) = 0 konec 4. pokud f (a) · f (c) < 0 → b := c jinak pokud f (c) · f (b) < 0 → a := c 5. ukonˇcovac´ı krit´erium: pokud b − a ≤ → x = jinak zpˇet na 2
a+b 2
konec
Vzdˇel´av´an´ı pro efektivn´ı transfer technologi´ı a znalost´ı v pˇr´ırodovˇedn´ych a technick´ych oborech, reg. ˇc´ıslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Sever´yn, Ph.D.: Aplikovan´a matematika II.
strana 46
V´yhodou metody je jej´ı jednoduchost a robustnost ve smyslu, ˇze vˇzdy budeme konvergovat k jednomu z ˇreˇsen´ı, pokud na intervalu [a, b] nˇejak´e existuje. Neklade ˇz´adn´e dalˇs´ı poˇzadavky na funkci f (x) mimo v´yˇse uveden´e pˇredpoklady. Konvergence ovˇsem m˚ uˇze b´yt velice pomal´a. Metoda se ˇcasto pouˇz´ıv´a pro poˇc´ateˇcn´ı odhad (tzv. startovac´ı metoda), naˇceˇz se aplikuje jin´a zpˇresˇnuj´ıc´ı metoda (m˚ uˇze b´yt zas naopak m´enˇe robustn´ı), od kter´e ale ˇz´ad´ame rychlejˇs´ı konvergenˇcn´ı proces. Pokud o funkci f (x) v´ıme tak m´alo, ˇze neum´ıme ani odhadnout nˇejak´y poˇc´ateˇcn´ı interval, je moˇzn´e pokusit se napoˇc´ıtat uspoˇr´adanou mnoˇzinu hodnot v r˚ uzn´ych bodech a pot´e v t´eto vyhledat zmˇenu znam´enka. Newtonova metoda Pozn´amka. Na zaˇc´atku bude pro nˇekter´e studenty pravdˇepodobnˇe potˇreba vysvˇelit pojem derivace. D˚ uleˇzit´a je pro nˇe pˇredevˇs´ım geometrick´a pˇredstava smˇernice teˇcny. Newtonova metoda, nebo tak´e metoda teˇcen vych´az´ı z Taylorova rozvoje funkce f (x): 1 f (x) = f (x0 ) + f 0 (x0 )(x − x0 ) + f 00 (ξ)(x − x0 )2 , 2
ξ ∈ [x0 , x]
(2)
kde x0 leˇz´ı v bl´ızkosti“ bodu x. Posledn´ı ˇclen vyjadˇruje nezn´amou chybu, o kter´e pouze v´ıme, ” ˇze je z´avisl´a na druh´e derivaci f 00 (x) a druh´e mocninˇe vzd´alenosti x a x0 . Chybov´y ˇclen pro ted’ zanedbejme a dosad’me do ˇreˇsen´e rovnice f (x) = 0: 0 = f (x0 ) + f 0 (x0 )(x − x0 ) f (x0 ) x = x0 − 0 , f (x0 )
(3) (4)
z ˇcehoˇz pot´e m˚ uˇzeme vytvoˇrit cel´y iteraˇcn´ı proces xi+1 = xi −
f (xi ) . f 0 (xi )
(5)
Obecnˇe m˚ uˇzeme formulovat nˇekolik pˇredpoklad˚ u konvergence Newtonovy metody: • nenulovost prvn´ı derivace na zkouman´em intervalu: f 0 (x) 6= 0, ∀x ∈ [a, b], uˇze na koneˇcn´em • druh´a derivace je omezen´a, tj. zanedban´y ˇclen z Taylorova rozvoje nem˚ intervalu omezenˇe r˚ ust: ∃C > 0 : |f 00 (x)| < C, ∀x ∈ [a, b], • poˇc´ateˇcn´ı odhad x0 je dostateˇcnˇe bl´ızko hledan´emu koˇrenu. Posledn´ı pˇredpoklad je hodnˇe neurˇcit´y – jiˇz v´ıme, ˇze metoda nemus´ı konvergovat v˚ ubec a nebo dokonce nalezne jin´y koˇren. Specifikovat, co znamen´a dostateˇcnˇe bl´ızko“ je proto obt´ıˇzn´e, viz ” pˇr´ıklad v . Algoritmus: 1. poˇc´ateˇcn´ı volba x0 a Vzdˇel´av´an´ı pro efektivn´ı transfer technologi´ı a znalost´ı v pˇr´ırodovˇedn´ych a technick´ych oborech, reg. ˇc´ıslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Sever´yn, Ph.D.: Aplikovan´a matematika II.
2. v´ypoˇcet xi+1 = xi −
strana 47
f (xi ) f 0 (xi )
3. ukonˇcovac´ı krit´erium: pokud |xi+1 − xi | ≤ konec (v´ysledek xi+1 ) jinak zpˇet na 2 Vidˇeli jsme v ´uvodn´ı ´uloze, ˇze v porovn´an´ı s metodou bisekce Newtonova metoda konvergovala velmi rychle. Nev´yhodou ovˇsem je v´yznamn´a citlivost na poˇc´ateˇcn´ım odhadu x0 . Vyzkouˇseli jsme tak´e, ˇze metoda m˚ uˇze zcela selhat a to pˇri dˇelen´ı nulou. To nast´av´a, pokud je derivace ve jmenovateli nulov´a. Geometricky si toto m˚ uˇzeme snadno pˇredstavit – pohybujeme se vˇzdy ve smˇeru teˇcny a hled´ame jej´ı pr˚ useˇc´ık s osou x; pokud se derivace bl´ıˇz´ı k nule, teˇcna se bude bl´ıˇzit konstantn´ı funkci, kter´a s osou x nem´a ˇz´adn´y pr˚ useˇc´ık. Uk´ azka probl´ emov´ ych pˇr´ıklad˚ u ˇ sme Newtonovou metodou ´ulohu f (x) = x3 − 2x2 − 11x + 12 = 0. Funkce Pˇr´ıklad ˇ c.1: Reˇ je polynom, jehoˇz koˇreny jsou re´aln´a a dokonce cel´a ˇc´ısla: -3, 1, 4. Vyzkouˇsejme nyn´ı r˚ uzn´y poˇc´ateˇcn´ı odhad x0 a uvid´ıme, jak je v´ysledek xn citliv´y na jeho volbu. V´ysledky shrneme do tabulky 3. Vid´ıme, ˇze zmˇenou poˇc´ateˇcn´ıho bodu aˇz na 5. a v posledn´ım pˇr´ıpadˇe dokonce 9. des. m´ıstˇe, m˚ uˇzeme dokonvergovat k r˚ uzn´ym koˇren˚ um. x0 2.35287527 2.35284172 2.35283735 2.352836327 2.352836323
xn 4 -3 4 -3 1
Tabulka 3: Citlivost Newtonovy metody na poˇc´ateˇcn´ı odhad pro probl´em f (x) = x3 − 2x2 − 11x + 12 = 0. ˇ sme Newtonovou metodou u´lohu f (x) = x3 −2x+2 = 0. Zvolme poˇc´ateˇcn´ı Pˇr´ıklad ˇ c.2: Reˇ odhad x0 = 0 a pozorujme, co se bude d´ıt. V tomto pˇr´ıpadˇe neskonˇc´ı iteraˇcn´ı proces ani jedn´ım ze zp˚ usob˚ u, kter´y jsme si doposud uvedli, ale dojde k jeho zacyklen´ı, viz obr´azek 2. Posloupnost xi vypad´a n´asledovnˇe 0, 1, 0, 1, 0, 1, ... Druh´ a odmocnina Odvod’me nyn´ı sl´ıbenou formuli pro v´ypoˇcet druh´e odmocniny. Nejprve derivujme f (x) = x2 − s, f 0 (x) = 2x. Nyn´ı dosad´ıme do do vztahu (5) a dostaneme xi+1
x2 − s 1 s 1 = xi − i = xi + = 2xi 2 2xi 2
s xi + . xi
(6)
Takto m˚ uˇzeme rychle spoˇc´ıtat druhou odmocninu z liboboln´eho kladn´eho ˇc´ısla s > 0. Obdobnˇe m˚ uˇzeme pokraˇcovat napˇr´ıklad pro tˇret´ı odmocninu. Vzdˇel´av´an´ı pro efektivn´ı transfer technologi´ı a znalost´ı v pˇr´ırodovˇedn´ych a technick´ych oborech, reg. ˇc´ıslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Sever´yn, Ph.D.: Aplikovan´a matematika II.
strana 48
y=x3-2x+2 y=x y=-2x+2
4 3.5 3 2.5 2 1.5 1 0.5
y -2
-1.5
-1
-0.5
0 -0.5
0
0.5
1
1.5
2
-1 -1.5 -2
x
Obr´azek 2: Ilustrace zacyklen´ı Newtonovy metody. Metoda seˇ cen Nev´yhodou v nˇekter´ych pˇr´ıpadech tak´e m˚ uˇze b´yt nutn´a znalost derivace. Tu nemus´ıme zn´at, nemus´ıme ji umˇet spoˇc´ıtat, nebo ji v˚ ubec nen´ı moˇzn´e urˇcit (funkce nemus´ı b´yt vˇzdy d´ana pˇredpisem!). Takovou situaci vyˇreˇs´ıme nahrazen´ım derivace jej´ı aproximac´ı – teˇcnu nahrad´ıme seˇcnou f (xi ) − f (xi−1 ) f 0 (xi ) ≈ (7) xi − xi−1 Vezmeme tedy dva bl´ızk´e body, ve kter´ych zn´ame funkˇcn´ı hodnotu a proloˇz´ıme jimi pˇr´ımku (seˇcnu). Z definice derivace v´ıme, ˇze pokud budeme k sobˇe tyto dva body limitnˇe pˇribliˇzovat, dostaneme teˇcnu (tedy derivaci). Koneˇcn´y pˇredpis metody je xi+1 = xi − f (xi )
xi − xi−1 . f (xi ) − f (xi−1 )
(8)
Algoritmus je analogick´y algoritmu Newtonovy metody s t´ım rozd´ılem, ˇze na zaˇc´atku potˇrebujeme dva body x0 a x1 , pomoc´ı kter´ych vytvoˇr´ıme prvn´ı seˇcnu. Pouˇz´ıv´ame tedy dvˇe pˇredchoz´ı aproximace nam´ısto jedn´e. Praktick´ e cviˇ cen´ı. Navrhnˇeme v Excelu i metodu seˇcen pro n´aˇs probl´em ˇreˇsen´y v u´vodu. Nav´ıc√m˚ uˇzeme √ dodˇelat pro vˇsechny metody sloupeˇcky, kde budeme mˇeˇrit aktu´aln´ı chybu, tj. |xi − 2|, kde 2 nech´ame spoˇc´ıtat Excel napˇr. pomoc´ı SQRT. Chybu pot´e m˚ uˇzeme vyn´est do grafu, viz obr. 3.
Vzdˇel´av´an´ı pro efektivn´ı transfer technologi´ı a znalost´ı v pˇr´ırodovˇedn´ych a technick´ych oborech, reg. ˇc´ıslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Sever´yn, Ph.D.: Aplikovan´a matematika II.
strana 49
1 Newtonova metoda Metoda bisekce Metoda secen
0.01 0.0001
chyba
1e-06 1e-08 1e-10 1e-12 1e-14 1e-16 5
10
15
20 iterace
25
30
35
Obr´azek 3: Konvergenˇcn´ı graf pouˇzit´ych metod. Porovnejte rychlost konvergence.
5.3) Samomastatn´ au ´loha Uvaˇzujme p´ad tˇelesa o hmotnosti m z v´yˇsky h0 , s t´ım, ˇze na tˇeleso p˚ usob´ı pouze t´ıhov´a s´ıla FG = mg a odporov´a s´ıla vzduchu FO = kv, z´avisl´a na rychlosti tˇelesa (pro jednoduchost pouze line´arnˇe). Sestavme pohybovou rovnici pro toto tˇeleso F = FG − FO dv = mg − kv m dt dv = g − αv, dt
α=
k m
Differenci´aln´ı rovnici (9) m˚ uˇzeme snadno vyˇreˇsit separac´ı promˇenn´ych g v(t) = 1 − e−αt , α
(9)
(10)
kde jsme pouˇzili poˇc´ateˇcn´ı podm´ınku pro rychlost v0 = 0 a dopoˇc´ıtali integraˇcn´ı konstantu. Integrac´ı vztahu (10) z´ısk´ame dr´ahu s(t) a opˇet uvaˇzujeme nulovou dr´ahu na poˇc´atku g s(t) = 2 αt + e−αt − 1 . (11) α Vztah pro v´yˇsku je jiˇz trivi´aln´ı, tj. odeˇcteme dr´ahu od poˇc´ateˇcn´ı v´yˇsky g h(t) = h0 + 2 1 − αt − e−αt . α
(12)
Pozn´amka. Odvozen´ı nen´ı potˇreba ˇreˇsit se studenty detailnˇe, nebot’ vˇetˇsina bude m´ıt zat´ım probl´em s derivov´an´ım a integrov´an´ım. Je vˇsak dobr´e nast´ınit, odkud jsme k rovnici (12) pˇriˇsli.
Vzdˇel´av´an´ı pro efektivn´ı transfer technologi´ı a znalost´ı v pˇr´ırodovˇedn´ych a technick´ych oborech, reg. ˇc´ıslo CZ.1.07/2.3.00/45.0011
Doc. Ing. Otto Sever´yn, Ph.D.: Aplikovan´a matematika II.
strana 50
ˇ sme nyn´ı ot´azku: Za jak dlouho dopadne tˇeleso z v´yˇsky h0 na zem. To znamen´a, ˇreˇsme Reˇ u´lohu h(t) = 0, t =? (13) Toto je typick´y pˇr´ıklad pro aplikaci numerick´e metody pro ˇreˇsen´ı neline´arn´ı rovnice. Studenti maj´ı jiˇz vˇsechno potˇrebn´e pro zvl´adnut´ı t´eto u´lohy zcela samostatnˇe. M˚ uˇzeme jim zadat n´asleduj´ıc´ı data, pro lehce morbidn´ı pˇr´ıpad p´adu do Macochy: m = 80 kg (hmotnost dospˇel´e osoby), k = 0.1 kgs−1 (odpor vzduchu), g = 9.81 ms−2 (t´ıhov´e zrychlen´ı), h0 = 138.4 m (hloubka Macochy). V´ysledkem je t = 5.318s.
Vzdˇel´av´an´ı pro efektivn´ı transfer technologi´ı a znalost´ı v pˇr´ırodovˇedn´ych a technick´ych oborech, reg. ˇc´ıslo CZ.1.07/2.3.00/45.0011