Masarykova univerzita ˇ Přírodovědecká fakulta Zuzana Došlá, Roman Plch, Petr Sojka DIFERENCIÁLNÍ PO ČET FUNKCÍ VÍCE PROM ĚNNÝCH S PROGRAMEM MAPLE V Brno 2006 Obsah Obsah 3 Předmluva 7 Využití počítače ve výuce matematické analýzy 9 1 Pojem funkce více proměnných 17 2 Limita a spojitost funkce 27 2.1 Metrické vlastnosti Rn . . . . . . . . . . . . . . . . . . . . . . . 27 2.2 Limita funkce . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 2.3 Spojitost funkce . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 2.4 Věty o spojitých funkcích . . . . . . . . . . . . . . . . . . . . . . 37 3 Parciální derivace 43 3.1 Parciální derivace 1. řádu . . . . . . . . . . . . . . . . . . . . . . 44 3.2 Derivace vyšších řádů . . . . . . . . . . . . . . . . . . . . . . . . 47 3.3 Směrové derivace . . . . . . . . . . . . . . . . . . . . . . . . . . 50 3.4 Lagrangeova věta o střední hodnotě . . . . . . . . . . . . . . . . 53 4 Diferenciál funkce 57 4.1 Diferencovatelná funkce, diferenciál . . . . . . . . . . . . . . . . 57 4.2 Diferenciály vyšších řádů . . . . . . . . . . . . . . . . . . . . . . 63 4.3 Kmenová funkce . . . . . . . . . . . . . . . . . . . . . . . . . . 64 5 Derivace složené funkce, Taylorův vzorec 71 5.1 Parciální derivace složených funkcí . . . . . . . . . . . . . . . . . 71 5.2 Taylorova věta . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 4 Obsah 6 Lokální a absolutní extrémy 87 6.1 Lokální extrémy . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 6.2 Absolutní extrémy . . . . . . . . . . . . . . . . . . . . . . . . . 96 7 Zobrazení mezi prostory vyšších dimenzí 105 7.1 Zobrazení z R2 do R2 . . . . . . . . . . . . . . . . . . . . . . . . 105 7.2 Zobrazení z Rn do Rm . . . . . . . . . . . . . . . . . . . . . . . 109 7.3 Diferenciální operátory matematické fyziky . . . . . . . . . . . . 112 8 Funkce zadaná implicitně 117 8.1 Implicitně zadaná funkce jedné proměnné . . . . . . . . . . . . . 118 8.2 Implicitně zadaná funkce více proměnných . . . . . . . . . . . . 125 8.3 Implicitně zadané zobrazení mezi prostory vyšších dimenzí . . . . 128 9 Vázané extrémy 135 9.1 Metoda Lagrangeových multiplikátorů . . . . . . . . . . . . . . . 135 9.2 Vázané extrémy a nerovnosti . . . . . . . . . . . . . . . . . . . . 143 10 Generování grafiky v Maplu 149 10.1 Graf funkce dvou proměnných . . . . . . . . . . . . . . . . . . . 149 10.2 Vrstevnice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 11 Výpočty limit v Maplu 167 11.1 Ilustrační grafika . . . . . . . . . . . . . . . . . . . . . . . . . . 167 11.2 Výpočty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 12 Derivace funkce v Maplu 181 12.1 Parciální derivace 1. řádu . . . . . . . . . . . . . . . . . . . . . . 181 12.2 Geometrický význam parciálních derivací . . . . . . . . . . . . . 183 12.3 Derivace vyšších řádů . . . . . . . . . . . . . . . . . . . . . . . . 186 12.4 Směrové derivace . . . . . . . . . . . . . . . . . . . . . . . . . . 189 12.5 Parciální derivace složených funkcí . . . . . . . . . . . . . . . . . 192 13 Aproximace funkce v Maplu 201 13.1 Diferencovatelná funkce . . . . . . . . . . . . . . . . . . . . . . 201 13.2 Tečná rovina ke grafu funkce . . . . . . . . . . . . . . . . . . . . 212 13.3 Užití diferenciálu k přibližným výpočtům . . . . . . . . . . . . . 219 13.4 Taylorova věta . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 13.5 Kmenová funkce . . . . . . . . . . . . . . . . . . . . . . . . . . 227 Obsah 5 14 Extrémy funkce v Maplu 231 14.1 Lokální extrémy . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 14.2 Absolutní extrémy . . . . . . . . . . . . . . . . . . . . . . . . . 250 14.3 Vázané extrémy . . . . . . . . . . . . . . . . . . . . . . . . . . . 258 15 Funkce zadaná implicitně v Maplu 263 15.1 Generování PC-grafu funkce zadané implicitně . . . . . . . . . . 263 15.2 Výpočty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267 16 Software pro podporu výuky matematické analýzy 275 16.1 Systémy počítačové algebry . . . . . . . . . . . . . . . . . . . . 275 16.2 Public-domain programy . . . . . . . . . . . . . . . . . . . . . . 278 16.3 Materiály na Internetu . . . . . . . . . . . . . . . . . . . . . . . . 280 Výsledky cvičení kapitol 1­9 283 Použitá literatura 291 Rejstřík 295 Předmluva Tento CD-ROM je učební text nového typu využívající možností současné výpo- četní techniky. Jde o moderní způsob výuky matematické analýzy, kdy prostřed- nictvím počítačových technologií se student učí matematickou analýzu a naopak. Podnětem k vytvoření CD-ROM byla potřeba zvýšit geometrickou představivost studentů a zmodernizovat výuku využitím moderních technologií. Jako první partie z matematické analýzy byl vybrán ,,Diferenciální počet funkcí více proměnných", a to z těchto důvodů: problémy zde řešené jsou vhodné pro počítačové zpracování, vybrané téma vyžaduje dobrou geometrickou předsta- vivost v prostoru a neexistuje dostatek zahraničních materiálů k tomuto tématu. Základem CD-ROM byl učební text [D], práce [P3] a zkušenosti s přípravou CD- -ROM na Masarykově univerzitě v Brně ([DKV, So]). K počítačové realizaci byl vybrán program Maple V pro svoje snadné ovládání a široké rozšíření na vysokých školách v České republice. Vlastní text je uložen ve formátu PDF (Portable Document Format), který se stává standardem pro elektro- nickou publikační činnost a je nezávislý na platformě. Kromě jiného volně šířené programy pro čtení PDF Acrobat Reader a GhostView umožňují prostřednictvím křížových odkazů a dalších funkcí rychle vyhledávat souvislosti napříč celým tex- tem. CD-ROM je určen pro posluchače odborného studia matematiky, fyziky, in- formatiky a učitelského studia matematiky a dále pro všechny zájemce o výuku matematické analýzy s využitím počítače a uživatele CAS systému Maple. Ma- teriály zde uvedené jsou koncipovány tak, aby uživatele vedly k samostatnému použití výpočetní techniky při studiu diferenciálního počtu funkcí více proměn- ných či k přípravě dalších materiálů pro podporu výuky. Spojení textu, grafiky, počítačových vstupů a výstupů by mělo vytvořit prostředí sloužící k maximálně efektivnímu zvládnutí probírané problematiky. CD-ROM je rozdělen do dvou základních částí ­ na část teoretickou a část praktickou. Teoretická část je rozdělena do devíti kapitol, v úvodu každé kapitoly jsou připomenuty příslušné pojmy z diferenciálního počtu funkcí jedné proměnné. 8 Předmluva Nové pojmy a tvrzení z diferenciálního počtu funkcí více proměnných jsou nej- prve formulovány pro funkce dvou proměnných a teprve potom obecně pro funkce n proměnných. Pouze v případech, kdy je situace zcela stejná pro dvě a více pro- měnných, uvádíme přímo definice a tvrzení pro n 2. V závěru každé kapitoly jsou uvedena cvičení, jejichž výsledky lze najít na konci textu. Praktická část ilustruje využití programu Maple V v diferenciálním počtu funkcí více proměnných. K probírané problematice je zde systémem Maple vytvo- řena ilustrační grafika a ukázky počítačového řešení příkladů. Teoretická i prak- tická část jsou úzce svázány prostřednictvím křížových odkazů (po seznámení s te- oretickým pojmem si pouhým stiskem tlačítka myši můžete prohlédnout jeho geo- metrickou interpretaci a seznámit se i se způsobem, jakým byla ilustrační grafika vygenerována). Všechny počítačové materiály jsou uloženy na CD-ROM. Uživa- tel CD-ROM může tedy snadno generovat podobné obrázky bez nutnosti studovat syntaxi příkazů Maplu. Závěrem děkujeme doc. RNDr. J. Kubenovi, CSc. za vypracování obrázků v první části textu, za pomoc při psaní v systému LATEX a převod první části textu do formátu PDF. Tento CD-ROM vznikl za podpory Fondu rozvoje VŠ v rámci řešení projektů č. 448/1999 a 801/2002. Brno, prosinec 2002 Autoři Využití počítače ve výuce matematické analýzy Rychlý rozvoj výpočetní techniky v současnosti ovlivňuje téměř všechny oblasti lidského života. Stranou nezůstává ani proces výuky na vysokých školách. V na- šich podmínkách bylo zatím použití počítače ve výuce spíš nahodilé a bylo pone- cháváno na iniciativě vyučujících. Až v poslední době se tímto způsobem výuky začíná zabývat větší počet vyučujích, kteří si své zkušenosti sdělují na konferen- cích pořádáných Českým sdružením uživatelů Maplu a na celostátních seminá- řích kateder matematiky fakult připravujících učitele matematiky (např. Počíta- čem podporovaná výuka matematiky a příprava didaktického experimentu, Ryb- ník u Poběžovic, 8.­11. září 1998). Otázky tohoto způsobu výuky však nejsou zatím souhrnně zpracovány a zod- povězeny. Tato kapitola je proto věnována problematice využití výpočetní tech- niky ve výuce matematické analýzy. Jejím cílem je ukázat možnosti tohoto způ- sobu výuky a najít odpověd' na otázky kde, proč a jak používat počítač při výuce matematické analýzy a zároveň upozornit i na úskalí používání počítačových sys- témů ve výuce. Využití počítače ve výuce matematické analýzy může být na základě našich zkušeností rozděleno následujícím způsobem: ˇ počítačová grafika; ˇ počítačové řešení úloh. Počítačová grafika ­ pod tímto termínem budeme v dalším rozumět jakýkoliv gra- fický výstup pořízený počítačem (obrazovka, tiskárna, ploter ...). Grafika může být statická (graf funkce) nebo dynamická (animace v CAS systémech). Počítačové řešení úloh ­ pod počítačovým řešením úloh rozumíme využití počí- tače při řešení zadaného matematického problému. Úlohy, při kterých získáváme řešení pouze použitím standardního příkazu sys- tému, nebudeme uvažovat. V takovém případě je pro nás počítač jakousi ,,černou 10 Využití počítače ve výuce matematické analýzy skříňkou", která nám dává výsledek bez našeho přispění a bez pochopení, co se děje ,,uvnitř". Naše pozornost bude soustředěna na netriviální a smysluplné po- užití počítače při řešení matematických problémů, tj. tam, kde počítač pomáhá při: ˇ rutinních a zdlouhavých výpočtech (předpokládá se, že daná technika výpočtu byla již dříve probrána); ˇ opakování a prohloubení probírané látky jiným, netradičním postupem (úloha je formulována tak, že bez znalosti nezbytné teorie je počítačově neřešitelná); ˇ vysvětlení, objasnění daného teoretického pojmu či závislosti (často v úzkém spojení s počítačovou grafikou). Vedle těchto dvou základních způsobů využití počítače ve výuce matematické analýzy někdy používáme i programy k testování znalostí. Ty slouží k mecha- nickému procvičování a prověřování získaných vědomostí a dovedností. Protože program Maple V není určen k tvorbě takových testů, uvádíme pouze v kapitole 16 odkazy na testovací programy na Internetu. Pokusme se nyní nalézt odpovědi na otázky položené v předcházejícím od- stavci. Kde Kde, přesněji ve které fázi a formě výuky a vzdělávání v matematické analýze lze efektivně využívat výpočetní techniku? Ze získaných zkušeností plyne, že výpo- četní techniku lze používat při: ˇ přednáškách; ˇ cvičeních; ˇ samostatné přípravě studentů. Při přednáškách využíváme nejčastěji počítačovou grafiku. Méně časté je po- užití počítačového řešení úloh, ale i to nachází při přednáškách uplatnění, a to zejména při usnadnění zdlouhavých výpočtů a při úpravách výrazů. Testovací pro- gramy při přednáškách nevyužíváme. Při cvičeních hraje klíčovou roli počítačové řešení úloh, které je doplněno po- čítačovou grafikou a testovacími programy (myšlena jsou speciální cvičení v po- čítačové laboratoři). Totéž platí i pro samostatnou přípravu, pouze roste úloha testovacích pro- gramů. Využití počítače ve výuce matematické analýzy 11 Proč Proč výpočetní techniku, přesněji výše uvedené způsoby, ve výuce matematické analýzy využívat? Geometrická představivost hraje v matematické analýze významnou úlohu (stu- denti někdy nemají s daným matematickým pojmem spojenu konkrétní geomet- rickou představu). K jejímu vytváření významnou měrou přispívá i počítačová grafika. Ta umožňuje vytvářet tuto geometrickou představu i v případech, které jsou bez použití počítače jen těžko realizovatelné (viz např. obr. 11.6). Při ře- šení příkladů si pak student může vytvořit geometrickou představu o tom, co má počítat, a může získané výsledky s počítačovou grafikou konfrontovat (viz např. příklad 14.4). Zjednodušení rutinních výpočtů umožní studentům věnovat více času výběru metody řešení a interpretaci výsledků. V důsledku toho můžeme obohatit různo- rodost typů, zvýšit počet a prohloubit náročnost problémů, které studenti samo- statně řeší. Ilustrací takového přístupu je například určování limity funkce dvou proměnných (kapitola 11.2). Nezanedbatelný je i příspěvek počítačového řešení úloh k opakování a prohloubení učiva. Ilustrujme tento přístup na hledání stacio- nárních bodů funkce dvou proměnných (příklad 14.1). Student musí nejdříve sám sestavit soustavu rovnic pro nalezení stacionárních bodů. Počítače pak využije k výpočtu odpovídajících parciálních derivací a k výpočtu soustavy rovnic (při ře- šení postupuje stejně jako při řešení pomocí ,,tužky a papíru", pouze vlastní zápis provádí formou příkazů zvoleného počítačového systému). Dalším stupněm je pak automatizace tohoto postupu pomocí programovacího jazyka zvoleného systému. Počítačové řešení úloh přispívá i k objasnění teoretických pojmů a prohloubení jejich pochopení (např. znázornění geometrického významu směrových derivací, kapitola 12.2). Ve všech uvedených případech studentům použití počítače umož- ňuje soustředit se na podstatu problému více než na mechanické zvládnutí výpo- čtu. Použití počítače ve výuce má však i svá úskalí. Ne vždy totiž počítačovým programem získáme výsledek, který odpovídá skutečnosti. Při výuce studentů u počítače je proto třeba klást důraz na interpretaci a kontrolu získaných výsledků. Studenti mají často tendenci používat počítačový program mechanicky, bez uva- žování. Uved'me si jeden ilustrační příklad: Příklad. Pomocí počítače nakreslete graf funkce f (x) = ex + ln |(4 - x)| pro x 0, 5 . K řešení byl použit systém Maple. > f:=x->E**x+ln(abs(4-x)); f := x Ex + ln( |4 - x| ) 12 Využití počítače ve výuce matematické analýzy > plot(f(x),x=0..5, labels=[x,y]); Řada studentů se zde soustředí především na syntaxi příkazu a je se získaným výsledkem spokojena (obr. 1). Podrobnější analýzou zadané funkce ale zjistíme, že tato funkce f je v bodě 4 nespojitá a limx4 f (x) = -. Grafický výstup proto poté upravíme přidáním parametru discont=true a zvýšením počtu re- ferenčních bodů (tj. bodů, které Maple používá k aproximaci zadané funkce). Pro větší názornost volíme x z intervalu 3.9, 4.1 (obr. 2). > plot(f(x), x=3.9..4.1, y=47..58, numpoints=500, > discont=true, labels=[x,y]); 0 20 40 60 80 100 120 140 y 0 1 2 3 4 5 x obr. 1 48 50 52 54 56 58 y 3.9 3.95 4 4.05 4.1 x obr. 2 V dalších částech práce průběžně upozorňujeme na nebezpečí bezmyšlenkovi- tého použití počítače. Budou uvedeny příklady, kdy počítač dává nesprávné nebo neúplné výsledky (obr. 10.5, příklad 14.4 ...). Ty jsou na druhou stranu důležité z hlediska motivace. Ukazují, že počítač není ,,všemocný" ­ teprve porozumění probírané látce dělá z počítače skutečně ,,mocného" pomocníka. Jak Jak, přesněji s jakým technickým vybavením a při jaké organizaci výuky (časové i obsahové) počítačem podporovanou výuku realizovat? Zabývejme se nejdříve podrobněji technickou realizací uvedených způsobů pou- žití počítače ve výuce matematické analýzy. Pro využití počítače při přednáškách je nejvýhodnější v posluchárně trvale instalovat počítač s projektorem, případně LCD panelem a promítacím plátnem. Při tomto uspořádání může projekční plátno sloužit jako ,,inteligentní tabule", kdy např. můžeme změnou parametrů zadání již vyřešeného příkladu okamžitě vyřešit příklad modifikovaný. Výhodou tohoto uspořádání je tedy možnost dynamické změny parametrů (např. oproti grafickým Využití počítače ve výuce matematické analýzy 13 výstupům připraveným na tiskárně) a přímé interakce vyučujícího s počítačovým programem. Příklady počítačového řešení úloh by bez tohoto uspořádání bylo jen obtížně možno na přednáškách realizovat. Pokusy s konáním přednášek přímo v počítačové učebně končily většinou nezdarem. Studenti v tomto případě věno- vali větší pozornost interakci s počítačem než výkladu vyučujícího. Další nevýho- dou pak bylo různé tempo postupu. Studenti s menší znalostí práce s počítačem nebyli schopni po určité době výklad sledovat. Dále se ukázalo, že naproti tomu cvičení je optimální provádět v počítačové učebně, a to tak, aby každý student pracoval u svého počítače či terminálu. Vý- hodou je možnost individuálního postupu u každého studenta. Nezbytná je také podmínka volného přístupu studentů do počítačové učebny, protože řada úkolů je určena k samostatnému řešení během týdne. Kromě nezbytného hardwaru je zapotřebí i vhodný software. Pro matematic- kou analýzu je nejvýhodnější zajištění některého z CAS systémů, výuku je však možno realizovat i pomocí specializovanějších public domain programů, které jsou volně přístupné na počítačové síti Internet. K výuce některých partií je možno využívat také interaktivní programy, přístupné na Internetu. O těchto možnostech bude podrobněji pojednáno v kapitole 16. Druhá otázka ­ začlenění počítačem podporované výuky do osnov ­ závisí zejména na typu (zaměření) školy. Ideální by bylo přidat k současným ,,klasic- kým" cvičením ještě další hodiny počítačové výuky. V USA v rámci projektu CALC (Calculus As a Laboratory Course) byla klasická cvičení zrušena úplně, výpočetní operace a metody jsou procvičovány v rámci počítačové výuky. Dosavadní výsledky a hodnocení projektu ukazují, že studenti zahrnutí do projektu dosahují u zkoušek lepších výsledků a hlub- šího pochopení látky než studenti v tradičních třídách, v těchto třídách je ale na vyšší úrovni početní zručnost. Informace o projektu je možno nalézt na adrese http://www.math.duke.edu/education/proj_calc/. Zavedení výuky podobné projektu CALC však v našich podmínkách na- ráží na téměř nulovou možnost zvýšení počtu hodin věnovaných výuce mate- matické analýzy. Stávající sylabus je dimenzován tak, že zavedení počítačové výuky by bylo na úkor současného obsahu učiva. Snížení počtu hodin klasic- kých cvičení na úkor počítačových laboratoří by mohlo mít za následek sní- žení početních schopností studentů, což je zejména u studentů učitelského stu- dia jevem nežádoucím. Těžiště využití počítače je zde tedy především při před- náškách a jako doplnění klasických cvičení (zejména příklady ilustrační gra- fiky). Ukázkami ve výuce a při cvičeních by studenti měli být motivováni k samostatné práci a k experimentování v počítačové laboratoři. (Předpokla- 14 Využití počítače ve výuce matematické analýzy dem je opět volný přístup do počítačové laboratoře vybavené vhodným soft- warem.) Snazší je zavedení výuky v počítačových laboratořích na školách, kde je ma- tematika aplikovanou vědou, tj. zejména na vysokých školách technického směru. Zde můžeme rozdělit cvičení na část klasickou a počítačovou (např. střídavě po 14 dnech jako na strojní fakultě VUT v Brně). U těchto oborů je výhodné, aby po analýze problému vlastní výpočet provedl počítač. (Není zde kladen takový důraz na početní zručnost studentů.) Technické poznámky V počátečních kapitolách počítačového zpracování tématu je v textu řešení pří- kladů zápis uváděn ve dvojí podobě. Nejdříve je uveden obvyklý matematický zápis (sazba je provedena systémem LATEX) a následně zápis výpočtu v Maplu. Poté co si čtenář postupně zvykne na zápis v Maplu, je matematický zápis vyne- cháván a uváděny jsou již pouze příkazy Maplu. Mapleovské vstupy jsou v textu označovány > a změnou typu písma na strojopisné. Vstup (zadání příkazu) je v Maplu ukončován pomocí znaků ; nebo:. Pokud je vstup zakončen znakem ;, následují ihned řádky s výstupem, při ukončení pomocí : se řádky s výstupem nevypisují na obrazovku, a nejsou tedy uvedeny ani v textu. Vstupy a výstupy byly získány exportem (automatickým převedením) Mapleovských zápisníků do systému TEX (v textu je vždy uvedena úplná posloupnost příkazů). Všechny pro- cedury naprogramované pro účely této práce jsou uloženy v knihovně mvcalp. Při programování procedur byl větší důraz kladen na jednoduchost a matematic- kou správnost než na programátorskou efektivnost a úplnost tak, aby procedury nebyly zbytečně složité a aby je byli schopni vytvářet i studenti bez hlubší zna- losti programovacích jazyků. Knihovna mvcalp a všechny Mapleovské zápis- níky s ilustračními příklady jsou taktéž uloženy na CD-ROM. Všechny obrázky jsou uloženy v PostScriptu1 a jsou přístupné také prostřednictvím Internetu na adrese http://www.math.muni.cz/~plch/difer/difer.html. Maple V R3 byl zvolen pro snadné ovládání a dostupnost. Během tvorby práce došlo k dalšímu vývoji programu, proto se v práci vyskytují i odkazy na verzi Maple V R4 (verze Maple V R5 byla k dispozici teprve až v době závěreč- ného zpracování, proto na ni v textu neodkazujeme). Maple byl provozován na počítači s operačním systémem Linux. Přechodem k jinému operačnímu systému 1Jeden z nejpoužívanějších jazyků pro popis stránky (PDL), vyvinutý společností Adobe Sys- tems. Využití počítače ve výuce matematické analýzy 15 (Windows 9x, Me, 2000, XP) může dojít k prodloužení doby potřebné k výpočtu (zejména u generování grafiky). Kapitola 1 Pojem funkce více proměnných Reálná funkce jedné reálné proměnné, stručně funkce jedné proměnné, je zobra- zení z R do R. Zobecněním tohoto pojmu je zobrazení z Rn (n 2) do R, které se nazývá funkce více proměnných. Cílem této kapitoly je naučit se určovat pro funkci dvou a více proměnných její definiční obor a graf. Přestože tato kapitola jako jediná neobsahuje žádnou matematickou větu, je svým zaměřením na geometrii v R2 a R3 fundamentální. Definice 1.1. Necht' M Rn , n 1, M = . Zobrazení f : M R se nazývá reálná funkce n reálných proměnných a množina M se nazývá definiční obor této funkce a značí se D( f ). Z předchozí definice vyplývá, že po formální stránce funkce f : M R je množina uspořádaných dvojic [x, y] M × R, x = [x1, . . . , xn] (tj. relace na M × R), která má následující vlastnosti: 1. x M, y R. 2. Ke každému bodu x = [x1, . . . , xn] M existuje právě jedno číslo y (bod pro- storu R) tak, že [x, y] f . Obraz bodu x = [x1, . . . , xn] M v zobrazení f , tj. reálné číslo y takové, že [x, y] f , označujeme f (x) nebo f (x1, . . . , xn) a nazývá se hodnota funkce f nebo také funkční hodnota v bodě x = [x1, . . . , xn]. Z definice funkce více proměnných vyplývá, že tato funkce je jednoznačně určena udáním jejího definičního oboru D( f ) a předpisem, kterým je každému bodu x = [x1, . . . , xn] D( f ) přiřazena funkční hodnota f (x). Pokud je předpis dán vzorcem a není udán definiční obor funkce, pak definičním oborem rozumíme množinu všech bodů x Rn , pro něž má tento vzorec smysl. 18 Pojem funkce více proměnných Pro n = 2 budeme místo f (x1, x2) psát f (x, y) a pro n = 3 místo f (x1, x2, x3) píšeme f (x, y, z). Příklad 1.1. i) Zobrazte v rovině definiční obor funkce f (x, y) = x2 + (y - 2)2 4 - 1 x2 + y2 - 6x . Řešení. Výraz pod odmocninou musí být nezáporný, tj. musí být splněna pod- mínka (y - 2)2 4 + x2 - 1 x2 + y2 - 6x 0. To nastane, právě když (y - 2)2 4 + x2 - 1 0 a (x2 + y2 - 6x) 0 nebo (y - 2)2 4 + x2 - 1 0 a (x2 + y2 - 6x) 0. cx y 1 2 3 4 5 1 2 3 Rovnice (y-2)2 4 + x2 = 1 je rovnicí elipsy se středem v bodě [0, 2] a poloosami délek a = 1 a b = 2, rovnice x2 + y2 - 6x = 0 je rovnicí kružnice se středem v bodě [3, 0] a poloměrem r = 3, nebot' tuto rovnici lze pře- vést na tvar (x - 3)2 + y2 = 9. Množina všech bodů [x, y] R2 splňující výše uvedené ne- rovnosti, tj. definiční obor funkce f , je zná- zorněna na vedlejším obrázku. Je to uzavřená množina v R2 . ii) Zobrazte v rovině definiční obor funkce f (x, y)=arccos(x2 +y2 -1) + |x| + |y| - 2. Řešení. Definičním oborem funkce arccos je interval [-1, 1], první sčítanec je tedy definován pro [x, y] splňující nerovnosti -1 x2 + y2 - 1 1, Pojem funkce více proměnných 19 ex y 2- 2 2 - 2 tj. 0 x2 + y2 2, což je vnitřek a hranice kruhu se středem v počátku a poloměrem r = 2. Definič- ním oborem druhého sčítance je množina bodů [x, y] splňující nerovnost |x| + |y| - - 2 0. Načrtněme v rovině křivku danou rovnicí |x| + |y| = 2. V prvním kvadrantu je tato rovnice ekvivalentní rov- nici x + y = 2, což je rovnice přímky. Ve zbývajících kvadrantech postupujeme ob- dobně a obdržíme kosočtverec načrtnutý na vedlejším obrázku. Definičním obo- rem funkce f je množina vyšrafovaná na tomto obrázku. Tato množina je uza- vřená v R2 . iii) Zobrazte v rovině definiční obor funkce f (x, y) = ln(y ln(y - x)). Řešení. Logaritmovaný výraz musí být kladný, musí být tedy splněna nerovnost y ln(y - x) > 0, která je ekvivalentní dvojici nerovností ln(y - x) > 0, y > 0; ln(y - x) < 0, y < 0, jež jsou dále ekvivalentní systémům nerovností y > 0, y - x > 1 a y < 0, y - x < 1, y - x > 0 (poslední nerovnost plyne z definičního oboru funkce ln(y - x)). Řešením těchto dvou systémů nerovností je množina načrtnutá na obr. 1.1. Je to otevřená množina v R2 . iv) Zobrazte definiční obor funkce f (x, y) = arcsin x y2 + arcsin(1 - y). Řešení. Definičním oborem funkce arcsin je interval [-1, 1]. Proto musí být spl- něny podmínky: -1 x y2 1, tj. y2 -x, y2 x, y = 0 a zároveň -1 1 - y 1, tj. y [0, 2]. Celkem tedy D( f ) = {[x, y] : y2 -x, y2 x, y (0, 2]}, tato množina je načrtnuta na obr. 1.2. Je to množina, která není ani otevřená, ani uzavřená v R2 (nebot' [0, 0] / D( f )). 20 Pojem funkce více proměnných dx y 1 -1 y = x + 1 y = x obr. 1.1 z = ln(y ln(y - x)) fx y 2 -2 x = -y2 x = y2 obr. 1.2 z = arcsin x y2 + arcsin(1 - y) Definice 1.2. Necht' f je funkce n proměnných definovaná na množině M Rn , n 2. Grafem funkce f nazýváme množinu bodů G( f ) = {[x, y] Rn+1 : x = [x1, . . . , xn] M, y = f (x)}. gy z x yz xz xy obr. 1.3 Souřadné stěny xy, xz, yz Pro funkci dvou proměnných, tj. n = 2, je grafem funkce množina bodů v troj- rozměrném prostoru. V příkladech, se kterými se zde setkáme, to bude vždy ně- jaká trojrozměrná plocha. K získání názorné představy, jaký je tvar a průběh této plochy, nám pomohou řezy rovinami z = 0, y = 0, x = 0 (což jsou rovnice souřad- ných stěn xy, xz, yz, viz obr. 1.3) a rovinami s nimi rovnoběžnými. Pojem funkce více proměnných 21 Definice 1.3. Necht' M R2 a f : M R je funkce dvou proměnných defi- novaná na M, c R. Množinu fc = {[x, y] M : f (x, y) = c} nazýváme vrstevnice funkce f na úrovni c. Pojem vrstevnice funkce lze samozřejmě analogicky definovat i pro funkce n proměn- ných, n 3, zde však ztrácíme názorný ,,geografický" význam. Chápeme-li graf funkce dvou proměnných jako reliéf krajiny, pak vrstevnice funkce na úrovni c je množina všech bodů s nadmořskou výškou rovnou c, tj. náš pojem vrstevnice je totožný s geografickým významem tohoto slova. Příklad 1.2. i) Pomocí vrstevnic a řezů rovinami xz, yz zobrazte graf funkce f (x, y) = x2 + y2. Řešení. Vrstevnice funkce na úrovni k > 0 jsou dány rovnicemi k = x2 + y2, tj. k2 = x2 + y2 , což jsou kružnice se středem na ose z a poloměrem k, viz obr. 1.4. Řez rovinou yz, tj. x = 0, dává z = y2 = |y|. Řezem je lomená čára s vr- cholem v počátku daná rovnicí z = |y|. Podobně řez rovinou y = 0 dává z = |x|. V obou případech je řezem lomená čára s vrcholem v počátku o rovnici z = |y|, resp. z = |x|, viz obr. 1.5, 1.6. (V terminologii technického kreslení a zobrazova- cích metod se vlastně jedná o průmět do svislých souřadných nárysen, tj. nárys a bokorys.) hx y z = 1 z = 2 obr. 1.4 Půdorys ix z z = |x| y = 0 obr. 1.5 Bokorys iy z z = |y| x = 0 obr. 1.6 Nárys Na základě získaných výsledků již můžeme říci, že grafem funkce z = = x2 + y2 je rotační kužel s vrcholem v počátku a hlavní osou z, nacházející 22 Pojem funkce více proměnných se v poloprostoru z 0, viz obr. 1.10. Na tomto obrázku je znázorněn i dolní kužel, který je grafem funkce z = - x2 + y2. ii) Zobrazte v R3 graf funkce f (x, y) = x2 a2 + y2 b2 , a, b > 0. Řešení. Podobně jako v předchozím příkladu jsou vrstevnice dány rovnicemi k = x2 a2 + y2 b2 , tj. x2 ka2 + y2 kb2 = 1, což jsou rovnice elipsy se středem v počátku a poloosami a k, b k, viz obr. 1.7. Řezy rovinami y = 0, x = 0 dávají z = x2 a2 , z = y2 b2 , což jsou rovnice parabol s vrcholem v počátku souřadných stěn xz a yz, viz obr. 1.8, 1.9. Celkem vidíme, že grafem je plocha, která se nazývá eliptický paraboloid. Tato plocha je prostorově v okolí počátku znázorněna na obr. 1.11. jx y a b z = 1 obr. 1.7 Půdorys kx z z = x2 a2 y = 0 obr. 1.8 Bokorys ly z z = y2 b2 x = 0 obr. 1.9 Nárys iii) Zobrazte v R3 definiční obor funkce f (x, y, z) = ln(-z2 - x2 - y2 + 1). Řešení. Logaritmická funkce je definována jen pro kladná čísla. Proto musí být -z2 - x2 - y2 + 1 > 0, tj. x2 + y2 + z2 < 1, a tedy D( f ) = {[x, y, z] R3 : x2 + y2 + z2 < 1}. V řezech rovinami z = 0, y = 0, x = 0 postupně dostáváme x2 + y2 < 1, x2 + + z2 < 1, y2 + z2 < 1, což jsou body uvnitř kružnice se středem v počátku a poloměru r = 1, celkem je tedy definičním oborem vnitřek koule se středem v bodě [0, 0, 0] a poloměrem r = 1, je to otevřená množina v R3 . Pojem funkce více proměnných 23 x y z obr. 1.10 z = x2 + y2 x y z obr. 1.11 z = x2 a2 + y2 b2 Příklad 1.3. i) Načrtněte v rovině vrstevnice funkce z = e 2x x2+y2 . Řešení. Vrstevnice funkce mají rovnici c = e 2x x2+y2 a odtud ln c = 2x x2+y2 . Označíme-li nyní ln c = k, postupnými úpravami dostáváme k = 2x x2 + y2 k(x2 + y2 ) = 2x x2 - 2 k x + y2 = 0, a tedy pro k = 0 (tj. c = 1), (x - 1 k )2 + y2 = 1 k2 . mx y c = e2 c = e (k = 1)c = 1 e (k = -1) c = 1 e2 c = 1 (k = 0) -3/2 -1/2 1/2 3/2 Z poslední rovnice je již vidět, že vrstevnicemi dané funkce pro c = 1 jsou kružnice se stře- dem S = [1 k , 0] = [ 1 ln c , 0] a po- loměrem r = 1 |k| = 1 | ln c| pro- cházející počátkem, avšak bez počátku (nebot' pro bod [0, 0] není funkce definována). Pro c = 1 dostáváme 0 = 2x x2+y2 , tj. x = 0, vrstevnicí dané funkce pro c = 1 je tedy osa y (bez počátku). ii) Načrtněte vrstevnice funkce z = |x| - |y| + |x - y|. Řešení. Nejprve se zbavíme ve vyjádření funkční závislosti absolutních hodnot. Provedeme diskusi v jednotlivých kvadrantech. 24 Pojem funkce více proměnných Ia) x 0, y 0, x y = z = x - y + x - y = 2(x - y). Ib) x 0, y 0, x < y = z = x - y - x + y = 0. II) x < 0, y 0, (zde vždy x y) = z = -x - y - x + y = -2x. Obdobným způsobem získáme vyjádření funkční závislosti bez absolutních hodnot ve zbývajících dvou kvadrantech a jako výsledek obdržíme situaci znázor- něnou na obr. 1.12. Protože pro libovolná [x, y] R2 platí nerovnost |x - y| |y| - |x| (zdůvodněte proč), je vždy f (x, y) 0, tj. pro c < 0 je fc = . Pro c 0 načrtneme v jednotlivých sektorech křivku |x| - |y| + |x - y| = c a pro c = 0, 1, 2, 3 je výsledek znázorněn na obr. 1.13. nx y z = 0 z = 0 z = -2x z = 2x z = 2(x - y) z = 2(y - x) y = x obr. 1.12 z = |x - y| + |x| - |y| ox y c = 0 c = 0 c = 1 c = 2 c = 3 c = 1 c = 2 c = 3 obr. 1.13 Vrstevnice Cvičení 1.1. Zobrazte v rovině definiční obory funkcí: a) z = 1 - x2 - 4y2 g) z = x2+y2-x 2x-x2-y2 b) z = 1 - x2 9 + y2 4 h) z = arccos x x+y c) z = ln(x + y) i) z = 1 - (x2 + y)2 d) z = (x2 + y2 - 1)(4 - x2 - y2) j) z = 4x-y2 ln (1-x2-y2) e) z = arcsin x y - 1 |y|-|x| k) z = ln [x ln(y - x)] f) z = 1 - x2 + 1 - y2 l) z = (1 - x2 - y2)(x2 4 + y2 - 2y) Pojem funkce více proměnných 25 1.2. Načrtněte vrstevnice funkcí: a) z = x2 + y2 c) z = xy , kde x > 0 b) z = x2 - y2 d) z = x y 1.3. Pomocí vrstevnic a řezů rovinami xz, yz načrtněte v prostoru grafy funkcí: a) z = 2 - x - y c) z = 1 - x2 - y2 d) z = 1 2 (x2 - y2 ) e) z = 1 2x2+3y2 b) z = x2 + y2 f) z = 2 - x2 + y2 1.4. Určete definiční obory funkcí: a) u = 1 + x2 - y2 - z2 f) u = ln (xyz) b) u = 1 - x + y + 3 + z g) u = 1 - x2 a2 - y2 b2 - z2 c2 c) u = 1 + x2 + y2 - z2 h) u = 1 - x2 a2 - y2 b2 - z2 c2 d) u = arccos z x2+y2 i) u = arcsin x y + arcsin y + arccos z 3 e) u = 1 + x2 a2 + y2 b2 - z2 c2 j) u = ln (-x2 - y2 + 2z) Většina učitelů ztrácí čas tím, že klade otázky, jejichž cílem je zjistit, co žák neumí, zatímco pravé umění tázat se spočívá v tom, že má odhalit, co žák umí nebo je schopen umět. (A. Einstein) Kapitola 2 Limita a spojitost funkce Pojem limity funkce patří k základním pojmům diferenciálního počtu. Je to lo- kální vlastnost funkce, popisující chování funkce v ryzím okolí bodu, v němž limitu určujeme. (Ryzím okolím bodu rozumíme okolí kromě tohoto bodu.) Sku- tečnost, že jde o ryzí, okolí znamená, že limita nezávisí na funkční hodnotě funkce v tomto bodě ­ funkční hodnota se může lišit od limity v tomto bodě nebo funkce nemusí být v daném bodě vůbec definována. Rovněž pojem spojitosti funkce více proměnných lze podobně jako pro funkce jedné proměnné definovat pomocí limity funkce, proto zde najdeme řadu tvrzení podobných těm, se kterými jsme se již setkali v diferenciálním počtu funkcí jedné proměnné. K definici limity, spojitosti a všech dalších pojmů diferenciálního počtu je třeba na Rn zavést metriku. Proto připomeňme několik základních pojmů z teorie metrických prostorů. 2.1 Metrické vlastnosti Rn Připomeňme, že -okolí vlastního bodu a R lze zapsat jako interval |x - a| < , > 0. Okolí O(a) bodu a Rn je definováno pomocí metriky v Rn jako množina O(a) = {x Rn : (x, a) < }. Není-li poloměr okolí podstatný, budeme index vynechávat. Podle výběru metriky dostáváme různé typy okolí. Např. v R2 dostaneme kru- hové okolí, zvolíme-li euklidovskou metriku 2([x1, y1], [x2, y2]) = (x1 - x2)2 + (y1 - y2)2, 28 Limita a spojitost funkce čtvercové okolí dostaneme volbou maximové metriky ([x1, y1], [x2, y2]) = max{|x1 - x2|, |y1 - y2|}, či kosočtvercové okolí, zvolíme-li součtovou metriku 1([x1, y1], [x2, y2]) = |x1 - x2| + |y1 - y2|. Podstatná je ekvivalentnost těchto metrik, která znamená, že existence (neexis- tence) limity nezáleží na tom, kterou z těchto ekvivalentních metrik zvolíme (viz [D-D]). Z důvodu formální jednoduchosti zvolme v této kapitole maximální metriku, ve které je okolí bodu a = [a1, . . . , an] Rn kartézským součinem okolí jednotli- vých souřadnic a1, . . . , an, tj. O(a) = {x = [x1, . . . , xn] Rn : max 1in |xi - ai | < }. Ryzím okolím bodu a rozumíme množinu O(a)\{a}. Okolí nevlastních bodů v R2 jsou definována v souladu s maximální metrikou takto: Okolím nevlastního bodu [, ] rozumíme libovolnou množinu typu (a, ) × ×(b, ), a, b R. Analogicky definujeme okolí nevlastního bodu [-, ], [, -], [-, -], i okolí bodů typu [a, ], [, a]. Okolí nevlastních bodů v prostorech vyšších dimenzí jsou definována analogicky. Množinu Rn spolu s nevlastními body bu- deme označovat (R)n. V definici limity vystupují funkční hodnoty funkce v ryzím (libovolně malém) okolí bodu, v němž limitu definujeme. Z tohoto důvodu lze limitu funkce vyšetřovat jen v hro- madných bodech definičního oboru. Proto, aniž bychom tento fakt stále zdůrazňovali, budeme ve všech kapitolách, kde se vyskytuje limita funkce v daném bodě, předpokládat, že tento bod je hromadným bodem množiny D( f ) (připomeňme, že bod x D( f ) je hromadným bodem množiny D( f ), jestliže každé jeho ryzí okolí obsahuje alespoň jeden bod této množiny). 2.2 Limita funkce Definice 2.1. Řekneme, že funkce f : Rn R (n 1) má v bodě a (R )n limitu L, L R , jestliže ke každému okolí O(L) bodu L existuje ryzí okolí O(a) bodu a takové, že pro každý bod x O(a) D( f ) platí f (x) O(L). Píšeme lim xa f (x) = L . Limita funkce 29 Limita se nazývá vlastní, jestliže L R, v opačném případě (L = ) se nazývá nevlastní limita. Bod a (Rn ) se nazývá limitní bod. Uvedená definice limity je univerzální definicí pro funkci jedné či více pro- měnných, pro vlastní či nevlastní limitu a pro vlastní i nevlastní limitní body. Specifikací okolí pro vlastní limitní bod i limitu a Rn , L R dostáváme tzv. - definici vlastní limity ve vlastním bodě. Tuto definici zde zformulujeme pro funkci dvou proměnných. Definice 2.2. Řekneme, že funkce f : R2 R má v bodě [x0, y0] R2 limitu L R, jestliže ke každému > 0 existuje > 0 takové, že pro každý bod [x, y] D( f ) splňující |x - x0| < , |y - y0| < , [x, y] = [x0, y0] platí | f (x, y) - L| < . Píšeme lim (x,y)(x0,y0) f (x, y) = L. Zásadní rozdíl mezi limitou funkce jedné proměnné a limitou funkce dvou a více proměnných spočívá v ,,dimenzi" okolí limitního bodu ­ u funkce jedné proměnné se k tomuto bodu můžeme blížit jen po přímce, tj. ze dvou stran (což znamená, že funkce má limitu v bodě, má-li obě jednostranné limity a tyto se sobě rovnají), zatímco u funkce více proměnných je těchto možností nekonečně mnoho; můžeme se blížit k danému bodu po přímkách, po parabolách či obecných množinách. Existence limity v daném bodě znamená, že nezáleží na cestě, po které se k danému bodu blížíme. Naopak dostaneme-li různé hodnoty limity pro různé cesty, znamená to, že limita v daném bodě nemůže existovat. Příklad 2.1. i) Pomocí konkrétní specifikace okolí limitního bodu a limity defi- nujte lim (x,y)(1,0) f (x, y) = . Řešení. Vzhledem k tomu, že okolí bodu je tvaru (A, ) a ryzí -okolí bodu [1, 0] je {(1 - , 1 + ) × (-, )}\{[1, 0]}, dostáváme tuto specifikaci obecné De- finice 2.1: Limita lim(x,y)(1,0) f (x, y) = , jestliže ke každému A R existuje > 0 takové, že pro všechna [x, y] D( f ) splňující |x - 1| < , |y| < , [x, y] = [1, 0] platí f (x, y) > A. 30 Limita a spojitost funkce x y z x y z ii) Dokažte, že funkce f (x, y) = 1 x2+y2 má v bodě [0, 0] nevlastní limitu . Řešení. Necht' A R je libovolné. Položme = 1 2|A| . Pro |x| < , |y| < platí x2 + y2 < 22 = 1 |A| . Odtud pro [x, y] = [0, 0] platí 1 x2+y2 > |A| > A. Tedy k A R libovol- nému jsme našli > 0 takové, že pro [x, y] = [0, 0] splňující |x| < , |y| < platí 1 x2+y2 > A, tj. podle definice limity lim(x,y)(0,0) 1 x2+y2 = . Graf funkce z = 1 x2+y2 je znázorněn na vedlejším obrázku. Podobně jako u funkce jedné proměnné platí následující věty o limitách funkcí. Protože definice limity funkce více proměnných pomocí okolí bodu je stejná jako pro funkci jedné proměnné, jsou i důkazy těchto tvrzení stejné jako pro funkce jedné proměnné. Čtenáři doporučujeme provést si je jako cvičení. Věta 2.1. Funkce f má v bodě [x0, y0] nejvýše jednu limitu. Věta 2.2. Necht' lim(x,y)(x0,y0) f (x, y) = 0 a funkce g je ohraničená v nějakém ryzím okolí bodu [x0, y0] (tj. existuje konstanta K 0 taková, že |g(x, y)| K v tomto ryzím okolí). Pak lim (x,y)(x0,y0) f (x, y)g(x, y) = 0. Věta 2.3. Necht' h(x, y) f (x, y) g(x, y) v nějakém ryzím okolí bodu [x0, y0] a platí lim (x,y)(x0,y0) h(x, y) = lim (x,y)(x0,y0) g(x, y) = L. Pak lim (x,y)(x0,y0) f (x, y) = L. Věta 2.4. Necht' lim (x,y)(x0,y0) f (x, y) = L1, lim (x,y)(x0,y0) g(x, y) = L2 Limita funkce 31 a L1, L2 R. Pak pro každé c, c1, c2 R platí lim (x,y)(x0,y0) cf (x, y) = cL, lim (x,y)(x0,y0) [c1 f (x, y) + c2g(x, y)] = c1L1 + c2L2, lim (x,y)(x0,y0) [ f (x, y)g(x, y)] = L1L2. Je-li L2 = 0, pak lim (x,y)(x0,y0) f (x, y) g(x, y) = L1 L2 . Věta 2.5. Má-li funkce f v bodě [x0, y0] (R )2 vlastní limitu, pak existuje ryzí okolí bodu [x0, y0], v němž je funkce f ohraničená. Poznámka 2.1. Počítání limit funkcí dvou a více proměnných je často obtížnější než v případě funkcí jedné proměnné, nebot' k počítání tzv. neurčitých výrazů (li- mity typu ,,0 0 ", ,, ") nemáme k dispozici žádnou analogii l'Hospitalova1 pravidla. Proto při výpočtu limit tohoto typu používáme různé úpravy funkce, jejíž limitu počítáme. Nejčastěji používané úpravy jsou ukázány v následujících příkladech. Příklad 2.2. Vypočtěte limity následujících funkcí: i) f (x, y) = x+y+1 x+y+3 v bodě [1, 0]. Řešení. Pokud můžeme souřadnice limitního bodu do příslušného výrazu dosadit (tj. po dosazení neobdržíme neurčitý výraz), je hodnota limity dané funkce rovna funkční hodnotě v tomto bodě. Platí tedy lim (x,y)(1,0) x + y + 1 x + y + 3 = 1 2 . ii) f (x, y) = x2+y2 x2+y2+1 -1 v bodě [0, 0]. Řešení. Protože bychom dosazením souřadnic limitního bodu získali neurčitý vý- raz typu 0 0 , najdeme hodnotu limity obratem typickým i pro funkce jedné pro- měnné. Čitatele i jmenovatele zlomku vynásobíme výrazem x2 + y2 + 1 + 1. Po 1Guillaume de l'Hospital (1661­1704), francouzský matematik 32 Limita a spojitost funkce této úpravě dostáváme lim (x,y)(0,0) x2 + y2 x2 + y2 + 1 - 1 = lim (x,y)(0,0) (x2 + y2 )( x2 + y2 + 1 + 1) x2 + y2 + 1 - 1 = = lim (x,y)(0,0) ( x2 + y2 + 1 + 1) = 2 . iii) f (x, y) = (x + y) sin 1 x sin 1 y v bodě [0, 0]. Řešení. Protože lim(x,y)(0,0)(x + y) = 0 a | sin 1 x sin 1 y | 1 pro každé [0, 0] = = [x, y] R2 , je podle Věty 2.2 lim(x,y)(0,0)(x + y) sin 1 x sin 1 y = 0. iv) f (x, y) = cos y x+y v bodě (1, ). Řešení. Nejprve ukážeme, že lim(x,y)(1,) 1 x+y = 0. Necht' > 0 je libovolné. Musíme najít > 0 a A R taková, že pro x (1 - , 1 + ) a y > A platí 1 x+y < . Necht' > 0 je libovolné a položme A = 1 + - 1. Pak pro x (1 - - , 1 + ), y > A platí x + y > 1 - + - 1 + 1 = 1 , odtud 1 x+y < . Protože funkce cos y je ohraničená, platí lim(x,y)(1,) cos y x+y = 0. v) f (x, y) = xy ln(x2 + y2 ) v bodě [0, 0]. Řešení. Z diferenciálního počtu funkcí jedné proměnné víme, že lim t0+ t ln t = 0 (to lze snadno spočíst pomocí l'Hospitalova pravidla). Protože platí nerovnost |xy| x2+y2 2 (která je ekvivalentní nerovnosti (x y)2 0), platí 0 |xy ln(x2 + y2 )| 1 2 (x2 + y2 ) ln(x2 + y2 ). (2.1) Položme t = x2 + y2 . Je-li (x, y) (0, 0), je t 0+, a tedy lim (x,y)(0,0) (x2 + y2 ) ln(x2 + y2 ) = lim t0 t ln t = 0. Nyní z nerovnosti (2.1) a Věty 2.1 plyne lim (x,y)(0,0) xy ln(x2 + y2 ) = 0. vi) f (x, y, z) = sin(x-y+z-1) x-y+z-1 v bodě [1, 1, 1]. Limita funkce 33 Řešení. Příklad vyřešíme metodou substituce. Položme t = x - y + z - 1. Pro (x, y, z) (1, 1, 1) je t 0. Protože limt0 sin t t = 1, k libovolnému > 0 existuje 1 > 0 takové, že pro 0 < |t| < 1 je sin t t - 1 < . Položme = 1 3 . Pak pro [x, y, z] R3 splňující |x -1| < , |y -1| < , |z -1| < , x - y + z -1 = 0 je 0 < |x - y + z - 1| < 1, a tedy sin(x - y + z - 1) x - y + z - 1 - 1 < = lim (x,y,z)(1,1,1) sin(x - y + z - 1) x - y + z - 1 = 1 . Řekli jsme, že existence limity v daném bodě znamená, že nezáleží na cestě, po které se k danému bodu blížíme. Naopak dostaneme-li různé hodnoty limity pro různé cesty, znamená to, že limita v daném bodě nemůže existovat. Tohoto faktu využíváme při důkazu neexistence limity funkce dvou proměnných ve vlast- ním bodě [x0, y0] zavedením polárních souřadnic r, definovaných vztahy x - x0 = r cos , y - y0 = r sin , kde r 0 udává vzdálenost bodů [x0, y0] a [x, y], [0, 2) je úhel, který svírá spojnice těchto bodů s kladným směrem osy x. Jestliže hodnota limity funkce závisí na úhlu , znamená to, že závisí na cestě, po které se blížíme k danému bodu, a proto funkce nemá v tomto bodě limitu. Příklad 2.3. Rozhodněte, zda existuje limita lim (x,y)(0,0) 2xy x2 + y2 . Řešení. Zavedením polárních souřadnic dostáváme lim (x,y)(0,0) xy x2 + y2 = lim r0+ r2 sin cos r2 = 1 2 sin 2. Protože výsledek závisí na , tj. na cestě, po které se blížíme k bodu [0, 0], uve- dená limita neexistuje. Graf této funkce viz obrázky 11.4 a 11.5. Poznámka 2.2. Zavedením polárních souřadnic při výpočtu limity vyšetřujeme chování funkce f v okolí limitního bodu [x0, y0] na přímkách se směrovým vek- torem (cos , sin ). Pokud limita vyjde nezávisle na úhlu , je to pouze nutná podmínka pro existenci limity v bodě [x0, y0], protože pro jiný způsob ,,blížení", 34 Limita a spojitost funkce např. po parabolách, můžeme obdržet zcela odlišný výsledek. Jako příklad uva- žujme funkci f : R2 R definovanou takto: f (x, y) = x2 y x4+y2 , [x, y] = [0, 0], 0, [x, y] = [0, 0]. Po transformaci do polárních souřadnic dostáváme lim r0 r3 cos2 sin r2(r2 cos4 + sin2 ) = lim r0 r cos2 sin r2 cos4 + sin2 = 0, přesto však limita funkce v bodě [0, 0] neexistuje. Vskutku, položíme-li y = kx2 , tj. k limitnímu bodu [0, 0] se blížíme po parabolách, dostáváme lim x0 kx4 x4 + k2x4 = k 1 + k2 , což je výsledek závisející na konstantě k, viz obrázek 11.6. Následující věta udává podmínku, za které je nezávislost limity na po přechodu k polárním souřadnicím i postačující pro existenci limity. Věta 2.6. Funkce f má v bodě [x0, y0] limitu rovnu L, jestliže existuje nezáporná funkce g: [0, ) [0, ) splňující limr0+ g(r) = 0 taková, že | f (x0 + r cos , y0 + r sin ) - L| < g(r) pro každé [0, 2] a r > 0 dostatečně malá. Speciálně, platí-li po transformaci do polárních souřadnic lim (x,y)(x0,y0) f (x, y) = lim r0+ h(r)g(), kde limr0+ h(r) = 0 a funkce g() je ohraničená pro [0, 2), pak lim (x,y)(x0,y0) f (x, y) = 0. Důkaz. Protože limr0+ g(r) = 0, ke každému > 0 existuje > 0 tak, že pro 0 < r < je g(r) < , tj. | f (x0 + r cos , y0 + r sin ) - L| < g(r) < . To však znamená, že pro [x, y] z ryzího kruhového -okolí bodu [x0, y0] je | f (x, y) - - L| < , což je právě definice vztahu lim(x,y)(x0,y0) f (x, y) = L. Limita funkce 35 Příklad 2.4. Rozhodněte, zda existují limity následujících funkcí, a v případě, že ano, vypočítejte je: i) f (x, y) = x3+y3 x2+y2 v bodě [0, 0]. Řešení. Využijeme transformace do polárních souřadnic a tvrzení Věty 2.6. Položme x = r cos , y = r sin . Je-li (x, y) (0, 0), je r 0+, a tedy lim (x,y)(0,0) x3 + y3 x2 + y2 = lim r0+ r3(sin3 + cos3 ) r2(sin2 + cos2 ) = lim r0+ r(sin3 + cos3 ) = 0, nebot' funkce g() = sin3 + cos3 je ohraničená. ii) f (x, y) = x2+(y-1)2 y x2+(y-1)2 v bodě [0, 1]. Řešení. Postupujeme podobně jako v předcházejícím příkladu. Platí lim (x,y)(0,1) x2 + (y - 1)2y x2 + (y - 1)2 = lim r0+ (1 + r sin3 ) = 1, čímž je splněna nutná podmínka pro existenci dané limity. Dále platí |(1 + r sin3 ) - 1| = |r sin3 | r, takže podle Věty 2.6 je splněna také postačující podmínka a hodnota limity je rovna 1. Poznámka 2.3. Podobně jako transformaci do polárních souřadnic při výpočtu limity funkce dvou proměnných používáme při výpočtu limity funkce tří proměnných transfor- maci do sférických souřadnic x - x0 = r cos sin , y - y0 = r sin sin , z - z0 = r cos , kde r udává vzdálenost bodů [x0, y0, z0] a [x, y, z], je úhel, který svírá průvodič (tj. spojnice těchto bodů) s kladným směrem osy z, a je úhel, který svírá průmět prů- vodiče do podstavné roviny xy s kladným směrem osy x. Zejména jestliže po zavedení sférických souřadnic vyjde výraz závisející na nebo , limita neexistuje (toto odpovídá skutečnosti, že při ,,blížení" se po různých přímkách k limitnímu bodu dostaneme různé hodnoty). V některých speciálních případech je k vyšetřování existence limity vhodná následu- jící věta, která se někdy v literatuře bere za definici limity (tzv. Heineho1 definice). Důkaz této věty neuvádíme, nebot' je v podstatě stejný jako pro analogické tvrzení týkající se funkce jedné proměnné, viz [N1], strana 189. Věta 2.7. Necht' [x0, y0] je hromadný bod definičního oboru D( f ) funkce f : R2 R. Funkce f má v tomto bodě limitu L, právě když pro každou posloupnost bodů {[xn, yn]}, kde [xn, yn] = [x0, y0] pro velká n, konvergující k bodu [x0, y0], má posloupnost { f (xn, yn)} limitu L. 1Heinrich Heine (1821­1881), německý matematik 36 Limita a spojitost funkce 2.3 Spojitost funkce Definice 2.3. Řekneme, že funkce f je spojitá v bodě [x0, y0], jestliže má v tomto bodě vlastní limitu a platí lim (x,y)(x0,y0) f (x, y) = f (x0, y0). Pro funkci n proměnných dostáváme zcela stejnou definici spojitosti: Necht' f je funkce n proměnných, n 2. Řekneme, že funkce f je spojitá v bodě x = [x 1 , . . . , x n ], jestliže má v tomto bodě vlastní limitu a platí lim xx f (x) = f (x ). Porovnejme tuto definici s definicí spojitosti zobrazení mezi metrickými prostory. Zobrazení f z prostoru (P, ) do prostoru (Q, ) je spojité v bodě x P, jestliže ke každému okolí V bodu f (x) Q existuje okolí U bodu x takové, že pro každé x U je f (x) V. Je-li (P, ) prostor Rn s některou z výše uvedených ekvivalentních metrik 1, 2, (viz odstavec 2.1.) a (Q, ) je R1 s metrikou (x, y) = |x - y|, pak je definice spojitého zobrazení stejná s definicí spojité funkce n proměnných v bodě x. Vzhledem k tomu, že spojitost funkce dvou a více proměnných se definuje pomocí pojmu limity funkce stejně jako pro funkci jedné proměnné, obdobně platí věta, že součet, součin a podíl spojitých funkcí je spojitá funkce, a dále platí věta o spojitosti složené funkce. Věta 2.8. Jsou-li funkce f, g spojité v bodě [x0, y0] R2 , pak jsou v tomto bodě spojité i funkce f + g, f g, a je-li g(x0, y0) = 0, je v tomto bodě spojitá také funkce f/g. Věta 2.9. Necht' funkce g, h jsou spojité v bodě [x0, y0], u0 = g(x0, y0), v0 = = h(x0, y0) a funkce f je spojitá v bodě [u0, v0]. Pak je v bodě [x0, y0] spojitá složená funkce F(x, y) = f (g(x, y), h(x, y)). Příkladem funkcí spojitých v celé rovině jsou např. polynomy ve dvou proměn- ných, funkce sin u, cos u, eu , kde u je polynom ve dvou proměnných. Příklad 2.5. Určete body, v nichž nejsou následující funkce spojité a) f (x, y) = 2x - 5y x2 + y2 - 1 b) f (x, y) = sin(x2 y + xy2 ) cos(x - y) . Věty o spojitých funkcích 37 Řešení. a) Funkce f1(x, y) = 2x - 5y, f2(x, y) = x2 + y2 - 1 jsou polynomy ve dvou proměnných a ty jsou spojité v celé rovině. Funkce f není spojitá v bodech, ve kterých není definována, tj. kde x2 + y2 = 1. Body, v nichž funkce není spojitá, tvoří kružnici se středem v počátku a s poloměrem 1. b) Funkce f1(x, y) = x2 y + xy2 , f2(x, y) = x - y a sin u, cos u jsou spojité v celé rovině. Podle Věty 2.9 o podílu není funkce f spojitá v bodech, kde cos(x - y) = 0, tj. y = x + (2k + 1) 2 k Z. Příklad 2.6. Zjistěte, zda funkce f (x, y) definovaná následujícím způsobem je spojitá v bodě [0, 0]: f (x, y) = x3 y x4+y4 pro [x, y] = [0, 0], 0 pro [x, y] = [0, 0]. Řešení. Nejprve ověřme, zda existuje lim(x,y)(0,0) f (x, y). Zvolíme-li y = kx, snadno vidíme, že výsledná hodnota záleží na k, neboli že záleží na přímce, po které se k počátku blížíme. Proto uvedená limita neexistuje a daná funkce nemůže být v počátku spojitá. Poznámka 2.4. Je-li funkce f spojitá v bodě [x0, y0] R2, pak jsou spojité i funkce jedné proměnné g(x) = f (x, y0) v bodě x0 a h(y) = f (x0, y) v bodě y0. Spojitá funkce dvou proměnných je tedy spojitou funkcí proměnné x při konstantním y a spojitou funkcí y při konstantním x. Opačné tvrzení neplatí! Ze spojitosti vzhledem k jednotlivým proměnným neplyne spojitost jakožto funkce dvou proměnných. Uvažujme funkci z předchozího příkladu. Není obtížné ověřit, že pro libovolná pevná x0, y0 R jsou funkce f (x, y0), f (x0, y) spojité v R, avšak funkce dvou proměnných f není spojitá v bodě [0, 0], nebot' v tomto bodě limita neexistuje. 2.4 Věty o spojitých funkcích Stejně jako pro funkci jedné proměnné platí pro funkci n proměnných Weierstras- sova1 a Bolzanova2 věta. Uvedeme obě věty pro funkci dvou proměnných. Připomeňme, že Weierstrassova věta pro funkce jedné proměnné se týká funkcí spojitých na uzavřeném a ohraničeném intervalu, přičemž spojitost na uza- vřeném intervalu znamená spojitost zleva (zprava) v pravém (levém) krajním bodě 1Karl T. W. Weierstrass (1815­1897), německý matematik 2Bernard Bolzano (1781­1848), český matematik a filozof 38 Limita a spojitost funkce a normální spojitost ve vnitřních bodech. Pro funkci dvou proměnných definujeme spojitost na množině takto: Definice 2.4. Řekneme, že funkce f je spojitá na množině M R2 , jestliže pro každý bod [x0, y0] M platí lim (x,y)(x0,y0) (x,y)M f (x, y) = f (x0, y0). Limitní vztah chápeme takto: Ke každému > 0 existuje > 0 takové, že pro každé [x, y] O([x0, y0]) M platí | f (x, y) - f (x0, y0)| < . Věta 2.10. (Weierstrassova) Necht' funkce f je spojitá na kompaktní množině M R2 . Pak nabývá na M své nejmenší a největší hodnoty. Důkaz. Uvedená věta je důsledkem obecné věty z metrických prostorů: Je-li f spojité zobrazení mezi metrickými prostory, pak obrazem kompaktní množiny je kompaktní množina. V Euklidovských prostorech je kompaktní množinou každá ohraničená uzavřená množina. Odtud okamžitě plyne ohraničenost mno- žiny f (M). Protože každá neprázdná shora ohraničená množina má supremum, existuje K = sup (x,y)M f (x, y). Zbývá dokázat, že existuje bod [x0, y0] M takový, že f (x0, y0) = K. Podle definice suprema existuje pro libovolné n N bod [xn, yn] M tak, že f (xn, yn) > K - 1 n . Posloupnost {[xn, yn]} je ohraničená, proto exis- tuje vybraná podposloupnost {[xnk , ynk ]} konvergující k bodu [x0, y0]. Vzhledem k uzavřenosti množiny M je [x0, y0] M a ze spojitosti funkce f plyne, že { f (xnk , ynk )} f (x0, y0). Poněvadž f (xnk , ynk ) > K - 1 nk pro všechna k, je limk f (xnk , ynk ) = f (x0, y0) K. Z definice suprema plyne f (x0, y0) K, a proto f (x0, y0) = K. Podobně se dokáže tvrzení o nejmenší hodnotě funkce f . Poznámka 2.5. Důsledkem této věty je ohraničenost spojité funkce na kompaktní množině, což bývá někdy spolu s Větou 2.10 formulováno ve dvou větách jako první a druhá Weierstrassova věta. Věty o spojitých funkcích 39 V následující větě je třeba předpokládat, že množina M je souvislá. Připomeňme z teorie metrických prostorů, že otevřená množina M E2 se nazývá souvislá, jestliže pro každé dva body X, Y M existuje konečná posloupnost bodu X1, . . . , Xn M, X1 = X, Xn = Y taková, že všechny úsečky Xi Xi+1 jsou podmnožinami M. Věta 2.11. (Bolzanova) Necht' funkce f je spojitá na otevřené souvislé množině M R2 . Necht' pro A, B M platí f (A) = f (B). Pak ke každému číslu c ležícímu mezi hodnotami f (A) a f (B) existuje C M tak, že f (C) = c. Důkaz. Položme g(x, y) = f (x, y)-c. Ze souvislosti množiny M plyne existence konečné posloupnosti bodů X1, . . . , Xn M, X1 = X, Xn = Y takové, že všechny úsečky Xi Xi+1 jsou podmnožinami M. Uvažujeme-li hodnoty g(Xi ), pak bud' existuje index i takový, že g(Xi ) = 0, nebo existuje j takové, že g(X j ) < 0 (> 0), g(X j+1) > 0 (< 0). Označíme-li X j = [x1, y1], X j+1 = [x2, y2], jsou parametrické rovnice úsečky X j X j+1 x = x1 + (x2 - x1)t, y = y1 + (y2 - y1)t, t [0, 1]. Položme G(t) = f (x1 + (x2 - x1)t, y1 + (y2 - y1)t), t [0, 1]. Pak G(0) = = g(X j ) < 0 (> 0), G(1) = g(X j+1) > 0 (< 0) a G je spojitá funkce na uzavřeném intervalu. Podle Bolzanovy věty pro funkci jedné proměnné existuje t0 (0, 1) tak, že G(t0) = 0. Zvolíme-li C = [x1 + (x2 - x1)t0, y1 + (y2 - y1)t0], dostaneme g(C) = 0, tj. f (C) = c. Poznámka 2.6. Důsledkem této věty je následující tvrzení: Necht' funkce f je spojitá na otevřené souvislé množině M R2 . Existují-li A, B M takové, že f (A) < 0, f (B) > 0, pak existuje C M tak, že f (C) = 0 (tzv. první Bolzanova věta). Cvičení 2.1. Pomocí konkrétní specifikace okolí limitního bodu a limity definujte: a) lim (x,y)(-1,2) f (x, y) = b) lim (x,y)(,1) f (x, y) = - 40 Limita a spojitost funkce 2.2. Vypočtěte limity následujících funkcí: a) lim (x,y)(1,1) x+y x2+y2 d) lim (x,y)(-4,-1) (x-y)2-9 x2+y2 b) lim (x,y)(e2,1) ln x y e) lim (x,y)(0,0) xy2 cos 1 xy2 c) lim (x,y)(1,0) ln (x+ey) x2+y2 2.3. Vypočtěte limity následujících funkcí: a) lim (x,y)(0,0) x2+y2 x+y e) lim (x,y)(,) x-y x2-xy+y2 b) lim (x,y)(0,0) x2-y2 x2+y2 f) lim (x,y)(0,2) sin xy x c) lim (x,y)(0,0) x2 y2+1-1 x2+y2 g) lim (x,y)(,) x2+y2 x4+y4 d) lim (x,y)(0,0) (x2 + y2 )x2 y2 h) lim (x,y)(0,2) exy-1 x 2.4. Vypočtěte limity následujících funkcí: a) lim (x,y)(,) (x2 + y2 )e-(x+y) d) lim (x,y)(,) xy x2+y2 x2 b) lim (x,y)(,1) 1 + 1 x x2 x+y e) lim (x,y)(0,0) e - x2 x2+y2 x4+y4 c) lim (x,y)(0,0) 1-cos(x2+y2) (x2+y2)x2 y2 f) lim (x,y)(0,0) (1 + x2 y2 ) - 1 x2+y2 2.5. Dokažte, že funkce f (x, y) = 3y x3+y nemá v bodě [0,0] limitu. 2.6. Určete body nespojitosti funkcí: a) z = 1 x2+y2 d) z = sin 1 xy b) z = x+y x3+y3 e) z = 1 sin xsin y c) z = xy x+y f) z = ln |1 - x2 - y2 | 2.7. Určete body nespojitosti funkcí: a) z = x2+y5+x+3 x4+xy3 d) z = arccos x y b) z = x2+3y x2-3y e) z = 1 xyz c) z = 1 e x y -1 f) z = ln 1 (x-a)2+(y-b)2+(z-c)2 Věty o spojitých funkcích 41 2.8. Zjistěte, zda funkce f je spojitá v bodě [0,0]: a) f (x, y) = xy2 x2+y2 pro [x, y] = [0, 0] 0 pro [x, y] = [0, 0] b) f (x, y) = x2 y2 x4+y4 pro [x, y] = [0, 0] 0 pro [x, y] = [0, 0] Učitel by měl působit tak, že to, co nabídne, je přijímáno jako cenný dar, ne jako úmorná povinnost. (A. Einstein) Kapitola 3 Parciální derivace Derivace funkce je druhým základním pojmem diferenciálního počtu. Cílem této kapitoly je zavést tento pojem pro funkci více proměnných a ukázat souvislost s limitou a spojitostí funkce. Připomeňme definici a geometrický význam derivace funkce jedné proměnné: derivace funkce f : R R v bodě x0 je limita f (x0) = lim xx0 f (x) - f (x0) x - x0 . (3.1) Derivace funkce v bodě udává směrnici tečny ke křivce y = f (x) v bodě [x0, f (x0)]. Má-li funkce derivaci v bodě x0, je v tomto bodě spojitá, a tudíž zde existuje také limita funkce. Jak jsme již ukázali v předcházející kapitole, limita funkce dvou a více pro- měnných je komplikovanějším pojmem než v případě funkce jedné proměnné, nebot' k bodu [x0, y0] (v případě dvou proměnných) se můžeme blížit mnoha způsoby. Zcela přirozené je začít zkoumat situaci, blížíme-li se k bodu [x0, y0] ve směru souřadných os x a y. Tím se dostáváme k pojmu parciální derivace funkce dvou proměnných. Při ,,parciálním"1 derivování se vždy na jednu z pro- měnných x, y díváme jako na konstantu a podle druhé derivujeme. Blížíme-li se k bodu [x0, y0] ve směru předem daného vektoru u = (u1, u2), jde o směrovou derivaci, která je přirozeným zobecněním pojmu parciální derivace. Pro funkci n proměnných je situace analogická. 1Doslovný český překlad slova parciální je ,,částečný". 44 Parciální derivace 3.1 Parciální derivace 1. řádu Definice 3.1. Necht' funkce f : R2 R je definovaná v bodě [x0, y0] a něja- kém jeho okolí. Položme (x) = f (x, y0). Má-li funkce derivaci v bodě x0, nazýváme tuto derivaci parciální derivací funkce f podle proměnné x v bodě [x0, y0] a označujeme fx (x0, y0), event. f x (x0, y0), fx (x0, y0). To znamená, že fx (x0, y0) = lim xx0 (x) - (x0) x - x0 = lim xx0 f (x, y0) - f (x0, y0) x - x0 . Podobně, má-li funkce (y) = f (x0, y) derivaci v bodě y0, nazýváme tuto deri- vaci parciální derivací funkce f podle proměnné y v bodě [x0, y0] a označujeme fy(x0, y0) ( f y (x0, y0), fy(x0, y0)). Poznámka 3.1. i) Má-li funkce z = f (x, y) parciální derivace ve všech bodech množiny N D( f ), jsou tyto derivace funkcemi proměnných x, y. Označujeme je fx (x, y), fy(x, y), popř. x f (x, y), y f (x, y), fx (x, y), fy(x, y), zx , zy, zx , zy. ii) Zcela analogicky se definují parciální derivace funkce n proměnných. Je-li z = f (x1, . . . , xn) funkce n proměnných, x = [x 1 , . . . , x n ] Rn , definujeme f xi (x ) = lim t0 1 t f (x 1 , . . . , x i-1, x i + t, x i+1, . . . , x n ) - f (x 1 , . . . , x n ) . iii) Z definice parciální derivace plyne, že při jejím výpočtu postupujeme tak, že všechny argumenty kromě toho, podle něhož derivujeme, považujeme za kon- stanty. Protože parciální derivace fxi funkce n proměnných je definována jako ,,oby- čejná" derivace podle proměnné xi , platí pro počítání parciálních derivací obvyklá pravidla pro derivování. Uvedeme je přímo pro funkci n proměnných. Věta 3.1. Necht' funkce f, g : Rn R mají parciální derivaci podle pro- měnné xi , i {1, . . . , n}, na otevřené množině M. Pak jejich součet, rozdíl, součin a podíl má na M parciální derivaci podle xi a platí xi f (x) g(x) = xi f (x) xi g(x), Parciální derivace 1. řádu 45 xi [ f (x)g(x)] = xi f (x) g(x) + g(x) xi f (x), xi f (x) g(x) = xi f (x) g(x) - f (x) xi g(x) g2(x) , přičemž tvrzení o podílu derivací platí za předpokladu, že g(x) = 0. Příklad 3.1. i) Vypočtěte parciální derivace funkce dvou proměnných: a) z = arctg y x b) z = xy , x > 0. Řešení. a) Při výpočtu parciální derivace podle proměnné x považujeme proměn- nou y za konstantu, tj. zx = 1 1 + y2 x2 - y x2 = - y x2 + y2 . Analogicky zy = 1 1 + y2 x2 1 x = x x2 + y2 . b) Parciální derivaci podle x určíme jako derivaci mocninné funkce a derivaci podle y jako derivaci exponenciální funkce se základem x, tj. zx = yxy-1 , zy = xy ln x. ii) Vypočtěte parciální derivace 1. řádu funkce f (x1, . . . , xn) = x2 1 + + x2 n ex2 1 ++x2 n . Řešení. Při výpočtu parciální derivace podle proměnné xi považujeme všechny ostatní proměnné za konstanty: xi x2 1 + + x2 n ex2 1 ++x2 n = = xi x2 1 + + x2 n ex2 1 ++x2 n + 2xi x2 1 + + x2 n ex2 1 ++x2 n = = xi ex2 1 ++x2 n x2 1 + + x2 n 1 + 2(x2 1 + + x2 n ) . 46 Parciální derivace Geometrický význam parciálních derivací x y z (x0, y0, 0) O Q0 z = f (x, y) s t Necht' je dána funkce f : R2 R a G f je její graf. Necht' je ro- vina daná rovnicí y = y0. Za rozum- ných předpokladů (např. spojitost funkce f ) je průsečíkem G f křivka v rovině a parciální derivace fx (x0, y0) udává směrnici tečny t k této křivce v bodě Q0 = = [x0, y0, f (x0, y0)], viz vedlejší obrázek. (Připomeňme, že směrnice tečny t je tg .) Analogicky, derivace fy(x0, y0) udává směrnici tečny ke křivce v bodě Q0, která vznikne průsečí- kem plochy G f s rovinou x = x0. Zatímco u funkcí jedné proměnné plyne z existence derivace v daném bodě její spojitost, u funkcí více proměnných toto tvrzení neplatí. Má-li funkce f : R2 R parciální derivace v bodě [x0, y0], nemusí být v tomto bodě spojitá, jak ukazuje následující příklad. Příklad 3.2. Funkce definovaná předpisem f (x, y) = 1 pro x = 0 nebo y = 0, 0 jinak má v bodě [0, 0] obě parciální derivace (rovny nule) a není zde spojitá, nebot' v tomto bodě neexistuje limita (grafem funkce je podstavná rovina, z níž je ,,vy- zdvižen" osový kříž). Skutečnost, že z existence parciálních derivací neplyne spojitost, je zcela při- rozená Parciální derivace totiž udávají informaci pouze o chování funkce ve smě- rech rovnoběžných se souřadnými osami, v jiných směrech se funkce může chovat ,,velmi divoce". Derivace vyšších řádů 47 3.2 Derivace vyšších řádů Definice 3.2. Necht' [x0, y0] D( fx ). Existuje-li parciální derivace funkce fx (x, y) podle proměnné x v bodě [x0, y0], nazýváme tuto derivaci parciální derivací 2. řádu podle x funkce f v bodě [x0, y0] a značíme ji fxx (x0, y0) nebo také 2 f x2 (x0, y0). Existuje-li parciální derivace funkce fx (x, y) podle proměnné y v bodě [x0, y0], nazýváme tuto derivaci smíšenou parciální derivací 2. řádu funkce f v bodě [x0, y0] a značíme ji fxy(x0, y0) nebo také 2 f xy (x0, y0). Obdobně definujeme parciální derivace 2. řádu fyx (x0, y0) a fyy(x0, y0). Parciální derivace n-tého řádu (n 3) definujeme jako parciální derivace derivací (n - 1)-tého řádu. Příklad 3.3. i) Vypočtěte derivace 2. řádu obou funkcí z Příkladu 3.1 i). Řešení. a) V případě funkce z = arctg y x jsme vypočetli zx = - y x2+y2 , zy = x x2+y2 . Odtud zxx = x (zx ) = x - y x2 + y2 = 2xy (x2 + y2)2 . Podobně zxy = y - y x2 + y2 = - x2 + y2 - 2y2 (x2 + y2)2 = y2 - x2 (x2 + y2)2 , zyx = x x x2 + y2 = x2 + y2 - 2x2 (x2 + y2)2 = y2 - x2 (x2 + y2)2 , zyy = y x x2 + y2 = - 2xy (x2 + y2)2 . Pro funkci z = xy z části b) je zx = yxy-1 , zy = xy ln x. Odtud zxx =y(y - 1)xy-2 , zxy = xy-1 + yxy-1 ln x, zyx =yxy-1 ln x + xy 1 x = xy-1 + yxy-1 ln x, zyy = xy ln2 x. ii) Ukažte, že pro funkci u = 1 x2+y2+z2 platí uxx + uyy + uzz = 0.1 1Uvedený příklad hraje důležitou roli ve fyzice; podrobněji viz příklad 5.3ii) 48 Parciální derivace Řešení. Při výpočtu parciálních derivací využijeme skutečnost, že funkce u závisí na proměnných x, y, z symetricky. Platí ux = - x (x2 + y2 + z2) 3 2 , uxx = - (x2 + y2 + z2 ) 3 2 - 3x2 (x2 + y2 + z2 ) 1 2 (x2 + y2 + z2) 5 2 = = - 1 x2 + y2 + z2 + 3x2 (x2 + y2 + z2)2 Ze symetrické závislosti na zbývajících proměnných pak dostáváme uyy = - 1 x2 + y2 + z2 + 3y2 (x2 + y2 + z2)2 , uzz = - 1 x2 + y2 + z2 + 3z2 (x2 + y2 + z2)2 . Odtud nyní snadno ověříme platnost rovnice uxx + uyy + uzz = 0. Všimněme si, že u obou funkcí v části i) předcházejícího příkladu vyšla rov- nost zxy = zyx . Následující věta ukazuje, že tyto rovnosti nejsou náhodné. Věta 3.2. (Schwarzova1 ) Necht' funkce f má spojité parciální derivace fxy, fyx v bodě [x0, y0]. Pak jsou tyto derivace záměnné, tj. platí fxy(x0, y0) = fyx (x0, y0). (3.2) Důkaz. Ze spojitosti funkcí fxy a fyx v bodě [x0, y0] plyne existence -okolí U = = (x0 - , x0 + ) × (y0 - , y0 + ) bodu [x0, y0], v němž jsou parciální derivace fxy a fxy definovány. Pro 0 < h < položme F(h) = f (x0 + h, y0 + h)- f (x0 + h, y0)- f (x0, y0 + h)+ f (x0, y0) h2 (3.3) a dále označme (y) = f (x0 + h, y) - f (x0, y), (x) = f (x, y0 + h) - f (x, y0). Funkci F pak můžeme psát ve tvaru F(h) = 1 h2 (y0 + h) - (y0) = 1 h2 [(x0 + h) - (x0)] . 1Karl Schwarz (1843­1921), německý matematik, žák K. Weierstrasse Derivace vyšších řádů 49 Podle Lagrangeovy1 věty existuje 1 (0, 1) takové, že (y0 + h) - (y0) = h (y0 + 1h) = = h fy(x0 + h, y0 + 1h) - fy(x0, y0 + 1h) . Označme ještě g(x) = fy(x, y0 + 1h). Pak g (x) = fyx (x, y0 + 1h) a rozdíl v poslední hranaté závorce je (opět podle Lagrangeovy věty) g(x0 + h) - g(x0) = = g (x0 + 2h) = fyx (x0 + 2h, y0 + 1h), kde 2 (0, 1). Dosadíme-li odtud do (3.3), dostáváme F(h) = fyx (x0 + 2h, y0 + 1h), 1, 2 (0, 1). Aplikujeme-li nyní úplně stejné úvahy na funkci , dostáváme F(h) = fxy(x0 + 3h, y0 + 4h), 3, 4 (0, 1). Poslední dva vztahy a spojitost funkcí fxy, fyx v bodě [x0, y0] implikují lim h0 F(h) = fyx (x0, y0) a současně lim h0 F(h) = fxy(x0, y0), platí tedy (3.2). Následující příklad ukazuje, že bez předpokladu spojitosti smíšených parciál- ních derivací rovnost (3.2) obecně neplatí (viz příklad 12.4). Příklad 3.4. Necht' funkce f je dána předpisem f (x, y) = xy pro |x| |y|, 0 pro |x| < |y|. Pak pro y = 0 je fx (0, y) = 0 a pro y = 0 je podle definice parciální derivace fx (0, 0) = lim h0 f (h, 0) - f (0, 0) h = lim h0 0 h - 0 h = 0. Pro x = 0 a h v absolutní hodnotě dostatečně malá je f (x, h) = xh, tedy fy(x, 0) = lim h0 f (x, h) - f (x, 0) h = lim h0 xh - 0 h = x 1Joseph Louis Lagrange (1736­1813), francouzský matematik 50 Parciální derivace a konečně fy(0, 0) = lim h0 f (0, h) - f (0, 0) h = lim h0 0 h = 0. Využitím těchto výsledků plyne z definice parciálních derivací 2. řádu fxy(0, 0) = lim h0 fx (0, h) - fx (0, 0) h = lim h0 0 = 0, fyx (0, 0) = lim h0 fy(h, 0) - fy(0, 0) h = lim h0 h - 0 h = 1. Matematickou indukcí můžeme tvrzení Schwarzovy věty rozšířit pro derivace vyšších řádů. Věta 3.3. Má-li funkce f v bodě [x0, y0] a nějakém jeho okolí spojité parciální derivace až do řádu n, pak hodnota parciální derivace řádu n v libovolném bodě z tohoto okolí závisí pouze na tom, kolikrát se derivovalo podle proměnné x a ko- likrát podle proměnné y, nikoliv na pořadí, v jakém se podle těchto proměnných derivovalo. 3.3 Směrové derivace Parciální derivace funkce f v bodě x Rn jsou obyčejné derivace, které získáme zúže- ním definičního oboru funkce f na přímku jdoucí bodem x a rovnoběžnou s i-tou sou- řadnicovou osou. Zobecněním parciálních derivací jsou směrové derivace, které získáme zúžením definičního oboru funkce na přímku jdoucí bodem x a mající směr daného vek- toru u Vn. To znamená, že vyšetřujeme funkci (t) = f (x + tu), která je již funkcí jedné proměnné, a pro ni je pojem derivace již dobře znám. Poznamenejme, že Vn je standardní označení pro zaměření n-rozměrného euklidov- ského prostoru. Definice 3.3. Necht' f je funkce n proměnných, x je vnitřní bod D( f ), u Vn. Po- ložme (t) = f (x + tu). Má-li funkce derivaci v bodě 0, nazýváme ji směrovou derivací funkce f v bodě x (derivací f ve směru vektoru u) a označujeme fu(x). To znamená, že fu(x) = lim t0 (t) - (0) t = lim t0 f (x + tu) - f (x) t . Poznámka 3.2. i) Necht' (e1, . . . , en) je standardní báze v Vn (vektor ei má na i-tém místě jedničku a na ostatních místech nuly). Pak fei (x) = fxi (x), tj. směrová derivace podle vektoru ei je totožná s parciální derivací podle proměnné xi . Směrové derivace 51 ii) Jelikož je směrová derivace obyčejnou derivací funkce , platí pro počítání tato pravidla: Necht' existuje fu, gu v bodě x Rn. Pak: a) pro všechna c R existuje fcu(x) a platí fcu(x) = cfu(x) b) ( f g)u(x) = fu(x) gu(x) c) ( f g)u(x) = fu(x)g(x) + f (x)gu(x) d) Je-li g(x) = 0, pak f g u (x) = fu(x)g(x) - f (x)gu(x) g2(x) . iii) Naopak neplatí aditivita směrových derivací vzhledem ke směrům. Jestliže exis- tují fu, fv, nemusí existovat fu+v, a pokud existuje fu+v, může být fu + fv = fu+v, viz následující příklad, část ii). iv) V Příkladu 3.2 na straně 46 jsme ukázali, že z existence parciálních derivací funkce f v bodě [x0, y0] neplyne spojitost funkce. V části iii) následujícího příkladu ukážeme, že ani existence směrové derivace v bodě [x0, y0] ve směru libovolného vek- toru u V2 není postačující pro spojitost. To je na první pohled překvapující skuteč- nost. Uvědomíme-li si však, že směrové derivace popisují chování funkce f , blížíme-li se k bodu [x0, y0] po přímkách, a definice limity (pomocí níž je definována spojitost v bodě [x0, y0]) zachycuje všechny způsoby ,,přiblížení" (např. po parabolách), je toto zcela přirozené. Příklad 3.5. i) Vypočtěte směrovou derivaci funkce f (x, y) = arctg (x2 + y2) v bodě [1, -1] ve směru vektoru u = (1, 2). Řešení. Přímým dosazením do definice a využitím l'Hospitalova pravidla dostáváme f(1,2)(1, 1) = lim t0 arctg[(1 + t)2 + (-1 + 2t)2] - arctg 2 t lim t0 arctg(2 - 2t + 5t2) - arctg 2 t = lim t0 -2 + 10t 1 + (2 - 2t + 5t2)2 = - 2 5 . ii) Ukažte, že pro funkci f (x, y) = xy(x+y) x2+y2 pro (x, y) = [0, 0], 0 pro (x, y) = [0, 0] a vektory u = (1, 0), v = (0, 1) existují fu(0, 0), fv(0, 0), fu+v(0, 0), avšak fu+v(0, 0) = = fu(0, 0) + fv(0, 0). Řešení. Platí fu = fx , fv = fy. Protože f (t, 0) = 0 = f (0, t), je fu(0, 0) = 0 = fv(0, 0). Pro derivaci ve směru vektoru u + v = (1, 1) dostáváme z definice směrové derivace fu+v(0, 0) = lim t0 1 t [ f (0 + t, 0 + t) - f (0, 0)] = lim t0 t2 2t 2t3 = 1. 52 Parciální derivace Tedy 1 = fu+v(0, 0) = fu(0, 0) + fv(0, 0) = 0. iii) Ukažte, že funkce f definovaná předpisem f (x, y) = x4 y2 x8+y4 , pro (x, y) = [0, 0], 0, pro (x, y) = [0, 0] má v bodě [0, 0] směrovou derivaci ve směru libovolného vektoru u V2, a přesto není v tomto bodě spojitá. Řešení. Je-li 0 = u = (u1, u2) V2 libovolný, podle definice směrové derivace platí fu(0, 0) = lim t0 1 t [ f (0 + tu1, 0 + tu2) - f (0, 0)] = lim t0 t4u4 1 t2u2 2 t(t8u8 1 + t4u4 2) = = lim t0 tu4 1u2 t4u8 1 + u4 2 = 0. Blížíme-li se k bodu [0, 0] po parabolách y = kx2, dostáváme lim x0 x4 k2x4 x8 + k4x8 = k2 1 + k4 . To však znamená, že lim (x,y)(0,0) f (x, y) neexistuje, tedy funkce f není v bodě [0, 0] spo- jitá. Definujeme-li směrové derivace 2. řádu vztahem fuv(x ) = lim t0 fu(x + tv) - fu(x) t , platí analogické tvrzení jako věta o záměnnosti smíšených parciálních derivací. Věta 3.4. Necht' u, v Vn, funkce f : Rn R má v bodě x spojité směrové derivace fuv a fvu. Pak jsou si tyto derivace rovny, tj. fuv(x ) = fvu(x ). Poznámka 3.3. Předpokládejme, že funkce f má v bodě x spojité parciální derivace 2. řádu, a označme f (x) = ( fxi x j ), i, j = 1, . . . , n matici parciálních derivací dru- hého řádu funkce f v bodě x (tato matice se někdy nazývá Hessova matice funkce f v bodě x), pak pro libovolná u, v Vn existuje smíšená směrová derivace fuv(x) a platí fuv(x ) = fvu(x ) = f (x )u, v = f (x )v, u , kde , je obvyklý skalární součin v Rn. Lagrangeova věta o střední hodnotě 53 3.4 Lagrangeova věta o střední hodnotě Jedním z důležitých tvrzení diferenciálního počtu funkcí jedné proměnné je Lagrangeova věta o střední hodnotě. Ta říká, že pro diferencovatelnou funkci f : [a, b] R lze rozdíl f (b) - f (a) vyjádřit ve tvaru f (b) - f (a) = f ()(b - a), kde (a, b). Její analogií pro funkce dvou proměnných jsou následující dvě tvrzení: první pro parciální derivace, kdy ,,body střední hodnoty" leží na hranici obdélníku určeného danými dvěma body, a druhé pro směrovou derivaci. Věta 3.5. Předpokládejme, že funkce f má parciální derivace fx a fy ve všech bodech nějakého obdélníku M R2, a necht' [x0, y0], [x1, y1] M. Pak existují čísla , ležící mezi x0, x1, resp. y0, y1 taková, že f (x1, y1) - f (x0, y0) = fx (, y1)(x1 - x0) + fy(x0, )(y1 - y0). Důkaz. Platí f (x1, y1) - f (x0, y0) = f (x1, y1) - f (x0, y1) + f (x0, y1) - f (x0, y0) = = fx (, y1)(x1 - x0) + fy(x0, )(y1 - y0). V poslední úpravě jsme aplikovali Lagrangeovu větu pro funkce jedné proměnné na funkce (x) = f (x, y1) a (y) = f (x0, y). Poznámka 3.4. Body [, y1], [x0, ] leží na sousedních stranách obdélníku určeného body [x0, y0] a [x1, y1] se stranami rovnoběžnými se souřadnými osami (načrtněte si ob- rázek). Upravíme-li si rozdíl f (x1, y1) - f (x0, y0) poněkud odlišně, a to f (x1, y1) - f (x0, y0) = f (x1, y1) - f (x1, y0) + f (x1, y0) - f (x0, y0), dostáváme nepatrně odlišné vyjádření f (x1, y1) - f (x0, y0) = fx (1, y0)(x1 - x0) + fy(x1, 1)(y1 - y0). V tomto vyjádření body [1, y0] a [x1, 1] leží na zbývajících dvou stranách obdélníku. Projdeme-li důkaz Věty 3.5, snadno zformulujeme analogickou větu pro funkce n proměn- ných. Jsou-li x = [x 1 , . . . , x n ], x = [x1, . . . , xn] Rn, existují body z1, . . . , zn Rn ležící na hranách n-rozměrného kvádru určeného body x a x takové, že f (x) - f (x ) = n k=1 f xk (zk)(xk - x k ). Aplikujeme-li Lagrangeovu větu o střední hodnotě pro funkci jedné proměnné na funkci (t) = f (x + tu), dostáváme větu o přírůstku v následujícím tvaru. 54 Parciální derivace Věta 3.6. Necht' f : Rn R má derivaci ve směru vektoru u Vn ve všech bodech úsečky {x + tu; t [0, 1]}. Pak existuje takové číslo (0, 1), že platí f (x + u) - f (x) = fu(x + u). Cvičení 3.1. Vypočtěte parciální derivace 1. řádu funkcí: a) z = x3 + 2x2 y + 3xy2 + 4x - 5y + 100 h) z = arctg x-y 1+xy b) z = x3 y-3y x i) z = cos x2 y c) z = x sin (x + 2y) j) z = ln(x + x2 + y2) d) z = sin x y cos y x k) u = ex2(1-y-z) e) u = x 1 - y2 + y 1 - x2 - z 1 - x2 - y2 l) z = arctg x y f) z = e- x y m) z = arcsin x2-y2 x2+y2 g) z = ln (x+4 y2 ) n) u = ln 1- x2+y2+z2 1+ x2+y2+z2 3.2. Vypočtěte parciální derivace 1. řádu funkcí: a) z = xxy g) z = xy esin xy b) z = 2 1- xy 1+ xy h) u = x y z c) z = (1 3 ) x y i) z = arctg (x - y)2 d) z = xy ln(x + y) j) u = sin(x2 + y2 + z2 ) e) z = (2x + y)2x+y k) u = xyz f) z = 1 - x+y xy 2 + arcsin x+y xy 3.3. Vypočtěte parciální derivace 1. řádu následujících funkcí v daných bodech: a) z = y2 + y 1 + x2 v [2,5] b) z = ln(x + y 2x ) v [1,2] c) z = xcos y-ycos x 1+sin x+sin y v [0,0] 3.4. a) Vypočtěte uz v bodě [0,0, 4 ], je-li u = sin2 x + sin2 y + sin2 z. Lagrangeova věta o střední hodnotě 55 b) Vypočtěte ux + uy + uz v bodě [1,1,1], je-li u = ln(1 + x + y2 + z3 ). 3.5. Ověřte rovnost zxy = zyx u funkcí: a) z = x2 - 2xy - 3y2 b) z = arccos x y 3.6. Najděte parciální derivace 1. a 2. řádu funkcí: a) z = x4 + y4 - 4x2 y2 g) z = x(x+y) b) z = xy+x y h) z = ln x2+y2-x x2+y2+x c) z = x y2 i) z = ln(x + y2 ) d) z = x x2+y2 j) z = ln x2 + y2 e) z = x sin(x + y) k) z = arcsin x x2+y2 f) z = cos x2 y l) z = (1 + x2 )y Moudrost není produktem vzdělání, ale celoživotním úsilím. (A. Einstein) Kapitola 4 Diferenciál funkce Diferenciálem funkce f jedné proměnné v bodě x0 rozumíme přírůstek funkce na tečně vedené ke grafu funkce v bodě [x0, f (x0)]. V tomto případě existence diferenciálu neboli diferencovatelnost funkce je ekvivalentní existenci derivace v bodě x0. Připomeňme, že f : R R je diferencovatelná v bodě x0, jestliže existuje reálné číslo A takové, že lim h0 f (x0 + h) - f (x0) - Ah h = 0. U funkce n proměnných (n 2) je totální diferenciál definován analogicky: je to přírůstek funkce na tečné nadrovině vedené ke grafu funkce bodem x0 Rn . Přesnou definici pojmu tečná nadrovina uvedeme později; v podstatě je to nadro- vina (tj. afinní podprostor dimenze n - 1), která má s grafem funkce lokálně (tj. v okolí bodu, kde tečnou nadrovinu sestrojujeme) společný právě jeden bod. Se zavedením těchto pojmů okamžitě vznikají tyto otázky: Kdy v daném bodě existuje tečná nadrovina ke grafu funkce neboli kdy je funkce diferencovatelná? Stačí k tomu pouhá existence parciálních derivací jako u funkce jedné proměnné? Odpovědi na tyto a další podobné otázky jsou obsahem této kapitoly. 4.1 Diferencovatelná funkce, diferenciál Nejdříve definujme pojem diferencovatelnosti a diferenciálu pro funkce dvou pro- měnných. 58 Diferenciál funkce Definice 4.1. Řekneme, že funkce f : R2 R definovaná v okolí bodu [x0, y0] je v tomto bodě diferencovatelná, jestliže existují reálná čísla A, B taková, že platí lim (h,k)(0,0) f (x0 + h, y0 + k) - f (x0, y0) - (Ah + Bk) h2 + k2 = 0. (4.1) Lineární funkce Ah + Bk proměnných h, k se nazývá diferenciál funkce v bodě [x0, y0] a značí se d f (x0, y0)(h, k), příp. d f (x0, y0). Poznámka 4.1. i) Ekvivalentní zápis definice diferencovatelnosti funkce dvou proměnných je tento: existují A, B R a funkce : R2 R tak, že platí f (x0 + h, y0 + k) - f (x0, y0) = Ah + Bk + (h, k), (4.2) kde lim (h,k)(0,0) (h, k) h2 + k2 = 0. (4.3) ii) Jmenovatel limity ve výrazu (4.1) je velikost vektoru (h, k) v euklidovské metrice. V odstavci 2.1 jsme zdůraznili ekvivalentnost metrik 1, 2 a . Proto nahradíme-li výraz h2 + k2 výrazem |h| + |k| (velikost (h, k) v metrice 1) nebo výrazem max{|h|, |k|} (velikost (h, k) v metrice ), dostaneme definici ekviva- lentní s Definicí 4.1. V předchozí kapitole jsme ukázali, že pro funkce dvou a více proměnných z existence parciálních ani směrových derivací neplyne spojitost. Následující dvě věty ukazují, že diferencovatelnost funkce je tou ,,správnou" vlastností, která im- plikuje spojitost a některé další vlastnosti funkce. Věta 4.1. Je-li funkce f diferencovatelná v bodě [x0, y0], pak je v tomto bodě spojitá. Důkaz. Z diferencovatelnosti funkce f v bodě [x0, y0] plyne lim (h,k)(0,0) [ f (x0 + h, y0 + k) - f (x0, y0)] = lim (h,k)(0,0) [Ah + Bk + (h, k)] = 0, nebot' podle Poznámky 4.1.i) je lim(h,k)(0,0) (h, k) = 0. Odtud lim (h,k)(0,0) f (x0 + h, y0 + k) = f (x0, y0), funkce f je tedy spojitá v bodě [x0, y0]. Diferencovatelná funkce, diferenciál 59 Poznámka 4.2. Opak této věty neplatí. Je-li funkce spojitá, nemusí být diferen- covatelná, např. f (x, y) = x2 + y2 v bodě [0, 0]. Věta 4.2. Je-li funkce f diferencovatelná v bodě [x0, y0], pak má v tomto bodě parciální derivace a platí A = fx (x0, y0), B = fy(x0, y0), tj. d f (x0, y0) = fx (x0, y0)h + fy(x0, y0)k. (4.4) Důkaz. Položme v (4.1) k = 0. Pak limh0 f (x0+h,y0)- f (x0,y0)-Ah |h| = 0, a proto lim h0 f (x0 + h, y0) - f (x0, y0) - Ah h = lim h0 f (x0 + h, y0) - f (x0, y0) h - A = = fx (x0, y0) - A = 0, tj. A = fx (x0, y0). Stejným obratem dokážeme rovnost fy(x0, y0) = B. Poznámka 4.3. i) Přírůstky h, k nezávisle proměnných x, y v definici diferenci- álu se často značí dx, dy (především ve starší literatuře a v literatuře s fyzikálním zaměřením). ii) Je-li funkce f diferencovatelná v každém bodě množiny M, má v kaž- dém bodě této množiny diferenciál, který je funkcí čtyř proměnných: x, y, h, k. Označíme-li dx = x-x0 = h, dy = y-y0 = k, dostáváme, že diferenciál funkce f je d f (x, y) = fx (x, y)dx + fy(x, y)dy. iii) Diferenciál se používá k přibližnému výpočtu funkčních hodnot. Zanedbáme-li funkci , z rovnice (4.2) plyne f (x, y) . = f (x0, y0) + d f (x0, y0). (4.5) Geometrický význam totálního diferenciálu. Rovina v R3 o rovnici z = Ax + + By + C se nazývá tečnou rovinou ke grafu funkce z = f (x, y) v bodě T = = [x0, y0, f (x0, y0)], platí-li lim (x,y)(x0,y0) f (x, y) - Ax - By - C (x - x0)2 + (y - y0)2 = 0. Má-li tato rovina procházet bodem T , musí tento bod vyhovovat rovnici roviny, tj. f (x0, y0) = Ax0 + By0 + C, odkud z = A(x - x0) + B(y - y0) + f (x0, y0). 60 Diferenciál funkce Tato rovina je tečnou rovinou, jestliže existuje diferenciál funkce v bodě [x0, y0], tj. podle Věty 4.2 je A = fx (x0, y0), B = fy(x0, y0). Rovnice tečné roviny má tvar z = f (x0, y0) + fx (x0, y0)(x - x0) + fy(x0, y0)(y - y0). (4.6) Odtud je vidět, že diferenciál funkce v daném bodě je přírůstek funkce na tečné rovině. Funkce (h, k) z Poznámky 4.1 určuje rozdíl mezi skutečným přírůstkem a přírůstkem na tečné rovině. Rovnice tečné roviny je nejlepší lineární aproximací funkce f (x, y) v okolí bodu [x0, y0]. Příklad 4.1. Z definice diferenciálu určete d f a funkci pro f (x, y) = x2 + y2 v obecném bodě [x, y]. Řešení. Platí f (x + h, y + k) - f (x, y) = (x + h)2 + (y + k)2 - x2 - y2 = 2xh + 2yk + h2 + k2 . Je tedy d f (x, y)(h, k) = 2xh + 2yk a (h, k) = h2 + k2 . Příklad 4.2. i) Pomocí totálního diferenciálu přibližně vypočtěte: a) 1,042,02 ; b) (2,98)2 + (4,05)2. Řešení. a) K výpočtu použijeme diferenciál funkce f (x, y) = xy v bodě [1, 2] s diferencemi dx = 0,04, dy = 0,02. Platí d f (x, y) = yxy-1 dx + xy ln xdy, tj. d f (1, 2) = 2 dx + 0 dy = 2 dx a tedy podle (4.5) 1,042,02 = f (1,04; 2,02) . = f (1, 2) + d f (1, 2) = 1,08. b) K výpočtu použijeme diferenciál funkce f (x, y) = x2 + y2 v bodě [3, 4] s diferencemi dx = -0,02, dy = 0,05. Platí d f (x, y) = x dx x2 + y2 + y dy x2 + y2 a dosazením do (4.5) dostáváme (2,98)2 + (4,05)2 . = 5 + 1 5 (-3 0,02 + 4 0,05) = 5,028. Diferencovatelná funkce, diferenciál 61 ii) Napište rovnici tečné roviny grafu funkce z = x2 + y2 v bodě [1, 1, ?]. Řešení. Dosazením do funkčního předpisu najdeme z-ovou souřadnici dotykového bodu z = 12 + 12 = 2. Nyní přímým dosazením do vzorce pro tečnou rovinu dostáváme její rovnici z = 2 + 2(x - 1) + 2(y - 1), tj. 2x + 2y - z - 2 = 0. Jak již víme, ze samotné existence parciálních derivací funkce v bodě [x0, y0] neplyne diferencovatelnost (viz příklad 3.2). Jsou-li však tyto derivace v tomto bodě spojité, je diferencovatelnost zaručena, jak ukazuje následující věta. Věta 4.3. Má-li funkce f v bodě [x0, y0] spojité parciální derivace 1. řádu, pak má v tomto bodě také diferenciál. Důkaz. Ze spojitosti parciálních derivací fx , fy v bodě [x0, y0] plyne jejich exis- tence v jistém okolí tohoto bodu. Podle Věty 3.5 platí lim (h,k)(0,0) f (x0 + h, y0 + k) - f (x0, y0) - fx (x0, y0)h - fy(x0, y0)k h2 + k2 = = lim (h,k)(0,0) fx (x0+1h, y0+k)h+ fy(x0, y0+2k)k- fx (x0, y0)h- fy(x0, y0)k h2 + k2 = = lim (h,k)(0,0) fx (x0 + 1h, y0 + k) - fx (x0, y0) h h2 + k2 + + lim (h,k)(0,0) fy(x0, y0 + 2k) - fy(x0, y0) k h2 + k2 = 0, nebot' ze spojitosti parciálních derivací plyne, že limity výrazů v hranatých závor- kách jsou nulové, a platí h h2 + k2 1, k h2 + k2 1, tj. podle Věty 2.2 je výsledná limita nulová. Dokázali jsme platnost (4.1). Příklady funkcí, které jsou, resp. nejsou diferencovatelné v daném bodě, viz příklady 13.4, 13.5, 13.9. Obecně ­ funkce n proměnných f : Rn R je diferencovatelná v bodě x Rn, jestliže existuje a = (a1, . . . , an) Vn takové, že pro h = (h1, . . . , hn) Vn platí lim h0 f (x + h) - f (x) - a, h ||h|| = 0, 62 Diferenciál funkce kde ||h|| = h2 1 + + h2 n a a, h = n i=1 ai hi je obvyklý skalární součin v Rn. Dife- renciálem funkce f v bodě x pak rozumíme lineární funkci definovanou předpisem h d f (x) - a, h , tj. d f (x)(h) = a, h . Stejně jako ve Větách 4.1 a 4.2, z existence diferenciálu v bodě x plyne spojitost funkce a existence parciálních derivací v tomto bodě a pro vektor těchto parciálních derivací f (x) platí f (x) = a, tj. f xi (x) = ai , i = 1, . . . , n. Na závěr tohoto odstavce ukážeme, že z diferencovatelnosti funkce plyne ­ kromě spojitosti a existence parciálních derivací ­ také existence směrové derivace ve směru libovolného vektoru. Ukážeme rovněž, jak lze pomocí diferenciálu tyto směrové derivace spočítat. Věta 4.4. Předpokládejme, že funkce f : Rn R je diferencovatelná v bodě x Rn, a necht' u Vn. Pak existuje směrová derivace fu(x) a platí fu(x ) = f (x ), u = n k=1 f xk (x )uk. Důkaz. Necht' f je diferencovatelná v bodě x. Z definice směrové derivace dostáváme fu(x ) = lim t0 f (x + tu) - f (x) t = lim t0 d f (x)(tu) + (tu) t = = d f (x )(u) + ||u|| lim t0 (tu) ||tu|| = d f (x )(u) = f (x ), u , nebot' limt0 (tu) ||tu|| = 0. Ve fyzikální terminologii se vektor f (x) nazývá gradient funkce f v bodě x a značí se grad f (x). Z lineární algebry víme, že skalární součin grad f (x), u nabývá pro vektory u dané konstantní délky největší hodnotu, jestliže jsou vektory grad f (x) a u lineárně závislé. Protože směrová derivace fu(x) udává rychlost změny funkce f ve směru vektoru u, je grad f (x) směr, v němž funkce f v bodě x nejrychleji roste. Podobně - grad f (x) je směr, v němž funkce nejrychleji klesá. Poznámka 4.4. Diferenciál definovaný v Definici 4.1 se nazývá také totální nebo Fré- chetův a lze jej definovat i pro zobrazení mezi lineárními normovanými prostory, což jsou většinou nekonečně dimenzionální prostory. Kromě toho existují jiné, obecnější diferen- ciály, používané často v diferenciálním počtu v normovaných lineárních prostorech, např. slabý (Gâteauxův) diferenciál. Podrobnější informace o této problematice lze nalézt ve skriptu [N2]. Diferenciály vyšších řádů 63 4.2 Diferenciály vyšších řádů V tomto odstavci zavedeme diferenciály vyšších řádů pro funkce více proměn- ných. Připomeňme, že diferenciál m-tého řádu funkce jedné proměnné v bodě x R je mocninná funkce m-tého stupně přírůstku h dm f (x)(h) = f (m) (x)hm . Přírůstek h se často označuje také dx, tj. dm f (x) = f (m) (x)(dx)m , přičemž exis- tence diferenciálu m-tého řádu je ekvivalentní existenci derivace f (m) (x). Pojem diferenciálu m-tého řádu funkce n proměnných bychom mohli defi- novat pomocí jisté limity jako v Definici 4.1 pro diferenciál prvního řádu a pak ukázat, že z existence m-tého diferenciálu plyne existence parciálních derivací m-tého řádu, které jsou rovny jistým konstantám vystupujícím v limitním vztahu definujícím m-tý diferenciál (srovnej s Větou 4.1 pro m = 1). Podrobně je tento postup uveden ve skriptu [N2]. Zde pro jednoduchost uvedeme pouze konečný výsledek, který nejprve zformulujeme pro funkci dvou proměnných. Definice 4.2. Necht' funkce f : R2 R má v bodě [x0, y0] spojité parciální de- rivace až do řádu m včetně. Diferenciálem m-tého řádu funkce f v bodě [x0, y0] rozumíme homogenní funkci m-tého stupně dm f (x0, y0)(h, k) = m j=0 m j m f x j ym- j (x0, y0)h j km- j . Poznámka 4.5. Pro případ m = 1 je vzorec pro dm f samozřejmě totožný se vzta- hem (4.4). Pro m = 2, 3 dostáváme diferenciály 2. a 3. řádu d2 f (x0, y0) = fxx (x0, y0)h2 + 2 fxy(x0, y0)hk + fyy(x0, y0)k2 d3 f (x0, y0) = = fxxx (x0, y0)h3 + 3 fxxy(x0, y0)h2 k + 3 fxyy(x0, y0)hk2 + fyyy(x0, y0)k3 . Pro případ n proměnných je diferenciál m-tého řádu homogenní funkce n proměn- ných h = (h1, . . . , hn) dm f (x )(h) = j1++ jn=m m! j1! . . . jn! m f x j1 1 . . . x jn n (x )h j1 1 . . . h jn n . 64 Diferenciál funkce Tento vztah se často zapisuje pomocí formálního umocnění takto: dm f (x ) = x1 h1 + + xn hn m f (x ), přičemž po ,,normálním" umocnění nahradíme součiny x1 f (x ) j1 . . . xn f (x ) jn členy j1 f x j1 1 (x ) . . . jn f x jn n (x ). Např. diferenciál 2. řádu funkce dvou proměnných lze pomocí formálního umocnění za- psat takto: d2 f (x0, y0) = x h + y k 2 f (x0, y0). 4.3 Kmenová funkce V tomto odstavci řešíme následující úlohu: Je dána dvojice funkcí dvou proměn- ných P(x, y), Q(x, y). Máme rozhodnout, zda existuje funkce H(x, y) taková, že Hx = P, Hy = Q. V kladném případě máme tuto funkci určit. Funkce H se nazývá kmenová funkce funkcí P, Q. Odpověd' na otázku exis- tence kmenové funkce dává následující věta. Věta 4.5. Necht' P, Q jsou spojité funkce proměnných x, y definované na ote- vřené jednoduše souvislé1 množině R2 , které mají na této množině spojité parciální derivace Py, Qx . Pak výraz P(x, y)dx + Q(x, y)dy je diferenciálem nějaké funkce, právě když platí Py(x, y) = Qx (x, y) pro každé [x, y] . (4.7) Důkaz. ,,": Necht' platí (4.7) a [x0, y0] je libovolné. Položme H(x, y) = x x0 P(t, y) dt + y y0 Q(x0, t) dt. 1Oblast se nazývá jednoduše souvislá, jestliže libovolnou uzavřenou křivku ležící v lze spojitě deformovat v do bodu. Kmenová funkce 65 Pak Hx (x, y) = P(x, y) a Hy(x, y) = Q(x0, y) + x x0 Py(t, y) dt = Q(x0, y) + x x0 Qx (t, y) dt = = Q(x0, y) + Q(t, y)|t=x t=x0 = Q(x, y). ,,": Je-li výraz P dx + Q dy diferenciálem nějaké kmenové funkce H, pak P = Hx , Q = Hy. Ze spojitosti parciálních derivací Py, Qx plyne spojitost smí- šených derivací Hxy a Hyx , které jsou si rovny (Schwarzova věta 3.2), a rovnost Hxy = Hyx je ekvivalentní rovnosti (4.7). Příklad 4.3. Rozhodněte, zda výraz (x2 - y2 )dx + (5 - 2xy)dy je diferenciálem nějaké funkce; v případě že ano, určete tuto (kmenovou) funkci. Řešení. Nejprve ověříme, zda je uvedený výraz opravdu diferenciálem. Platí x (5 - 2xy) = -2y, y (x2 - y2 ) = -2y, tj. podle Věty 4.5 je zadaný výraz diferenciálem jisté kmenové funkce H. Dále platí H(x, y) = (x2 - y2 )dx = x3 3 - y2 x + (y), kde (y) hraje roli integrační konstanty, nebot' její derivace podle x je nulová. Derivováním podle y a dosazením do vztahu Hy = Q dostáváme Hy = -2xy + (y) = 5 - 2xy, odkud (y) = 5, tj. (y) = 5y + c. Vypočítali jsme, že zadaný výraz je diferenci- álem funkce H(x, y) = x3 3 - y2 x + 5y + c, c R. Poznámka 4.6. Pojem kmenové funkce také úzce souvisí s tzv. exaktní diferenci- ální rovnicí. Uvažujme diferenciální rovnici (tj. rovnici, kde neznámou je funkce y = y(x), která v rovnici vystupuje spolu se svými derivacemi) y = a(x, y) b(x, y) . (4.8) 66 Diferenciál funkce Dosadíme-li y = dy dx , dostáváme rovnici a(x, y)dx - b(x, y)dy = 0. Tato rovnice se nazývá exaktní, je-li -ay(x, y) = bx (x, y), tj. právě když je výraz na levé straně rovnice diferenciálem. Je-li H příslušná kmenová funkce, je řešení y = f (x) rovnice (4.8) zadáno rovností H(x, y) = c, kde c R (říkáme, že funkce y = f (x) je zadána implicitně, viz Kapitola 8). Zcela analogický problém můžeme řešit pro funkce n proměnných. Podobně jako v důkazu Věty 4.5 lze ukázat, že v případě n-tice funkcí P1, . . . , Pn : Rn R se spoji- tými parciálními derivacemi prvního řádu je výraz P1(x)dx1 + + Pn(x)dxn diferenci- álem jisté kmenové funkce n proměnných v bodě x = [x1, . . . , xn], právě když xi Pj (x) = x j Pi (x), i, j = 1, . . . , n, i = j. Praktický postup při určování kmenové funkce v případě tří proměnných je ilustrován v následujícím příkladu. Příklad 4.4. Rozhodněte, zda je výraz (y + z)dx + (x + z)dy + (x + y)dz diferenciálem jisté funkce H(x, y, z). Pokud ano, tuto funkci určete. Řešení. Nejprve ověříme, zda je daný výraz opravdu diferenciálem: y (y + z) = 1 = x (x + z), x (x + y) = 1 = z (y + z), z (x + z) = 1 = y (x + y). Kmenovou funkci určíme takto: H(x, y, z) = (y + z) dx = yx + zx + C(y, z), kde funkce C(y, z) opět hraje roli integrační konstanty. Derivováním podle y a z a porov- náním s funkcemi u dy, dz dostáváme y H(x, y, z) = x + Cy(y, z) = x + z, tj. Cy(y, z) = z z H(x, y, z) = x + Cz(y, z) = x + y, tj. Cz(y, z) = y. Tím jsme dostali stejný problém jako v Příkladu 4.3, kdy je třeba určit funkci C(z, y), jestliže známe obě její parciální derivace. Stejným postupem jako v Příkladu 4.3 snadno zjistíme, že C(y, z) = yz + c, c R. Zadaný výraz je diferenciálem funkce H(x, y, z) = xy + yz + xz + c, c R. Kmenová funkce 67 Poznámka 4.7. Skutečnost, zda je výraz P(x, y, z)dx + Q(x, y, z)dy + R(x, y, z)dz (4.9) diferenciálem jisté funkce, hraje fundamentální roli v teorii křivkových integrálů a v je- jich fyzikálních aplikacích. Funkce P, Q, R můžeme chápat jako souřadnice nějakého silového pole v prostoru ­ vektor F(x, y, z) = (P(x, y, z), Q(x, y, z), R(x, y, z)) udává směr a velikost síly působící v bodě [x, y, z]. Toto pole se nazývá konzervativní nebo také potenciálové, jestliže se při pohybu v tomto poli po libovolné uzavřené křivce nevy- koná žádná práce (tuto vlastnost má například pole gravitační). Lze ukázat, že pole F je konzervativní, právě když je výraz (4.9) diferenciálem jisté funkce H. Tato funkce se ve fyzikální terminologii nazývá potenciál silového pole. Cvičení 4.1. Určete diferenciál funkce v daném bodě, popř. v obecném bodě tam, kde není konkrétní bod specifikován: a) z = xy + x y , [x0, y0] = [1, 1] e) z = x2 + y2, [x0, y0] = [3, 4] b) z = arctg y x , [x0, y0] = [1, -1] f) z = arcsin x x2+y2 , [x0, y0] = [1, 3] c) z = arctg x+y 1-xy , [x0, y0] = [ 3, 1] g) u = z x2+y2 , [x0, y0, z0] = [1, 0, 1] d) u = x y z , [x0, y0, z0] = [2, 1, 1] h) u = x y 1 z 4.2. Pomocí diferenciálu vypočtěte přibližně: a) arctg 1,02 0,95 c) (1,02)3 + (1,97)3 e) (1,03)2 3 0,98(1,05)4 b) arcsin 0,48 1,05 d) ln(0,972 + 0,052 ) f) e0,053-0,02 g) O kolik cm3 se přibližně změní objem kužele s poloměrem podstavy r = 10 cm a výškou h=10 cm, zvětšíme-li poloměr podstavy o 5 mm a výšku o 5 mm zmenšíme? h) O kolik přibližně musíme změnit výšku komolého jehlanu se čtvercovou zá- kladnou s délkami hran a = 2 m, b = 1 m a výškou v = 1 m, jestliže a zvětšíme o 7 cm a b zmenšíme o 7 cm, chceme-li, aby objem zůstal nezměněn? 68 Diferenciál funkce 4.3. Rozhodněte, zda funkce f je diferencovatelná v bodě [0, 0]: a) f (x, y) = |xy| b) f (x, y) = xy x2+y2 , [x, y] = [0, 0], 0 [x, y] = [0, 0] c) f (x, y) = sin(x2+y2) x2+y2 , [x, y] = [0, 0], 1 [x, y] = [0, 0] 4.4. Určete rovnici tečné roviny ke grafu funkce v daném bodě: a) f (x, y) = 1 - x2 - y2, [x0, y0, z0] = [ 1 3 , 1 3 , 1 3 ] b) f (x, y) = x2 + xy + 2y2 , [x0, y0, z0] = [1, 1, 4] c) f (x, y) = arctg y x , [x0, y0, z0] = [1, -1, ?] d) f (x, y) = ex2+y2 , [x0, y0, z0] = [0, 0, ?] 4.5. Na grafu funkce f najděte bod, v němž je tečná rovina (nadrovina) rovno- běžná s danou rovinou (nadrovinou): a) f (x, y) = x3 + y3 , 12x + 3y - z = 0 b) f (x, y) = 1 - x2 - y2, ax + by - z = 0 c) f (x, y) = x2 - y2 , x + y + z = 0 d) f (x, y) = xy , x - z = 0 e) f (x, y, z) = x z2 + y2, x + y - z - u = 0 f) f (x) = x2 1 + + x2 n , a1x1 + + anxn + xn+1 = 0 4.6. Pomocí diferenciálu vypočtěte směrové derivace funkce f ve směru vek- toru u v daném bodě: a) f (x, y) = xy, u = (1, 2), [x0, y0] = [1, 1] b) f (x, y, z) = x2 + y2 + z2, u = (1, 0, 1), [x0, y0, z0] = [0, 1, 0] 4.7. Vypočtěte diferenciály vyšších řádů zadaných funkcí (v obecném bodě): a) z = x ln(xy), d2 z =? d) z = ln(x + y), dn z =? b) z = x3 + y3 - 3xy(x - y), d2 z =? e) z = x+y x-y , dn z =? c) z = (x2 + y2 )ex+y , dn z =? f) u = xyzex+y+z , dn u =? 4.8. Zjistěte, zda dané výrazy jsou totálními diferenciály nějaké funkce, a pokud ano, najděte je: a) (x + ln y) dx + (x y + sin y) dy c) x dx+y dy x2+y2 b) x sin 2y dx + x2 cos 2y dy d) (y2 - 1) dx + (2xy + 3y) dy Kmenová funkce 69 4.9. Zjistěte, zda dané výrazy jsou totálními diferenciály nějaké funkce, a pokud ano, najděte je: a) (3x2 - 3xyz + 2)dx + (3y2 - 3xz + ln y + 1)dy + (3z2 - 3xy + 1)dz b) yz dx 1+x2 y2z2 + xz dy 1+x2 y2z2 + xy dz 1+x2 y2z2 Nikdy nepovažujte své studium za povinnost, ale za záviděníhodnou příležitost naučit se poznávat osvobozující účinky krásy ve sféře ducha, abyste z toho vy získali osobní potěšení, a společenství, k němuž budete později patřit, výhody. (A. Einstein) Kapitola 5 Derivace složené funkce, Taylorův vzorec Stejně jako u funkce jedné proměnné potřebujeme u funkcí více proměnných určit parciální derivace složené funkce. To je obsahem prvního odstavce, kde také uká- žeme použití odvozených vzorců. Druhý odstavec této kapitoly je věnován Tay- lorovu vzorci pro funkci více proměnných. Podrobnější srovnání s funkcí jedné proměnné provedeme v každém odstavci zvlášt'. 5.1 Parciální derivace složených funkcí Vzorce pro parciální derivace složených funkcí jsou jedním z nejdůležitějších ná- strojů řešení rovnic matematické fyziky. Tyto rovnice jsou tzv. parciální diferen- ciální rovnice ­ to jsou rovnice, které obsahují parciální derivace neznámé funkce a jejichž řešení jsou funkce dvou či více proměnných. Odvozené vzorce umožňují transformovat tyto rovnice na jednodušší tvar, z něhož bud' již umíme najít řešení, nebo alespoň můžeme vyvodit řadu důležitých vlastností řešení rovnice. Na úvod připomeňme, jak se derivuje složená funkce jedné proměnné. Necht' funkce u = g(x) má derivaci v bodě x0. Označme u0 = g(x0). Má-li funkce y = f (u) derivaci v bodě u0, pak složená funkce y = F(x) = f (g(x)) má derivaci v bodě x0 a platí: y (x0) = f (u0)g (x0). Nyní odvodíme podobné vztahy pro parciální derivace složené funkce dvou proměnných. Bude nás především zajímat případ, kdy vnější funkce f není expli- citně zadána (obvykle je to hledané řešení parciální diferenciální rovnice). Věta 5.1. Necht' funkce u = u(x, y), v = v(x, y) mají parciální derivace prvního řádu v bodě [x0, y0], označme u0 = u(x0, y0), v0 = v(x0, y0). Je-li 72 Derivace složené funkce, Taylorův vzorec funkce z = f (u, v) diferencovatelná v bodě [u0, v0], pak složená funkce z = = F(x, y) = f (u(x, y), v(x, y)) má parciální derivace 1. řádu v bodě [x0, y0] a platí: F x (x0, y0) = f u (u0, v0) u x (x0, y0) + f v (u0, v0) v x (x0, y0) F y (x0, y0) = f u (u0, v0) u y (x0, y0) + f v (u0, v0) v y (x0, y0). (5.1) Zkráceně píšeme zx = zu ux + zv vx , zy = zu uy + zv vy (5.2) nebo také z x = z u u x + z v v x , z y = z u u y + z v v y . (5.3) Důkaz. Dokážeme pouze první vzorec v (5.1), druhý se dokáže zcela analogicky. Vyjdeme přímo z definice parciální derivace. F x (x0, y0) = lim t0 F(x0 + t, y0) - F(x0, y0) t = = lim t0 f (u(x0 + t, y0), v(x0 + t, y0)) - f (u(x0, y0), v(x0, y0)) t . (5.4) Označíme-li u(t) = u(x0 + t, y0), v(t) = v(x0 + t, y0), z diferencovatelnosti funkce f plyne existence funkce splňující (4.3) takové, že f (u(t), v(t)) - f (u0, v0) = = fu(u0, v0)(u(t) - u0) + fv(u0, v0)(v(t) - v0) + (u(t) - u0, v(t) - v0). Dosazením tohoto vztahu do (5.4) dostáváme F x (x0, y0) = lim t0 1 t fu(u0, v0)(u(t) - u0) + fv(u0, v0)(v(t) - v0)+ +(u(t) - u0, v(t) - v0)] = fu(u0, v0) lim t0 u(x0 + t, y0) - u(x0, y0) t + + fv(u0, v0) lim t0 v(x0 + t, y0) - v(x0, y0) t + lim t0 (u(t) - u0, v(t) - v0) t = = fu(u0, v0)ux (x0, y0) + fv(u0, v0)vx (x0, y0) + lim t0 (u(t) - u0, v(t) - v0) t . Parciální derivace složených funkcí 73 K dokončení důkazu nyní stačí ukázat, že poslední limita je nulová: lim t0 (u(t) - u0, v(t) - v0) t = lim t0 (u(t) - u0, v(t) - v0) (u(t) - u0)2 + (v(t) - v0)2 u(t) - u0 t 2 + v(t) - v0 t 2 = = u2 x (x0, y0) + v2 x (x0, y0) lim t0 (u(t) - u0, v(t) - v0) (u(t) - u0)2 + (v(t) - v0)2 = 0. V posledním výpočtu jsme využili faktu, že limt0 u(t) = u0, limt0 v(t) = v0, nebot' funkce u(t) = u(x0 +t, y0), v(t) = v(x0 +t, y0) jsou spojité v bodě t = 0 ­ to plyne z existencí parciálních derivací funkcí u, v v bodě t = 0 a pro funkci jedné proměnné plyne z existence derivace spojitost. Příklad 5.1. i) Je dána funkce z = eu sin v, kde u = xy a v = x + y. Vypočtěte zx a zy. Řešení. Protože vnitřní i vnější složky mají spojité parciální derivace v celém R2 , má složená funkce parciální derivace v každém bodě tohoto prostoru. Dosazením do (5.2) dostáváme zx = zuux + zvvx = (eu sin v)y + (eu cos v), zy = zuuy + zvvy = (eu sin v)x + (eu cos v). Zbývá dosadit za u a v, u = xy a v = x + y a dostaneme zx = exy (y sin(x + y) + cos(x + y)), zy = exy (x sin(x + y) + cos(x + y)). ii) Pomocí transformace do nových nezávisle proměnných u = x+y, v = x-y najděte všechny diferencovatelné funkce f : R2 R splňující rovnost fx (x, y) + fy(x, y) = 0. (5.5) Řešení. Označme z = f (x, y). Pak zx = zuux + zvvx = zu + zv, zy = zuuy + zvvy = = zu - zv. Dosazením dostáváme zu + zv + zu - zv = 2zu = 0, tedy zu = 0. To znamená, že funkce z = z(u, v) nezávisí na proměnné u, a tedy z(u, v) = g(v), kde g je libovolná diferencovatelná funkce jedné proměnné. Dosazením za v vi- díme, že všechny diferencovatelné funkce dvou proměnných, které splňují (5.5), 74 Derivace složené funkce, Taylorův vzorec jsou tvaru f (x, y) = g(x - y), kde g je libovolná diferencovatelná funkce jedné proměnné. iii) Proved'te totéž jako v předchozím příkladě zavedením polárních souřadnic = arctg y x , r = x2 + y2 do rovnice y fx (x, y) - x fy(x, y) = 0. (5.6) Řešení. Vypočtěme nejprve parciální derivace funkcí r a : rx = x x2 + y2 , ry = y x2 + y2 , x = - y x2 + y2 , y = x x2 + y2 . Označíme-li opět z = f (x, y) a dosadíme-li do vzorečků pro derivace složené funkce prvního řádu, dostáváme zx =zr x x2 + y2 - z y x2 + y2 , zy =zr y x2 + y2 + z x x2 + y2 , což po dosazení do (5.6) a úpravě dává rovnici z = 0, a tedy z(r, ) = h(r). Všechny funkce dvou proměnných splňující rovnici (5.6) jsou tedy tvaru f (x, y) = h( x2 + y2), kde h je libovolná diferencovatelná funkce jedné pro- měnné. Na předchozích příkladech vidíme, že zavedením nových nezávisle proměn- ných můžeme dosáhnout značného zjednodušení dané parciální diferenciální rov- nice, což se velmi často využívá především při řešení diferenciálních rovnic popi- sujících různé fyzikální děje. Protože tyto rovnice jsou většinou 2. řádu (obsahují parciální derivace 2. řádu neznámé funkce), zvláště důležité jsou vzorce pro par- ciální derivace 2. řádu složených funkcí. Dříve než si tyto vzorce pro parciální derivace 2. řádu uvedeme, připomeňme opět pro srovnání vzorec pro derivace 2. řádu složené funkce jedné proměnné. Derivováním rovnosti y = f (u(x))g (x) dostáváme y = ( f (u)g (x)) = f (u)g 2 (x) + f (u)g (x). Věta 5.2. Necht' funkce u = u(x, y), v = v(x, y) mají parciální derivace 2. řádu v bodě [x0, y0], označme u0 = u(x0, y0), v0 = v(x0, y0). Má-li funkce Parciální derivace složených funkcí 75 z = f (u, v) spojité parciální derivace 2. řádu v bodě [u0, v0], pak složená funkce z = F(x, y) = f (u(x, y), v(x, y)) má parciální derivace 2. řádu v bodě [x0, y0] a platí: zxx =zuuu2 x + 2zuvux vx + zvvv2 x + zuuxx + zvvxx zxy =zuuux uy + zuvvyux + zvuuyvx + zvvvyvx + zuuxy + zvvxy zyy =zuuu2 y + 2zuvuyvy + zvvv2 y + zuuyy + zvvyy. (5.7) Funkce z a její parciální derivace mají argument (u0, v0), funkce u, v a jejich parciální derivace mají argument (x0, y0). Důkaz. Dokážeme pouze rovnost pro zxx , důkaz zbývajících dvou vzorců je zcela analogický. Platí zxx = x (zx ) = x (zuux + zvvx ) = x (zuux ) + x (zvvx ) = = x (zu)ux + zuuxx + x (zv)vx + zvvxx = =(zuuux + zuvvx )ux + zuuxx + (zvuux + zvvvx )vx + +zvvxx = zuuu2 x + zuvvx ux + zvvv2 x + zvuux vx + zuuxx + zvvxx = =zuuu2 x + 2zuvux vx + zvvv2 x + zuuxx + zvvxx . K výpočtu x zu a x zv jsme využili skutečnosti, že zu = zu(u(x, y), v(x, y)) a zv = zv(u(x, y), v(x, y)) jsou opět složené funkce proměnných x, y, a proto můžeme k výpočtu jejich derivací využít vztahů (5.1), ve kterých místo z dosa- díme zu, resp. zv. Poznámka 5.1. K zapamatování vzorců (5.7) můžeme použít formální umocnění, o kte- rém jsme se již zmínili u výpočtu diferenciálů vyšších řádů (Poznámka 4.5). Například pro výpočet zxx formálně umocníme pravou stranu rovnosti zx = zuux +zvvx . Dostaneme z2 uu2 x + 2zuzvux vx + z2 vv2 x , a nahradíme-li druhé mocniny, resp. součin prvních derivací funkce z odpovídajícími druhými derivacemi, obdržíme zuuu2 x + 2zuvux vx + zvvv2 x , což jsou právě první tři členy v (5.7). Příklad 5.2. i) Pomocí transformace do nových nezávisle proměnných u = x + ay, v = x - ay najděte obecné řešení tzv. vlnové rovnice a2 zxx - zyy = 0 76 Derivace složené funkce, Taylorův vzorec (tato rovnice popisuje např. chvění struny na hudebním nástroji, z(x, y) udává velikost výchylky struny ve vzdálenosti x od jednoho z bodů upevnění struny v čase t = y). Řešení. Využitím vzorečků pro parciální derivace 1. a 2. řádu dostáváme zx = zuux + zvvx = zu + zv, zy = zuuy + zvvy = azu - azv, zxx = zuu + 2zuv + zvv, zyy = a2 zuu - 2a2 zuv + a2 zvv. Dosazením a úpravou obdržíme rovnici zuv = 0, kterou řešíme takto: Označíme-li zu(u, v) = w(u, v), pak řešením rovnice wv = 0 je libovolná funkce nezávisející na v, tedy w = w(u). Řešení rovnice zu = w(u) je tvaru z(u, v) = w(u) du+g(v) (podobně jako při hledání kmenové funkce je ,,integrační konstantou" funkce g(v) proměnné v, viz odst. 4.3). Označíme-li f (u) = w(u) du, dostáváme řešení rovnice ve tvaru z(u, v) = f (u) + g(v) a po dosazení za u a v z(x, y) = f (x + ay) + g(x - ay), kde f, g jsou libovolné funkce jedné proměnné mající derivaci 2. řádu. Je-li ještě zadána počáteční poloha a rychlost chvějící se struny, tj. je daná dvojice funkcí , jedné proměnné popisující počáteční stav struny, pak dvojice počátečních podmínek z(x, 0) = (x), zy(x, 0) = (x), určuje jednoznačně funkci z(x, y) popisující chvění struny, viz např. [T-S]. ii) Pomocí transformace nezávisle proměnných u = xy, v = x y najděte všechny funkce dvou proměnných splňující rovnici x2 zxx + y2 zyy - 2xyzxy + xzx + yzy = 0. Řešení. Podobně jako v předchozím příkladu zx = zuux + zvvx = zu y + zv 1 y , zy = zuuy + zvvy = zu x - zv x y2 , zxx = y2 zuu + 2zuv + zvv 1 y2 , zxy = xyzuu - x y3 zvv + zu - 1 y2 zv, zyy = x2 zuu - 2 x2 y2 zuv + x2 y4 zvv + 2zv x y3 . Parciální derivace složených funkcí 77 Dosadíme do rovnice a po úpravě dostáváme zuu(x2 y2 + x2 y2 - 2x2 y2 ) + zuv(2x2 - 2x2 ) + zvv( x2 y4 + x2 y4 + 2 x2 y4 )+ + zu(-2xy + xy + xy) + zv( x y + 2 x y - x y ) = 4 x2 y2 zvv + x y zv = 0, odtud zvv + 1 2v zv = 0. Řešením této rovnice je zv(u, v) = f (u) v , kde f je libovolná (diferencovatelná) funkce jedné proměnné, a odtud z(u, v) = 2 f (u) v + g(u), kde g je libovolná funkce jedné proměnné se spojitou druhou derivací, což po dosazení za u, v dává z(x, y) = 2 f (xy) x y + g(xy). Přesvědčte se zkouškou, že tato funkce je opravdu řešením dané rovnice. iii) Transformujte tzv. Laplaceovu rovnici1 v R2 zxx + zyy = 0 do polárních souřadnic x = r cos , y = r sin , za předpokladu, že funkce z má spojité parciální derivace 2. řádu. Řešení. Podle (5.2) platí zr = zx xr + zy yr = zx cos + zy sin , z = zx x + zy y = -zx r sin + zy r cos . Pro derivace 2. řádu dostáváme zrr = zxx x2 r + 2zxy xr yr + zyy y2 r + zx xrr + zy yrr = = zxx cos2 + zxy sin 2 + zyy sin2 , z = zxx x2 + 2zxy x y + zyy y2 + zx z + zy y = = zxxr2 sin2 - zxyr2 sin 2 + zyyr2 cos2 - zxr cos - zyr sin . Vynásobíme-li vzorec pro zrr výrazem r2 a sečteme se vzorcem pro z, dostá- váme r2 zrr + z = r2 zxx (cos2 + sin2 ) + r2 zyy(cos2 + sin2 )+ + zxy(sin 2 - sin 2) - r[zx cos + zy sin ] = = r2 (zxx + zyy) - rzr . 1Pierre Simon Laplace (1749­1827), francouzský matematik, fyzik a astronom 78 Derivace složené funkce, Taylorův vzorec Laplaceova rovnice v polárních souřadnicích má tedy tvar r2 zrr + z + rzr = 0. Poznámka 5.2. Ve všech řešených příkladech, které jsme zde uvedli, byla transformace do nových proměnných dána již v zadání. V rovnicích matematické fyziky se vyšetřují rovnice typu a(x, y)zxx + 2b(x, y)zxy + c(x, y)zyy + f (x, y, z, zx , zy) = 0. Chceme-li najít řešení této rovnice, je třeba ji vhodnou transformací do nových nezávisle proměnných zjednodušit ­ převést na tzv. kanonický tvar. Tuto ,,vhodnou" transformaci najdeme prostřednictvím řešení obyčejné diferenciální rovnice a(x, y)y 2 - 2b(x, y)y + c(x, y) = 0. Podrobnější informace o tomto postupu lze nalézt například v [T-S]. Doposud jsme uvažovali pouze funkce dvou proměnných, ale situace pro funkce více proměnných je zcela analogická, včetně důkazu následujícího tvrzení. Věta 5.3. Necht' je dána funkce f : Rm R a m-tice funkcí gi : Rn R, které mají spojité parciální derivace 2. řádu. Označme uk = gk(x1, . . . , xn), k = 1, . . . , m. Pak pro složenou funkci F(x1, . . . , xn) = f (g1(x1 . . . , xn), . . . , gm(x1, . . . , xn)) platí xi F(x1 . . . , xn) = m k=1 uk f (u1, . . . , um) xi gk(x1, . . . , xn) (5.8) 2 xi x j F(x1, . . . , xn) = m k,l=1 2 ukul f (u) xi gk(x) x j gl(x)+ + n k=1 uk f (u) 2 xi x j gk(x), (5.9) kde i, j = 1, 2, . . . , n a ve vzorci (5.9) je u = (u1 . . . , un), x = (x1, . . . , xn). Poznámka 5.3. i) Jsou-li funkce gi ve Větě 5.3 lineární, pak všechny členy v druhé sumě v (5.9) jsou nulové (nebot' druhá derivace lineární funkce je nulová). Metoda formálního vynásobení derivací prvního řádu a následná náhrada součinů prvních derivací odpoví- dajícími druhými derivacemi pak dává přímo vztahy pro druhou derivaci. Takto je tomu např. v Příkladu 5.2 i). ii) Uvedli jsme si zde pouze vzorce pro parciální derivace složené funkce 1. a 2. řádu, které jsou potřeba v rovnicích matematické fyziky. Metodou stejnou jako v důkazu Věty 5.2 lze odvodit vztahy pro třetí a vyšší derivace, nebudeme je zde však již uvádět, nebot' jsou formálně poměrně složité. Parciální derivace složených funkcí 79 Příklad 5.3. i) Transformujte Laplaceovu rovnici v R3 uxx + uyy + uzz = 0 do sférických souřadnic x = r cos sin , y = r sin sin , z = r cos . Řešení. Mohli bychom postupovat podobně jako při řešení Příkladu 5.2 iii), zde však pro ilustraci různých možných metod postupujeme odlišně. Vyjádříme nejprve r, , pomocí x, y, z. Jednoduchými úpravami dostáváme r = x2 + y2 + z2, = arctg y x , = arctg x2 + y2 z . Nyní vypočteme všechny potřebné parciální derivace funkcí r, , . Platí rx = x x2 + y2 + z2 = x r , ry = y r , rz = z r , rxx = 1 r - x2 r3 , ryy = 1 r - y2 r3 , rzz = 1 r - z2 r3 , x = y x2 + y2 , y = - x x2 + y2 , z = 0, xx = -2xy (x2 + y2)2 , yy = -2xy (x2 + y2)2 , zz = 0, x = 1 1 + x2+y2 z2 x z x2 + y2 = xz x2 + y2(x2 + y2 + z2) = xz r2 x2 + y2 , y = yz r2 x2 + y2 , z = 1 1 + x2+y2 z2 - x2 + y2 z2 = - x2 + y2 r2 , xx = z r2 x2 + y2 - 2 x2z r4 x2 + y2 - x2z r2(x2 + y2) 3 2 , yy = z r2 x2 + y2 - 2 y2z r4 x2 + y2 - y2z r2(x2 + y2) 3 2 , zz = 2z x2 + y2 r4 . Podle vzorců pro derivace složené funkce ux = urrx + ux + u x = ur x r + u y x2 + y2 + u xz r x2 + y2 , uy = ur y r - u x x2 + y2 + u yz r x2 + y2 , uz = ur z r - u x2 + y2 r , 80 Derivace složené funkce, Taylorův vzorec uxx = urr x2 r2 + u y2 (x2 + y2)2 + u x2z2 r4(x2 + y2) + 2ur xyr(x2 + y2 )+ + 2ur x2z r2 x2 + y2 - 2u xyz r(x2 + y2)3/2 + ur 1 r - x2 r3 - - u 2xy (x2 + y2)2 + u z r2 x2 + y2 - 2 x2z r4 x2 + y2 - x2z r2(x2 + y2) 3 2 , uyy = urr y2 r2 + u x2 (x2 + y2)2 + u y2z2 r4(x2 + y2) - 2ur xy r(x2 + y2) + + 2ur y2z r2 x2 + y2 - 2u xyz r(x2 + y2)3/2 + ur 1 r - y2 r3 - - u 2xy (x2 + y2)2 + u z r2 x2 + y2 - 2 y2z r4 x2 + y2 - y2z (x2 + y2) 3 2 , uzz = urr z2 r2 + u x2 + y2 r2 - 2ur z x2 + y2 r2 + + ur 1 r - z2 r3 + u 2z x2 + y2 r4 . Odtud uxx + uyy + uzz = urr r2 (x2 + y2 + z2 ) + u x2 + y2 (x2 + y2)2 + + u r4 x2z2 (x2 + y2)2 + y2z2 (x2 + y2)2 + (x2 + y2 ) + 2 ur r(x2 + y2) (xy - xy)+ +2 ur r2 x2z x2 + y2 + y2z x2 + y2 - z x2 + y2 + 2 u r2(x2 + y2) 3 2 (xyz - xyz)+ +ur 3 r - x2 + y2 + z2 r3 + u (x2 + y2)2 (-2xy + 2xy)+ +u 2z r2 x2 + y2 - 2z r4 x2 + y2 + 2z r4 x2 + y2 - z r2 x2 + y2 = = urr + 2 r ur + 1 r2 sin2 u + 1 r2 u + cotg r2 u . Taylorova věta 81 ii) Určete řešení Laplaceovy rovnice v R3, které je sféricky symetrické, tj. závisí pouze na vzdálenosti od počátku. Řešení. Necht' funkce u závisí pouze na proměnné r = x2 + y2 + z2 a nikoliv na pro- měnných a , tj. u = u(r) (tento předpoklad je ,,rozumný" vzhledem k fyzikálnímu významu Laplaceovy rovnice). Pak všechny parciální derivace podle , jsou rovny nule a dostáváme rovnici urr + 2 r ur = 0. Položíme-li ur = v, dostáváme dále rovnici vr + 2 r v = 0 a po úpravě r2vr + 2rv = 0, což je ekvivalentní rovnici r (r2v) = 0. Řešením této rovnice je např. v(r) = - 1 r2 , a tedy u = 1 r , tj. u(x, y, z) = 1 x2 + y2 + z2 je jedním z řešení Laplaceovy rovnice (srov. Příklad 3.3 ii) ). 5.2 Taylorova věta Nejprve připomeňme, co to je Taylorův polynom a Taylorova věta1 pro funkci jedné proměnné. Necht' f : R R, x0, x R a h = x - x0. Taylorův polynom (mnohočlen) stupně n N funkce f se středem v bodě x0 je polynom Tn(x; x0) = a0 + a1(x - x0) + + an(x - x0)n , ak = f (k) (x0) k! , k = 0, . . . , n. Koeficienty ak určíme z požadavku, aby polynom Tn měl v bodě x0 stejnou funkční hodnotu a hodnotu prvních n derivací jako funkce f . Taylorův polynom používáme k přibližnému výpočtu funkčních hodnot funkce f v okolí bodu x0. Taylorova věta udává velikost chyby, které se dopus- tíme, aproximujeme-li funkci Taylorovým polynomem. Obdobně je tomu u funkce více proměnných. Taylorův polynom funkce f : Rn R je polynom více proměnných, který má s funkcí f v daném bodě x = [x 1 , . . . , x n ] Rn stejnou funkční hodnotu a stejnou hodnotu všech parci- álních derivací až do řádu n, kde n je stupeň polynomu. Pro funkce dvou proměn- ných dostáváme toto tvrzení. Věta 5.4. (Taylorova) Necht' funkce f : R2 R má v bodě [x0, y0] a nějakém jeho okolí spojité parciální derivace až do řádu n + 1 včetně. Pak pro každý bod 1Brook Taylor (1685­1731), anglický matematik 82 Derivace složené funkce, Taylorův vzorec [x, y] z tohoto okolí platí f (x, y) = Tn(x, y) + Rn(x, y), (5.10) kde Tn(x, y) = f (x0, y0) + f x (x0, y0)h + f y y (x0, y0)k+ + 1 2! 2 f x2 (x0, y0)h2 + 2 2 f xy (x0, y0)hk + 2 f y2 (x0, y0)k2 + + + 1 n! n j=0 n j n f xn- j y j (x0, y0)hn- j k j , Rn(x, y) = 1 (n + 1)! n+1 j=0 n + 1 j n+1 f xn+1- j y j (x0 + h, y0 + k)hn+1- j k j a kde h = x - x0, k = y - y0, (0, 1). Poznámka 5.4. Vzorec (5.10) se nazývá Taylorův vzorec, polynom Tn Taylorův polynom a Rn zbytek v Taylorově vzorci. Taylorův vzorec lze zapsat pomocí diferenciálů takto: f (x, y) = f (x0, y0) + d f (x0, y0)(h, k) + 1 2 d2 f (x0, y0)(h, k) + + + 1 n! dn f (x0, y0)(h, k) + 1 (n + 1)! dn+1 f (x0 + h, y0 + k)(h, k). Důkaz Věty 5.4. Zaved'me pomocnou funkci jedné proměnné F(t) = f (x0+th, y0+ + tk). Platí F(1) = F(x0 + h, y0 + k) = F(x, y), F(0) = f (x0, y0). Pomocí Taylorova vzorce pro funkci jedné proměnné dostáváme F(1) = F(0) + F (0) + 1 2! F (0) + + 1 n! F(n) (0) + 1 (n + 1)! F(n+1) (), kde (0, 1). Pro výpočet derivací funkce F využijeme vztahů pro parciální derivace složených funkcí. Dostáváme F (0) = d d t f (x0 + th, y0 + tk)|t=0 = x f (x0, y0)h + y f (x0, y0)k, Taylorova věta 83 F (0) = d2 dt2 F(t)|t=0 = d2 dt2 f (x0 + th, y0 + tk)|t=0 = = fxx (x0, y0)h2 + 2 fxy(x0, y0)hk + fyy(x0, y0)k2 a analogicky obdržíme F(m) (0) = m j=0 m j m f xm- j y j (x0, y0)hm- j k j . Stejně postupujeme i při výpočtu zbytku Rn. Příklad 5.4. i) Určete Taylorův polynom 2. stupně se středem v bodě [x0, y0] = = [1, 1] pro funkci f (x, y) = x y . Řešení. Vypočteme nejprve všechny potřebné parciální derivace fx = 1 y , fy = - x y2 , fxx = 0, fxy = - 1 y2 , fyy = 2x y3 . Podle Věty 5.4 T2(x, y) = f (1, 1) + fx (1, 1)(x - 1) + fy(1, 1)(y - 1)+ + 1 2 [ fxx (1, 1)(x - 1)2 + 2 fxy(1, 1)(x - 1)(y - 1) + fyy(1, 1)(y - 1)2 ] = = 1 + (x - 1) - (y - 1) - (x - 1)(y - 1) - (y - 1)2 = = -y2 - xy + 2x + 2y - 1. ii) Pomocí Taylorova polynomu 2. stupně vypočtěte přibližně: a) (2, 98)2 + (4, 05)2; b) 1, 042,02 . Výsledek porovnejte s hodnotou získanou pomocí diferenciálu z Příkladu 4.2 ii). Řešení. a) Přibližnou hodnotu vypočteme pomocí Taylorova polynomu 2. stupně funkce z = f (x, y) = x2 + y2 v bodě [x0, y0] = [3, 4] a diferencemi h = -0,02, k = 0,05. Parciální derivace funkce z jsou zx = x x2 + y2 , zy = y x2 + y2 , zxx = y2 (x2 + y2)3/2 , zxy = - xy (x2 + y2)3/2 , zyy = x2 (x2 + y2)3/2 , 84 Derivace složené funkce, Taylorův vzorec Taylorův polynom je roven T2(x, y) = f (3, 4) + fx (3, 4)(x - 3) + fy(3, 4)(y - 4)+ + 1 2 [ fxx (3, 4)(x - 3)2 + 2 fxy(3, 4)(x - 3)(y - 4) + fyy(3, 4)(y - 4)2 ] = = 5 + 1 5 [3(x - 3)+4(y - 4)]+ 1 250 [16(x-3)2 -24(x-3)(y-4)+9(y-4)2 ]. Odtud (2,98)2 + (4,05)2 . = 5 + 1 5 (-0,06 + 0,2)+ + 1 250 (16 0,0004 - 24 0,001 + 9 0,0025) = 5,0281332. V příkladu 4.1 ii) jsme pomocí diferenciálu dostali výsledek (2,98)2 + (4,05)2 . = . = 5,028. b) V Taylorově vzorci pro funkci z = xy položme [x0, y0] = [1, 2], h = 0,04, k = = 0,02. Nejprve vypočtěme všechny potřebné parciální derivace. Platí zx = yxy-1 , zx (1, 2) = 2, zy = xy ln x, zy(1, 2) = 0, zxx = y(y - 1)xy-2 , zxx (1, 2) = 2, zxy = xy-1 + yxy-1 ln x = xy-1 (1 + y ln x), zxy(1, 2) = 1, zyy = xy ln x ln x = = xy ln2 x, zyy(1, 2) = 0. Pak T2(x, y) = 1 + 2(x - 1) + (x - 1)2 + (x - 1)(y - 1). Odtud 1,042,02 . = 1 + 2 0,04 + 0,0016 + 0,0008 = 1,0824. V Příkladu 4.1 ii) jsme pomocí diferenciálu obdrželi přibližný výsledek 1,042,02 . = . = 1,08. iii) Mnohočlen P(x, y) = x3 + 3y3 + xy2 + 2x2 + xy + x - 2y napište jako polynom v proměnných u = x - 1, v = y + 2. Řešení. Necht' T3(x, y) Taylorův polynom 3. stupně funkce P se středem x0 = = 1, y0 = -2. Pak ve zbytku R3(x, y) vystupují 4. derivace funkce P, které jsou však všechny nulové, nebot' P je polynom 3. stupně. Tedy T3(x, y) = P(x, y) a stačí určit koeficienty v T3(x, y). Postupně dostáváme P(1, -2) = -20 Px = = 3x2 + y2 + 4x + y + 1, Px (1, -2) = 10, Py = 9y2 + 2xy + x - 2, Py(1, -2) = 31, Pxx = 6x + 4, Pxx (1, -2) = 10, Pxy = 2y + 1, Pxy(1, -2) = -3, Pyy = 18y + + 2x, Pyy(1, -2) = -34, Pxxx = 6, Pxxy = 0, Pxyy = 2, Pyyy = 18. Odtud T3(x, y) = -14 + 10(x - 1) + 31(y + 2) + 5(x - 1)2 - 3(x - 1)(y + 2)- -17(y + 2)2 + (x - 1)3 + (x - 1)(y + 2)2 + 3(y + 2)3 . Taylorova věta 85 Jestliže ve výsledku provedeme umocnění, po úpravě samozřejmě dostáváme po- lynom P. Tuto kontrolu výsledku necháváme čtenáři jako cvičení. Zformulujme na závěr kapitoly ještě Taylorův vzorec pro obecný případ funkcí n pro- měnných. Důkaz tohoto tvrzení neuvádíme, nebot' je v podstatě stejný jako pro dvě pro- měnné. Věta 5.5. Necht' funkce f : Rn R má v bodě x = [x 1 , . . . , x n ] a nějakém jeho okolí spojité parciální derivace až do řádu m + 1. Pak pro h = [h1, . . . , hn] platí f (x + h) = f (x ) + d f (x )(h) + 1 2 d2 f (x )(h) + + 1 m! dm f (x )(h) + Rm(x), kde Rm(x) = 1 (m + 1)! dm+1 f (x + h)(h), (0, 1) je zbytek v Taylorově vzorci a dk f (x )(h) = j1++ jn=k k! j1! j2! . . . jn! k f x j1 1 . . . x jn n (x )h j1 1 . . . h jn n je k-tý diferenciál funkce f v bodě x. Cvičení 5.1. Využitím uvedené substituce najděte všechny funkce splňující danou rov- nost: a) yzx - xzy = 0, u = x, v = x2 + y2 b) xzx + yzy = 0, u = x, v = y x c) ux + uy + uz = 0, = x + y - 2z, = x - 2y + z, = z 5.2. Diferenciální rovnice transformujte do nových proměnných u, v. V přípa- dech, kdy po transformaci vyjde jednoduchý výsledek, se pokuste najít jejich ře- šení: a) zxx - yzyy - 1 2 zy = 0, u = x - 2 y, v = x + 2 y b) y2 zxx + x2 zyy - 2xyzxy - xzx - yzy = 0, u = x2 + y2, v = xy c) x2 zxx - (x2 + y2 )zxy + y2 zyy = 0, u = x + y, v = 1 x + 1 y d) zxx - 2zxy + zyy = 0, u = x + y, v = 1 x-y e) xyzxx - (x2 + y2 )zxy + xyzyy + yzx + xzy = 0, u = 1 2 (x2 + y2 ), v = xy f) xzxx - yzyy = 0, u = x + y, v = x - y g) xzxx + yzxy + zx = 0, u = x + y, v = y x+y 86 Derivace složené funkce, Taylorův vzorec h) x2 zxx - 2xyzxy + y2 zyy + xzx + yzy = 0, u = xy, v = y i) x2 zxx - y2 zyy = 0, u = xy, v = y x 5.3. Ukažte, že daná transformace do nových proměnných nemění tvar rovnice zxx + zyy = 0, x = (u, v), y = (u, v), kde , jsou funkce dvou proměnných splňující identity u = v, v = -u. 5.4. Určete Taylorův polynom 2. stupně se středem [x0, y0] následujících funkcí: a) 1 - x2 - y2, [x0, y0] = [1 2 , 1 2 ] e) arcsin x x2+y2 , [x0, y0] = [0, 1] b) arctg 1+x+y 1-x+y , [x0, y0] = [0, 0] f) ln x2 + y2, [x0, y0] = [1, 1] c) cos x cos y , [x0, y0] = [0, 0] g) x y z , [x0, y0, z0] = [1, 1, 1] d) arctg y x , [x0, y0] = [1, 1] h) sin x sin y, [x0, y0] = [0, 0] 5.5. Pomocí Taylorova polynomu 2. stupně vypočtěte přibližně funkční hodnoty: a) arctg 1,04 0,98 b) sin 29 tg 46 Zkušenost není to, co člověk potká, ale co člověk udělá s tím, co ho potkalo. (A. Huxley) Kapitola 6 Lokální a absolutní extrémy Vyšetřování extrémů funkcí je jednou z nejdůležitějších částí diferenciálního po- čtu. Je tomu tak proto, že v každodenním životě se setkáváme s řešením extremál- ních úloh. Např. každé ekonomické rozhodování se řídí pravidlem minimalizace nákladů a maximalizace zisku. Rovněž přírodovědné děje probíhají tak, že jistá veličina nabývá nejmenší nebo největší hodnoty (spotřebovaná energie, vykonaná práce). Nejprve studujeme lokální extrémy. Zde vyšetřujeme danou funkci pouze lo- kálně, tj. v okolí nějakého bodu. To je předmětem prvního odstavce. Pokud je předepsána množina a máme najít bod této množiny, v němž funkce nabývá nej- větší, resp. nejmenší hodnoty, mluvíme o absolutních extrémech. O nich pojed- nává druhá část této kapitoly. 6.1 Lokální extrémy Definice 6.1. Řekneme, že funkce f : Rn R nabývá v bodě x Rn lo- kálního maxima (minima), jestliže existuje okolí O(x ) bodu x takové, že pro každé x O(x ) platí f (x) f (x ) ( f (x) f (x )). Jsou-li nerovnosti v těchto vztazích pro x = x ostré, mluvíme o ostrých lo- kálních maximech a minimech. Pro (ostrá) lokální minima a maxima budeme používat společný termín (ostré) lokální extrémy. Příklad 6.1. i) Funkce f (x, y) = x2 + y2 má v bodě [x, y] = [0, 0] ostré lokální minimum, nebot' f (0, 0) = 0 a pro každé [x, y] = [0, 0] je f (x, y) > 0. (Grafem funkce je kuželová plocha, viz obr. 13.2.) 88 Lokální a absolutní extrémy ii) Funkce f : R2 R definovaná předpisem f (x, y) = x2 + y2 , pro [x, y] = [0, 0], 1, pro [x, y] = [0, 0], má v bodě [0, 0] ostré lokální maximum, nebot' pro [x, y] = [0, 0] dostatečně blízko počátku platí f (x, y) < f (0, 0) = 1. Uvedené příklady ilustrují skutečnost, že pro existenci lokálního extrému v nějakém bodě funkce nemusí mít v tomto bodě parciální derivace, nemusí zde být dokonce ani spojitá. V následujícím odvodíme nutné a postačující podmínky pro existenci lokál- ního extrému v případě, že funkce má v daném bodě parciální derivace. Podobně jako u funkce jedné proměnné je nutná podmínka formulována pomocí stacionár- ního bodu a postačující podmínka pomocí parciálních derivací 2. řádu. Definice 6.2. Necht' f : Rn R. Řekneme, že bod x Rn je stacionární bod funkce f , jestliže v bodě x existují všechny parciální derivace funkce f a platí f xi (x ) = 0, i = 1, . . . , n. (6.1) Následující věta, která prezentuje nutnou podmínku existence lokálního ex- trému, bývá v některé literatuře citována jako Fermatova věta.1 Věta 6.1. Necht' funkce f : Rn R má v bodě x Rn lokální extrém a v tomto bodě existují všechny parciální derivace funkce f . Pak je bod x jejím stacionár- ním bodem, tj. platí (6.1). Důkaz. Předpokládejme, že některá z parciálních derivací funkce f v bodě x je nenulová, tj. platí fxi (x ) = 0. To vzhledem k definici parciální derivace znamená, že funkce (t) = f (x +tei ), kde ei = (0, . . . , 0, 1, 0, . . . , 0), jednička je na i-tém místě, má nenulovou derivaci v bodě t = 0, a tedy zde nemůže mít lokální extrém. To však znamená, že ani funkce f nemůže mít v bodě x lokální extrém. Poznámka 6.1. Funkce f : Rn R může mít lokální extrém pouze ve svém stacionárním bodě nebo v bodě, kde alespoň jedna z parciálních derivací neexis- tuje. 1Pierre de Fermat (1601­1665), francouzský matematik Lokální extrémy 89 Zdůrazněme, že stacionární bod nemusí být bodem lokálního extrému, jak ukazuje obrázek, kde je znázorněn graf funkce f (x, y) = f (x0, y0) + (y - y0)2 - - (x - x0)2 , která má stacionární bod [x0, y0], avšak v tomto bodě nemá lokální extrém (takový bod se nazývá sedlo, viz obr. 6.1). x y z f (x0, y0) O (x0, y0) obr. 6.1 V následující větě odvodíme postačující podmínku, aby funkce měla ve sta- cionárním bodě lokální extrém. Připomeňme situaci pro funkci jedné proměnné g : R R. Necht' t0 R je stacionární bod této funkce. O tom, zda v tomto bodě je, nebo není ex- trém, rozhodneme podle hodnot vyšších derivací funkce g v t0. Speciálně je-li g (t0) > 0 (< 0), má funkce g v bodě t0 ostré lokální minimum (maximum). Toto tvrzení se dokáže pomocí Taylorova rozvoje funkce g v t0. Platí g(t) = g(t0) + g (t0)(t - t0) + 1 2 g ()(t - t0)2 = g(t0) + 1 2 g ()(t - t0)2 , kde je číslo ležící mezi t a t0. Je-li nyní funkce g spojitá, pak g (t0) > 0 (g (t0) < 0) implikuje g () > 0 (g () < 0) pro dostatečně blízká t0, pak g ()(t - t0)2 > 0 (g ()(t - t0)2 < 0), a tedy g(t) > g(t0) (g(t) < g(t0)) pro t dostatečně blízko t0, tj. funkce g nabývá v t0 ostrého lokálního minima (maxima). Analogicky postupujeme u funkcí více proměnných. Zformulujme nejprve postačující podmínku pro existenci lokálního extrému pro funkci dvou proměnných. 90 Lokální a absolutní extrémy Věta 6.2. Necht' funkce f : R2 R má v bodě [x0, y0] a nějakém jeho okolí spojité parciální derivace druhého řádu a necht' [x0, y0] je její stacionární bod. Jestliže D(x0, y0) = fxx (x0, y0) fyy(x0, y0) - [ fxy(x0, y0)]2 > 0, (6.2) pak má funkce f v [x0, y0] ostrý lokální extrém. Je-li fxx (x0, y0) > 0, jde o mini- mum, je-li fxx (x0, y0) < 0, jde o maximum. Jestliže D(x0, y0) < 0, pak v bodě [x0, y0] lokální extrém nenastává. Důkaz. Necht' D(x0, y0) = 0. Ze spojitosti parciálních derivací 2. řádu funkce f plyne spojitost funkce D(x, y) = fxx (x, y) fyy(x, y) - [ fxy(x, y)]2 a funkce fxx v bodě [x0, y0]. Odtud plyne, že pro [x, y] dostatečně blízká bodu [x0, y0] platí sgn D(x, y) = sgn D(x0, y0), sgn fxx (x, y) = sgn fxx (x0, y0). Taylorův vzorec pro n = 1 se středem [x0, y0] dává f (x, y) = f (x0, y0) + 1 2 [ fxx (c1, c2)(x - x0)2 + +2 fxy(c1, c2)(x - x0)(y - y0) + fyy(c1, c2)(y - y0)2 ] (6.3) kde [c1, c2] leží na úsečce spojující [x0, y0] a [x, y]. Označme A = fxx (c1, c2), B = fxy(c1, c2), C = fyy(c1, c2), h = x - x0, k = = y - y0 a uvažujme kvadratický polynom dvou proměnných P(h, k) = Ah2 + 2Bhk + Ck2 . Pak vztah (6.3) můžeme psát ve tvaru f (x0 + h, y0 + k) = f (x0, y0) + P(h, k). (6.4) Vyšetřeme nyní znaménko polynomu P(h, k). Uvažujme dva případy. I. D(x0, y0) > 0. Pro k = 0 je P(h, 0) = Ah2 , přičemž A = 0 (plyne ze vztahu AC - B2 > 0). Proto P(h, 0) > 0 pro A > 0, P(h, 0) < 0 pro A < 0. Pro k = 0 lze P(h, k) psát ve tvaru P(h, k) = k2 A(h k )2 + 2B h k + C. Označme Q(t) = At2 + 2Bt + C kde, t = h k . Jelikož AC - B2 > 0, tj. Q má záporný diskriminant, je pro A > 0 polynom Q(t) > 0 pro všechna t R a odtud P(h, k) > 0 pro všechna h, k R. Podobně v případě A < 0 je P(h, k) < 0. To podle (6.4) znamená, že pro A > 0 má funkce f v [x0, y0] ostré lokální minimum a pro A < 0 ostré lokální maximum. Lokální extrémy 91 II. D(x0, y0) < 0, tj. diskriminant polynomu Q(t) je kladný. To znamená, že existují t1, t2 R taková, že Q(t1) > 0 a Q(t2) < 0. Položme [h1, k1] = = [t1, ], [h2, k2] = [t2, ], kde = 0. Pak P(h1, k1) = 2 Q(t1), P(h2, k2) = 2 Q(t2), tj. pro [x1, y1] = [x0 +h1, y0 +k1], [x2, y2] = [x0 +h2, y0 +k2] platí f (x1, y1) > > f (x0, y0), f (x2, y2) < f (x0, y0). Protože = 0 bylo libovolné, tj. [x1, y1], [x2, y2] mohou být libovolně blízko [x0, y0], v tomto bodě extrém nenastává. Příklad 6.2. Určete lokální extrémy funkce z = x3 + y3 - 3xy. Řešení. Funkce, jejíž extrémy hledáme, je polynomem proměnných x, y, a proto jsou její parciální derivace spojité v celém R2 . Lokální extrémy mohou nastat pouze ve stacionárních bodech, které najdeme jako řešení soustavy rovnic zx = 3x2 - 3y = 0, zy = 3y2 - 3x = 0. Z první rovnice plyne y = x2 a dosazením do druhé rovnice dostáváme x4 - x = x(x - 1)(x2 + x + 1) = 0, odtud x1 = 0, x2 = 1 (kvadratický trojčlen x2 + x +1 má záporný diskriminant, a je proto vždy kladný). Existují tedy dva stacionární body P1 = [0, 0], P2 = [1, 1]. Dále platí zxx = 6x, zyy = 6y, zxy = -3. Odtud dostáváme D(x, y) = 36xy - 9, tj. D(P1) = -9 < 0, D(P2) = 36 - 9 = 27 > 0. Podle Věty 6.2 v bodě P1 extrém nenastává a v bodě P2 nastává ostré lokální minimum, nebot' zxx (P1) = 6 > 0. Poznámka 6.2. V případě, že ve stacionárním bodě [x0, y0] platí D(x0, y0) = 0, o existenci extrému v tomto bodě nelze na základě druhých derivací rozhodnout. Pro funkce jedné proměnné máme k dispozici tvrzení, které říká, že funkce f má ve stacionárním bodě x0, v němž f (x0) = 0, lokální extrém nebo inflexní bod podle toho, je-li první nenulová derivace v x0 sudého, nebo lichého řádu. U funkcí více proměnných není však aparát vyšších derivací v praktických případech pří- liš vhodný. V některých příkladech lze o existenci lokálního extrému rozhodnout vyšetřením lokálního chování funkce v okolí bodu [x0, y0], bez počítání druhých derivací. Tento postup je ilustrován na následujících dvou příkladech. 92 Lokální a absolutní extrémy Příklad 6.3. i) Určete lokální extrémy funkce f (x, y) = x4 + y4 - x2 -2xy - y2 . Řešení. Stacionární body určíme jako řešení soustavy rovnic zx = 4x3 - 2x - 2y = 0, zy = 4y3 - 2x - 2y = 0. (6.5) Odečtením rovnic dostáváme x3 -y3 = 0, odtud x = y a dosazením do jedné z rov- nic v (6.5) dostáváme tři stacionární body P1 = [0, 0], P2 = [1, 1], P3 = [-1, -1]. Dále D(x, y) = fxx fyy - [ fxy]2 = (12x2 - 2)(12y2 - 2) - 4. Protože D(P2) = D(P3) = 96 > 0 a fxx (1, 1) = fxx (-1, -1) = 10 > 0, má funkce f v obou těchto stacionárních bodech ostré lokální minimum. Ve stacio- nárním bodě P1 je však D(P1) = 0, proto o existenci extrému v tomto bodě nelze takto rozhodnout. Zde postupujeme následujícím způsobem: Funkci f můžeme upravit na tvar f (x, y) = x4 + y4 - (x + y)2 . Odtud f (x, -x) = 2x4 > 0 pro x = 0. Na druhé straně f (x, 0) = x4 - x2 = x2 (1 - x2 ) < 0 pro x (-1, 0) (0, 1). V libovol- ném okolí bodu [0, 0] tedy funkce f nabývá jak kladných, tak záporných hodnot, což spolu s faktem, že f (0, 0) = 0, znamená, že v tomto bodě lokální extrém nenastává. ii) Určete lokální extrémy funkce z = f (x, y) = xy ln(x2 + y2 ). Řešení. Stacionární body určíme jako řešení soustavy rovnic zx = y ln(x2 + y2 ) + xy 2x x2 + y2 = y ln(x2 + y2 ) + 2x2 x2 + y2 = 0, zy = x ln(x2 + y2 ) + xy 2y x2 + y2 = x ln(x2 + y2 ) + 2y2 x2 + y2 = 0. Jsou možné čtyři případy: a) [x, y] = [0, 0], v tomto bodě však není funkce definována; b) x = 0, pak ln y2 = 0, tj. y = 1 označme P1,2 = [0, 1]; c) y = 0, ln x2 = 0 , tj. x = 1 označme P3,4 = [1, 0]; d) ln(x2 + y2 ) + 2x2 x2+y2 = 0, ln(x2 + y2 ) + 2y2 x2+y2 = 0, Lokální extrémy 93 odtud x2 = y2 . Soustavě rovnic vyhovuje čtveřice bodů P5-8 = [ 1 2e , 1 2e ]. O tom, v kterém z těchto stacionárních bodů nastává extrém, rozhodneme vy- šetřením znaménka funkce f . Funkce f nabývá nulové hodnoty na souřadných osách (v počátku má limitu rovnu 0 ­ viz příklad 2.2 v) a v bodech kružnice x2 + y2 = 1. Uvnitř jednotkové kružnice je funkce v I. a III. kvadrantu záporná, ve II. a IV. je kladná. Vně jednotkové kružnice je tomu naopak (načrtněte si obrá- zek). Odtud je zřejmé, že v bodech P1,2 = [0, 1], P3,4 = [1, 0] extrém nena- stává, nebot' funkční hodnota je zde nulová a v libovolném okolí tohoto bodu nabývá funkce jak kladných, tak záporných hodnot. Dále je vidět, že v bodě 1 2e , 1 2e (ležícím uvnitř jednotkové kružnice) je lokální minimum, nebot' na hranici množiny, která je tvořena souřadnými osami a jednotkovou kružnicí a kde leží tento bod, je funkce nulová a uvnitř této množiny je funkce f záporná. Pak nutně v jediném stacionárním bodě uvnitř této mno- žiny musí být lokální minimum. Stejnou úvahou zjistíme, že lokální minimum je i v bodě - 1 2e , - 1 2e a ve zbývajících dvou bodech je lokální maximum. Graf funkce z = xy ln(x2 + y2 ) a její vrstevnice jsou znázorněny na obrázku 14.9 a 14.10. Na tomto znázornění je dobře vidět charakter jednotlivých stacionárních bodů. Poznámka 6.3. Je-li funkce f diferencovatelná v bodě [x0, y0] a fx (x0, y0) = 0 = = fy(x0, y0), pak tečná rovina ke grafu funkce f v bodě [x0, y0] je vodorovná. Je-li výraz D(x0, y0) > 0 a fxx (x0, y0) > 0 (< 0), pak je v bodě [x0, y0] lokální minimum (maximum), tj. v okolí tohoto bodu leží graf funkce nad (pod) tečnou rovinou. Projdeme-li důkaz Věty 6.2, snadno zjistíme, že i v případě, kdy [x0, y0] není stacio- nární bod, jsou podmínky D(x0, y0) > 0, fxx (x0, y0) > 0 (< 0) dostatečné pro to, aby graf funkce f v okolí bodu ležel nad (pod) tečnou rovinou v tomto bodě. Příklad 6.4. Rozhodněte, zda graf funkce f (x, y) = x3+y3-2xy leží v okolí bodu [1, 1] nad, nebo pod tečnou rovinou sestrojenou v tomto bodě. Řešení. Přímým výpočtem určíme parciální derivace funkce f v bodě [1, 1]: fx = 1, fy = 1, fxx = 6, fxy = -2, fyy = 6. Podle (4.6) má tečná rovina ke grafu funkce v bodě [1, 1] rovnici z = x + y - 2. Vzhledem k tomu, že D(1, 1) = 34 - 4 = 32 > 0, leží podle předchozí poznámky graf funkce v okolí bodu [1, 1] nad tečnou rovinou sestrojenou v tomto bodě. Pro funkce tří a více proměnných je situace podobná jako pro dvě proměnné. O exis- tenci extrému ve stacionárním bodě ,,rozhoduje" kvadratický polynom n proměnných v Taylorově rozvoji. Pouze rozhodnout, kdy tento polynom nemění své znaménko, je poněkud složitější. K tomu připomeňme nejprve některé pojmy z lineární algebry. 94 Lokální a absolutní extrémy Definice 6.3. Necht' A = (ai j ), i, j = 1 . . . , n je symetrická matice, h Rn. Řekneme, že kvadratická forma P(h) = Ah, h = n i, j=1 ai j hi h j určená maticí A je pozitivně (negativně) semidefinitní, jestliže P(h) 0, (P(h) 0) pro každé h Rn . (6.6) Jestliže v (6.6) nastane rovnost pouze pro h = 0, řekneme, že forma P je pozitivně (ne- gativně) definitní. Jestliže existují h, ~h Rn taková, že P(h) < 0 a P(~h) > 0, řekneme, že kvadratická forma P je indefinitní. Často místo o definitnosti, resp. indefinitnosti kvadratické formy P mluvíme o definitnosti, resp. indefinitnosti matice A. V následujících úvahách pro funkci f : Rn R symbolem f značíme n-rozměrný vektor, jehož komponenty jsou parciální derivace f xi , a symbol f značí n × n matici, jejíž prvky jsou parciální derivace 2. řádu funkce f , tj. ( f )i j = 2 f xi x j , i, j = 1, . . . , n. Věta 6.3. Necht' x Rn je stacionární bod funkce f a předpokládejme, že f má v bodě x a nějakém jeho okolí spojité parciální derivace druhého řádu. Položme A = (ai j ) = f (x), tj. ai j = fxi x j (x). i) Je-li kvadratická forma P(h) = Ah, h pozitivně (negativně) definitní, má funkce f v bodě x ostré lokální minimum (maximum). ii) Je-li kvadratická forma P indefinitní, v bodě x extrém nenastává. iii) Má-li funkce f v bodě x lokální minimum (maximum), je kvadratická forma P pozitivně (negativně) semidefinitní. Důkaz. Vzhledem k tomu, že důkaz prvních dvou tvrzení je zcela stejný jako pro dvě proměnné, dokážeme pouze tvrzení iii). Předpokládejme, že funkce f má v x např. lo- kální minimum a kvadratická forma P není pozitivně semidefinitní, tj. existuje ~h Rn takové, že P(~h) < 0. Protože pro pevné ~h Rn je kvadratická forma P spojitou funkcí koeficientů této formy ai j , existuje > 0 takové, že je-li |ai j - bi j | < , i, j = 1, . . . , n a B = (bi j ), platí B ~h, ~h < 0. To vzhledem ke spojitosti derivací druhého řádu funkce f znamená, že f (x)~h, ~h < 0, je-li x dostatečně blízko x, tj. pro x splňující x O(x), kde > 0 je vhodné reálné číslo. Nyní necht' {n} je libovolná posloupnost kladných reálných čísel konvergujících k nule a položme xn = x + n ~h. Pak xn x, tedy pro dostatečně velká n je xn O(x) a z Taylorova vzorce pro n = 1 dostáváme f (xn) - f (x ) = f (x ), n ~h, + f (yn)n ~h, n ~h = 2 n f (yn)~h, ~h < 0, kde yn leží na úsečce spojující x a xn. Proto yn O(x) pro n dostatečně velká a odtud f (xn) < f (x), což je spor s tím, že funkce f má v x lokální minimum. Poznámka 6.4. Podle předchozí věty neumíme o existenci lokálního extrému v daném stacionárním bodě x rozhodnout v případě, kdy je matice f (x) pouze semidefinitní. Lokální extrémy 95 Analogicky jako u funkce jedné proměnné (i když podstatně komplikovaněji) lze určit postačující podmínky pomocí definitnosti kubických a vyšších forem, které odpovídají diferenciálům vyšších řádů, viz [N2], str. 70. O tom, jak rozhodnout o definitnosti kvadratické formy určené danou symetrickou maticí A, vypovídá následující věta. Věta 6.4. i) Kvadratická forma P určená symetrickou maticí A = (ai j ), P(h) = Ah, h = n i, j=1 ai j hi h j je pozitivně (negativně) definitní, právě když všechna vlastní čísla matice A jsou kladná (záporná). Forma P je pozitivně (negativně) semidefinitní, právě když všechna vlastní čísla jsou nezáporná (nekladná). ii) Kvadratická forma P je pozitivně definitní, právě když jsou všechny hlavní minory matice A, tj. determinanty a11 , a11 a12 a21 a22 , a11 a12 a13 a21 a22 a23 a31 a32 a33 , . . . , a11 a12 . . . a1n a21 a22 . . . a2n . . . . . . . . . . . . . . . . . . . an1 an2 . . . ann = det A kladné. Kvadratická forma P je negativně definitní, právě když hlavní minory střídají znaménko, počínajíc záporným. Příklad 6.5. Určete lokální extrémy funkce u = x + y2 4x + z2 y + 2 z ležící v prvním oktantu, tj. x > 0, y > 0, z > 0. Řešení. Nejprve určíme stacionární body, tj. derivujeme a řešíme soustavu rovnic ux = 1 - y2 4x2 = 0 = 4x2 - y2 = 0, uy = y 2x - z2 y2 = 0 = y3 - 2xz2 = 0, uz = 2z y - 2 z2 = 0 = z3 - y = 0. Z první rovnice plyne y = 2x, a protože hledáme pouze kladné řešení, uvažujeme pouze případ y = 2x. Dosazením do druhé rovnice dostáváme 2x(4x2 - z2) = 0, odtud z = 2x (případ z = -2x opět neuvažujeme). Dosazením do třetí rovnice obdržíme 8x3 - 2x = 0 a tato rovnice má kladné řešení x = 1 2 , tedy na množině x > 0, y > 0, z > 0 má soustava rovnic jediné řešení B = [1 2 , 1, 1]. Vypočteme druhé derivace uxx = y2 2x3 , uyy = 1 2x + 2z2 y3 , uzz = 2 y + 4 z3 , uxy = y 2x2 , uxz = 0, uyz = - 2z y2 96 Lokální a absolutní extrémy a v bodě B = [1 2 , 1, 1] : uxx = 4, uyy = 3, uzz = 6, uxy = 2, uxz = 0, uyz = -2. Dále použijeme Větu 6.3. Pro bod B = [1 2 , 1, 1] je du2 = 4dx2 + 3dy2 + 6dz2 + 2dxdy - 2dydz. Tato forma je pozitivně definitní, nebot' matice této formy je 4 1 0 1 3 -1 0 -1 6 a její všechny tři hlavní minory jsou kladné, jak zjistíme snadným výpočtem. Celkově má daná funkce u v prvním oktantu jediný lokální extrém v bodě B = [1 2 , 1, 1], kde nastává ostré lokální minimum. 6.2 Absolutní extrémy Definice 6.4. Necht' f : Rn R, M D( f ). Řekneme, že bod x M je bodem absolutního minima (maxima) funkce f na M, jestliže f (x ) f (x) ( f (x ) f (x)) pro každé x M. Jsou-li nerovnosti pro x = x ostré, mlu- víme o ostrých absolutních extrémech. Místo termínu absolutní extrém se často používá pojem globální extrém. Připomeňme, že spojitá funkce jedné proměnné na uzavřeném a ohraničeném intervalu nabývá své největší a nejmenší hodnoty bud' v bodě lokálního extrému ležícím uvnitř intervalu, nebo v jednom z krajních bodů. Pro funkce více proměn- ných je situace podobná. Věta 6.5. Necht' M Rn je kompaktní množina (tj. uzavřená a ohraničená) a funkce f : M R je spojitá na M. Pak f nabývá svých absolutních extrémů bud' v bodech lokálního extrému ležících uvnitř M, nebo v některém hraničním bodě. Důkaz. Tvrzení o existenci absolutních extrémů plyne ihned z Weierstrassovy věty (Věta 2.10). Zbývající tvrzení je triviální, nebot' bod absolutního extrému, který není hraničním bodem (tj. je vnitřním bodem M), musí být i lokálním extrémem. Předchozí věta dává praktický návod jak hledat absolutní extrémy diferenco- vatelných funkcí (s takovými se v praktických situacích setkáváme nejčastěji) na Absolutní extrémy 97 kompaktních množinách. Najdeme stacionární body ležící uvnitř množiny a pak vyšetříme danou funkci na hranici množiny. Vyšetření funkce na hranici množiny M Rn je obecně poměrně složitý problém a pojednává o něm devátá kapitola. Pro funkce dvou proměnných je však situace poměrně jednoduchá. V tomto pří- padě jsou velmi často hranice nebo její části tvořeny grafy funkcí jedné proměnné. Vyšetřit funkci na hranici pak znamená dosadit rovnici křivky, která tvoří část hra- nice, do funkce, jejíž extrémy hledáme, a vyšetřovat extrémy vzniklé funkce jedné proměnné. Tento postup je nejlépe srozumitelný na následujících příkladech. Příklad 6.6. i) Určete nejmenší a největší hodnotu funkce z = f (x, y) = xy - - x2 - y2 + x + y v trojúhelníku tvořeném souřadnými osami a tečnou ke grafu funkce y = 4 x v bodě [2, 2]. Řešení. Nejprve určeme rovnici tečny ke grafu funkce y = 4 x . Platí y = - 4 x2 , tj. rovnice tečny je y - 2 = -4 4 (x - 2) = -x + 2. Tedy množinou M, na níž hledáme absolutní extrémy, je množina M = {[x, y] R2 : x 0, y 0, y 4 - x}. Určíme stacionární body funkce z zx = y - 2x + 1 = 0, zy = x - 2y + 1 = 0, odkud dostáváme stacionární bod [x, y] = [1, 1] M. Nyní vyšetřeme funkci f na hranici množiny M, která se skládá z úseček I. y = 0, x [0, 4] II. x = 0, y [0, 4] III. y = 4 - x, x [0, 4]. I. y = 0, x [0, 4]. Dosazením dostáváme u = f (x, 0) = -x2 + x a hledáme absolutní extrémy této funkce jedné proměnné pro x [0, 4]. Platí u (x) = -2x + + 1 = 0, odtud x = 1 2 . Funkční hodnoty ve stacionárním bodě a v krajních bodech intervalu jsou u(1 2 ) = 1 4 , u(0) = 0, u(4) = 12. II. x = 0, y [0, 4]. Dosazením dostáváme v = f (0, y) = -y2 + y a stejně jako v části I v(0) = 0, v(4) = -12, v(1 2 ) = 1 4 . III. y = 4 - x, x [0, 4]. Dosazením dostáváme w = f (x, 4 - x) = x(4 - - x) - x2 - (4 - y)2 + x + 4 - x = -3x2 + 12x - 12. Platí w (x) = -6x + 12 = 0, odtud x = 2, w(2) = 0. V krajních bodech w(0) = -12, w(4) = -12. Porovnáním funkčních hodnot funkce f na hranici (tj. hodnot funkcí u, v, w v jejich stacionárních bodech a v krajních bodech intervalů, kde tyto funkce vyšet- řujeme) s funkční hodnotou funkce f v jediném stacionárním bodě [1, 1] vidíme, 98 Lokální a absolutní extrémy že fmin = -12 pro [x, y] = [0, 4] a [x, y] = [4, 0], fmax = 1 pro [x, y] = [1, 1]. Závěrem poznamenejme, že algebraické úpravy spojené s vyjádřením funkce f na hranici bývají nejčastějším zdrojem numerických chyb. Máme však k dispozici poměrně dobrou průběžnou kontrolu. V bodě [x, y] = [4, 0] se stýkají části hranice I a III, a tedy funkce u z I musí pro x = 4 nabývat stejné funkční hodnoty jako funkce w z III v x = 4. V našem případě je u(4) = -12 = w(4). Podobně v bodě [0, 0] se stýkají části I a II a v bodě [0, 4] části II a III. Také v těchto bodech průběžná kontrola vychází, nebot' u(0) = 0 = v(0) a w(0) = = v(4) = -12. Doporučujeme čtenáři tuto kontrolu vždy provést, nebot' značně minimalizuje možnost šíření numerické chyby ve výpočtu. ii) Určete nejmenší a největší hodnotu funkce z = (2x2 + 3y2 )e-x2-y2 na mno- žině M = {[x, y] R2 : x2 + y2 4}. Řešení. Nejprve určíme stacionární body ležící uvnitř množiny M, kterou je kruh o poloměru 2. Vypočteme parciální derivace zx =4xe-x2-y2 - 2x(2x2 + 3y2 )e-x2-y2 = -2xe-x2-y2 2x2 + 3y2 - 2 , zy =6ye-x2-y2 - 2y(2x2 + 3y2 )e-x2-y2 = -2ye-x2-y2 2x2 + 3y2 - 3 a položíme je rovny nule: xe-x2-y2 2x2 + 3y2 - 2 = 0, ye-x2-y2 2x2 + 3y2 - 3 = 0. Odtud dostáváme 4 možnosti: A) x = 0 = y = f (0, 0) = 0. B) x = 0, 3y2 = 3 = y = 1, f (0, 1) = 3e-1 . C) y = 0, 2x2 = 2 = x = 1, f (1, 0) = 2e-1 . D) 2x2 + 3y2 - 2 = 0 a 2x2 + 3y2 - 3 = 0 ­ tento systém nemá řešení. Nyní vyšetřeme funkci f na hranici množiny M. Tu si rozdělíme na dvě části, horní a dolní půlkružnici. I. y = 4 - x2, x [-2, 2], u = f (x, 4 - x2) = (2x2 + 3(4 - x2 ))e-4 = (12 - - x2 )e-4 . Najdeme největší a nejmenší hodnotu funkce u na intervalu [-2, 2]. Těchto extremálních hodnot je dosaženo bud' v lokálním extrému uvnitř intervalu Absolutní extrémy 99 [-2, 2], nebo v některém z krajních bodů x = 2. Platí u = -2xe-4 = 0 = = x = 0. Odtud u(0) = e-4 , u(2) = 8e-4 . II. y = - 4 - x2, x [-2, 2]. Zde je situace zcela stejná jako pro I, nebot' f (x, -y) = f (x, y). Porovnáním všech vypočtených hodnot vidíme, že fmax = 3e-1 , pro [x, y] = [0, 1], fmin = 0, pro [x, y] = [0, 0]. Graf vyšetřované funkce je znázorněn na obr. 14.13 a 14.14; zde lze ověřit, že všechny stacionární body leží uvnitř kruhu M. iii) Je dán drát délky l, tento drát je rozdělen na tři části. Z jedné je vytvořen kruh, z druhé čtverec a ze zbylé rovnostranný trojúhelník. Určete délky jednot- livých částí tak, aby plocha omezená těmito obrazci byla minimální, resp. maxi- mální. Řešení. Označíme-li x délku strany čtverce, y poloměr kruhu a z délku strany trojúhelníka, platí 4x + 2y + 3z = l, odtud z = l-4x-2y 3 . Pro součet obsahů čtverce, kruhu a trojúhelníka platí P = x2 + y2 + 3 4 z2 = x2 + y2 + 1 12 3 (l - 4x - 2y)2 a hledáme absolutní extrémy této funkce na množině M = {[x, y] : x, y 0, 4x+ + 2y l}. Nejprve vypočteme parciální derivace a stacionární body: Px = 2x - 8 12 3 (l - 4x - 2y) = 0, Py = 2y - 4 12 3 (l - 4x - 2y) = 0. Odtud x = l 4 + + 3 3 , y = l 8 + 2 + 6 3 a funkční hodnota v tomto stacionárním bodě je P(x, y) = l2 4(4 + + 3 3) . Nyní vyšetřeme funkci P na hranici množiny M. I. y = 0, x [0, l 4 ], označme (x) = P(x, 0) = x2 + 1 12 3 (l -4x)2 . Pak (0) = = l2 12 3 , ( l 4 ) = l2 16 , (x) = 2x - 8 12 3 (l - 4x) = 0, tj. x = l 4+ 3 , (x) = l2 4(4+3 3) . 100 Lokální a absolutní extrémy II. x = 0, y [0, l 2 ], označme (y) = P(0, y) = y2 + 1 12 3 (l - 2y)2 . Platí (0) = l2 12 3 , ( l 2 ) = l2 4 , (y) = 2y - 2 3 3 (l - 2y) = 0 = y = l 2(+3 3) , (y) = l2 4(3 3+) . III. y = l-4x 2 , x [0, l 4 ], označme (x) = P(x, l-4x 2 ) = x2 + 1 4 (l - 4x)2 . (0) = l2 4 , ( l 4 ) = l2 16 , (x) = 2x - 2 (l - 4x) = 0 = x = l 4+ , (x) = l2 4(4+) . Porovnáním všech vypočtených hodnot zjistíme, že největší obsah dostaneme, jestliže celý drát stočíme do kružnice, tj. Pmax = l2 4 pro [x, y] = 0, l 2 , a nejmenší obsah Pmin = P(x, y) = l2 4(4++3 3) , jestliže jej rozdělíme takto: část na čtverec . . . 4x = 4l 4 + + 3 3 , část na kruh . . . 2y = l 4 + + 3 3 , část na trojúhelník . . . 3z = 3 3l 4 + + 3 3 . Na závěr této kapitoly si ještě ukažme metodu, jak lze řešit úlohy na absolutní extrémy v některých speciálních případech, např. umíme-li sestrojit vrstevnice funkce, jejíž extrémy hledáme, a pokud množina, kde tyto extrémy hledáme, je ,,dostatečně jednoduchá". Celý postup je nejlépe srozumitelný na příkladech. Příklad 6.7. i) Najděte nejmenší a největší hodnotu funkce f (x, y) = x2 - 4x + + y2 - 4y + 10 na množině M : x2 + y2 1. Řešení. Platí f (x, y) = (x -2)2 +(y-2)2 +2. Protože konstanta 2 nemá vliv na to, v kterém bodě nastává absolutní minimum a maximum (má vliv pouze na hodnotu těchto extrémů), stačí najít absolutní extrémy funkce g(x, y) = (x -2)2 +(y -2)2 . Tato funkce však udává druhou mocninu vzdálenosti bodu [x, y] od bodu [2, 2]. Úlohu proto můžeme přeformulovat takto: V jednotkovém kruhu najděte bod, který je nejblíže a nejdále od bodu [2, 2]. Geometricky je nyní řešení úlohy zřejmé. Sestrojíme přímku y = x spojující počátek s bodem [2, 2]. Průsečíky této přímky s kružnicí x2 + y2 = 1 jsou řešením naší úlohy, tj. 2x2 = 1, odkud x = 1 2 . Minimum nastává v bodě [ 1 2 , 1 2 ] a maximum v bodě [- 1 2 , - 1 2 ] a extremální hodnoty jsou fmin = 11 - 4 2, Absolutní extrémy 101 fmax = 11 + 4 2. Všimněme si také, že průsečíky přímky y = x s jednotkovou kružnicí jsou body, kde jednotková kružnice a vrstevnice funkce f ­ soustředné kružnice se středem [2, 2] ­ mají společnou tečnu. ii) Najděte nejmenší a největší hodnotu funkce f (x, y) = x - y na množině M : x2 + y2 1. y x x - y = - 2 x - y = 2 obr. 6.2 y x obr. 6.3 Řešení. Vrstevnice funkce f jsou přímky načrtnuté na obrázku 6.2. Nutnou pod- mínkou (a zde i dostatečnou) pro to, aby hodnota c R byla hodnotou absolut- ního maxima, resp. minima funkce f je, že přímka x - y = c je tečnou ke kružnici x2 + y2 = 1. Vskutku, pokud přímka x - y = c kružnici protne, znamená to, že pro ~c dostatečně blízká c protne kružnici i přímka x - y = ~c. To však znamená, že funkce x - y nabývá na M hodnot jak větších než c (pro ~c > c), tak menších než c (pro ~c < c). Jestliže přímka x - y = c kružnici vůbec neprotne, znamená to, že tyto body neleží v M, a tedy nepřipadají v úvahu. Zbývá tedy pouze možnost, že přímka x - y = c je tečnou. Z obrázku je nyní zřejmé, že maximum nastane v bodě [ 1 2 , - 1 2 ], jeho hod- nota je 2, a minimum je v bodě [- 1 2 , 1 2 ], jeho hodnota je - 2. iii) Najděte nejmenší a největší hodnotu funkce f (x, y) = xy na množině M : |x| + |y| 1. Řešení. Množina M a vrstevnice funkce f jsou načrtnuty na obrázku 6.3 (vrstevni- cemi jsou grafy funkcí xy = c, tj. rovnoosé hyperboly y = c x ). Stejnou úvahou jako v předchozím příkladu zjistíme, že funkce nabývá absolutního maxima fmax = 1 4 v bodech [1 2 , 1 2 ] a absolutního minima fmin = -1 4 v bodech [1 2 , 1 2 ]. 102 Lokální a absolutní extrémy Cvičení 6.1. Najděte lokální extrémy funkcí: a) z = x2 + y2 - xy - 2x + y b) z = xy(4 - x - y) c) z = 4(x - y) - x2 - y2 d) z = xy + 50 x + 20 y e) z = x2 + xy + y2 - ln x - ln y f) z = x - 2y + ln x2 + y2 + 3 arctg y x g) z = y 1 + x + x 1 + y h) u = x3 + y2 + z2 + 12xy + 2z i) u = x + y2 4x + z2 y + 2 z , x, y, z > 0 j) z = x2 + xy + y2 + a3 x + a3 y k) u = xyz(12 - x - 2y - 3z) l) u = x1x2 2 . . . xn n (1 - x1 - 2x2 - - nxn), x1, x1, . . . , xn > 0 m) u = x1 + x2 x1 + x3 x2 + + xn xn-1 + 2 xn , x1, . . . , xn > 0 6.2. Udejte příklad funkce f : R2 R2 splňující uvedené podmínky: a) fx (1, 1) = 0 = fy(1, 1), ale v bodě [1, 1] nenastává lokální extrém; b) f má v bodě [0, 1] ostré lokální minimum a v bodě [1, 0] ostré lokální maxi- mum; c) f má v bodě [-1, 0] ostré lokální minimum, v bodě [0, 0] sedlo a v bodě [1, 0] ostré lokální maximum. 6.3. Pomocí vrstevnic funkce f určete její nejmenší a největší hodnotu na mno- žině M: a) f (x, y) = x + y, M : |x| 1, |y| 1 b) f (x, y) = x2 - 2x + y2 - 2y + 3, M : x 0, y 0, x + y 1 c) f (x, y) = |x| + |y|, M : (x - 1)2 + (y - 1)2 1 d) f (x, y, z) = x + y + z, M : x2 + y2 1, 0 z 1 e) f (x, y, z) = x2 + y2 , M : x2 + y2 + z2 1 Absolutní extrémy 103 6.4. Určete nejmenší a největší hodnotu funkce f na množině M: a) f (x, y) = x2 + 2xy + 2y2 - 3x - 5y, M je trojúhelník určený body A = [0, 2], B = [3, 0], C = [0, -1] b) f (x, y) = x2 + y2 + 3xy + 2, M je omezená grafy funkcí y = |x| a y = 2 c) f (x, y) = x2 + y2 - xy - x - y, M je trojúhelník určený body A = [-1, 0], B = [1, 2], C = [3, 0] d) f (x, y) = x2 + y2 - xy - 2, M = {[x, y] : x2 + y2 1, y |x| - 1} e) f (x, y) = 2x2 + 4y2 na M : {[x, y] : x2 + y2 9} f) f (x, y) = x2 + y2 - 2x + 2y + 2 na M = {x2 + y2 1}. 6.5. Určete absolutní extrémy funkce f na množině M: a) f (x, y) = sin x sin y sin(x + y), M : 0 x, y b) f (x, y) = x2 - xy + y2 , M : |x| + |y| 1 c) f (x, y, z) = x + 2y + 3z, M : x2 + y2 z 1 d) f (x1, . . . , xn) = x1x2...xn (a+x1)(x1+x2)...(xn+b) M : a x1, . . . , xn b, 0 < a < b (tzv. Huyghensova1 úloha), nejprve řešte úlohu pro n = 2. Věčným zázrakem světa je jeho pochopitelnost... To, že je svět pochopitelný, je zázrak. (A. Einstein) 1Christian Huyghens (1629­1695), nizozemský matematik a fyzik Kapitola 7 Zobrazení mezi prostory vyšších dimenzí V této kapitole využijeme výsledků předcházejících částí ke studiu vlastností zobra- zení mezi prostory vyšších dimenzí. Výsledky, které zde odvodíme, hrají důležitou roli mj. v teorii integrálu funkcí více proměnných, a to při důkazu věty o substituci ve více- rozměrném integrálu, viz [R2]. 7.1 Zobrazení z R2 do R2 Definice 7.1. Necht' jsou dány funkce f, g dvou proměnných a D = D( f ) D(g). Dále necht' zobrazení F : D R2 je dáno předpisem [x, y] F - [ f (x, y), g(x, y)]. Pak řekneme, že zobrazení F je určeno funkcemi f, g, tyto funkce nazýváme složky nebo také souřadnicové funkce zobrazení F a píšeme F = { f, g}. Příklad 7.1. Vypište složky zobrazení pro stejnolehlost se středem v počátku soustavy souřadnic, otočení o úhel a pro kruhovou inverzi určenou jednotkovou kružnicí. Řešení. i) Stejnolehlost se středem v počátku. Je-li k koeficient stejnolehlosti, pak [x, y] F - [kx, ky]. ii) Otočení o úhel [0, ] v kladném smyslu. Pro odchylku dvou přímek pro- cházejících počátkem a bodem [x1, y1], resp. [x2, y2] platí cos = |x1x2 + y1 y2| x2 1 + y2 1 x2 2 + y2 2 106 Zobrazení mezi prostory vyšších dimenzí (kosinus úhlu je roven podílu skalárního součinu a součinu velikostí vektorů určených počátkem a body [x1, y1], resp. [x2, y2]). Proto zobrazení F, které bodu [x, y] přiřadí bod otočením o úhel kolem počátku v kladném smyslu (tj. proti směru otáčení hodinových ručiček), je tvaru [x, y] F - [x cos - y sin , x sin + y cos ]. iii) Kruhová inverze určená jednotkovou kružnicí. Při tomto zobrazení je bodu [x, y] přiřazen bod [u, v] ležící na polopřímce určené počátkem a bodem [x, y] s vlastností, že součin vzdáleností bodů [x, y] a [u, v] od počátku je roven 1. Protože [x, y] a [u, v] leží na stejné polopřímce, existuje reálné > 0 takové, že u = x, v = y. Z podmínky na vzdálenost bodů [x, y] [u, v] od počátku dostáváme x2 + y2 u2 + v2 = (x2 + y2) = 1, odtud = (x2 + y2)-1. Toto zobrazení je proto tvaru [x, y] F - [ x x2 + y2 , y x2 + y2 ]. Příklad 7.2. Zobrazení množiny komplexních čísel do sebe lze chápat také jako zobra- zení z R2 do R2. Například zobrazení, které komplexnímu číslu z = x + iy přiřadí jeho druhou mocninu z2, definuje zobrazení [x, y] F - [x2 - y2 , 2xy], nebot' z2 = (x + iy)2 = x2 - y2 + 2ixy. Definice 7.2. Řekneme, že zobrazení F = { f, g} z R2 do R2 je spojité v bodě [x0, y0], jsou-li funkce f, g spojité v [x0, y0]. Řekneme, že F je diferencovatelné v bodě [x0, y0], jestliže každá z funkcí f, g je dife- rencovatelná v bodě [x0, y0]. Zobrazení dF(x0, y0) : R2 R2 dané předpisem [h, k] dF - [d f (x0, y0)(h, k), dg(x0 y0)(h, k)] = = [ fx (x0, y0)h + fy(x0, y0)k, gx (x0, y0)h + gy(x0, y0)k] nazýváme diferenciál zobrazení F v bodě [x0, y0] a značíme dF(x0, y0) Podle této definice je tedy diferenciál zobrazení F lineární zobrazení z R2 do R2. Protože z lineární algebry víme, že každé lineární zobrazení mezi konečně dimenzionál- ními prostory lze reprezentovat vhodnou maticí, dostáváme se k následující definici. Zobrazení z R2 do R2 107 Definice 7.3. Necht' zobrazení F = { f, g} z R2 do R2 je diferencovatelné v bodě [x0, y0]. Matici typu 2 × 2 F (x0, y0) = fx (x0, y0) fy(x0, y0) gx (x0, y0) gy(x0, y0) (7.1) nazýváme Jacobiho matice zobrazení F v bodě [x0, y0], determinant této matice nazý- váme jacobián zobrazení F v bodě [x0, y0]. Nejprve odvodíme vzorec pro diferenciál složeného zobrazení. Je zcela analogický vztahu pro derivaci složené funkce jedné proměnné, stačí ,,zapomenout", že místo zobra- zení mezi jednodimenzionálními prostory se jedná o vícerozměrná zobrazení. Věta 7.1. Necht' F = { f1, f2}, G = {g1, g2} jsou zobrazení z R2 do R2. Pak pro Jacobiho1 matici složeného zobrazení H = F G platí H (x, y) = F (u, v)G (x, y), (7.2) kde [u, v] = G(x, y), tj. u = g1(x, y), v = g2(x, y). Pro jejich jacobiány dostáváme det H (x, y) = det F (u, v) det G (x, y). Důkaz. Necht' h1, h2 jsou souřadnicové funkce zobrazení H, tj. h1(x, y) = f1(g1(x, y), g2(x, y)), h2(x, y) = f2(g1(x, y), g2(x, y)). (7.3) Aplikací Věty 5.1 dostáváme x h1(x, y) = u f1(u, v) x g1(x, y) + v f1(u, v) x g2(x, y) (7.4) a podle Definice 7.3 F (u, v) = f1 u (u, v) f1 v (u, v) f2 u (u, v) f2 v (u, v) , G (x, y) = g1 x (x, y) g1 y (x, y) g2 x (x, y) g2 y (x, y) . Vynásobíme-li tyto dvě matice, vidíme, že prvek nacházející se vlevo nahoře je právě roven h1 x (x, y), kde h1 je dáno v (7.3). Stejným způsobem ověříme, že i ostatní prvky součinu matic F G jsou totožné s výrazy pro prvky matice H získané pomocí (7.2), čímž je rovnost (7.2) dokázána. Vzorec pro jacobiány plyne z faktu, že determinant součinu dvou matic je roven součinu determinantů. V diferenciálním počtu funkcí jedné proměnné jsme vyšetřovali lokální vlastnosti funkce (tj. v okolí daného bodu) pomocí derivace funkce v tomto bodě (což je pro 1Carl Jacobi (1804­1851), německý matematik 108 Zobrazení mezi prostory vyšších dimenzí funkci jedné proměnné v podstatě ekvivalentní diferenciálu této funkce, nebot' funkce f : R R je v nějakém bodě diferencovatelná, právě když zde existuje konečná de- rivace f ). Podobně budeme postupovat v případě zobrazení mezi prostory vyšších di- menzí. Věta 7.2. Předpokládejme, že složky zobrazení F = { f, g} : R2 R2 mají v bodě [x0, y0] spojité parciální derivace prvního řádu a Jacobiho matice F (x0, y0) je regulární, tj. det F (x0, y0) = 0. Pak existuje okolí U bodu [x0, y0], v němž je zobrazení F prosté, a pro Jacobiho matici inverzního zobrazení F-1 v bodě [u0, v0] = F(x0, y0) platí (F-1 ) (u0, v0) = F (x0, y0) -1 . (7.5) Důkaz. Tvrzení zde nebudeme dokazovat se všemi podrobnostmi (detailní důkaz je pro- veden v [R1]). Zdůrazněme zde pouze hlavní myšlenku důkazu. Diferenciál dF(x0, y0) zobrazení F : R2 R2 je nejlepší lineární aproximace F v okolí bodu [x0, y0]. Je-li zob- razení dF(x0, y0) prosté ­ to nastane, právě když je jeho matice F (x0, y0) regulární ­ je v jistém okolí bodu [x0, y0] prosté i samo zobrazení F. Vztah (7.5) dokážeme takto: Z definice inverzního zobrazení je F-1(F(x, y)) = = [x, y]. Položme [u, v] = F(x, y). Ze vztahu pro Jacobiho matici složeného zobrazení plyne (F-1) (u, v) F (x, y) = E ­ jednotková matice (nebot' Jacobiho matice identického zobrazení je jednotková matice) a odtud (F-1) (u, v) = [F (x, y)]-1. Příklad 7.3. i) Rozhodněte, zda zobrazení F = { f, g} : R2 R2 se souřadnicovými funkcemi f (x, y) = xy, g(x, y) = x y je prosté v okolí bodu [x, y] = [2, 1]. Pokud ano, určete Jacobiho matici inverzního zobrazení v bodě [u, v] = F(2, 1). Řešení. Jacobiho matice zobrazení F je F (x, y) = fx (x, y) fy(x, y) gx (x, y) gy(x, y) = y x 1 y - x y2 a pro bod [x, y] = [2, 1] je det F (2, 1) = -4, tedy F je prosté v jistém okolí bodu [2, 1]. Pro Jacobiho matici inverzního zobrazení F-1 v bodě [2, 2] = F(2, 1) platí (F-1 ) (2, 2) = [F (2, 1)]-1 = 1 2 1 -2 -1 = 1 2 1 2 1 4 -1 4 . ii) Určete Jacobiho matici zobrazení F : R2 R2, které je složením kruhové in- verze, jejíž řídicí kružnice je jednotková, a otočení o úhel 2 v kladném smyslu, přičemž nejprve se provádí kruhová inverze. Řešení. Kruhová inverze přiřadí bodu [x, y] bod [ x x2+y2 , y x2+y2 ] a otočení o úhel 2 v klad- ném smyslu přiřadí bodu [x, y] bod [-y, x], viz příklad 7.1. Složené zobrazení tedy při- Zobrazení z Rn do Rm 109 řadí bodu [x, y] bod [- y x2+y2 , x x2+y2 ]. Jacobiho matice tohoto zobrazení je F (x, y) = x - y x2+y2 y - y x2+y2 x x x2+y2 y x x2+y2 = 2xy (x2+y2)2 y2-x2 (x2+y2)2 y2-x2 (x2+y2)2 - 2xy (x2+y2)2 . Poznámka 7.1. i) Jacobiho matici inverzního zobrazení v Příkladu 7.3, část i) můžeme vypočíst také přímo ­ prostřednictvím explicitního vyjádření inverzního zobrazení k F. Vypočteme-li z rovnic u = xy, v = x y proměnné x a y pomocí u a v, dostáváme x = uv, y = u v , a vzhledem k tomu, že hledáme inverzní zobrazení v okolí bodu [1, 1], bereme v obou rovnicích +. Pak (F-1 ) (u, v) = u x v x u y v y = 1 2 v u 1 2 u v 1 2 uv -1 2 u v3 . Dosadíme-li sem [u, v] = F(2, 1) = [2, 2], dostáváme vskutku stejný výsledek jako v Pří- kladu 7.3. ii) Ze skutečnosti, že det F (x0, y0) = 0 pro nějaké zobrazení F : R2 R2 ještě neplyne, že F není prosté v okolí bodu [x0, y0], tj. podmínka det F (x0, y0) = 0 je pouze dostatečná, nikoliv nutná pro to, aby zobrazení F bylo prosté v okolí bodu [x0, y0]. Na- příklad zobrazení F dané předpisem [x, y] F - [x3 , y3 ] zobrazuje prostě R2 na R2, přestože det F (0, 0) = 0. 7.2 Zobrazení z Rn do Rm Pro zobrazení mezi prostory dimenzí vyšších než dvě je situace zcela analogická. Jsou-li n, m N a f1, . . . , fm : Rn R, pak přiřazení [x1, . . . , xn] F - [ f1(x1, . . . , xn), . . . , fm(x1, . . . , xn)] definuje zobrazení F : Rn Rm. Funkce f1, . . . , fm se nazývají složky nebo souřad- nicové funkce zobrazení F. Jsou-li všechny složky spojité v bodě x, řekneme, že F je spojité v bodě x. Jsou-li f1, . . . , fn diferencovatelné v bodě x Rn, řekneme, že zob- razení F je diferencovatelné v bodě x. Jeho diferenciál dF(x) definujeme jako lineární zobrazení z Rn do Rm dané předpisem h = [h1, . . . , hn] dF - [d f1(x )(h), . . . , d fm(x )(h)], 110 Zobrazení mezi prostory vyšších dimenzí kde d f1(x), . . . , d fm(x) jsou diferenciály souřadnicových funkcí v bodě x, tj. d fk(x )(h) = d fk(x )(h1, . . . , hn) = n i=1 fk xi (x )hi . Matice tohoto lineárního zobrazení (je to matice typu m × n) F (x ) = f1 x1 (x) . . . f1 xn (x) ... ... fm x1 (x) . . . fm xn (x) (7.6) se nazývá Jacobiho matice nebo také derivace zobrazení F a v případě n = m se její determinant nazývá jacobián zobrazení F v bodě x. V některé starší literatuře se jacobián značí D( f1, . . . , fn) D(x1, . . . , xn) (x ) nebo ( f1, . . . , fn) (x1, . . . , xn) (x ). Věta 7.3. Necht' zobrazení G : Rn Rm je diferencovatelné v bodě x Rn a zob- razení F : Rm Rk je diferencovatelné v bodě y = G(x). Pak složené zobrazení H = F G : Rn Rk je diferencovatelné v bodě x a platí H (x ) = F (y )G (x ) = F (G(x ))G (x ). (7.7) Je-li n = m a det G (x) = 0, existuje okolí bodu x, v němž je zobrazení G prosté, tj. existuje zde inverzní zobrazení G-1 a pro jeho Jacobiho matici v bodě y = G(x) platí (G-1 ) (y ) = [G (x )]-1 . (7.8) Poznámka 7.2. Vzorce (7.7) a (7.8) pro Jacobiho matici složeného zobrazení a Jacobiho matici inverzního zobrazení jsou formálně zcela stejné jako vzorce pro derivaci složené a inverzní funkce jedné proměnné, zde však musíme dávat pozor na pořadí obou činitelů, nebot' násobení matic není komutativní operace. Matice F je typu k×m, G je typu m×n, násobení těchto matic je tedy možné pouze v pořadí uvedeném v (7.7) (tímto způsobem se také pořadí činitelů nejlépe pamatuje). Příklad 7.4. Vypočtěte Jacobiho matici zobrazení F : R3 R3, které bodu [x, y, z] přiřadí jeho sférické souřadnice [x, y, z] F - [ x2 + y2 + z2, arctg y x , arctg x2 + y2 z ]. Zobrazení z Rn do Rm 111 Řešení. Podle (7.6) platí F (x, y, z) = x x2 + y2 + z2 y x2 + y2 + z2 z x2 + y2 + z2 x arctg y x y arctg y x z arctg y x x arctg x2+y2 z y arctg x2+y2 z z arctg x2+y2 z = = x x2+y2+z2 y x2+y2+z2 z x2+y2+z2 - y x2+y2 x x2+y2 0 xz (x2+y2+z2) x2+y2 yz (x2+y2+z2) x2+y2 - x2+y2 (x2+y2+z2) . ii) Jak jsme již poznamenali v Příkladu 7.2, zobrazení F : C C množiny komplex- ních čísel do sebe můžeme chápat jako zobrazení z R2 do R2, které komplexnímu číslu z = x + iy přiřadí číslo F(z) = f (x, y) + ig(x, y), kde f, g jsou reálné funkce dvou pro- měnných. Podobně jako v reálném oboru definujeme derivaci komplexní funkce F v čísle z0 = x0 + iy0 vztahem F (z0) = lim zz0 F(z) - F(z0) z - z0 , přičemž limita komplexní funkce v tomto vztahu se chápe zcela analogicky jako v reálném oboru a znamená, že ke každému > 0 existuje > 0 takové, že pro všechna z splňující 0 < |z - z0| < platí F(z) - F(z0) z - z0 - F (z0) < . Dokažte toto tvrzení: Necht' funkce f, g jsou diferencovatelné v bodě [x0, y0]. Pak kom- plexní funkce F má v bodě z0 = x0 + iy0 derivaci, právě když platí tzv. Cauchyovy- -Riemannovy1 podmínky f x (x0, y0) = g y (x0, y0), f y (x0, y0) = - g x (x0, y0). 1Augustin Louis Cauchy (1789­1857), francouzský matematik, Bernhard Riemann (1826 až 1866), německý matematik, oba jsou považováni za spolutvůrce moderní matematiky. 112 Zobrazení mezi prostory vyšších dimenzí Řešení. Označme F (z0) = A+i B. Z diferencovatelnosti funkcí f, g v bodě [x0, y0] plyne 0 = lim zz0 F(z) - F(z0) z - z0 - F (z0) = = lim (x,y)(x0,y0) f (x, y) + ig(x, y) - [ f (x0, y0) + ig(x0, y0)] (x - x0) + i(y - y0) - (A + i B) = = lim (x,y)(x0,y0) f (x, y) - f (x0, y0) - A(x - x0) + B(y - y0) (x - x0) + i(y - y0) + +i lim (x,y)(x0,y0) g(x, y) - g(x0, y0) - B(x - x0) - A(y - y0) (x - x0) + i(y - y0) = = lim (x,y)(x0,y0) ( fx (x0, y0) - A)(x - x0) + ( fy(x0, y0) + B)(y - y0) (x - x0)2 + (y - y0)2 + +i lim (x,y)(x0,y0) (gx (x0, y0) - B)(x - x0) + (gy(x0, y0) - A)(y - y0) (x - x0)2 + (y - y0)2 . Odtud fx (x0, y0) = A = gy(x0, y0), fy(x0, y0) = -B = -gx (x0, y0). 7.3 Diferenciální operátory matematické fyziky V odstavci 4.1 jsme uvedli, že ve fyzikální terminologii a také v některých odvětvích matematiky, např. v numerických metodách, se vektor parciálních derivací f funkce f nazývá gradient funkce a značí se grad f . Zobrazení F : R3 R3 se ve fyzikální terminologii nazývá vektorové pole. Lze je chápat jako zobrazení, které bodu o souřadnicích [x, y, z] přiřadí vektor s počátečním bodem v počátku a koncovým bodem F(x, y, z) = [P(x, y, z), Q(x, y, z), R(x, y, z)], kde P, Q, R jsou souřadnicové funkce. Důležitými fyzikálními charakteristikami vekto- rových polí jsou tzv. divergence vektorového pole div F(x, z, y) = Px (x, y, z) + Qy(x, y, z) + Rz(x, y, z) a rotace vektorového pole rot F(x, z, y) = [Ry(x, y, z) - Qz(x, y, z), Pz(x, y, z) - Rx (x, y, z), Qx (x, y, z) - Py(x, y, z)] (tedy divergence je skalární veličina a rotace je vektorová veličina). Příklad 7.5. Vypočtěte divergenci a rotaci gravitačního pole vytvořené hmotným bodem o jednotkové hmotnosti umístěným v počátku souřadné soustavy. Diferenciální operátory matematické fyziky 113 Řešení. Z fyziky je známo, že dva hmotné body o hmotnostech m1, m2 se navzájem přitahují silou, jejíž velikost je |F| = m1m2 d2 , kde = 6, 67 10-11 Nm2/kg2 je New- tonova gravitační konstanta a d je vzdálenost bodů. Bod [x, y, z] s jednotkovou hmot- ností bude přitahován do počátku silou, jejíž směr je opačný než směr vektoru s počát- kem v [0, 0, 0] a koncem v [x, y, z] a jehož velikost |F| je rovna (x2 + y2 + z2)-1. Tedy F(x, y, z) = -[x, y, z] a hodnotu skaláru určíme z podmínky pro velikost F, tj. x2 + y2 + z2 = (x2 + y2 + z2)-1, a tedy = (x2 + y2 + z2)- 3 2 . Odtud F(x, y, z) = [P(x, y, z), Q(x, y, z), R(x, y, z)] = - x r3 , - y r3 , - z r3 , kde r = x2 + y2 + z2. Nyní vypočteme všechny parciální derivace funkcí P, Q, R po- třebné k určení div F a rot F. Px = - 1 r3 + 3x2 r5 , Qy = - 1 r3 + 3y2 r5 , Rz = - 1 r3 + 3z2 r5 , odtud snadno ověříme, že pro [x, y, z] = [0, 0, 0] je div F = 0. Podobně vypočteme Py = Qx = 3xy r5 , Pz = Rx = 3xz r5 , Qz = Ry = 3yz r5 , a tedy i rot F = 0. Manipulace s diferenciálními výrazy obsahujícími operátory rotace a divergence se podstatně usnadňuje zavedením tzv. Hamiltonova nabla operátoru .1 Tento symbol je formálně definován jako vektorový operátor předpisem := x , y , z , tj. jako operátor, který funkci f : R3 R přiřazuje vektorové pole f = f x , f y , f z . Toto je alternativní označení pro vektorové pole f , které diferencovatelné funkci f přiřa- zuje její derivaci. Operátor lze s výhodou použít i při formalizaci operátorů divergence a rotace. Uvažujme nejprve případ divergenčního operátoru. Formálně můžeme aplikaci operátoru divergence na pole F zapsat takto: divF = , F = x , y , z , (P, Q, R) = = P x + Q y + R z . (7.9) 1William Rowan Hamilton (1805­1865), irský matematik. Termín nabla operátor byl zaveden přímo Hamiltonem, nabla označuje starý hudební nástroj trojúhelníkového tvaru. 114 Zobrazení mezi prostory vyšších dimenzí Podobně můžeme formalizovat operátor rotace rot pomocí vektorového součinu takto: rot F = × F = R y - Q z , P z - R x , Q x - P y . Připomeňme, že vektorový součin u × v dvou vektorů u = (u1, u2, u3), v = (v1, v2, v3) je definován jako vektor kolmý na lineární prostor generovaný dvojicí vektorů u, v, ori- entovaný podle pravidla pravé ruky, a délky ||u × v|| = ||u|| ||v|| sin , kde je úhel mezi vektory u, v. Konkrétně, souřadnice vektoru u × v jsou u × v = (u2v3 - u3v2, u2v1 - u1v3, u1v2 - v1u2). Zejména jsou-li vektory u, v lineárně závislé, pak u × v = 0. Proto pro složení operátorů rotace a gradientu platí rot grad f = × f = 0 pro libovolnou dostatečně hladkou funkci f . Podobně lze ukázat, že div rotF = 0 pro libovolné dostatečně hladké vektorové pole F. Poslední identita plyne z faktu, že skalární součin u, u × v = 0, nebot' vektor u × v je kolmý na každý z vektorů u, v. Proto div rot F = , × F = 0. Obě výše uvedené identity lze samozřejmě dokázat i přímým derivováním, jejich ověření tímto způsobem je však pracnější. Na závěr této kapitoly připomeňme ještě pojem Laplaceova operátoru , který je definován předpisem = 2 x2 + 2 y2 + 2 z2 . Parciální diferenciální rovnice u = 0 se nazývá Laplaceova rovnice (viz závěr první části Kapitoly 5) a její řešení se nazývají harmonické funkce. Pomocí operátoru můžeme Laplaceův operátor definovat takto: u = div grad u = , u = 2u x2 + 2u y2 + 2u z2 . Cvičení 7.1. Rozhodněte, zda zobrazení F = { f, g} je prosté v okolí bodu [x0, y0]. Pokud ano, určete Jacobiho matici inverzního zobrazení v bodě [u0, v0] = F(x0, y0). a) f (x, y) = x2 + y2, g(x, y) = xy, [x0, y0] = [0, 1] Diferenciální operátory matematické fyziky 115 b) f (x, y) = x3 - 3xy2, g(x, y) = y3 + 3x2 y, [x0, y0] = [1, 1] c) f (x, y) = xy, g(x, y) = yx , [x0, y0] = [1, 1] 7.2. Určete souřadnicové funkce a Jacobiho matici uvedených zobrazení: a) Osová souměrnost podle přímky p, jejíž rovnice je ax + by + c = 0. b) Složení osové souměrnosti podle přímky y = x a projekce bodu na jednotkovou kruž- nici (bodu [x, y] = [0, 0] je přiřazen bod na jednotkové kružnici, který je průsečíkem kružnice s přímkou určenou počátkem a bodem [x, y]). c) Bodu [x, y, z] R3 je přiřazen bod ležící na rovníku kulové plochy se středem v po- čátku procházející bodem [x, y, z], přičemž přiřazený bod leží na stejném poledníku. d) ,,Eliptická inverze v R3": Bodu [x, y, z] je přiřazen bod ležící na polopřímce určené počátkem a bodem [x, y, z], přičemž součin vzdálenosti vzoru a obrazu od počátku je roven vzdálenosti od počátku průsečíku jejich spojnice s elipsoidem x2 a2 + y2 b2 + z2 c2 = 1. 7.3. Je dána dvojice diferencovatelných funkcí R(r, ), (r, ), která definuje funkci F : C C předpisem z = rei R(r, )ei (r,) . Využitím výsledku Příkladu 7.4 ii) určete nutnou podmínku, aby F měla derivaci. 7.4. Dokažte následují identity (bud' přímým derivováním, nebo pomocí operátoru ). V těchto identitách f : R3 R a F, G : R3 R3. 1. div( f F) = F, grad f + f div F, 2. rot( f F) = f rot F + grad f, F , 3. div(F × G) = rot A, B - A, rot B , 4. rot(rot F) = grad div F - F (výraz F je třeba chápat jako aplikaci operátoru na každou z komponent vektorového pole F). Důležité je nepřestat se ptát. Zvědavost existuje z dobrého důvodu. Nelze než žasnout, rozvažujeme-li o tajemstvích věčnosti, života a úžasného uspořádání věcí vezdejších. Stačí, když se člověk snaží každý den porozumět alespoň kousku tohoto tajemství. Nikdy neztrácejte zvědavost, tu posvátnou vlastnost. (A. Einstein) Kapitola 8 Funkce zadaná implicitně Uvažujme tento problém: Necht' F je funkce dvou proměnných a označme mno- žinu (křivku) M = {[x, y] D(F) : F(x, y) = 0}. Například pro F(x, y) = x2 + y2 - 1 je křivka M jednotková kružnice se středem v počátku. Zvolme libovolný bod na křivce M. Chceme vyšetřit chování křivky v okolí tohoto bodu, zejména určit rovnici tečny v tomto bodě a rozhodnout, zda křivka v okolí tohoto bodu leží nad, nebo pod tečnou. Jestliže křivka M je přímo grafem funkce jedné proměnné y = f (x), tj. F(x, y) = y - f (x) = 0, problém snadno vyřešíme výpočtem derivací f , f . Rovněž v jednoduchých případech, jako je rovnice kružnice, lze využít metod diferenciálního počtu funkcí jedné proměnné, nebot' z rovnice kružnice můžeme snadno spočítat y jako funkci proměnné x. Je-li však rovnice křivky kompliko- vanější, např. x3 + y3 - 2xy = 0, a chceme určit rovnici tečny ke křivce určené touto rovnicí v bodě [x0, y0] = [1, 1], předchozí postup selhává, protože z rovnice křivky nelze y rozumně spočítat. V této kapitole ukážeme, jak tuto nesnáz obejít. Budeme se nejprve zabývat problémem, zda je křivka M v okolí daného bodu totožná s grafem nějaké funkce jedné proměnné, a pokud ano, jak spočítat její derivace. V prvním odstavci je tento problém vyřešen pro funkci jedné proměnné, v dru- hém pro funkci n proměnných a v třetím odstavci pro zobrazení mezi prostory vyšších dimenzí. 118 Funkce zadaná implicitně 8.1 Implicitně zadaná funkce jedné proměnné Definice 8.1. Necht' F je funkce dvou proměnných. Označme M = {[x, y] D(F) : F(x, y) = 0} a necht' F(x0, y0) = 0. Jestliže existuje okolí U = = {[x, y] D(F) : |x - x0| < , |y - y0| < } bodu [x0, y0] takové, že množina M U je totožná s grafem funkce y = f (x), |x - x0| < , řekneme, že funkce f je v okolí bodu [x0, y0] definována implicitně rovnicí F(x, y) = 0. Jinými slovy, funkce y = f (x) je v okolí bodu [x0, y0] zadána implicitně1 rovnicí F(x, y) = 0, jestliže existuje > 0 takové, že F(x, f (x)) = 0 pro x (x0 - , x0 + ). V případě rovnice kružnice x2 + y2 - 1 = 0 z obrázku vidíme, že v okolí libovolného bodu P0 = [1, 0] této kružnice je rovnicí x2 + y2 - 1 = 0 implicitně zadána funkce y = f (x) = 1 - x2 (znaménko + bereme, leží-li bod na horní půlkružnici, a znaménko -, je-li na dolní půlkružnici). ay0 + y0 y0 - O x0 - x0 x0 + P0 R x y obr. 8.1 1Doslovný český překlad slova implicitní je nerozvinutý, v něčem obsažený. Implicitně zadaná funkce jedné proměnné 119 Dále vidíme, že v okolí bodů [1, 0] není rovnicí zadána žádná funkce pro- měnné x. Jako jiný příklad uvažujme křivky dané rovnicemi F(x, y) := x - y2 = 0 (parabola) F(x, y) := x2 - y2 = 0 (dvojice přimek y = x) Je vidět, že v libovolném okolí počátku není rovnicí F(x, y) = 0 určena implicitně žádná funkce. Naopak v dostatečně malém okolí každého jiného bodu těchto kři- vek je rovnicí F(x, y) = 0 definována funkce y = f (x). V prvním případě to jsou funkce y = x nebo y = - x, podle toho, leží-li bod v horní, nebo dolní polorovině určené osou x, ve druhém případě y = x nebo y = -x, podle toho, na které z dvojice přímek bod leží. V následující Větě 8.1 je uvedena postačující podmínka pro existenci funkce zadané implicitně v okolí daného bodu křivky a ve Větě 8.2 způsob pro výpočet její derivace. Věta 8.1. Necht' je funkce F spojitá na čtverci R = {[x, y] D(F):|x - x0| < < a, |y - y0| < a} a necht' F(x0, y0) = 0. Dále předpokládejme, že funkce F má spojitou parciální derivaci y F(x, y) v bodě [x0, y0] a platí F y (x0, y0) = 0. Pak existuje okolí bodu [x0, y0], v němž je rovností F(x, y) = 0 implicitně definována právě jedna funkce y = f (x), která je spojitá. Důkaz. Existenci implicitně zadané funkce dokážeme pomocí Banachovy věty o pevném bodu kontraktivního zobrazení v úplném metrickém prostoru, viz [D-D]. Necht' , > 0 jsou reálná čísla, jejichž přesnou hodnotu určíme poz- ději, a označme I = [x0 - , x0 + ]. Uvažujme prostor funkcí P = {g C(I) : g(x0) = y0, |g(x) - y0| pro x I}. To znamená, že P je prostor spojitých funkcí na I, jejichž grafy procházejí bodem [x0, y0] a leží v - obdélníku kolem bodu [x0, y0]. Na P uvažujme metriku stejno- měrné konvergence ( f, g) = maxxI | f (x)-g(x)|. Označme d = Fy(x0, y0) = 0 a definujme na P zobrazení T : P C(I) předpisem g(x) T - g(x) - F(x, g(x)) d . Najdeme-li pevný bod f P zobrazení T , je tento bod hledanou implicitně za- danou funkcí f . Vskutku, je-li f (x) = T ( f )(x) = f (x) - d-1 F(x, f (x)), je d-1 F(x, f (x)) = 0 pro x I, což podle Definice 8.1 znamená, že funkce f je implicitně zadána rovností F(x, y) = 0. 120 Funkce zadaná implicitně Určíme nyní konstanty a tak, aby zobrazení T bylo kontrakcí a zobrazovalo prostor P do sebe (což jsou spolu s úplností prostoru P předpoklady Banachovy věty). Necht' f, g P. Využitím Lagrangeovy věty o střední hodnotě pro funkci F dostáváme |T ( f )(x)-T (g)(x)| = max xI | f (x)-d-1 F(x, f (x)) - g(x) + d-1 F(x, g(x))| = = | f (x) - g(x) - Fy(x, )( f (x) - g(x)) d | = | f (x) - g(x)| |1 - Fy(x, ) d |, kde = (x) leží mezi f (x) a g(x). Protože funkce Fy je spojitá v bodě [x0, y0] a Fy(x0, y0) = d, existují , 1 > 0 taková, že |1 - d-1 Fy(x, y)| < 1 2 pro x (x0 - 1, x0 + 1), y (y0 - , y0 + ). Je-li 1, pro takto zvolená , 1 platí (T ( f ), T (g)) = max xI | f (x) - g(x)||1 - Fy(x, ) d | 1 2 max xI | f (x) - g(x)| = 1 2 ( f, g), tj. T je kontrakce s koeficientem kontrakce q = 1 2 . Necht' f P. Pak T ( f ) je spojitá funkce a T ( f )(x0) = f (x0) - d-1 F(x0, f (x0)) = y0. Odtud plyne existence 2 > 0 tak, že pro x (x0 - 2, x0 + 2) platí |T ( f )(x) - y0| . Položme = min{1, 2}, pak pro takto určená , je T kontraktivní zobra- zení P do sebe, což jsme potřebovali dokázat. Poznámka 8.1. i) Uvědomme si, že rovností F(x, y) = 0 může být v dostatečně velkém okolí bodu [x0, y0] zadána jedna či více spojitých nebo nespojitých funkcí. Tuto skutečnost ilustruje následující příklad. Uvažujme rovnici y(y - 1) = 0. Touto rovnicí je v okolí bodu [0, 0] určena spojitá funkce y 0 a kromě ní také nespojitá funkce (x) = 0, pro x Q, 1, pro x R Q. Implicitně zadaná funkce jedné proměnné 121 ii) Podmínka Fy(x0, y0) = 0 je pouze dostatečnou, nikoliv nutnou podmínkou pro existenci implicitně zadané funkce. V případě rovnice y3 - x = 0 je Fy(0, 0) = = 3y2 |y=0 = 0, a přesto je rovnicí v okolí počátku implicitně určena funkce y = 3 x. b - O (1, 0) R x = (y) x y obr. 8.2 iii) Na zadávající rovnici F(x, y) = 0 se můžeme dívat také jako na rovnici de- finující funkci x = (y) proměnné y. Snadno se vidí na základě Věty 8.1, že dostatečnou podmínkou pro existenci takto implicitně zadané funkce x = (y) v okolí b. [x0, y0] je Fx (x0, y0) = 0. Na obrázku 8.2 je vidět, že rovnicí x2 + y2 - - 1 = 0 je v okolí bodu [1, 0] implicitně určena funkce x = (y) = 1 - y2. Derivaci implicitně zadané funkce vypočteme podle následující věty. Věta 8.2. Necht' jsou splněny předpoklady Věty 8.1 a funkce F má na R spojité parciální derivace 1. řádu. Pak má funkce f , která je implicitně určena v okolí bodu [x0, y0] rovnicí F(x, y) = 0, derivaci v bodě x0 a platí f (x0) = - Fx (x0, y0) Fy(x0, y0) . (8.1) Důkaz. Necht' f je funkce implicitně určená v okolí bodu [x0, y0] rovnicí F(x, y) = 0, tj. existuje > 0 takové, že pro x (x0 - , x0 + ) platí 122 Funkce zadaná implicitně F(x, f (x)) = 0. Důkaz existence derivace implicitně zadané funkce f zde nebu- deme provádět (lze jej s podrobnostmi nalézt např. v [N2]), zde se zaměříme pouze na odvození vzorce pro f . Derivováním rovnosti F(x, f (x)) podle x dostáváme Fx (x, f (x)) + Fy(x, f (x)) f (x) = 0, odkud f (x) = - Fx (x, f (x)) Fy(x, f (x)) . Dosadíme-li za x = x0, pak ze skutečnosti, že f (x0) = y0, plyne dokazované tvrzení. Příklad 8.1. i) Určete rovnici tečny a normály ke křivce dané rovnicí x3 + y3 - - 2xy = 0 v bodě [1, 1] (viz úvodní komentář). Řešení. Označme F(x, y) = x3 + y3 - 2xy. Platí Fy(x, y) = 3y2 -2x, Fy(1, 1) = = 1=0, jsou tedy splněny všechny předpoklady věty, tj. rovností x3 + y3 -2xy = 0 je v jistém okolí bodu [1, 1] určena implicitně funkce jedné proměnné y = f (x), pro jejíž derivaci v bodě x = 1 dostáváme f (1) = - Fx (1, 1) Fy(1, 1) = - 3x2 - 2y 3y2 - 2x |[x,y]=[1,1] = -1. Rovnice tečny t je y - 1 = -(x - 1) = x + y - 2 = 0. Normála je přímka kolmá k tečně, a vzhledem k tomu, že pro směrnice k1, k2 dvou navzájem kolmých přímek platí k1k2 = -1, rovnice normály n je y - 1 = x - 1 = y = x. ii) Určete, ve kterých bodech křivky x2 + y2 - xy - 1 = 0 je tečna rovnoběžná s osou x, resp. y. Řešení. Stejně jako v předchozím příkladu zjistíme, že ve všech bodech, kde y [x2 + y2 - xy - 1] = 2y - x = 0, je rovnicí x2 + y2 - xy - 1 = 0 impli- citně určena jistá funkce proměnné x. Pro její derivaci platí y = - 2x - y 2y - x . Tečna je rovnoběžná s osou x v bodech, kde y = 0, musí proto platit 2x -y = 0. Protože hledaný bod leží na křivce x2 + y2 - xy -1 = 0, dostáváme systém rovnic y = 2x, x2 + y2 - xy - 1 = 0. Implicitně zadaná funkce jedné proměnné 123 Dosazením z první rovnice do druhé snadno najdeme řešení x = 3 3 , y = 2 3 3 , tedy tečna ke křivce je vodorovná v bodech [ 3 3 , 2 3 3 ]. Při určení bodů, kde je tečna rovnoběžná s osou y, postupujeme podobně. Tečna může být svislá pouze v bodech, kde je jmenovatel zlomku vyjadřující y nulový. (Ke stejnému výsledku dojdeme, jestliže se na rovnici x2 + y2 -xy-1 = 0 díváme jako na rovnici určující implicitně x jako funkci proměnné y.) Obdržíme systém rovnic 2y - x = 0, x2 + y2 - xy - 1 = 0, jehož řešením je dvojice bodů [2 3 3 , 3 3 ], v nichž je tečna ke křivce svislá. Poznámka 8.2. i) Při výpočtu derivace funkce zadané rovnicí F(x, y)=0 vyu- žíváme často místo vzorce (8.1) postupu uvedeného při jeho odvození. Rov- nici F(x, y) = 0 derivujeme podle x a na y se díváme jako na funkci pro- měnné x. Pak dostáváme Fx (x, y) + y Fy(x, y) = 0 (8.2) a z této rovnice vypočteme y . ii) Postup z předchozí poznámky je vhodný i při výpočtu vyšších derivací funkce implicitně zadané rovnicí F(x, y) = 0. Derivujeme-li rovnici (8.2) ještě jed- nou podle x, dostáváme Fxx (x, y) + (Fxy(x, y) + Fyx (x, y)) + Fyy(x, y)y + Fy(x, y)y = 0 a z této rovnice vypočteme y . Dalším derivováním poslední rovnice odvo- díme vztah pro y atd. iii) Je-li c reálná konstanta, je rovnicí F(x, y)-c = 0 určena vrstevnice funkce F na úrovni c ­ viz Definice 1.3. Směrnice tečny k vrstevnici v bodě [x0, y0] (pokud je funkce F diferencovatelná a tečna existuje) má rovnici t : y - y0 = - Fx (x0, y0) Fy(x0, y0) (x - x0) a odtud Fx (x0, y0)(x - x0) + Fy(x0, y0)(y - y0) = 0. To znamená, že vektor u = (Fx (x0, y0), Fy(x0, y0)) je normálový vektor ke křivce F(x, y) - c = 0 v bodě [x0, y0]. 124 Funkce zadaná implicitně Příklad 8.2. i) Rozhodněte, zda křivka x3 +y3 -2xy = 0 leží v okolí bodu [1, 1] pod tečnou, nebo nad tečnou. Řešení. Rovnici tečny jsme vypočítali v Příkladu 8.1 i) podle vzorce o derivaci funkce dané implicitně. Nyní postupujme jako při odvození tohoto vzorce. Derivujeme-li rovnici x3 + y3 - 2xy = 0 podle x a uvážíme-li, že y je funkce proměnné x, dostá- váme 3x2 + 3y2 y - 2y - 2xy = 0. Dalším derivováním podle x obdržíme 6x + 6y(y )2 + 3y2 y - 2y - 2y - 2xy = 0 a odtud y = 4y - 6x - 6y(y )2 3y2 - 2x . Dosadíme-li do tohoto vztahu za x = 1, y = 1 a y = -1 (tato hodnota je vypočítána při výpočtu tečny), dostaneme y (1) = -16, což znamená, že křivka leží v okolí bodu [1, 1] pod tečnou (nebot' implicitně určená funkce je v bodě x = 1 konkávní). ii) Najděte lokální extrémy funkce zadané implicitně rovností ln x2 + y2 = arctg y x . (8.3) Řešení. Derivováním rovnosti implicitně zadávající y jako funkci proměnné x dostáváme x + yy x2 + y2 = 1 1 + y2 x2 y x - y x2 . Odtud x + yy = y x - y = y = x + y x - y . Z podmínky y = 0 máme x = -y a dosazením do (8.3) dostáváme ln 2x2 = = arctg(-1) a odtud x = e - 4 2 , y = e - 4 2 . Nyní vypočteme y v nalezených stacionárních bodech. Derivujeme-li rovnici x + yy = y x - y ,,implicitně" podle x (jiná možnost, vedoucí samozřejmě ke stejnému výsledku, je derivo- vat podle x zlomek x+y y-x ), dostáváme 1 + (y )2 + yy = y x + y - y . Odtud y = 1 + (y )2 x - y . Dosadíme-li do této rovnosti, vidíme, že y (-e - 4 2 ) < 0, y (e - 4 2 ) > 0, tedy v bodě x = -e - 4 2 má implicitně zadaná funkce lokální maximum a Implicitně zadaná funkce více proměnných 125 v bodě x = e - 4 2 lokální minimum. (Geometricky se o správnosti výpočtu mů- žeme přesvědčit náčrtkem křivky, přejdeme-li v (8.3) k polárním souřadnicím x = r cos , y = r sin , pak pro (- 2 , 2 ) dostáváme část logaritmické spirály r = e2 a pro ( 2 , 3 2 ) křivku, která je středově symetrická podle počátku s touto spirálou.) 8.2 Implicitně zadaná funkce více proměnných V úvahách prováděných na začátku předchozího odstavce se můžeme snadno ,,posunout" o dimenzi výše. Uvažujme v R3 množinu M = {[x, y, z] R3 : : F(x, y, z) = 0}, kde F je nějaká funkce tří proměnných. Za celkem při- rozených předpokladů na funkci F (např. diferencovatelnost) je M nějaká plo- cha v R3 a můžeme si klást otázku, jaká je rovnice tečné roviny k ploše M v bodě [x0, y0, z0] M, popř. zda v okolí tohoto bodu je plocha pod, nebo nad tečnou rovinou. Lze-li z rovnice F(x, y, z) = 0 vypočítat proměnnou z, můžeme použít postup ze čtvrté kapitoly. Pokud toto není možné, zcela analogicky jako pro funkci dvou proměnných můžeme odvodit podmínku, kdy je množina M v okolí bodu [x0, y0, y0] totožná s grafem nějaké funkce dvou proměnných z = f (x, y), tj. v okolí bodu [x0, y0, z0] platí F(x, y, f (x, y)) = 0 a f (x0, y0) = z0. Pokud taková funkce existuje, řekneme, že je v okolí bodu [x0, y0, z0] implicitně zadána rovnicí F(x, y, z) = 0. Zcela analogická je situace, kdy je rovnicí F(x1, . . . , xn, y) = 0 v okolí bodu [x , y] = [x 1 , . . . , x n , y] implicitně určena funkce n proměnných y = f (x1, . . . , xn). Přistoupíme proto k formulaci existenčního tvrzení přímo pro tento obecný případ. Důkaz tvrzení neuvádíme, protože je v podstatě totožný s pří- padem, kdy x je skalární proměnná. Věta 8.3. Necht' funkce F : Rn+1 R, M = {[x, y] = [x1, . . . , xn, y] Rn+1 , F(x, y) = 0}, [x , y ] M a F je spojitá na množině R = {[x, y] = = [x1, . . . , xn, y] : |xi - x i | < a, i = 1, . . . , n, |y - y | < a}. Dále předpoklá- dejme, že F má spojitou parciální derivaci Fy v bodě [x , y ] a F y (x , y ) = 0. Pak existuje okolí bodu[x , y ], v němž je rovnicí F(x, y) = F(x1 . . . , xn, y) = 0 implicitně určena právě jedna spojitá funkce y = f (x) = f (x1, . . . , xn). Má-li navíc funkce F v bodě [x , y ] spojité parciální derivace xi F, má im- plicitně určená funkce f v bodě x = [x 1 . . . , x n ] parciální derivace a platí f xi (x ) = - F xi (x , y ) F y (x, y) 126 Funkce zadaná implicitně Příklad 8.3. i) Určete rovnici tečné roviny v bodě [1, 0, 1] k ploše určené rovnicí x3 + y3 + z3 - 3xyz - x - y - z = 0. Řešení. Určíme parciální derivace implicitně zadané funkce z = z(x, y). Deri- vováním zadávající rovnice podle x a podle y (uvážíme při tom, že z je funkcí proměnných x a y) dostáváme 3x2 + 3z2 zx - 3yz - 3xyzx - 1 - zx = 0, 3y2 + 3z2 zy - 3xz - 3xyzy - 1 - zy = 0. Odtud zx = 3x2 - 3yz - 1 3xy + 1 - 3z2 , zy = 3y2 - 3xz - 1 3xy + 1 - 3z2 . Dosazením x = 1, y = 0, z = 1 dostáváme zx (1, 0) = -1, zy(1, 0) = 2, a tedy tečná rovina k dané ploše v bodě [1, 0, 1] má podle (4.6) rovnici z - 1 = -(x - - 1) + 2y, po úpravě x - 2y + z - 2 = 0. ii) Rozhodněte, zda plocha v E3 daná rovnicí x + y2 +z3 +z -4 = 0 leží v okolí bodu [1, 1, 1] pod tečnou rovinou, nebo nad tečnou rovinou sestrojenou v tomto bodě. Řešení. Postupem popsaným ve Větě 8.3 určíme parciální derivace v bodě [1, 1] funkce z = z(x, y). Dostáváme zx = - 1 1 + 3z2 , zy = - 2y 1 + 3z2 , zxx = - 6z2 x z 1 + 3z2 , zyy = - 2 + 6z2 yz 1 + 3z2 , zxy = - 6zx zyz 1 + 3z2 , tedy v bodě [1, 1, 1] platí zx = -1 4 , zy = -1 2 , zxx = - 3 32 , zxy = - 3 16 , zyy = -7 8 . Tečná rovina v bodě [1, 1, 1] má rovnici z - 1 = -1 4 (x - 1) - 1 2 (y - 1). Nyní použijeme tvrzení uvedené v Poznámce 6.3. Platí D(1, 1) = zxx (1, 1)zyy(1, 1) - z2 xy(1, 1) = - 3 32 -7 8 - 3 16 2 = 12 162 > 0 a zxx (1, 1) = - 3 32 . Proto plocha určená rovnicí x + y2 + z3 + z - 4 = 0 leží v okolí bodu [1, 1, 1] pod tečnou rovinou v tomto bodě. iii) Určete lokální extrémy funkce z = f (x, y) určené implicitně rovnicí F(x, y, z) = x2 + y2 + z2 - xz - 2yz = 1. Implicitně zadaná funkce více proměnných 127 Řešení. Derivováním zadávající rovnosti podle x a y dostáváme 2x + 2zzx - z - xzx - 2yzx = 0, (8.4) 2y + 2zzy - xzy - 2z - 2yzy = 0, odtud zx = z - 2x 2z - x - 2y , zy = 2z - 2y 2z - x - 2y . Stacionární body určíme z podmínky zx = 0 = zy, tj. z = 2x = 2y, tedy y = 2x. Dosazením do zadávající rovnice obdržíme dvojici stacionárních bodů P1 = [1, 2, 2], P2 = [-1, - 2, -2]. V těchto bodech je Fz = 0, tedy v jejich okolí je implicitně určena jistá funkce z = f (x, y). Derivováním (8.4) vypočteme parciální derivace 2. řádu ve stacionárních bodech zxx = - 2 2z - x - 2y , zxy = 0, zyy = - 2 2z - x - 2y . V obou bodech P1,2 je D = zxx zyy - z2 xy = 1 > 0, tj. v těchto bodech nastávají lokální extrémy, a to maximum v bodě P1 (nebot' zxx = -2) a minimum v bodě P2 (zxx = 2). Podobným způsobem jako v Poznámce 8.2 iii) lze dokázat následující tvrzení. Věta 8.4. Předpokládejme, že funkce F : Rn R má spojité parciální derivace v bodě x = [x 1 , . . . , x n ] Rn a alespoň jedna z těchto parciálních derivací je nenulová. Pak lze k (n - 1)-rozměrné ploše určené rovnicí F(x) = F(x1, . . . , xn) = 0 v bodě x sestrojit tečnou nadrovinu a tato nadrovina má rovnici n k=1 F xi (x )(xi - x i ) = 0. (8.5) Ve vektorovém zápisu je uvedený vztah F (x ), x - x = 0, ( ., . značí skalární součin v Rn), tedy vektor F (x) = ( F x1 (x), . . . , F xn (x)) je nor- málovým vektorem v bodě x k ploše F(x) = 0. Příklad 8.4. Určete rovnici tečné nadroviny v bodě [1, 1, . . . , 1] k (n - 1)-rozměrné ploše dané rovnicí x1 + x2 2 + + xn n - n = 0. 128 Funkce zadaná implicitně Řešení. Platí xk n k=1 xk k = kxk-1 k . Odtud dosazením do (8.5) dostáváme rovnici tečné nadroviny : n k=1 k(xk - 1) = 0, tj. x1 + 2x2 + + nxn = n(n + 1) 2 . Poznámka 8.3. Derivace vyšších řádů funkce y = f (x1, . . . , xn) zadané implicitně rov- nicí F(x1, . . . , xn, y) = 0 vypočteme úplně stejně jako pro dvě proměnné. Například parciální derivaci 2 xi x j f (x) vypočteme tak, že rovnici F(x1, . . . , xn, y) = 0 derivujeme nejprve podle xi a pak podle x j (přitom vždy bereme v úvahu, že y je funkcí vektorové proměnné x = [x1, . . . , xn]). 8.3 Implicitně zadané zobrazení mezi prostory vyšších dimenzí V tomto odstavci se zabýváme nejobecnějším případem. Necht' je dáno m funkcí Fi , n+m proměnných x = [x1, . . . , xn], y = [y1, . . . , ym], i = 1, . . . , m a uvažujme systém rovnic F1(x1, . . . , xn, y1, . . . , ym) = 0 ... Fm(x1, . . . , xn, y1, . . . , ym) = 0. (8.6) Na m-tici funkcí F1, . . . , Fm se můžeme dívat jako na zobrazení z Rn+m Rm, které označíme F . Pak F1, . . . , Fm jsou složky tohoto zobrazení, tj. F = {F1, . . . , Fm}. Po- dobně jako v předchozích dvou odstavcích označme M = {[x, y] Rn+m : F (x, y) = = 0} a necht' [x, y] M. Jestliže existuje okolí bodu [x, y] Rn+m O([x, y]) = = O(x) × O(y) a zobrazení G : Rm Rn takové, že pro každé [x, y] O([x, y]) je množina bodů [x, y] M totožná s množinou bodů [x, G(x)], x O(x), řekneme, že zobrazení G je v okolí bodu [x, y] implicitně určeno rovnicí F (x, y) = 0. Hledáme podmínky pro existenci implicitně zadaného zobrazení. Jinými slovy, chceme v okolí bodu [x, y] ze systému rovnic (8.6) jednoznačně určit proměnné y1, . . . , ym v závislosti na x1, . . . , xn, neboli hledáme podmínky, za kterých systém rovnic (8.6) určuje v okolí bodu [x, y] M nějaké spojité zobrazení G : Rm Rn. Současně odvodíme vzorec pro Jacobiho matici tohoto implicitně určeného zobrazení. Čtenáři doporučujeme při čtení výsledků tohoto odstavce dosadit m = n = 1 (tj. všechny matice a vektory se redukují na skalární hodnoty) a porovnat je s tvrzeními z odstavce 8.1. Takto zjistíme, že když ,,zapomeneme", že x, y jsou vektorové proměnné, je tvrzení Věty 8.5 stejné jako ve Větách 8.1, 8.2. Implicitně zadané zobrazení mezi prostory vyšších dimenzí 129 Věta 8.5. Necht' F = {F1, . . . , Fm} je spojité zobrazení na množině R = {[x, y] Rn+m : : [x, y] Oa(x) × Oa(y)}, necht' matice Fy(x, y) = y1 F1(x, y) . . . ym F1(x, y) ... y1 Fm(x, y) ym Fm(x, y) je regulární v bodě [x, y] a její prvky jsou spojité v tomto bodě. Pak existuje okolí O([x, y]) = O(x) × O(y) bodu [x, y] takové, že rovnicí F (x, y) = 0 je v tomto okolí bodu [x, y] určeno jediné spojité zobrazení G : O(x) O(y), tj. pro x O(x) je F (x, G(x)) = 0. Jsou-li navíc v bodě [x, y] spojité prvky matice Fx (x, y) = x1 F1(x, y) xn F1(x, y) ... x1 Fn(x, y) xn Fn(x, y) , pak jsou prvky Jacobiho matice implicitně určeného zobrazení G spojité v x a platí G (x ) = Fy(x , y ) -1 Fx (x , y ). Důkaz. Označíme-li d = det Fy(x, y) a budeme-li s maticemi Fy, Fx manipulovat v podstatě stejně jako v důkazu Vět 8.1, 8.2, zjistíme, že důkaz těchto vět ,,projde" i v ma- ticovém případě. Se všemi technickými podrobnostmi je tato myšlenka realizována ve skriptu [N2]. Nyní se budeme zabývat definicí tečného a normálového prostoru k podmnožinám v Rn, které jsou definovány jako množina řešení jistého systému rovnic. Podrobně, necht' F : Rn Rm, m < n, fi : Rn R, i = 1, . . . , m jsou složky tohoto zobrazení a označme M = F -1(0) = {x = [x1, . . . , xn] Rn : F (x) = 0}, tj. M je množina řešení systému rovnic f1(x1, . . . , xn) = 0, ... fm(x1, . . . , xn) = 0. Jako model uvažujme dvojici rovnic x2+y2+z2-1 = 0, x+y+z = 0. Z geometrického významu je zřejmé, že množinou M v R3 určenou touto dvojicí rovnic je kružnice, která je průsečíkem sféry x2 + y2 + z2 = 1 s rovinou x + y + z = 0. Je-li [x, y, z] M, pak je přirozené nazvat směrový vektor tečny ke kružnici v bodě [x, y, z] tečným prostorem k M v bodě [x, y, z] a ortogonální doplněk k tomuto jednorozměrnému podprostoru normálovým prostorem. Je zřejmé, že normálový prostor k M v [x, y, z] je lineární podprostor v R3, který je generován normálovými vektory ke kulové ploše a k rovině. Z tohoto pohledu je přirozená následující definice. 130 Funkce zadaná implicitně Definice 8.2. Necht' F = { f1, . . . , fm} : Rn Rm, m < n, M Rn jsou stejné jako výše a x = [x 1 , . . . , x n ] M. Dále předpokládejme, že funkce fi , i = 1, . . . , m mají na M spojité parciální derivace a Jacobiho matice F (x) zobrazení F v bodě x má hodnost m. Prostor NM (x) = Lin{ f1(x), . . . , fm(x)}, fi (x) = ( fi x1 (x), . . . , fi xn (x)) nazýváme normálový prostor k M v bodě x a jeho ortogonální doplněk TM (x)=[N (x)] se nazývá tečný prostor k M v bodě x. Poznámka 8.4. i) V literatuře věnované diferenciální geometrii a globální analýze (viz např. [S]) bývá tečný prostor k podmnožinám v Rn definován poněkud odlišně, pro mno- žiny zadané systémem rovnic při splnění předpokladů z předchozí definice je však tento objekt totožný s námi definovaným tečným prostorem. Podrobněji o této problematice pojednává skriptum [N2] a monografie [S]. ii) Předpoklad na hodnost matice F (x) v Definici 8.2 nelze vypustit. Uvažujme v R2 množinu M = {[x, y] : f (x, y) = x2 - y2 = 0, y 0}. Pak evidentně M je tvořena dvojicí polopřímek y x = 0 a v počátku (kde fx (0, 0) = 0 = fy(0, 0)) tečnu nelze sestrojit, nebot' křivka zde má ,,hrot". Příklad 8.5. i) Určete parametrickou rovnici tečny v bodě [x0, y0, z0], z0 > 0 k pro- storové křivce, která je průsečíkem kulové plochy x2 + y2 + z2 = 4 s válcovou plochou x2 + y2 - 2x = 0 (tzv. Vivianiho křivka1). Řešení. Normálové vektory k jednotlivým plochám v bodě [x0, y0, z0] jsou n1 = = (2x0, 2y0, 2z0) pro kouli a n2 = (2x0 - 2, 2y0, 0) pro válec. Normálový prostor ke křivce je generován těmito dvěma vektory (všimněte si, že v bodě [4,0,0] jsou lineárně závislé, zde má křivka hrot ­ načrtněte si obrázek). Jejich vektorový sou- čin u = (-y0z0, z0(x0 - 1), y0) je směrovým vektorem tečny, která má tedy rovnici t : [x, y, z] = [x0, y0, z0] + (-y0z0, z0(x0 - 1), y0), R. ii) Určete Jacobiho matici zobrazení F : R2 R2: u = u(x, y), v = v(x, y), které je v okolí bodu [x, y, u, v] = [1, 0, 1, 0] určeno implicitně dvojicí rovnic x2 + y2 + u2 + v2 - 2 = 0, xu - yv + euv - 2 = 0 (8.7) Řešení. Označme M množinu bodů v R4, které vyhovují zadávající dvojici rovnic. Přímým dosazením snadno ověříme, že vskutku [x, y, u, v] M a derivováním sys- tému rovnic podle x (s tím, že u, v jsou funkce proměnných x, y) dostáváme (po jedno- duché úpravě) x + uux + vvx = 0, (x + veuv )ux + (-y + ueuv )vx = -u, 1Vincenzo Viviani (1622­1703), italský matematik, žák G. Galileiho Implicitně zadané zobrazení mezi prostory vyšších dimenzí 131 odtud pomocí Cramerova1 pravidla (toto je pro lineární 2×2 systémy většinou nejrychlejší metoda řešení) ux = -x v -u -y + ueuv u v x + veuv -y + ueuv , vx = u - xv x + veuv -u u v x + veuv -y + ueuv . Analogicky parciálním derivováním systému (8.7) podle y obdržíme systém dvou lineár- ních rovnic pro neznámé uy, vy, jehož řešením je (opět podle Cramerova pravidla) uy = -y v v -y + ueuv u v x + veuv -y + ueuv , vy = u -x + veuvv v u v x + veuv -y + ueuv . Dosazením bodu [x, y, u, v] do těchto vyjádření vidíme, že systém (8.7) definuje implicitně v okolí bodu [x, y, u, v] opravdu zobrazení G : [x, y] - [u, v] (nebot' jmenovatel všech zlomků je nenulový) a platí ux = -1, vx = 0, uy = 0, vy = 0, tedy det G (x, y) = 0. Cvičení 8.1. a) Najděte body křivky x2 +2xy-y2 -8 = 0, v nichž nejsou splněny předpoklady Věty 8.1 o existenci implicitní funkce y = f (x). b) Najděte body parabolické válcové plochy z2 - 2px = 0, kde p > 0, v nichž nejsou splněny předpoklady Věty 8.3 o existenci implicitní funkce z = f (x, y). c) Ve kterých bodech jednodílného hyperboloidu x2 a2 + y2 b2 - z2 c2 = 1 nejsou splněny předpoklady Věty 8.3 o existenci implicitní funkce z = f (x, y)? 1Gabriel Cramer (1704­1752), švýcarský matematik 132 Funkce zadaná implicitně 8.2. Vypočtěte y funkce y = f (x) zadanou implicitně rovnicí: a) x - y2 = ln y b) xy = yx , kde x > 0, y > 0. 8.3. Určete rovnici tečny ke kuželosečce: a) 3x2 + 7xy + 5y2 + 4x + 5y + 1 = 0 procházející počátkem; b) 7x2 - 2y2 = 14 kolmou k přímce p : 2x + 4y - 3 = 0. 8.4. Na elipse o rovnici x2 + 3y2 - 2x + 6y - 8 = 0 najděte body, v nichž je normála rovnoběžná s osou y. 8.5. Vypočtěte y funkce y = f (x) zadanou implicitně rovnicí y - c sin y = x, c (0, 1) . 8.6. a) Určete rovnici tečné roviny a normály k ploše x2 2 - 3y + 2z2 = 0 v bodě T = [2, 4 3 , -1]. b) K elipsoidu x2 + 2y2 + 3z2 = 21 ved'te tečné roviny rovnoběžné s rovinou : x + 4y + 6z = 0. c) K elipsoidu o rovnici x2 +2y2 +z2 = 1 ved'te tečné roviny rovnoběžné s rovinou : x - y + 2z = 0. 8.7. Určete parciální derivace 1. a 2. řádu funkce z = z(x, y) dané implicitně rovnicí: a) x + y + z = e-(x+y+z) , b) z = x2 - y2 tg z x2-y2 . 8.8. Najděte stacionární body funkce y = y(x) dané implicitně rovnicí 3x2 + 2xy - y2 - 3y + x - 5 4 = 0 a zjistěte, zda jsou v těchto bodech lokální extrémy. Implicitně zadané zobrazení mezi prostory vyšších dimenzí 133 8.9. Najděte stacionární body funkce z = f (x, y) a zjistěte, zda jsou v těchto bodech lokální extrémy: a) x2 + y2 + z2 - 2x + 2y - 4z - 10 = 0; b) 2x2 + 2y2 + z2 + 8xz - z + 8 = 0. Nic na světě nemůže nahradit vytrvalost. Nenahradí ji ani talent; nic není běžnější než neúspěšný člověk s talentem. Ani genialita; nedoceněný génius je téměř příslovečný. Pouze vytrvalost a odhodlání jsou všemocné. (C. Coolidge) Kapitola 9 Vázané extrémy V úvodu Kapitoly 6 jsme zdůraznili, že vyšetřování extrémů funkcí je jednou z nejdůleži- tějších částí diferenciálního počtu. V předchozích dvou kapitolách jsme si připravili aparát k tomu, abychom mohli vyšetřovat tzv. vázané extrémy. Je to vlastně v jistém smyslu spe- ciální případ lokálních extrémů, avšak metody uvedené v Kapitole 6 zde nejsou vhodné. V prvním odstavci vysvětlíme tzv. metodu Lagrangeových multiplikátorů, kde extrémy původní funkce vyšetřujeme pomocí přiřazené, tzv. Lagrangeovy funkce. Ve druhém od- stavci studujeme vázané extrémy pomocí nerovností mezi průměry čísel. 9.1 Metoda Lagrangeových multiplikátorů Začněme následující úlohou. Určete absolutní minimum a maximum funkce u = f (x, y, z) na množině M : x2 + y2 + z2 1, x, y, z 0 (konkrétní tvar funkce f není v tuto chvíli podstatný). Vyšetřujeme-li při řešení úlohy funkci f na části hranice tvořené kulovou plochou, vyjádříme z = 1 - x2 - y2 a funkci f (x, y, 1 - x2 - y2) vyšetřujeme na množině ~M : x2 + y2 1, x, y 0, tj. najdeme stacionární body uvnitř ~M a vyšetříme funkci na hranici množiny ~M. Provést toto na části hranice tvořené čtvrtkružnicí znamená vyjádřit y = 1 - x2 a dosadit do f , tj. vyšetřovat funkci f (x, 1 - x2, 0) pro x [0, 1]. Tímto postupem převedeme původní problém vyšetření funkce na hranici na studium extrémů funkce jedné proměnné. Je zřejmé, že tato metoda je nepraktická zejména při větším počtu proměnných. V tomto odstavci si popíšeme tzv. metodu Lagrangeových multiplikátorů, která řešení úlohy podstatně usnadní. Definice 9.1. Necht' f je funkce n proměnných, M D( f ), x = [x 1 , . . . , x n ] M. Existuje-li okolí O(x) bodu x takové, že pro všechna x M O(x) platí f (x) f (x), ( f (x) f (x)), říkáme, že funkce f má v bodě A lokální minimum (maxi- mum) vzhledem k množině M. Jsou-li nerovnosti pro x = x ostré, mluvíme o ostrých lokálních extrémech vzhledem k M. 136 Vázané extrémy V této kapitole se zabýváme případem, kdy množina M je zadána systémem rovností g1(x1, . . . , xn) = 0 g2(x1, . . . , xn) = 0 ... (9.1) gm(x1, . . . , xn) = 0, kde 1 m < n. V tomto případě se často místo termínu lokální extrém vzhledem k M používá termín lokální extrém vázaný podmínkami (9.1) nebo prostě vázaný lokální ex- trém. Nejprve zformulujme nutnou podmínku pro existenci vázaného extrému. Věta 9.1. Necht' funkce n proměnných f, g1, . . . , gm, 1 m < n, mají spojité parciální derivace 1. řádu v otevřené množině U Rn a necht' v každém bodě množiny U má matice g1 x1 . . . g1 xn . . . . . . . . . . . . . . gm x1 . . . gm xn (9.2) hodnost m. Bud' M množina všech bodů [x1, . . . , xn], které vyhovují rovnicím (9.1). Má- li funkce f v bodě a = [a1, . . . , an] M lokální extrém vzhledem k M, existují reálná čísla 1, . . . , m tak, že jsou splněny rovnosti f x j (a) - m k=1 k gk x j (a) = 0, j = 1, . . . , n. (9.3) Poznámka 9.1. i) Dříve než přistoupíme k důkazu tvrzení, objasněme si význam rov- nosti (9.3). Zprvu uvažujme nejjednodušší případ n = 2, m = 1. Pak M je křivka v R2 zadaná rovnicí g(x, y) = 0 (píšeme x, y, [x, y] a g místo x1, x2, a a g1). Rovnost (9.3) můžeme psát ve tvaru rovnosti dvou dvojrozměrných vektorů ( fx (x , y ), fy(x , y )) = (gx (x , y ), gy(x , y )). Když si uvědomíme, že vektor (gx (x, y), gy(x, y)) je normálovým vektorem ke křivce g(x, y) = 0 v bodě [x, y] a vektor ( fx (x, y), fy(x, y)) je normálovým vektorem k vrstevnici funkce f na úrovni c = f (x, y), vztah (9.3) říká, že vektory ( fx (x, y), fy(x, y)) a (gx (x, y), gy(x, y)) jsou lineárně závislé. Jinými slovy, křivky g(x, y) = 0 a f (x, y) = f (x, y) mají společnou tečnu v bodě [x, y]. Tato skutečnost je v plném souladu s úvahami, které jsme použili při řešení Příkladů 6.6. ii) V obecném případě necht' f , gk jsou vektory parciálních derivací funkcí f, gk, k = 1, . . . , m a necht' M je množina určená systémem (9.1). Pak v souladu s terminologií z kapitoly o implicitních funkcích vztah (9.3) říká, že f (a) NM (a), kde NM (a) je normálový prostor k M v bodě a. Metoda Lagrangeových multiplikátorů 137 iii) Funkce L(x, ) = L(x1, . . . , xn, 1, . . . , , m) = f (x1, . . . , xn) - m k=1 k gk(x1 . . . , xn) se nazývá Lagrangeova funkce a konstanty k Lagrangeovy multiplikátory. Princip me- tody Lagrangeových multiplikátorů spočívá v tom, že do Lagrangeovy funkce jsou ,,zabu- dovány" vazebné podmínky a místo vyšetřování funkce f na M vyšetřujeme Lagrangeovu funkci L bez omezujících podmínek. Metodu multiplikátorů lze použít i v případě, kdy množina M je zadána nikoliv jen systémem rovností, ale i systémem nerovností. Důkaz Věty 9.1. Předpokládejme nejprve, že funkce gk jsou afinní, tj. gk(x) = uk, x + k, kde uk Rn, k R, k = 1, . . . , m. Předpokládejme, že neexistuje m-tice multiplikátorů, pro něž platí (9.3), pak f (a) / Lin{g1(a), . . . , gm(a)}. To znamená, že existuje h Rn, h Lin{g1(a), . . . , gm(a)} ( značí ortogonální doplněk) takové, že f (a), h = 0. Položme y = a + h. Vzhledem k tomu, že funkce gk jsou afinní a h Lin{g1(a), . . . , gm(a)} = = Lin{u1, . . . , um}, je gk(y) = uk, a + h + k = gk(a) + uk, h = 0, tedy y M. Z diferencovatelnosti funkce f dostáváme f (y) = f (a) + f (a), h + (h) = f (a) + f (a), h + (h) , kde lim0 (h) . Odtud f (y) - f (a) = f (a), h + (h) . Je-li nyní např. f (a), h > 0, limitním přechodem pro 0 vidíme, že pro || dosta- tečně malá je f (y) > f (a) pro > 0 a f (y) < f (a) pro < 0. To je ve sporu s tím, že f má v bodě a lokální extrém vzhledem k M. Nyní vyšetřeme obecný případ, kdy funkce gk nejsou afinní. Pak bod y sestrojený v předchozí části důkazu již nemusí být prvkem množiny M, proto místo tohoto bodu musíme uvažovat jiný bod. Geometricky je jeho nalezení naznačeno na obrázku 9.1. Označme v1, . . . , vn-m bázi prostoru Lin{g1(a), . . . , gm(a)} a uvažujme systém rovnic gk(a + h + r) = 0, k = 1, . . . , m, vk,r = 0, k = 1, . . . , n - m, (9.4) 138 Vázané extrémy pM v g (a) a h r() obr. 9.1 kde r Rn. Pak jsou vzhledem k nezávislosti vektorů gk(a) a výběru vektorů vk splněny předpoklady Věty 8.3 a systém rovnic (9.4) určuje implicitně v okolí bodu [,r] = [0, 0] R × Rn funkci r = r() : R Rn. Podle Věty 8.3 pro její derivaci podle dostáváme r ()|=0 = 0, což podle l'Hospitalova pravidla znamená, že lim 0 r() = 0. (9.5) Nyní položme y = a + h + r(). Podobně jako v první části důkazu platí f (y) = f (a) + f (a), h + r() + (h) = = f (a) + f (a), h + f (a), r() + (h) a stejnou úvahou jako výše v libovolném okolí bodu a najdeme y, ~y M taková, že f (y) < f (a) i f (y) > f (a) ­ spor. Definice 9.2. Necht' množina M Rn je dána systémem rovnic (9.1). Řekneme, že bod a M je stacionární bod funkce f na M, jestliže existují Lagrangeovy multiplikátory 1, . . . , m takové, že platí (9.3). Věta 9.1 říká, že v případě diferencovatelných funkcí f a gk lokální extrém vzhledem k množině M může nastat pouze ve stacionárním bodě. O tom, zda ve stacionárním bodě nastává, nebo nenastává lokální extrém, rozhodneme pomocí vlastností matice druhých derivací Lagrangeovy funkce L (x, ). Věta 9.2. Necht' funkce f a gk, k = 1, . . . , m mají spojité parciální derivace druhého řádu v bodě a, který je stacionárním bodem f na M, a 1, . . . , m jsou příslušné Lagrangeovy multiplikátory, tj. L (a, ) = 0. Dále necht' matice (9.2) má pro x = a hodnost m. Jestliže pro každé 0 = h Lin{g1(a), . . . , gm(a)} platí L (a)h, h > 0 (< 0), (9.6) Metoda Lagrangeových multiplikátorů 139 má funkce f v bodě a ostré lokální minimum (maximum) vzhledem k M. Jestliže existují ~h, h Lin{g1(a), . . . , gm(a)} taková, že L (a)~h, ~h > 0, L (a)h, h < 0, (9.7) v bodě a lokální extrém vzhledem k M nenastává. Důkaz. Především si všimněme, že pro x M je f (x) = L(x), tj. x M je lokálním extrémem f vzhledem k M, právě když je lokálním extrémem Lagrangeovy funkce L. Podobně jako v důkazu Věty 9.1 můžeme body y M vyjádřit ve tvaru y = a +h +r(), kde h Lin{g1(a), . . . , gm(a)} a r : R Rn splňuje (9.5). Pomocí Taylorova vzorce dostáváme f (y) =L(y) = L(a) + L (a), h + r() + 1 2 L (~a)(h + r(), (h + r() = f (a) + 2 2 L (~a) h + r() , h + r() , (9.8) kde ~a leží na úsečce spojující a a y (využili jsme faktu, že a je stacionární bod, tj. L (a) = 0). Předpokládejme, že platí (9.6), pak vzhledem ke spojitosti druhých derivací funkce L stejné nerovnosti platí i pro ~a místo a, je-li || dostatečně malé. Limitním přechodem pro 0 v (9.8) dostáváme pro || dostatečně malé sgn[ f (y) - f (a)] = sgn L (a)h, h , tedy v bodě a nastává lokální extrém f vzhledem k M, a to minimum, je-li L (a)h, h > 0, a maximum, platí-li opačná nerovnost. Nyní předpokládejme, že existují ~h, h Lin{g1(a), . . . , gm(a)} taková, že platí (9.7). Položme y1 = a + ~h + r(), y2 = a + h + r(). Stejným způsobem jako v předchozí části důkazu lze ukázat, že pro || dostatečně malá platí f (y1) > f (a) a f (y2) < f (a), tj. v bodě a lokální extrém f vzhledem k M nenastává. Nyní si tvrzení posledních dvou vět shrňme do praktického návodu hledání vázaných extrémů funkcí se spojitými druhými derivacemi. 1. Vytvoříme Lagrangeovu funkci L(x, ) = f (x) - m k=1 k gk(x). 2. Určíme stacionární body f vzhledem k M, tj. určíme x1, . . . , xn a 1, . . . , m jako řešení systému n + m rovnic xi L(x, ) = 0, i = 1, . . . , n, gj (x) = 0, j = 1, . . . , m. Necht' a M je takto vypočtený stacionární bod f vzhledem k M a 1, . . . , m jsou příslušející multiplikátory. 140 Vázané extrémy 3. Ze systému m lineárních rovnic g1 x1 (a)h1 + + g1 xn (a)hn = 0, ... gm x1 (a)h1 + + gm xn (a)hn = 0 pro proměnné h1, . . . , hn vypočteme m proměnných v závislosti na n - m zbývajících. Takto vypočtené vektory h Rn jsou prvky tečného prostoru k M v bodě a, TM (a) = = Lin{g1(a), . . . , gm(a)}. Tento výpočet je možný, nebot' podle předpokladu má ma- tice (9.2) hodnost m. Pro určitost předpokládejme, že jsme vypočetli h1, . . . , hm v závis- losti na hm+1, . . . , hn. 4. Určíme druhý diferenciál Lagrangeovy funkce vzhledem k proměnným x ve sta- cionárním bodě a d2 L(a, ) = n i, j=1 2L xi x j (a)hi h j = L (a)h, h , za 1, . . . , m dosadíme příslušející multiplikátory a za h1, . . . , hm vyjádření z předcho- zího bodu. 5. Vyšetříme definitnost vzniklé kvadratické formy n - m proměnných (je to vlastně restrikce kvadratické formy d2L(a, ) na tečný prostor TM (a)). Je-li tato forma pozitivně (negativně) definitní, nastává v bodě a ostré lokální minimum (maximum), a je-li indefi- nitní, v bodě a vázaný extrém nenastává. Příklad 9.1. i) Najděte lokální extrémy funkce u = x2 a2 + y2 b2 + z2 c2 , a > b > c, na množině M : x2 + y2 + z2 = 1. Řešení. Nejprve sestavíme Lagrangeovu funkci úlohy a určíme stacionární body. L(x, y, z, ) = x2 a2 + y2 b2 + z2 c2 - (x2 + y2 + z2 - 1). Derivováním a přidáním vazebné podmínky dostáváme Lx = 2x a2 - 2x = 0 = x 1 a2 - = 0, Ly = 2y b2 - 2y = 0 = y 1 b2 - = 0, Lz = 2y c2 - 2z = 0 = z 1 c2 - = 0, x2 + y2 + z2 = 1. Metoda Lagrangeových multiplikátorů 141 Z prvních tří rovnic plyne, že vždy dvě ze souřadnic x, y, z musí být nulové (nebot' pouze jeden z výrazů v závorkách může vždy být nulový). Dostáváme šestici stacionárních bodů a příslušejících multiplikátorů P1,2 = [1, 0, 0], 1,2 = 1 a2 , P3,4 = [0, 1, 0], 3,4 = 1 b2 , P5,6 = [0, 0, 1], 56 = 1 c2 . Určíme druhý diferenciál funkce L (použijeme obvyklý zápis s dx, dy, dz místo h1, h2, h3) d2 L(x, y, z, ) = 2 1 a2 - (dx)2 + 2 1 b2 - (dy)2 + 2 1 c2 - (dz)2 a diferencováním vazebné podmínky dostáváme 2x dx + 2y dy + 2z dz = 0. Odsud plyne, že v bodech P1,2 je dx = 0, v bodech P3,4 je dy = 0 a v P5,6 je dz = 0. Využitím této skutečnosti vyšetřeme definitnost formy d2L na tečném prostoru v bodech P1-6 ke kouli x2 + y2 + z2 = 1. P1,2 : d2 L = 2( 1 b2 - 1 a2 )(dy)2 + 2( 1 c2 - 1 a2 )(dz)2 , P3,4 : d2 L = 2( 1 a2 - 1 b2 )(dx)2 + 2( 1 c2 - 1 b2 )(dz)2 , P5,6 : d2 L = 2( 1 c2 - 1 b2 )(dx)2 + 2( 1 c2 - 1 b2 )(dz)2 . Protože a > b > c, je kvadratická forma v bodech P1,2 pozitivně definitní, v bodech P5,6 negativně definitní a v bodech P3,4 indefinitní. To znamená, že v P1,2 je ostré lokální minimum (rovno 1 a2 ), v P5,6 je ostré lokální maximum (rovno 1 c2 ) a v bodech P3,4 extrém nenastává. ii) Odvod'te vzorec pro vzdálenost bodu x = [x 1 , . . . , x n ] od roviny a1x1 + + + anxn = b v prostoru En. Řešení. Označme a = [a1, . . . , an], x = [x1, . . . , xn]. Pak můžeme úlohu zapsat ve vek- torovém tvaru x - x, x - x min, a, x = b. Je-li x bodem minima této úlohy, je také bodem minima úlohy 1 2 x - x , x - x min, a, x = b (tato úvaha nám usnadní derivování). Lagrangeova funkce této úlohy je L(x, ) = 1 2 x - x , x - x - ( a, x - b) = 1 2 n k=1 (xk - x k )2 - ( n k=1 ak xk - b). Derivováním dostáváme (používáme pro stručnost vektorový zápis) Lx = x - x - a = 0, a, x = b. 142 Vázané extrémy Z první rovnice x = x + a a dosazením do druhé rovnice a, x + a = b, odtud = (b - a, x ) ||a||2 = x - x = b - a, x ||a||2 a, tedy x - x, x - x = |b - a, x | ||a|| = |b - a1x 1 - - anx n | a2 1 + + a2 n , což je vzorec dobře známý z lineární algebry. iii) Určete obsah elipsy, která vznikne při řezu elipsoidu x2 a2 + y2 b2 + z2 c2 = 1 rovinou Ax + By + Cz = 0 (obsah elipsy je P = pq, kde p, q jsou délky poloos elipsy). Řešení. K určení obsahu elipsy potřebujeme určit délky jejích poloos. To jsou vzdále- nosti bodů ležících zároveň na elipsoidu i v řezné rovině, které mají nejmenší, resp. největší vzdálenost od počátku. Vzdálenost bodu [x, y, z] od počátku je dána vztahem x2 + y2 + z2. Místo této funkce budeme hledat extrémy funkce u = x2 + y2 + z2, která se snáze derivuje, a vypočtený výsledek odmocníme. Řešíme tedy úlohu u = x2 + y2 + z2 max(min), x2 a2 + y2 b2 + z2 c2 = 1, Ax + By + Cy = 0. Lagrangeova funkce úlohy je L(x, y, z, , ) = x2 + y2 + z2 - (x2 a2 + y2 b2 + z2 c2 - 1) - - (Ax + By + Cy). Jejím derivováním a připojením vazebných podmínek dostáváme systém rovnic 2x - 2x a2 - A = 0, 2y - 2y b2 - B = 0, 2z - 2z c2 - C = 0, x2 a2 + y2 b2 + z2 c2 = 1, Ax + By + Cz = 0. Vynásobíme-li první rovnici x, druhou y, třetí z a sečteme je, pak využitím vazebných podmínek dostáváme rovnost x2 + y2 + z2 = , tedy umax = max a umin = min. Vyjádříme-li z prvních tří rovnic x, y, z a dosadíme do rovnice roviny, obdržíme rovnici A2 2 1 + a2 + B2 2 1 + b2 + C2 2 1 + c2 = 0. Protože = 0 (jinak x = y = z = 0 a tento bod neleží na elipsoidu), z této rovnice vynásobením jmenovateli zlomků dostáváme A2 1 - b2 1 - c2 + B2 1 - a2 1 - c2 + +C2 1 - a2 1 - b2 = 0. Vázané extrémy a nerovnosti 143 Tuto rovnici můžeme přepsat do tvaru kvadratické rovnice 2 + K1 + K2, kde K2 = a2b2c2(A2 + B2 + C2) A2a2 + B2b2 + C2c2 . Koeficient K1 můžeme také vyjádřit explicitně, jeho hodnota však není podstatná, nebot' rovnici nemusíme řešit. Nepotřebujeme totiž znát kořeny rovnice 1,2, nýbrž pouze je- jich součin 12 ­ ve skutečnosti nepotřebujeme znát délky poloos, stačí nám znát jejich součin. Tento součin je roven absolutnímu členu K2 v kvadratické rovnici. Protože jsme hledali extrémy funkce x2 + y2 + z2 místo funkce x2 + y2 + z2, je hledaná plocha elipsy S = 12 = K2 = abc A2 + B2 + C2 A2a2 + B2b2 + C2c2 . 9.2 Vázané extrémy a nerovnosti V tomto odstavci si ukážeme, jak lze v některých speciálních (ale poměrně často se vy- skytujících) případech hledat vázané extrémy, aniž by bylo nutné použít aparát Lagrange- ových multiplikátorů. I když je tento postup poněkud vzdálený od metod diferenciálního počtu, uvádíme jej zde pro jeho výbornou praktickou použitelnost. Čtenáři doporučujeme všechny úlohy tohoto odstavce vyřešit pro srovnání také metodou Lagrangeových mul- tiplikátorů. Nejprve připomeňme pojem kvadratického, aritmetického, geometrického a harmo- nického průměru n-tice čísel. Necht' x1, . . . , xn jsou kladná reálná čísla, označme Qn(x1, x2, . . . , xn) = x2 1 + x2 2 + + x2 n n , An(x1, x2, . . . , xn) = x1 + x2 + + xn n , Gn(x1, x2, . . . , xn) = n x1 x2 . . . xn, Hn(x1, x2, . . . , xn) = n 1 x1 + 1 x2 + + 1 xn . Věta 9.3. Necht' x = [x1, . . . , xn] je n-tice kladných čísel. Platí nerovnosti Qn(x) An(x) Gn(x) Hn(x), přičemž rovnosti nastávají, právě když x1 = x2 = = xn. Důkaz. Viz skriptum [H-K-S]. Kromě nerovností mezi průměry je účinným nástrojem i tzv. Cauchyova nerovnost. 144 Vázané extrémy Věta 9.4. Pro libovolné dvě n-tice reálných čísel x = (x1, . . . , xn), y = (y1, . . . , yn) platí n k=1 |xk yk| n k=1 x2 k 1 2 n k=1 y2 k 1 2 , přičemž rovnost nastane, právě když existuje reálné t takové, že yk = txk, k = 1, . . . , n, tj. právě když vektory x a y jsou lineárně závislé. Důkaz. Viz [H-K-S]. Příklad 9.2. i) Mezi všemi trojúhelníky s konstantním obvodem o určete ten, který má největší obsah. Řešení. Vyjdeme z Heronova vzorce pro obsah trojúhelníka P = s(s - a)(s - b)(s - c), kde a, b, c jsou strany trojúhelníka a s = (a + b + c)/2 = o/2 je tzv. poloperimetr. Označíme-li x = s - a, y = s - b, z = s - c a uvážíme-li, že najít maximum funkce P je totéž jako najít maximum funkce ~P = s- 1 3 P 2 3 , můžeme úlohu formulovat takto: ~P(x, y, z) = 3 xyz max, x + y + z = o 2 . Využitím nerovnosti mezi algebraickým a geometrickým průměrem dostáváme ~P(x, y, z) (x + y + z)/3 = o/6, přičemž rovnost nastává, právě když x = y = z = o/2. Máme tedy systém rovnic s - a = o 6 , s - b = o 6 , s - c = o 6 , jehož řešením je a = b = c = o/3. Tedy mezi všemi trojúhelníky s daným obvodem o má největší obsah rovnostranný trojúhelník a tento maximální obsah je Pmax = o2 12 3 . ii) Mezi všemi trojicemi kladných čísel x, y, z s konstantním součtem a najděte ta, pro která je součet převrácených hodnot minimální. Řešení. Z nerovnosti mezi harmonickým a aritmetickým průměrem dostáváme 3 1 x + 1 y + 1 z x + y + z 3 = a 3 , přičemž rovnost nastane, právě když x = y = z = a/3. Odtud 1 x + 1 y + 1 z 9 x+y+z = 9 a , tedy součet převrácených hodnot je minimální, jsou-li všechna tři čísla stejná a rovna a 3 . Vázané extrémy a nerovnosti 145 iii) Na elipsoidu x2 a2 + y2 b2 + z2 c2 = 1 najděte bod v prvním oktantu s vlastností, že objem čtyřstěnu tvořeného souřadnými stěnami a tečnou rovinou k elipsoidu v tomto bodě je minimální. Řešení. Nejprve připomeňme, že objem čtyřstěnu vypočteme podle vzorce V = 1 6 x0y0z0, kde [x0, 0, 0], [0, y0, 0], [0, 0, z0] jsou průsečíky tečné roviny se souřadnými osami (sestrojíme-li trojboký hranol se základnou tvořenou trojúhelníkem s vrcholy [0,0,0], [x0,0,0], [0, y0, 0] a výškou z0, jeho objem je 1 2 x0 y0z0 a je trojnásobkem objemu daného čtyřstěnu). Vyjádřením proměnné z z rovnice elipsoidu nebo pomocí derivace implicitní funkce snadno ověříme, že rovnice tečné roviny k elipsoidu v bodě [x, y, z] je zz c2 + y y b2 + x x a2 = 1. (9.9) Odtud dostáváme, že úseky vyt'até tečnou rovinou na souřadných osách jsou x0 = a2 x (položíme y = 0 = z v (9.9)), z0 = b2 y , z0 = c2 z . Řešíme tedy úlohu V = 1 6 a2b2c2 xyz min, x2 a2 + y2 b2 + z2 c2 = 1, která je, pokud jde o extremální bod, ekvivalentní úloze ~V = (6V )- 1 3 = 1 3 abc 3 x a y b z c max, x2 a2 + y2 b2 + z2 c2 = 1. Z nerovnosti mezi kvadratickým a geometrickým průměrem dostáváme, že ~V je maxi- mální, jestliže x a = y b = z c , což vzhledem k vazebné podmínce nastane, když x = 3a, y = 3b, z = 3c, a pro tyto hodnoty dostáváme minimální objem Vmin = abc 18 3 . iv) Na elipsoidu x2 + y2 4 + z2 9 = 1 najděte bod, který je nejblíže rovině x +y+z = 2 14. Řešení. Pro vzdálenost bodu [x0, y0, z0] od roviny ax + by + cz = d platí vzorec (viz Příklad 9.1 ii)) d = |ax0 + by0 + cz0 - d| a2 + b2 + c2 . Protože elipsoid leží pod rovinou x + y + z = 2 14, budeme řešit úlohu - x + y + z - 2 14 3 min, x2 + y2 4 + z2 9 = 1, (9.10) která je (pokud jde o bod, v němž je dosaženo minima) ekvivalentní úloze x + y + z max, x2 + y2 4 + z2 9 = 1. 146 Vázané extrémy Tuto úlohu vyřešíme pomocí Cauchyovy nerovnosti. Platí x + y + z = x + 2 y 2 + 3 z 3 x2 + y2 4 + z2 9 1 + 4 + 9 = 14, přičemž rovnost nastává, právě když jsou vektory (x, y 2 , z 3 ), (1, 2, 3) lineárně závislé, tj. existuje t R takové, že x = t, y 2 = 2t, z 3 = 3t. Vezmeme-li v úvahu vazebnou podmínku x2 + y2 4 + z2 9 = 1, dostáváme t = 1 14 , tj. (hledaný bod leží v I. kvadrantu) x = 1 14 , y = 4 14 , z = 9 14 a dosazením do (9.10) dostáváme dmin = 14 3 . Cvičení 9.1. Určete vázané extrémy funkce f na množině určené rovnostmi: a) f (x, y, z) = xy2z3, x + 2y + 3z = a, a, x, y, z > 0 b) f (x, y, z) = sin x sin y sin z, x + y + z = 2 c) f (x, y, z) = xyz, x2 + y2 + z2 = 1, x + y + z = 0 d) f (x, y, z) = xy + yz, x2 + y2 = 2, y + z = 2, x, y, z > 0 e) f (x1, . . . , xn) = x2 1 + + x2 n, x1 a1 + + xn an = 1, ai > 0, i = 1, . . . , n f) f (x1, . . . , xn) = 1 x1 +. . .+ n xn , 1x1 + + nxn = 1, i , i , xi > 0, i = 1, . . . , n g) f (x1, . . . , xn) = x1 1 . . . xn n , x1 + + xn = 1, i > 0, i = 1, . . . , n 9.2. a) Do elipsoidu x2 a2 + y2 b2 + z2 c2 = 1 vepište hranol s maximálním objemem. Tento objem určete. b) Do úseče eliptického paraboloidu z c = x2 a2 + y2 b2 , z c vepište hranol s maximálním objemem. Tento objem určete. c) Do kužele s poloměrem podstavy r a výškou h vepište hranol s maximálním obje- mem. Tento objem určete. d) Mezi všemi čtyřbokými hranoly s konstantním povrchem P najděte ten, který má největší objem. Tento objem určete. e) Na elipse x2 a2 + y2 b2 = 1 najděte bod s vlastností, že normála sestrojená v tomto bodě má největší vzdálenost od počátku. f) Na elipsoidu v prostoru jsou dány dva body A = [a1, a2, a3], B = [b1, b2, b3]. Určete bod C na elipsoidu tak, aby vzniklý trojúhelník měl maximální obsah. Vázané extrémy a nerovnosti 147 9.3. Řešte extremální úlohy: a) 1 2 ||x||2 min, u, x = , v, x = , x, u, v Rn, , R; b) Ax, x min, uk, x = k, k = 1, . . . , n - 1, x, uk Rn, k R, dim{Lin{u1, . . . , un-1}} = n - 1. Všechny dobré zásady jsou již napsány. Nyní ještě zbývá je uskutečnit. (B. Pascal) Kapitola 10 Generování grafiky v Maplu Zde se využití počítače přímo nabízí. Tato část matematické analýzy se probírá v době, kdy nejsou probrány odpovídající partie z geometrie (zimní semestr dru- hého ročníku učitelského studia). Studenti proto často postrádají geometrickou představu v prostoru, a tak jsou visualizační schopnosti počítačových systémů velmi vítány. 10.1 Graf funkce dvou proměnných Všimněme si podrobněji problematiky tvorby grafů reálné funkce dvou reálných proměnných pomocí programu Maple V. Zaměříme se zejména na případy, kdy počítačem získaný výstup (v dalším nazývaný PC-graf), neodpovídá grafu funkce (Definice 1.2). Definujme funkci f (x, y) = sin(x) cos(y): > f:=(x,y)->sin(x)*cos(y); f := ( x, y ) sin( x ) cos( y ) a sestrojme PC-graf funkce f (obr. 10.1): > plot3d(f, -Pi..Pi, -Pi..Pi); Stejně jednoduše je možno získat i PC-graf plochy dané parametricky, např. x = sin u cos v, y = sin u sin v, z = cos u, u [0, ], v [0, 2] (obr. 10.2): > with(plots): > plot3d([sin(u)*cos(v),sin(u)*sin(v),cos(u)],u=0..Pi, > v=0..2*Pi,style=patch, scaling=constrained, > axes=framed, labels=[x,y,z]); Parametrem scaling=constrained jsme dosáhli stejného měřítka na osách výsledného PC-grafu. Porovnejme PC-graf na obrázku 10.2 s PC-grafem 150 Generování grafiky v Maplu obr. 10.1 -1 -0.5 0 0.5 1 x -1 -0.5 0 0.5 1 y -1 -0.5 0 0.5 1 z obr. 10.2 -1 -0.5 0 0.5 1 x -1 -0.5 0 0.5 1 y -1 -0.5 0 0.5 1 z obr. 10.3 na obrázku 10.3, na kterém je tatáž koule generovaná bez použití tohoto parame- tru: > plot3d([sin(u)*cos(v),sin(u)*sin(v),cos(u)],u=0..Pi, > v=0..2*Pi,style=patch, axes=framed, labels=[x,y,z]); Jakým způsobem probíhá konstrukce PC-grafu? Zadáme funkční předpis a množinu bodů [x, y], pro které chceme funkci zobrazit. Tato množina je typu xmin, xmax × ymin, ymax . Na ní pak program vytvoří sít', v jejichž uzlových bo- dech numericky spočítá funkční hodnoty (tyto jsou uloženy do objektu PLOT3D). Hustotu sítě regulujeme pomocí parametru grid=[m,n], kde m a n udává po- čet uzlových bodů ve směru os x a y. Implicitní nastavení tohoto parametru je Graf funkce dvou proměnných 151 [25,25]. Funkční hodnoty jsou poté podle interpolačních pravidel pospojovány a PC-graf zobrazen na výstupním zařízení. Tento postup však zřejmě může vést k zavádějícím výsledkům. Pro ilustraci např. vytvořme PC-graf funkce g(x, y) = sin(2x) sin(2y), pro x a y z intervalu 0, 25 beze změny implicitního nastavení parametrů: > plot3d(sin(2*Pi*x)*sin(2*Pi*y), x=0..25, y=0..25, > axes=boxed, labels=[x,y,z]); Podrobnější analýzou zadané funkce však zjistíme, že získaný PC-graf (obr. 10.4) neodpovídá skutečnosti, funkce sin(2x) a sin(2y) jsou periodické s periodou 1 a tomu PC-graf na obrázku 10.4 neodpovídá. Zhuštěním sítě dostáváme výsledek bližší skutečnému chování uvažované funkce (obr. 10.5): > plot3d(sin(2*Pi*x)*sin(2*Pi*y), x=0..25, y=0..25, > axes=boxed, grid=[60,60], labels=[x,y,z]); 0 5 10 15 20 25 x 0 5 10 15 20 25 y -1 -0.5 0 0.5 1 z obr. 10.4 0 5 10 15 20 25 x 0 5 10 15 20 25 y -1 -0.5 0 0.5 1 z obr. 10.5 Další problémy vznikají při tvorbě grafů nespojitých funkcí. Nejjednodušší situace nastává v případě, kdy studovaná funkce není v bodě [x0, y0] spojitá (viz Definice 2.3), ale v tomto bodě existuje konečná limita. Pak můžeme bud' změnit hustotu uzlových bodů nebo funkci vhodným způsobem dodefinovat. Příklad 10.1. Vytvořte PC-graf funkce f (x, y) = x2 y x2 + y2 . Příkazem: > f:=(x,y)->(x^2*y)/(x^2+y^2); f := ( x, y ) x2 y x2 + y2 152 Generování grafiky v Maplu zadáme funkci a příkazem: > plot3d(f, -3..3, -3..3, orientation=[-57,38], > axes=framed, labels=[x,y,z]); získáme PC-graf zobrazený na obr. 10.6. Bod, ve kterém vyšetřovaná funkce není spojitá, je při této hustotě sítě totožný s uzlovým bodem a program v něm nemůže spočítat funkční hodnotu. Při zobra- zování na výstupním zařízení je funkční hodnota v bodě nespojitosti vynechána a zobrazený PC-graf neodpovídá v okolí bodu [0, 0] grafu funkce. Všimněme si u tohoto příkladu podrobně struktury Mapleovské grafiky. Generujme graf zkou- mané funkce pro x a y z intervalu -3, 3 při hustotě sítě [7, 7] a podívejme se, jaká je struktura vytvořeného objektu PLOT3D: > p:=plot3d(f, -3..3, -3..3, orientation=[-57,38], > axes=framed,grid=[7,7],color=black,labels=[x,y,z]); > p; p := PLOT3D(GRID(-3...3., -3...3., [[-1.500000000000000, -1.384615384615385, -.9000000000000000, 0, .9000000000000000, 1.384615384615385, 1.500000000000000] , [-.9230769230769231, -1., -.8000000000000000, 0, .8000000000000000, 1., .9230769230769231], [ -.3000000000000000, -.4000000000000000, -.5000000000000000, 0, .5000000000000000, .4000000000000000, .3000000000000000], [ 0, 0, 0, FAIL, 0, 0, 0 ], [-.3000000000000000, -.4000000000000000, -.5000000000000000, 0, .5000000000000000, .4000000000000000, .3000000000000000] , [-.9230769230769231, -1., -.8000000000000000, 0, .8000000000000000, 1., .9230769230769231], [ -1.500000000000000, -1.384615384615385, -.9000000000000000, 0, .9000000000000000, 1.384615384615385, 1.500000000000000]], COLOR( RGB, 0, 0, 0 )), AXESLABELS( x, y, z ), TITLE( ), AXESSTYLE( FRAME ), PROJECTION( -57., 38., 1 )) V objektu PLOT3D jsou uloženy funkční hodnoty v uzlových bodech sítě, které jsou počítány numericky postupně po řadách. Všimněme si funkčních hodnot pro body [0, -3], [0, -2], . . . . Zde skutečně výpočet funkční hodnoty pro bod [0, 0] ,,havaruje" (FAIL). Následně je tento objekt použit při zobrazování na výstupním zařízení a chybějící funkční hodnota v bodě [0, 0] je vynechána (obr. 10.7). Změníme tedy hustotu uzlových bodů tak, aby bod [0, 0] (bod nespojitosti) nebyl uzlovým bodem (obr. 10.8): Graf funkce dvou proměnných 153 -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y -1.5 -1 -0.5 0 0.5 1 1.5 z obr. 10.6 -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y -1.5 -1 -0.5 0 0.5 1 1.5 z obr. 10.7 > plot3d(f, -3..3, -3..3, orientation=[-57,38], > axes=framed, grid=[30,30], labels=[x,y,z]); Jinou možností je dodefinovat funkční hodnotu v bodě [0, 0] tak, aby funkce f v tomto bodě byla spojitá. Poté generujme PC-graf získané spojité funkce: > g:=proc(x,y) if x=0 and y=0 then 0 > else (x^2*y)/(x^2+y^2) fi end: > plot3d(g, -3..3, -3..3, orientation=[-57,38], > axes=framed, labels=[x,y,z]); Obdržíme výsledek znázorněný na obr. 10.9. -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y -1.5 -1 -0.5 0 0.5 1 1.5 z obr. 10.8 -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y -1.5 -1 -0.5 0 0.5 1 1.5 z obr. 10.9 Příklad 10.2. Funkce f (x, y) = sin xy xy 154 Generování grafiky v Maplu není spojitá v bodech ležících na osách x a y, ale má zde konečnou limitu rovnu jedné. Při pokusu o tvorbu PC-grafu příkazem: > plot3d(sin(x*y)/(x*y), x=-3..3, y=-3..3, axes=framed, > color=black, orientation=[150,50], labels=[x,y,z], > tickmarks=[7,7,3]); dostáváme PC-graf na obrázku 10.10. Zde jsou opět patrné nespojené body, ve kterých výpočet funkčních hodnot ,,havaroval" (body nespojitosti na osách x a y opět vycházejí do uzlových bodů sítě). Vytvořme tedy PC-graf spojité funkce (obr. 10.11) (dodefinujme funkci tak, aby byla spojitá) g(x, y) = 1 pro x = 0 nebo y = 0, f (x, y) jinak. > g:=proc(x,y) if x=0 or y=0 then 1 > else sin(x*y)/(x*y) fi end: > plot3d(g, -3..3, -3..3, axes=framed, > orientation=[150,50], color=black, labels=[x,y,z], > tickmarks=[7,7,3]); -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y 0 0.5 1 z obr. 10.10 -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y 0 0.5 1 z obr. 10.11 Jinou možností je opět vhodně změnit hustotu sítě tak, aby body nespojitosti nebyly totožné s uzlovými body sítě. Pokud v bodech nespojitosti neexistuje konečná limita, je znázornění chování takové funkce pomocí počítače obtížnější. Graf funkce dvou proměnných 155 Příklad 10.3. Generujte PC-graf funkce f (x, y) = 1/x. Protože limx0+ 1/x = +, limx0- 1/x = -, není funkce f na přímce x = 0 spojitá. Příkazem: > plot3d(1/x, x=-5..5, y=-5..5, orientation=[-63,73], > axes=framed, labels=[x,y,z]); dostáváme PC-graf z obr. 10.12. -4 -2 0 2 4x -4 -2 0 2 4 y -1.8e+15 -1.6e+15 -1.4e+15 -1.2e+15 -1e+15 -8e+14 -6e+14 -4e+14 -2e+14 0 z obr. 10.12 Vidíme, že PC-graf neodpovídá grafu zkoumané funkce. Podívejme se opět na objekt PLOT3D, pro zjednodušení zvolme grid=[7,3] (obr. 10.13): > p:=plot3d(1/x, x=-5..5,y=-5..5,orientation=[-63,73], > axes=framed,grid=[7,3],color=black,labels=[x,y,z]);p; p := PLOT3D(GRID(-5...5., -5...5., [[-.2000000000000000, -.2000000000000000, -.2000000000000000], [ -.3000000000000000, -.3000000000000000, -.3000000000000000], [-.5999999999999999, -.5999999999999999, -.5999999999999999], [ -.2251799813685248 1016 , -.2251799813685248 1016 , -.2251799813685248 1016 ], [ .6000000000000002, .6000000000000002, .6000000000000002 ] , [ .3000000000000000, .3000000000000000, .3000000000000000 ] , [ .2000000000000000, .2000000000000000, .2000000000000000 ] ], COLOR( RGB, 0, 0, 0 )), AXESLABELS( x, y, z ), AXESSTYLE( FRAME ), TITLE( ), PROJECTION( -63., 73., 1 )) 156 Generování grafiky v Maplu Maple volí rozsah zobrazovaných hodnot a měřítka na osách sám tak, aby se vý- sledný PC-graf co nejlépe ,,vešel" na výstupní zařízení. To zejména u funkcí, je- jichž limita v některém bodě je rovna , způsobuje problémy (odlišnost grafu a PC-grafu funkce). Z algoritmu realizace PC-grafu na výstupním zařízení plyne i spojení těch funkčních hodnot, které by neměly být spojeny (v okolí bodů ne- spojitosti, body nespojitosti v tomto případě nejsou totožné s uzlovými body). Z objektu PLOT3D je také vidět, že při této hustotě sítě a stanovené přesnosti aproximace jsou v PC-grafu potlačeny funkční hodnoty blízké +. Stačí však změnit přesnost aproximace (změnou hodnoty proměnné Digits, implicitní na- stavení je Digits:=9), a dostáváme jinou sít' uzlových bodů a také jiný PC- -graf (obr. 10.14): > Digits:=18; Digits := 18 > plot3d(1/x, x=-5..5, y=-5..5, orientation=[-63,73], > axes=framed,grid=[7,3],color=black,labels=[x,y,z]); -4 -2 0 2 4x -4 -2 0 2 4 y -2e+15 -1.5e+15 -1e+15 -5e+14 0 z obr. 10.13 -4 -2 0 2 4x -4 -2 0 2 4 y 0 2e+16 4e+16 6e+16 8e+16 1e+17 z obr. 10.14 Omezíme tedy rozsah zobrazovaných hodnot (view=-5..5) při původní přesnosti aproximace (obr. 10.15): > Digits:=9: > plot3d(1/x, x=-5..5, y=-5..5, view=-5..5, > orientation=[-63,73], axes=framed, labels=[x,y,z]); Na PC-grafu je vidět pozitivní vliv změny rozsahu zobrazovaných hodnot, nadále však přetrvává spojování i těch bodů PC-grafu, které spojeny být neměly. Skutečnosti odpovídající PC-graf získáme následujícím způsobem. Tvorbu PC- -grafu rozdělíme do dvou částí tím, že definiční obor rozdělíme na dvě oblasti: Graf funkce dvou proměnných 157 -4 -2 0 2 4x -4 -2 0 2 4 y -4 -2 0 2 4 z obr. 10.15 -5, -0.001 × -3, 3 a 0.001, 5 × -3, 3 . Jednotlivé samostatně vytvářené části PC-grafu v závěru interpretujeme v jediném (obr. 10.16) pomocí příkazu display3d z knihovny plots: > o1:=plot3d(1/x, x=-5..-0.001, y=-3..3, view=-5..5): > o2:=plot3d(1/x, x=0.001..5, y=-3..3, view=-5..5): > display3d({o1,o2}, orientation=[-63,73],axes=framed, > labels=[x,y,z]); Poznámka 10.1. Tvorba PC-grafu nespojité funkce jedné reálné proměnné je zjednodušena parametrem discont=true. Při použití tohoto parametru pro- gram nejprve určí body nespojitosti zadané funkce a poté rozdělí horizontální osu na intervaly, na kterých je tato funkce spojitá, takže nedojde ke spojení těch bodů PC-grafu, které spojeny být neměly. V některých případech je vhodnější nezobrazovat funkci ve tvaru explicitním, ale provést parametrizaci funkce (x = (u, v), y = (u, v), z = (u, v), kde u a v jsou parametry). Výhodné je to zejména u funkcí, které vykazují středovou nebo osovou symetrii. Příklad 10.4. Vytvořte PC-graf funkce f (x, y) = 2 x2 + y2 - 9 . 158 Generování grafiky v Maplu -4 -2 0 2 4x -3 -2 -1 0 1 2 3 y -4 -2 0 2 4 z obr. 10.16 Definičním oborem funkce f je množina R2 -{[x, y] : x2 +y2 = 9}, tedy rovina xy kromě bodů ležících na kružnici se středem v bodě [0, 0] a poloměrem r = 3. V těchto bodech není funkce spojitá. Pokud se pokusíme vytvořit PC-graf funkce jednoduchým příkazem: > f:=2/(x^2+y^2-9); f := 2 1 x2 + y2 - 9 > plot3d(f, x=-5..5, y=-5..5); dostáváme obr. 10.17. Změna hustoty uzlových bodů a omezení rozsahu zobrazo- vaných hodnot v tomto případě nepomáhá (obr. 10.18): > plot3d(f, x=-5..5, y=-5..5, view=-5..5,grid=[30,40]); Proved'me nyní parametrizaci x = u cos v, y = u sin v, z = 2 u2-9 a generujme PC-graf (obr. 10.19) této funkce: > plot3d([u*cos(v), u*sin(v), subs({x=u*cos(v), > y=u*sin(v)}, f)], v=0..2*Pi, u=0..6, view=-5..5): Všimněme si rozdílu mezi PC-grafem funkce f (dané explicitně, obr. 10.17 a 10.18) a PC-grafem téže funkce dané parametricky (obr. 10.19) (graf by měl být v obou případech stejný). Graf funkce dvou proměnných 159 obr. 10.17 obr. 10.18 obr. 10.19 Protože získaný PC-graf stále neodpovídá grafu funkce, rozdělíme tvorbu PC- -grafu opět do dvou částí, přičemž parametr u bude postupně nabývat hodnot z in- tervalů 0, 2.999 a 3.001, 6 : > s1:=plot3d([u*cos(v), u*sin(v), > subs({x=u*cos(v), y=u*sin(v)}, f)], v=0..2*Pi, > u=0..2.999): > s2:=plot3d([u*cos(v), u*sin(v), > subs({x=u*cos(v), y=u*sin(v)}, f)], v=0..2*Pi, > u=3.001..6): > display3d({s1,s2}, view=-8..8); > display3d({s1,s2}, view=-8..8, orientation=[40,102]); Z důvodu názornosti je funkce zobrazena ze dvou různých pohledů (obr. 10.20 a obr. 10.21). 160 Generování grafiky v Maplu obr. 10.20 obr. 10.21 Všimněme si nyní ještě některých parametrů příkazu plot3d, kterými mů- žeme ovlivnit vzhled výsledného PC-grafu. Doposud jsme generovali PC-graf vždy nad čtvercovou nebo obdélníkovou oblastí. Ale rozsah druhého parametru může být udán v závislosti na prvním. Například při generování PC-grafu povrchu polokoule nad čtvercovým oborem: > plot3d(sqrt(1-x^2-y^2), x=-1..1, y=-1..1, > scaling=constrained); dostáváme PC-graf na obrázku 10.22. Získaný PC-graf neodpovídá na okrajích oblasti grafu funkce (,,zubaté okraje" jsou opět způsobeny spojováním funkčních hodnot v uzlových bodech). Při použití kruhové oblasti: > plot3d(sqrt(1-x^2-y^2), x=-1..1, > y=-sqrt(1-x^2)..sqrt(1-x^2), scaling=constrained); (tj. proměnného rozsahu na ose y) dostáváme PC-graf odpovídající grafu funkce (obr. 10.23). Rozsah zobrazovaných hodnot ve směru osy z měníme volbou parametru view=[zmin..zmax]. Pokud tento parametr nezadáme, volí Maple roz- sah zobrazovaných hodnot sám, což opět může vést k zavádějícím výsledkům (viz také komentář k příkladu 10.3). Porovnejme dva PC-grafy (obr. 10.24 a obr. 10.25), generované příkazy: > plot3d(1/(x^2+y^2), x=-1..1, y=-1..1, axes=boxed, > color=black, labels=[x,y,z]); > plot3d(1/(x^2+y^2), x=-1..1, y=-1..1, view=0..6, > style=patch, axes=boxed, labels=[x,y,z]); Pro zkoumanou funkci je lim(x,y)(0,0) 1/(x2 + y2 ) = +, rozsah zobrazova- ných hodnot a měřítka na osách v prvním případě Maple volil sám (+ aproxi- Vrstevnice 161 obr. 10.22 obr. 10.23 -1 -0.5 0 0.5 1 x -1 -0.5 0 0.5 1 y 0 1e+31 2e+31 3e+31 4e+31 5e+31 6e+31 7e+31 obr. 10.24 -1 -0.5 0 0.5 1 x -1 -0.5 0 0.5 1 y 0 1 2 3 4 5 6 z obr. 10.25 moval hodnotou 7 1031 ). Výsledný PC-graf (obr. 10.24) pak neodpovídá grafu funkce. Obor zobrazovaných hodnot tedy omezíme parametrem view=0..6 na interval 0, 6 , získaný PC-graf je znázorněn na obr. 10.25. 10.2 Vrstevnice Pro vytvoření představy o tvaru a průběhu znázorňované plochy nám často pomá- hají vrstevnice (viz Definice 1.3) grafu funkce a řezy rovinami z = 0, y = 0, x = 0, příp. rovinami s nimi rovnoběžnými. Maple nám tak může pomoci při vysvětlo- vání geometrického významu pojmu vrstevnice funkce a při jejich znázorňování. Ukažme si nyní konstrukci vrstevnice funkce f (x, y) = x2 + y2 na hladině c = 6. Nejdříve generujme PC-graf funkce f a označme jej P1 (obr. 10.26). Poté vytvořme PC-graf roviny z = 6, označíme jej P2, a interpretujme funkci i rovinu v jednom PC-grafu (obr. 10.27): 162 Generování grafiky v Maplu -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y 0 2 4 6 8 z obr. 10.26 -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y 0 2 4 6 8 z obr. 10.27 > with(plots): > f := (x,y) -> x^2+y^2: > P1 := plot3d(f(x,y), x=-3..3, > y= -sqrt(9-x^2)..sqrt(9-x^2), axes=framed, > tickmarks=[7,7,5], orientation=[45,60], > labels=[x,y,z]): "; > P2 := plot3d(6, x=-3..3, y= -3..3, > style = patchnogrid): > display3d({P1,P2}, axes=framed,tickmarks = [7,7,5], > orientation=[45,60], labels=[x,y,z]); Křivka, vzniklá jako průsečnice grafu funkce f a roviny z = 6 je dána para- metricky rovnicemi x = 6 cos t, y = 6 sin t, z=6 a představuje vrstevnici funkce f na hladině c = 6. Znázornění vrstevnice v ro- vině získáme průmětem do roviny xy. Situaci znázorňují následující dva obrázky (obr. 10.28, obr. 10.29). Pro vykreslení prostorové křivky jsme použili procedury spacecurve z knihovny plots: > P3 := spacecurve([sqrt(6)*cos(t), sqrt(6)*sin(t),6], > t=0..2*Pi, color=black, thickness=3): > P4 := spacecurve([sqrt(6)*cos(t), sqrt(6)*sin(t),0], > t=0..2*Pi, color=red, thickness=3): > display3d({P1,P2,P3},tickmarks=[7,7,5], > orientation = [40,120], axes=boxed, labels=[x,y,z]); > display3d({P1,P2,P3,P4},tickmarks=[7,7,5], > orientation =[40,120], axes=boxed, labels=[x,y,z]); Vrstevnice 163 -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y 0 2 4 6 8 z obr. 10.28 -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y 0 2 4 6 8 z obr. 10.29 Podobným způsobem můžeme znázornit i řezy rovinami rovnoběžnými s ro- vinami xz a yz. Např. zobrazme průnik roviny x = 2 a grafu funkce f . Jako průsečnici získáme křivku, kterou můžeme popsat parametricky rovnicemi x = 2, y = t, z = f (2, t) = 4 + t2 . Graf funkce, rovinu i jejich průsečnici interpretujme v jednom PC-grafu (obr. 10.30): > P1 := plot3d(f(x,y),x=-3..3,y=-3..3): > P2 := implicitplot3d(x=2,x=-3..3,y=-3..3,z=0..20, > style=patchnogrid): > P3 := spacecurve([2,t,j(2,t)],t=-3..3,thickness=3, > color=black): > display3d({P1,P2,P3},tickmarks=[7,7,5], > axes=framed, orientation=[40,120], labels=[x,y,z]); Pro přímé znázorňování vrstevnic používáme příkaz contourplot (obr. 10.31): > plots[contourplot](f(x,y), x=-3..3, > y=-sqrt(9-x^2)..sqrt(9-x^2), axes=boxed, color=black, > contours=10, numpoints=2500, scaling=constrained, > tickmarks=[7,7,0]); Parametr style=patchcontour příkazu plot3d slouží k zobrazení grafu funkce s vrstevnicemi (obr. 10.32) a pro zobrazení vrstevnice na dané hladině můžeme použít příkazu levelcurve z knihovny mvcalp (obr. 10.33): > plot3d(f(x,y), x=-3..3, y=-sqrt(9-x^2)..sqrt(9-x^2), > style=patchcontour, axes=boxed, orientation=[40,120], > tickmarks=[7,7,5], labels=[x,y,z]); 164 Generování grafiky v Maplu -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y 0 5 10 15 20 z obr. 10.30 -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y obr. 10.31 > with(mvcalp): > levelcurve(f(x,y),6, x=-3..3, y=-3..3, color=black, > scaling=constrained, tickmarks=[7,7]); Protože tvorba matematické grafiky není často jednoduchou záležitostí a vzhled výsledného PC-grafu můžeme ovlivňovat celou řadou parametrů, uvá- díme na závěr této kapitoly i stručný přehled základních použitých příkazů a je- Vrstevnice 165 -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y 0 2 4 6 8 z obr. 10.32 -3 -2 -1 0 1 2 3 y -3 -2 -1 0 1 2 3 x obr. 10.33 jich parametrů. Popis všech příkazů čtenář najde bud' v manuálech [C-G1], [C-G2] a [C-G3] nebo přímo v systému nápovědy programu Maple V. Přehled použitých příkazů Generování PC-grafu funkce dvou proměnných: plot3d(f(x,y),x=a..b,y=c..d,volby); pro výrazy a plot3d(f, a..b,c..d, volby); pro funkce. Volitelné parametry volby ovlivňují vzhled výsledného PC-grafu. Nejčastěji používané parametry jsou popsány Tabulce 10.1. Generování PC-grafu funkce dvou proměnných dané parametricky (obr. 10.2): plot3d([f(s,t),g(s,t),h(s,t)],s=a..b,t=c..d, volby); K rozšíření možností práce s grafikou slouží knihovna plots. Procedury této knihovny zpřístupníme příkazem with(plots): Vykreslení prostorové křivky (obr. 10.28 a 10.29): spacecurve([f(t),g(t),h(t)],t=a..b,volby); Znázornění vrstevnic (obr. 10.31): contourplot(f(x,y),x=a..b,y=c..d,volby); Znázornění vrstevnice na dané hladině (obr. 10.33): mvcalp[levelcurve](f(x,y), hladina, x=a..b, y=c..d); Generování PC-grafu funkce dané implicitně (obr. 10.30 a viz také Kapitola 7): implicitplot3d(expr1, x=a..b, y=c..d, z=p..q, volby); 166 Generování grafiky v Maplu Volba Efekt příkazu scaling = UNCONSTRAINED měřítka na osách CONSTRAINED view = zmin..zmax volba rozsahu zobrazovaných hodnot orientation = [theta,phi] úhel pohledu style = POINT HIDDEN způsob vykreslení grafu PATCH WIREFRAME CONTOUR LINE PATCHCONTOUR PATCHNOGRID axes = BOXED NORMAL znázornění os FRAME NONE grid = [m,n] regulace hustoty sítě numpoints = n alternativní zadání počtu bodů sítě labels = [x,y,z] popis os tickmarks = [n,m,p] počet značek na osách tab. 10.1 Kapitola 11 Výpočty limit v Maplu Počítačového systému v této kapitole využíváme zejména ke tvorbě ilustrační gra- fiky. Přímý výpočet limit funkce dvou proměnných není ve většině případů možný, protože neexistuje vhodný algoritmus. (Jiná situace je u funkcí jedné proměnné.) Přesto nám může být počítač nápomocen při určování limit funkce dvou proměn- ných a to zejména jejich transformací do polárních souřadnic a následným výpo- čtem limity funkce jedné proměnné. Podobné metody lze použít při určování limit vzhledem k podmnožinám okolí limitního bodu. V této souvislosti budeme za takové podmnožiny volit spojité křivky procházející limitním bodem a mluvit o limitách závislých na cestě, resp. o limitě podél cesty. 11.1 Ilustrační grafika Cyklus PC-grafů z této části je možno využít při přednáškách k ilustraci pro- bírané problematiky a v počítačové laboratoři k samostatnému experimentování studentů. Přitom většinu zde uvedených obrázků lze bez počítače realizovat jen velmi těžko. Příklad 11.1. Spojité funkce mají v libovolném bodě [a, b] limitu lim (x,y)(a,b) f (x, y) = f (a, b). Příkladem je např. funkce f (x, y) = x - x3 - xy2 + x3 y2 (obr. 11.1): > plot3d(x-x^3-x*y^2+x^3*y^2,x=-1.4..1.4,y=-1.4..1.4, > view=-1..1, style=patch, labels=[x,y,'z']); 168 Výpočty limit v Maplu -1 -0.5 0 0.5 1 x -1 -0.5 0 0.5 1 y -1 -0.5 0 0.5 1 z obr. 11.1 Příklad 11.2. Funkce f (x, y) = x2 y x2 + y2 není v bodě [0, 0] definovaná, ale má v tomto bodě limitu rovnu nule (podle Věty 2.6). Pokud se k limitnímu bodu ,,blížíme" podél jakékoli cesty, funkční hodnoty se blíží nule (obr. 11.2). (Existence limity nezávisí na funkční hodnotě v limitním bodě.) Aby byla funkce f v bodě [0, 0] spojitá, definujeme f (0, 0) = 0 a generujeme PC-graf vyšetřované funkce: > f:=proc(x,y) if x=0 and y=0 then 0 > else (x^2*y)/(x^2+y^2) fi end: > plot3d(f, -3..3, -3..3, orientation=[-57,38], > axes=framed, style=patch, labels=[x,y,'z']); Následující příklady ilustrují jev, kdy hodnota limity funkce závisí na cestě, po které se k limitnímu bodu blížíme ­ tj. funkce nemá v daném bodě limitu. Příklad 11.3. Funkce f (x, y) = x2 - y2 x2 + y2 2 Ilustrační grafika 169 -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y -1.5 -1 -0.5 0 0.5 1 1.5 z obr. 11.2 nemá v bodě [0, 0] limitu. Jestliže se k bodu [0, 0] blížíme po přímkách y = x dostáváme lim x0 f (x, x) = 0, ale po osách x a y dostáváme lim x0 f (x, 0) = 1, lim y0 f (0, y) = 1. Protože hodnota limity závisí na cestě, po které se k bodu [0, 0] blížíme, limita lim(x,y)(0,0) f (x, y) neexistuje. Uvedená situace je dobře viditelná na obr. 11.3. > f:=(x,y)->((x^2-y^2)/(x^2+y^2))^2: > plot3d(f(x,y),x=-3..3,y=-3..3,grid=[51,49], > axes=framed, style=patch, labels=[x,y,'z']); Příklad 11.4. Funkce f (x, y) = xy x2 + y2 nemá v bodě [0, 0] limitu: pokud se k limitnímu bodu blížíme po přímkách y = kx, dostáváme výsledek závisející na konstantě k lim (x,y)(0,0) y=kx xy x2 + y2 = k 1 + k2 . 170 Výpočty limit v Maplu -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y 0 0.2 0.4 0.6 0.8 1 z obr. 11.3 Situace je znázorněna na obr. 11.4 a obr. 11.5. Pro větší názornost je zde funkce zobrazena z různých úhlů pohledu. -1 -0.5 0 0.5 1 x -1 -0.5 0 0.5 1 y -0.4 -0.2 0 0.2 0.4 z obr. 11.4 -1 -0.5 0 0.5 1 x -1 -0.5 0 0.5 1 y-0.4 -0.2 0 0.2 0.4 z obr. 11.5 PC-grafy byly vytvořeny následující posloupností příkazů: > f:=(x,y)->x*y/(x^2+y^2); f := ( x, y ) x y x2 + y2 > z:=subs(x=r*cos(phi), y=r*sin(phi), f(x,y)): > p:=plot3d([r*cos(phi),r*sin(phi),simplify(z)],r=0..1, > phi=-Pi..Pi, grid=[15,45], axes=framed, style=patch): Ilustrační grafika 171 > with(plots): > display3d(p,orientation=[15,45],labels=[x,y,'z']); > display3d(p,orientation=[-69,38],labels=[x,y,'z']); Příklad 11.5. Funkce f (x, y) = x2 y x4+y2 , [x, y] = [0, 0], 0, [x, y] = [0, 0] nemá v bodě [0, 0] limitu. V tomto případě jsou všechny limity po přímkách y = kx k bodu [0, 0] rovny 0, avšak po parabolách y = kx2 hodnota limity záleží na konstantě k (viz Poznámka 2.2). Bez použití počítače je velmi obtížné nakreslit graf funkce a studenti často ne- mají s touto funkcí spojenu konkrétní geometrickou představu (PC-graf obr. 11.6): > f:=proc(x,y) if x=0 and y=0 then 0 > else x^2*y/(x^4+y^2) fi end: > plot3d(f, -2..2, -2..2, grid=[100,100], > style=patchcontour, orientation=[-46,35], > contours=12, axes=boxed, labels=[x,y,'z']); -2 -1 0 1 2 x -2 -1 0 1 2 y -0.4 -0.2 0 0.2 0.4 z obr. 11.6 172 Výpočty limit v Maplu Příklad 11.6. Funkce f (x, y) = 1 x2 + y2 má v bodě [0, 0] nevlastní limitu (viz příklad 2.1-ii)). PC-graf funkce je uveden na obrázku 10.25. Příklad 11.7. Funkce f (x, y) = 2 x2 + y2 - 9 . není definovaná na množině K = {[x, y] : x2 + y2 = 9}, což je kružnice se středem v bodě [0, 0] a poloměrem r = 3, a nemá v žádném bodě této množiny limitu. Necht' [x0, y0] K. Jestliže se k bodu [x0, y0] blížíme po libovolné cestě L1 ležící vně kružnice K, pak dostáváme lim (x,y)(x0,y0) (x,y)L1 2 x2 + y2 - 9 = 2 0+ = +. Jestliže se k bodu [0, 0] blížíme po libovolné cestě L2 ležící uvnitř této kružnice, dostáváme lim (x,y)(x0,y0) (x,y)L2 2 x2 + y2 - 9 = 2 0- = -. Odtud plyne, že limita lim(x,y)(x0,y0) f (x, y) neexistuje. Existují pouze limity po cestách ležících uvnitř a vně kružnice K. PC-graf funkce f je uveden na obráz- cích 10.20 a 10.21. 11.2 Výpočty Maplu můžeme použít i při určování existence, resp. neexistence limity funkce dvou proměnných. Následující příklady ilustrují možnosti Maplu při procvičování některých me- tod určování limit funkce. Např. u funkce dvou proměnných se k limitnímu bodu můžeme blížit nekonečně mnoho způsoby: po přímkách, parabolách či obecných množinách. K důkazu neexistence limity přitom stačí najít dvě různé hodnoty limit vzhledem k různým množinám. Maple nám zde pomáhá při výpočtu vol- bou y = (x) (pro vhodné ) získaných limit funkce jedné proměnné (př. 2.1 a př. 2.2). Maple nám může asistovat i při důkazu neexistence a příp. i existence limity funkce dvou proměnných ve vlastním bodě [x0, y0] zavedením polárních souřadnic (př. 2.3 a př. 2.4). Výpočty 173 Jinou možností řešení limit funkcí dvou proměnných je nejdříve určit graf funkce, podle grafu vyslovit hypotézu o existenci, resp. neexistenci a tuto dokázat (př. 2.5). K tomu lze efektivně, ale s jistou opatrností, využít PC-grafů uvažova- ných funkcí. Některé příklady z této části již byly použity v části Ilustrace, zde je však na rozdíl od předcházející části kladen důraz na výpočetní aspekt problému. Příklad 11.8. Určete lim (x,y)(0,0) x2 - y2 x2 + y2 . Zkoumanou funkci označme g(x, y). Za množiny, vzhledem k nimž budeme li- mity počítat, zvolme přímky. Pokud se k limitnímu bodu [0, 0] blížíme po přímce y = 0, dostáváme L1 = lim x0 g(x, 0) = lim x0 x2 x2 = 1, ale pokud se k limitnímu bodu blížíme podél přímky y = x L2 = lim x0 g(x, x) = lim x0 x2 - x2 x2 - x2 = 0. Tedy L1 = L2, t.j. výsledek závisí na cestě, po které se blížíme k limitnímu bodu, a proto uvažovaná funkce g nemá v bodě [0, 0] limitu. Přitom bylo použito následujících příkazů: > g:=(x,y)->(x^2-y^2)/(x^2+y^2); g := ( x, y ) x2 - y2 x2 + y2 > L1:=Limit(g(x,0), x=0)=limit(g(x,0),x=0); L1 := lim x0 1 = 1 > L2:=Limit(g(x,x), x=0)=limit(g(x,x),x=0); L2 := lim x0 0 = 0 Poznámka 11.1. Pozor na nesprávné použití Maplu při výpočtech limit! Příkazem: > limit(limit(g(x,y), y=0), x=0); 1 174 Výpočty limit v Maplu nepočítáme limitu dané funkce v bodě [0, 0], ale pouze limitu podél osy x. Správné použití příkazu limit k výpočtu hledané limity je: > limit(g(x,y), {x=0,y=0}); undefined Zde tedy dostáváme, že limita neexistuje. U všech dalších příkladů uvedených v této části však Maple není přímým výpočtem schopen o existenci limity roz- hodnout. Příklad 11.9. Určete limitu funkce f (x, y) = xy2 x2 + y4 v bodě [0, 0]. Budeme-li se k bodu [0, 0] blížit po přímkách y = kx, dostáváme lim x0 k2 x3 x2 + k4x4 = lim x0 k2 x 1 + k4x2 = 0. Výsledek nezávisí na k, pro jakoukoli přímku dostáváme stejný výsledek. To však k existenci limity nestačí. Položme x = ky2 . Dostáváme lim y0 ky4 k2 y4 + y4 = k k2 + 1 , což je výsledek závisející na konstantě k. Limita tedy neexistuje, pro různé cesty dostáváme různé výsledky. Realizace v Maplu: > f:=(x,y)->x*y^2/(x^2+y^4); f := ( x, y ) x y2 x2 + y4 > Limit(f(x,k*x), x=0)=limit(f(x,k*x),x=0); lim x0 x3 k2 x2 + k4 x4 = 0 > Limit(f(k*y^2,y),y=0)=limit(f(k*y^2,y),y=0); lim y0 k y4 k2 y4 + y4 = k k2 + 1 , Výpočty 175 Příklad 11.10. Rozhodněte, zda existuje limita lim (x,y)(0,0) 2xy x2 + y2 . Zavedením polárních souřadnic dostáváme lim (x,y)(0,0) 2xy x2 + y2 = lim r0+ 2r2 sin() cos() r2 = sin(2). Protože výsledek závisí na , tj. na směru, ve kterém se blížíme k bodu [0, 0], uvedená limita neexistuje. Výpočet: > f:=(x,y)->(2*x*y)/(x^2+y^2); f := ( x, y ) 2 x y x2 + y2 > Limit(subs(x=r*cos(phi), y=r*sin(phi), f(x,y)), > r=0, right)= limit(simplify(subs(x=r*cos(phi), > y=r*sin(phi), f(x,y))), r=0, right); lim r0+ 2 r2 cos( ) sin( ) r2 cos( )2 + r2 sin( )2 = 2 cos( ) sin( ) Příklad 11.11. Rozhodněte, zda existuje limita funkce f (x, y) = x3 + y3 x2 + y2 v bodě [0, 0]. Transformací do polárních souřadnic dostáváme lim (x,y)(0,0) x3 + y3 x2 + y2 = lim r0+ r3 (sin3 + cos3 ) r2(sin2 + cos2 ) = lim r0+ r(sin3 + cos3 ) = 0. Výpočet: > f:=(x,y)->(x^3+y^3)/(x^2+y^2); f := ( x, y ) x3 + y3 x2 + y2 176 Výpočty limit v Maplu > Limit(subs(x=r*cos(phi), y=r*sin(phi), f(x,y)), > r=0, right)= limit(simplify(subs(x=r*cos(phi), > y=r*sin(phi), f(x,y))), r=0, right); lim r0+ r3 cos( )3 + r3 sin( )3 r2 cos( )2 + r2 sin( )2 = 0 a protože funkce g() = sin3 () + cos3 () je ohraničená (obr. 11.7), je podle Věty 2.6 hodnota limity rovna nule. -1 -0.5 0 0.5 1 -6 -4 -2 0 2 4 6 phi obr. 11.7 Příklad 11.12. Určete lim (x,y)(0,0) x2 y x2 + y2 . Generujme PC-graf funkce (obr. 11.2) a zkoumejme chování funkce v okolí limit- ního bodu (obr. 11.8), (získaný PC-graf se téměř neliší od PC-grafu na obr. 11.2, všimněme si ale rozdílu v oblasti, nad kterou PC-graf vytváříme). > g:=(x,y)->x^2*y/(x^2+y^2); > plot3d(g, -0.003..0.003, -0.003..0.003, > orientation=[-57,38], axes=framed, labels=[x,y,'z']); Výpočty 177 -0.003 -0.002 -0.001 0 0.001 0.002 0.003 x -0.003 -0.002 -0.001 0 0.001 0.002 0.003 y -0.0015 -0.001 -0.0005 0 0.0005 0.001 0.0015 z obr. 11.8 Z toho, že funkční hodnoty se ,,blíží" nule, lze usoudit, že limita funkce v bodě [0, 0] patrně existuje a je rovna nule. Tuto hypotézu dále podpořme vý- počtem limit po přímkách y = kx a parabolách y = kx2 : g := ( x, y ) x2 y x2 + y2 > L1:=limit(g(x,k*x), x=0); L1 := 0 > L2:=limit(g(x,k*x^2),x=0); L2 := 0 Jestliže tedy limita existuje, musí být rovna 0. Proved'me transformaci do polár- ních souřadnic a existenci limity ověřme podle stejné věty jako v předcházejícím příkladě: lim (x,y)(0,0) x2 y x2 + y2 = lim r0+ r2 cos2 ()r sin() r2 = lim r0+ r(cos2 () sin()) = 0 a protože funkce cos2 () sin() je ohraničená, je hodnota limity rovna nule. > Limit(subs(x=r*cos(phi), y=r*sin(phi), g(x,y)), > r=0, right)= limit(subs(x=r*cos(phi), y=r*sin(phi), > g(x,y)), r=0, right); lim r0+ r3 cos( )2 sin( ) r2 cos( )2 + r2 sin( )2 = 0 178 Výpočty limit v Maplu Příklad 11.13. Určete lim (x,y)(0,0) sin(x + y) x + y . > f:=(x,y)->sin(x+y)/(x+y);x1:=0:y1:=0: f := ( x, y ) sin( x + y ) x + y > Limit(f(x,y1+k*(x-x1)),x=x1)= > limit(f(x,y1+k*(x-x1)),x=x1); lim x0 sin( x + k x ) x + k x = 1 Všimněme si, že f je složená z funkcí F a G, kde: > F:=(x,y)->x+y;G:=t->sin(t)/t; F := ( x, y ) x + y G := t sin( t ) t > (G@F)(x,y); sin( x + y ) x + y > Limit(G(t),t=0)=limit(G(t),t=0); lim t0 sin( t ) t = 1 V našem případě limity funkcí F a G existují a tedy podle věty o limitě složené funkce je limita rovna jedné. > plot3d(f(x,y), x=-2*Pi..2*Pi, y=-2*Pi..2*Pi, > orientation=[162,36], axes=framed, style=patch, > labels=[x,y,'z'], tickmarks=[7,7,3]); Příklad 11.14. Určete lim (x,y)(1,-1) x2 + y2 - 2x - 2y x2 + y2 - 2x + 2y + 2 . Výpočty 179 -6 -4 -2 0 2 4 6 x -6 -4 -2 0 2 4 6 y 0 0.5 1 z obr. 11.9 > f:=(x,y)->(x^2+y^2-2*x-2*y)/(x^2+y^2-2*x+2*y+2); > x1:=1:y1:=-1: f := ( x, y ) x2 + y2 - 2 x - 2 y x2 + y2 - 2 x + 2 y + 2 > Limit(f(x,y1+k*(x-x1)),x=x1)= > limit(f(x,y1+k*(x-x1)),x=x1); lim x1 x2 + ( -1 + k ( x - 1 ) )2 - 2 x + 2 - 2 k ( x - 1 ) x2 + ( -1 + k ( x - 1 ) )2 - 2 x + 2 k ( x - 1 ) = signum( 1 + k2 ) Z toho plyne, že pokud se k limitnímu bodu blížíme po přímkách, dostáváme limitu rovnu , nebot' sgn(1 + k2 ) = 1. K důkazu existence limity využijeme věty o limitě součinu funkcí: > Cit:=numer(f(x,y)); Cit := x2 + y2 - 2 x - 2 y > Ijmen:=1/denom(f(x,y)); Ijmen := 1 x2 + y2 - 2 x + 2 y + 2 180 Výpočty limit v Maplu > (x-1)^2+(y-1)^2=expand((x-1)^2+(y+1)^2); ( x - 1 )2 + ( y - 1 )2 = x2 + y2 - 2 x + 2 y + 2 Jmenovatel denom(f(x,y)) je vždy kladný a lim (x,y)(1,-1) 1 x2 + y2 - 2x + 2y + 2 = , lim(x,y)(1,-1) x2 + y2 - 2x - 2y = 2 a tedy součin je roven (obr. 11.10). > plot3d(f(x,y), x=0.5..1.5, y=-1.7..-0.5,view=-1..200, > style=patchcontour, grid=[50,50], axes=boxed, > labels=[x,y,'z'], tickmarks=[5,6,2]); 0.6 0.8 1 1.2 1.4 x -1.6 -1.4 -1.2 -1 -0.8 -0.6 y 0 200 z obr. 11.10 Kapitola 12 Derivace funkce v Maplu V této kapitole je z výpočetního hlediska velmi efektivní použití počítačového systému k přímým výpočtům parciálních derivací, zejména při kontrole výsledků náročnějších výpočtů. Pomocí PC-grafů můžeme také znázorňovat geometrický význam parciálních a směrových derivací. 12.1 Parciální derivace 1. řádu Pomocí Maplu lze Definici 3.1 zapsat následujícím způsobem: > Diff(f(x[0],y[0]),x)= > Limit((f(x,y[0])-f(x[0],y[0]))/(x-x[0]), x=x[0]); x f (x0, y0) = lim xx0 f (x, y0) - f (x0, y0) x - x0 > Diff(f(x[0],y[0]),y)= > Limit((f(x[0],y)-f(x[0],y[0]))/(y-y[0]), y=y[0]); y f (x0, y0) = lim yy0 f (x0, y) - f (x0, y0) y - y0 Označíme­li x - x0 = h a y - y0 = k, můžeme použít analogického zápisu: > Diff(f(x[0],y[0]),x)= > Limit((f(x[0]+h,y[0])-f(x[0],y[0]))/h, h=0); x f (x0, y0) = lim h0 f (x0 + h, y0) - f (x0, y0) h 182 Derivace funkce v Maplu > Diff(f(x[0],y[0]),y)= > Limit((f(x[0],y[0]+k)-f(x[0],y[0]))/k, k=0); y f (x0, y0) = lim k0 f (x0, y0 + k) - f (x0, y0) k Příklad 12.1. Určete parciální derivace funkce f (x, y) = x4 y2 -xy+7 v obecném bodě [x, y] i) podle definice. > f:=(x,y)->x^4*y^2-x*y+7; f := ( x, y ) x4 y2 - x y + 7 > Limit((f(x+h,y)-f(x,y))/h, h=0):"=value("); lim h0 ( x + h )4 y2 - ( x + h ) y - x4 y2 + x y h = y ( 4 y x3 - 1 ) > Limit((f(x,y+k)-f(x,y))/k, k=0):"=value("); lim k0 x4 ( y + k )2 - x ( y + k ) - x4 y2 + x y k = x ( 2 y x3 - 1 ) Tedy f x (x, y) = y(4yx3 - 1) a f y (x, y) = x(2yx3 - 1). ii) Využitím příkazu diff. Maple umožňuje i přímý výpočet parciálních derivací. Ten využíváme tehdy, pokud je parciální derivování dostatečně procvi- čeno a rutinními výpočty se nechceme dále zdržovat, případně ke kontrole správ- nosti výpočtu. K symbolickému derivování používáme příkazu diff pro výrazy a funkčního operátoru D pro funkce1 : > Diff(f(x,y),x):"=value("); x ( x4 y2 - x y + 7 ) = 4 x3 y2 - y 1Výraz a funkce ve smyslu základních datových struktur Maplu. Geometrický význam parciálních derivací 183 > factor("); x ( x4 y2 - x y + 7 ) = y ( 4 y x3 - 1 ) > Diff(f(x,y),y):"=factor(value(")); y ( x4 y2 - x y + 7 ) = x ( 2 y x3 - 1 ) > D[1](f); ( x, y ) 4 x3 y2 - y > factor(D[1](f)(x,y)); y ( 4 y x3 - 1 ) > factor(D[2](f)(x,y)); x ( 2 y x3 - 1 ) 12.2 Geometrický význam parciálních derivací Grafických možností Maplu využijeme nyní i k znázornění geometrického vý- znamu parciálních derivací. PC-grafem znázorníme geometrický význam parci- ální derivace funkce f (x, y) = x + y2 - x3 y podle x v bodě [1, 2]. Generujme postupně PC-graf funkce f (p1), rovinu : y = 2 (p2, za vy- užití příkazu drawplane z knihovny mvcalp), křivku, která je průsečnicí ro- viny s grafem funkce f (p3) a konečně tečnu k této křivce v bodě [1, 2] (p4), ležící v rovině . Parciální derivace funkce f podle x udává směrnici této tečny (smerx). Jednotlivé PC-grafy nevykreslujeme na obrazovku, v závěru je pomocí příkazu display3d složíme do výsledného PC-grafu (obr. 12.1): > f:=(x,y)->x+y^2-x^3*y; f := ( x, y ) x + y2 - x3 y > bod:=[1,2]; bod := [ 1, 2 ] 184 Derivace funkce v Maplu > p1:=plot3d(f(x,y),x=-2..2,y=-3..3,axes=framed): > with(mvcalp): > with(plots): > p2:=drawplane(y=bod[2],x=-2..2, z=-10..20, > axes=framed): > p3:=plot3d([x,bod[2],f(x,bod[2])],x=-2..2,y=-3..3, > axes=framed, thickness=3, color=black): > smerx:=limit((f(bod[1]+h,bod[2])-f(bod[1],bod[2]))/h, > h=0); smerx := -5 > p4:=spacecurve(evalm([bod[1],bod[2], > f(bod[1],bod[2])]+t*[1,0,smerx]), > t=-3..1, color=black, thickness=3): > display3d({p1,p2,p3,p4}, labels=[x,y,z]); -2 -1 0 1 2 x -3 -2 -1 0 1 2 3 y -10 0 10 20 30 z obr. 12.1 -2 -1 0 1 2 x -3 -2 -1 0 1 2 3 y -10 0 10 20 30 z obr. 12.2 Obdobně generujme i PC-graf znázorňující parciální derivaci podle y. Zkou- maná funkce je zde uvedena z jiného úhlu pohledu (obr. 12.2): > g2:=drawplane(x=bod[1],y=-3..3,z=-10..20): > g3:=plot3d([bod[1],y,f(bod[1],y)], x=-2..2, y=-3..3, > thickness=3, color=black): > smery:=limit((f(bod[1],bod[2]+h)-f(bod[1],bod[2]))/h, > h=0); smery := 3 Geometrický význam parciálních derivací 185 > g4:=spacecurve(evalm([bod[1],bod[2],f(bod[1],bod[2])] > +t*[0,1,smery]), t=-4..1, color=black, thickness=3): > display3d({p1,g2,g3,g4}, labels=[x,y,z], > orientation=[129,-131]); Uvedené postupy jsou univerzální a umožňují generovat tento PC-graf pro libovolnou funkci, která má v zadaném bodě parciální derivace pouze změnou zadání funkce a souřadnic bodu, ve kterém parciální derivace počítáme. Samo- statné generování těchto PC-grafů studenty v počítačové laboratoři je vhodným cvičením na pochopení geometrického významu parciálních derivací. Skutečnost, že z existence parciálních derivací funkce f (x, y) v bodě [x0, y0] neplyne spojitost v tomto bodě, ilustruje následující příklad: Příklad 12.2. Funkce f (x, y) = x4 y2 x8+y4 pro (x, y) = (0, 0), 0 pro (x, y) = (0, 0) > f:=(x,y)->if (x=0 and y=0) then 0 > else (x^4*y^2)/(x^8+y^4) fi: má v bodě [0, 0] obě parciální derivace (rovny nule): > limit((f(x,0)-f(0,0))/(x-0), x=0); 0 > limit((f(0,y)-f(0,0))/(y-0), x=0); 0 a není zde spojitá, nebot' blížíme­li se k bodu [0, 0] po parabolách y = kx2 , dostá- váme: > Limit(f(x, k*x^2), x=0)=limit(f(x, k*x^2), x=0); lim x0 x8 k2 x8 + k4 x8 = k2 1 + k4 To však znamená, že lim(x,y)(0,0) f (x, y) neexistuje a tedy funkce f není v bodě [0, 0] spojitá (obr. 12.3). > plot3d(f, -1..1, -1..1, style=patchcontour, > axes=boxed, grid=[100,100], orientation=[-45,35], > contours=7, labels=[x,y,'z']); 186 Derivace funkce v Maplu -1 -0.5 0 0.5 1 x -1 -0.5 0 0.5 1 y 0 0.1 0.2 0.3 0.4 0.5 z obr. 12.3 12.3 Derivace vyšších řádů K výpočtu derivací vyšších řádů se používá stejného příkazu jako pro derivaci prvního řádu, navíc pouze zadáme, kolikrát podle které proměnné derivujeme. Efektivnost výpočtu ilustrujme na následujícím příkladě: Příklad 12.3. Ukažte, že pro funkci u = 1 x2 + y2 + z2 platí uxx + uyy + uzz = 0. > u:=(x,y,z)->1/sqrt(x^2+y^2+z^2); u := ( x, y, z ) 1 sqrt( x2 + y2 + z2 ) > st := time(): > diff(u(x,y,z),x$2)+diff(u(x,y,z),y$2)+ > diff(u(x,y,z),z$2); Derivace vyšších řádů 187 3 x2 ( x2 + y2 + z2 )5/2 - 3 1 ( x2 + y2 + z2 )3/2 + 3 y2 ( x2 + y2 + z2 )5/2 + + 3 z2 ( x2 + y2 + z2 )5/2 > simplify("); 0 Tím je zkoumaná rovnost ověřena. Dobu výpočtu v sekundách určíme příkazem: > time() - st; .050 Následující příklad ukazuje, že bez předpokladu spojitosti smíšených parciál- ních derivací fxy, fyx v bodě [x0, y0] rovnost fxy(x0, y0) = fyx (x0, y0) obecně neplatí. Příklad 12.4. Necht' je funkce f dána předpisem f (x, y) = xy3-x3 y x2+y2 pro (x, y) = (0, 0), 0 pro (x, y) = (0, 0). Ukažte, že pro tuto funkci je fxy(0, 0) = fyx (0, 0). Počítejme postupně parciální derivace 1. řádu fx (x, y) = y3-3x2 y x2+y2 - 2x(xy3-x3 y) (x2+y2)2 , (x, y) = (0, 0), 0 (x, y) = (0, 0). Pro výpočet fx (0, 0) jsme použili definice fx (0, 0) = limh0 f (h,0)- f (0,0) h . Ob- dobně fy(x, y) = 3xy2-x3 x2+y2 - 2y(xy3-x3 y) (x2+y2)2 , (x, y) = (0, 0), 0 (x, y) = (0, 0). Využitím těchto výsledků plyne z definice parciálních derivací 2. řádu fxy(0, 0) = lim h0 fx (0, h) - fx (0, 0) h = lim h0 h - 0 h = 1, fyx (0, 0) = lim h0 fy(h, 0) - fy(0, 0) h = lim h0 -h - 0 h = -1. 188 Derivace funkce v Maplu Tedy pro tuto funkci je fxy(0, 0) = fyx (0, 0). Výpočet: > f:=(x,y)->if (x=0 and y=0) then 0 > else (x*y^3-x^3*y)/(x^2+y^2) fi: > D[1](f)(x,y); y3 - 3 x2 y x2 + y2 - 2 ( x y3 - x3 y ) x ( x2 + y2 )2 > D[2](f)(x,y); 3 x y2 - x3 x2 + y2 - 2 ( x y3 - x3 y ) y ( x2 + y2 )2 > fx0:=limit((f(h,0)-f(0,0))/h, h=0); fx0 := 0 > fy0:=limit((f(0,h)-f(0,0))/h, h=0); fy0 := 0 > limit((D[1](f)(0,h)-fx0)/h, h=0); 1 > limit((D[2](f)(h,0)-fy0)/h, h=0); -1 Počítačem generujme PC-graf funkce, kterou si jinak umíme jen velmi ob- tížně představit. Tento PC-graf je zajímavý i tím, že z něj není vidět, že smíšené parciální derivace nejsou záměnné (obr. 12.4): > plot3d(f, -3..3, -3..3, style=patch, axes=boxed, > labels=[x,y,'z']); Směrové derivace 189 -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y -2 -1 0 1 2 z obr. 12.4 12.4 Směrové derivace Na rozdíl od parciálních derivací nemáme v Maplu k dispozici přímý příkaz k vý- počtu směrových derivací. K výpočtu tedy používáme přímo Definice 3.3. V Ma- plu zápis vypadá takto: > Limit((f(x[0]+t*u[1], y[0]+t*u[2])-f(x[0],y[0]))/t, > t=0); lim t0 f (x0 + t u1, y0 + t u2) - f (x0, y0) t Příklad 12.5. Určete směrovou derivaci funkce g(x, y) = x2 + y2 - x cos(y) - y sin(x) v bodě [-1, 2] ve směru vektoru u = (2/ (5), 1/ (5)). Nejdříve definujme funkci g(x, y): > g:=(x,y)->x^2+y^2-x*cos(Pi*y)-y*sin(Pi*x); g := ( x, y ) x2 + y2 - x cos( y ) - y sin( x ) 190 Derivace funkce v Maplu a nyní aplikujme definici: > Dg(-1,2):=limit((g(-1+t*2/sqrt(5), > 2+t*1/sqrt(5))-g(-1,2))/t, t=0); Dg( -1, 2 ) := - 2 5 5 + 4 5 5 Ke znázornění geometrického významu směrových derivací použijeme podob- ného postupu jako u derivací parciálních. Generování tohoto PC-grafu je opět vhodným cvičením na pochopení geometrického významu a definice směrových derivací. PC-grafem znázorníme směrovou derivaci funkce f (x, y) = x2 + y2 ve směru vektoru u = (1, 1) v bodě [1, 1]. Tvorbu rozdělme do několika samostatných částí, postupně generujme PC- -graf funkce f (s1), rovinu y = x (s2, znázorňuje směr vektoru u, v tomto případě ji zadáváme parametricky), křivku, která je průsečnicí roviny s grafem funkce (s3, tedy funkci jedné proměnné (t), jejíž derivaci hledáme) a konečně tečnu k (t) v bodě [1, 1] (s4). Výsledný PC-graf je znázorněn na obrázku 12.5. -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y -5 0 5 10 15 z obr. 12.5 > f:=(x,y)->x^2+y^2; f := ( x, y ) x2 + y2 Směrové derivace 191 > bod:=[1,1]; bod := [ 1, 1 ] > u:=[1,1]; u := [ 1, 1 ] > s1:=plot3d(f(x,y), x=-3..3, y=-3..3): > s2:=plot3d([bod[1]+u[1]*t, bod[2]+u[2]*t,z], t=-4..2, > z=-5..18, grid=[5,5]): > with(plots): > s3:=spacecurve([bod[1]+u[1]*t, bod[2]+u[2]*t, > f(bod[1]+u[1]*t, bod[2]+u[2]*t)], t=-4..2, > thickness=3, color=black): > smer:=limit((f(bod[1]+t*u[1], > bod[2]+t*u[2])-f(bod[1], bod[2]))/t, t=0); smer := 4 > s4:=spacecurve(evalm([bod[1],bod[2], f(bod[1], > bod[2])]+t*[u[1],u[2],smer]), t=-2..2, thickness=3): > display3d({s1,s2,s3,s4}, scaling=constrained, > orientation=[-28,-170], labels=[x,y,z], axes=framed); Změnou zadání funkce, bodu (bod) a vektoru u (u) můžeme generovat další PC- -grafy. V příkladu 12.2 jsme ukázali, že z existence parciálních derivací funkce f v bodě [x0, y0] neplyne spojitost funkce v tomto bodě. Nyní na stejné funkci uká- žeme, že ani existence směrové derivace v bodě [x0, y0] ve směru libovolného vektoru u není postačující pro spojitost. Příklad 12.6. Ukažte, že funkce f definovaná předpisem f (x, y) = x4 y2 x8+y4 pro (x, y) = [0, 0], 0 pro (x, y) = [0, 0] má v bodě [0, 0] směrovou derivaci ve směru libovolného vektoru u V2 a přesto není v tomto bodě spojitá. (V2 je označení pro zaměření 2-rozměrného euklidov- ského prostoru.) 192 Derivace funkce v Maplu Je­li 0 = u = (u1, u2) V2 libovolný vektor, pak podle definice směrové derivace platí fu(0, 0) = lim t0 1 t [ f (0 + tu1, 0 + tu2) - f (0, 0)] = lim t0 t4 u4 1 t2 u2 2 t(t8u8 1 + t4u4 2) = = lim t0 tu4 1u2 t4u8 1 + u4 2 = 0. > f:=(x,y)->if (x=0 and y=0) then 0 > else (x^4*y^2)/(x^8+y^4) fi: > Limit((f(0+t*u[1], 0+t*u[2])-f(0,0))/t, t=0)= > limit((f(0+t*u[1], 0+t*u[2])-f(0,0))/t, t=0); lim t0 t5 u1 4 u2 2 t8 u1 8 + t4 u2 4 = 0 Přitom v příkladu 12.2 jsem ukázali, že funkce f není v bodě [0, 0] spojitá, viz také příklad 3.5 a obr. 12.3. 12.5 Parciální derivace složených funkcí Výpočty parciálních derivací složené funkce dvou proměnných jsou úkolem po- měrně početně náročným, v učitelském studiu dnes probíráme pouze výpočet par- ciální derivace složené funkce prvního řádu. Ukážeme zde možnost, jak tyto vý- počty značně zjednodušit za pomoci počítače. Pomocí Maplu lze vzorce pro parciální derivace 1. řádu složené funkce dvou proměnných v obecném bodě [u, v] (Věta 5.1) zapsat takto: > dFdx:=Diff(f(u,v),u)*Diff(u(x,y),x)+ > Diff(f(u,v),v)*Diff(v(x,y),x); dFdx := u f( u, v ) x u( x, y ) + v f( u, v ) x v( x, y ) > dFdy:=Diff(f(u,v),u)*Diff(u(x,y),y)+ > Diff(f(u,v),v)*Diff(v(x,y),y); dFdy := u f( u, v ) y u( x, y ) + v f( u, v ) y v( x, y ) Parciální derivace složených funkcí 193 Úkolem pro studenty do počítačové laboratoře je využití těchto vzorců v procedu- rách pro výpočet parciálních derivací složených funkcí: > dzd1:=proc(z,uu,vv,u,v,x,y) > diff(z,u)*diff(uu,x)+diff(z,v)*diff(vv,x); > end: > dzd2:=proc(z,uu,vv,u,v,x,y) > diff(z,u)*diff(uu,y)+diff(z,v)*diff(vv,y); > end: Procedury dzd1 a dzd2 určují parciální derivaci 1. řádu složené funkce dvou proměnných. Parametry procedury jsou: z je funkce z = f (u, v), uu je funkce u(x, y), vv je funkce v(x, y) a u, v, x a y jsou proměnné, ve kterých jsou funkce zapsány (můžeme použít libovolné označení proměnných, viz příklad 12.8). Pro- cedury můžeme použít i obecně na funkce z(u, v), u(x, y) a v(x, y), přičemž dzd1 počítá parciální derivaci podle první proměnné (zde podle x) a dzd2 podle 2. proměnné (y): > dzd1(z(u,v), u(x,y), v(x,y), u,v,x,y); u z( u, v ) x u( x, y ) + v z( u, v ) x v( x, y ) > dzd2(z(u,v), u(x,y), v(x,y), u,v,x,y); u z( u, v ) y u( x, y ) + v z( u, v ) y v( x, y ) Příklad 12.7. Je dána funkce z = eu sin v, kde u = xy a v = x + y. Určete zx a zy. Použitím procedur dzd1 a dzd2 dostáváme: > zx:=dzd1(exp(u)*sin(v), x*y, x+y, u,v,x,y ); zx := eu sin( v ) y + eu cos( v ) > zy:=dzd2(exp(u)*sin(v), x*y, x+y, u,v,x,y ); zy := eu sin( v ) x + eu cos( v ) Dosazením za u a v dostáváme: > zx:=subs(u=x*y, v=x+y, zx); zx := e( x y ) sin( x + y ) y + e( x y ) cos( x + y ) 194 Derivace funkce v Maplu > zy:=subs(u=x*y, v=x+y, zy); zy := e( x y ) sin( x + y ) x + e( x y ) cos( x + y ) Poznámka 12.1. Pro řešení příkladu 12.7 můžeme použít i přímého výpočtu: > u:=(x,y)->x*y;v:=(x.y)->x+y; u := ( x, y ) x y v := x.y x + y > vyraz:=exp(u(x,y))*sin(v(x,y)); vyraz := e( x y ) sin( x + y ) > zx:=diff(vyraz,x); zx := y e( x y ) sin( x + y ) + e( x y ) cos( x + y ) > zy:=diff(vyraz,y); zy := x e( x y ) sin( x + y ) + e( x y ) cos( x + y ) V tomto případě jsou však vzorce pro výpočet parciálních derivací složené funkce ,,skryty" a tento postup je vhodný pouze pro kontrolu správnosti výpočtu. Příklad 12.8. Transformujte rovnici y fx (x, y) - x fy(x, y) = 0 do polárních souřadnic = arctan y x , r = x2 + y2. Označme z = f (x, y) a dosad'me do vzorců pro derivace prvního řádu: > alias(z=z(r,phi)); I, z (označení z=z(r,phi) bylo použito pro zjednodušení Mapleovského výstupu) > zx:=dzd1(z, sqrt(x^2+y^2), arctan(y/x), r,phi,x,y); zx := r z x x2 + y2 - z y x2 1 + y2 x2 Parciální derivace složených funkcí 195 > zy:=dzd2(z, sqrt(x^2+y^2), arctan(y/x), r,phi,x,y); zy := r z y x2 + y2 + z x 1 + y2 x2 Což po úpravě dává rovnici: > simplify(y*zx-x*zy=0); - z = 0 Poznámka 12.2. Řešení příkladu 12.8 opět za použití přímého výpočtu: > vyraz:=z(sqrt(x^2+y^2),arctan(y/x)); vyraz := z x2 + y2, arctan y x > zx:=diff(vyraz,x); zx := D1( z ) x2 + y2, arctan y x x x2 + y2 - D2( z ) x2 + y2, arctan y x y x2 1 + y2 x2 > zy:=diff(vyraz,y); zy := D1( z ) x2 + y2, arctan y x y x2 + y2 + D2( z ) x2 + y2, arctan y x x 1 + y2 x2 Označíme-li D1( z ) x2 + y2, arctan y x = z r a D2( z ) x2 + y2, arctan y x = z dostáváme: > zx:=subs({op(1,op(1,zy))= > Diff(z,r),op(1,op(2,zy))=Diff(z,phi)}, zx); zx := r z x x2 + y2 - z y x2 1 + y2 x2 196 Derivace funkce v Maplu > zy:=subs({op(1,op(1,zy))= > Diff(z,r),op(1,op(2,zy))=Diff(z,phi)}, zy); zy := r z y x2 + y2 + z x 1 + y2 x2 > simplify(y*zx-x*zy=0); - z = 0 Podobným způsobem je možno naprogramovat i procedury pro výpočet par- ciálních derivací druhého řádu: > dzdd1:=proc(z,uu,vv,u,v,x,y) > diff(z,u,u)*diff(uu,x)^2+2*diff(z,u,v)*diff(vv,x)* > diff(uu,x)+diff(z,v,v)*diff(vv,x)^2+diff(z,u)* > diff(uu,x,x)+diff(z,v)*diff(vv,x,x); > end: > dzdd2:=proc(z,uu,vv,u,v,x,y) > diff(z,u,u)*diff(uu,y)^2+2*diff(z,u,v)*diff(vv,y)* > diff(uu,y)+diff(z,v,v)*diff(vv,y)^2+diff(z,u)* > diff(uu,y,y)+diff(z,v)*diff(vv,y,y); > end: > dzdd12:=proc(z,uu,vv,u,v,x,y) > diff(z,u,u)*diff(uu,x)*diff(uu,y)+diff(z,u,v)* > diff(vv,y)*diff(uu,x)+diff(z,u,v)*diff(vv,x)* > diff(uu,y)+diff(z,v,v)*diff(vv,x)*diff(vv,y)+ > diff(z,u)*diff(uu,x,y)+diff(z,v)*diff(vv,x,y); > end: Zde dzdd1 je procedura pro výpočet druhé parciální derivace podle 1. proměnné, dzdd2 pro výpočet druhé parciální derivace podle druhé proměnné a dzdd12 pro výpočet smíšené parciální derivace, přičemž význam parametrů procedur je stejný jako u procedur pro výpočet prvních derivací. Nyní si pomocí těchto procedur připomeňme vzorce pro parciální derivace složené funkce 2. řádu v obecném bodě [u, v] (Věta 5.2): > alias(z=z(u,v)); I, z Parciální derivace složených funkcí 197 > dzdd1(z, u(x,y), v(x,y), u,v,x,y); 2 u2 z x u( x, y ) 2 + 2 2 u v z x v( x, y ) x u( x, y ) + 2 v2 z x v( x, y ) 2 + u z 2 x2 u( x, y ) + v z 2 x2 v( x, y ) > dzdd2(z, u(x,y), v(x,y), u,v,x,y); 2 u2 z y u( x, y ) 2 + 2 2 u v z y v( x, y ) y u( x, y ) + 2 v2 z y v( x, y ) 2 + u z 2 y2 u( x, y ) + v z 2 y2 v( x, y ) > dzdd12(z, u(x,y), v(x,y), u,v,x,y); 2 u2 z x u( x, y ) y u( x, y ) + 2 u v z y v( x, y ) x u( x, y ) + 2 u v z x v( x, y ) y u( x, y ) + 2 v2 z x v( x, y ) y v( x, y ) + u z 2 y x u( x, y ) + v z 2 y x v( x, y ) Možnosti nových procedur ilustrujeme na následujících příkladech. Příklad 12.9. Transformujte do nových nezávisle proměnných u = x + ay, v = = x - ay rovnici a2 zxx - zyy = 0. 198 Derivace funkce v Maplu Využitím procedur dzdd1 a dzdd2 dostáváme: > alias(z=z(u,v)); I, z > zxx:=dzdd1(z, x+a*y, x-a*y, u,v,x,y); zxx := 2 u2 z + 2 2 u v z + 2 v2 z > zyy:=dzdd2(z, x+a*y, x-a*y, u,v,x,y); zyy := 2 u2 z a2 - 2 2 u v z a2 + 2 v2 z a2 > simplify(a^2*zxx-zyy=0); 4 2 u v z a2 = 0 Příklad 12.10. Transformujte rovnici x2 zxx + y2 zyy - 2xyzxy + xzx + yzy = 0 do nezávisle proměnných u = xy a v = x/y. > zx:=dzd1(z, x*y,x/y,u,v,x,y); zx := u z y + v z y > zy:=dzd2(z, x*y,x/y,u,v,x,y); zy := u z x - v z x y2 > zxx:=dzdd1(z, x*y,x/y,u,v,x,y); zxx := 2 u2 z y2 + 2 2 v u z + 2 v2 z y2 Parciální derivace složených funkcí 199 > zyy:=dzdd2(z, x*y,x/y,u,v,x,y); zyy := 2 u2 z x2 - 2 2 v u z x2 y2 + 2 v2 z x2 y4 + 2 v z x y3 > zxy:=dzdd12(z, x*y,x/y,u,v,x,y); zxy := 2 u2 z y x - 2 v2 z x y3 + u z - v z y2 > tr:=expand(simplify(x^2*zxx+y^2*zyy- > 2*x*y*zxy+x*zx+y*zy=0)); tr := 4 x2 2 v2 z y2 + 4 x v z y = 0 Dalšími úpravami dostáváme: > tr:=factor(student[powsubs](x/y=v,tr)); tr := 4 v 2 v2 z v + v z = 0 > tr/(4*v); 2 v2 z v + v z = 0 Příklad 12.11. Transformujte rovnici zxx + zyy = 0 do polárních souřadnic x = r cos , y = r sin za předpokladu, že funkce z má spojité parciální derivace 2. řádu. > alias(z=z(x,y)); I, z > zr:=dzd1(z, r*cos(phi), r*sin(phi), x,y,r,phi); zr := x z cos( ) + y z sin( ) 200 Derivace funkce v Maplu > zrr:=dzdd1(z, r*cos(phi), r*sin(phi), x,y,r,phi); zrr := 2 x2 z cos( )2 + 2 2 y x z sin( ) cos( ) + 2 y2 z sin( )2 > zff:=dzdd2(z, r*cos(phi), r*sin(phi), x,y,r,phi); zff := 2 x2 z r2 sin( )2 - 2 2 y x z r2 cos( ) sin( ) + 2 y2 z r2 cos( )2 - x z r cos( ) - y z r sin( ) Vynásobíme-li vzorec pro zrr výrazem r2 a sečteme se vzorcem pro z, dostá- váme: > r2:=r^2*Diff(z,r,r)+Diff(z,phi,phi)= > simplify(r^2*zrr+zff); r2 := r2 2 r2 z + 2 f 2 z = r2 2 y2 z + 2 x2 z r2 - x z r cos( ) - y z r sin( ) Dosazením a úpravami dále dostáváme: > r2:=simplify(r2, [diff(z,x,x)+diff(z,y,y)=0, > Diff(z,r)]=zr); r2 := r2 2 r2 z + 2 2 z = -r r z > lhs(r2)-rhs(r2)=0; r2 2 r2 z + 2 2 z + r r z = 0 Kapitola 13 Aproximace funkce v Maplu V této kapitole se opět nabízí bohaté využití jak grafických, tak i výpočetních mož- ností počítačového systému. Postupně si všimneme zejména grafických možností při ilustraci pojmů diferencovatelná funkce a tečná rovina, výpočetních možností při určování diferenciálů a při přibližných výpočtech pomocí diferenciálu. Na zá- věr použijeme počítače při hledání kmenové funkce. 13.1 Diferencovatelná funkce Pomocí počítačové grafiky nyní ilustrujme pojem diferencovatelná funkce a vztahy mezi diferencovatelností, spojitostí a existencí parciálních derivací. Příklad 13.1. Funkce f (x, y) = arctan(xy) je diferencovatelná v bodě [0, 0] (obr. 13.1), protože má v tomto bodě spojité parciální derivace (Věta 4.3). Ověřme spojitost parciálních derivací: > f:=(x,y) -> arctan(x*y); > plot3d(f(x,y),x=-3..3,y=-3..3,axes=framed, > grid=[20,20],orientation=[-50,40],labels=[x,y,z], > style=patch); f := ( x, y ) arctan( x y ) > dx:=D[1](f); dx := ( x, y ) y 1 + x2 y2 202 Aproximace funkce v Maplu -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y -1.5 -1 -0.5 0 0.5 1 1.5 z obr. 13.1 > dx(0,0); 0 > dy:=D[2](f); dy := ( x, y ) x 1 + x2 y2 > dy(0,0); 0 Limity lim(x,y)(0,0) y 1+x2 y2 a lim(x,y)(0,0) x 1+x2 y2 určíme dosazením souřadnic li- mitního bodu: > limit(dx(x,y),{x=0,y=0}); 0 > limit(dy(x,y),{x=0,y=0}); 0 tedy limita parciálních derivací v bodě [0, 0] je rovna jejich funkční hodnotě v tomto bodě a parciální derivace jsou v bodě [0, 0] spojité. Ze samotné existence parciálních derivací funkce v bodě [x0, y0] však dife- rencovatelnost neplyne. Diferencovatelná funkce 203 Příklad 13.2. Funkce f (x, y) = x2 y x2+y2 , [x, y] = [0, 0], 0, [x, y] = [0, 0] není v bodě [0, 0] diferencovatelná (PC-graf obr. 11.2), i když má v bodě [0, 0] obě parciální derivace (rovny nule). Tuto skutečnost ukážeme pomocí definice. Zjistěme nejprve, zda existují parciální derivace funkce f v bodě [0, 0]: > f:=(x,y)->if x=0 and y=0 then 0 > else (x^2*y)/(x^2+y^2) fi: > A:=subs(x=0,y=0,diff(f(x,y),x)); A := 0 > B:=subs(x=0,y=0,diff(f(x,y),y)); B := 0 To znamená, že obě vyšetřované parciální derivace existují a jsou rovny nule. Má-li být funkce f diferencovatelná v bodě [0, 0], musí podle definice platit lim (h,k)(0,0) f (h, k) - f (0, 0) - (0h + 0k) h2 + k2 = 0. Vypočtěme limitu na levé straně této rovnosti: > l:=(f(h,k)-f(0,0)-(A*h+B*k))/(sqrt(h^2+k^2)); l := h2 k ( h2 + k2 )3/2 Transformací do polárních souřadnic dostáváme: > Limit(subs(h=r*cos(phi), k=r*sin(phi), l), r=0, > right)=simplify(limit(subs(h=r*cos(phi), > k=r*sin(phi), l), r=0, right)); lim r0+ r3 cos( )2 sin( ) r2 cos( )2 + r2 sin( )2 3/2 = cos( )2 sin( ) Výsledek závisí na , tedy daná limita neexistuje, a proto funkce f není v bodě [0, 0] diferencovatelná. Je­li funkce f (x, y) v bodě [x0, y0] spojitá, nemusí být v tomto bodě diferen- covatelná (ze spojitosti v bodě [x0, y0] neplyne diferencovatelnost v tomto bodě). 204 Aproximace funkce v Maplu Příklad 13.3. Funkce f (x, y) = x2 + y2 je v bodě [0, 0] spojitá, ale není v tomto bodě diferencovatelná, protože v tomto bodě neexistují parciální derivace (obr. 13.2). > f:=(x,y)->sqrt(x^2+y^2): > plot3d([r*cos(u), r*sin(u), r], r=0..3, u=0..2*Pi, > axes = framed,orientation=[45,60],shading=none, > tickmarks=[7,7,4],labels=[x,y,'z']); -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y 0 1 2 3 z obr. 13.2 Ověřme spojitost: platí lim (x,y)(0,0) x2 + y2 = 0 a f (0, 0) = 0, tj. funkce f je v bodě [0, 0] spojitá. Ukažme, že neexistují parciální derivace v bodě [0, 0]. Funkce f je symetrická vzhledem k proměnným x a y, proto stačí vyšetřit jen parciální derivaci podle x. Podle definice platí: > Limit((f(x,0)-f(0,0))/(x-0), x=0, left)= > limit((f(x,0)-f(0,0))/(x-0), x=0, left); lim x0- x2 x = -1 Diferencovatelná funkce 205 > Limit((f(x,0)-f(0,0))/(x-0), x=0, right)= > limit((f(x,0)-f(0,0))/(x-0), x=0, right); lim x0+ x2 x = 1 Jednostranné limity jsou různé, tedy parciální derivace podle x a y v bodě [0, 0] neexistují a funkce f není v tomto bodě diferencovatelná. Příklad 13.4. Funkce f (x, y) = cos y - |x| není diferencovatelná v bodech [0, y] (obr. 13.3). > f:=(x,y)->cos(y)-abs(x); f := ( x, y ) cos( y ) - |x| > plot3d(f(x,y),x=-5..5,y=-5..5,axes=framed, > grid=[31,29],orientation=[60,60],style=patch, > labels=[x,y,'z']); -4 -2 0 2 4 x -4 -2 0 2 4 y -6 -5 -4 -3 -2 -1 0 1 z obr. 13.3 Ukažme, že v bodech [0, y] neexistují parciální derivace podle x: > Limit((f(x,y0)-f(0,y0))/x, x=0, left) = > limit((f(x,y0)-f(0,y0))/x, x=0, left); lim x0- - |x| x = 1 206 Aproximace funkce v Maplu > Limit((f(x,y0)-f(0,y0))/x, x=0, right) = > limit((f(x,y0)-f(0,y0))/x, x=0, right); lim x0+ - |x| x = -1 Limita zleva se nerovná limitě zprava a tedy parciální derivace podle x v bodech [0, y] neexistují. Příklad 13.5. Funkce f (x, y) = |xy| je diferencovatelná v R2 s výjimkou bodů osového kříže, tj. bodů [x, y], kde x = 0 nebo y = 0 (obr. 13.4). > f:=(x,y)->sqrt(abs(x*y)); f := ( x, y ) sqrt( |x y| ) > plot3d(f(x,y), x=-3..3, y=-3..3, axes=framed, > style=patch, orientation=[70,55], tickmarks=[7,7,4], > labels=[x,y,'z']); -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y 0 1 2 3 z obr. 13.4 Diferencovatelná funkce 207 Najděme body, ve kterých existují a jsou spojité obě parciální derivace fx a fy. Podle Věty 4.3 je v takových bodech funkce diferencovatelná. Přímým derivová- ním dostaneme fx = |y| 1 2 sgn x |x| , fy = |x| 1 2 sgn y |y| . Tyto derivace jsou spojité na R2 kromě obou os x = 0 a y = 0, které je třeba vyšetřit zvlášt'. Nejprve vyšetříme parciální derivace podle x v bodech ležících na ose y kromě počátku [0, 0]. Uvažujme proto body [0, y0], y0 = 0 libovolné. Podle defi- nice derivace je: > Limit((f(x,y[0])-f(0,y[0]))/x, x=0, left)= > limit((f(x,y[0])-f(0,y[0]))/x, x=0, left); lim x0- |x y0| x = - > Limit((f(x,y[0])-f(0,y[0]))/x, x=0, right)= > limit((f(x,y[0])-f(0,y[0]))/x, x=0, right); lim x0+ |x y0| x = Jednostranné limity se nerovnají, ve vyšetřovaných bodech neexistuje parciální derivace podle x. Ze symetrie funkce f vzhledem k x a y plyne stejný výsledek pro parciální derivaci fy(x0, 0), x0 = 0. To znamená, že na osách x, y kromě bodu [0, 0] není funkce f (x, y) diferencovatelná. Zbývá vyšetřit diferencovatelnost v bodě [0, 0]. Opět nejprve vypočtěme par- ciální derivace: > A:=limit((f(x,0)-f(0,0))/x, x=0); A := 0 > B:=limit((f(0,y)-f(0,0))/y, y=0); B := 0 tj. v bodě [0, 0] obě parciální derivace existují a jsou rovny nule. Podle definice diferencovatelnosti musí platit lim (h,k)(0,0) f (h, k) - f (0, 0) - (0h + 0k) h2 + k2 = 0. 208 Aproximace funkce v Maplu Vyšetřeme limitu na levé straně rovnosti. Přechodem k polárním souřadnicím do- stáváme: > l:=(f(h,k)-f(0,0)-(A*h+B*k))/(sqrt(h^2+k^2)); l := |h k| h2 + k2 > Limit(subs(h=r*cos(phi), k=r*sin(phi), l), r=0, > right)=simplify(limit(subs(h=r*cos(phi), > k=r*sin(phi), l), r=0, right)); lim r0+ r2 cos( ) sin( ) r2 cos( )2 + r2 sin( )2 = |cos( )| |sin( )| Výsledek závisí na a uvažovaná limita tedy neexistuje, proto f není v bodě [0, 0] diferencovatelná. Příklad 13.6. Funkce f (x, y) = xy x2+y2 , [x, y] = [0, 0], 0, [x, y] = [0, 0] má v bodě [0, 0] obě parciální derivace rovny nule, nebot' > f:=(x,y)-> if x=0 and y=0 then 0 > else x*y/(x^2+y^2) fi: > limit((f(x,0)-f(0,0))/(x-0), x=0); 0 > limit((f(0,y)-f(0,0))/(y-0), y=0); 0 Jak jsme ukázali v kapitole Limita funkce, f nemá v bodě [0, 0] limitu, a proto zde nemůže být diferencovatelná (obr. 11.4). Opět musíme dávat pozor na nesprávnou interpretaci PC-grafu! Generujme PC-graf funkce f (x, y) = 5 1 + x2 + 6y2 . Diferencovatelná funkce 209 > f:=(x,y)->5/(1+x^2+6*y^2); f := ( x, y ) 5 1 1 + x2 + 6 y2 > plot3d(f(x,y), x=-2..2, y=-2..2, orientation=[13,66], > axes=framed, shading=none, labels=[x,y,'z']); Získaný PC-graf (obr. 13.5) svádí k domněnce, že funkce f není v bodě [0, 0] diferencovatelná. Ověřme spojitost parciálních derivací v bodě [0, 0]: > fx:=D[1](f); fx := ( x, y ) -10 x ( 1 + x2 + 6 y2 )2 > fx(0,0); 0 > limit(fx(x,y), {x=0, y=0}); 0 > fy:=D[2](f); fy := ( x, y ) -60 y ( 1 + x2 + 6 y2 )2 > fy(0,0); 0 > limit(fy(x,y), {x=0,y=0}); 0 Funkční hodnota v bodě [0, 0] funkce fx (x, y) je rovna limitě fx v bodě [0, 0], tedy parciální derivace fx v bodě [0, 0] je spojitá. Totéž platí i pro fy. Obě parciální derivace jsou v bodě [0, 0] spojité a funkce f (x, y) je tedy v tomto 210 Aproximace funkce v Maplu bodě diferencovatelná. Generujme znovu PC-graf funkce f , tentokrát ale pro x -0.1, 0.1 , y -0.1, 0.1 : > plot3d(f(x,y), x=-0.1..0.1, y=-0.1..0.1, > grid=[21,19], orientation=[13,66], axes=framed, > shading=none, labels=[x,y,'z']); Výsledný PC-graf (obr. 13.6) lépe ilustruje chování funkce f v okolí bodu [0, 0]. -2 -1 0 1 2 x -2 -1 0 1 2y 1 2 3 4 5 z obr. 13.5 -0.1 -0.05 0 0.05 0.1 x -0.1 -0.05 0 0.05 0.1y 4.7 4.75 4.8 4.85 4.9 4.95 5 z obr. 13.6 Diferenciál Při procvičování výpočtu diferenciálu můžeme využít i výpočetních a programo- vacích možností Maplu. Těchto využijeme zejména při výpočtech diferenciálů vyšších řádů. Příklad 13.7. Napište proceduru, která pro zadanou funkci spočítá její diferen- ciál. Pomocí této procedury určete diferenciál funkce f (x, y) = x3 + ln(xy) nej- prve v obecném bodě a poté v bodě [1, 3] s diferencemi h = 0.2, k = -0.01. > difer:=proc() > > local derx,dery,dif; > > if nargs=1 then > print(diff(args[1],x)*h+diff(args[1],y)*k); > fi; > if nargs=5 then > derx:=subs(x=args[2],y=args[3],diff(args[1],x)); > dery:=subs(x=args[2],y=args[3],diff(args[1],y)); > dif:=derx*args[4]+dery*args[5]; Diferencovatelná funkce 211 > RETURN(dif); > fi; > if nargs<>1 and nargs <>5 then print > ('Spatne_zadano') > fi; > end: Procedura difer má proměnlivý počet argumentů. Příkaz difer(f(x,y)); určuje totální diferenciál zadané funkce v obecném bodě, příkaz difer(f(x, y),x0,y0,h,k); totální diferenciál dané funkce v bodě [x0, y0] s diferen- cemi h, k: > f:=(x,y)->x^3+ln(x*y); f := ( x, y ) x3 + ln( x y ) > difer(f(x,y)); 3 x2 + 1 x h + k y > difer (f(x,y),1,3,0.2,-0.01); .7966666667 Příklad 13.8. Napište proceduru, která počítá diferenciál m­tého řádu funkce f . Pomocí této procedury poté určete d2 f pro f (x, y) = y/x a obecně diferenciál 3. řádu libovolné funkce f . > difern:=proc(funkce,m) > local j; > RETURN(sum(binomial(m,j)* > diff(funkce, x$j,y$(m-j))*h^j*k^(m-j), j=0..m)); > end: > difern(y/x,2); -2 h k x2 + 2 y h2 x3 > difern(f(x,y),3); 3 y3 f( x, y ) k3 + 3 3 y2 x f( x, y ) h k2 + 3 3 y x2 f( x, y ) h2 k + 3 x3 f( x, y ) h3 212 Aproximace funkce v Maplu 13.2 Tečná rovina ke grafu funkce V této části využijeme grafické i výpočetní možnosti Maplu k ilustraci geometric- kého významu totálního diferenciálu. Vlastní generování PC-grafu je opět vhod- ným cvičením, zde uvádíme dvě řešení postupná (student příklad řeší stejně jako pomocí tužky a papíru, jen k zápisu a výpočtům používá prostředí Maplu) a nově naprogramovanou funkci GraphTan. Uvádíme také dva přístupy ke konstrukci tečné roviny, příklad 13.9 ilustruje spíše analytický a příklad 13.10 spíše geomet- rický přístup ke konstrukci. Příklad 13.9. Určete rovnici tečné roviny funkce f (x, y) = 4 - x2 - y2 v bodě [3, 2]. Tečnou rovinu a funkci zakreslete do jednoho PC-grafu. Rovnice tečné roviny funkce z = f (x, y) v bodě [x0, y0] má tvar z = f (x0, y0) + fx (x0, y0)(x - x0) + fy(x0, y0)(y - y0). Dosad'me do tohoto vztahu: > f:=(x,y)->4-x^2-y^2; f := ( x, y ) 4 - x2 - y2 > fx(3,2):=subs(x=3,y=2, diff(f(x,y),x)); fx( 3, 2 ) := -6 > fy(3,2):=subs(x=3,y=2, diff(f(x,y),y)); fy( 3, 2 ) := -4 > TRovina:=(x,y)->f(3,2)+fx(3,2)*(x-3)+fy(3,2)*(y-2); TRovina := ( x, y ) f( 3, 2 ) + fx( 3, 2 ) ( x - 3 ) + fy( 3, 2 ) ( y - 2 ) > TRovina(x,y); 17 - 6 x - 4 y Nyní do jednoho PC-grafu umístíme společně funkci f a její tečnou rovinu: > P1:=plot3d(f(x,y), x=-4..4, y=-4..4, style=patch): > P2:=plot3d(TRovina(x,y), x=-2..2,y=-2..3): > with(plots): > display3d({P1,P2}, axes=boxed, view=-20..30, > labels=[x,y,'z']); Tečná rovina ke grafu funkce 213 -4 -2 0 2 4 x -4 -2 0 2 4 y -20 -15 -10 -5 0 5 z obr. 13.7 Na základě předchozího postupu je možno řešit úlohu: Najděte rovnici tečné roviny pro danou funkci a daný bod a zobrazte do jednoho PC-grafu tečnou rovinu společně s funkcí pomocí Mapleovského programovacího jazyku. > GraphTan := proc(f,xrange,yrange,pt) > > #definice lokalnich promennych > local xmin,xmax,ymin,ymax,x0,y0,z0,dx,dy,xsour,ysour, > tanfunc,gpha,gphb,tanpt,optio,rovnice; > > #Vyvolani nekterych prikazu z~knihovny plots > with(plots,pointplot): > with(plots,display): > > #Ziskani ruznych promennych ze vstupu > #Souradnice bodu dotyku > x0 := op(2,pt)[1]: > y0 := op(2,pt)[2]: > #Rozsah souradnic pro vykresleni grafu > xmin := op(1,op(2,xrange)): > xmax := op(2,op(2,xrange)): > ymin := op(1,op(2,yrange)): > ymax := op(2,op(2,yrange)): > #Parametry pro vykresleni grafu 214 Aproximace funkce v Maplu > optio:=args[5..nargs]; > > #Vypocet parcialnich derivaci podle x a y > #v bode (x0,y0) > dx := subs(x=x0,y=y0,diff(f,x)): > dy := subs(x=x0,y=y0,diff(f,y)): > > #Vypocet treti souradnice bodu dotyku > z0 := subs(x=x0,y=y0,f): > > #Dosazeni do rovnice pro tecnou rovinu > tanfunc:=z0+dx*(x-x0)+dy*(y-y0): > > #Pojmenovani grafu bodu dotyku jako tanpt, > #grafu funkce jako gpha a > #grafu tecne roviny jako gphb > tanpt:=pointplot({[x0,y0,z0]},color=red): > gpha := plot3d(f,xrange,yrange,optio): > xsour:=abs(xmax-xmin)/4; > ysour:=abs(ymax-ymin)/4; > gphb:=plot3d(tanfunc,x=x0-xsour..x0+xsour, > y=y0-ysour..y0+ysour,optio): > > #Vypis vysledku > rovnice:=z=tanfunc: > print(`Tecna rovina ma rovnici `); > print(rovnice); > > #Zobrazeni grafu plochy, tecne roviny a bodu dotyku > display ([gpha, gphb,tanpt]); > end: Proceduru voláme příkazem: GraphTan(funkce, x=a..b, y=c..d, bod=[x0,y0], volitelne_parametry); kde [x0, y0] jsou souřadnice bodu, ve kterém tečnou rovinu počítáme (funkce musí být v tomto bodě dife- rencovatelná). Nyní řešme předcházejí příklad pomocí této nové procedury: > with(mvcalp): > GraphTan(f(x,y),x=-4..4,y=-4..4,bod=[3,2],axes=boxed, > labels=[x,y,'z']); Tecna rovina ma rovnici z = 17 - 6 x - 4 y Tečná rovina ke grafu funkce 215 -4 -2 0 2 4 x -4 -2 0 2 4 y -20 -10 0 10 z obr. 13.8 Jiný přístup ke konstrukci tečné roviny (s využitím normály) ilustruje násle- dující příklad: Příklad 13.10. Uvažujte funkci f (x, y) = -(x2 + y2 ) a určete rovnici tečné ro- viny v bodě [-1, 1]. > f:=(x,y)->-(x^2+y^2); f := ( x, y ) -x2 - y2 > a:=1; b:=1; a := 1 b := 1 > K:=plot3d(f(x,y),x=-2..2,y=-2..2,axes=boxed, > color=blue): Sestrojme přímky L1 a L2, které jsou tečnami ke grafu funkce v bodě [-1, 1] (obr. 13.9): > with(plots): > dfdx:=subs({x=a,y=b},diff(f(x,y),x)); dfdx := -2 216 Aproximace funkce v Maplu > L1:=t->[a+t,b,f(a,b)+t*dfdx]; L1 := t [ a + t, b, f( a, b ) + t dfdx ] > J1:=spacecurve(L1(t),t=-3/2..1,axes=boxed, > color=black): > dfdy:=subs({x=a,y=b},diff(f(x,y),y)); dfdy := -2 > L2:=t->[a,b+t,f(a,b)+t*dfdy]; L2 := t [ a, b + t, f( a, b ) + t dfdy ] > J2:=spacecurve(L2(t),t=-3/2..1,axes=NORMAL, > color=black): > display3d({J1,J2,K},orientation=[10,80], > scaling=constrained, view=-4..0, labels=[x,y,'z']); Normálový vektor v bodě [-1, 1] určíme jako vektorový součin směrových vek- torů přímek L1 a L2 (obr. 13.10): > with(linalg): > N:=crossprod(L1(1)-L1(0),L2(1)-L2(0)); N := [ 2 2 1 ] > PL:=t->[a+t*N[1], b+t*N[2], f(a,b)+t*N[3]]; PL := t [a + t N1, b + t N2, f( a, b ) + t N3] > NL:=spacecurve(PL(t),t=-3/2..1,color=black): > display({J1,J2,K,NL}, orientation=[10,80],axes=boxed, > scaling=constrained, view=-4..0, labels=[x,y,'z']); Tečná rovina ke grafu funkce 217 -2 -1 0 1 2 x -2 -1 0 1 2y -4 -3 -2 -1 0 z obr. 13.9 -2 -1 0 1 2 3 x -2 -1 0 1 2 3 y -4 -3 -2 -1 0 z obr. 13.10 Skutečnost, že normálový vektor je kolmý na obě přímky, ověřme pomocí skalárního součinu: > dotprod(L1(t)-L1(0),N); dotprod(L2(t)-L2(0),N); 0 0 Rovnici tečné roviny dostáváme tak, že položíme skalární součin vektoru [x - a, y - b, z - f (a, b)] a normálového vektoru N roven nule (obr. 13.11). > tangenteqn:=dotprod([x-a,y-b,z-f(a,b)],N)=0; tangenteqn := 2 x - 2 + 2 y + z = 0 > Z:=solve(tangenteqn,z); Z := -2 x + 2 - 2 y > Plane:=plot3d(Z,x=a-1/2..a+1/2,y=b-1/2..b+1/2, > axes=boxed,color=RED,style=PATCH): > display({Plane,K},orientation=[10,80], > labels=[x,y,'z']); Poznámka 13.1. Pomocí Maplu můžeme konstruovat tečné roviny i k plochám daným parametricky a implicitně. Pro generování PC-grafů použijeme naprogra- 218 Aproximace funkce v Maplu -2 -1 0 1 2 x -2 -1 0 1 2y -8 -6 -4 -2 0 z obr. 13.11 movaných procedur ParamTan a ImplicitTan. Obě procedury jsou uloženy v knihovně mvcalp: > ParamTan([(3+cos(s))*cos(t), (3+cos(s))*sin(t), > sin(s)], s=0..2*Pi, t=0..2*Pi, point=[1,2]); > ImplicitTan(x^2+y^2+z^2=2, x=-2..2, y=-2..2, z=-2..2, > point=[1,1,0], style=patch, orientation=[-121,53], > scaling=constrained, labels=[x,y,'z']); -4 -2 0 2 4 x -4 -2 0 2 4 y -1 -0.5 0 0.5 1 z obr. 13.12 -2 -1 0 1 2 x -2 -1 0 1 2 y -2 -1 0 1 2 z obr. 13.13 Užití diferenciálu k přibližným výpočtům 219 Na obrázku 13.12 je anuloid daný parametricky rovnicemi x = (3+cos s) cos t, y = (3 + cos s) sin t, z = sin s a jeho tečná rovina v bodě [1, 2], na obrázku 13.13 koule daná implicitně rovnicí x2 + y2 + z2 = 2 a její tečná rovina v bodě [1, 1]. 13.3 Užití diferenciálu k přibližným výpočtům Nyní použijeme počítačového systému i k procvičování přibližných výpočtů po- mocí totálního diferenciálu. Rovnice tečné roviny je nejlepší lineární aproximací funkce f (x, y) v okolí bodu [x0, y0]. Uvažujme chybu této aproximace | f (x, y) - T Rovina(x, y)|. Necht' f (x, y) = 4 - x2 - y2 (příklad 4.9) a necht' [x, y] nabývá postupně hodnot [4, 3], [3.8, 2.8], [3.6, 2.6], [3.4, 2.4], [3.2, 2.2] a [3, 2]. Pomocí příkazu seq pozorujeme, jak se chyba aproximace zmenšuje s hod- notami blížícími se bodu [3, 2]: > seq(evalf(abs(f(4-i/5, 3-i/5)- > TRovina(4-i/5, 3-i/5))), i=0..5); 2., 1.280000000, .7200000000, .3200000000, .08000000000, 0 Jiný způsob řešení je možný pomocí příkazu zip: > zip((x,y)->abs(f(x,y)-TRovina(x,y)), > [4,3.8,3.6,3.4,3.2,3], [3,2.8,2.6,2.4,2.2,2]); [ 2, 1.28, .72, .32, .08, 0 ] K nalezení lineární aproximace funkce je možno použít i Taylorova polynomu, nebot' diferenciál funkce je Taylorovým polynomem stupně 1 (Taylorův polynom viz kapitola Derivace složené funkce, Taylorův vzorec). Následující příkazy ilu- strují použití příkazu mtaylor k nalezení lineární aproximace: > readlib(mtaylor); proc() ... end > mtaylor(f(x,y), [x=3,y=2], 2); 17 - 6 x - 4 y Příklad 13.11. Pomocí totálního diferenciálu přibližně vypočtěte ln(2.12 + 0.92 ). Určíme bod [x0, y0], diference dx a dy a najdeme funkci f (x, y) takovou, aby ln(2.12 + 0.92 ) = f (x0 + dx, y0 + dy) . = f (x0, y0) + fx (x0, y0) dx + fy(x0, y0) dy. 220 Aproximace funkce v Maplu K výpočtu tedy použijeme funkci f (x, y) = ln(x2 + y2 ), bod [2, 1] a diference dx = 0.1, dy = -0.1: > f:=(x,y)->ln(x^2+y^2); f := ( x, y ) ln( x2 + y2 ) > x0:=2:y0:=1:dx:=1/10:dy:=-1/10: Spočtěme diferenciál funkce f (x, y): > A:=D[1](f); A := ( x, y ) 2 x x2 + y2 > B:=D[2](f); B := ( x, y ) 2 y x2 + y2 > df:=(x,y)->A(x,y)*dx+B(x,y)*dy; df := ( x, y ) A( x, y ) dx + B( x, y ) dy > priblizna_hodnota:=f(x0,y0)+df(x0,y0); priblizna_hodnota := ln( 5 ) + 1 25 > evalf(priblizna_hodnota); 1.649437912 Předchozí výsledek nyní ověřme přímým výpočtem (Maple umožňuje provádět výpočty v oboru reálných čísel s téměř libovolnou přesností): > funkcni_hodnota:=f(x0+dx,y0+dy); funkcni_hodnota := ln 261 50 > evalf(funkcni_hodnota); 1.652497402 Taylorova věta 221 K výpočtu můžeme použít i procedury difer: > with(mvcalp): > f(x0,y0)+difer(f(x,y),x0,y0,dx,dy); ln( 5 ) + 1 25 > evalf("); 1.649437912 13.4 Taylorova věta K hledání Taylorova polynomu funkce dvou proměnných používáme v Maplu pro- ceduru mtaylor. Příklad 13.12. Najděte Taylorův polynom 2. stupně se středem v bodě [0, 0] pro funkci f (x, y) = sin x cos y. Proceduru mtaylor si zpřístupníme pomocí readlib: > readlib(mtaylor): Definujme funkci f a Taylorův polynom 2. stupně uložme do proměnné f 2: > f:=(x,y)->sin(x)*sin(y); f := ( x, y ) sin( x ) sin( y ) > f2:=mtaylor(f(x,y), [x=0,y=0], 3); f2 := x y Nyní zkonvertujme f 2 na funkci pomocí příkazu unapply: > f2:=unapply(f2,x,y); f2 := ( x, y ) x y a generujme postupně PC-grafy pro funkci f (obr. 13.14), její Taylorův poly- nom 2. stupně (obr. 13.15), vrstevnice funkce f (obr. 13.16) a vrstevnice T2(x, y) (obr. 13.17). 222 Aproximace funkce v Maplu obr. 13.14 obr. 13.15 > P1:=plot3d(f(x,y), x=-Pi..Pi, y=-Pi..Pi, > orientation=[45,60], style=patchcontour):"; > P2:=plot3d(f2(x,y), x=-Pi..Pi, y=-Pi..Pi, > orientation=[45,60], style=patchcontour):"; > plot3d(f(x,y), x=-Pi..Pi, y=-Pi..Pi, > orientation=[270,0], axes=normal, style=contour); > plot3d(f2(x,y), x=-Pi..Pi, y=-Pi..Pi, > orientation=[270,0], axes=normal, style=contour); -3 -2 -1 0 1 2 3 y -3 -2 -1 0 1 2 3 x obr. 13.16 -3 -2 -1 0 1 2 3 y -3 -2 -1 0 1 2 3 x obr. 13.17 Další PC-grafy znározňují funkci a její Taylorův polynom nad čtvercem [-0.5, 0.5] × [-0.5, 0.5], tedy v blízkém okolí bodu [0, 0] (obr. 13.18) a nad čtvercem [-, ] × [-, ] (obr. 13.19). > plots[display]({P1,P2}, axes=framed, > view=[-.5..0.5,-.5..0.5,-1..1], labels=[x,y,'z']); Taylorova věta 223 > plots[display]({P1,P2},orientation=[71,63], > axes=framed, labels=[x,y,'z']); Všimněme si, že v blízkém okolí bodu [0, 0] se Taylorův polynom T2(x, y) téměř shoduje s funkcí f (obr. 13.18). -0.4 -0.2 0 0.2 0.4 x -0.4 -0.2 0 0.2 0.4 y -1 -0.5 0 0.5 1 z obr. 13.18 -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y -10 -5 0 5 10 z obr. 13.19 Tuto skutečnost ilustrujme dále PC-grafy (obr. 13.20 a 13.21) znázorňujícími závislost chyby, které se dopustíme při aproximaci funkce f v okolí bodu [0, 0] Taylorovým polynomem 2. stupně, na vzdálenosti od tohoto bodu: > plot3d(f(x,y)-f2(x,y),x=-.5..0.5,y=-.5..0.5, > axes=framed,shading=zhue,labels=[x,y,'z']); > plot3d(f(x,y)-f2(x,y), x=-1..1, y=-1..1, > axes=framed, shading=zhue,labels=[x,y,'z']); -1 -0.5 0 0.5 1 x -1 -0.5 0 0.5 1 y -0.3 -0.2 -0.1 0 0.1 0.2 0.3 z obr. 13.20 -0.4 -0.2 0 0.2 0.4 x -0.4 -0.2 0 0.2 0.4 y -0.02 -0.01 0 0.01 0.02 z obr. 13.21 224 Aproximace funkce v Maplu Na obrázku 13.20 je chyba znázorněna nad čtvercem [-0.5, 0.5]×[-0.5, 0.5] a na obrázku 13.21 nad čtvercem [-1, 1]×[-1, 1]. Z PC-grafů je vidět, že pokud zvětšujeme vzdálenost od bodu [0, 0], zvětšuje se i chyba aproximace. Při použití procedury mtaylor však zůstává Taylorův vzorec ,,skryt uvnitř procedury". Maplu proto použijeme nyní i k procvičování výpočtů Taylorova po- lynomu a dále k přibližným výpočtům funkčních hodnot funkcí dvou proměn- ných. Příklad 13.13. Určete Taylorův polynom 2. stupně se středem v bodě [x0, y0] = = [1, 1] pro funkci f (x, y) = x/y. Příklad řešme postupně. Maple nám nejdříve pouze asistuje při výpočtu parciál- ních derivací a výsledek až nakonec ověříme pomocí procedury mtaylor. Spočtěme tedy všechny potřebné parciální derivace: > f:=(x,y)->x/y; f := ( x, y ) x y > fx:=D[1](f);fy:=D[2](f); fx := ( x, y ) 1 y fy := ( x, y ) - x y2 > fxx:=D[1,1](f);fxy:=D[1,2](f);fyy:=D[2,2](f); fxx := 0 fxy := ( x, y ) - 1 y2 fyy := ( x, y ) 2 x y3 Podle Věty 5.4 platí: > T2:=f(1,1)+fx(1,1)*(x-1)+fy(1,1)*(y-1)+ > (1/2)*((fxx(1,1)*(x-1)^2+2*fxy(1,1)*(x-1)*(y-1)+ > fyy(1,1)*(y-1)^2)); T2 := 1 + x - y - ( y - 1 ) ( x - 1 ) + ( y - 1 )2 Taylorova věta 225 > T2:=expand(T2); T2 := 1 + 2 x - 2 y - y x + y2 Nyní ověřme výsledek pomocí procedury mtaylor: > readlib(mtaylor): > T2:=mtaylor(f(x,y), [x=1,y=1],3); T2 := 1 + x - y - ( y - 1 ) ( x - 1 ) + ( y - 1 )2 > T2:=expand("); T2 := 1 + 2 x - 2 y - y x + y2 V obou případech jsme dostali stejný výsledek, T2(x, y) = 1 + 2x - 2y - xy + y2 . Příklad 13.14. Pomocí Taylorova polynomu 2. stupně určete přibližně (2.98)2 + (4.05)2. K výpočtu využijme Taylorova polynomu 2. stupně funkce f (x, y) = x2 + y2 v bodě [x0, y0] = [3, 4]: > f:=(x,y)->sqrt(x^2+y^2); f := ( x, y ) sqrt( x2 + y2 ) > f2:=mtaylor(f(x,y), [x=3,y=4], 3); f2 := 3 5 x + 4 5 y + 8 125 ( x - 3 )2 - 12 125 ( y - 4 ) ( x - 3 ) + 9 250 ( y - 4 )2 > f2:=unapply(f2,x,y); f2 := ( x, y ) 3 5 x + 4 5 y + 8 125 ( x - 3 )2 - 12 125 ( y - 4 ) ( x - 3 ) + 9 250 ( y - 4 )2 > aprox2:=f2(2.98,4.05); aprox2 := 5.028211600 226 Aproximace funkce v Maplu Funkční hodnotu můžeme v Maplu určit i přímým výpočtem: > sk:=f(2.98,4.05); sk := 5.028210417 Závěrem určeme chybu aproximace: > chyba:=sk-aprox2; -.1183 10-5 K aproximaci použijme nyní Taylorova polynomu 6. stupně a opět určeme chybu aproximace: > f6:=mtaylor(f(x,y), [x=3,y=4], 7): > f6:=unapply(f6,x,y): aprox6:=f6(2.98,4.05); aprox6 := 5.02821042 > sk:=f(2.98,4.05); sk := 5.02821042 > chyba2:=sk-aprox6; chyba2 := 0 Standardní nastavení přesnosti aproximativní aritmetiky v Maplu je na 9 platných míst. Protože rozdíl je až v řádu 10-15 , dostáváme při této přesnosti výpočtu chybu rovnu nule. Zvyšme tedy přesnost aproximativní aritmetiky a výpočet proved'me znovu. > Digits:=17; Digits := 17 > aprox6:=f6(2.98,4.05); aprox6 := 5.0282104172359360 > sk:=f(2.98,4.05); sk := 5.0282104172359374 > chyba2:=sk-aprox6; chyba2 := .14 10-14 Kmenová funkce 227 Z výsledků je vidět, že s rostoucím stupněm Taylorova polynomu se zmenšuje chyba aproximace. 13.5 Kmenová funkce Hledat kmenovou funkci můžeme taktéž pomocí příkazů Maplu. Uvádíme nejdříve řešení postupně po jednotlivých krocích, v závěru je pak příklad řešen pomocí Mapleovského programovacího jazyka. Příklad 13.15. Rozhodněte, zda je výraz (-1 + exy y + y cos(xy)) dx + (1 + exy x + x cos(xy)) dy diferenciálem nějaké funkce; v případě že ano, určete tuto funkci. > m:=(x,y)->-1+exp(x*y)*y+y*cos(x*y); m := ( x, y ) -1 + e( x y ) y + y cos( x y ) > n:=(x,y)->1+exp(x*y)*x+x*cos(x*y); n := ( x, y ) 1 + e( x y ) x + x cos( x y ) > m(x,y)*dx+n(x,y)*dy; ( -1 + e( x y ) y + y cos( x y ) ) dx + ( 1 + x e( x y ) + x cos( x y ) ) dy Nejprve ověřme, zda je zadaný výraz opravdu diferenciálem: > testeq(diff(m(x,y),y)=diff(n(x,y),x)); true Platí m(x, y) y = n(x, y) x , tj. zadaný výraz je diferenciálem jisté kmenové funkce H. Dále platí: > k1:=integrate(m(x,y),x); k1 := -x + e( x y ) + sin( x y ) 228 Aproximace funkce v Maplu Integrační konstantu označíme g(y) (její derivace podle x je nulová). Derivováním podle y: > k2:=diff(k1+g(y),y); k2 := x e( x y ) + x cos( x y ) + y g( y ) a dosazením do vztahu Hy = n(x, y) dostáváme: > k3:=solve(k2=n(x,y), diff(g(y),y)); k3 := 1 Odtud g (y) = 1 a g(y) = y + c. > k4:=integrate(k3,y); k4 := y > reseni:=k1+k4; reseni := -x + e( x y ) + sin( x y ) + y Zadaný výraz je tedy diferenciálem funkce H(x, y) = exy - x + y + sin(xy) + c, c R. Příklad 13.16. Napište proceduru, která určí, zda je zadaný výraz diferenciálem nějaké funkce a v případě, že ano, tuto funkci určí. > kmen:=proc(m,n) > if diff(m,y)=diff(n,x) then > simplify(integrate(m,x)+ > integrate(n-diff(integrate(m,x),y),y)); > else print(`Zadany vyraz neni diferencialem > zadne funkce`); > fi > end: Pomocí této procedury nyní určeme kmenovou funkci pro výraz (x2 - y2 ) dx + + (5 - 2xy) dy: > n:=(x,y)->5-2*x*y; n := ( x, y ) 5 - 2 x y > m:=(x,y)->x^2-y^2; m := ( x, y ) x2 - y2 Kmenová funkce 229 > kmen(m(x,y),n(x,y)); 1 3 x3 - y2 x + 5 y Vypočítali jsme, že zadaný výraz je diferenciálem funkce H(x, y) = x3 3 - y2 x + 5y + c, c R. Kapitola 14 Extrémy funkce v Maplu Tato část je pro počítačem podporovanou výuku velmi vhodná. S využitím gra- fických i výpočetních možností Maplu hledáme nejdříve lokální extrémy funkce dvou proměnných. Volbou příkladů ukazujeme i na nebezpečí bezmyšlenkovitého použití počítače k výpočtům, tj. zaměřujeme se na příklady, při jejichž řešení po- mocí Maplu dostáváme neúplné nebo nepřesné výsledky. Často se opakující po- stupy poté automatizujeme pomocí Mapleovského programovacího jazyka v pro- cedurách. Obdobně postupujeme i při hledání absolutních extrémů funkce dvou proměnných. 14.1 Lokální extrémy Pomocí grafických a výpočetních možností Maplu budeme nyní ilustrovat proble- matiku lokálních extrémů funkce dvou proměnných. Příklad 14.1. Uvažujme funkci f (x, y) = xye(- x2+y2 2 ) . > f := (x,y) -> x*y*exp(-(x^2+y^2)/2); f := (x, y) x y e(-1/2 x2-1/2 y2) Generujme PC-graf funkce f (obr. 14.1) a PC-graf, znázorňující vrstevnice funkce f (obr. 14.2): > plot3d(f(x,y),x=-3..3,y=-3..3,style =patch, > orientation=[70,65], axes=FRAMED, grid=[40,30], 232 Extrémy funkce v Maplu > labels=[x,y,z]); > with(plots): > contourplot(f(x,y),x=-3..3,y=-3..3, grid=[50,50], > axes=boxed); -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y -0.3 -0.2 -0.1 0 0.1 0.2 0.3 z obr. 14.1 -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y obr. 14.2 Z uvedených PC-grafů usuzujeme na lokální extrémy v každém ze čtyř kvad- rantů, a to na lokální maxima v prvním a třetím kvadrantu a na lokální minima ve druhém a čtvrtém kvadrantu. Tuto úvahu ověřme nyní výpočtem. Stacionární body najdeme řešením soustavy rovnic (viz Definice 6.2) f x = 0 f y = 0. > cp:=solve({diff(f(x,y),x)=0, > diff(f(x,y),y)=0}, {x,y}); cp := { x = 0, y = 0 }, { y = 1, x = 1 }, { y = -1, x = 1 }, { x = -1, y = 1 }, { x = -1, y = -1 } Tedy, podle předchozí úvahy patrně v bodech [1, 1] a [-1, -1] nastává lo- kální maximum, v bodech [-1, 1], [1, -1] lokální minimum a bod [0, 0] je sedlo- vým bodem. Tuto domněnku podpořme nejdříve generováním PC-grafů funkce f v blízkém okolí stacionárních bodů: > plot3d(f(x,y),x=-0.1..0.1,y=-0.1..0.1, > orientation = [70,65], style=patchcontour); > plot3d(f(x,y),x=0.9..1.1,y=0.9..1.1, > orientation = [70,65], style=patchcontour); Lokální extrémy 233 > plot3d(f(x,y),x=0.9..1.1,y=-1.1..-0.9, > orientation = [70,65], style=patchcontour); -0.1 -0.05 0 0.05 0.1 x -0.1 -0.05 0 0.05 0.1 y -0.01 -0.005 0 0.005 0.01 obr. 14.3 0.9 0.95 1 1.05 1.1 x 0.9 0.95 1 1.05 1.1 y 0.361 0.362 0.363 0.364 0.365 0.366 0.367 0.368 obr. 14.4 0.9 0.95 1 1.05 1.1 x -1.1 -1.05 -1 -0.95 -0.9 y -0.368 -0.367 -0.366 -0.365 -0.364 -0.363 -0.362 -0.361 obr. 14.5 Na obrázku 14.3 je okolí bodu [0, 0], jedná se tedy o sedlový bod, obr. 14.4 znázorňuje okolí bodu [1, 1] (lokální maximum) a obr. 14.5 znázorňuje okolí bodu [1, -1] (lokální minimum). Tyto úvahy podpořme opět výpočtem. Platí: > fxx := factor(diff(f(x,y),x,x)); fxx := x y e( - 1/2 x2-1/2 y2 ) ( -3 + x2 ) > fxy := factor(diff(f(x,y),x,y)); fxy := e( - 1/2 x2-1/2 y2 ) ( y - 1 ) ( y + 1 ) ( x - 1 ) ( x + 1 ) > fyy := factor(diff(f(x,y),y,y)); fyy := x y e( - 1/2 x2-1/2 y2 ) ( -3 + y2 ) > Delta:=factor(fxx*fyy-fxy^2); := -( e( - 1/2 x2-1/2 y2 ) )2 ( -5 x2 y2 + y4 x2 + x4 y2 + 1 - 2 x2 - 2 y2 + x4 + y4 ) > eval(subs(x=0,y=0,Delta)); -1 V souladu s dobře známou postačující podmínkou existence a charakteru extrému ve stacionárním bodě (Věta 6.2) v bodě [0, 0] extrém nenastává, jde o tzv. sedlový bod (obr. 14.3). V bodě [1, 1] nastává ostré lokální maximum (obr. 14.4), nebot': > subs(x=1,y=1,[Delta,fxx]); 4 ( e( -1 ) )2 , -2 e( -1 ) 234 Extrémy funkce v Maplu Obdobně prokážeme, že v bodě [-1, 1] a [1, -1] nastávají ostrá lokální minima a v bodě [-1, -1] ostré lokální maximum: > subs(x=-1,y=1,[Delta,fxx]); 4 ( e( -1 ) )2 , 2 e( -1 ) > subs(x=-1,y=-1,[Delta,fxx]); > subs(x=1,y=-1,[Delta,fxx]); 4 ( e( -1 ) )2 , -2 e( -1 ) 4 ( e( -1 ) )2 , 2 e( -1 ) Závěrem určeme funkční hodnoty v bodech extrémů: > zip(f,[1,-1,-1,1],[1,1,-1,-1]); [ e( -1 ) , -e( -1 ) , e( -1 ) , -e( -1 ) ] V bodech [1, 1] a [-1, -1] je tedy lokální maximum f (1, 1) = f (-1, -1) = 1/e a v bodech [1, -1] a [-1, 1] lokální minimum f (1, -1) = f (-1, 1) = -1/e. Předchozí příklad lze charakterizovat jako standardní. Následující příklady však poukazují na problémy, které při určování lokálních extrémů funkcí dvou proměn- ných pomocí Maplu mohou vzniknout. Příklad 14.2. Určete lokální extrémy funkce f (x, y) = x4 - 3x2 y + 3y - y3 . > f:= (x,y) -> x^4 - 3*x^2*y + 3*y - y^3; f := ( x, y ) x4 - 3 x2 y + 3 y - y3 > fx := D[1](f);fy := D[2](f); fx := ( x, y ) 4 x3 - 6 x y fy := ( x, y ) -3 x2 + 3 - 3 y2 Lokální extrémy 235 Parciální derivace položme rovny nule a pomocí Maplu řešme získanou soustavu rovnic: > cp := solve ({fx(x,y)=0, fy(x,y)=0}, {x,y}); cp := { y = 1, x = 0 }, { y = -1, x = 0 }, x = RootOf( 4 _Z2 - 3 ), y = 1 2 , { x = RootOf( _Z2 + 3 ), y = -2 } První dvě řešení jsme schopni snadno interpretovat, u druhých dvou je situace obtížnější. Převed'me proto řešení na snadněji interpretovatelný tvar: > cp := map (allvalues, {cp}); cp := x = 1 2 3, y = 1 2 , x = - 1 2 3, y = 1 2 , x = I 3, y = -2 , x = -I 3, y = -2 , { y = 1, x = 0 }, { y = -1, x = 0 } Nyní je vidět, že uvedená soustava rovnic má 6 řešení, dvě z řešení jsou však kom- plexní čísla. Protože v celé práci pracujeme v reálném oboru, komplexní kořeny odfiltrujeme pomocí procedury takereal (procedura je uložena v knihovně mvcalp): > with(mvcalp): > cp := takereal (cp); cp := x = 1 2 3, y = 1 2 , x = - 1 2 3, y = 1 2 , { y = 1, x = 0 }, { y = -1, x = 0 } Získali jsme tedy čtyři stacionární body [0, 1], [0, -1], [ 3 2 , 1 2 ] a [- 3 2 , 1 2 ]. Dále rozhodneme již standardním způsobem, zda má funkce f v získaných stacionárních bodech extrémy. Spočtěme druhé parciální derivace funkce f : > fxx := D[1](fx); > fyy := D[2](fy); > fxy := D[2](fx); fxx := ( x, y ) 12 x2 - 6 y fyy := ( x, y ) -6 y fxy := ( x, y ) -6 x 236 Extrémy funkce v Maplu a určeme hodnotu (x, y) = fxx fyy - [ fxy]2 ve stacionárních bodech: > Delta:=fxx(x,y)*fyy(x,y)-fxy(x,y)^2; := -6 ( 12 x2 - 6 y ) y - 36 x2 > for i from 1 to nops(cp) do > cp[i],simplify(subs(cp[i], [Delta, fxx(x,y)])); > od; x = 1 2 3, y = 1 2 , [ -45, 6 ] x = - 1 2 3, y = 1 2 , [ -45, 6 ] { x = 0, y = 1 }, [ 36, -6 ] { x = 0, y = -1 }, [ 36, 6 ] Podle získaných hodnot má funkce f lokální minimum v bodě [0, -1] a lokální maximum v bodě [0, 1], zbývající body jsou sedlové. Generujme nyní PC-graf funkce f s vyznačenými stacionárními body (obr. 14.6) a vrstevnice f (obr. 14.7). -1.5 -1 -0.5 0 0.5 1 1.5 x -1.5 -1 -0.5 0 0.5 1 1.5 y -4 -2 0 2 4 6 8 10 12 14 z obr. 14.6 -1.5 -1 -0.5 0 0.5 1 1.5 x -1.5 -1 -0.5 0 0.5 1 1.5 y obr. 14.7 V práci používaná verze Maple V R3 neumožňuje grafické zvýraznění vy- braného bodu v PC-grafu. Zvýraznění bodu o souřadnicích [x, y, f (x, y)] dosáh- Lokální extrémy 237 neme přidáním bodů [x, y, f (x, y) + 0, 01] a [x, y, f (x, y) - 0, 01] do PC-grafu: > plt1 := plot3d (f(x,y), x=-1.5..1.5, y=-1.5..1.5): > pts := {seq (subs (op(i, cp), [x,y,f(x,y)]), > i=1..nops(cp)), > seq (subs (op(i, cp), [x,y,f(x,y)+0.01]), > i=1..nops(cp)), > seq (subs (op(i, cp), [x,y,f(x,y)-0.01]), > i=1..nops(cp))}: > display3d ({plt1, > pointplot (pts, symbol=circle, color=black)}, > axes=framed, labels=[x,y,'z']); > contourplot(f(x,y), x=-1.5..1.5, y=-1.5..1.5, > axes=boxed, grid=[50,50], contours=20); Poznámka 14.1. K výpočtu můžeme použít i příkazu hessian(f(x,y), [x,y]);, kterým spočteme matici 2 f (x,y) x2 2 f (x,y) xy 2 f (x,y) xy 2 f (x,y) y2 . Odpovídající část výpočtu pak vypadá takto: > with(linalg): > h:=hessian(f(x,y), [x,y]);fxx:=D[1,1](f); h := 12 x2 - 6 y -6 x -6 x -6 y fxx := ( x, y ) 12 x2 - 6 y > Delta:=det(h); := -72 x2 y + 36 y2 - 36 x2 > for i from 1 to nops(cp) do > cp[i],simplify(subs(cp[i], [Delta, fxx(x,y)])); > od; { x = 0, y = 1 }, [ 36, -6 ] 238 Extrémy funkce v Maplu { x = 0, y = -1 }, [ 36, 6 ] y = 1 2 , x = 1 2 3 , [ -45, 6 ] y = 1 2 , x = - 1 2 3 , [ -45, 6 ] Příklad 14.3. Určete lokální extrémy funkce z = 1 - x2 + y2. > z:=(x,y)->1-sqrt(x^2+y^2); z := ( x, y ) 1 - sqrt( x2 + y2 ) > plot3d(z(x,y),x=-3..3,y=-3..3,axes=boxed, > labels=[x,y,'z'],style=patch); Výsledek vidíme na obr. 14.8. -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y -3 -2 -1 0 1 z obr. 14.8 > cp:=solve({diff(z(x,y),x)=0, > diff(z(x,y),y)=0}, {x,y}); cp := Lokální extrémy 239 Daná funkce nemá stacionární body, nemůžeme tedy použít dříve uvedený postup. Protože podle Poznámky 6.1 funkce f : R2 R může mít lokální extrém pouze ve svém stacionárním bodě nebo v bodě, kde alespoň jedna z parciálních derivací neexistuje, hledáme body, ve kterých neexistují parciální derivace: > diff(z(x,y),x);diff(z(x,y),y); - x x2 + y2 - y x2 + y2 > D[1](z)(0,0); Error, (in unknown) division by zero V bodě [0, 0] neexistují parciální derivace prvního řádu, bod [0, 0] je bodem možného extrému. Přírůstek funkce z v tomto bodě z(x, y)-z(0, 0) = - x2 + y2 je záporný, tedy podle definice v bodě [0, 0] má funkce z maximum zmax = 1. Příklad 14.4. Určete lokální extrémy funkce z = xy ln(x2 + y2 ). > z:=(x,y)->x*y*ln(x^2+y^2); z := ( x, y ) x y ln( x2 + y2 ) > plot3d(z(x,y),x=-1.1..1.1, y=-1.1..1.1, axes=framed, > orientation=[-23,52], style=patch, labels=[x,y,'z']); > contourplot(z(x,y), x=-1.1..1.1, y=-1.1..1.1, > contours=25,numpoints=3000,color=black,axes=boxed); > r1:=diff(z(x,y),x)=0; r1 := y ln( x2 + y2 ) + 2 x2 y x2 + y2 = 0 > r2:=diff(z(x,y),y)=0; r2 := x ln( x2 + y2 ) + 2 x y2 x2 + y2 = 0 Řešme získanou soustavu: > cp1:=solve({r1,r2}, {x,y}); cp1 := { x = 0, y = -1 }, { y = 1, x = 0 }, { y = 0, x = -1 }, { x = 1, y = 0 } 240 Extrémy funkce v Maplu -1 -0.5 0 0.5 1 x -1 -0.5 0 0.5 1 y -1 -0.5 0 0.5 1 z obr. 14.9 -1 -0.5 0 0.5 1 x -1 -0.5 0 0.5 1 y obr. 14.10 Při presentovaných výpočtech používaná verze Maple V R3 v tomto případě není schopna symbolicky nalézt všechna řešení. Vypočítané stacionární body jsou jen [0, 1] a [1, 0]. Pomocí PC-grafů funkce z (obr. 14.9) a vrstevnic z (obr. 14.10) však usuzujeme, že v nalezených stacionárních bodech extrém nenastává a do- konce, že uvažovaná funkce má další čtyři stacionární body. Stejný úkol nyní řešme s použitím numerického řešení dané soustavy: > cp2:=fsolve({diff(z(x,y),x)=0, diff(z(x,y),y)=0}, > {x,y}, {x=0..1, y=-1..0}); cp2 := { y = -.4288819425, x = .4288819425 } > cp3:=fsolve({diff(z(x,y),x)=0, diff(z(x,y),y)=0}, > {x,y}, {x=0..1, y=0..1}); cp3 := { x = .4288819425, y = .4288819425 } > cp4:=fsolve({diff(z(x,y),x)=0, diff(z(x,y),y)=0}, > {x,y}, {x=-1..0, y=-1..0}); cp4 := { y = -.4288819425, x = -.4288819425 } > cp5:=fsolve({diff(z(x,y),x)=0, diff(z(x,y),y)=0}, > {x,y}, {x=-1..0, y=0..1}); cp5 := { y = .4288819425, x = -.4288819425 } Lokální extrémy 241 > cp:={cp1,cp2,cp3,cp4,cp5}; cp := {{ x = 0, y = -1 }, { y = 1, x = 0 }, { y = 0, x = -1 }, { x = 1, y = 0 }, { y = .4288819425, x = -.4288819425 }, { y = -.4288819425, x = .4288819425 }, { x = .4288819425, y = .4288819425 }, { y = -.4288819425, x = -.4288819425 }} > fxx := D[1,1](z):fyy := D[2,2](z): fxy := D[1,2](z): > Delta:=fxx(x,y)*fyy(x,y)-fxy(x,y)^2: > for i from 1 to nops(cp) do > cp[i],simplify(subs(cp[i], [Delta, fxx(x,y)])); > od; { x = 0, y = -1 }, [ -4, 0 ] { y = 1, x = 0 }, [ -4, 0 ] { y = 0, x = -1 }, [ -4, 0 ] { x = 1, y = 0 }, [ -4, 0 ] { y = .4288819425, x = -.4288819425 }, [ 4., -2. ] { y = -.4288819425, x = .4288819425 }, [ 4., -2. ] { x = .4288819425, y = .4288819425 }, [ 4., 2. ] { y = -.4288819425, x = -.4288819425 }, [ 4., 2. ] Numerický výpočet potvrzuje, že v bodech [0, 1] a [1, 0] extrém nenastává a navíc, že v bodech [ 1 2e , 1 2e ] a [ -1 2e , -1 2e ] je lokální minimum a v bodech [ 1 2e , -1 2e ] a [ -1 2e , 1 2e ] lokální maximum (viz příklad 6.3-ii)). 242 Extrémy funkce v Maplu Poznámka 14.2. Verze Maple V R4 již symbolicky řeší i soustavu pro získání všech stacionárních bodů správně: > z:=(x,y)->x*y*ln(x^2+y^2); z := (x, y) x y ln(x2 + y2 ) > cp1:=solve({diff(z(x,y),x)=0, > diff(z(x,y),y)=0}, {x,y}); cp1 := {x = 0, y = 1}, {x = 0, y = -1}, {y = 0, x = 1}, {y = 0, x = -1}, {y = %1, x = %1}, {y = %1, x = -%1} %1 := RootOf(-e(-1) + 2 _Z2 ) > cp1:=map(allvalues,{cp1}); cp1 := {{y = 0, x = 1}, {y = 0, x = -1}, {x = 0, y = 1}, {x = 0, y = -1}, {y = %2, x = %2}, {y = %1, x = %1}, {y = %2, x = %1}, {x = %2, y = %1}} %1 := - 1 2 2 e(-1) %2 := 1 2 2 e(-1) Příklad 14.5. Najděte lokální extrémy funkce z = (x2 + y2 )e-(x2+y2) . Řešením systému zx =(2x - 2x(x2 + y2 ))e-(x2+y2) = 0 zy =(2y - 2y(x2 + y2 ))e-(x2+y2) = 0 získáváme množinu stacionárních bodů, která se skládá z bodu [0, 0] a bodů kruž- nice x2 + y2 = 1: > z:=(x,y)->(x^2+y^2)*exp(-(x^2+y^2)); z := ( x, y ) ( x2 + y2 ) e( -x2-y2 ) > cp:={solve({diff(z(x,y),x)=0, > diff(z(x,y),y)=0}, {x,y})}; cp := { x = 0, y = -1 }, { y = 1, x = 0 }, { y = 0, x = -1 }, { x = 1, y = 0 }, y = y, x = 1 - y2 , y = y, x = - 1 - y2 , { y = 0, x = 0 } Lokální extrémy 243 > fxx := D[1,1](z):fyy := D[2,2](z): fxy := D[1,2](z): > Delta:=fxx(x,y)*fyy(x,y)-fxy(x,y)^2: Protože: > for i from 1 to nops(cp) do > cp[i],simplify(subs(cp[i], [Delta, fxx(x,y)])); > od; { y = 0, x = 1 }, [ 0, -4 e( -1 ) ] { y = 0, x = -1 }, [ 0, -4 e( -1 ) ] x = x, y = 1 - x2 , [ 0, -4 x2 e( -1 ) ] x = x, y = - 1 - x2 , [ 0, -4 x2 e( -1 ) ] { y = 0, x = 0 }, [ 4, 2 ] { x = 0, y = 1 }, [ 0, 0 ] { x = 0, y = -1 }, [ 0, 0 ] nastává v bodě [0, 0] lokální minimum (obr. 14.12). O existenci extrému v bo- dech kružnice nemůžeme tímto způsobem rozhodnout ( je v bodech kružnice x2 + y2 = 1 rovno nule). Pro ověření dostatečné podmínky v bodech ležících na kružnici x2 + y2 = 1, budeme funkci z považovat za funkci jedné proměnné t = x2 + y2 : z = te-t , pro kterou je bod t = 1 stacionárním bodem. Protože z = (t - 2)e-t je pro t = 1 záporná, má zde funkce z maximum. Tedy funkce z(x, y) má neostré maximum zmax = e-1 v bodech kružnice x2 + y2 = 1 (obr. 14.11). > plot3d(z(x,y), x=-3..3, y=-3..3, axes=boxed, > grid=[50,50], style=hidden, labels=[x,y,'z'], > color=black); > plot3d(z(x,y), x=-1..3, y=-1..3, axes=boxed, > grid=[40,40], style=hidden, orientation=[-69,47], > labels=[x,y,'z'], color=black); 244 Extrémy funkce v Maplu -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 z obr. 14.11 -1 0 1 2 3 x -1 0 1 2 3 y 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 z obr. 14.12 Poznámka 14.3. Funkce f (x, y) = (2x2 + 3y2 )e-(x2+y2) má ostré lokální minimum v bodě [0, 0], ostré lokální maximum v bodě [0, 1] a sedlové body v bodech [1, 0]. Absolutní extrém této funkce na kruhu M = {[x, y] R2 : x2 + y2 4} byl řešen v příkladu 6.6-ii). -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y 0 0.2 0.4 0.6 0.8 1 z obr. 14.13 -1.5 -1 -0.5 0 0.5 1 1.5 2 x -1 -0.5 0 0.5 1 1.5 2 y 0 0.2 0.4 0.6 0.8 1 z obr. 14.14 Často opakované postupy při hledání lokálních extrémů funkce dvou proměn- ných je možné opět automatizovat pomocí Mapleovského programovacího jazyka. Ukázkou možného řešení jsou procedury sing a mvextrem, jedinými parame- try těchto procedur jsou funkce, jejíž stacionární body, resp. lokální extrémy, ur- čujeme. Lokální extrémy 245 > sing:= proc( f) local cp; > cp:={solve( { diff(f,x)=0, diff(f,y)=0}, { x, y})}; > RETURN(cp) > end: > mvextrem:= proc( f) local zxx,zyy,zxy,D,i,p2,pom; > zxx:= diff( f, x, x); > zyy:= diff( f, y, y); > zxy:= diff( f, x, y); > pom:=map(allvalues,sing(f)); > pom:=takereal(pom); > for i from 1 to nops(pom) do > p2:=op(i, pom); > D:= > evalf(subs(p2,zxx)*subs(p2,zyy)-subs(p2,zxy)^2); > if D=0 then print( p2, ` nelze rozhodnout` ); > elif D<0 then print( p2, ` extrem nenastava` ); > else > if evalf(subs( p2, zxx )) > 0 then > print( p2,` lokalni minimum` ); > else print( p2,` lokalni maximum`); > fi; > fi; > od; > end: Příklad 14.6. Určete lokální extrémy funkce z = x4 + y4 - x2 - 2xy - y2 . K řešení použijeme připravených procedur: > mvextrem( x^4+ y^4- x^2-2*x*y-y^2); { x = 0, y = 0 }, nelze rozhodnout { y = 1, x = 1 }, lokalni minimum { y = -1, x = -1 }, lokalni minimum Ve stacionárním bodě [0, 0] je = 0, proto o existenci extrému v tomto bodě nelze standardním způsobem rozhodnout. Řešení však můžeme získat následujícím způsobem: funkci z upravíme na tvar z(x, y) = x4 + y4 -(x + y)2 . Odtud z(-x, x) = 2x4 > 0 pro x = 0. Na druhé straně z(x, 0) = x4 - x2 = x2 (1 - x2 ) < 0 pro x (-1, 0) (0, 1). Tedy v libovolně malém okolí bodu [0, 0] funkce z nabývá jak kladných, tak záporných hodnot, což 246 Extrémy funkce v Maplu spolu s faktem, že z(0, 0) = 0 znamená, že v tomto bodě lokální extrém nenastává (obr. 14.15 a 14.16). > plot3d(z(x,y), x=-2..2, y=-2..2, view=-3..5, > axes=boxed, style=patch, labels=[x,y,'z'], > orientation=[-64,51]); > contourplot(z(x,y), x=-2..2, y=-2..2, axes=boxed, > grid=[100,100], color=black, contours=20); -2 -1 0 1 2 x -2 -1 0 1 2 y -3 -2 -1 0 1 2 3 4 5 z obr. 14.15 -2 -1 0 1 2 x -2 -1 0 1 2 y obr. 14.16 Následující příklad ilustruje situaci, kdy je matice druhých derivací dané funkce ve stacionárním bodě pouze semidefinitní. V tomto případě je f (0, 0) = 0. Proto zde může i nemusí nastat lokální extrém, viz Poznámka 6.4. Příklad 14.7. Rozhodněte, zda funkce f (x, y) = x3 + y2 a g(x, y) = x2 + y4 mají v bodě [0, 0] extrém. > f:=(x,y)->x^3+y^2; f := ( x, y ) x3 + y2 Ověřme, že bod [0, 0] je stacionárním bodem: > cp:=sing(f(x,y)); cp := { { y = 0, x = 0 } } Dále: > fxx:=D[1,1](f):fxy:=D[1,2](f):fyy:=D[2,2](f): > Delta:=unapply(fxx(x,y)*fyy(x,y)-(fxy(x,y))^2,x,y); := ( x, y ) 12 x Lokální extrémy 247 > subs(cp[1], Delta(x,y)); 0 Protože = 0, nemůžeme tímto způsobem o existenci extrému rozhodnout. Ge- nerujme však PC-grafy uvažované funkce a jejich vrstevnic (obr. 14.17 a 14.18). > plot3d(f(x,y), x=-2..2, y=-2..2, axes=framed, > orientation=[80,80], style=patch, labels=[x,y,'z']); > contourplot(f(x,y), x=-2..2, y=-2..2, axes=boxed, > grid=[100,100], contours=20, color=black); -2-1012 x -2 -1 0 1 2 y -8 -6 -4 -2 0 2 4 6 8 10 12 z obr. 14.17 -2 -1 0 1 2 x -2 -1 0 1 2 y obr. 14.18 Podle PC-grafů předpokládáme, že v bodě [0, 0] extrém nenastává. Tuto hypo- tézu nyní ověříme výpočtem. Platí f (0, x) = x2 > 0 pro x = 0, ale zároveň platí f (x, 0) = x3 < 0 pro x (-, 0). Tedy v libovolném okolí bodu [0, 0] funkce f nabývá jak kladných, tak záporných hodnot, což spolu s faktem, že f (0, 0) = 0 znamená, že v tomto bodě lokální extrém nenastává. Analogicky: > g:=(x,y)->x^2+y^4; g := ( x, y ) x2 + y4 > plot3d(g(x,y), x=-2..2, y=-2..2, axes=framed, > orientation=[60,70], style=patch, labels=[x,y,z]); > contourplot(g(x,y), x=-2..2, y=-2..2, axes=boxed, > grid=[100,100], contours=20, color=black); 248 Extrémy funkce v Maplu -2 -1 0 1 2 x -2 -1 0 1 2 y 0 5 10 15 20 z obr. 14.19 -2 -1 0 1 2 x -2 -1 0 1 2 y obr. 14.20 > cp:=sing(g(x,y)); cp := { { y = 0, x = 0 } } > subs(cp[1], Delta(x,y)); 0 Přírůstek funkce g(x, y) - g(0, 0) = x4 + y2 > 0, tedy g má v bodě [0, 0] lokální minimum. Závěrem si ukážeme jednu z možností, jak pomocí Maplu generovat větší množství příkladů k ilustraci problematiky lokálních extrémů funkce dvou pro- měnných. Využijeme k tomu ,,symbolického zápisu funkce dvou proměnných s parametry", konkrétně v našem příkladu se třemi parametry: > ff:=(a,b,c)->c*exp(-(x-a)^2-(y-b)^2); ff := ( a, b, c ) c e(-( x-a )2-( y-b )2 ) > z1:=ff(2,3,1)+ff(2,-3,2)+ff(0,-2,2)+ff(-2,1,3); z1 := e(-( x-2 )2-( y-3 )2 ) + 2 e(-( x-2 )2-( y+3 )2 ) + 2 e(-x2-( y+2 )2 ) + 3 e(-( x+2 )2-( y-1 )2 ) > plot3d(z1, x=-4..4, y=-4..4, axes=boxed, color=black, > grid=[40,40], labels=[x,y,z], style=hidden, > tickmarks=[5,5,4]); > z2:=ff(1,1,-2)+ff(-1,-1,2); z2 := -2 e(-( x-1 )2-( y-1 )2 ) + 2 e(-( x+1 )2-( y+1 )2 ) Lokální extrémy 249 -4 -2 0 2 4 x -4 -2 0 2 4 y 0 1 2 3 z obr. 14.21 -4 -2 0 2 4 x -4 -2 0 2 4 y -2 -1 0 1 2 z obr. 14.22 > plot3d(z2, x=-4..4, y=-4..4, axes=boxed, color=black, > grid=[40,40], orientation=[-35,70], labels=[x,y,z], > style=hidden); Takto generované PC-grafy jsou názornější než u prozatím častěji k demon- stracím vlastností funkcí dvou proměnných používaných kvadratických a kubic- kých funkcí. Srovnejme proto předcházející dva PC-grafy (obr. 14.21 a 14.22) např. s PC-grafem funkce z = x3 - 3x2 + y3 - 3y + 1: > z:=x^3-3*x^2+y^3-3*y+1; z := x3 - 3 x2 + y3 - 3 y + 1 > plot3d(z, x=-3..3, y=-3..3, style=patchcontour, > axes=boxed, orientation=[-122,-150], > labels=[x,y,'z']); > plot3d(z, x=-3..3, y=-3..3, view=-6..4, > style=patchcontour, axes=boxed, > orientation=[-122,-150], labels=[x,y,'z']); Z PC-grafu na obr. 14.23 není patrné, že uvažovaná kubická funkce z má dva sedlové body a jedno lokální maximum a jedno lokální minimum. Až po dalším ,,zjemnění" rozsahu zobrazovaných hodnot dostáváme PC-graf (obr. 14.24), který lépe ilustruje problematiku lokálních extrémů. Z příkladů uvedených v této části tedy mimo jiné plyne, že pro názornější demonstraci lokálních vlastností funkcí dvou proměnných pomocí PC-grafů jsou výhodnější exponenciální funkce, na rozdíl od příkladů sloužících k početnímu hledání lokálních extrémů, kde se naopak více hodí polynomiální funkce. 250 Extrémy funkce v Maplu -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y -50 0 z obr. 14.23 -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y -6 -4 -2 0 2 4 z obr. 14.24 14.2 Absolutní extrémy Ukážeme si opět několik možností, jak pomocí Maplu hledat absolutní extrémy funkcí dvou proměnných. Příklad 14.8. Určete nejmenší a největší hodnotu funkce z = f (x, y) = x2 - y2 + + 4 na množině M = {[x, y] R2 : x2 + y2 1}. Definujme nejdříve funkci f a množinu M a poté generujme jejich PC-grafy s cí- lem demonstrovat PC-graf funkce f na množině M: > f:=(x,y)->x^2-y^2+4; f := ( x, y ) x2 - y2 + 4 > M:=x^2+y^2=1; M := x2 + y2 = 1 > p1:=plot3d(f(x,y), x=-1.2..1.2, y=-1.2..1.2, > axes=framed, orientation=[31,56]): > p2:=spacecurve([cos(t), sin(t), f(cos(t), sin(t))], > t=0..2*Pi, color=black, thickness=3, > orientation=[31,56]): > p3:=spacecurve([cos(t), sin(t), 0], t=0..2*Pi, > color=black, thickness=3, orientation=[31,56]): > display3d({p1,p2,p3}, labels=[x,y,z]); > p4:=spacecurve([cos(t),sin(t),f(cos(t),sin(t))+0.01], Absolutní extrémy 251 > t=0..2*Pi, color=black, thickness=3, > orientation=[31,56]): > display3d({p1,p3,p4}, labels=[x,y,z]); -1 -0.5 0 0.5 1 x -1 -0.5 0 0.5 1 y 0 1 2 3 4 5 z obr. 14.25 -1 -0.5 0 0.5 1 x -1 -0.5 0 0.5 1 y 0 1 2 3 4 5 z obr. 14.26 Poznámka 14.4. Všimněme si rozdílu u těchto dvou PC-grafů. Problémem je počítačové znázornění křivky tvořící hranici obrazu množiny M na ploše PC- -grafu funkce f (p3, obr. 14.25). Aby byla situace názornější, dopustíme se ,,ma- lého podvodu" a PC-graf křivky posuneme ,,kousek" nad PC-graf funkce f (p4, obr. 14.26). Přejděme nyní ke standardnímu postupu hledání absolutních extrémů funkce f . Určeme nejdříve stacionární body ležící uvnitř M: > with(mvcalp): > sing(f(x,y)); { { x = 0, y = 0 } } Dostáváme stacionární bod [0, 0] M. > f(0,0); 4 Nakonec vyšetřeme chování funkce f na hranici množiny M. Tuto hranici tvořenou kružnicí x2 +y2 = 1 si rozdělme na dvě části, na horní a dolní půlkružnici: > with(student): > r:=isolate(M,y); r := y = RootOf( _Z2 - 1 + x2 ) 252 Extrémy funkce v Maplu > r:=allvalues(r); r := y = 1 - x2, y = - 1 - x2 Dosazením těchto hodnot do vzorce definujícího funkci f , dostaneme funkci jedné reálné proměnné: > u1:=unapply(subs(r[1], f(x,y)), x); u1 := x 2 x2 + 3 Ta popisuje projekci uvažované množiny do roviny xy (viz. obrázek 14.26). Hle- dejme nyní absolutní extrémy takto konstruované funkce jedné proměnné pro x [-1, 1]: > solve(diff(u1(x), x)=0, x); 0 > u1(0); 3 > u1(-1);u1(1); 5 5 Pro druhý případ, kdy y = - 1 - x2, x [-1, 1] je situace stejná, nebot' f (x, -y) = f (x, y). Porovnáním funkčních hodnot funkce f na hranici mno- žiny M s funkční hodnotou funkce f v jejím jediném stacionárním bodě [0, 0] dojdeme k závěru, že fmin = 3 pro [x, y] = [0, 1] fmax = 5 pro [x, y] = [1, 0]. Poznámka 14.5. K výpočtu extrémů funkce f na hranici množiny M můžeme také použít přímo příkazu extrema(expr,constraints,,'s'). Například pro předchozí situaci: > extrema(f(x,y), M, {x,y}, 'body'); { 3, 5 } Absolutní extrémy 253 > body; { { y = 0, x = 1 }, { y = 0, x = -1 }, { x = 0, y = 1 }, { x = 0, y = -1 } } Příkaz extrema dává na výstupu maximální a minimální hodnotu funkce f na hranici množiny M a do proměnné 's' ukládá souřadnice bodů, ve kterých ma- ximum a minimum nastává. Využívá k tzv. hledání vázaných extrémů známé me- tody Lagrangeových multiplikátorů (Věta 9.1). Příkaz extrema ale většinou po- užíváme pouze ke kontrole výpočtů, protože podstata metody Langrangeových multiplikátorů při jeho použití zůstává skryta (viz příklad 14.12). Při řešení dalšího příkladu budeme ilustrovat postup stejný jako při výpočtu pomocí ,,tužky a papíru", pouze zápis budeme provádět formou Mapleovských příkazů. Příklad 14.9. Najděte absolutní extrémy funkce z = x2 + 2xy - 4x + 8y v obdél- níku určeném přímkami y = 0, x = 0, x = 1 a y = 2. > z:=(x,y)->x^2+2*x*y-4*x+8*y; z := ( x, y ) x2 + 2 x y - 4 x + 8 y Určeme stacionární body funkce z: > with(mvcalp): > sing(z(x,y)); { { x = -4, y = 6 } } Získaný bod [-4, 6] však nepatří do vyšetřovaného obdélníku. Vyšetřeme nyní funkci z na hranici obdélníku, tj. na úsečkách y = 0, x [0, 1], x = 0, y [0, 2], y = 2, x [0, 1] a x = 1, y [0, 2]. Dosazením dostáváme: > u1:=unapply(subs(y=0, z(x,y)), x); u1 := x x2 - 4 x a hledáme absolutní extrémy této funkce jedné proměnné na intervalu [0, 1]: > solve(diff(u1(x), x)=0, x); 2 254 Extrémy funkce v Maplu Ani tento stacionární bod nepatří do intervalu [0, 1] a vyšetříme tedy pouze funkční hodnoty v krajních bodech intervalu: > u1(0);u1(1); 0 -3 Obdobně postupujeme i na zbývajících úsečkách: > u2:=unapply(subs(x=0, z(x,y)), y); u2 := y 8 y > solve(diff(u2(y), y)=0, y); > u2(0);u2(2); 0 16 > u3:=unapply(subs(y=2, z(x,y)), x); u3 := x x2 + 16 > solve(diff(u3(x), x)=0, x); 0 > u3(0);u3(1); 16 17 > u4:=unapply(subs(x=1, z(x,y)), y); u4 := y -3 + 10 y Absolutní extrémy 255 > solve(diff(u4(y), y)=0, y); > u4(0);u4(2); -3 17 Porovnáním získaných funkčních hodnot funkce z na hranici vidíme, že fmin = -3 pro [x, y] = [1, 0] fmax = 17 pro [x, y] = [1, 2]. Graficky je příklad znázorněn na obr. 14.27. Grafické znázornění zde slouží pro kontrolu získaných výsledků. 0 1 x 0 0.5 1 1.5 2 y -2 0 2 4 6 8 10 12 14 16 z obr. 14.27 > plot3d(z(x,y), x=0..1, y=0..2, axes=boxed, > orientation=[-21,3], color=black, tickmarks=[2,5,6], > scaling=constrained, labels=[x,y,'z']); Závěrem si ještě ukažme metodu, jak lze řešit úlohy na absolutní extrémy v ně- kterých speciálních případech, např. umíme-li sestrojit vrstevnice funkce, jejíž extrémy hledáme, a pokud množina, kde tyto extrémy hledáme je ,,dostatečně jednoduchá". 256 Extrémy funkce v Maplu Příklad 14.10. Najděte nejmenší a největší hodnotu funkce f (x, y) = x - y na množině M : x2 + y2 1. Generujme PC-grafy funkce f a vrstevnic funkce f spolu s množinou M: > f:=(x,y)->x-y; f := ( x, y ) x - y > v1:=plot3d(f(x,y), x=-3..3, y=-3..3, > style=patchcontour, axes=boxed, contours=20): > v2:=spacecurve([cos(t), sin(t), f(cos(t), sin(t))], > t=0..2*Pi, color=black, thickness=3): > v3:=spacecurve([cos(t), sin(t), -6],t=0..2*Pi, > color=black, thickness=3): > display3d({v1,v2,v3}, axes=boxed, labels=[x,y,'z'], > scaling=constrained, orientation=[19,31]); > v4:=plot3d(f(x,y), x=-3..3, y=-3..3, style=contour, > axes=boxed, contours=20, grid=[100,100]): > display3d({v2,v4}, orientation=[0,0], > scaling=constrained); > f(1/sqrt(2),-1/sqrt(2));f(-1/sqrt(2),1/sqrt(2)); 2 - 2 Vrstevnice funkce f jsou přímky x - y = c (viz ilustrace na obr. 14.28). Z PC- -grafu na obrázku 14.29 (vrstevnice ­ osa x je zde svislá, y vodorovná) je také vi- dět, že podmínkou pro to, aby hodnota c R byla hodnotou absolutního maxima resp. minima funkce f je, že přímka x - y = c je tečnou ke kružnici x2 + y2 = 1. Z PC-grafů je zřejmé, že maximum nastane v bodě [ 1 2 , -1 2 ], jeho hodnota je 2 a minimum je v bodě [-1 2 , 1 2 ], jeho hodnota je - 2 (viz příklad 6.7-ii)). Příklad 14.11. Najděte nejmenší a největší hodnotu funkce z = f (x, y) = 2x2 + + 4y2 na množině M : x2 + y2 9. Postupujme stejně jako v předcházejícím příkladě: > z:=(x,y)->2*x^2+4*y^2; z := ( x, y ) 2 x2 + 4 y2 Absolutní extrémy 257 -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y -6 -4 -2 0 2 4 6 z obr. 14.28 -3 -2 -1 0 1 2 3 -3 -2 -1 0 1 2 3 obr. 14.29 > o1:=plot3d(z(x,y), x=-3.2..3.2, y=-3.2..3.2, > style=patchcontour): > o2:=spacecurve([3*cos(t), 3*sin(t), z(3*cos(t), > 3*sin(t))+0.1], t=0..2*Pi, color=black, thickness=3): > o3:=spacecurve([3*cos(t), 3*sin(t), 0], t=0..2*Pi, > color=black, thickness=2): > o4:=plot3d(z(x,y),x=-3.2..3.2,y=-3.2..3.2, > style=contour, axes=normal): > display3d({o1,o2,o3},orientation=[49,53], > axes=boxed, labels=[x,y,'z']); > display3d({o4,o2}, orientation=[0,0], > scaling=constrained, axes=framed, labels=[x,y,z]); > z(0,0);z(0,3);z(0,-3); 0 36 36 S pomocí PC-grafů (obr. 14.30 a obr. 14.31) není obtížné určit, že zmin = 0 pro [x, y] =[0, 0] zmax = 36 pro [x, y] =[0, 3]. 258 Extrémy funkce v Maplu -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y 0 10 20 30 40 50 60 z obr. 14.30 -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y obr. 14.31 14.3 Vázané extrémy V následujícím příkladě hledáme extrémy na hranici množiny M metodou Lan- grangeových multiplikátorů bez použití příkazu extrema. Příklad 14.12. Určete největší a nejmenší hodnotu funkce z = f (x, y) = 2x2 - - 2xy + y2 na množině M = {[x, y] R2 : x2 + y2 1}. -1 -0.5 0 0.5 1 x -1 -0.5 0 0.5 1y 0 0.5 1 1.5 2 2.5 z obr. 14.32 Vázané extrémy 259 > f := (x,y) -> 2*x^2 - 2*x*y + y^2; f := ( x, y ) 2 x2 - 2 x y + y2 > g:=(x,y)->x^2+y^2-1; g := ( x, y ) x2 + y2 - 1 Nejdříve opět generujme PC-graf funkce f na množině M (obr. 14.32): > g1:=cylinderplot([r,theta,f(r*cos(theta), > r*sin(theta))], r=0..1, theta=0..2*Pi, > scaling=constrained): > g2:=spacecurve([cos(t), sin(t), 0], t=0..2*Pi, > color=black, scaling=constrained): > display3d({g1,g2}, axes=framed, orientation=[9,30], > scaling=constrained, labels=[x,y,'z']); Dále určeme stacionární body funkce f ležící uvnitř množiny M: > sing(f(x,y)); { { x = 0, y = 0 } } > f(0,0); 0 Na závěr, k určení extrémů funkce f na hranici množiny M použijeme metodu Lagrangeových multiplikátorů. Sestavme Lagrangeovu funkci úlohy: > F:=unapply(f(x,y)-lambda*g(x,y),x,y,lambda); F := ( x, y, ) 2 x2 - 2 x y + y2 - ( x2 + y2 - 1 ) V souladu se standardním postupem vytvořme (s použitím parciálního derivování Lagrangeovy funkce F podle všech proměnných) pomocný systém podmínek pro stacionární body naší úlohy: > eq1:=diff(F(x,y,lambda),x)=0; eq1 := 4 x - 2 y - 2 x = 0 > eq2:=diff(F(x,y,lambda),y)=0; eq2 := -2 x + 2 y - 2 y = 0 260 Extrémy funkce v Maplu > eq3:=g(x,y)=0; eq3 := x2 + y2 - 1 = 0 Symbolické řešení této soustavy rovnic: > solve({eq1,eq2,eq3}, {x,y,lambda}); {y = RootOf( 5 _Z2 - 4 + %1 ), x = RootOf( 5 _Z2 - 4 + %1 ) - %1 RootOf( 5 _Z2 - 4 + %1 ), = %1} %1 := RootOf( 1 - 3 _Z + _Z2 ) však není vhodné pro další výpočty (opět se jen těžko interpretuje), použijeme proto řešení numerické: > sol:=fsolve({eq1,eq2,eq3},{x,y,lambda}, maxsols=10); sol := { y = -.8506508084, = .3819660113, x = -.5257311121 }, { = .3819660113, x = .5257311121, y = .8506508084 }, { y = -.5257311121, = 2.618033989, x = .8506508084 }, { = 2.618033989, y = .5257311121, x = -.8506508084 } Pro takto získané hodnoty x, y, dopočítejme funkční hodnoty funkce f : > for i from 1 to nops([sol]) do > subs(op(i,[sol]), [x,y]); subs(op(i, [sol]), f(x,y)) > od; [ -.5257311121, -.8506508084 ] .3819660112 [ .5257311121, .8506508084 ] .3819660112 [ .8506508084, -.5257311121 ] 2.618033989 [ -.8506508084, .5257311121 ] 2.618033989 Vázané extrémy 261 Výsledek znázorněme na PC-grafu funkce f (obr. 14.33): > pts:=pointplot({seq(subs(op(i,[sol]), [x,y,f(x,y)]), > i=1..nops([sol]))}, color=black, symbol=box): > display3d({g1,g2,pts}, axes=framed, > orientation=[135,70], scaling=constrained, > labels=[x,y,'z']); -1 -0.5 0 0.5 1 x -1 -0.5 0 0.5 1 y 0 0.5 1 1.5 2 2.5 z obr. 14.33 Porovnáním získaných funkčních hodnot s funkční hodnotou ve stacionárním bodě dostáváme, že fmin = 0 pro [x, y] = [0, 0] fmax . = 2.618 pro [x, y] . = [0.851, -0.526] a [x, y] . = [-0.851, -0.526]. Kapitola 15 Funkce zadaná implicitně v Maplu V první části této kapitoly si všimneme problémů spojených s generováním PC- -grafů funkce dané implicitně, v druhé pak použijeme Maplu při výpočtech deri- vací implicitně dané funkce. 15.1 Generování PC-grafu funkce zadané implicitně Ke generování PC-grafu funkce dané implicitně používáme příkazů z knihovny plots: implicitplot a implicitplot3d. Pro ilustraci generujme PC- -grafy křivky určené implicitně rovnicí x3 + y3 - 5xy + 1 5 = 0 (obr. 15.1) a plochy určené implicitně rovnicí cosh z = x2 + y2 (obr. 15.2). -3 -2 -1 0 1 2 y -3 -2 -1 0 1 2 x obr. 15.1 obr. 15.2 > with(plots): > implicitplot(x^3+y^3-5*x*y+1/5=0, x=-3..3, y=-3..3, > grid=[50,50]); 264 Funkce zadaná implicitně v Maplu > implicitplot3d(cosh(z)=sqrt(x^2+y^2),x=-3..3,y=-3..3, > z=-2..2, grid=[15,15,20], style=patchcontour, > orientation=[30,70]); Při generování PC-grafů křivek daných implicitně při použití příkazu implicitplot není možno zaručit, že PC-graf bude odpovídat grafu křivky dané implicitně. Maple má při tvorbě PC-grafu ,,problémy" s body [x, y], leží- cími na křivce F(x, y) = 0, pro které je F x (x, y) = 0 a zároveň F y (x, y) = 0. Typickým příkladem je křivka 2x4 + y4 - 3x2 y - 2y3 + y2 = 0 (obr. 15.3). Platí Fy = 4y3 - 3x2 - 6y2 + 2y, Fy(0, 0) = 0, Fy(0, 1) = 0 a Fx = 8x2 - 6xy, Fx (0, 0) = 0, Fx (0, 1) = 0. Ani zhuštění sítě v tomto případě nevede v okolí bodů [0, 0] a [0, 1] k uspokojivým výsledkům (obr. 15.4): > implicitplot(2*x^4+y^4-3*x^2*y-2*y^3+y^2, > x=-5/2..5/2, y=-5/2..5/2); > implicitplot(2*x^4+y^4-3*x^2*y-2*y^3+y^2, > x=-5/2..5/2, y=-5/2..5/2, grid=[100,100]); 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 y -1.5 -1 -0.5 0 0.5 1 1.5 x obr. 15.3 0 0.5 1 1.5 2 y -1.5 -1 -0.5 0 0.5 1 1.5 x obr. 15.4 V tomto případě je nejlepším řešením parametrizace zkoumané křivky: > factor(subs(x=r*cos(phi), y=r*sin(phi), > 2*x^4+y^4-3*x^2*y-2*y^3+y^2)); r2 2r2 cos( )4 + r2 sin( )4 - 3r cos( )2 sin( ) - 2r sin( )3 + sin( )2 > eqn:=op(2,"); eqn := 2r2 cos( )4 + r2 sin( )4 - 3r cos( )2 sin( ) - 2r sin( )3 + sin( )2 Generování PC-grafu funkce zadané implicitně 265 > sols:=map(simplify, {solve(eqn,r)}, > {sin(phi)^2+cos(phi)^2=1}, [cos(phi), sin(phi)]): > sols:=map(unapply, sols, phi); sols := -sin( )3 + 3 sin( ) - -11 sin( )6 + 10 sin( )4 + sin( )2 6 sin( )4 - 8 sin( )2 + 4 , -sin( )3 + 3 sin( ) + -11 sin( )6 + 10 sin( )4 + sin( )2 6 sin( )4 - 8 sin( )2 + 4 > polarplot(sols, 0..2*Pi, view=[-5/2..5/2, 0..9/4], > scaling=constrained, color=black, labels=[x,'y']); 0 0.5 1 1.5 2 y -2 -1 0 1 2 x obr. 15.5 Při pokusu o generování PC-grafu pro křivku určenou implicitně rovnicí 9x2 + 16y2 - 24xy - 8y + 6x + 1 = 0 dostáváme prázdný PC-graf a ani zhuštění sítě opět nepomáhá. Pokusme se problém vyřešit jiným způsobem (obr. 15.6): > Eq:= 9*x^2+16*y^2-24*x*y-8*y+6*x+1=0; Eq := 9 x2 + 16 y2 - 24 x y - 8 y + 6 x + 1 = 0 > student[completesquare](Eq, x ); 9 x - 4 3 y + 1 3 2 = 0 > s:=solve( ", {y} ); s := y = 3 4 x + 1 4 , y = 3 4 x + 1 4 266 Funkce zadaná implicitně v Maplu > assign(s); > plot(y, x=-5..5, labels=[x,'y']); -3 -2 -1 0 1 2 3 4 y -4 -2 0 2 4 x obr. 15.6 Závěrem ukažme efekt změny přesnosti aproximativní aritmetiky a hustoty sítě na PC-graf pro křivku danou implicitně rovnicí 1 = 3xy x3+y3 (obr. 15.7­15.9). > eq:= 1=(3*x*y)/(x^3+y^3): > implicitplot(eq,x=-4..4,y=-4..4); Error, (in plot/iplot2d/levelcurve) 1st index, 1251, larger than upper array bound 1250 > Digits := 80: > implicitplot(eq,x=-4..4,y=-4..4,grid=[30,30]); > implicitplot(eq,x=-4..4,y=-4..4,grid=[40,40]); > implicitplot(eq,x=-4..4,y=-4..4,grid=[50,50]); -4 -2 0 2 4 y -4 -2 0 2 4 x obr. 15.7 -4 -2 0 2 4 y -4 -2 0 2 4 x obr. 15.8 -4 -2 0 2 4 y -4 -2 0 2 4 x obr. 15.9 Výpočty 267 Z obrázků 15.7­15.9 je vidět, že algoritmus Maplu pro generování PC-grafu křivky dané implicitně není dostatečný pro generování PC-grafu odpovídajícího grafu takto zadané křivky. 15.2 Výpočty Při výpočtu derivace funkce dané implicitně rovnicí F(x, y) = 0 pomocí počítačo- vého systému používáme následujícího postupu. Rovnici F(x, y) = 0 derivujeme podle x a na y se díváme jako na funkci proměnné x. Pak dostáváme Fx (x, y) + y Fy(x, y) = 0 a z této rovnice vypočteme y . Stejný postup je vhodný i při výpočtu vyšších derivací. (Postačující podmínku pro existenci funkce zadané implicitně v okolí daného bodu křivky udává Věta 8.1.) Příklad 15.1. Určete rovnici tečny ke křivce dané rovnicí y3 - xy = -6 v bodě [7, 2]. > eqn:=y(x)^3-x*y(x)=-6; eqn := y( x )3 - x y( x ) = -6 > deqn:=diff(eqn,x); deqn := 3 y( x )2 x y( x ) - y( x ) - x x y( x ) = 0 > dydx:=solve(deqn, diff(y(x), x)); dydx := y( x ) 3 y( x )2 - x > k:=eval(subs({y=2,x=7}, dydx)); k := 2 5 Rovnice tečny t je y - 2 = 2 5 (x - 7) tj. přímka 5y - 2x + 4 = 0. > p1:=plot(2/5*x-4/5, x=-10..10): > p2:=implicitplot(eqn,x=-10..10,y=-4..4,grid=[50,50]): > display({p1,p2}); 268 Funkce zadaná implicitně v Maplu -4 -3 -2 -1 0 1 2 3 y -10 -5 0 5 10 x obr. 15.10 Poznámka 15.1. V novějších verzích Maplu (od verze R4) máme k dispozici pro- ceduru implicitdiff, která počítá derivaci funkce dané implicitně rovnicí: > dydx:=implicitdiff(y^3-x*y, y, x); dydx := - y -3 y2 + x Tato procedura je však vhodná spíše pro kontrolu získaných výsledků než pro vlastní procvičování derivování funkce dané implicitně. Vhodným cvičením do počítačové laboratoře vyžadujícím jak znalost ne- zbytné teorie, tak základní znalost programování v Maplu je: napište proceduru, která určí derivaci funkce dané implicitně, případně její hodnotu v zadaném bodě: > implicitdiff := proc(g) > local tmp,DIFFg,DIFFy,DIFFy0,p1: > DIFFg:= diff(g,x): > DIFFy:= > simplify(solve(subs(diff(y(x),x)=p1,DIFFg)=0,p1)); > end: > implicitdiff(y(x)^3-x*y(x)+6); - y( x ) -3 y( x )2 + x > implicitdiffb := proc(x0,y0,g) > local tmp,DIFFg,DIFFy,DIFFy0,p1: > tmp:=subs(y(x)=y0,g): > if (simplify(subs(x=x0,tmp)) <> 0) then Výpočty 269 > ERROR(` x0,y0 appear not to be on the curve`): > fi: > DIFFg:= diff(g,x): > DIFFy:=simplify(solve(subs(diff(y(x),x)= > p1,DIFFg)=0,p1)): > DIFFy0:= simplify(subs(x=x0,y(x0)=y0,DIFFy)): > DIFFy0 > end: > implicitdiffb(7,2,y(x)^3-x*y(x)+6); 2 5 Výstupem další uvedené procedury je přímo rovnice tečny ke křivce dané impli- citně v daném bodě a PC-graf (obr. 15.11): > graf_t:=proc() local a,b,c,u,v,k; > a:=diff(args[1],x); > b:=diff(args[1],y); > u:=op(1,args[2]); > v:=op(2,args[2]); > c:=eval(subs({x=u,y=v},args[1])); > if c=0 then > k:=(subs({x=u,y=v},a)*(x-u)+subs({x=u,y=v},b)* > (y-v)); > print(`Rovnice tečny v~bodě`,args[2],`je `,k=0); > if nargs(graf_t)=6 then > RETURN (plots[implicitplot]({args[1],k}, > x=args[3]..args[4],y=args[5]..args[6])); > fi; > fi; > if c<>0 then > print(`Bod`,args[2],`neleží na křivce `,args[1]=0); > fi; > end; > > graf_t(y^3-x*y+6, [7, 2], -10,10,-4,4 ); Rovnice tecny v bode, [ 7, 2 ], je , -2 x + 4 + 5 y = 0 > graf_t(y^3-x*y+6, [1, 1]); Bod, [ 1, 1 ], nelezi na krivce , y3 - x y + 6 = 0 270 Funkce zadaná implicitně v Maplu -4 -3 -2 -1 0 1 2 3 y -10 -5 0 5 10 x obr. 15.11 Příklad 15.2. Rozhodněte, zda křivka x3 + y3 - 2xy = 0 leží v okolí bodu [1, 1] pod tečnou nebo nad tečnou. > alias(y=y(x)); I, y > eq:=x^3+y^3-2*x*y=0; eq := x3 + y3 - 2 x y = 0 Derivujme rovnici x3 + y3 - 2xy = 0 podle x za předpokladu, že y je funkce proměnné x: > diff(eq,x); 3 x2 + 3 y2 x y - 2 y - 2 x x y = 0 > dydx:=solve(", diff(y,x)); dydx := - 3 x2 - 2 y 3 y2 - 2 x Dalším derivováním podle x obdržíme: > diff(eq, x$2); 6 x + 6 y x y 2 + 3 y2 2 x2 y - 4 x y - 2 x 2 x2 y = 0 Výpočty 271 > solve(", diff(y,x$2)); - 6 x + 6 y x y 2 - 4 x y 3 y2 - 2 x > d2ydx2:=normal(subs(diff(y,x)=dydx, ")); d2ydx2 := 2 y x ( 27 y3 - 54 x y + 27 x3 + 8 ) ( -3 y2 + 2 x )3 Dosazením dostaneme: > subs({x=1,y=1}, d2ydx2); -16 což znamená, že křivka leží v okolí bodu [1, 1] pod tečnou. Analogicky postupujeme v případě implicitně zadané funkce více proměnných. Příklad 15.3. Určete rovnici tečné roviny v bodě [1, 0, 1] k ploše určené rovnicí x3 + y3 + z3 - 3xyz - x - y - z = 0. Derivujme danou rovnici podle x a podle y, přičemž z chápeme jakožto funkci proměnných x a y. > alias(z=z(x,y)): > rov:=x^3+y^3+z^3-3*x*y*z-x-y-z=0; rov := x3 + y3 + z3 - 3 x y z - x - y - z = 0 > diff(rov, x); 3 x2 + 3 z2 x z - 3 y z - 3 x y x z - 1 - x z = 0 > dzdx:=solve(", diff(z,x)); dzdx := - 3 x2 - 3 y z - 1 3 z2 - 3 x y - 1 > diff(rov,y); 3 y2 + 3 z2 y z - 3 x z - 3 x y y z - 1 - y z = 0 272 Funkce zadaná implicitně v Maplu > dzdy:=solve(", diff(z,y)); dzdy := - 3 y2 - 3 x z - 1 3 z2 - 3 x y - 1 Dosazením x = 1, y = 0 a z = 1 dostáváme: > subs({x=1,y=0,z=1}, dzdx); -1 > subs({x=1,y=0,z=1}, dzdy); 2 Platí zx (1, 0) = -1, zy(1, 0) = 2 a tedy tečná rovina k dané ploše v bodě [1, 0, 1] má rovnici z - 1 = -(x - 1) + 2y, po úpravě x - 2y + z - 2 = 0. Příklad 15.4. Určete lokální extrémy funkce z = f (x, y) určené implicitně rov- nicí F(x, y, z) = x2 + y2 + z2 - xz - 2yz = 1. > alias(z=z(x,y)): > F:=x^2+y^2+z^2-x*z-sqrt(2)*y*z=1; F := x2 + y2 + z2 - x z - 2 y z = 1 Derivováním zadávající rovnosti podle x a y dostáváme: > diff(F,x); 2 x + 2 z x z - z - x x z - 2 y x z = 0 > dzdx:=solve(", diff(z,x)); dzdx := - 2 x - z 2 z - x - 2 y > diff(F,y); 2 y + 2 z y z - x y z - 2 z - 2 y y z = 0 Výpočty 273 > dzdy:=solve(", diff(z,y)); dzdy := - 2 y - 2 z 2 z - x - 2 y Stacionární body určíme z podmínky zx = 0 = zy: > s:=solve({dzdx=0, dzdy=0, F},{x,y,z}); s := x = 1, z = 2, y = 2 , x = -1, z = -2, y = - 2 Vypočtěme dále parciální derivace 2. řádu ve stacionárních bodech: > diff(F,x,x); 2 + 2 x z 2 + 2 z 2 x2 z - 2 x z - x 2 x2 z - 2 y 2 x2 z = 0 > dzdxx:=solve (", diff(z,x,x)); dzdxx := - 2 + 2 x z 2 - 2 x z 2 z - x - 2 y > zxxP:=subs(diff(z,x)=0, dzdxx); zxxP := -2 1 2 z - x - 2 y > diff(F,y,y); 2 + 2 y z 2 + 2 z 2 y2 z - x 2 y2 z - 2 2 y z - 2 y 2 y2 z = 0 > dzdyy:=solve (", diff(z,y,y)); dzdyy := - 2 + 2 y z 2 - 2 2 y z 2 z - x - 2 y 274 Funkce zadaná implicitně v Maplu > zyyP:=subs(diff(z,y)=0, dzdyy); zyyP := -2 1 2 z - x - 2 y > diff(F,x,y); 2 y z x z + 2 z 2 y x z - y z - x 2 y x z - 2 x z - 2 y 2 y x z = 0 > dzdxy:=solve (", diff(z,x,y)); dzdxy := - 2 y z x z - y z - 2 x z 2 z - x - 2 y > zxyP:=subs({diff(z,y)=0,diff(z,x)=0}, dzdxy); zxyP := 0 Určeme hodnotu = zxx zyy - z2 xy ve stacionárních bodech: > Delta:=zxxP*zyyP-(zxyP)^2; := 4 1 2 z - x - 2 y 2 > subs(s[1], Delta);subs(s[1], zxxP); 4 -2 > subs(s[2], Delta);subs(s[2], zxxP); 4 2 Protože v obou bodech je = 4 > 0, nastávají v těchto bodech lokální ex- trémy, a to maximum v bodě [1, 2, 2] (nebot' zxx = -2) a minimum v bodě [-1, - 2, -2] (zxx = 2). Kapitola 16 Software pro podporu výuky matematické analýzy Tato kapitola uvádí stručný přehled programového vybavení (software) použitel- ného při výuce matematické analýzy. Cílem je seznámit čtenáře jak s komerčními produkty, tak s archivy veřejně přístupných programů, kterými lze v některých případech komerční produkty nahradit. U všech programů jsou uvedeny adresy na síti Internet, na kterých je možno získat další informace. 16.1 Systémy počítačové algebry V této části si stručně představíme systém Maple a uvedeme odkazy na další sys- témy počítačové algebry. Maple V (Release 5) ­ projekt Maple se vyvíjí od 80. let v Maple Waterloo Software a dá se říci, že je prvním z moderních systémů, který v sobě kromě roz- sáhlých algebraických manipulací obsahuje i implementace numerických metod, knihovny speciálních funkcí a v neposlední řadě také velmi propracovanou gra- fiku. Navíc je důsledně odděleno uživatelské rozhraní od vlastního jádra systému. Uživatel má také možnost tvořit tzv. zápisníky, kde lze kombinovat text, vstupy, výstupy i grafiku. Z těchto důvodů je vhodný jak pro zpracování úkolů, tak pro vy- tváření protokolů (podporována je i konverze do formátu LATEX). Poslední verze Maplu přináší i možnosti hypertextového1 propojování jednotlivých zápisníků, používání záložek pro rychlé odkazování a export do jazyka HTML2 (podrobnější 1Text, který lze zpracovávat i jiným než pouze sekvenčním způsobem. Obsahuje odkazy, ob- rázky atd. 2Hypertext MarkUp Language, jazyk, který popisuje hypertextovou stránku. Využívá se pro WWW. 276 Software pro podporu výuky matematické analýzy informace spolu s vysvětlením těchto termínů najdeme např. v [Hea]). Dalšími vý- hodami Maplu jsou jeho dostupnost pro prakticky všechny běžně užívané operační systémy (MS DOS, MS Windows, SCO Unix, BSD Unix, Sun Solaris, Macintosh, Silicon Graphics, Next ...), poměrně nízké nároky na hardware (2­6 MB RAM, 10 MB místa na disku) a jasně a dobře definovaná syntaxe. Shrňme si do několika bodů základní možnosti systému Maple (ty jsou vlastní i ostatním CAS systémům). ˇ Maple umí pracovat s téměř libovolně velkými celými čísly. Řádově lze pou- žívat čísla s deseti tisíci ciframi. ˇ Jednoduchým způsobem lze definovat výrazy jako funkční závislosti, se- znamy, množiny atd. ˇ Různými způsoby lze interaktivně zobrazovat bodová data, křivky, plochy (za- dané přímo či implicitně), sdružovat několik grafik, animovat apod. ˇ Maple ovládá veškeré standardní procedury diferenciálního a integrálního po- čtu, umí řešit systémy lineárních, algebraických i diferenciálních rovnic, vše analyticky i numericky, v rozsahu převyšujícím základní výuku pro studenty odborné matematiky. ˇ Jsou implementovány numerické metody, které lze automaticky (a se zvolenou přesností) aplikovat, kdykoliv analytické procedury nevedou k cíli. ˇ Maple obsahuje velice bohatý programovací jazyk se syntaxí blízkou Pascalu. Lze v něm velice snadno definovat funkce, procedury i celé programové sys- témy. Tyto jsou pak plně přenositelné mezi všemi implementacemi systému Maple. ˇ Součástí Maplu je rozsáhlá hypertextová a kontextová nápověda. Ke každému mapleovskému příkazu či knihovně je uvedeno nejen jejich podrobné vysvět- lení, ale i řada ilustračních příkladů. Domovská stránka výrobců Maplu Maple Waterloo Software na Internetu je na http://www.maplesoft.com/. Domovská stránka Maplu je na ad- rese http://daisy.uwaterloo.ca/. Zde najdeme vše týkající se Maplu (seznamy literatury, ukázkové zápisníky, oznámení o konferencích atd.). K nej- lepším místům na Internetu věnovaným problematice Maplu patří i Maple bi- lingual na http://sunsite.informatik.rwth-aachen.de/maple/ maplev.html. Systémy počítačové algebry 277 Další zdroje informací o Maplu je možno nalézt např. na: http://web.mit.edu/afs/athena.mit.edu/software/maple/ www/home.html, http://www.indiana.edu/~statmath/math/maple/, http://www.symbolicnet.org/. Problematice Maplu je věnována moderovaná diskusní skupina MUG (Ma- ple User Group). Skupina má přes tisíc účastníků z celého světa. Adminis- trativní adresa skupiny je mailto:majordomo@daisy.uwaterloo.ca. Pro přihlášení zašleme na výše uvedenou adresu e-mail obsahující text subscribe maple-list. Vlastní příspěvky pak již posíláme na ad- resu mailto:maple-list@daisy.uwaterloo.ca. Prohledávatelný ar- chiv této diskusní skupiny se nachází na adrese http://www-math.math. rwth-aachen.de/MapleAnswers/index.html. Další užitečné infor- mace poskytuje i skupina Netnews news:sci.math.symbolic. Domovská stránka českého Klubu uživatelů Maplu se nachází na Internetu na URL http://www.fi.muni.cz/~hrebicek/maple/. Mathematica (v. 2.2.3) firmy Wolfram Research Inc. (http://www. wolfram.com/) je zatím asi nejpoužívanějším CAS systémem (díky velice agresivní obchodní politice a designu vyhovujícímu plně inženýrským potřebám). Většina materiálů projektu CALC je také určena pro tento systém. Možnosti jsou obdobné jako u systému Maple. Domovská stránka archivu programů a do- plňujících materiálů Mathsource je na http://library.wolfram.com/ database/MathSource/. Derive (3.0) firmy Soft Warehause je jednoduchým programem pro symbo- lické výpočty, ovládaný pomocí systému menu. Jeho jednoduchost a nízké hard- warové požadavky ho umožňují používat prakticky na jakémkoliv počítači PC ihned pouze po krátkém zaškolení (512 kB RAM, jedna disketová mechanika, gra- fická karta CGA a vyšší). Domovská stránka je http://www.derive.com/ derive.htm a problematikou Derivu se zabývá diskusní skupina mailto: derive-news@mailbase.ac.uk. Mezi další obecné CAS systémy patří mimo jiné např. program Axiom (http://www.nag.com/local/nagportal.html), z dalších pak třeba program Mupad (http://math-www.uni-paderborn.de/MuPAD/) či program Reduce (http://www.rrz.uni-koeln.de/REDUCE/). Mu- pad je dokonce možno po vyplnění licenčního ujednání získat zdarma (bližší informace na domovské stránce). Kompletní přehled CAS systémů je 278 Software pro podporu výuky matematické analýzy možno najít na http://www.can.nl/systems_and_packages/per_ purpose/general/index_table.html nebo na http://math-www. uni-paderborn.de/CAIN/SYSPACK/index.html. 16.2 Public-domain programy Místo obecného CAS systému je možno použít i menších, specializovaných pro- gramů, které jsou většinou volně přístupné prostřednictvím sítě Internet. Mathematics Archives. Jeden z největších archivů matematických materiálů a odkazů se nachází na katedře matematiky Univerzity v Tennessee, Knoxville. Archiv je přístupný pomocí: 1. WWW ­ http://archives.math.utk.edu/ 2. anonymního FTP ­ ftp://archives.math.utk.edu/ 3. e-mailu ­ mailto:help@archives.math.utk.edu Cílem tohoto archivu je organizovat a umožnit přístup k public domain softwaru, sharewaru a materiálům, které jsou přístupné prostřednictvím sítě Internet a mo- hou být využity ve výuce matematiky. Kromě toho obsahuje bohatou kolekci od- kazů na místa se vztahem k matematice (elektronické časopisy, preprintový servis, informace o grantech, tvůrci matematického software, matematická nakladatel- ství atd.) Obsah je neustále obnovován a doplňován (položka What's new on the Mathematics Archives z domovské stránky). Pravidelné měsíční zprávy o nových přírůstcích a změnách jsou zasílány do skupin News news:sci.math.*. Ma- teriály jsou zde rozděleny do čtyř základních skupin: 1. Software, recenze a abstrakta 2. Výukové materiály 3. Ostatní služby 4. Odkazy Většinou máme k dispozici i vyhledávací nástroje pro jednotlivé části archivu. Všimněme si podrobněji první skupiny. Materiály z této skupiny jsou členěny čtyřmi rozdílnými způsoby: Public-domain programy 279 1. Podle platformy a poté podle subjektu. V současnosti jsou zde dvě kategorie ­ software pro Macintosh a pro MS DOS (včetně Windows a Windows 95). V členění podle subjektu najdeme nejvíce vhodných programů pro kurz matematické analýzy pod hesly Advanced Cal- culus, Advanced Differential Equations, Calculus, Graphing Programs a Dif- ferential Equations. 2. Interaktivní texty Interaktivní text je počítačový dokument, ze kterého mohou být přímo použity symbolické, numerické a grafické prostředky. Výsledky výpočtů mohou být taktéž začleněny do dokumentu. K vytváření matematických interaktivních textů se v současnosti nejčastěji používá CAS systémů Maple a Mathematica a systémů MathCad a MathKit. Materiály a odkazy zde přístupné jsou členěny opět podle platformy a subjektu. 3. Podle softwarového balíku Jedná se většinou o odkazy na připravené materiály pro některý z komerčních produktů (Mathematica, Maple, Matlab), nezávisle na operačním systému. 4. Podle subjektu V současnosti jsou zde pouze materiály týkající se přírodních věd. Pokud se hledaný program nenachází přímo v Mathematics Archives, mů- žeme použít vyhledávání v ostatních světových archivech matematického soft- waru (http://archives.math.utk.edu/other_software.html). Pro usnadnění vyhledávání je připraven speciální formulář, kterým specifikujeme platformu, určení a typ softwaru, který hledáme. Na výstupu pak získáme kolekci odkazů, vyhovujících zadaným požadavkům. GAMS. (Guide to Available Math Software.) Projekt snadného přístupu k matematickému softwaru. Jedná se o jakési virtuální skladiště matematických programů, vybavené různými vyhledávacími prostředky. Vyhledávat můžeme podle ˇ problému, který chceme řešit, ˇ podle názvu programu, balíku, ˇ podle názvu modulu, ˇ podle textu v abstraktu programu, modulu. Tyto služby jsou přístupné pomocí www na http://gams.nist.gov/. 280 Software pro podporu výuky matematické analýzy 16.3 Materiály na Internetu V této části jsou uvedeny odkazy na archivy materiálů, určených k podpoře vý- uky matematické analýzy. Nejdříve jsou uvedeny odkazy na největší archivy ma- teriálů pro počítačem podporovanou výuku matematické analýzy, v části Další zdroje jsou uvedeny adresy dalších WWW stránek, které se zabývají zkoumanou problematikou. Těchto stránek je obrovské množství (více než sto tisíc odkazů) a nemohly zde být všechny uvedeny mimo jiné i proto, že jejich počet, umístění a obsah se téměř každým dnem mění. Uvedeny byly proto jen ty adresy, u nichž je možno předpokládat poměrně velkou stabilitu, (přesto nemusí být všechny od- kazy v době uveřejnění práce platné). Závěrem také poznamenejme, že ne vše, co na Internetu nalezneme, můžeme okamžitě použít ve výuce. Některé materiály ne- odpovídají našim osnovám, např. jsou založeny na jiné koncepci výkladu. Odkazy na materiály, přímo použité při tvorbě této práce, jsou uvedeny v části Literatura. Calculus Internet Resource Library (CIRL) Na adrese http://www.calculus.net/ se nachází jeden z největších ar- chivů materiálů a odkazů k počítačem podporované výuce matematické analýzy na Internetu. Archiv je přístupný pomocí WWW, k efektivnímu využití všech služeb potřebujeme prohlížeč Netscape verze 3.0. Jedná se v podstatě o me- tatext (určený pro různé platformy, různé technologie a vytvářený mnoha au- tory, přímá interakce s čtenářem), obsahující materiály k výuce matematické analýzy pro studenty a vyučující. Materiál je neustále ve vývoji a v součas- nosti se dělí na část pro samostatnou práci studentů (http://homework. calculus.net/), materiály do počítačové laboratoře pro studenty a vyuču- jící (http://labs.calculus.net/) a část virtuální realita ve výuce MA (http://vrml.calculus.net/). Obsah je dělen i podle určení ­ pro stu- denty nebo pro vyučující. Odkazy na další zajímavá místa jsou shrnuty pod po- ložkou Top 20 Calculus Sites on the World-Wide-Web. Calculus & Mathematica Jeden z kurzů matematické analýzy využívajících programu Mathematica na- jdeme na http://www-cm.math.uiuc.edu/. Tento kurz je založen pře- devším na úlohách z praxe (populační růst, úlohy finanční matematiky ...). Představu o jeho obsahu si můžeme udělat z obrázku 16.1, zachycujícího jednu z webovských stránek tohoto kurzu. Zajímavostí je opět systém zadá- vání a následného řešení úkolů v elektronické podobě. Kurz je možno absol- Materiály na Internetu 281 vovat i v rámci distančního studia pouze prostřednictvím Internetu na adrese http://www-cm.math.uiuc.edu/dep/. obr. 16.1 Sylabus kurzu Calculus & Mathematica Visual Calculus V již dříve zmíněném archivu Mathematics Archives se nachází část na- zvaná Visual Calculus (http://archives.math.utk.edu/visual. calculus/). Zde se nachází kolekce materiálů k výuce matematické analýzy s využitím počítače, přičemž důraz je kladen na matematickou grafiku. Zajíma- vostí jsou detailní návody pro tvorbu grafiky v jednotlivých programech (komerč- ních i public domain). Konstrukce je popisována krok za krokem, takže i uživatel, který nemá s daným programem zkušenosti, může ilustrační grafiku připravovat. Calculus Resources On-line Velmi podrobný seznam Internetovských zdrojů pro výuku matematické analýzy s pomocí počítače je na témže archivu na http://archives.math.utk. edu/calculus/crol.html. Seznam je členěn podle výpočetní platformy nebo podle geografické polohy zdroje a je průběžně aktualizován. 282 Software pro podporu výuky matematické analýzy Multivariable Calculus Posledním odkazem z Mathematics Archives je kolekce odkazů na různé zdroje přímo pro diferenciální počet funkcí více proměnných http://archives. math.utk.edu/topics/multivariableCalculus.html. The Connected Curriculum Project (CCP) Materiály vzniklé v rámci projektu CALC, o němž je zmínka v úvodní části, jsou přístupné na adrese http://www.math.duke.edu/modules/. Prozatím však část věnovaná diferenciálnímu počtu funkcí více proměnných neobsahuje žádné odkazy. Další zdroje ˇ Interaktivní text Calculus & Differential Equations with Maple V. Autory textu a Mapleovských zápisníků jsou J. Marlin, H. Kim a E. Burniston. http://www4.ncsu.edu:8030/~marlin/MapleStuff/ ˇ ,,Laboratory manual for Calculus" obsahuje úkoly z matematické analýzy, ur- čené k řešení v počítačové laboratoři za pomoci programů Mathcad a Maple V. Autory jsou P. Bogacki, G. Melrose a P. R. Wohl. http://www.math. odu.edu:80/~bogacki/labman/ ˇ Velká kolekce odkazů na použití Maplu ve vědě a výuce, návody na používání Maplu. http://www.indiana.edu/~statmath/math/maple/ ˇ ,,Matthias Kawski's Maple resources and activities", další velká kolekce od- kazů, materiálů a článků o užívání Maplu ve výuce matematické analýzy. http://math.la.asu.edu/~kawski/MAPLE/MAPLE.html Výsledky cvičení kapitol 1­9 Obrázky ke cvičením Kapitoly 1 jsou uvedeny na závěr. KAPITOLA 2 2.1 a) Ke A R > 0 takové, že pro [x, y], pro něž 0 < |x + 1| < , 0 < |y - 2| < platí f (x, y) > A. b) Ke A R > 0, B R taková, že pro x > B, |y - 1| < je f (x, y) < A. 2.2 a) 2 b) 2 c) ln 2 d) 0 e) 0. 2.3 a) neexistuje b) neexistuje c) 0 d) 1 e) 0 f) 2 g) 0 h) 2. 2.4 a) 0 b) e c) neexistuje d) 0 e) 0 f) 1. 2.6 a) f je spojitá v R2 \[0, 0] b) {[x, y] : x = -y} c) {[x, y] : x = -y} d) {[x, y] : x = 0 nebo y = 0} e) {[x, y] : x = k, y = k, k N} f) {[x, y] : x2 + y2 = 1}. 2.7 a) {[x, y] : : x = -y nebo x = 0} b) {[x, y] : y = x2 3 } c) {[x, y] : x = 0, y = 0} d) {[x, y] : y = 0} e) {[x, y, z] : x = 0 nebo y = 0 nebo z = 0} f) {[x, y, z] = = [a, b, c]}. 2.8 a) je spojitá b) není spojitá. KAPITOLA 3 3.1 a) zx = 3x2 + 4xy + 3y2 + 4, zy = 2x2 + 6xy - 5 b) zx = 5x3 y+3y x3 , zy = x3-6 y xy c) zx = sin(x + 2y) + x cos(x + 2y), zy = 2x cos(x + 2y) d) zx = 1 y cos x y cos y x + y x2 sin x y sin y x , zy = - x y2 cos x y cos y x - 1 x sin x y sin y x e) ux = 1 - y2 - xy 1-x2 + xz 1-x2-y2 , uy = - xy 1-y2 + 1 - x2 + yz 1-x2-y2 , 284 Výsledky cvičení kapitol 1­9 uz = - 1 - x2 - y2 f) zx = -1 y e- x y , zy = x y2 e- x y g) zx = 1 x+4 , zy = - 2 |y| h) zx = 1 1+x2 , zy = - 1 1+y2 i) zx = -2x sin x2 y , zy = -cos x2 y2 j) zx = 1 x2+y2 , zy = = y x2+y2+x x2+y2 k) ux = 2xex2(1-y-z) , uy = uz = -ex2(1-y-z) l) zx = y x2+y2 , zy = - x x2+y2 m) zx = 2xy (x2+y2) x2-y2 , zy = - 2x2 (x2+y2) x2-y2 n) ux x = uy y = uz z = = 2 r(r2-1) , kde r = x2 + y2 + z2. 3.2 a) zx = yxxy (1 + ln y), zy = xxy+1 ln x b) zx = - y xy-x2 y2(1+ xy) , zy = - x xy-x2 y2(1+ xy) , c) zx = -1 y (1 3 ) x y ln 3, zy = = x y2 (1 3 ) x y ln 3 d) zx = y[ln(x + y) + x x+y ], zy = x[ln(x + y) + y x+y ] e) zx = = 2(2x + y)(2x+y) [ln(2x + y) + 1], zy = (2x + y)(2x+y) [ln(2x + y) + 1] f) zx = = - 1 x2 xy-x-y xy+x+y , zy = - 1 y2 xy-x-y xy+x+y g) zx = yesin xy (1 + xy cos xy), zy = = xesin xy (1 + xy cos xy) h) ux = y z x( y z -1) , uy = 1 z x y z ln x, uz = - y z2 x y z ln x i) zx = 2(x-y) 1+(x-y)4 , zy = - 2(x-y) 1+(x-y)4 j) ux x = uy y = uz z = 2 cos(x2 + y2 + z2 ) k) ux = = yz xyz-1 , uy = xyz zyz-1 ln x, uz = xyz yz ln x ln y. 3.3 a) zx = 2 5, zy = 10 + + 5 b) zx = 0, zy = 1 4 c) zx = 1, zy = -1. 3.4 a) 2 2 b) 3 2 . 3.6 a) zxx = = 12x2 - 8y2 , zxy = -16xy, zyy = 12y2 - 8x2 b) zxx = 0, zxy = 1 - 1 y2 , zyy = 2x y3 c) zxx = 0, zxy = - 2 y3 , zyy = 6x y4 d) zxx = - 3xy2 (x2+y2) 5 2 , zxy = y(2x2-y2) (x2+y2) 5 2 , zyy = -x(x2-2y2) (x2+y2) 5 2 e) zxx = 2 cos(x + y) - x sin(x + y), zxy = cos(x + y) - - x sin(x + y), zyy = -x sin(x + y) f) zxx = -2 sin x2+4x2 cos x2 y , zxy = 2x sin x2 y2 , zyy = 2 cos x2 y3 g) zxx = x(x+y) [(ln x + x+y x )2 + 1 x - y x2 ], zxy = x(x+y) [ln2 x + x+y x ln x + + 1 x ], zyy = x(x+y) ln2 x h) zxx = 2x (x2+y2) 3 2 , zxy = 2y (x2+y2) 3 2 , zyy = - 2x(x2+2y2) y2(x2+y2) 3 2 i) zxx = - 1 (x+y2)2 , zxy = - 2y (x+y2)2 , zyy = 2(x-y2) (x+y2)2 j) zxx = y2-x2 (x2+y2)2 , zxy = - 2xy (x2+y2)2 , zyy = x2-y2 (x2+y2)2 k) zxx = - 2x|y| (x2+y2)2 , zxy = (x2-y2) sgn y (x2+y2)2 , zyy = 2x|y| (x2+y2)2 l) zxx = = 2y(1 + x2 )y-2 (-x2 + 2x2 y + 1), zxy = 2x(1 + x2 )y-1 [1 + y ln(1 + x2 )], zyy = (1 + + x2 )y ln2 (1 + x2 ). KAPITOLA 4 4.1 a) 2dx b) 1 2 dx - 1 2 dy c) 1 4 dx - 1 2 dy d) dx + 2 ln 2dy - 2 ln 2dz e) 3 5 dx + 4 5 dy f) d f = 3 4 dx - 1 4 dy g) d f = -2dx + dz h) du = x y 1 z dx x - dy y - dz z2 ln x y 4.2 a) 4 + 0,035 b) 6 - 0,09 3 c) 2,95 d) -0,06 e) 1 f) 1,13 g) dV . = 50 3 cm3 h) dh . = 1 cm. 4.3 a) není diferencovatelná, Výsledky cvičení kapitol 1­9 285 např. pro u = (1, 1) neexistuje směrová derivace fu(0, 0) b) není diferenco- vatelná, nebot' f(1,1)(0, 0) neexistuje c) ano d f (0, 0) = 0 4.4 a) x + y + + z = 3 b) 3x + 5y - z = 4 c) z0 = - 4 , x + y - 2z = 2 d) z0 = = 1, z = 1. 4.5 a) [2, 1], [-2, -1] b) -a 1+a2+b2 , -b 1+a2+b2 c) [-1/2, 1/2] d) [1, 1] e) [ 2, 1 2 , - 1 2 ], [- 2, - 1 2 , 1 2 ] f) tečna existuje a2 1 + + + a2 n = 1; pak [x1, . . . , xn] = [-a1, . . . , -an]. 4.6 a) f(1,2)(1, 1) = 3 b) f(1,0,1)(0, 1, 0) = 0. 4.7 a) d2 z = (dx)2 x + 2dx dy y - (dy)2 y2 b) d2 z = 6(x - - y)(dx)2 + 12(y - x)dxdy + 6(x - y)(dy)2 c) dn z = ex+y n j=0 n j [n2 + 2 j2 - - 2nj - n + x2 + y2 + 2x j + 2(n - j)y](dx)j (dy)n- j d) dn z = (-1)n-1(n-1)! (x+y)n (dx + +dy)n e) dn z = 2 (x+y)n+1 n j=0(-1)j n j (n - j)x + jy (dx)j (dy)n- j f) dn u = = n!ex+y+z i+ j+k=n (x+i)(y+ j)(z+k) i! j!k! (dx)i (dy)j (dz)k . 4.8 a) x2 2 + x ln y - cos y + C, b) x2 2 sin 2y + C c) x2 + y2 + C d) xy2 - x + 3 2 y2 + C. 4.9 a) x3 + y3 + z3 - - 3xyz + 2x + y ln y + z b) arctg xyz. KAPITOLA 5 5.1 a) z(x, y) = f ( x2 + y2) b) z(x, y) = f y x c) u(x, y, z) = f (x + y - - 2z, x - 2y + z). 5.2 a) zuv = 0, z(x, y) = f (x - 2 y) + g(x + 2 y) b) zvv0, z(x, y) = f ( x2 + y2) + xyg( x2 + y2) c) u(4 - uv)zuv - 2zv = 0 d) zvv + + 2v3 zv = 0 e) (u2 - v2 )zuv - vzu = 0 f) (u2 - v2 )zuv + vzu - uzv = 0 g) uzuu - xzuv + zu = 0. h) vzvv + zv = 0, z(x, y) = f (xy) ln y + g(xy). i) zuv = = 1 2u zv, z(x, y) = xy f ( y x )g(xy). 5.4 a) T2(x, y) = 2 2 + 2 2 [(x - 1 2 ) + (y - - 1 2 )] - 2 4 [(x - 1 2 )2 + 2(x - 1 2 )(y - 1 2 ) + (y - 1 2 )2 ] b) T2(x, y) = 4 + x - xy 2 c) T2(x, y) = 1-x2 2 + y2 2 d) T2(x, y) = 4 -1 2 (x-1)+1 2 (y-1)+1 4 (x-1)2 -1 4 (y-1)2 e) T2(x, y) = x-x(y-1) f) T2(x, y) = ln 2 2 + 1 2 [(x-1)+(y-1)]- 1 2 (x-1)(y-1) g) T2(x, y, z) = 1 + (x - 1) + (x - 1)(y - 1) - (x - 1)(z - 1). 5.5 a) 4 + 0,0297 b) 1 2 + 2- 3 2 180 + 2 6-4 3-1 2 2 21802 . KAPITOLA 6 6.1 a) zmin = -1 v bodě [1, 0] b) zmax = 64 27 v [4 3 , 4 3 ], ve stacionárních bo- dech [0, 0], [0, 4], [4, 0] extrém nenastává c) zmax = 16 v [2, -2] d) zmin = 30 v [5, 2] e) zmin = 3 + ln 3 v [1, 1], f) V jediném stacionárním bodě [1, 1] extrém nenastává g) zmin = - 4 3 3 v [-2 3 , -2 3 ] h) umin = -6913 v [24, -144, -1] i) umin = 4 v [1 2 , 1, 1] j) zmin = 3 3 3a2 v [ a 3 3 , a 3 3 ] k) umax = 27 2 , v [3, 3 2 , 1] 286 Výsledky cvičení kapitol 1­9 l) umax = 2 n2+n+2 n2+n+2 2 v x1 = = xn = 2 n2+n+2 m) umin = (n + 1)2 1 n+1 v x1 = = 2 1 n+1 , x2 = 2 2 n+1 , . . . xn = 2 n n+1 . 6.3 a) fmin = -2 v [-1, -1], fmax = 2 v [1, 1] b) fmin = 3 2 v [1 2 , 1 2 ], fmax = 3 v [0, 0], c) fmin = 2- 2 v [1- 1 2 , 1- 1 2 ], fmax = = 2 + 2 v [1 + 1 2 , 1 + 1 2 ] d) fmin = - 2 v [- 1 2 , - 1 2 , 0], fmax = 2 + 1 v [ 1 2 , 1 2 , 1] e) fmin = 0 v [0, 0, 0], fmax = 1 v bodech [x, y, 0], kde x2 +y2 = 1. 6.4 a) fmax = 7 v [0, -1], fmin = -4 v [1, 1] b) fmax = 22 v [2, 2], fmin = -2 v [-2, 2] c) fmax = 6 v [3, 0], fmin = -1 v [1, 1] d) fmax = -1 2 v [- 1 2 , 1 2 ], fmin = -2 v [0, 0]. e) fmin = 0 v [0, 0], fmax = 12 v bodech [0, 3]. f) fmin = 3 - - 2 2 v bodě [ 1 2 , - 1 2 ], fmax = 3 + 2 2 v bodě [- 1 2 , 1 2 ]. 6.5 a) fmax = 3 3 8 v [ 3 , 3 ], fmin = -3 3 8 v [2 3 , 2 3 ] b) fmax = 1 v [1, 0] a [0, 1], fmin = 0 v [0, 0] c) fmax = 3 + 3 5 v [ 1 5 , 2 5 , 1], fmin = - 5 12 v [-1 6 , -1 3 , 5 36 ] d) Čísla a, x1, x2, . . . , xn, b tvoří geometrickou posloupnost s kvocientem q = n+1 b a . KAPITOLA 7 7.1 a) (F-1 ) (1, 0) = 0 1 1 0 b) (F-1 ) (-2, 4) = 1 6 1 6 -1 6 0 c) (F-1 ) (1, 2) = = 1 0 0 1 7.2 a) [x, y] F - x(b2-a2)-2a(by+c) a2+b2 , y(a2-b2)-2b(ax+c) a2+b2 b) [x, y] F - y x2+y2 , x x2+y2 c) [x, y, z] F - x x2+y2+z2 x2+y2 , y x2+y2+z2 x2+y2 , 0 d) [x, y, z] F - x r R , y r R , z r R , kde r = x2 + y2 + z2, R = x2 a2 + y2 b2 + z2 c2 . 7.3 r R r (r, ) = R(r, ) (r, ), R (r, ) = -r R(r, ) r (r, ) KAPITOLA 8 8.1 a) [2, 2], [-2, -2] b) body osy y c) body roviny z = 0 ležící na elipse x2 a2 + y2 b2 = 1. 8.2 a) y = y 1+2y2 b) y = y2(1-ln x) x2(1-ln y) . 8.3 a) 5y + 2x = = 0, y = -2x b) 2x - y + 1 = 0, 2x - y - 1. 8.4 [1, 1], [1, -3] 8.5 y = -(1 - c cos y)-3 c sin y. 8.6 a) tečná rovina: x - 3y - 4z - 4 = 0, normála: x = 2 + 1 2 t, y = 4 3 - 3 4 t, z = -1 - t, t R b) x + 4y + 6z - 21 = = 0, x + 4y + 6z + 21 = 0 c) x - y + 2z 11 2 = 0. 8.7 a) zx = zy = -1, zxx = zxy = zyy = 0 b) zx = xz x2-y2 , zy = - yz x2-y2 , zxx = - y2z (x2-y2)2 , zxy = xyz (x2-y2)2 , zyy = - x2z (x2-y2)2 . 8.8 ymin = 0, 5 v x = 0, ymax = -2 v x = 0, 5. 8.9 a) zmin = -2 v [1, -1], zmax = 6 v [1, -1] b) zmin = 1 v [-2, 0], zmax = -8 7 v [16 7 , 0]. Výsledky cvičení kapitol 1­9 287 KAPITOLA 9 9.1 a) fmax = a6 66 b) fmax = 1 8 v [ 6 , 6 , 6 ] c) fmin = - 1 3 6 v [ 1 6 , 1 6 , - 2 6 ], [ 1 6 , - 2 6 , 1 6 ], [- 2 6 , 1 6 , 1 6 ], fmax = 1 3 6 v [- 1 6 , - 1 6 , 2 6 ], [- 1 6 , 2 6 , - 1 6 ], [ 2 6 , - 1 6 , - 1 6 ] d) fmax = 2 v [1, 1, 1] e) fmin = n k=1 a-2 k -1 pro xi = = a-1 i n k=1 a-2 k -1 f) fmin = n k=1 kk 2 pro xi = i i n k=1 kk -1 g) fmax nastává pro xi = i n k=1 k . 9.2 a) Délky hran hranolu: 2a 3 , 2b 3 , 2c 3 , Vmax = = 8 3 3 abc b) Rozměry kvádru a, b, c 2 , Vmax = abc 2 c) Výška hranolu vhr = 1 3 h, hrana základny a = 2 2 3 R, Vmax = 8 27 R2 h d) a = b = c = P 6 , Vmax = P P 6 6 e) [x, y] = a aa+b , b b a+b , f) Normála k elipsoidu v hledaném bodě musí být kolmá na přímku spojující zadané dva body. 9.3 a) fmin = ||v-u||2 2(||u||2||v||2- u,v 2) b) Necht' B = (u1, . . . , un-1), je matice sestavená z vektorů u1, . . . , un-1, = = (1, . . . , n-1), fmin = (BT B)-1 , pro x = B(BT B)-1 . Ax y 1-1 1/2 -1/2 x2 + 4y2 1 obr. 16.2 Bx y 3-3 2 -2 x2 9 + y2 4 1 obr. 16.3 Cx yy = -x obr. 16.4 288 Výsledky cvičení kapitol 1­9 Ex y 21 1 2 x2 + y2 = 4 x2 + y2 = 1 obr. 16.5 Dx y y = x y = -x obr. 16.6 Fx y y = 1 y = -1 x = -1 x = 1 obr. 16.7 Gx y 1/2 2 x2 + y2 = x x2 + y2 = 2x obr. 16.8 Kx yy = -2x y = -x obr. 16.9 Ix y y = 1 - x2 y = -1 - x2 1-1 1 obr. 16.10 Výsledky cvičení kapitol 1­9 289 Hx y 1-1 1 -1 y2 = 4x x2 + y2 = 1 obr. 16.11 Jx y 1 -1 y = x + 1 y = x obr. 16.12 Lx y 2-2 1 -1 x2 + y2 = 1 x2 4 + (y - 1)2 = 1 obr. 16.13 290 Výsledky cvičení kapitol 1­9 y x c = 3 c = 0 c < 0 zc = obr. 16.14 y x c = -2 c = -1 c = 1 c = 2 c = 0 1-1 1 -1 obr. 16.15 y x c = e2 c = e c = 1 c = 1 e c = 1 e2 obr. 16.16 y x c = 2 c = 1 c = 1 c = 2 zc = pro c < 0 obr. 16.17 Použitá literatura [Be] Berman G. N.: Sbornik zadač po kursu matematičeskogo analiza, Nauka, Moskva, 1971. [B-F] Budak B. M. ­ Fomin S. V.: Multiple Integrals, Field Theory and Series, Mir, Moskva, 1973. [De] Děmidovič B. P.: Sbornik zadač i upražněnij po matematičeskomu ana- lizu, Nauka, Moskva, 1964. [D-D] Došlá Z. ­ Došlý O.: Metrické prostory, teorie a příklady, skriptum Ma- sarykovy univerzity, Brno, 1991. [D] Došlá Z. ­ Došlý O.: Diferenciální počet funkcí více proměnných, skrip- tum Masarykovy univerzity, Brno, 1999. [DKV] Došlá Z., Kuben J., Vosmanský J.: Equadiff 9 CD-ROM, Masarykova univerzita, Brno, 1998. [F] Fuchsová L.: Diferenciální počet funkcí jedné proměnné, skriptum Ma- sarykovy univerzity, Brno, 1993. [Hea] Heal K. M., Hansen M. L., Rickard K. M.: Maple V Learning Guide, Springer-Verlag, New York, 1998. [Hec] Heck A.: Introduction to Maple, Springer-Verlag, New York, 1993. [H-K-S] Herman J. ­ Kučera R. ­ Šimša J.: Metody řešení matematických úloh I, SPN Praha, 1990. [Her] Herod J.: Vector calculus home page, http://www.math. gatech.edu/~harrell/calc/, 1998. 292 Použitá literatura [C-G1] Char B. W., Geddes K. O., Gonnet G. H., Leong B. L., Monagan M. B., Watt S. M.: Maple V Language Reference Manual, Springer-Verlag, Berlin, 1991. [C-G2] Char B. W., Geddes K. O., Gonnet G. H., Leong B. L., Monagan M. B., Watt S. M.: First Leaves: A Tutorial Introduction to Maple V, Springer- -Verlag, Berlin, 1991. [C-G3] Char B. W., Geddes K. O., Gonnet G. H., Leong B. L., Monagan M. B., Watt S. M.: First Leaves: Maple V Library Reference Manual, Springer- -Verlag, Berlin, 1991. [J-S] Janyška J., Sekaninová A.: Analytická teorie kuželoseček a kvadrik, skriptum MU, Brno, 1996. [J] Jarník V.: Diferenciální počet I a II, Academia, Praha, 1974. [Jo] Jobáková D.: Praktikum z počítačů ve výuce matematiky, diplomová práce MU, Brno, 1997. [Kad] Kadlčíková S.: Vyšetřování průběhu funkcí dvou proměnných, diplo- mová práce MU, Brno, 1994. [Ka1] Kawski M.: An introduction to practical Maple 3D-graphics, http: //math.la.asu.edu/~kawski/publications.html, 2002. [Kl1] Klotz E., Magness E.: Limits, http://mathforum.org/~klotz/ limits/Limits.html, 2002. [Kl2] Klotz E., Magness E.: Tangent planes, http://mathforum.org/ ~klotz/tangents/TangentPl.html, 2002. [Ma] Marlin J.A.: Calculus III with Maple V, http://www2.ncsu.edu/ eos/info/maple_info/www/MA242Contents.html, 1997. [N1] Novák V.: Diferenciální počet v R, skriptum Univerzity J. E. Purkyně, SPN Praha, 1985. [N2] Novák V.: Diferenciální počet funkcí více proměnných, skriptum Uni- verzity J. E. Purkyně, Brno, 1983. [P1] Plch R.: O jednom využití počítače ve výuce matematické analýzy, Po- kroky matematiky, fyziky a astronomie, ročník 42, č. 1, 1997. Použitá literatura 293 [P2] Plch R.: Internet pro učitele matematiky, Prometheus, Praha, 1997. [P3] Plch R.: Diferenciální počet funkcí více proměnných s programem Ma- ple V, disertační práce, Brno, 1998. [Pu] Putz J.F.: The CAS in Multivariable Calculus, http://archives. math.utk.edu/ICTCM/EP-8/C16/html/paper.html, 1998. [R1] Ráb M.: Komplexní čísla a jejich užití v elementární matematice, skrip- tum Univerzity J. E. Purkyně, Brno, 1990. [R2] Ráb M.: Riemannův integrál v En , skriptum Univerzity J. E. Purkyně, Brno, 1985. [Ro] Rodriguez C.: Multivariate Calculus With Maple, http://omega. albany.edu:8008/calculus3/, 1997. [S] Sikorski R.: Diferenciální a integrální počet. Funkce více proměnných, Praha 1973 (překlad z polštiny). [So] Sojka P. a kol.: CD-ROM k 5. výročí založení Fakulty informatiky MU, http://nlp.fi.muni.cz/projekty/vsech5/index_ cd.html, Masarykova univerzita, Brno, 1999. [T-S] Tichonov A. N. ­ Samarskij A. A.: Rovnice matematické fyziky, Nakla- datelství ČSAV, Praha, 1955 (překlad z ruštiny). [V] Vogel T.: Gallery of Calculus Pathologies, http://www.math. tamu.edu/~tom.vogel/gallery/gallery.html, 1997. Rejstřík bod limitní, 29 stacionární, 88, 138 Bolzano Bernard, 37 Cauchy Augustin Louis, 111 Cauchyova nerovnost, 143 Coolidge Calvin, 133 definiční obor funkce, 17 derivace implicitní funkce, 119 parciální, 44 2. řádu, 47 geometrický význam, 46 smíšené, 47 složených funkcí, 71 směrová, 50 vyšších řádů, 50 derivace zobrazení, 110 determinant matice, 95 diferenciál, 58 2. řádu, 63 Fréchetův, 62 Gâteauxův, 62 m-tého řádu, 63 totální, 57, 59 divergence vektorového pole, 112 Einstein Albert, 25, 41, 55, 69, 103, 115 extrém absolutní (globální), 96 lokální, 87 lokální vázaný podmínkami, 136 vázaný, 135 vázaný lokální, 136 Fermat Pierre, 88 funkce, 17 diferencovatelná, 58 implicitně zadaná, 117 kmenová, 64 Lagrangeova, 137 souřadnicové, 105 spojitá na množině, 38 v bodě, 36 Galileo, 130 gradient funkce, 62, 112 graf funkce, 20 Hamilton William Rowan, 113 Heine Heinrich, 35 Hessova matice, 52 hodnost matice, 130 Huxley Aldous Leonard, 86 Huyghens Christian, 103 implicitně 296 Rejstřík zadaná funkce, 118, 125 zadané zobrazení, 128 Jacobi Carl, 107 jacobián, 107 zobrazení, 110 Jacobiho matice, 107­110, 129 inverzního zobrazení, 110 složeného zobrazení, 110 koeficient stejnolehlosti, 105 kruhová inverze, 105 kvadratická forma definitní, 94 indefinitní, 94 semidefinitní, 94 Lagrange Joseph Louis, 49 Lagrangeova funkce, 139 Lagrangeův multiplikátor, 137 Laplace Pierre Simon, 77 limita funkce nevlastní, 29, 30 vlastní, 29 matice definitní, 94 Hessova, 52 indefinitní, 94 Jacobiho, 107, 108, 110 jednotková, 108 lineárního zobrazení, 110 regulární, 108 metrika Euklidovská, 27 maximová, 28 v Rn , 27 minor matice, 95 multiplikátor Lagrangeův, 137 normálový prostor, 130 obrázek, 12, 20, 89, 101, 118, 121, 138, 150, 151, 153­165, 168­171, 176, 177, 179, 180, 184, 186, 189, 190, 202, 204­206, 210, 213, 215, 217, 218, 222, 223, 232, 233, 236, 238, 240, 244, 246­251, 255, 257, 258, 261, 263­266, 268, 270, 281 okolí bodu, 28 operátor Hamiltonův, 113 nabla, 113 Pascal Blaise, 147 pole vektorové, 112 průměr aritmetický, 143 geometrický, 143 harmonický, 143 Riemann Bernhard, 111 rotace vektorového pole, 112 rovnice diferenciální exaktní, 65 parciální, 71 Laplaceova, 77, 79 vlnová, 75 sedlo, 89 Schwarz Karl, 48 složky zobrazení, 105 součin skalární, 52 vektorový, 114 souřadnice polární, 33, 77 Rejstřík 297 sférické, 35, 79 souřadnicové funkce, 105 stacionární bod, 138 Taylor Brook, 81 Taylorův vzorec, 82 tečná nadrovina, 57 tečná rovina, 59 tečný prostor, 130 vektorový součin, 114 věta Bolzanova, 39 Lagrangeova, 49, 53, 54 první Bolzanova, 39 Schwarzova, 48 Taylorova, 81 Weierstrassova, 38 Viviani Vincenzo, 130 Vivianiho křivka, 130 vrstevnice funkce, 21 Weierstrass Karl, 37, 48 zobrazení, 105, 109 diferencovatelné, 106