Lagrangen kertojat ja ominaisarvot

Luentoesimerkki ti 19.3.02 HA

> with(LinearAlgebra):

Warning, the assigned name GramSchmidt now has a global binding

> A:=<<17,6>|<6,8>>;

A := _rtable[135095672]

> Eigenvectors(A);

_rtable[134733768], _rtable[137152316]

> f:=(x,y)->x^2+y^2:

> g:=(x,y)->17*x^2+12*x*y+8*y^2-100;

g := proc (x, y) options operator, arrow; 17*x^2+12...

> L:=(x,y,lambda)->f(x,y)+lambda*g(x,y);

L := proc (x, y, lambda) options operator, arrow; f...

> solve({diff(L(x,y,lambda),x)=0,diff(L(x,y,lambda),y)=0,g(x,y)=0},{x,y,lambda});

{lambda = -1/5, y = 4, x = -2}, {lambda = -1/5, x =...

Tässä tapauksessa Lagrangen kerroin lambda on ominaisarvojen käänteisluvun vastaluku. (Vastaluku tulee vain siitä, että siirsimme

kaikki termit samalle puolelle.) Harjoitustehtävässä on tilaisuus testata hypoteesia uudestaan.

Katsotaan samantien numeerista ratkaisijaa. Se tarvitsee yleensä alkuarvot. Kokeillaan.

> yht:={diff(L(x,y,lambda),x)=0,diff(L(x,y,lambda),y)=0,g(x,y)=0};

yht := {2*y+lambda*(12*x+16*y) = 0, 2*x+lambda*(34*...

> fsolve(yht,{x=0,y=0,lambda=0});

{lambda = -.5000000000e-1, x = 2.000000000, y = 1.0...

> fsolve(yht,{x=1,y=-1,lambda=-1});

{x = 2.000000000, y = -4.000000000, lambda = -.2000...

>