TKK, Matematiska institutionen Mat-1.1532 Grundkurs i matematik 3-II Övning D2 22.11.2007 Gripenberg P 1 2 1 n 1. Låt A = . Beräkna eA med funktionen expm. Räkna 20 n=0 n! A t.ex. på följande 0 −1 sätt: B=eye(2); C=eye(2); for n=1:20, C=C*A/n;B=B+C;end Hur liten kan du få skillnaden mellan expm(A) och B att vara genom att byta ut talet 20 mot ett större tal? Av vad kan man direkt se att exp(A) räknar något annat (dvs. matrisen med elementen eA(j,k))? 2. Undersök om man genom att slumpmässigt välja matriser A och B med funktionen rand eller randn (dvs. A = randn(3,3); B=randn(3,3)) hittar sådana matriser att eA+B är lika med eA eB , (räkna expm(A+B)-expm(A)*expm(B)). Får man på detta sätt matriser A och B så att eA+B är lika med eA eB ? α α−1 3. Undersök numeriskt hur lösningarna till differentialekvationssystemet Y (t) = Y (t) α+1 α uppför sig för olika värden av α (t.ex., α = ±1.5, α = ±0.5 och α = 0). Använd funktionen ode45 t.ex. på följande sätt då α = 0.5: fun=inline(’[0.5 -0.5 ; 1.5 0.5]*y’,’t’,’y’); [t,y]=ode45(fun,[0,10],[1;1]); plot(y(:,1),y(:,2)) Du kan√också använda något annat tidsintervall än [0, 10]. Observera att matrisens egenvärden är α ± α2 − 1. För vilka värden av α går lösningen mot origo? ′ −10 18 4. Undersök numeriskt lösningen till differentialekvationssystemet Y (t) = Y (t), −6 11 2 Y (0) = uppför sig för olika intervall [0, T ]. Använd funktionen ode45 t.ex. på följande 1 sätt: fun=inline(’[-10 18 ; -6 11]*y’,’t’,’y’); [t,y]=ode45(fun,[0,10],[2;1]); plot(y(:,1),y(:,2)) −t 2e Lösningen till ekvationssystemet är Y (t) = −t . e ′ För vilka värden på T får man ungefär rätt lösning på intervallet [0, T ]? Varför blir det problem med lösningen på längre intervall? 5. Lös ekvationssystemet y1′ (t) = −y1 (t) + t, y2′ (t) = −1000y2(t). med hjälp av ode45 först med begynnelsevärden y1 (0) = 1, y2 (0) = 0 och sedan y1 (0) = 0, y2 (0) = 1, t.ex så här: fun =inline(’[-y(1)+t;-1000*y(2)]’,’t’,’y’); [t,y]=ode45(fun,[0,10],[1;0]); Uppskatta hur många steg algoritmen räknar i de båda fallen genom att jämföra hur matriserna t och y är, (använd size(t)). Lösningarna är förstås y1 (t) = e−t (y1 (0) + 1) + t − 1 och y2 (t) = y2 (0)e−1000t så y2 går mycket snabbt ner till nästan 0. Går det i det senare fallet bättre om man använder funktionen ode15s? 6. Bestäm numeriskt de tal λ för vilka lösningen till ekvationen y ′′(x) + λy(x) = 0, ′ y(0) = 0, y ′(0) = 1 uppfyller villkoret y(1) = 0. Skriv ekvationen som ett system Y (x) = 0 1 0 Y (x), Y (0) = . −λ 0 1 Vilket är det minsta talet λ för vilket detta lyckas? Är det enklare at lösa problemet analytiskt? 7. Lös numeriskt differentialekvationssystemet q y1 y2 ′ y1 = (1 − y12 + y22 )y1 − y2 + p 2 , y1 + y22 q y2 ′ y2 = (1 − y12 + y22 )y2 + y1 − p 2 1 2 . y1 + y2 med olika initialvärden som inte är y1 (0) = y2 (0) = 0 och rita upp lösningarna. y1 (t) 1 y1 (0) 0 Ser det ut som om limt→∞ = om 6= ? y2 (t) 0 y2 (0) 0 1 Är en stabil jämviktspunkt för differentialekvationssystemet, dvs. finns det för varje ǫ > 0 0 y1 (0) y1 (t) 1 1 < δ så är < ǫ för alla t ≥ 0? ett tal δ > 0 så att om − − y2 (0) y2 (t) 0 0