> # Teht.1 ======================================== > with(linalg): > At:=matrix(3,3,[0,t,0,0,0,t,0,0,0]); [0 t 0] [ ] At := [0 0 t] [ ] [0 0 0] > Id:=diag(1,1,1); [1 0 0] [ ] Id := [0 1 0] [ ] [0 0 1] > At2:=At^2: At3:=At^3: > evalm(At2); evalm(At3); [ 2] [0 0 t ] [ ] [0 0 0 ] [ ] [0 0 0 ] [0 0 0] [ ] [0 0 0] [ ] [0 0 0] > # At on siis nilpotentti > expAt:=Id+At+At2/2: > evalm(expAt); [ 2] [1 t 1/2 t ] [ ] [0 1 t ] [ ] [0 0 1 ] > # Teht.2 > alkuehto:=vector([0,1,-1]); alkuehto := [0, 1, -1] > y:=expAt &* alkuehto; # Muista: Matriisikertolasku: &* # Jos haluat nähdä tuloksen alkiotasolla, # komenna: evalm(y); # kts. alempana 2 y := (Id + At + 1/2 At ) &* alkuehto > evalm(y); [ 2 ] [t - 1/2 t , 1 - t, -1] > y:=evalm(y); [ 2 ] y := [t - 1/2 t , 1 - t, -1] > # Edellinen toiminto tehtiin, jotta plottaaminen onnistuisi > plot([y[1],y[2],y[3]],t=-3..3); > with(plots): > spacecurve(y,t=-100..100); Kannttaa valita koordinaattiakselit valikosta, kuvaa voi kiertää kiertämällä hiirellä laatikkoa ja sitten napsauttamalla oikeata, jolloin kuva piirtyy uudestaan.