lagrange.mws |
Kaksoisheilurin liikeyhtälöt voidaan helpoimmin johtaa Lagrangen teorian avulla. Tällöin systeemin tila ilmaistaan ensin yleisten koordinaattien avulla, minkä jälkeen systeemin kineettinen energia ja potentiaalienergia esitetään yleisten koordinaattien funktioina. Näiden erotus on
Lagrangen funktio L
. Liikeyhtälöt saadaan tämän jälkeen mekaanisilla derivoinneilla muodossa
missä
q
tarkoittaa jokaista yleistettyä koordinaattia vuorollaan ja
sen aikaderivaattaa.
Puhdistetaan työtila tarkastelun aluksi.
> restart;
Kaksoisheilurin tapauksessa yleistetyt koordinaatit ovat
ja
, jotka riittävät määrittämään heilurin aseman. Kumpikin on ajan funktio. Heilurien suorakulmaiset koordinaatit myös ajan funktioina ovat tällöin
> x[1]:= l*sin(theta[1](t));
> y[1]:= l*cos(theta[1](t));
> x[2]:= l*sin(theta[1](t))+l*sin(theta[2](t));
> y[2]:= -l*cos(theta[1](t))-l*cos(theta[2](t));
Näiden avulla voidaan muodostaa lausekkeet koko systeemin kineettiselle energialle ja potentiaalienergialle:
>
T:= 1/2*m[1]*(diff(x[1], t)^2+diff(y[1], t)^2)+1/2*m[2]*(diff(x[2], t)^2+diff(y[2], t)^2):
simplify(%);
>
V:= m[1]*g*y[1]+m[2]*g*y[2]:
simplify(%);
Systeemin Lagrangen funktio on näiden erotus:
>
L:= T-V:
simplify(%);
Liikeyhtälöt saadaan tämän jälkeen mekaanisella derivoinnilla, jolloin kumpikin yleistetty koordinaatti on käsiteltävä erikseen.
Derivoitaessa Maple n diff -komennolla ei ole mahdollista derivoida funktioiden tai derivaattojen suhteen. Tämä voidaan ohittaa korvaamalla derivaatta- ja funktiomerkinnät väliaikaisilla muuttujilla.
>
d2m:= diff(theta[1](t), t)=dt1,
diff(theta[2](t), t)=dt2:
m2d:= dt1=diff(theta[1](t), t), dt2=diff(theta[2](t), t):
t2m:= theta[1](t)=t1t, theta[2](t)=t2t:
m2t:= t1t=theta[1](t), t2t=theta[2](t):
>
diff(subs({m2d}, diff(subs({d2m}, L), dt1)), t)-subs({m2d}, subs({m2t}, diff(subs({t2m}, subs({d2m}, L)), t1t)))=0:
factor(combine(%));
>
diff(subs({m2d}, diff(subs({d2m}, L), dt2)), t)-subs({m2d}, subs({m2t}, diff(subs({t2m}, subs({d2m}, L)), t2t)))=0:
factor(combine(%));
Vertaa saatuja liikeyhtälöitä kaksoisheiluriesimerkin lähtökohtana oleviin ja totea ne samoiksi.