MATLAB Laboration problem med lokala extremvärden

Relevanta dokument
Matlab-uppgift 3 i Flervariabelanalys

Envariabelanalys 5B1147 MATLAB-laboration Derivator

6 Derivata och grafer

Sätt t = (x 1) 2 + y 2 + 2(x 1). Då är f(x, y) = log(t + 1) = t 1 2 t t3 + O(t 4 ) 1 2 (x 1) 2 + y 2 + 2(x 1) ) 2 (x 1) 2 + y 2 + 2(x 1) ) 3

Funktionsstudier med derivata

Sidor i boken f(x) = a x 2 +b x+c

MAA7 Derivatan. 2. Funktionens egenskaper. 2.1 Repetition av grundbegerepp

5 Lokala och globala extremvärden

Lokala undersökningar

= ( 1) xy 1. x 2y. y e

Kap Implicit givna funktioner

Extra datorövning med Maple, vt2 2014

Tentamen i tmv036c och tmv035c, Analys och linjär algebra C för K, Kf och Bt A =, = det(a λi) = e 2t + c 2. x(t) = c 1. = c 1.

Datorövning 2 med Maple

1. Bestäm definitionsmängden och värdemängden till funktionen f(x,y) = 1 2x 2 3y 2. Skissera definitionsmängden, nivålinjerna och grafen till f.

Fler uppgifter på andragradsfunktioner

Konsultarbete, Hitta maximal volym fo r en la da

SF1625 Envariabelanalys Lösningsförslag till tentamen

Lösningar och kommentarer till Övningstenta 1

Optimeringsproblem. 1 Inledning. 2 Optimering utan bivillkor. CTH/GU STUDIO 6 TMV036c /2015 Matematiska vetenskaper

Sekantmetoden Beräkningsmatematik TANA21 Linköpings universitet Caroline Cornelius, Anja Hellander Ht 2018

n : R vara en reell funktion av n variabler och P 0 en punkt i funktionens definitionsområde D.

Flervariabelanalys E2, Vecka 3 Ht08

SF1626 Flervariabelanalys Tentamen Tisdagen den 12 januari 2016

För studenter i Flervariabelanalys Flervariabelanalys MA012B ATM-Matematik Mikael Forsberg

Attila Szabo Niclas Larson Gunilla Viklund Mikael Marklund Daniel Dufåker. GeoGebraexempel

Mälardalens högskola Akademin för utbildning, kultur och kommunikation

5 Om f (r) = 0 kan andraderivatan inte avgöra vilken typ av extrempunkt det handlar om. Återstår att avgöra punktens typ med teckenstudium.

UPPGIFTER KAPITEL 2 ÄNDRINGSKVOT OCH DERIVATA KAPITEL 3 DERIVERINGSREGLER

Institutionen för Matematik, KTH Torbjörn Kolsrud

7 Extremvärden med bivillkor, obegränsade områden

Matematiska Institutionen, K T H. B. Krakus. Matematik 1. Maplelaboration 2.

Matematik 3 Digitala övningar med TI-82 Stats, TI-84 Plus och TI-Nspire CAS

vux GeoGebraexempel 3b/3c Attila Szabo Niclas Larson Gunilla Viklund Mikael Marklund Daniel Dufåker

En vanlig uppgift är att bestämma max resp min för en trigonometrisk funktion och de x- värden för vilka dessa antas.

vux GeoGebraexempel 2b/2c Attila Szabo Niclas Larson Gunilla Viklund Mikael Marklund Daniel Dufåker

x sin(x 2 )dx I 1 = x arctan xdx I 2 = x (x + 1)(x 2 2x + 1) dx

Repetition kapitel 1, 2, 5 inför prov 2 Ma2 NA17 vt18

Matlab övningsuppgifter

Lösningar och kommentarer till uppgifter i 3.1

x 2 + x 2 b.) lim x 15 8x + x 2 c.) lim x 2 5x + 6 x 3 + y 3 xy = 7

SF1625 Envariabelanalys

SF1669 Matematisk och numerisk analys II Lösningsförslag till tentamen DEL A

Lösningsförslag till inlämningsuppgift 3 i Beräkningsprogrammering Problem 1) function condtest format compact format long

(x + 1) dxdy där D är det ändliga område som begränsas av kurvorna

1. Beräkna och klassificera alla kritiska punkter till funktionen f(x, y) = 6xy 2 2x 3 3y 4 2. Antag att temperaturen T i en punkt (x, y, z) ges av

Antag att du går rakt norrut i ett bergslandskap. Ibland går du uppför, ibland nerför men hela tiden rakt mot norr. Vi kallar detta bäring 0.

7x 2 5x + 6 c.) lim x 15 8x + 3x Bestäm eventuella extrempunkter, inflexionspunkter samt horizontella och vertikala asymptoter

Gamla tentemensuppgifter

Attila Szabo Niclas Larson Gunilla Viklund Mikael Marklund Daniel Dufåker. GeoGebraexempel

Ekvationer & Funktioner Ekvationer

Användarmanual till Maple

= 0. Båda skärningsvinklarna är således π/2 (ortogonala riktningsvektorer).

Attila Szabo Niclas Larson Gunilla Viklund Mikael Marklund Daniel Dufåker. GeoGebraexempel

Hantera andragradskurvor del 2

Uppsala Universitet Matematiska Institutionen Bo Styf. Lösningar till kryssproblemen 1-5. Uppgifter till lektion 1: = 10 x. = x 10.

Uppgift 1. (SUBPLOT) (Läs gärna help, subplot innan du börjar med uppgiften.) 1 A) Testa och förklara hur nedanstående kommandon fungerar.

Matematiska Institutionen, K T H. B. Krakus. Differential- och integralkalkyl, del 2. Maplelaboration 1.

2 Funktioner från R n till R m, linjära, inversa och implicita funktioner

2. Avgör om x och z är implicit definierade som funktion av y via följande ekvationssystem. x 3 + xy + y 2 + z 2 = 0 x + x 3 y + xy 3 + xz 3 = 0

Optimala vinkeln av bortklippt cirkelsektor fo r maximal volym pa glasstrut

Tentan , lösningar

de uppgifter i) Under m-filerna iv) Efter samlade i en mapp. Uppgift clear clc Sida 1 av 6

f(x + h) f(x) h f(x) f(x h) h

Endast kommenterade svar!!! OBS: Inte alla delsteg är redovisade!

Minimanual CASIO fx-9750gii

f(x) = x 2 g(x) = x3 100 h(x) = x 4 x x 2 x 3 100

SF1669 Matematisk och numerisk analys II Bedömningskriterier till tentamen Torsdagen den 4 juni 2015

SF1626 Flervariabelanalys Tentamen Torsdagen den 18 augusti 2016

Sekantens riktningskoefficient (lutning) kan vi enkelt bestämma genom. k = Men hur ska vi kunna bestämma tangentens riktningskoefficient (lutning)?

4. Bestäm eventuella extrempunkter, inflexionspunkter samt horisontella och vertikala asymptoter till y = 1 x 1 + x, och rita funktionens graf.

SF1626 Flervariabelanalys Lösningsförslag till tentamen DEL A

20 Gamla tentamensuppgifter

Bedömningsanvisningar

SF1626 Flervariabelanalys Lösningsförslag till tentamen DEL A

SF1625 Envariabelanalys

SF1664 Tillämpad envariabelanalys med numeriska metoder Lösningsförslag till tentamen DEL A

NpMa2b vt Kravgränser

SF1626 Flervariabelanalys Lösningsförslag till tentamen DEL A

f(x) = x 2 g(x) = x3 100

Figur 1: Postföretagets rektangulära låda, definitioner.

Frågorna 1 till 6 ska svaras med sant eller falskt och ger vardera 1

Newtons metod. 1 Inledning. CTH/GU LABORATION 3 MVE /2014 Matematiska vetenskaper

Kontrollskrivning 1A

Optimering, exempel. Funktionens enda stationära punkt är alltså origo. Den ligger också i det inre av mängden.

Datorövning 2 med Maple, vt

LABORATION 2. Trapetsregeln, MATLAB-funktioner, ekvationer, numerisk derivering

2x ex dx. 0 = ln3 e

Attila Szabo Niclas Larson Gunilla Viklund Mikael Marklund Daniel Dufåker. GeoGebraexempel

SF1626 Flervariabelanalys Tentamen Tisdagen den 7 juni 2016

SF1626 Flervariabelanalys Tentamen Måndagen den 16 mars 2015

SF1626 Flervariabelanalys Lösningsförslag till tentamen DEL A. 1. En svängningsrörelse beskrivs av

Mathematica. Utdata är Mathematicas svar på dina kommandon. Här ser vi svaret på kommandot från. , x

Linjära system av differentialekvationer

3. Beräkna riktningsderivatan för funktionen f(x, y, z) = xy sin z, i riktningen v = (1, 2, 1), uträknad i

% Föreläsning 4 22/2. clear hold off. % Vi repeterar en liten del av förra föreläsningen:

5 Blandade problem. b(t) = t. b t ln b(t) = e

SF1626 Flervariabelanalys Bedömningskriterier till tentamen Måndagen den 16 mars 2015

SF1626 Flervariabelanalys Lösningsförslag till tentamen DEL A

x ( f u 2y + f v 2x) xy = 24 och C = f

Transkript:

MATLAB Laboration problem med lokala extremvärden Sonja Hiltunen, sohnya@gmail.com Sanna Eskelinen, eskelinen.sanna@gmail.com Handledare: Karim Daho Flervariabelanalys 5B1148

Innehållsförteckning Problem 1... 3 Problem...3 Lösning...3 Problem... 5 Problem...5 Problem 3... 6 Problem...6 Lösning...6 Problem 4... 9 Problem...9 Lösning...9 Problem 5...10 Problem...10 Lösning...10 Problem 6...1 Problem...1 Lösning...1

Problem 1 Problem: Finn och klassificiera alla kritiska punkter till f(x,y) = 4 y 4xy x e (1) Lösning: Först deriveras funktionen med avseende på x och y. Kritiska punkter finns där båda derivatorna är lika med 0. I MATLAB skrivs koden fx=diff(f,x) fy=diff(f,y) Vilket ger f x = ( 4y 4 x ) e 4 3 -y -4xy-x f y = ( 4y 4 x) e 4 -y -4xy-x MATLABs solve funktion användes för att finna nollställena. [xcr,ycr]=solve(fx,fy); [xcr,ycr] Funktionen har tre nollställen, (0,0), (1,-1), (-1,1). För att bestämma deras karaktär används Hessiandeterminaten. För att kunna finna Hessiandeterminanten behövs även andraderivatorna. f=diff(fx,x); fxy=diff(fx,y); fyy=diff(fy,y); hessdetf=f*fyy-fxy^ Om determinanten är negativ, är nollstället en sadelpunkt. Om determinanten har ett positivt värde, är den en extrempunkt. Om nollstället är en extrempunkt, kan man bestämma om det är en minimi eller maximipunkt genom att kolla på derivatan f. Om det är en minimipunkt är derivatan positiv, om det är en maximipunkt är derivatan negativ. MATLAB används för att ta fram Hessiandeterminant och kod: f med hjälp av följande xcr = xcr(1:3); ycr = ycr(1:3); for k = 1:3 [xcr(k), ycr(k), subs(hessdetf, [x,y], [xcr(k), ycr(k)]), subs(f, [x,y], [xcr(k), ycr(k)])] end

Resultaten kan sammanfattas med tabellen nedan x-koordinat y-koordinat Hessiandeterminanten f Typ av kritisk punkt 0 0-16 0 Sadelpunkt -1 1 3e -1e Maximipunkt 1-1 3e -1e Maximipunkt (1,-1), (-1,1) är extrempunkter, eftersom Hessiandeterminanten av båda är positiv. De är maximipunkter eftersom f av båda är negativa. Detta resultat verifieras med hjälp av figur 1.1. (0,0) är en sadelpunkt, eftersom Hessiandeterminanten är negativ. Figur 1.1: Graf av funktionen uppifrån Från figur 1.1 kan man se att det finns två maximipunkter, och en sadelpunkt. En klarare framställning av de kritiska punkterna ges av figur 1. nedan.

Figur 1.: 3D framställning av funktion 1 Problem Problem: Hitta alla kritiska punkter till h samt klassificera dem. Lösning: Funktionen matas in genom följande kommandon. Kommandot syms används för att MATLAB ska tolka x och y som symboler och inte som variabler. syms x y z h=3*x^+4*y^+z^-9*x*y*z Därefter beräknas de första och andra partiella derivatorna. Först används kommandot jacobian för beräkna de första partiella derivatorna, därefter används samma kommando igen för att beräkna andra ordningens partiella derivator. gradh=jacobian(h,[x,y,z]) hessmath=jacobian(gradh,[x,y,z]) Detta ger en Hessianmatris med följande utseende [ 6, -9*z, -9*y] [ -9*z, 8, -9*x] [ -9*y, -9*x, ] Första ordningens derivator sätts lika med noll för att få fram kritiska punkter till funktionen. Detta görs genom följande kommandon. [xcr,ycr,zcr]=solve(gradh(1),gradh(), gradh(3)); [xcr,ycr,zcr] Detta ger följande punkter (0,0,0), (4/9, 3 9, 4 3 3 ), (-4/9, 9 9, - 4 3 3 ), (-4/9, - 9 9, 4 3 9 ) och (4/9, - 3 9, - 4 3 9 ) De kritiska punkterna undersöks genom att sätta in värdena i Hessianmatrisen. Fem punkter ger fem matriser. Därefter kan egenvärdena räknas ut, genom att använda kommandot eig i MATLAB.

Punkt Egenvärden Typ av punkt (0,0,0) 6 8 Minimipunkt (4/9, 3 9, 4 3 9 ) 14.0565-4.3445 6.880 (-4/9, 3 9, - 4 3 9 ) 14.0565-4.3445 6.880 (-4/9, - 3 9, 4 3 9 ) 14.0565-4.3445 6.880 (4/9, - 3 9, - 4 3 9 ) 14.0565-4.3445 6.880 Sadelpunkt Sadelpunkt Sadelpunkt Sadelpunkt Fyra av matriserna har samma egenvärden. Dessa egenvärden har alla två positiva tecken och en negativ vilket ger sadelpunkt. Den kritiska punkten i origo är en minimipunkt, eftersom alla egenvärdena har positiva tecken. Problem 3 Problem: Hitta alla kritiska punkter till funktionen f och klassificera dem. f (x,y)= 4 4 x + y + xy x y Lösning: Funktionen matas in genom följande kommandon. Kommandot syms används för att MATLAB ska tolka x och y som symboler och inte som variabler. syms x y f=x^4+ y^4+x*y-x^-y^; Därefter bestäms båda partiella derivatorna av första grad genom kommandot diff. fx=diff(f,x) fy=diff(f,y) Första derivatorna sätts lika med noll för att få fram koordinaterna för kritiska punkterna. Detta görs genom att använda kommandot solve i MATLAB. [xcr,ycr]=solve(fx,fy); [xcr,ycr]

Till denna funktion hittar MATLAB nio punkter. Alla punkter som hittas är reella. Vissa punkter upprepas dock flera gånger; till funktionen finns bara fem punkter som inte 3 3 upprepas: (0,0), (, ),( 3 3, ), (-0.5,-0.5) och (0.5,0.5) Sedan bestäms andraderivatorna genom att använda kommandot diff igen på första derivatan. Funktionen med två variabler har fyra derivator av andra grad, där två är lika. f=diff(fx,x) fxy=diff(fx,y) fyy=diff(fy,y) Hessiandeterminanten beräknas genom följande kod hessdetf=f*fyy-fxy^; För att kunna avgöra vad de kritiska punkterna som MATLAB hittar har för karaktär sätts punktens koordinater in i koden för Hessiandeterminanten och andraderivatan med avseende på x. Alla nio värden skrivs ut av MATLAB med respektive x- och y-värden, genom att använda följande kommandorader. xcr = xcr(1:9); ycr = ycr(1:9); for k = 1:9 [xcr(k), ycr(k), subs(hessdetf, [x,y], [xcr(k), ycr(k)]), subs(f, [x,y], [xcr(k), ycr(k)])] End Då fås följande värden, sammanfattade i tabellen nedan: x-koordinat y-koordinat Hessian-determinant Andra derivatan f 0 0 3-3 3 48 7 3 3 48 7-0.5-0.5 0 1 0.5 0.5 0 1 De första tre punkterna är extrempunkter, eftersom Hessiandeterminanten är positiv. 3 3 3 3 (0,0) är en maximipunkt, eftersom f är negativ. (, ) och (, ), är

minimipunkter, eftersom f är positiv i båda punkterna. (-0.5,-0.5) och (0.5,0.5) kan inte bestämmas genom att använda Hessiandeterminanten, eftersom den är noll. Figur 3.1: Bild av funktionen uppifrån Figur 3.: ezsurf av funktionen Figur 3.1 visar en extrempunkt i (0,0), som kan vara en maximipunkt. De resterande extrempunkterna syns inte i bilden. Men (0,0) är en maximipunkt, måste de resterande vara minimipunkter, eftersom funktionen i övrigt fortsätter att växa. Detta verifieras av våra beräkningar.

Problem 4 Problem: Finn och klassificera alla kritiska punkter till funktionen 4 4 4 f ( x, y, z) = x + y + z + xyz. Lösning: Funktionen matas in genom att använda följande kommandon syms x y z f=x^4+y^4+z^4+x*y*z Gradienten till funktionen beräknas med hjälp av kommandot jacobian i MATLAB. gradf=jacobian(f,[x,y,z]) För att finna de kritiska punkterna till funktionen, sätts de första derivatorna lika med noll. MATLABs kommando solve används för att lösa ut de kritiska punkterna. [xcr,ycr,zcr]=solve(gradf(1),gradf(),gradf(3)); [xcr,ycr,zcr] MATLAB fick ut 17 kritiska punkter, var av fem är reella; (0,0,0), (-1/4,1/4,1/4), (-1/4,-1/4,-1/4), (1/4,-1/4,1/4) och (1/4,1/4,-1/4). Hessianmatrisen fås genom att använda kommandot jacobian på gradienten. hessmatf=jacobian(gradf,[x,y,z]) Då kan Hessianmatriserna till punkterna bestämmas. H1=subs(hessmatf,[x,y,z], [xcr(1),ycr(1),zcr(1)]) H=subs(hessmatf,[x,y,z], [xcr(),ycr(),zcr()]) H3=subs(hessmatf,[x,y,z], [xcr(3),ycr(3),zcr(3)]) H4=subs(hessmatf,[x,y,z], [xcr(6),ycr(6),zcr(6)]) H5=subs(hessmatf,[x,y,z], [xcr(7),ycr(7),zcr(7)]) Egenvärdena till Hessianmatrisern räknas ut genom att använda kommandot eig. För att få siffervärden används double. double(eig(h1)) double(eig(h)) double(eig(h3)) double(eig(h4)) double(eig(h5)) Punkt Egenvärden Typ av punkt

(0,0,0) 0 0 0 Okänd (1/4,1/4,1/4) 0.500 1.000 1.000 Minimipunkt (-1/4,-1/4,-1/4) 0.500 1.000 1.000 Minimipunkt (1/4,-1/4,1/4) 0.500 1.000 1.000 minimipunkt (1/4,1/4,-1/4) 0.500 1.000 1.000 minimipunkt Punkten (0,0,0) har bara ett egenvärde, 0. Då kan inte egenvärdena användas för att bestämma punktens karaktär. De resterande punkterna hade alla samma egenvärden, 0.500, 1.000 (och 1.000). Eftersom de alla är positiva, är de alla minimipunkter. Karaktären av punkten (0,0,0) kan istället bestämmas genom att granska punkter som ligger nära origo. Om tecknen på punkterna nära origo skiftar, är det en sadelpunkt. Om alla är negativa, är det en maximipunkt. Om alla är positiva, är det en minimipunkt. I MATLAB skrivs funktionen som f = inline(x^4+y^4+x*y*z,x, y,z) Funktionen provas med mycket små x, y och z värden med skiftande tecken. f1=f(0.001,0.001,0.001) f=f(0.001,-0.001,0.001) MATLAB returnerar f1 = 1.000e-009 f = -9.9800e-010 Eftersom tecknen för punkterna skiftar, är ( 0,0,0) en sadelpunkt. Problem 5 Problem: Finn och klassificera alla kritiska punkterna till funktionen x k(x, y) = y e - x - 3y Lösning: De kritiska punkterna är svåra att hitta analytiskt, därför beräknas de kritiska punkterna numeriskt. Först beräknas derivatorna med avseende på x och y kx=diff(k,x) ky=diff(k,y) k x = x xy e 1 k y = x ye 3

Sedan plottas kurvorna där de med båda derivatorna k x =0, och k = 0. [x1,y1]=meshgrid(0:.1:3,-1:.1:); kxfun=inline(vectorize(kx)); kyfun=inline(vectorize(ky)); contour(x1,y1,kxfun(x1,y1),[0,0],r), hold on contour(x1,y1,kyfun(x1,y1),[0,0],b), hold off y Figur 5.1: grafisk representation av k =0, och k = 0 x y De kritiska punkterna finns där de två kurvorna skär varandra. Ur figuren kan de två kritiska punkterna approximeras till (0.5,1.4) och (1.35,0.5). MATLABs newtond funktion, som står skriven nedan, kan approximera punkterna mer exakt. [xsol,ysol]=newtond(kx, ky, 0.5, 1.4); [xsol,ysol] [xsol,ysol]=newtond(kx, ky, 1.35, 0.5); [xsol,ysol] Punkterna bestämdes till (0.348,1.4195) och (1.3406,0.486). Hessiandeterminanten av funktionen beräknades för att bestämma punkternas karaktär. hessdetk = simplify(diff(kx, x)*diff(ky, y) - diff(kx, y)^) double(subs(hessdetk, [x,y], [0.348,1.4195])) double(subs(hessdetk, [x,y], [1.3406,0.486])) Punkten (1.3406,0.486), hade en negativ Hessiandeterminant, -3.340, vilket betyder att det är en sadelpunkt. Punkten (0.348,1.4195) hade ett positivt Hessiandeterminant, 8.007, vilket tyder på att det är en extrempunkt. Extrempunktens karaktär kan bestämmas genom att ta derivatan med avseende på x igen. double(subs(diff(kx, x), [x,y], [0.348,1.4195]))

k (0.348,1.4195) = 4.779. Eftersom detta är ett positivt tal, är punkten en minimipunkt. Den andra punkten, (1.3406,0.486), hade en negativ Hessiandeterminant, vilket betyder att det är en sadelpunkt. x-värde y-värde Hessiandeterminant k Typ av punkt 0.348 1.4195-3.340 3.459 Sadelpunkt 1.3406 0.486 8.007 4.779 Minimipunkt Problem 6 Problem: Finn och klassificera alla kritiska punkterna till funktionen x f(x, y) = y e - x - 3y Lösning: Det finns två tillgängliga metoder för att finna kritiska punkter. Antingen kan de beräknas analytiskt, eller numeriskt. Nedan beskrivs först den analytiska metoden, och sedan den numeriska. Först deriveras funktionen med avseende på x och y. Kritiska punkter finns där båda derivatorna är lika med 0. syms x y f = y^*exp(x) - x - 3*y; fx=diff(f,x) fy=diff(f,y) f x = xy e x x = 0 f y = x ye 3 = 0 MATLABs solve funktion använs för att finna nollställena. [xcr,ycr]=solve(fx,fy); [xcr,ycr] Funktionen har endast ett nollställe, (log(9/4), /3). För att bestämma dess karaktär använs Hessiandeterminaten. hessdetf = simplify(diff(fx, x)*diff(fy, y) - diff(fx, y)^) double(subs(hessdetf, [x,y], [0.8109,0.6667]))

Denna kritiska punkt har Hessiandeterminanten -4.500, och är därför en sadelpunkt. De kritiska punkterna kan även beräknas numeriskt. Först sätts derivatorna f, och f lika med noll, x sedan används en kurva av dem för att bestämma eventuella skärningspunkter, vilka är kritiska punkter. y Figur 6.1: grafisk representation av f x =0, och f y = 0 Denna funktion har bara en kritisk punkt, som först genom att titta på grafen approximeras till (0.8, 0.67). Sedan kan Newtond-metoden användas för att göra approximationen mer exakt [xsol,ysol]=newtond(kx, ky, 0.8, 0.67); [xsol,ysol] Då returnerar MATLAB punkten (0.8109,0.6667). Detta är samma nollställe som hittades analytiskt. Därför är resultaten tillförlitliga. Samma procedur som användes till att finna punktens karaktär analytiskt används för att finna punktens karaktär. x-värde y-värde Hessiandeterminant Typ av punkt log(9/4) /3-4.500 Sadelpunkt