7 Výpočet určitého integrálu a numerické řešení diferenciálních ronic Studijní cíl V sedmém bloku se seznámíme s možnostmi MATLABu pro řešení dalších dou důležitých matematických úloh numerický ýpočtem určitých integrálů a občejných diferenciálních ronic. Výpočet určitých integrálů (jedno i ícenásobných) je důležitý při řešení mnoha úloh např. při určoání délk křik, obsahu roinných útarů, při určoání porchu, objemu a hmotnosti těles, při určoání těžiště či momentu setračnosti atd. a řešení diferenciálních ronic ede mnoho úloh z elektrotechnik, mechanik, termodnamik a zejména jsou užíán při popisu choání dnamických sstémů. O ýznamu sousta občejných nelineárních diferenciálních ronic sědčí i to že řešením pouze této úloh se zabýá specializoaná nadstaba MATLABu zaná SIMULIK, které se budeme později ěnoat blocích 9. Doba nutná k nastudoání hodin Průodce studiem Předpokládá se, že čtenář je seznámen s prostředím MATLABu, základními příkaz, torbou grafů a torbou skriptů a funkcí rozsahu prních čtř bloků. Ze šestého bloku jsou potřeba znalosti o předáání funkce jako parametru jiné funkce. Dále se předpokládají základní znalosti integrálního a diferenciálního počtu. Při studiu je hodné mít spuštěný MATLAB a jednotlié příkaz či funkce hned zkoušet a případně získat podrobnější informace užíáním nápoěd k programu. a záěr jsou ueden řešené příklad na procičení. V tetu jsou použit následující tpografické konence: Calibri, Bold, Italic noé pojm či informace k zapamatoání Calibri označení kláes Courier ew, Bold náz nástrojů MATLABu Courier ew, Bold upřesnění nápoěd (help téma) Courier ew náz příkazů, funkcí a objektů Courier ew označení části příkazu, která se může nechat Courier ew, Italic náz proměnných použitých programu Courier ew 9 příkaz příkazoé řádk / ýpis programu Courier ew 9 ýpis programu klíčoá sloa Courier ew 9 ýpis programu řetězec Courier ew 9 ýpis programu komentář KŘP/IMSW 7 () František Dušek Modeloání e ýpočtoých software 4.7. KŘP FEI Unierzita Pardubice
7. umerický ýpočet určitého integrálu Další matematickou úlohou, pro kterou lze stanoit obecný postup řešení bez b znalosti konkrétní funkce, je ýpočet určitého integrálu. Problém I f ( ) je principiálně jednoduchý případě jednorozměrného integrálu tj. pro jednorozměrnou funkci. V případě ícerozměrných I I 3 a S V f (, ) f d (,, z) integrálů je problém komplikoanější případě, že integrujeme přes jinou než obdélníkoou oblast ( případě ddz dourozměrného) nebo oblast taru kádru ( případě třírozměrného integrálu). Z pohledu řešení MATLABu jde opět o funkci funkcí, kd je řešící funkci dodán handle konkrétní funkce, která se má na zadaném interalu či oblasti integroat. Pro ýpočet jednotliých integrálů jsou určen následující základní řešící funkce (blíže iz help quadl, help dblquadl, help triplequad) Iquadl(f,a,b) ýpočet určitého jednorozměrného integrálu z funkce f na interalu od a do b Idblquad(f,min,ma,min,ma) ýpočet určitého dourozměrného integrálu z funkce f na obdélníkoé oblasti P mezené rozsahem od min do ma a od min do ma Itriplequad(f,min,ma,min,ma,zmin,zma) ýpočet určitého třírozměrného integrálu z funkce f na kadratické oblasti V mezené rozsahem od min do ma, od min do ma a od z min do z ma Defaultní přesnost určení určitého integrálu je e šech případech e 6. Užiatelskou funkci f je potřeba tořit tak, ab akceptoala ektor pro proměnnou (a skalár pro případné další nezáisle proměnné či z) a racela odpoídající ektor funkčních hodnot. 7.. Výpočet jednoduchého určitého integrálu příklad Při řešení některých úloh může být užitečná znalost geometrické interpretace určitého integrálu. Hodnota určitého integrálu nějaké funkce od bodu a do bodu b je plocha mezi osou a průběhem funkce ohraničená kolmicemi bodec a a b. Pozor ale, že plocha pod osou se uažuje jako záporná. Ueďme jako příklad ýpočet obsahu kružnice o poloměru r (který dokážeme spočítat i bez určitého integrálu). Vjdemeli z Obrázku 7 pak obsah kružnice je určen doj násobkem ploch pod křikou na obrázku tj. ztahem S + r r r Řešení MATLABu s oěřením pomocí zorce pro ýpočet obsahu kružnice pak může padat např. (pro případ r) jako r f ( ) r Obrázek 7 Výpočet obsahu kružnice r KŘP/IMSW 7 () František Dušek Modeloání e ýpočtoých software 4.7. KŘP FEI Unierzita Pardubice
>> r; >> P*quadl(@() sqrt(r^-.^),-r,r); >> Ppi*r^; >> ep-p e -.635e-6 Jako další příklad ueďme ýpočet hodnot určitého integrálu z funkce sinus od do π, kde umíme určit i bez ýpočtu integrálu, že má jít. Víte proč? >> Pquadl(@sin,,*pi) P.7588e-6 Jednoduchý určitý integrál je možné použít i pro ýpočet objemu rotačních těles. Vznikne li nějaké těleso rotací křik f() okolo os, pak je jeho objem určen ztahem B [,.5] b B [,.5] B 3 [,.5] V π f ( ) a Chceme li ted určit např. objem sudu s geometrickými rozměr podle Obrázku 7, pak je řešení elmi jednoduché za předpokladu znalosti funkce popisující zaoblení sudu a hodné.5.6 olb souřadného sstému. Pokud budeme funkci zakřiení aproimoat polnomem. stupně (parabolou) Obrázek7 Objem sudu procházející bod B až B 3 pak můžeme řešení MATLABu napsat např. jako >> [-,,]; [.5,.6,.5]; >> ppolfit(,,); >> Vquadl(@() pi*polal(p,).^,-,) V.3 Poslední příklad ukazuje použití určitého integrálu pro určení délk křik prostoru. Máme li křiku prostoru popsanou parametrickými ronicemi e taru f ( t) f ( t) z f ( t) pak délka křik je dána ztahem z L t b t a d + dz + Mějme křiku na Obrázku 7 3 popsanou ronicemi sin z cos ( t ) t cos( t ) sin( t)cos( t) cos ( t) sin ( t) ( t ) z t sin( t ).5 -.5 -.5 pak kreslení průběhu křik pro t π a ýpočet délk křik je možné počítat např. jako >> tlinspace(,pi,); >> sin(t.^); sin(t).*cos(t); zcos(t.^); Obrázek 7 3 Křika prostoru >> plot3(,,z), grid >> f@(t) (*t.*cos(t.^)).^ + (cos(t).^-sin(t).^).^ + + (*t.*sin(t.^)).^; -.5 - -.5.5 KŘP/IMSW 7 3 () František Dušek Modeloání e ýpočtoých software 4.7. KŘP FEI Unierzita Pardubice
>> Lquadl(@() sqrt(f()),,pi) L.37 7.. Výpočet dojného určitého integrálu příklad Geometrická interpretace dojného integrálu z funkce f(,) přes integrační oblast S(,) tj. f (, ) d je objem omezený shora plochou danou funkcí S f(,), zdola uzařenou oblastí roině a z boků pláštěm kolmým na roinu procházejícím hranicí oblasti S. Opět s konencí, že objem pod roinou je záporný. V případě praoúhlé integrační oblasti a b, c d (úloha b d ( ) d f, ) je přímo použitelná funkce dblquad(f,a,b,c,d). a c Jako příklad ueďme ýpočet objemu části polokoule o poloměru r popsané funkcí f (, ) r nad oblastí r / + r /, r / +r/ (iz Obrázek 7 4). Matematická formulace pro uedený příklad je V r r r r r d Příkaz pro kreslení zniklého útaru pro r a ýpočet jeho objemu jsou >> r; -r/:r/9:r/; ; 4 >> [X,Y]meshgrid(,); >> Zsqrt(r^-X.^-Y.^); >> ZZ*; >> hmeshz(,,z); 5 >> set(h,'linewih',) >> ais equal -5-5 >> ais([-r,r,-r,r,,r]) - - >> hold on >> surf(,,z) Obrázek 7 4 Část polokoule >> f@(,,p) sqrt(p^-.^-^) >> Vdblquad(@(,) f(,,r),-r/,r/,-r/,r/) V 9.9658 8 6 5 Pokud chceme spočítat objem celé polokoule o poloměru r (integrační oblastí je kruh o poloměru r) pak je matematická formulace problému r r V r d r. Protože funkce dblquad má integrační r meze konstantní a ted olá nitřní funkci pro bod z obdélníkoé integrační oblasti, není možné nitřní funkci tořit pouhým přepisem matematického zadání jako předchozím případě. Možné řešení je nitřní funkci realizující matematickou funkci ze zadání rozšířit tak, ab pro hodnot, mimo požado Tj. i pro bod mimo požadoanou kruhoou integrační oblast, kde funkce není definoána KŘP/IMSW 7 4 () František Dušek Modeloání e ýpočtoých software 4.7. KŘP FEI Unierzita Pardubice
anou kruhoou integrační oblast racela nuloé hodnot, tj. ab funkční hodnot pro tto bod neolinil ýslednou hodnotu integrálu. Příkladem takoé funkce může být např. PoloKoule.m function zpolokoule(,,r) % ýpočet ýšk bodu polokoule o poloměru r nad roinou - % pro zadaný bod [,] r^-.^-^; zzeros(size()); for k:length(), %!!! (tj. i ) může být ektor if (k)>, z(k)sqrt((k)); end end PoloKoule.m Vužijeme li tuto funkci i pro kreslení útaru (Obrázek 7 5), jehož objem zjišťujeme, pak můžeme zapsat např. skript r; -r:r/:r; ; 8 nlength(); 6 nlength(); 4 Zzeros(n,n); for k:n, for l:n, Z(k,l)PoloKoule((k),(l),r); end end hmesh(,,z); set(h,'linewih',) ais equal ais([-r,r,-r,r,,r]) Vdblquad(@(,) PoloKoule(,,r),-r,r,-r,r); 5-5 - - Obrázek 7 5 Polokoule -5 5 Jiná arianta nitřní funkce s chtřejším způsobem řešení rozhodoání zda hodnot leží integrační oblasti, je ukázána dále PoloKoule.m function zpolokoule(,,r) % ýpočet ýšk bodu polokoule o poloměru r nad roinou - % pro zadaný bod [,] ma(r^-.^-^,); zsqrt(); PoloKoule.m nebo přímo definici anonmní funkce Vdblquad(@(,) sqrt(ma(r^-.^-^,)),-r,r,-r,r); V.944e+3 7..3 Výpočet trojného určitého integrálu příklad Geometrická interpretace trojného integrálu z funkce f(,,z) přes integrační oblast O(,,z) tj. f (,, z) ddz je hmota oblasti (objemu) O O KŘP/IMSW 7 5 () František Dušek Modeloání e ýpočtoých software 4.7. KŘP FEI Unierzita Pardubice
s proměnnou hustotou popsanou funkcí f(,,z). Pokud je funkce f(,,z) celé integrační oblasti jednotkoá, pak hodnota integrálu odpoídá objemu oblasti. V případě praoúhlé integrační oblasti a b, c d, e z f (úloha b d f f, a c e ( z) dzd, ) lze použít funkci triplequad(f,a,b,c,d,e,f). Použití funkce triplequad si ukážeme opět na příkladu ýpočtu hmot tělesa s proměnnou hustotou pomocí trojného integrálu. Hmota tělesa je V obecně dána ztahem (,, z) ρ ddz kde V je oblast prostoru, přes kterou integrujeme, a ρ(,,z) je rozložení hustot prostoru. Integrační oblast V bude kadratická a, b, z c a rozložení hustot prostoru je popsáno ztahem ρ (,, z) + + + z. Příkaz pro řešení pak mohou být např. >> f@(,,z)./sqrt(+.^+^+z^); >> Mtriplequad(f,,,,,,3) M.843 Vužití určitých integrálů není omezeno jen pro ýpočt objemu. Použíají se pro ýpočet ploch, porchu, hmot, statických momentů, poloh těžiště, momentu setračnosti tělesa (ploch, křik), pro ýpočet např. práce po křice siloém poli atd. 7. umerické řešení občejných diferenciálních ronic V dalším tetu se budeme zabýat pouze občejnými diferenciálními ronicemi (Ordinar Differential Equation ODE) jejichž řešením je funkce jedné (nezáisle) proměnné. Parciálními diferenciálními ronicemi, jejichž řešením je funkce íce (nezáisle) proměnných se zabýat nebudeme. Diferenciální ronice popisuje záislost mezi neznámou funkcí, jejími deriacemi a případně funkcemi nezáisle proměnné a neznámé funkce. Obecným analtickým řešením je určení množin (prostoru) šech funkcí, které po derioání a dosazení splňují diferenciální ronici. Pro ýběr jedné konkrétní funkce z prostoru řešení je potřeba zolit bod prostoru řešení, kterým má funkce (řešení) procházet. Protože nás obkle zajímá řešení na určitém interalu hodnot nezáisle proměnné tak se bod, kterým má procházet řešení nejčastěji olí buď na začátku či konci tohoto interalu. Podle umístění braného bodu prostoru řešení se pak diferenciální ronice označuje jako diferenciální ronice s počátečními (začátku interalu) či okrajoými (na konci interalu) podmínkami. Řešení může být buď taru analtickém (jádřeno funkcí, předpisem pro ýpočet souřadnice bodu řešení Prostor šech funkcí předstaujících řešení diferenciální ronice je popsán (pokud analtické podobě ůbec eistuje) jednou funkcí, e které se sktuje tolik blíže neurčených parametrů, kolikátého řádu daná diferenciální ronice je. Počáteční či okrajoé podmínk slouží k určení konkrétních hodnot těchto parametrů. KŘP/IMSW 7 6 () František Dušek Modeloání e ýpočtoých software 4.7. KŘP FEI Unierzita Pardubice
na základě hodnot nezáisle proměnné) nebo numerickém (jádřené tabulkou souřadnic bodů předstaujících řešení). Analtické řešení diferenciální ronice s počátečními či okrajoými podmínkami je ted předstaoáno funkcí, která pro hodnot nezáisle proměnné umožní spočítat odpoídající funkční hodnotu. Analtické řešení občejných nelineárních diferenciálních ronic eistuje ( uzařeném taru) pouze e speciálních případech. Pro občejné lineární 3 diferenciální ronice analtické řešení eistuje ale jeho získání je pracné a ýsledná funkce může být značně složitá. Jako příklad analtického řešení ukažme řešení diferenciální ronice d + e s obecným řešením ( ) + e ( ) C + e pro počáteční podmínku (). a konkrétním řešením Pokud nám šak stačí znát pro zadané hodnot nezáislé proměnné hodnot, které jsou řešením dané diferenciální ronice s počátečními (či okrajoými) podmínkami, pak můžeme použít numerické řešení diferenciální ronice, které lze nalézt žd (pokud ůbec řešení dané diferenciální ronice eistuje). Řešením tomto případě je ted tabulka, kde pro každou hodnotu nezáisle proměnné je spočítána odpoídající funkční hodnota. MATLAB obsahuje několik různých metod (algoritmů) numerického ýpočtu občejných diferenciálních ronic opět e formě funkce funkcí. Ab blo možné použít tto funkce pro občejnou diferenciální ronici liboolného stupně 4, žadují zápis diferenciální ronice e taru sousta diferenciálních ronic prního stupně. Soustau občejných diferenciálních ronic prního stupně četně počátečních či okrajoých podmínek d f d f d f (,,, K, ) (,,, K, ) (,,, K, ) lze zapsat e formálně stejném maticoém zápisu kde M dy f Y ( ) ( ) (, Y) Y ( ) M ( ) je označení nezáisle proměnné, Y [ (), (),, ()] T je ektor (neznámých) funkcí řešících diferenciální ronici, 3 Občejná lineární diferenciální ronice obsahuje pouze lineární kombinace (sčítání/odečítání, násobení konstantou) neznámé funkce a jejich deriací a případně funkce nezáisle proměnné. 4 Stupeň či řád diferenciální ronice je určen řádem nejšší deriace, která se diferenciální ronici sktuje. KŘP/IMSW 7 7 () František Dušek Modeloání e ýpočtoých software 4.7. KŘP FEI Unierzita Pardubice
f [f (, (), (),, (),, f (, (), (),, ()] T je ektor funkcí popisujících ýpočet hodnot deriace příslušné funkce záislosti na hodnotě nezáisle proměnné a Y [ ( ), ( ),, ( )] T je ektor počátečních podmínek tj. hodnot neznámých funkcí pro hodnotu nezáisle proměnné. Jestliže je počet ronic a počet hledaných funkcí stejný a jsou známé počáteční podmínk pak lze pro takoou soustau ronic MATLABu získat (poud řešení eistuje) numerické řešení pro liboolné hodnot na interalu ma. 7.. Přeod diferenciální ronice ššího řádu na soustau diferenciálních ronic řádu prního Velmi často máme nalézt řešení občejné diferenciální ronice (ODE) ššího stupně než prého. Každou občejnou diferenciální ronici n tého stupně lze přeést na soustau n diferenciálních ronic prního stupně, kde buď přímo jedna z funkcí, nebo kombinace několika noých funkcí předstauje hledané řešení půodní ronice. Přeod půodní diferenciální ronice ššího řádu na soustau diferenciálních ronic řádu prého není jednoznačný tj. k jedné ODE ššího řádu lze nalézt (nekonečně) mnoho různých sousta ODE řádu prého. Ukážeme si jeden z možných způsobů přeodu, kd jedna funkce je přímo řešením půodní ronice, a ostatní funkce jsou deriacemi řešení. Obecně lze každou ODE stupně s počátečními podmínkami zapsat jako d d ( ) K d d d f,,,, K, d d Zaedeme li substituce (noé funkce (),, ()) jako d M d d d d ( ) ( ) d d d ( ) a půodní ronici s užitím substitucí přepíšeme jako d (,,, K ) f,, získáme soustau ronic pro funkcí četně počátečních podmínek. KŘP/IMSW 7 8 () František Dušek Modeloání e ýpočtoých software 4.7. KŘP FEI Unierzita Pardubice
KŘP/IMSW 7 9 () František Dušek Modeloání e ýpočtoých software 4.7. KŘP FEI Unierzita Pardubice ( ) ( ) ( ) ( ) ( ),,,, f d d d d K M Postup ukažme na příkladu ODE 3. stupně e taru ( ) ( ) 3 () () () ) sin( + + + Odpoídající soustaa tří diferenciálních ronic je po substituci ( ) () ) sin( 3 () () d d d 7.. Řešení sousta diferenciálních ronic prního řádu Soustau diferenciálních ronic pro funkcí odpoídající ODE tého řádu můžeme zapsat maticoém taru např. jako ( ) ( ),,,,, d d d d f d M K M M M Y Y f Y Y Pro ýše uedený příklad občejné diferenciální ronice třetího stupně je pak maticoý zápis je potřeba zolit pořadí funkcí e sloupcoém ektoru Y a pak ho dále dodržoat např. pro předchozí příklad ( ) ( ) Y f Y Y Y, ) sin( 3 d d d d a jeho přepis do form m funkce MATLABu je Funkce.m function dyfunkce(,y) % zápis sousta diferenciálních ronic % pomocné proměnné pro přehlednost zápisu
Y(); Y(); Y(3); % ektor deriací musí být sloupcoý dyzeros(3,); dy(); dy(); dy(3)sin()-*-^-(-^)*; Funkce.m Máme li diferenciální ronici e taru sousta ronic pro neznámých funkcí a známe li počáteční podmínk, je získání numerického řešení MATLABu triiální. Použijeme některou z funkcí pro řešení občejných diferenciálních ronic nejčastěji 5 se použíá funkce ode45 se základní sntaí (blíže iz help ode45) kde [,Y]ode45(fce,X,Y) dyfce(,y) je funkce pro ýpočet ektoru deriací dy na základě aktuální hodnot nezáisle proměnné a ektoru Y aktuálních hodnot hledaných funkcí, X[, (,..., m,) ma ] je ektor minimálně dou hodnot (počáteční a konečná) nezáisle proměnné, mezi kterými se má počítat řešení, případně ektor hodnot, e kterých chceme získat řešení, Y je sloupcoý ektor počátečních podmínek tj. hodnot jednotliých funkcí pro hodnotu, je sloupcoý ektor 6 hodnot nezáisle proměnné, e kterých jsou počítán hodnot funkcí uložené odpoídajícím řádku matice Y (iz Tabulka ) a Y je matice řešení, jednotlié sloupce odpoídají hodnotám příslušných funkcí (iz Tabulka ) Tabulka Uspořádaní ýstupních parametrů funkce ode45 Y Y(:,) Y(:,) Y(:,3)... Y(:,) ( ) ( ) ( )... ( ) ( ) ( ) ( )... ( )............... m ( m ) ( m ) ( m )... ( m ) ma ( ma ) ( ma ) ( ma )... ( ma ) Význam sloupců matice řešení Y (průběh jednotliých funkcí předstaujících řešení) je dán olbou uspořádání ektoru Y při přípraě sousta ronic. Záleží pouze na užiateli, jak funkce uspořádá. Uspořádáním ektoru Y je dáno upo 5 Funkce ode45, která implementuje jednokrokoý algoritmus Runge Kutta 4 5. řádu, se doporučuje použít jako prní olbu. Pokud nelze nalézt řešení nebo íme, že jde o ODE se speciálními lastnostmi (např. tz. stiff sstém) jsou k dispozici další funkce užíající jiné algoritm řešení: ode3, ode3, ode5s, ode3s, ode3t a ode3tb. 6 Počet hodnot mezi počáteční a konečnou hodnotou nezáisle proměnné si určí ýpočetní algoritmus sám záislosti na průběhu řešení tak, ab blo dosaženo zadané přesnosti a zároeň bl počet bodů minimální (tj. i minimální počet olání funkce ýpočtu deriací minimalizace ýpočetního času). V případě, že je zadán ektor hodnot nezáisle proměnné probíhá ýpočet opět bodech, který si algoritmus určí sám a do zadaných bodů jsou ýsledk interpoloán. KŘP/IMSW 7 () František Dušek Modeloání e ýpočtoých software 4.7. KŘP FEI Unierzita Pardubice
řádání (ýznam) ektoru deriací dy i ektoru počátečních podmínek Y. Prní řádek matice Y předstauje počáteční podmínk uložené e ektoru Y. Prní a poslední hodnota ektoru nezáisle proměnných je dána parametrem X při olání funkce ode45. umerické řešení ýše uedeného příkladu ( ) + ( ) + sin( ) () () () 3 + pro.5 s užitím m funkce Funkce.m četně kreslení průběhu šech tří funkcí lze získat příkaz MATLABu >> Y[;;3]; >> [,Y]ode45('Funkce',[,.5],Y); >> hplot(,y,'linewih',), grid >> set(h(),'linewih',3) >> hlegend('()','_d/','_d^/^'); >> set(h,'location','southwest') >> hold on >> plot([;;],y,'o','linewih',) a prních deset hodnot (ze 45 celkem) numerického řešení je.. 3..5.437.63.848.43.888.6.694.646.35.79.538.86.86.39.386.36.679.36.4.6.356.3896.89.986.447.455.5373.36.54.548.57.736.6347.5465.9687 4 - -4-6 () Obrázek d/ 7 6 Průběh řešení diferenciální ronice d / -8.5.5 KŘP/IMSW 7 () František Dušek Modeloání e ýpočtoých software 4.7. KŘP FEI Unierzita Pardubice
7.3 Příklad na procičení V kapitole 7.3. jsou zadání a kapitole 7.3. řešení jednoduchých příkladů na probíranou problematiku. Pro řešení příkladů jsou nutné znalosti z prních čtř bloků. Předpokládá se, že při řešení příkladů má čtenář k dispozici MATLAB a aktině užíá nápoědu k programu. 7.3. Zadání příkladů Př. Jednoduchý určitý integrál nalezněte řešení π a) cos ( ) b) cos( n arccos( ) ) pro n,, 3, 4, 5 Př. Dojný určitý integrál nalezněte řešení π π a) π π + sin( )cos( ) d b) ) + S sin( cos( ) d kde oblast S je popsaná ronicí +. Př3. Trojný určitý integrál nalezněte řešení π π π a) π π π cos z 3 ddz π b) Pomocí trojného integrálu určete objem krchle o délce stran. áod: užijte zorec ddz pro ýpočet objemu a integrační oblast V taru krchle Př4. Vužití určitých integrálů. a) Výpočet délk křik. Vpočtěte délku spirál popsané parametrickými ronicemi ( t) t cos( t) ( t) t sin( t) pro t π. áod: užijte ztah pro ýpočet délk křik popsané parametrickými ronicemi L t t d +. b) Výpočet objemu rotačního tělesa. Vpočtěte objem tělesa zniklého rotací křik ( ) e kolem os pro 5. áod: užijte ztah pro ýpočet objemu rotačního tělesa, jehož plášť znikne rotací křik f() kolem os mezích a b V b π f ( ). a KŘP/IMSW 7 () František Dušek Modeloání e ýpočtoých software 4.7. KŘP FEI Unierzita Pardubice
c) Výpočet ploch roinného útaru. Vpočtěte plochu elipsoidu popsaného ronicí + pomocí dojného integrálu a ýsledek oěřte ýpočtem b a s jednoduchým integrálem pro ekialentní popis parametrickými ronicemi ( t) a cos( t) ( t) bsin( t) t π pro a a b3. áod: užijte ztah pro ýpočet ploch roinného obrazce nad danou uzařenou oblastí O(,) O(, ) S d a S f ( t) g ( t) pokud je oblast daná parametrickými ronicemi f(t) a g(t) Př5. Diferenciální ronice nalezněte řešení a nakreslete jeho průběh a) + t ( t ) t d z dz dz b) + + z( ) 6 c) + te + + te t t ( t ) + ( t ) t 5 t t ( t ) ( t ) Př6. Dráha střel užití diferenciální ronice akreslete dráhu střel graitačním poli země (g9.8 m.s )střelené pod úhlem α prních s po opuštění hlaně (ústí hlaně je h m nad porchem, h úsťoá rchlost 8 m.s ) při uažoání odporu prostředí úměrného kadrátu rchlosti (konstanta úměrnosti je k.4 m ). Průběh dráh nakreslete pro hodnot α, 3, 4, 5, 6 a 7 do jednoho grafu. Časoý průběh ýškoé α (h) i délkoé () h souřadnice je popsán diferenciálními ronicemi e taru d h + k d + k dh dh + g + g h( t ) h ( t ) dh t t sin( α) cos( α) KŘP/IMSW 7 3 () František Dušek Modeloání e ýpočtoých software 4.7. KŘP FEI Unierzita Pardubice
Řešení příkladů Př. Jednoduchý určitý integrál nalezněte řešení π a) cos ( ) 3.46 >> Iquadl(@() cos().^,,*pi) I 3.46 b) cos( arccos( ) ) n pro n,, 3, 4, 5 >> for n:5,quadl(@() cos(n*acos()),-,), end ans.6e-6 ans -.6667 ans 9.6435e-7 ans -.333 ans.9547e-6 Př. Dojný určitý integrál nalezněte řešení π π a) + sin( )cos( ) d 37.839 π π >> Idblquad(@(,) sqrt(+sin()*cos()),-pi,pi,-pi,pi) I 37.839 b) + S cos( ) d kde oblast S je popsaná ronicí + Dojný integrál přes oblast S lze integroat přes liboolnou obdélníkoou oblast (zahrnující oblast S) pokud při hodnocení funkce pod integrálem je zajištěno, že tato rací hodnotu pro hodnot a mimo oblast S. Pro bod oblasti S platí a současně. Vtoříme li ted např. funkci Funkce.m function zfunkce(,) % zápis funkce pod integrálem s kontrolou definičního oboru % parametr může být ektor nlength(); zzeros(size()); for k:n, if ((k)^<) && (^<-(k)^), z(k)(k)**cos(+(k)*); else z(k); end end Funkce.m pak se řešení nalezne příkazem (pro liboolné meze zahrnující oblast S) >> Idblquad(@Funkce,-,3,-3,5) I -.8 KŘP/IMSW 7 4 () František Dušek Modeloání e ýpočtoých software 4.7. KŘP FEI Unierzita Pardubice
Př3. Trojný určitý integrál nalezněte řešení π π π a) cos z 3 ddz 43.5384 π π π π >> Itriplequad(@(,,z) cos(**z/pi^3),-pi,pi,-pi,pi,-pi,pi) I 43.5384 b) Pomocí trojného integrálu určete objem krchle o délce stran. Funkce pod integrálem musí pro šechn hodnot, a z racet hodnotu a zároeň musí pro ektor hodnot racet ektor funkčních hodnot. Řešení ted je např. >> Itriplequad(@(,,z) ones(size()),,,,,,) I 8 Př4. Vužití určitých integrálů. a) Vpočtěte délku spirál ( t) t cos( t) ( t) t sin( t) pro t π. ýpočet potřebných deriací d t cos( t) cos( t) t sin( t) ýpočetní ztah d ( ) ( t sin( t) ) sin( t) + t cos( t) t d L + + t příkaz MATLABu π [ cos( t) t sin( t) ] + [ sin( t) t cos( t) ] >> f@(t) sqrt((cos(t)-t.*sin(t)).^+(sin(t)+t.*cos(t)).^); >> Lquadl(f,,*pi) L.563 b) Výpočet objemu rotačního tělesa. Vpočtěte objem tělesa zniklého rotací křik ( ) e kolem os pro 5. V π b příkaz MATLABu a f 5 ( ) π ( e ) >> Vpi*quadl(@() (.*ep(-)).^,,5) V.783 c) Výpočet ploch roinného útaru O(,): + pomocí dojného b a integrálu a jednoduchým integrálem pro ekialentní popis parametrickými ronicemi ( t) a cos( t) ( t) bsin( t) t π pro a a b3. Chceme li použít dojný integrál a oblast O(,) není obdélníkoá, je nutné zajistit, ab pomocná funkce pod integrálem racela hodnotu pouze pro a b. hodnot a z oblasti O (jinak hodnotu ) tj. ( ) a KŘP/IMSW 7 5 () František Dušek Modeloání e ýpočtoých software 4.7. KŘP FEI Unierzita Pardubice
Pomocná funkce s parametr a,b Funkce.m function zfunkce(,,a,b) % zápis funkce pod integrálem s kontrolou definičního oboru % parametr může být ektor nlength(); zzeros(size()); for k:n, if ((k)^<a^) && (^<b^*(-((k)/a)^), z(k); else z(k); end end Funkce.m příkaz MATLABu >> a; b3; >> Sdblquad(@(,) Funkce(,,a,b),-a,a,-b,b) S 8.8495 Při použití jednoduchého integrálu a parametrick zadané oblasti je nutné určit deriaci g b cos(t) a ýpočetní ztah pak je S ab cos ( t) příkaz MATLABu >> Squadl(@(t) a*b*cos(t).^,,*pi) S 8.8496 Př5. Diferenciální ronice nalezněte řešení a nakreslete jeho průběh a) + t ( t ) t příkaz MATLABu b) >> [t,x]ode45(@(t,) t^-^,[,],); >> plot(t,x) >> grid d z + dz z( ) 6 + dz přeod na soustau dou ronic řádu prního z Z dz z z() Z () π 9 8 7 6 5 4 3 3 4 5 6 7 8 9 KŘP/IMSW 7 6 () František Dušek Modeloání e ýpočtoých software 4.7. KŘP FEI Unierzita Pardubice
zápis e formě m funkce Funkce.m function dzfunkce(,z) % zápis sousta dif. ronic z % pomocné proměnné pro přehlednost zz(); Z(); dz[; -^-*]; Funkce.m příkaz MATLABu c) >> Z[;-]; >> [,Z]ode45('Funkce',[,6],Z); >> hplot(,z); >> grid >> legend('z','') >> set(h(),'linewih',3) + te + + te t t ( t ) + ( t ) t 5 přeod na soustau dou ronic řádu prního Z Z zápis e formě m funkce () () () () dz ( t ) ( t ) Funkce.m function dzfunkce(t,z) % zápis sousta dif. ronic - -4-6 -8 - - 3 4 5 6 t te + t te 3 % pomocné proměnné pro přehlednost Z(); Z(); Z(3); Z(4); dzzeros(4,); dz(); dz()*t*ep(-t)+-; dz(3); dz(4)t*ep(-t)--*; Funkce.m příkaz MATLABu >> Z[;;-;]; >> [,Z]ode45(@Funkce,[,5],Z); >> hplot(,z); >> grid >> legend('','','','') >> set(h([,3]),'linewih',3) - - -3-4.5.5.5 3 3.5 4 4.5 5 KŘP/IMSW 7 7 () František Dušek Modeloání e ýpočtoých software 4.7. KŘP FEI Unierzita Pardubice
Př6. Dráha střel užití diferenciální ronice akreslete dráhu střel graitačním poli země (g9.8 m.s )střelené pod úhlem α prních s po opuštění hlaně (ústí hlaně je h m nad porchem, úsťoá rchlost 8 m.s ) při uažoání odporu prostředí úměrného kadrátu rchlosti (konstanta úměrnosti je k.4 m ). Průběh dráh nakreslete pro hodnot α, 3, 4, 5, 6 a 7 do jednoho grafu. Časoý průběh ýškoé (h) i délkoé () souřadnice je popsán diferenciálními ronicemi e taru d h + k d + k dh dh + g + g h( t ) h ( t ) dh t t sin( α) cos( α) Přeod na soustau čtř diferenciálních ronic prního stupně h h Z Z h() h h() () () zápis e formě m funkce sin( α) cos( α) dz h h h g k k h h Funkce.m function dzfunkce(t,z,k) % zápis sousta diferenciálních ronic % s parametrem k % pomocné proměnné pro přehlednost zápisu hz(); hz(); Z(3); Z(4); g9.8; % ektor deriací musí být sloupcoý dzzeros(4,); dz()h; dz()-g-k*abs(h)*h; dz(3); dz(4)-k*abs()*; Funkce.m příkaz MATLABu (skript) skript.m % skript pro ýpočet dráh střel 8; % úsťoá rchlost ko.4; % odpor prostředí h; % ýška ústí hlaně ; % -oá poloha ústí (zdálenost) al[,3,4,5,6,7]; % náměr e stupních % přípraa pro kreslení drah střel aes % prázdný graf hold on % režim překresloání tecell(size(al)); % pro tet legend % pole buněk - řetězce pro bar grafů co{'b','g','r','c','m','k','b','g','r','c','m','','k'}; KŘP/IMSW 7 8 () František Dušek Modeloání e ýpočtoých software 4.7. KŘP FEI Unierzita Pardubice
for k:length(al), alral(k)*pi/8; % přeod na radián h*sin(alr); % poč. rchlost h *cos(alr); % poč. rchlost Z[h;h;;]; % poč. podmínk [t,z]ode45(@(t,z) Funkce(t,Z,ko), [,],Z); Z(:,3); % časoý průběh dráh (zdálenost) Z(:,)'; % časoý průběh dráh (ýška) hpplot(,,co{k},'linewih',); te{k}sprintf('uhel %d ^o',al(k)); end grid legend(te,'location','orthwest') skript.m 7 6 5 uhel o uhel 3 o uhel 4 o uhel 5 o uhel 6 o uhel 7 o 4 3-4 6 8 KŘP/IMSW 7 9 () František Dušek Modeloání e ýpočtoých software 4.7. KŘP FEI Unierzita Pardubice
Pojm k zapamatoání Okruh problémů: ýpočet určitých integrálů (jednoduchý, dojný a trojný), ýpočet ploch a objemu, numerické řešení občejných diferenciálních ronic Použité nástroje: Příkaz a funkce: Otázk na procičení dblquad, ode45, quadl, triplequad. Uádí se, že geometrická interpretace určitého integrálu nějaké funkce je plocha shora ohraničená danou funkcí a zdola osou. V čem je tato předstaa nepřesná?. Funkce MATLABu pro ýpočet dojného a trojného určitého integrálu nejsou úplně obecné. Jaké mají omezení? 3. Jaký je rozdíl mezi analtickým a numerickým řešením diferenciální ronice? 4. Proč je potřeba pro numerické řešení MATLABu přeést ODE ššího řádu na soustau ODE řádu prého? 5. Co je nutné kromě diferenciální ronice ještě znát pro ýpočet numerického řešení? Odkaz a další studijní pramen on line dokumentace k programu nebo www.mathworks.com/help/ části umerical Integration (Quadrature), Ordinar Differential Equations KŘP/IMSW 7 () František Dušek Modeloání e ýpočtoých software 4.7. KŘP FEI Unierzita Pardubice