rtkalk.mws
Esimerkit : Ratkaisut yleensä

Alkuehtoa vastaavan yksittäisratkaisun etsiminen

Muodostamalla ensin yleinen ratkaisu

Olkoon annettuna differentiaaliyhtälö alkuehtoineen:

> diffyht:= x^2*diff(y(x), x, x)-3*x*diff(y(x), x)+4*y(x)=x^3;

diffyht := x^2*diff(y(x),`$`(x,2))-3*x*diff(y(x),x)...

> ehto1:= y(2)=3;

ehto1 := y(2) = 3

> ehto2:= D(y)(2)=4;

ehto2 := D(y)(2) = 4

Yleinen ratkaisu saadaan dsolve -komennolla.

> ratkaisu:= dsolve(diffyht, y(x));

ratkaisu := y(x) = x^3+_C1*x^2+_C2*x^2*ln(x)

Määritellään ratkaisu funktioksi Y( x ). Tällöin vakiot _ C1 ja _ C2 saadaan ratkaistua tekemällä ensin merkkikorvaus y -> Y edellä annetuille ehdoille ja käyttämällä niitä solve -komennon argumentteina.

> Y:= unapply(rhs(ratkaisu), x);

Y := proc (x) options operator, arrow; x^3+_C1*x^2+...

> subs(y=Y, {ehto1, ehto2}):
C12:= solve(%, {_C1, _C2});

C12 := {_C2 = -3/2, _C1 = -5/4+3/2*ln(2)}

Sijoittamalla vakiot yleiseen ratkaisuun saadaan alkuehtoa vastaava yksittäisratkaisu:

> y0:= subs(C12, rhs(ratkaisu));

y0 := x^3+(-5/4+3/2*ln(2))*x^2-3/2*x^2*ln(x)

Tämä toteuttaa differentiaaliyhtälön ja alkuehdot:

> subs(y(x)=y0, {diffyht}):
simplify(%);

{x^3 = x^3}

> subs(x=2, y0);

3

> subs(x=2, diff(y0,x));

4

Ratkaisemalla suoraan dsolve-komennolla

Alkuehdot voidaan yhtälön ohella antaa dsolve -komennolle, jolloin yksittäisratkaisu saadaan suoraan:

> ratkaisu:= dsolve({diffyht, y(2)=3, D(y)(2)=4}, y(x)):
simplify(%);

y(x) = x^3-5/4*x^2+3/2*x^2*ln(2)-3/2*x^2*ln(x)


Teoria: yleinen ja yksittäisratkaisu
Teoria: alkuehto
Ratkaiseminen: ratkaiseminen algebrallisesti Maplella
Esimerkit: ratkaisun sijoittaminen yhtälöön Maplen keinoin

SKK & MS 31.05.2001