PA081: Programování numerických výpočtů 4. Nelineární rovnice o jedné neznámé praktické příklady Aleš Křenek jaro 2012 Montáž ložiska K sestavení kluzného ložiska uložení ocelové mostní konstrukce je třeba na místě zasunout čep o vnějším průměru 313 mm do náboje o stejném vnitřním průměru. Sestavení probíhá s podchlazeným čepem, díky tepelné roztažnosti materiálu je menší a ložisko lze sestavit. Bezpečné zmenšení průměru je 0.3 7 mm. Na jakou teplotu je třeba čep podchladit, předpokládáme-li teplotu prostředí 20°C? Montáž ložiska ► koeficient tepelné roztažnosti oceli cx závisí na teplotě ► výpočet tedy není zcela triviální ► v rozmezí ±200°C je poměrně přesně vyjádřen funkcí a(T) = aTz + bT + C kdea = -8.27 x 10"11,*? = 2.21 x l(T8,c = 1.17 x 10" ► koeficienty získány regresí (proložením křivky) experimentálních dat ► metodu regrese budeme probírat později Montáž ložiska ► poloměr po zchlazení počítáme pro AT —■ 0 rx = r0(l - Ar«(7b))(l - ATa(T0- AT))... = r0(l - ATa(To) - ATa(T0 - AT) + (AT)za(T0)a(T0 - AT))... ► vedlo by na netriviální diferenciální rovnici ► protože a(T) <<; 1, AT <<; 1, lze nelineární členy zanedbat ► dostáváme zjednodušení rx = r0(l - á(Tx)) kde á(Tx a budeme řešit rovnici á(Tx r To (x(T)dT ro ro Obchodní případ 4/22 Montáž ložiska řešená funkce f(Tx) = á(Tx -(T3 r o - rx ro b ' 2 b. (To -ts + -tl + cT TV) - 3 ± v- 2 c(T0 To r o - rx tx r0 r o - rx ro potřebujeme ► separaci „správného" kořene ► zvolit vhodnou numerickou metodu Obchodní případ Montáž ložiska řešená funkce f(Tx) = á(Tx -(T3 r o - rx ro b ' 2 b. (To -ts + -tl + cT TV) - 3 ± v- 2 c(T0 To r o - rx tx r0 r o - rx ro potřebujeme ► separaci „správného" kořene ► zvolit vhodnou numerickou metodu koeficient u T% je kladný (a bylo záporné) pro Tx pro Tx o také/(Tx) --oo také f(Tx) Obchodní případ ■o0.o 5/22 Montáž ložiska ► derivace řešené funkce f(Tx) = -aTx-bTx-c * f(Tx) má jedno lokální minimum a jedno maximum ► v bodech, kde/'(Tx) =0 ► numericky stabilní výpočet? ► druhá přednáška;-) ► b = -2.21 x 10-8, VB = 6.60 x 10-8 je OK ► při nepřesném určení by mohla Newtonova metoda zabloudit, viz dále ► vypočtené extrémy Ti = -265.544 /(7\) = 0.000867609 T2 = 532.775 f(T2) = -0.00614507 Montáž ložiska ► dva „nesmyslné" kořeny T- < Ti a T+ > T2 ► nemají fyzikální význam ► T+ - čep se při vysokých teplotách začne smršťovat ► T_ - při nízkých teplotách se začne znovu roztahovat ► obojí důsledkem aplikace regresní křivky mimo rozsah hodnot, ze kterých byla určena ► skutečný kořen v intervalu [ T\, T2 ] ► funkce je spojitá, kořen je právě jeden ► dokonalá separace ► umíme jednoduše počítat derivaci ► navíc je na (Ti, Ti?) derivace nenulová ► Newtonova metoda je ideální Montáž ložiska ► numerická stabilita výpočtu f (T) a f (T) ► rozsah T řádově ve stovkách ► členy polynomu v řádech 10~5-10~2 ► raději použijeme typ double ► potenciálni problém Newtonovy metody f (T) ► nenastane díky známým vlastnostem funkce Montáž ložiska ► Průběh výpočtu funkcí rtnewt ► požadovaná absolutní přesnost 10~3 ► nemá smysl více, vstupní data (koeficienty a, b, c) jsou méně přesné ► a jak budeme při stavbě mostu chladit čep na takhle přesnou teplotu? f (T) f (T) 133.615 -66.6454 -89.1 -90.0546 -90.0564 -0.00263873 -0.000221398 -8.66255e-06 -1.68088e-08 -6.3964e-14 -1.31765e-05 -9.85981e-06 -9.07435e-06 -9.03911e-06 -9.03904e-06 v následujícím kroku už bylo dosaženo požadované přesnosti výsledek je -90.056°C Cirkusové číslo Artisté připravují nové vystoupení. Na začátku se jeden z nich zachytí rukama i nohama v kruhové konstrukci o průměru 180 cm a další konstrukci vykoulí na plošinu. Je třeba, aby se na konci tohoto pohybu původně nejvyšší bod kruhové konstrukce dotýkal plošiny a byl ve stejné výšce jako na začátku. Jaká je potřebná délka a sklon plošiny? Obchodní případ Cirkusové číslo ► označíme ► R - poloměr kruhu ► a - úhel otočení kruhu (v radiánech) ► - úhel naklonění plošiny ► délka pohybu kruhu po plošině je R a ► z naznačeného čtyřúhelníku odečteme ► a + = n (další dva úhly jsou pravé) ►tan§ = £ ► z toho vyplývá řešená rovnice tanf = ^— tedy f(0) = (tt Z TT — p Cirkusové číslo separace kořene ► P je ostrý úhel, tj. P e (0, f) ► řešení je právě jedno ► z geometrické podstaty problému ► formulací rovnic jsme nepřidali falešný kořen ► dáme si práci s exaktním důkazem nebo to rovnou zkusíme pro jistotu ověříme /(O) = - -1 /(7t/2) = 0.5707963 numericky nebezpečná by byla až oblast —■ tt ► vedla by na součin typu 0 ■ oo ► pohybujeme se v bezpečné vzdálenosti budeme předstírat, že neumíme spočítat derivaci ukážeme metodu sečen, Riddersovu, a Brentovu Obchodní případ ■o0.o 13/22 Cirkusové číslo Metoda sečen, požadovaná absolutní přesnost 10~4 n beta f(beta) 1 +0. .0000000 -1. .0000000 2 +1. .5707963 +0. .5707963 3 +0. .7853982 -0. .0240323 4 +1. .1780972 +0. .3119657 5 +0. .9817477 +0. .1544612 6 +0. .8835729 +0. .0679638 7 +0. .8344855 +0. .0226702 8 +0. .8099419 -0. .0005027 9 +0. .8222137 +0. .0111281 15 +0. .8105171 +0. .0000445 16 +0. .8104212 -0. .0000467 počínaje třetím krokem výpočet vždy ve středu intervalu pomalá konvergence □ s 4 : ■oq.o Cirkusové číslo Riddersova metoda, požadovaná absolutní přesnost 10 f(beta) -1.0000000 +0.5707963 -0.0240323 -0.0000968 +0.3213144 -0.0000001 +0.1704016 4. první iterační výpočet 5. půlení intervalu mezi 2. a 4. 6. další iterace 7. půlení mezi 5. a 6. 8. výsledek, už je v toleranci n beta 1 +0.0000000 2 +1.5707963 3 +0.7853982 4 +0.8103685 5 +1.1905824 6 +0.8104702 7 +1.0005263 (8) +0.8104702 PA081: Programování numerických výpočtů A. Křenek Montáž ložiska Cirkusové číslo Obchodní případ ► počítá primárním způsobem, nedošlo na bezpečné půlení intervalů ► srovnatelně rychlá konvergence s Riddersem ► při větší požadované přesnosti se liší ± o jeden krok Cirkusové číslo všechny metody se v rámci požadované tolerance shodují rychlost konvergence dle očekávání ► zdvojnásobení požadované přesnosti zdvojnásobí počet kroků půlení intervalů ► Riddersova metoda naroste ze 7 na 9 ► Brentova dokonce jen ze 7 na 8 ► lepší výsledky než teoretická rychlost konvergence y/2 Obchodní případ Cirkusové číslo délka pohybu po plošině je Ra = R(n - P) = 2.098 zbývá spočítat část plošiny od země k bodu dotyku TT — R . , R tan ■ T tedy l tan((7r-0)/2) nehrozí významné numerické nepřesnosti celková délka plošiny je 2.484 m, sklon 46.44° 0.3861 Obchodní případ Obchodní případ Americká garážová firma zahajuje montáž počítačů. Kolik jich musí v prvním roce prodat, aby byla zisková? Obchodní případ Americká garážová firma zahajuje montáž počítačů. Kolik jich musí v prvním roce prodat, aby byla zisková? ► uvažované náklady ► fixní jednorázové (pořízení vybavení): $20000 ► fixní roční (nájem, web, ...): $15000 ► variabilní (komponenty, hodinová sazba práce, ...): $62 5n ► semivariabilní (náročnější logistika atd.) $30n15 ► předpokládané příjmy ► prodej počítačů: $1500n ► slevy (množstevní, VIP zákazníci, ...): -$10nL5 Obchodní případ Obchodní případ ► řešená rovnice f (n) = T C (n) - T S (n) = 35000 - 875n + 40ti1 ► první dva členy - lineární funkce ► prochází bodem (0,35000) ► osu x protíná v 35000/875 = 40 ► člen 40n1-5 způsobí „prohnutí" nahoru ► posune kořen z bodu 40 dál ► přidá druhý kořen pro vyšší n *■ zisku dosahujeme v oblasti mezi těmito kořeny Obchodní případ ► separace 1. kořene ► podle předchozí úvahy /(40) > 0, skutečná hodnota 10119 ► zkusíme /(80) = -6378, vyhovuje ► separace 2. kořene ► předchozí /(80) = -6378 ► hrubý odhad zanedbáním absolutního člene -875n + 40nL5 = 0 tedy n = —- = 478.51 ► zkusíme /(500) = 44713, vyhovuje ► numerická stabilita v dané separaci kořenů ► součty/rozdíly čísel s minimálním řádovým rozdílem ► reálně nás zajímá přesnost na jednotky ► žádný potenciální problém Obchodní případ vypočtené kořeny 62.7 a 384.0 výsledky v požadované přesnosti shodné všemi metodami cirkusové čísi0 Obchodní případ chování jednotlivých metod (počty iterací) přesnost 10 -i 10 -4 kořen 1 2 1 2 půlení 11 15 21 25 Ridders 5 9 7 11 Brent 5 9 7 10 umělá přesnost 10 4 - zdvojnásobení počtu platných číslic dokládá očekávanou rychlost konvergence ► lineární pro půlení intervalů ► \Í2 pro ostatní metody □ s 4 : ■oq.o 22/22