http://www.math.hut.fi/teaching/v/3/01/L/L1.html
Päivitetty 11.9.01

Luento 1 ti 11.9.

ti 11.9. 
Tapahtumat: LAODE, Matlab, nimilista sähkökatko!

Differentiaaliyhtälöt

Tavallinen= (ODE) / osittais= (PDE) Esimerkki jälkimmäisestä: Laplacen yhtälö: Nabla2 u = 0.
Käsittelemme tässä tavallisia.

Käytiin KRE-kirjasta ss. 2-12


Lisäesimerkkejä

Maplen käyttöä arvauksen verifiointiin (derivointiin)

Esim: Lineaarinen, ei-vakiokertoiminen

> restart:t^2*diff(x(t),t,t)-3*t*diff(x(t),t)+4*x(t)=0;

                     / 2      \
                   2 |d       |       /d      \
                  t  |--- x(t)| - 3 t |-- x(t)| + 4 x(t) = 0
                     |  2     |       \dt     /
                     \dt      /

Arvataan (erittäin sivistyneesti), että ratkaisu voisi olla x(t)=t2ln(t) . No tutkitaan sivistyksen taso:
> x:=t^2*ln(t);
                                       2
                                 x := t  ln(t)

> dx:=diff(x,t);
                              dx := 2 t ln(t) + t

> d2x:=diff(dx,t);
                              d2x := 2 ln(t) + 3

> vasen:=t^2*d2x-3*t*dx+4*x;
                   2                                          2
         vasen := t  (2 ln(t) + 3) - 3 t (2 t ln(t) + t) + 4 t  ln(t)

> simplify(vasen);          
                                       0
Ei hullumpaa!

Suuntakentät

Oma skripti

% Matlab-skripti: suuntak.m
% Kts. myös exasuuntak.m
% HA 18.9.2000
%

clf
h=1;a=-2;b=2;c=-2;d=2;   % Muutettavat parametrit
t=a:h:b;x=c:h:d;                          
f=inline('t.*x','t','x')   % Muutettava funktio
[T,X]=meshgrid(t,x);
Z=f(T,X)
flipud(Z)   % havainnollistukseen, tosi käytössä kommentti tai puolipiste
plot(T(:),X(:),'x')
hold on
U=ones(size(Z));
normit=sqrt(1+Z.^2);
quiver(T,X,0.5*h*U./normit,0.5*h*Z./normit,0)
axis equal
axis([a-1,b+1,c-1,d+1])
grid
title('x''=tx')
shg
%
% Jos haluat pelkän suuntakentän, lopeta tähän.
%
% Seuraavassa piirretään Matlabin numeerisen ODE-ratkaisijan laskemia
% ratkaisukäyräapproksimaatioita hiirellä valittavaan alkupisteeseen.
%
display('Valitse hiirellä alkupisteitä, lopuksi ENTER grafiikkaikkunassa')
[t,x]=ginput;
for i=1:length(t)
  [T,Y]=ode45(f,[t(i),b+0.5],x(i));
  plot(T,Y,'r')
  [T,Y]=ode45(f,[t(i),a-0.5],x(i));
  plot(T,Y,'r')
end;  
shg

>> flipud(Z)   % havainnollistukseen, tosi käytössä kommentti tai puolipiste

ans =

    -4    -2     0     2     4
    -2    -1     0     1     2
     0     0     0     0     0
     2     1     0    -1    -2
     4     2     0    -2    -4


[sk1.gif]

Laode-funktio dfield5

Hieno väline, dokumentoitu kirjassa, käytetään paljon.