Úvod Na čo nám je numerická matematika? Poskytuje nástroje na matematické riešenie problémov reálneho sveta (fyzika, biológia, ekonómia,...) Postup pri riešení problémov: 1. formulácia problému 2. formulácia matematického modelu (zjednodušenia) 3. numerické riešenie 4. reprezentácia výsledkov - p. 1/19
Príklad 1 Vypočítajte objem Zeme. - p. 2/19
Príklad 2 Vyrovnávanie teploty V nádobe je tekutina, ktorá v čase t 0 má teplotu y 0. Nech okolité prostredie má teplotu ȳ, nech y i je teplota tekutiny v čase t i = t 0 +iτ,τ > 0 (τ je časový interval). Aká je teplota tekutiny y i+1 v čase t i+1? y i+1 = y i +cτ(ȳ y i ), c-je konštanta úmernosti a vyjadruje vlastnosti materiálu, z ktorého je nádoba zostrojená (súčinitel tepelnej vodivosti, merné teplo,...). - p. 3/19
Príklad 2 Vyrovnávanie teploty V nádobe je tekutina, ktorá v čase t 0 má teplotu y 0. Nech okolité prostredie má teplotu ȳ, nech y i je teplota tekutiny v čase t i = t 0 +iτ,τ > 0 (τ je časový interval). Aká je teplota tekutiny y i+1 v čase t i+1? y i+1 = y i +cτ(ȳ y i ), c-je konštanta úmernosti a vyjadruje vlastnosti materiálu, z ktorého je nádoba zostrojená (súčinitel tepelnej vodivosti, merné teplo,...). Riešenie: y i+1 = cτȳ +(1 cτ)y i = cτȳ +(1 cτ)(cτȳ +(1 cτ)y i 1 ) = = cτȳ(1+(1 cτ))+(1 cτ) 2 y i 1 =... = = cτȳ(1+(1 cτ)+(1 cτ) 2 +...+(1 cτ) i )+(1 cτ) i+1 y 0 = = cτȳ 1 (1 cτ)i+1 1 (1 cτ) +(1 cτ) i+1 y 0 Ako vyzerá riešenie pre i? Fyzikálny význam? - p. 4/19
Ak 1 cτ < 1 = y i ȳ DÚ: Vyskúšajte vyriešit rovnicu y i+1 = y i +cτ(ȳ y i+1 ), - p. 5/19
Poznámka: Newtonov zákon ochladzovania. Podl a Newtonovho zákona ochladzovania rýchlost ochladzovania (rýchlost zmeny teploty y(t), tj. derivácia dy(t) dt, t je čas) je úmerná rozdielu teplôt vonkajšieho prostredia a telesa. Môžeme to vyjadrit rovnicou dy(t) (1) = c(ȳ y(t)). dt Ide o obyčajnú diferenciálnu rovnicu s počiatočnou podmienkou (2) y(t 0 ) = y 0. Budeme sa snažit vypočítat vývoj teploty tekutiny bez toho, aby sme vedeli niečo o riešení diferenciálnych rovníc. - p. 6/19
Budeme sledovat vývoj teploty v časoch t 1,t 2,t 3,... Táto teplota bude y(t 1 ),y(t 2 ),y(t 3 ),... Pre jednoduchost nech t i = t 0 +iτ, τ > 0, t i budú časové rezy, τ je časový krok. Prepíšeme rovnicu (1) v čase t = t i : dy(t) dt = c(ȳ y(t i )). t=ti Je známe, že derivácia dy(t) dt je smernica dotyčnice funkcie y(t) v bode t. Nahrad me túto dotyčnicu sečnicou (vid obrázok) a teda od presného riešenia prejdeme k aproximácii. Aproximáciu presného riešenia v bode t i budeme označovat y i. - p. 7/19
y spätná sečnica dotyčnica dopredná sečnica y(t) t i 1 t i t i+1 t Aproximácia derivácie - p. 8/19
Nahradenie derivácie: dy(t) dt t=ti y i+1 y i τ y i y i 1 τ dopredná diferencia spätná diferencia takže pre prípad doprednej diferencie dostaneme rovnicu y i+1 y i = cτ(ȳ y i ) y i+1 = (1 cτ)y i +cτȳ a pre prípad spätnej diferencie dostaneme rovnicu y i y i 1 = cτ(ȳ y i ) y i = 1 1+cτ (y i 1 +cτȳ) Tieto rovnice sú lineárne a vieme ich riešit ked že poznáme y 0. Pre takýto jednoduchý problém poznáme aj presné riešenie y(t) = ȳ +(y 0 ȳ)e c(t 0 t). (Numerické riešenie - aplikácia v MATLABe). - p. 9/19
Čo z numeriky (by) sme použili? numerickú deriváciu ak by bola pravá strana zložitejšia - riešenie nelineárnej rovnice ak by nás zaujímalo riešenie v inom bode ako časovom reze - aproximáciu funkcie - p. 10/19
Príklad 3 Balistický problém Vystrelíme raketu (projektyl) pod daným uhlom (vzhl adom na zem). Počas letu môže menit hmotnost, pričom spal ovanie pohonnej hmoty môžme riadit. Ako d aleko a vysoko poletí? y - výška v Zjednodušenia: nepreletí viac ako 100 km (kvôli zakriveniu Zeme) x-vzdialenost nevychyl uje sa z dráhy vplyvom vetra - postačí 2D úloha - p. 11/19
Označenia: x = x(t) - vzdialenost v čase t y = y(t) - výška v čase t θ = θ(t) - uhol, pod ktorým letí raketa v čase t (vzhl adom na os x) v=v(t) - rýchlost rakety v čase t m = m(t) - hmotnost a - zrýchlenie Predpokladáme v čase t 0 = 0 je x(t 0 ) = y(t 0 ) = 0. - p. 12/19
Čo potrebujeme vediet zo strednej školy? rýchlost je deriváciou dráhy v(t) = (ẋ(t),ẏ(t)) vel kost rýchlosti v(t) = v(t) = (ẋ(t)) 2 +(ẏ(t)) 2 zrýchlenie je deriváciou rýchlosti θ v ẋ ẏ Newtonov zákon pohybu a = dv dt F = d (m(t)v(t)) = ma dt - p. 13/19
Na raketu pôsobia sily: 1. tlak motora - v smere dráhy ozn. T(t) - daná funkcia 2. odpor prostredia (vzduchu) - proti smeru dráhy, jej vel kost 1 2 cρsv2, kde c je koeficient odporu, ρ hustota prostredia, s plocha priečneho rezu 3. gravitačná sila - proti smeru y, jej vel kost je gm, kde g je gravitačné zrýchlenie V smere dráhy pôsobí na raketu sila F 1 = T(t) 1 2 cρsv2 (t) - p. 14/19
Z Newtonovho zákona F = d dt (m(t)v(t)) a v(t) = (ẋ(t),ẏ(t)) máme v smere x : ṁ(t)ẋ(t)+m(t)ẍ(t) = F 1 cosθ(t) = v smere y : ṁ(t)ẏ(t)+m(t)ÿ(t) = F 1 sinθ(t) gm(t) ẍ(t) = 1 m(t) (T(t) 1 2 cρsv2 (t))cosθ(t) ṁ(t) m(t)ẋ(t) ÿ(t) = 1 m(t) (T(t) 1 2 cρsv2 (t))sinθ(t) g ṁ(t) m(t)ẏ(t) Platí ẋ(t) = v(t)cosθ(t) ẍ = vcosθ v θsinθ ẏ(t) = v(t)sinθ(t) ÿ = vsinθ +v θcosθ - p. 15/19
Dostaneme systém obyčajných diferenciálnych rovníc (ODR) ẋ(t) = v(t) cos θ(t) ẏ(t) = v(t) sin θ(t) 1 v(t) = m(t) (T(t) 1 2 cρsv2 (t)) gsinθ(t) ṁ(t) θ(t) = g v(t) cosθ(t) ṁ(t) = k T(t) s počiatočnými podmienkami x(0) = 0 y(0) = 0 v(0) = v 0 θ(0) = θ 0 m(0) = m 0. m(t) v(t) Rovnica pre zmenu hmotnosti vyjadruje fakt, že pri spal ovaní pohonnej zmesi hmotnost klesá, rýchlost spal ovania vyjadruje konštanta k. - p. 16/19
Nech τ > 0,τ R, označme t i = iτ,i = 1,2,...,n. Označíme x i x(t i ) y i y(t i ) v i v(t i ) θ i θ(t i ) m i m(t i ) Systém ODR prepíšeme v bode t = t i ẋ(t) t=ti v i cosθ i ẏ(t) t=ti v i sinθ i v(t) t=ti θ(t) 1 m i (T(t i ) 1 2 cρsv2 i ) gsinθ i +k T(t i) g v i cosθ i t=ti ṁ(t) t=ti k T(t i ) m i v i - p. 17/19
Treba aproximovat deriváciu - pomocou numerickej derivácie ako v predchádzajúcom príklade. Spravíme všeobecne: f(t) f i+1 f i t=ti τ Dostaneme systém rovníc x i+1 x i τ y i+1 y i τ v i+1 v i = v i cosθ i = v i sinθ i τ = 1 m i (T(t i ) 1 2 cρsv2 i ) gsinθ i +k T(t i) θ i+1 θ i τ = g v i cosθ i m i+1 m i τ = k T(t i ) m i v i Použili sme doprednú diferenciu. V prípade použitia spätnej diferencie by sme dostali zložitejšiu úlohu - systém nelineárnych rovníc. (Numerické riešenie - aplikácia v MATLABe). - p. 18/19
Pri numerickom riešení musíme použit 1. numerickú deriváciu 2. metódy na riešenie systémov nelineárnych rovníc 3. metódy na riešenie systémov lineárnych rovníc 4. aproximáciu funkcie - p. 19/19