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, 1999 Obsah Obsah i Předmluva iv Využití počítače ve výuce matematické analýzy 1 1 Pojem funkce více proměnných 7 2 Limita a spojitost funkce 16 2.1 Metrické vlastnosti Rn . . . . . . . . . . . . . . . . . . . . . . . 16 2.2 Limita funkce . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.3 Spojitost funkce . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.4 Věty o spojitých funkcích . . . . . . . . . . . . . . . . . . . . . . 26 3 Parciální derivace 30 3.1 Parciální derivace 1. řádu . . . . . . . . . . . . . . . . . . . . . . 31 3.2 Derivace vyšších řádů . . . . . . . . . . . . . . . . . . . . . . . . 34 3.3 Směrové derivace . . . . . . . . . . . . . . . . . . . . . . . . . . 37 3.4 Lagrangeova věta o střední hodnotě . . . . . . . . . . . . . . . . 40 4 Diferenciál funkce 43 4.1 Diferencovatelná funkce, diferenciál . . . . . . . . . . . . . . . . 43 4.2 Diferenciály vyšších řádů . . . . . . . . . . . . . . . . . . . . . . 49 4.3 Kmenová funkce . . . . . . . . . . . . . . . . . . . . . . . . . . 50 5 Derivace složené funkce, Taylorův vzorec 56 5.1 Parciální derivace složených funkcí . . . . . . . . . . . . . . . . 56 5.2 Taylorova věta . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 i 6 Lokální a absolutní extrémy 72 6.1 Lokální extrémy . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 6.2 Absolutní extrémy . . . . . . . . . . . . . . . . . . . . . . . . . 81 7 Zobrazení mezi prostory vyšších dimenzí 89 7.1 Zobrazení z R2 do R2 . . . . . . . . . . . . . . . . . . . . . . . . 89 7.2 Zobrazení z Rn do Rm . . . . . . . . . . . . . . . . . . . . . . . 93 7.3 Diferenciální operátory matematické fyziky . . . . . . . . . . . . 96 8 Funkce zadaná implicitně 100 8.1 Implicitně zadaná funkce jedné proměnné . . . . . . . . . . . . . 101 8.2 Implicitně zadaná funkce více proměnných . . . . . . . . . . . . 108 8.3 Implicitně zadané zobrazení mezi prostory vyšších dimenzí . . . . 111 9 Vázané extrémy 116 9.1 Metoda Lagrangeových multiplikátorů . . . . . . . . . . . . . . . 116 9.2 Vázané extrémy a nerovnosti . . . . . . . . . . . . . . . . . . . . 124 10 Generování grafiky v Maplu 129 10.1 Graf funkce dvou proměnných . . . . . . . . . . . . . . . . . . . 129 10.2 Vrstevnice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 11 Výpočty limit v Maplu 148 11.1 Ilustrační grafika . . . . . . . . . . . . . . . . . . . . . . . . . . 148 11.2 Výpočty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 12 Derivace funkce v Maplu 162 12.1 Parciální derivace 1. řádu . . . . . . . . . . . . . . . . . . . . . . 162 Geometrický význam parciálních derivací . . . . . . . . . . . . . 164 12.2 Derivace vyšších řádů . . . . . . . . . . . . . . . . . . . . . . . . 166 12.3 Směrové derivace . . . . . . . . . . . . . . . . . . . . . . . . . . 169 12.4 Parciální derivace složených funkcí . . . . . . . . . . . . . . . . 173 13 Aproximace funkce v Maplu 182 13.1 Diferencovatelná funkce . . . . . . . . . . . . . . . . . . . . . . 182 13.2 Tečná rovina ke grafu funkce . . . . . . . . . . . . . . . . . . . . 193 13.3 Užití diferenciálu k přibližným výpočtům . . . . . . . . . . . . . 199 13.4 Taylorova věta . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 13.5 Kmenová funkce . . . . . . . . . . . . . . . . . . . . . . . . . . 207 ii 14 Extrémy funkce v Maplu 210 14.1 Lokální extrémy . . . . . . . . . . . . . . . . . . . . . . . . . . . 210 14.2 Absolutní extrémy . . . . . . . . . . . . . . . . . . . . . . . . . 229 14.3 Vázané extrémy . . . . . . . . . . . . . . . . . . . . . . . . . . . 236 15 Funkce zadaná implicitně v Maplu 241 15.1 Generování PC-grafu funkce zadané implicitně . . . . . . . . . . 241 15.2 Výpočty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 Přílohy 253 P 1 Software pro podporu výuky matematické analýzy . . . . . . . . 253 P 2 Materiály na Internetu . . . . . . . . . . . . . . . . . . . . . . . . 257 Výsledky cvičení kapitol 1­9 262 Použitá literatura 270 Rejstřík 273 iii Předmluva Tento CDROM je učebním textem 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řednictvím počítačových technologií se student učí matematickou analýzu a naopak. Podnětem k vytvoření vytvoření CDROMu byla potřeba zvýšit geometrickou představivost studentů a zmodernizovat výuku využitím moderních technologií. Jako prvnípartiezmatematické 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ředstavivost v prostoru a nedostatek zahraničních materiálů k tomuto tématu. Základem CDROMu byl učební text [D], práce [P3] a zkušenosti s přípravou CDROMů 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 elektronickou publikační činnost a je nezávislý na platformě. Kromě jiného umožňuje prostřednictvím křížových odkazů rychle vyhledávat souvislosti napříč celým textem. CDROM je určen pro posluchače odborného studia matematiky, fyziky, informatiky a pro posluchače učitelského studia matematiky a dále všem zájemcům o výuku matematické analýzy s využitím počítače a uživatelům CAS systému Maple. Materiá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ěnný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. CDROM 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é. Nové pojmy a tvrzení z diferenciálního počtu funkcí více proměnných jsou nejprve iv 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 proměnné, uvádíme přímo definice a tvrzení pro n 2. Na konci 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íráne problematice je zde systémem Maple vytvořena ilustrační grafika a ukázky počítačového řešení příkladů. Teoretická i praktická část jsou úzce svázány prostřednictvím křížových odkazů (po seznámení s teoretickým pojmem si pouhým stiskem tlačítka myši můžeme prohlédnout jeho geometrickou interpretaci a můžeme se seznámit i se způsobem, jakým byla ilustrační grafika vygenerována). Všechny počítačové materiály jsou uloženy na CDROMu. Tedy uživatel CDROMu může snadno generovat podobné obrázky bez nutnosti studování syntaxe příkazů Maplu. Závěrem bychom chtěli poděkovat 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 CDROM vznikl za podpory Fondu rozvoje VŠ v rámci řešení projektu č. 448/1999. Brno, prosinec 1999 Autoři v 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 ponechá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 konferencí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, Rybník u Poběžovic, 8. ­ 11. září 1998). Otázky tohoto způsobu výuky však nejsou zatím souhrnně zpracovány a zodpovězeny. Tato kapitola je proto věnována problematice využitívýpočetnítechniky ve výuce matematické analýzy. Jejím cílem je ukázat možnosti tohoto způsobu výuky a najít odpověď 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 systé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 grafický 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ímevyuž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 systému, nebudeme uvažovat. V takovém případě je pro nás počítač jakousi ,,černou 1 2 Využití počítače ve výuce matematické analýzy skřínkou", 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é použ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) * počítač pomáhá při 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á) * počítač pomáhá při 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áne i programů k testováníznalostí. Tyto sloužík mechanické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 15.2 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čové grafiky. Méně časté je použ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ích programů 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é doplňují počítačová grafika a testovací programy (myšlena jsou speciální cvičení v počítačové laboratoři). To samé platí i pro samostatnou přípravu, pouze roste úloha testovacích pro- gramů. Využití počítače ve výuce matematické analýzy 3 Proč Proč výpočetní techniku, přesněji výše uvedených způsobů, ve výuce matematické analýzy využívat? Geometrická představivost hraje v matematické analýze významnou úlohu (studenti někdy nemají s daným matematickým pojmem spojenu konkrétní geometrickou představu). K jejímu vytváření významnou měrou přispívá i počítačová grafika. Ta nám umožňuje tuto geometrickou představu vytvářet 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ůznorodost typů, zvýšit počet a prohloubit náročnost problémů, které studenti samostatně ř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í stacioná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í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.1). Ve všech uvedených případech umožňuje studentům použití počítače 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í. Uveď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| ) 4 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 referenč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šlenkovité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, . . . ). Tyto jsou na druhou stranu důležité z hlediska motivace. Ukazují, že počítač není ,,všemocný" a 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ší trvale instalovat v posluchárně 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 5 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řádaní 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ěnovali větší pozornost interakci s počítačem než výkladu vyučujícího. Další nevýhodou 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 cvičení je optimální provádět naproti tomu 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. Nezbytnou 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 matematickou 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ích programů, přístupných na Internetu. O těchto možnostech bude podrobněji pojednáno v části 15.2. 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 k současným ,,klasickým" cvičením přidat 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 http://www.math.duke.edu/education/proj_calc/. Zavedení výuky podobné projektu CALC však v našich podmínkách naráží na téměř nulovou možnost zvýšení počtu hodin věnovaných výuce matematické 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 klasický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 studia jevem nežádoucím. Těžiště využití počítače je zde tedy především při přednáškách a jako doplnění klasických cvičení (zejména příklady ilustrační grafiky). Ukázkami ve výuce a při cvičeních by měli být studenti motivováni k samostatné práci a k experimentování v počítačové laboratoři. (Předpokladem je opět volný přístup do počítačové laboratoře 6 Využití počítače ve výuce matematické analýzy vybavené vhodným softwarem). Snazší je zavedení výuky v počítačových laboratořích na školách, kde je matematika aplikovanou vědou, tj. zejména na vysokých školách technického směru. Zdemůžemerozdě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ů uváděn zápis ve dvojí podobě. Nejdříve je uveden obvyklý matematický zápis (sazba je provedena systémem LATEX) a následně je uveden zápis výpočtu v Maplu. Poté, co si čtenář postupně zvykne na zápis v Maplu, je matematický zápis vynechá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 TEXu (v textu je vždy uvedena úplná posloupnost příkazů). Všechny pro účely této práce naprogramované procedury jsou uloženy v knihovně mvcalp. Při programování procedur byl kladen důraz na jednoduchost a matematickou správnost více 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ší znalosti programovacích jazyků. Knihovna mvcalp a všechny Mapleovské zápisníky s ilustračními příklady jsou taktéž uloženy na CDROMu. Všechny obrázky jsou uloženy v postscriptu1 a jsou přístupné také prostřednictvím Internetu na: http://www.math.muni.cz/~plch/difer/difer.html. Maple V R3 byl zvolen pro svoje snadné ovládání a pro svou 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 byl 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 (Windows 95) může dojít ke zvýšeni doby, potřebné k výpočtu (zejména u generování grafiky). 1Jeden z nejpoužívanějších jazyků pro popis stránky (PDL), vyvinutý společností Adobe Sys- tems. Kapitola 1 Pojem funkce více proměnných Reálná funkce jedné reálné proměnné, stručně funkce jedné proměnné, je zobrazení 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. Nechť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 prostoru 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íudaný definiční obor funkce, pak definičním oborem rozumíme množinu všech bodů x Rn , pro něž má tento vzorec smysl. 7 8 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 podmí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. x 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, neboť tuto rovnici lze převést na tvar (x - 3)2 + y2 = 9. Množina všech bodů [x, y] R2 splňujícívýšeuvedené nerovnosti, 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 9 x 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í rovnici x + y = 2, což je rovnice přímky. Ve zbývajících kvadrantech postupujeme obdobně a obdržíme kosočtverec načrtnutý na vedlejším obrázku. Definičním oborem funkce f je množina vyšrafovaná na tomto obrázku. Tato množina je uzavř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, které 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 splně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 (neboť[0, 0] / D( f )). 10 Pojem funkce více proměnných x y 1 -1 y = x + 1 y = x obr. 1.1: z = ln(y ln(y - x)) x y 2 -2 x = -y2 x = y2 obr. 1.2: z = arcsin x y2 + arcsin(1 - y) Definice 1.2. Nechť 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)}. y 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 třírozměrném prostoru. V příkladech, se kterými se zde setkáme, to bude vždy nějaká třírozměrná plocha. Pro 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řadných stěn xy, xz, yz, viz obr. 1.3) a rovinami s nimi rovnoběžnými. Pojem funkce více proměnných 11 Definice 1.3. Nechť M R2 a f : M R je funkce dvou proměnných definovaná 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ěnný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 vrcholem 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 zobrazovacích metod se vlastně jedná o průmět do svislých souřadných nárysen, tj. nárys a bokorys). x y z = 1 z = 2 obr. 1.4: Půdorys x z z = |x| y = 0 obr. 1.5: Bokorys y 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í 12 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 vrstevnice jsou 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ách 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. x y a b z = 1 obr. 1.7: Půdorys x z z = x2 a2 y = 0 obr. 1.8: Bokorys y 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án 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 13 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 . x 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ředem S = [1 k , 0] = [ 1 ln c , 0] a poloměrem r = 1 |k| = 1 | ln c| procházející počátkem, avšak bez počátku (neboť pro bod [0, 0] není funkce definována). Pro c = 1 dostáváme 0 = 2x x2+y2 , tj. x = 0, vrstevnicí dané funkce je pro c = 1 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. 14 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ázorně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. x 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| Óx 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) 1.2. Načrtněte vrstevnice funkcí: Pojem funkce více proměnných 15 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 loká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.) Skuteč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 kruhové okolí, zvolíme-li euklidovskou metriku 2([x1, y1], [x2, y2]) = (x1 - x2)2 + (y1 - y2)2, 16 Limita funkce 17 č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 (neexistence) 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í jednotlivý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 [-, ], [, -], [-, -] a 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 budeme 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 hromadný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 . 18 Limita a spojitost funkce 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 promě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é Definice 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. Limita funkce 19 x y z x y zii) Dokažte, že funkce f (x, y) = 1 x2+y2 má v bodě [0, 0] nevlastní limitu . Řešení. Nechť 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 libovolné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é a čtenáři doporučujeme si je provést jako cvičení. Věta 2.1. Funkce f má v bodě [x0, y0] nejvýše jednu limitu. Věta 2.2. Nechť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. Nechť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. Nechť lim (x,y)(x0,y0) f (x, y) = L1, lim (x,y)(x0,y0) g(x, y) = L2 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)] = c1 L1 + c2 L2, lim (x,y)(x0,y0) [ f (x, y)g(x, y)] = L1L2. 20 Limita a spojitost funkce 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é, neboť k počítání tzv. neurčitých výrazů (limity typu ,,0 0 ", ,, ") nemámek dispozici žádnou analogii ĺHospitalova pravidla. Proto při výpočtu limit tohoto typu používáme různých úprav 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é proměnné. Čitatele i jmenovatele zlomku vynásobíme výrazem x2 + y2 + 1 + 1. Po 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, ) Limita funkce 21 Řešení. Nejprve ukážeme, že lim(x,y)(1,) 1 x+y = 0. Nechť > 0 je libovolné. Musíme najít > 0 a A R taková, že pro x (1 - , 1 + ) a y > A platí 1 x+y < . Nechť > 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í ĺHospitalova1 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 ). 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]. Ř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 1Guillaume de ĺHospital (1661­1704), francouzský matematik. 22 Limita a spojitost funkce pro různé cesty, znamená to, že limita v daném bodě nemůže existovat. Tohoto faktu užíváme při důkazu neexistence limity funkce dvou proměnných ve vlastní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], uvedená 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 vektorem (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í", 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. Limita funkce 23 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. 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, neboťfunkce g() = sin3 + cos3 je ohraničená. ii) f (x, y) = x2+(y-1)2y x2+(y-1)2 v bodě [0, 1]. Řešení. Postupujeme podobně jako v předcházejícím příkladě. 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. 24 Limita a spojitost funkce 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 transformaci 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č (=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í" 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 vhodná k vyšetřování existence limity následují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, neboťje v podstatě stejný jako pro analogické tvrzení týkající se funkce jedné proměnné, viz [N1], strana 189. Věta 2.7. Nechť[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. 2.3. Spojitost funkce Definice 2.3. Ř ekneme, žefunkce f jespojitá vbodě [x0, y0], jestližemá 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: Nechť 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 1Heinrich Heine (1821­1881), německý matematik Spojitost funkce 25 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. Nechť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ěnný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) . Ř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 26 Limita a spojitost funkce 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], neboť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 Weier- strassova1 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 uzavřeném intervalu znamená spojitost zleva (zprava) v pravém (levém) krajním bodě 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) Nechť 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 Eukleidovských prostorech je kompaktní množinou 1Karl T. W. Weierstrass (1815­1897), německý matematik 2Bernard Bolzano (1781­1848), český matematik a filosof Věty o spojitých funkcích 27 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 existuje 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 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) Nechťfunkce f je spojitá na otevřené souvislé množině M R2 . Nechťpro A, B M platí f (A) = f (B). Pak ke každému číslu c ležícím 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 buď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 28 Limita a spojitost funkce 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í: Nechť 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) = 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 Věty o spojitých funkcích 29 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 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, je limita funkce dvou a více proměnných komplikovanějším pojmem než v případě funkce jedné proměnné, neboť 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 promě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ý". 30 Parciální derivace 1. řádu 31 3.1. Parciální derivace 1. řádu Definice 3.1. Nechťfunkce f : R2 R je definovaná v bodě [x0, y0] a nějaké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 derivaci 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 konstanty. 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. Nechťfunkce f, g : Rn R mají parciální derivaci podle promě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), 32 Parciální derivace 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ěnnou 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 ) . Parciální derivace 1. řádu 33 Geometrický význam parciálních derivací. x y z (x0, y0, 0) O Q0 z = f (x, y) s t Nechťje dána funkce f : R2 R a G f je její graf. Nechť je rovina daná rovnicí y = y0. Za rozumný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 ). Podobně, 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á, neboť v tomto bodě neexistuje limita (grafem funkce je podstavná rovina, z níž je ,,vyzdvižen" osový kříž). Skutečnost, že z existence parciálních derivací neplyne spojitost, je zcela přirozená, neboťparciální derivace udávají informaci pouze o chování funkce ve směrech rovnoběžných se souřadnými osami, přičemž v jiných směrech se funkce může chovat ,,velmi divoce". 34 Parciální derivace 3.2. Derivace vyšších řádů Definice 3.2. Nechť [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 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 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) Derivace vyšších řádů 35 Ř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 rovnost zxy = zyx. Následující věta ukazuje, že tyto rovnosti nejsou náhodné. Věta 3.2. (Schwarzova1 ) Nechť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). Pak funkci F 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 36 Parciální derivace Podle Lagrangeovy 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 funkcí , 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), tedy platí (3.2). Následující příklad ukazuje, že bez předpokladu spojitosti smíšených parciálních derivací rovnost (3.2) obecně neplatí (viz příklad 12.4). Příklad 3.4. Nechť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 a konečně fy(0, 0) = lim h0 f (0, h) - f (0, 0) h = lim h0 0 h = 0. Směrové derivace 37 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 kolikrá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úžení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 vektoru 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 euklidovského prostoru. Definice 3.3. Nechť f je funkce n proměnných, x je vnitřní bod D( f ), u Vn. Polož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) Nechť (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 . ii) Jelikož je směrová derivace obyčejnou derivací funkce , platí pro počítání tato pravidla: Nechťexistuje fu, gu v bodě x Rn. Pak a) pro všechna c R existuje fcu(x) a platí fcu(x) = cfu(x) 38 Parciální derivace 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 existují 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 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 vektoru u V2 není postačující pro spojitost. Toto 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 ĺ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. Tedy 1 = fu+v(0, 0) = fu(0, 0) + fv(0, 0) = 0. Směrové derivace 39 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] spojitá. 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. Nechť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 xj ), i, j = 1, . . . , n, matici parciálních derivací druhé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. 40 Parciální derivace 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 Lagrangeova1 věta o střední hodnotě. Tato vě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é tvrzení 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 nechť[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 se stranami rovnoběžnými se souřadnými osami, určeného body [x0, y0] a [x1, y1] (načrtněte si obrá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ěnný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 ). 1Joseph Louis Lagrange (1736­1813), francouzský matematik Lagrangeova věta o střední hodnotě 41 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. Věta 3.6. Nechť 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] 42 Parciální derivace 3.4. a) Vypočtěte uz v bodě [0,0, 4 ], je-li u = sin2 x + sin2 y + sin2 z. 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 nadrovina (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 proměnných. 43 44 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 ekvivalentní 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 derivací ani směrových derivací neplyne spojitost. Následující dvě věty ukazují, že diferencovatelnost funkce je tou ,,správnou" vlastností, která implikuje 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, neboť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), Diferencovatelná funkce, diferenciál 45 je tedy funkce f spojitá v bodě [x0, y0]. Poznámka 4.2. Opak této věty neplatí. Je-li funkce spojitá, nemusí být diferencovatelná, 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 (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. 46 Diferenciál funkce 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). 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 47 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 existence 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, neboťze spojitosti parciálních derivací plyne, že limity výrazů v hranatých závorká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, 48 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. Diferenciá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 ukažme, ž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 také, 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 nechť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. Nechť 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 , neboť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 také 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ší diferenciály, používané často v diferenciálním počtu v normovaných lineárních prostorech, např. slabý (G^ateauxův) diferenciál. Podrobnější informace o této problematice lze nalézt ve skriptu [N2]. Diferenciály vyšších řádů 49 4.2. Diferenciály vyšších řádů Vtomto odstavci zavedeme diferenciály vyšších řádů pro funkce více proměnný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ž existence 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 definovat 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. Nechť funkce f : R2 R má v bodě [x0, y0] spojité parciální derivace 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 vztahem (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ěnný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 . 50 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í zapsat 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ěnných P(x, y), Q(x, y) a 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ěďna otázku existence kmenové funkce dává následující věta. Věta 4.5. NechťP, Q jsou spojité funkce proměnných x, y definované na otevřené jednoduše souvislé1 množině R2 , které mají na této množině spojité parciální derivace Py, Qx . Pakvýraz P(x, y)dx+Q(x, y)dy jediferenciálemnějaké funkce, právě když platí Py(x, y) = Qx (x, y) pro každé [x, y] . (4.7) Důkaz. ,,": Nechť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 51 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, neboť 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) 52 Diferenciál funkce Dosadíme-li y = dy dx a vynásobíme-li jmenovateli zlomků, 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 spojitý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 porovná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 53 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 jejich 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 nevykoná žá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 změní přibližně objem kužele s poloměrem podstavy r = 10cm a výškou h=10cm zvětšíme-li poloměr podstavy o 5mm a výšku o 5mm 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 = 2m, b =1m a výškou v =1m, jestliže a zvětšíme o 7cm a b zmenšíme o 7cm chceme-li, aby objem zůstal nezměněn. 54 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) rovnoběž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 + + an xn + xn+1 = 0. 4.6. Pomocí diferenciálu vypočtěte směrové derivace funkce f ve směru vektoru 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 4.9. Zjistěte, zda dané výrazy jsou totálními diferenciály nějaké funkce, a pokud ano, najděte je: Kmenová funkce 55 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 Taylorovu vzorci pro funkci více proměnných. Podrobnější srovnání s funkcí jedné proměnné provedeme v každém odstavci zvlášť. 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í diferenciá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ž buďjiž umíme najít řešení nebo alespoň můžeme vyvodit řadu důležitých vlastností řešení rov- nice. Na úvod připomeňme, jak se derivuje složená funkce jedné proměnné. Nechť 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í explicitně zadána (obvykle je to hledané řešení parciální diferenciální rovnice). 56 Parciální derivace složených funkcí 57 Věta 5.1. Nechť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 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 . 58 Derivace složené funkce, Taylorův vzorec 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, neboť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 vidíme, že všechny diferencovatelné funkce dvou proměnných, které splňují (5.5) Parciální derivace složených funkcí 59 jsou tvaru f (x, y) = g(x - y), kde g je libovolná diferencovatelná funkce jedné proměnné. iii) Proveďte totéž jako v předchozím příkladě zavedením polárních souřadnic = arctg y x , r = x2 + y2 do rovnice yfx(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ěnných můžeme dosáhnou značného zjednodušení dané parciální diferenciální rovnice, což se velmi často využívá především při řešení diferenciálních rovnic popisujících různé fyzikální děje. Protože tyto rovnice jsou většinou druhého řádu (obsahují parciální derivace druhého řádu neznámé funkce), zvláště důležité jsou vzorce pro parciá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). 60 Derivace složené funkce, Taylorův vzorec Věta 5.2. Nechť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 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 + 2zuvuxvx + zvvv2 x + zuuxx + zvvxx zxy =zuuuxuy + 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 + zuvvxux + zvvv2 x + zvuuxvx + zuuxx + zvvxx = =zuuu2 x + 2zuvuxvx + 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 dosadíme zu resp. zv. Poznámka 5.1. K zapamatování vzorců (5.7) můžeme použít formální umocnění, o které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 + 2zuvuxvx + 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 Parciální derivace složených funkcí 61 (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ě funkcí 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 . 62 Derivace složené funkce, Taylorův vzorec 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čete 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 Parciální derivace složených funkcí 63 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 tuto rovnici 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. Nechť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 složená funkce 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é (neboťdruhá derivace lineární funkce je nulová). Pak 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 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, neboťjsou formálně poměrně složité. 64 Derivace složené funkce, Taylorův vzorec 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čtěme 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 , Parciální derivace složených funkcí 65 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 . 66 Derivace složené funkce, Taylorův vzorec 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í. Nechť funkce u závisí pouze na proměnné r = x2 + y2 + z2 a nikoliv na promě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é. Nechť 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 dopustí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ěnných dostáváme toto tvrzení. Věta 5.4. (Taylorova) Nechť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 Taylorova věta 67 [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. Zaveď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, 68 Derivace složené funkce, Taylorův vzorec 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 , Taylorova věta 69 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í. Nechť 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é, neboť P je polynom 3. stupně. Tedy T3(x, y) = P(x, y) a stačí nalézt 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 . 70 Derivace složené funkce, Taylorův vzorec Jestliže ve výsledku provedeme umocnění, po úpravě samozřejmě dostáváme polynom 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 proměnných. Důkaz tohoto tvrzení neuvádíme, neboťje v podstatě stejný jako pro dvě proměnné. Věta 5.5. Nechť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 rovnost: 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řípadech, kdy po transformaci vyjde jednoduchý výsledek, pokuste se 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 . h) x2 zxx - 2xyzxy + y2 zyy + xzx + yzy = 0, u = xy, v = y. i) x2 zxx - y2 zyy = 0, u = xy, v = y x . Taylorova věta 71 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 človik 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ální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 lokálně, tj. v okolí nějakého bodu. To je předmětem prvního odstavce. Pokud je předepsánamnožinaamámenajít bod této množiny, v němž funkce nabývá největší resp. nejmenšíhodnoty, mluvíme o absolutních extrémech. O nich pojedná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 loká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 lokálních maximech a minimech. Pro (ostrá) lokální minima a maxima budeme poží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, neboť 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.) 72 Lokální extrémy 73 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, neboť 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á. Vnásledujícímodvodímenutné apostačujícípodmínky pro existenci lokálního extrému v případě, že má funkce v daném bodě parciální derivace. Podobně jako u funkce jedné proměnné, je nutná podmínka formulována pomocí stacionárního bodu a postačující podmínka pomocí parciálních derivací 2. řádu. Definice 6.2. Nechť 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 extrému, bývá v některé literatuře citována jako Fermatova věta.1 Věta 6.1. Nechť 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ární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ímbodě nebo v bodě, kdealespoň jedna zparciálních derivacíneexistuje. 1Pierre de Fermat (1601­1665), francouzský matematik. 74 Lokální a absolutní extrémy 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 stacionárním bodě lokální extrém. Připomeňme situaci pro funkci jedné proměnné g : R R. Nechť t0 R je stacionární bod této funkce. O tom, zda v tomto bodě je nebo není extré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. Lokální extrémy 75 Věta 6.2. Nechťfunkce f : R2 R má v bodě [x0, y0] a nějakém jeho okolí spojité parciální derivace druhého řádu a nechť[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 minimum, 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. Nechť 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. 76 Lokální a absolutní extrémy 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 . Proto 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, neboť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. Lokální extrémy 77 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 rovnic 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 stacioná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). 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á. 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, 78 Lokální a absolutní extrémy odtud x2 = y2 a 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 nenastává, neboť 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, neboť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í stacioná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 existenci 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. Lokální extrémy 79 Definice 6.3. Nechť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ě (negativně) 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 xj , i, j = 1, . . . , n. Věta 6.3. Nechť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 xj (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ř. loká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í nechť {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í. 80 Lokální a absolutní extrémy 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 Absolutní extrémy 81 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í, neboť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. Nechť 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é, mluvíme o ostrých absolutních extrémech. Místo termínu absolutní extrém se používá často 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 buďv bodě lokálního extrému ležícím uvnitř intervalu nebo v jednom z krajních bodů. Pro funkce více proměnných je situace podobná. Věta 6.5. Nechť 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ů buď 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í, neboťjestliže bod absolutního extrému 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 diferencovatelných funkcí (s takovými se v praktických situacích setkáváme nejčastěji) na 82 Lokální a absolutní extrémy 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 hranice 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 Absolutní extrémy 83 vyšetřujeme) s funkční hodnotou funkce f v jediném stacionárním bodě [1, 1] vidíme, že fmin = -12 pro [x, y] = [0, 4] a [x, y] = [4, 0], fmax = 1 pro [x, y] = [1, 1]. Závěrempoznamenejme, žealgebraické úpravy spojené s vyjádřenímfunkce 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] sestý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í, neboť u(0) = 0 = v(0) a w(0) = v(4) = -12. Doporučujeme čtenáři tuto kontrolu vždy provést, neboť 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 buďv lokálním extrému uvnitř intervalu 84 Lokální a absolutní extrémy [-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, neboť 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 jednotlivých částí tak, aby plocha omezená těmito obrazci byla minimální resp. maximá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) . Absolutní extrémy 85 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ává abs. 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 . Minimu nastává v bodě [ 1 2 , 1 2 ] a 86 Lokální a absolutní extrémy maximum v bodě [- 1 2 , - 1 2 ] a extremální hodnoty jsou fmin = 11-4 2, fmax = 11 + 4 2. Všimněme si také, že průsečíky přímky y = x s jednotkovou kružnicí jsou body, kde mají jednotková kružnice a vrstevnice funkce f ­ soustředné kružnice se středem [2, 2] ­ 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 podmínkou (a zde i dostatečnou) 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. 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) i menších (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 hodnota 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 (vrstevnicemi 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 ]. Absolutní extrémy 87 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. 88 Lokální a absolutní extrémy 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í zobrazení 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ícerozměrném integrálu, viz [R2]. 7.1. Zobrazení z R2 do R2 Definice 7.1. Nechťjsou dány funkce f, g dvou proměnných a D = D( f ) D(g). Dále nechť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 procházejících počátkem a bodem [x1, y1], resp. [x2, y2] platí cos = |x1x2 + y1y2| x2 1 + y2 1 x2 2 + y2 2 89 90 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 zobrazení 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] neboť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 diferencovatelná v bodě [x0, y0]. Zobrazení dF(x0, y0) : R2 R2 dané předpisem [h, k] dF - [d f (x0, y0)(h, k), dg(x0y0)(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álními prostory lze reprezentovat vhodnou maticí, dostáváme se k následující definici. Zobrazení z R2 do R2 91 Definice 7.3. Nechť 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 zobrazeními mezi jednodimenzionálnímí prostory se jedná o vícerozměrná zobrazení. Věta 7.1. Nechť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. Nechť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 92 Zobrazení mezi prostory vyšších dimenzí funkci jedné proměnné v podstatě ekvivalentní diferenciálu této funkce, neboť funkce f : R R je v nějakém bodě diferencovatelná, právě když zde existuje konečná derivace f ). Podobně budeme postupovat v případě zobrazení mezi prostory vyšších dimenzí. 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 proveden 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 zobrazení 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 (neboť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é inverze, jejíž řídící 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 kladném smyslu přiřadí bodu [x, y] bod [-y, x], viz příklad 7.1. Tedy složené zobrazení Zobrazení z Rn do Rm 93 přiř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]. Napří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řadnicové 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 zobrazení 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)], 94 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. Nechťzobrazení G : Rn Rm je diferencovatelné v bodě x Rn a zobrazení F : Rm Rk je diferencovatelné v bodě y = G(x). Pak složené zobrazení H = FG : 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ů, neboť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 95 Ř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 komplexní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 promě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í: Nechťfunkce f, g jsou diferencovatelné v bodě [x0, y0]. Pak komplexní 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­ 1866), německý matematik, oba jsou považováni za spolutvůrce moderní matematiky. 96 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 vektorový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 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 97 Ř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, 6710-11 Nm2/kg2 je Newtonova gravitační konstanta a d je vzdálenost bodů. Tedy bod [x, y, z] s jednotkovou hmotností bude přitahován do počátku silou, jejíž směr je opačný než směr vektoru s počátkem 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 potř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í 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řazuje 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. 98 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, orientovaný 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, neboť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í, 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 99 b) f (x, y) = x3 - 3xy2, g(x, y) = y3 + 3x2y, [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 (buď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: Nechť 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é, neboťz rovnice kružnice můžeme snadno spočítat y jako funkci proměnné x. Je-li však rovnice křivky komplikovaně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 druhém pro funkci n proměnných a v třetím odstavci pro zobrazení mezi prostory vyšších dimenzí. 100 Implicitně zadaná funkce jedné proměnné 101 8.1. Implicitně zadaná funkce jedné proměnné Definice 8.1. Nechť F je funkce dvou proměnných. Označme M = {[x, y] D(F) : F(x, y) = 0} a nechť 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). y0 + 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ý 102 Funkce zadaná implicitně Dálevidíme, žev okolíbodů [1, 0] nenírovnicízadánažádná funkce promě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římek 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řivek 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. Nechťje funkce F spojitá na čtverci R = {[x, y] D(F):|x - x0| < a, |y-y0| < a} a nechťF(x0, y0) = 0. Dálepředpokládejme, žefunkce 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]. Nechť, > 0 jsou reálná čísla, jejichž přesnou hodnotu určíme pozdě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 stejnomě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ě zadanou 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. Implicitně zadaná funkce jedné proměnné 103 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). Nechť 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 . Nechť 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í zobrazení 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. 104 Funkce zadaná implicitně - O (1, 0) R x = (y) x y obr. 8.2 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. iii) Na zadávající rovnici F(x, y) = 0 se můžeme dívat také jako na rovnici definují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. Nechť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. Nechť f jefunkceimplicitně určená v okolíbodu [x0, y0] rovnicí F(x, y) = 0, tj. existuje > 0 takové, že pro x (x0 - , x0 + ) platí F(x, f (x)) = 0. Implicitně zadaná funkce jedné proměnné 105 Důkaz existence derivace implicitně zadané funkce f zde nebudeme provádět (lze jej s podrobnostmi nalézt např. v [N2]), zde se pouze zaměříme 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 implicitně 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. 106 Funkce zadaná implicitně 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í. 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 (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ě jednou 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 odvodí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]. Implicitně zadaná funkce jedné proměnné 107 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, y a y (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 (neboť 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 derivovat 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 v bodě 108 Funkce zadaná implicitně 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řirozených předpokladů na funkci F (např. diferencovatelnost) je M nějaká plocha 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 je x skalární proměnná. Věta 8.3. Nechť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á implicitně 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) Implicitně zadaná funkce více proměnných 109 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). Derivová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ého 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. 110 Funkce zadaná implicitně Ř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 (neboť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 normá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 Implicitně zadané zobrazení mezi prostory vyšších dimenzí 111 Ř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ě rovnicí F(x1, . . . , xn, y) = 0 vypočteme úplně stejně jako pro dvě proměnné. Například parciální derivaci 2 xi xj 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 di- menzí V tomto odstavci se zabýváme nejobecnějším případem. Nechť 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}. Podobně jako v předchozích dvou odstavcích označme M = {[x, y] Rn+m : F (x, y) = 0} a nechť [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. 112 Funkce zadaná implicitně Věta 8.5. Nechť F = {F1, . . . , Fm} je spojité zobrazení na množině R = {[x, y] Rn+m : [x, y] Oa(x) × Oa(y)}, nechť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 maticové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 definovaných jako množina řešení jistého systému rovnic. Podrobně, nechť 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é směrový vektor tečny ke kružnici v bodě [x, y, z] nazvat 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. Implicitně zadané zobrazení mezi prostory vyšších dimenzí 113 Definice 8.2. Nechť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.ProstorNM(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, neboťkřivka zde má ,,hrot". Příklad 8.5. i) Určete parametrickou rovnici tečny v bodě [x0, y0, z0], z0 > 0, k prostorové 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 pro kouli n1 = (2x0, 2y0, 2z0) 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črtnete 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 systému rovnic podle x (s tím, že u, v jsou funkce proměnných x, y) dostáváme (po jednoduché úpravě) x + uux + vvx = 0, (x + veuv )ux + (-y + ueuv )vx = -u, 1Vincenzo Viviani (1622­1703), italský matematik, žák G. Galileiho 114 Funkce zadaná implicitně odtud pomocí Cramerova 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árních rovnic pro neznáme 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ím vidíme, že systém (8.7) definuje implicitně v okolí bodu [x, y, u, v] opravdu zobrazení G : [x, y] - [u, v] (neboť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 předpoklady Věty 8.3 o existenci implicitní funkce z = f (x, y)? 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; Implicitně zadané zobrazení mezi prostory vyšších dimenzí 115 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 veďte tečné roviny rovnoběžné s rovinou : x + 4y + 6z = 0. c) K elipsoidu o rovnici x2 + 2y2 + z2 = 1 veď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. 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žitě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 speciá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 odstavci 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. Nechť 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 (maximum) 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. 116 Metoda Lagrangeových multiplikátorů 117 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ínu lokální extrém vázaný podmínkami (9.1) nebo prostě vázaný lokální extrém. Nejprve zformulujme nutnou podmínku pro existenci vázaného extrému. Věta 9.1. Nechť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 nechťv každém bodě množiny U má matice g1 x1 . . . g1 xn . . . . . . . . . . . . . . gm x1 . . . gm xn (9.2) hodnost m. Buď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 rovnosti (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 dvourozmě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ě nechť f , gk jsou vektory parciálních derivacífunkcí f, gk, k = 1, . . . , m, a nechť M je množina určená systémem (9.1). Pak v souladu s terminologií 118 Vázané extrémy 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. iii) Funkce L(x, ) = L(x1, . . . , xn, 1, . . . , , m) = f (x1, . . . , xn) - m k=1 kgk(x1 . . . , xn) se nazývá Lagrangeova funkce a konstanty k Lagrangeovy multiplikátory. Princip metody Lagrangeových multiplikátorů spočívá v tom, že do Lagrangeovy funkce jsou ,,zabudovány" vazebné podmínky a místo vyšetřováni 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 || dostateč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) Metoda Lagrangeových multiplikátorů 119 ÔM 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ředpokladyVě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 ĺ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. Nechť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. Nechť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 nechť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) 120 Vázané extrémy 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 shrňme tvrzení posledních dvou vět 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. Nechť a M je takto vypočtený stacionární bod f vzhledem k M a 1, . . . , m jsou příslušející multiplikátory. Metoda Lagrangeových multiplikátorů 121 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ý, neboť podle předpokladu má matice (9.2) hodnost m. Pro určitost předpokládejme, že jsme vypočetli h1, . . . , hm v závislosti na hm+1, . . . , hn. 4. Určíme druhý diferenciál Lagrangeovy funkce vzhledem k proměnným x ve stacionárním bodě a d2 L(a, ) = n i, j=1 2L xix 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ředchozí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 indefinitní, 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. 122 Vázané extrémy Z prvních tří rovnic plyne, že vždy dvě ze souřadnic x, y, z musí být nulové (neboť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 (užijeme obvyklého zápisu 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) Odvoď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 vektorové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ého zápisu) Lx = x - x - a = 0, a, x = b. Metoda Lagrangeových multiplikátorů 123 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álenosti 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. 124 Vázané extrémy 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á, neboť rovnici nemusíme řešit. Nepotřebujeme totiž znát kořeny rovnice 1,2, nýbrž pouze jejich 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 vyskytujících) případech hledat vázané extrémy, aniž by bylo nutné použít aparátu Lagrangeový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 multiplikátorů. Nejprve připomeňme pojem kvadratického, aritmetického, geometrického a harmonického průměru n-tice čísel. Nechť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. Nechť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-Š]. Kromě nerovností mezi průměry je účinným nástrojem i tzv. Cauchyova nerovnost. Vázané extrémy a nerovnosti 125 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-Š]. 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 . 126 Vázané extrémy 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 sezákladnoutvořenoutrojúhelníkemsvrcholy [0,0,0],[x0,0,0], [0, y0, 0] a výškou z0, jeho objem je 1 2 x0y0z0 a je trojnásobkem objemu našeho č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 vyť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 maximá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. Vázané extrémy a nerovnosti 127 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 podstavyr a výškou h vepište hranol s maximálním objemem. 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. 128 Vázané extrémy 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 druhé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 na 129 130 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 obrázku 10.3, na kterém je tatáž koule generovaná bez použití tohoto parametru: > 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íť, v jejichž uzlových bodech 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 [25,25]. Funkční hodnoty jsou poté podle interpolačních pravidel pospojovány a PC-graf zobrazen na výstupním zařízení. Graf funkce dvou proměnných 131 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 buď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 132 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 zobrazová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 zkoumané 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 133 -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 134 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 135 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; 136 Generování grafiky v Maplu 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 )) 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í, jejichž 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ů nespojitosti, 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í nastavení je Digits:=9), a dostáváme jinou síť 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]); 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. Graf funkce dvou proměnných 137 -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 -4 -2 0 2 4x -4 -2 0 2 4 y -4 -2 0 2 4 z obr. 10.15 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: -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]); 138 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 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 program 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 . 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); Graf funkce dvou proměnných 139 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 zobrazovaný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]); obr. 10.17 obr. 10.18 Proveď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): obr. 10.19 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 140 Generování grafiky v Maplu být v obou případech stejný). 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 intervalů 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). 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). Graf funkce dvou proměnných 141 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). obr. 10.22 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 rozsah 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]); -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 142 Generování grafiky v Maplu Pro zkoumanou funkci je lim(x,y)(0,0)1/(x2 + y2 ) = +, rozsah zobrazovaných hodnot a měřítka na osách v prvním případě Maple volil sám (+ aproximoval 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ětlová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): -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): Vrstevnice 143 > 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 parametricky 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 rovině 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]); -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 rovinami 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): 144 Generování grafiky v Maplu > 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]); -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 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]); > 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á- Vrstevnice 145 -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y obr. 10.31 -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 díme na závěr této kapitoly i stručný přehled základních použitých příkazů a jejich parametrů. Popis všech příkazů čtenář najde buď v manuálech [C-G1], [C-G2] a [C-G3] nebo přímo v systému nápovědy programu Maple V. 146 Generování grafiky v Maplu 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. 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 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): Vrstevnice 147 implicitplot3d(expr1, x=a..b, y=c..d, z=p..q, volby); 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í grafiky. 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ěnný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 probí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']); 148 Ilustrační grafika 149 -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 150 Výpočty limit 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. 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 . Ilustrační grafika 151 -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): 152 Výpočty limit v Maplu > 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 nemají 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 Výpočty 153 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. Nechť[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ázcí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 metod 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 volbou 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 154 Výpočty limit v Maplu 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). 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). Ktomu lzeefektivně, ales jistou opatrností, využít PC-grafů uvažovaný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 limity 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 Výpočty 155 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 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 rozhod- nout. 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 156 Výpočty limit v Maplu > 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 , 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čty 157 Výpočet: > f:=(x,y)->(x^3+y^3)/(x^2+y^2); f := ( x, y ) x3 + y3 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+ 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í limitní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). 158 Výpočty limit v Maplu -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 > 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']); 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. Proveďme transformaci do polární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. Výpočty 159 > 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 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]); 160 Výpočty limit v Maplu -6 -4 -2 0 2 4 6 x -6 -4 -2 0 2 4 6 y 0 0.5 1 z obr. 11.9 Příklad 11.14. Určete lim (x,y)(1,-1) x2 + y2 - 2x - 2y x2 + y2 - 2x + 2y + 2 . > 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 , neboť 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 Výpočty 161 > Ijmen:=1/denom(f(x,y)); Ijmen := 1 x2 + y2 - 2 x + 2 y + 2 > (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 > Diff(f(x[0],y[0]),y)= > Limit((f(x[0],y[0]+k)-f(x[0],y[0]))/k, k=0); 162 Parciální derivace 1. řádu 163 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ávnosti 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 > factor("); x ( x4 y2 - x y + 7 ) = y ( 4 y x3 - 1 ) 1výraz a funkce ve smyslu základních datových struktur Maplu 164 Derivace funkce v Maplu > 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 ) 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 využití příkazu drawplane z knihovny mvcalp), křivku, která je průsečnicí roviny 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 ] > p1:=plot3d(f(x,y),x=-2..2,y=-3..3,axes=framed): > with(mvcalp): > with(plots): Parciální derivace 1. řádu 165 > 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. Zkoumaná 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 > 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]); 166 Derivace funkce v Maplu 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. Samostatné 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á, neboť 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']); 12.2. 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ě: Derivace vyšších řádů 167 -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 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); 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 168 Derivace funkce v Maplu 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álních derivací fxy, fyx v bodě [x0, y0] rovnost fxy(x0, y0) = fyx(x0, y0) obecně neplatí. Příklad 12.4. Nechť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. 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 Směrové derivace 169 > 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 obtíž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']); 12.3. 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 Maplu 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) 170 Derivace funkce v Maplu -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 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 ) 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 Keznázorněnígeometrického významu směrových derivacípoužijeme podobné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 čá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. Směrové derivace 171 -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 > 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], 172 Derivace funkce v Maplu > 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 euklidovského prostoru.) 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. Parciální derivace složených funkcí 173 12.4. Parciální derivace složených funkcí Výpočty parciálních derivací složené funkce dvou proměnných jsou úkolem poměrně početně náročným, v učitelském studiu dnes probíráme pouze výpočet parciá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 ) Ú kolem pro studenty do počítačové laboratoře je využití těchto vzorců v procedurá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). Procedury 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 ) 174 Derivace funkce v Maplu > 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 ) > 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 ) Parciální derivace složených funkcí 175 > 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 yfx(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 dosaď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 > 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 176 Derivace funkce v Maplu > 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 > 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 parciá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)* Parciální derivace složených funkcí 177 > 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 > 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); 178 Derivace funkce v Maplu 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. 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 Parciální derivace složených funkcí 179 > 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 > 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 180 Derivace funkce v Maplu 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( ) > 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); Parciální derivace složených funkcí 181 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 182 Diferencovatelná funkce 183 -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 limitní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 diferencovatelnost neplyne. 184 Aproximace funkce v Maplu 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ě diferencovatelná (ze spojitosti v bodě [x0, y0] neplyne diferencovatelnost v tomto bodě). Diferencovatelná funkce 185 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 186 Aproximace funkce v Maplu > 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); Diferencovatelná funkce 187 lim x0- - |x| x = 1 > 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']); 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ášť. 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 definice 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 = - 188 Aproximace funkce v Maplu -3 -2 -1 0 1 2 3 x -3 -2 -1 0 1 2 3 y 0 1 2 3 z obr. 13.4 > 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 parciá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 Diferencovatelná funkce 189 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. Vyšetřeme limitu na levé straně rovnosti. Přechodem k polárním souřadnicím dostá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, neboť > 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). 190 Aproximace funkce v Maplu Opět musíme dávat pozor na nesprávnou interpretaci PC-grafu! Generujme PC-graf funkce f (x, y) = 5 1 + x2 + 6y2 . > 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 Diferencovatelná funkce 191 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 programovací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ídiferenciál. Pomocí této procedury určete diferenciál funkce f (x, y) = x3 + ln(xy) nejprve 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]; > RETURN(dif); 192 Aproximace funkce v Maplu > 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 diferencemi 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 Tečná rovina ke grafu funkce 193 13.2. Tečná rovina ke grafu funkce V této části využijeme grafické i výpočetní možnosti Maplu k ilustraci geometrického významu totálního diferenciálu. Vlastní generování PC-grafu je opět vhodný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 geometrický 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). Dosaď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']); 194 Aproximace funkce v Maplu -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 Tečná rovina ke grafu funkce 195 > 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ě diferen- covatelná). 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 196 Aproximace funkce v Maplu -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ásledující příklad: Příklad 13.10. Uvažujte funkci f (x, y) = -(x2 + y2 ) a určete rovnici tečné roviny 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)); Tečná rovina ke grafu funkce 197 dfdx := -2 > 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 vektorů 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']); 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 198 Aproximace funkce v Maplu -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 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). -2 -1 0 1 2 x -2 -1 0 1 2y -8 -6 -4 -2 0 z obr. 13.11 > tangenteqn:=dotprod([x-a,y-b,z-f(a,b)],N)=0; tangenteqn := 2 x - 2 + 2 y + z = 0 Užití diferenciálu k přibližným výpočtům 199 > 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 naprogramovaný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 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ů pomocí totálního diferenciálu. Rovnice tečné roviny je nejlepší lineární aproximací 200 Aproximace funkce v Maplu funkce f (x, y) v okolí bodu [x0, y0]. Uvažujme chybu této aproximace | f (x, y) - T Rovina(x, y)|. Nechť f (x, y) = 4- x2 - y2 (příklad 4.9) a nechť[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 hodnotami 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, neboť 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 ilustrují 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. 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 ) Užití diferenciálu k přibližným výpočtům 201 > 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 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("); 202 Aproximace funkce v Maplu 1.649437912 13.4. Taylorova věta K hledání Taylorova polynomu funkce dvou proměnných používáme v Maplu proceduru 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 polynom 2. stupně (obr. 13.15), vrstevnice funkce f (obr. 13.16) a vrstevnice T2(x, y) (obr. 13.17). obr. 13.14 obr. 13.15 Taylorova věta 203 > 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']); > 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). 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']); 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 204 Aproximace funkce v Maplu -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 -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 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 polynomu a dále k přibližným výpočtům funkčních hodnot funkcí dvou proměnný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ální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; Taylorova věta 205 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 > 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 . 206 Aproximace funkce v Maplu 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 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 Kmenová funkce 207 > 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 proveď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 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 ) 208 Aproximace funkce v Maplu > 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 ) 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. Kmenová funkce 209 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 > 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 grafický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í pomocí Maplu dostáváme neúplné nebo nepřesné výsledky. Často se opakující postupy poté automatizujeme pomocí Mapleovského programovacího jazyka v procedurá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 problematiku 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], 210 Lokální extrémy 211 > 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ř kvadrantů, a to na lokální maxima v prvním a třetím kvadrantu a na lokální minima v 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á lokální maximum, v bodech [-1, 1], [1, -1] lokální minimum a bod [0, 0] je sedlový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); 212 Extrémy funkce v Maplu > 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), neboť: > subs(x=1,y=1,[Delta,fxx]); 4 ( e( -1 ) )2 , -2 e( -1 ) Lokální extrémy 213 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ěnný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 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}); 214 Extrémy funkce v Maplu 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řeveď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 komplexní čí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 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; Lokální extrémy 215 := -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í vybraného bodu v PC-grafu. Zvýraznění bodu o souřadnicích [x, y, f (x, y)] dosáhneme 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]), 216 Extrémy funkce v Maplu > 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 ] { x = 0, y = -1 }, [ 36, 6 ] y = 1 2 , x = 1 2 3 , [ -45, 6 ] Lokální extrémy 217 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 := 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); 218 Extrémy funkce v Maplu - 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); -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 > r1:=diff(z(x,y),x)=0; r1 := y ln( x2 + y2 ) + 2 x2 y x2 + y2 = 0 Lokální extrémy 219 > 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 } 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 dokonce, ž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 } > 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 }} 220 Extrémy funkce v Maplu > 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)). 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 ) Lokální extrémy 221 > 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 } > 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 ) ] 222 Extrémy funkce v Maplu 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 bodech 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); -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 y0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 z obr. 14.12 Lokální extrémy 223 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ěnný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 parametry těchto procedur jsou funkce, jejíž stacionární body, resp. lokální extrémy, určujeme. > 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` ); 224 Extrémy funkce v Maplu > 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ž 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); 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; Lokální extrémy 225 -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 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 > subs(cp[1], Delta(x,y)); 0 Protože = 0, nemůžeme tímto způsobem o existenci extrému rozhodnout. Generujme 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); Podle PC-grafů předpokládáme, že v bodě [0, 0] extrém nenastává. Tuto hypoté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á. 226 Extrémy funkce v Maplu -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 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); -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)); Lokální extrémy 227 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 promě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 ) -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 > 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 ) > plot3d(z2, x=-4..4, y=-4..4, axes=boxed, color=black, > grid=[40,40], orientation=[-35,70], labels=[x,y,z], > style=hidden); 228 Extrémy funkce v Maplu Takto generované PC-grafy jsou názornějšínež u prozatím častěji k demonstracím vlastností funkcí dvou proměnných používaných kvadratických a kubický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']); -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 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. Absolutní extrémy 229 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], > t=0..2*Pi, color=black, thickness=3, > orientation=[31,56]): > display3d({p1,p3,p4}, labels=[x,y,z]); 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 ,,malé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 . 230 Extrémy funkce v Maplu -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 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ělmenadvě části, nahornía dolnípůlkružnici: > with(student): > r:=isolate(M,y); r := y = RootOf( Z2 - 1 + x2 ) > 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). Hledejme nyní absolutní extrémy takto konstruované funkce jedné proměnné pro Absolutní extrémy 231 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á, neboť 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 } > 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 maximum a minimum nastává. Využívá k tzv. hledání vázaných extrémů známé metody Lagrangeových multiplikátorů (Věta 9.1). Příkaz extrema ale většinou použí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ů. 232 Extrémy funkce v Maplu Příklad 14.9. Najděte absolutní extrémy funkce z = x2 + 2xy - 4x + 8y v obdélní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řemenyní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 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 Absolutní extrémy 233 > 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 > 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ů. > 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á". 234 Extrémy funkce v Maplu 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 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)); Absolutní extrémy 235 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é vidě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)). -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 x -3 -2 -1 0 1 2 3 y obr. 14.29 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 > 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, 236 Extrémy funkce v Maplu > 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 -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 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]. 14.3. Vázané extrémy V následujícím příkladě hledáme extrémy na hranici množiny M metodou Langrangeový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}. Vázané extrémy 237 -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 > 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); 238 Extrémy funkce v Maplu 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 > 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; Vázané extrémy 239 [ -.5257311121, -.8506508084 ] .3819660112 [ .5257311121, .8506508084 ] .3819660112 [ .8506508084, -.5257311121 ] 2.618033989 [ -.8506508084, .5257311121 ] 2.618033989 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']); 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]. 240 Extrémy funkce v Maplu -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 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ů funkcedané implicitně, v druhé pak použijeme Maplu při výpočtech derivací 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]); 241 242 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říkazem 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"string-grafu funkce zadané implicitně 243 > 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 244 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 245 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čové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}); 246 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 proceduru 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 nezbytné 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 247 > 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é implicitně 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 tecny v~bode`,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],`nelezi na krivce `,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 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. 248 Funkce zadaná implicitně v Maplu -4 -3 -2 -1 0 1 2 3 y -10 -5 0 5 10 x obr. 15.11 > 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 > solve(", diff(y,x$2)); 6 x + 6 y x y 2 - 4 x y 3 y2 - 2 x Výpočty 249 > 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 > dzdy:=solve(", diff(z,y)); dzdy := 3 y2 - 3 x z - 1 3 z2 - 3 x y - 1 250 Funkce zadaná implicitně v Maplu 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 > dzdy:=solve(", diff(z,y)); dzdy := 2 y - 2 z 2 z - x - 2 y Výpočty 251 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 > zyyP:=subs(diff(z,y)=0, dzdyy); zyyP := -2 1 2 z - x - 2 y > diff(F,x,y); 252 Funkce zadaná implicitně v Maplu 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í extrémy, a to maximum v bodě [1, 2, 2] (neboť zxx = -2) a minimum v bodě [-1, - 2, -2] (zxx = 2). Přílohy P 1. Software pro podporu výuky matematické analýzy Tato kapitola uvádí stručný přehled programového vybavení (software) použitelné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. Systémy počítačové algebry V této části si stručně představíme systém Maple a uvedeme odkazy na další systé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ě rozsáhlých algebraických manipulací obsahuje i implementace numerických metod, knihovny speciálních funkcí a v neposlední řadě také velmi propracovanou grafiku. 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 vytvář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ší 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, Ma1Text, který lze zpracovávat i jiným než pouze sekvenčním způsobem. Obsahuje odkazy, obrázky atd. 2Hypertext MarkUp Language, jazyk, který popisuje hypertextovou stránku. Využívá se pro WWW. 253 254 Přílohy cintosh, 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ýmzpůsobemlzedefinovat výrazy jako funkčnízávislosti, seznamy, množiny atd. * Různými způsoby lze interaktivně zobrazovat bodová data, křivky, plochy (zadané 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é systé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ětlení, 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 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 nejlepším místům na Internetu věnovaným problematice Maplu patří i Maple bilingual na: http:// sunsite.informatik.rwth-aachen.de/maple/maplev.html. Další zdroje informací o Maplu je možno nalézt např. na: http://www2.ncsu.edu/math/Projects/MapleArchive/Page1. html, Software pro podporu výuky matematické analýzy 255 http://web.mit.edu/afs/athena.mit.edu/software/maple/ www/home.html, http://www.indiana.edu/~statmath/math/maple, http://SymbolicNet.mcs.kent.edu/. Problematice Maplu je věnována moderovaná diskusní skupina MUG, (Maple User Group). Skupina má více než 1000 účastníků z celého světa. Administrativní adresa skupiny je mailto:majordomo@daisy. uwaterloo.ca. Pro přihlášení zašleme e-mail na výše uvedenou adresu s textem subscribe maple-list. Vlastní příspěvky pak posíláme na adresu mailto:maple-list@daisy.uwaterloo.ca. Prohledávatelný archiv této diskusní skupiny se nachází na http://www-math.math.rwthaachen.de/MapleAnswers/index.html. Další užitečné informace poskytuje i skupina Netnews news:sci.math.symbolic. Domovská stránka českého Klubu uživatelů Maplu se nachází na: 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 doplňujících materiálů Mathsource je na http://mathsource.wri.com/ mathsource/. Derive (3.0) firmy Soft Warehause je jednoduchým programem pro symbolické výpočty, ovládaný pomocísystému menu. Jeho jednoduchost a nízké hardwarové 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, grafická karta CGA a vyšší). Domovská stránka jehttp://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ří např. Axiom (http://www. nag.co.uk:70/1h/symbolic/AX.html}, Mupad (http://mathwww.uni-paderborn.de/MuPAD/) a Reduce (http://www.rrz.unikoeln.de/REDUCE/). Mupad je možno dokonce po vyplnění licenčního ujednání získat zdarma (informace na domovské stránce). Kompletní přehled CAS systémů je možno najít na http://www.can.nl/Systems_ and_Packages/Per_Purpose/General/index.html nebo na http: //math-www.uni-paderborn.de/CAIN/SYSPACK/index.html. 256 Přílohy Public-domain programy Místo obecného CAS systému je možno použít i menších, specializovaných programů, 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. Gopheru ­ gopher://archives.math.utk.edu 3. anonymního FTP ­ ftp://archives.math.utk.edu 4. 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 mohou být využity ve výuce matematiky. Kromě toho obsahuje bohatou kolekci odkazů na místa se vztahem k matematice (elektronické časopisy, preprintový servis, informace o grantech, tvůrci matematického software, matematická nakladatelství atd.) Obsah je neustále obnovován a doplňován (položka Whať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.*. Materiá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: 1. Podle platformy a poté podle subjektu. V současnosti jsou zde dvě kategorie ­ software pro Macintosh a pro MSDOS (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 Calculus, Advanced Differential Equations, Calculus, Graphing Programs a Differential Equations. Materiály na Internetu 257 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 softwaru (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/. P 2. 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 materiálů pro počítačem podporovanou výuku matematické analýzy, v části Další zdroje 258 Přílohy 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 odkazy 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 neodpoví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 archivů 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 metatext (určený pro různé platformy, různé technologie a vytvářený mnoha autory, 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časnosti 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čují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 studenty nebo pro vyučující. Odkazy na další zajímavá místa jsou shrnuty pod položkou Top 20 Calculus Sites on the World- -Wide-Web. Calculus & Mathematica Jeden z kurzů matematické analýzy využívajících programu Mathematica najdeme na http://www-cm.math.uiuc.edu/. Tento kurz je založen předevší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 P.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 absolvovat i v rámci distančního studia pouze prostřednictvím Internetu na http://www-cm.math.uiuc.edu/ dep/. Materiály na Internetu 259 obr. P.1 Sylabus kurzu Calculus & Mathematica Visual Calculus V již dříve zmíněném archivu Mathematics Archives se nachází část nazvaná 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ímavostí 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 260 Přílohy nebo podle geografické polohy zdroje a je průběžně aktualizován. 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://www2.ncsu.edu/eos/info/math/maple_info/ www/index.html * ,,JPCalculus" interaktivní učebnice, využívá možností WWW a zejména jazyka JAVA k výuce diferenciálního a integrálního počtu funkce jedné proměnné. Autory jsou B. Flagg a G. Ramani. http://www.usm.maine. edu/~flagg/jpc/ * Interaktivní učebnice diferenciálního počtu více proměnných, k výpočtům a generování matematické grafiky je tentokrát využíván program Mathematica. Doplňkem kurzu je interaktivní kvíz, na kterém si studenti mohou otestovat své znalosti před zkouškou. Autorem kurzu i kvízu je Dr. Rukmini Sriranganathan. http://www.math.vt.edu/people/ srirang/m2224s97/lec2224/2224lec.html * ,,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/ Materiály na Internetu 261 * ,,Matthias Kawski's Maple resources and activities", další velká kolekce odkazů, materiálů a článků o užívání Maplu ve výuce matematické analýzy. http://math.la.asu.edu/~kawski/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 262 Výsledky cvičení kapitol 1­9 263 e) ux = 1 - y2 - xy 1-x2 + xz 1-x2-y2 , uy = - xy 1-y2 + 1 - x2 + yz 1-x2-y2 , 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 264 Výsledky cvičení kapitol 1­9 e) 1 f) 1, 13 g) dV . = 50 3 cm3 h) dh . = 1 cm. 4.3 a) není diferencovatelná, např. pro u = (1, 1) neexistuje směrová derivace fu(0, 0) b) není diferencovatelná, neboť 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 +2xj+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 bodech [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] Výsledky cvičení kapitol 1­9 265 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] 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.3a) 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 266 Výsledky cvičení kapitol 1­9 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]. 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) Nechť 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 . x y 1-1 1/2 -1/2 x2 + 4y2 1 obr. P.2: x y 3-3 2 -2 x2 9 + y2 4 1 obr. P.3: x yy = -x obr. P.4: Výsledky cvičení kapitol 1­9 267 x y 21 1 2 x2 + y2 = 4 x2 + y2 = 1 obr. P.5: x y y = x y = -x obr. P.6: x y y = 1 y = -1 x = -1 x = 1 obr. P.7: x y 1/2 2 x2 + y2 = x x2 + y2 = 2x obr. P.8: x yy = -2x y = -x obr. P.9: Áx y y = 1 - x2 y = -1 - x2 1-1 1 obr. P.10: 268 Výsledky cvičení kapitol 1­9 x y 1-1 1 -1 y2 = 4x x2 + y2 = 1 obr. P.11: Âx y 1 -1 y = x + 1 y = x obr. P.12: Äx y 2-2 1 -1 x2 + y2 = 1 x2 4 + (y - 1)2 = 1 obr. P.13: Výsledky cvičení kapitol 1­9 269 y x c = 3 c = 0 c < 0 zc = obr. P.14: y x c = -2 c = -1 c = 1 c = 2 c = 0 1-1 1 -1 obr. P.15: y x c = e2 c = e c = 1 c = 1 e c = 1 e2 obr. P.16: y x c = 2 c = 1 c = 1 c = 2 zc = pro c < 0 obr. P.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 analizu, Nauka, Moskva, 1964. [D-D] Došlá Z. ­ Došlý O.: Metrické prostory, teorie a příklady, skriptum Masarykovy univerzity, Brno, 1991. [D] Došlá Z. ­ Došlý O.: Diferenciální počet funkcí více proměnných, skriptum Masarykovy univerzity, Brno, 1999. [DKV] Došlá Z., Kuben J., Vosmanský J.: Equadiff 9 CDROM, Masarykova univerzita, Brno, 1998. [F] Fuchsová L.: Diferenciální počet funkcí jedné proměnné, skriptum Masarykovy 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-Š] 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. 270 Použitá literatura 271 [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, diplomová práce MU, Brno, 1994. [Ka1] Kawski M.: An introduction to practical Maple 3D-graphics, http:/ /math.la.asu.edu/~kawski/maple.html, 1995. [Ka2] Kawski M.: ASU Calculus Home Page, http://calculus.la. asu.edu/, 1998. [Kl1] Klotz E., Magness E.: Limits, http://forum.swarthmore.edu/ ~ethan/klotz/Limits/Limits.html, 1995. [Kl2] Klotz E., Magness E.: Tangent planes, http://forum. swarthmore.edu/~ethan/klotz/TangentPl.html, 1995. [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 Univerzity J. E. Purkyně, Brno, 1983. 272 Použitá literatura [P1] Plch R.: O jednom využití počítače ve výuce matematické analýzy, Pokroky matematiky, fyziky a astronomie, ročník 42, č. 1, 1997. [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 Maple 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, skriptum 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.: CDROM k 5. výročí založení Fakulty informatiky MU, Masarykova univerzita, Brno, 1999. [T-S] Tichonov A. N. ­ Samarskij A. A.: Rovnice matematické fyziky, Nakladatelství Č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í, 18 stacionární, 73, 119 Bolzano Bernard, 26 Cauchy Augustin Louis, 95 Cauchyova nerovnost, 124 Coolidge Calvin, 115 definiční obor funkce, 7 derivace implicitní funkce, 102 parciální, 31 2. řádu, 34 geometrický význam, 33 smíšené, 34 složených funkcí, 56 směrová, 37 derivace zobrazení, 94 determinant matice, 80 diferenciál, 44 2. řádu, 49 Fréchetův, 48 G^ateauxův, 48 m-tého řádu, 49 totální, 43, 45 divergence vektorového pole, 96 Einstein Albert, 15, 29, 42, 55, 88, 99 extrém absolutní (globální), 81 lokální, 72 lokální vázaný podmínkami, 117 vázaný, 116 vázaný lokální, 117 Fermat Pierre, 73 funkce, 7 diferencovatelná, 44 implicitně zadaná, 100 kmenová, 50 Lagrangeova, 118 souřadnicové, 89 spojitá na množině, 26 v bodě, 24 Galileo, 113 gradient funkce, 48, 96 graf funkce, 10 Hamilton William Rowan, 97 Heine Heinrich, 24 Hessova matice, 39 hodnost matice, 113 Huxley Aldous Leonard, 71 Huyghens Christian, 88 implicitně 273 274 Rejstřík zadaná funkce, 101, 108 zadané zobrazení, 111 Jacobi Carl, 91 Jacobiho matice, 91, 92, 93, 94, 112 inverzního zobrazení, 94 složeného zobrazení, 94 jacobián, 91 zobrazení, 94 koeficient stejnolehlosti, 89 kruhová inverze, 89 kvadratická forma definitní, 79 indefinitní, 79 semidefinitní, 79 Lagrange Joseph Louis, 40 Lagrangeova funkce, 120 Lagrangeův multiplikátor, 118 Laplace Pierre Simon, 62 limita funkce nevlastní, 18, 19 vlastní, 18 matice definitní, 79 Hessova, 39 indefinitní, 79 Jacobiho, 91, 92, 94 jednotková, 92 lineárního zobrazení, 94 regulární, 92 metrika Euklidovská, 16 maximová, 17 v Rn , 16 minor matice, 80 multiplikátor Lagrangeův, 118 normálový prostor, 113 obrázek, 4, 10, 74, 86, 101, 104, 119, 130, 131, 133, 134, 135, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 149, 150, 151, 152, 157, 158, 160, 161, 165, 167, 170, 171, 183, 185, 186, 188, 191, 194, 196, 198, 199, 202, 203, 204, 211, 212, 215, 217, 218, 222, 223, 225, 226, 227, 228, 230, 234, 235, 236, 237, 240, 241, 242, 243, 244, 246, 248, 259 okolí bodu, 17 operátor Hamiltonův, 97 nabla, 97 Pascal Blaise, 128 pole vektorové, 96 průměr aritmetický, 124 geometrický, 124 harmonický, 124 Riemann Bernhard, 95 rotace vektorového pole, 96 rovnice diferenciální exaktní, 51 parciální, 56 Laplaceova, 62, 64 vlnová, 60 Schwarz Karl, 35 sedlo, 74 složky zobrazení, 89 součin Rejstřík 275 skalární, 39 vektorový, 98 souřadnice polární, 21, 62 sférické, 24, 64 souřadnicové funkce, 89 stacionární bod, 119 Taylor Brook, 66 Taylorův vzorec, 67 tečná nadrovina, 43 tečná rovina, 45 tečný prostor, 113 vektorový součin, 98 Viviani Vincenzo, 113 Vivianiho křivka, 113 vrstevnice funkce, 11 věta Bolzanova, 27 Lagrangeova, 36, 40, 41 první Bolzanova, 28 Schwarzova, 35 Taylorova, 66 Weierstrassova, 26 Weierstrass Karl, 26, 35 zobrazení, 89, 93 diferencovatelné, 90