Ääriarvoja, kriittisiä pisteitä, Taylor ja Hesse
> f:=(x,y)->1/(2+x-2*y);
Palapalalta-tapa:
> d1:=diff(f(x,y),x):d2:=diff(f(x,y),y):
> d11:=diff(f(x,y),x,x):d12:=diff(f(x,y),x,y):d22:=diff(f(x,y),y,y):
>
d111:=diff(f(x,y),x,x,x):d112:=diff(f(x,y),x,x,y):
d122:=diff(f(x,y),x,y,y):d222:=diff(f(x,y),y,y,y):
> h:=(u-2);k:=(v-1);
> D[2,1](f)(x,y);
Heikin idea !
> DD:=f->h*D[1](f)+k*D[2](f);
>
> h:='h':k:='k':
> DD(f)(x,y);
--------------------------------------------------------------------------------------------------
Heikin vielä parempi idea!
> f:='f':F:=t->f(a+t*h,b+t*k);
> dF:=D(F):
> dF(0);
> d2F:=D(dF):
> d2F(0):
> d3F:=D(d2F):
> d3F(0):
> tp:=F(0)+dF(0)+1/2*d2F(0)+1/(3!)*d3F(0):
> subs(a=2,b=1,%);
----------------------------------------------------------------------------------------
Taylorin sarja "käsin":
>
> T(2,1):=subs(x=2,y=1,f(x,y)+d1*h+d2*k+1/2*(d11*h^2+2*d12*h*k+d22*k^2)+1/6*(d111*h^3+3*d112*h^2*k+3*d122*h*k^2+d222*k^3));
Taylorin kehitelmä Maplella:
> readlib(mtaylor):
> mtaylor(f(x,y),[x,y],4);
Katsotaan sentään miltä funktio näyttää "luonnossa".
> plot3d (f(x,y),x=1.9..2.1,y=.9..1.1):
Vielä yksi tapa on kehittää funktio jo heti sarjaksi seuraavaan tapaan...
1/(2+x-2y)=1/(2(1+(x-2y)/2) =1/2 1/(1+t) =1/2(1-t+t^2-t^3) + Rn
Entäs sitten kohta b)
> g:=(x,y)->cos(x+sin(y));
> mtaylor(g(x,y),[x,y],5);
> plot3d(g(x,y),x=-1..1,y=-1..1):
Tehtävä 3.
Määritellään ja luokitellaan funktion
kriittiset pisteet.
Tässä on funktio:
> f:=(x,y)->x^2*y*exp(-(x^2+y^2));
Katsotaan miltä funktion kuvaaja näyttää x:n ja y.n kulkiessa välillä (-1,1) ja toisaalta (-5,5).
>
with(plots):
pinta1:=plot3d(f(x,y),x=-1..1,y=-1..1):display([pinta1],axes=frame);
pinta2:=plot3d(f(x,y),x=-5..5,y=-5..5):display([pinta2],axes=frame,orientation=[-10,60]);
Lasketaan funktion kriittiset pisteet, eli pisteet, joissa ensimmäiset osittaisderivaatat saavat arvon 0. Ratkaistaan 'solve':lla, evaluoidaan 'allvalues'illa ja sijoitetaan ratkaisut vektoriin krp.
> apu:= solve ({diff(f(x,y),x)=0,diff(f(x,y),y)=0},{x,y});
> krp:=seq(allvalues(apu[i]),i=1..3);
Nyt kun tiedetään kriittiset pisteet voidaan tutkia Hessen matriisia näissä pisteissä. (Tutkitaan neliömuodon tyyppiä sen esitysmatriisin determinantin (tehtävässä 5 ominaisarvojen) avulla.)
>
> with(linalg):
Warning, new definition for norm
Warning, new definition for trace
> hm:=hessian(f(x,y),[x,y]);
>
> hesset:=seq(subs(krp[i],op(hm)),i=1..5);
--------------Tämä pätkä kuuluu tehtävään 5, jossa lasketaan ominaisarvot ja vektorit--------------
>
> ooveet:=seq(eigenvectors(hesset[i]),i=2..5):
> ooaat:=seq(eigenvalues(hesset[i]),i=2..5):
--------------------------------------------------------------------------
Katsotaan sitten determinanttia .
> detit:=seq(det(hesset[i]),i=1..5);
Tämän tiedon mukaan pisteissä (0,y) on neliömuoto semidefiniitti. Pisteissä
(nyt-ei-toimi-Maple-Input) siis niissä muissa, jotka näkyvät edellä determinantit ovat >0.
> ekatermit:=seq(hesset[i][1,1],i=1..5);
Näistä Hessen matriisien vasemman ylänurkan alkioiden merkeistä voidaan katsoa ovatko definiitit neliömuodot negatiivisesti vai positiivisesti definiittejä.
Saadaan: negdef, posdef, negdef, posdef.
Globaaleista ääriarvoista vielä sen verran, että e^(-(x^2+y^2)) lähestyy nopeasti nollaa, kun loitonnutaan origosta.
> limit(exp(-(x^2+y^2))*x^2*y,{x=infinity,y=infinity});
>
Edellinen ei onnistunut, mutta plottaamallakin näkee (suoralla) monotonisten funktioiden suhteesta jotakin. (samaistetaan x ja y kun molemmat kasvavat).
> plot([exp(x^2+x^2),x^2*x],x=1..1.5,color=[red,green]);
Eksponenttifunktion kasvu on huima.
>
Tehtävä 4 , jossa toimitetaan samat asiat funktiolle f(x,y)=xy/(2+x^4+y^4)
>
> f:=(x,y)->x*y/(2+x^4+y^4);
> plot3d(f(x,y),x=-3..9,y=-3..9,orientation=[-15,45]);
>
apu:=solve({diff(f(x,y),x)=0,diff(f(x,y),y)=0},{x,y}):
>
> krp:=seq(allvalues(apu[i]),i=1..10);
Imaginaarisia ei kelpuuteta.
> krp:=[krp[1],krp[2],krp[3],krp[6],krp[7]];
Lasketaan Hessen matriisit.
> hm:=hessian(f(x,y),[x,y]);
> hesset:=seq(subs(krp[i],op(hm)),i=1..5);
Kahtotaan determinantit.
> detit:=seq(det(hesset[i]),i=1..5);
Siis indefiniitti, negatiivisesti definiitti, positiivisesti definiitti, positiivisesti definiitti, negatiivisesti definiitti.
Eli satulapiste, oleellinen paikallinen maksimi, oleellinen paikallinen minimi, oleellinen paikallinen minimi, oleellinen paikallinen maksimi.
Piirretään kuvia tehtävään 5
>
with(plottools):v1:=line([0,0,0],[0,1,0],color=red,thickness=3):v2:=line([0,0,0],[1,0,0],color=blue,thickness=3):
> with(plots):
> f:=(x,y)->x^2*y*exp(-(x^2+y^2));
> pinta1:=plot3d(f(x,y),x=-1..1,y=-1..1):
>
>
> display([pinta1,v1,v2],orientation=[-20,45]);
>
Tehtävä 6.
Olkoon pohjan sivut a ja b sekä korkeus h. Hinta per pinta-ala olkoon p ja tilavuus P. Kokonaishinnan ollessa H, saadaan
tovin yhtälöiden pyörittämisen jälkeen H=p*(3*1/h+2*1/a+2*1/b), missä V ja p ovat vakiot joten tarkastellaan kolmen muuttujan funktiota f(a,b,h). Käsin laskettava helpommin..
>
>
>