1. (a) Finn egenverdiene og egenvektorene til matrisen A = ( ) 2 3. 1 4 Svar: λ = 5 med egenvektorer [x, y] T = y[1, 1] T og λ = 1 med egenvektorer [x, y] T = y[ 3, 1] T, begge strengt tatt med y 0. (b) Finn den generelle løsningen på systemet av differensialligninger y 1 = 2y 1 +3y 2 y 2 = y 1 +4y 2 Svar: Fra (a) vet vi egenvektorer og egenverdier for koeffisientmatrisen, så fra mønsteret vårt er ( ) ( ) ( ) y1 1 3 = A e 5t + B e t y 2 1 1 (c) Finn den løsningen av systemet fra (b) som har startverdiene y 1 (0) = 2 og y 2 (0) = 2. Hvordan oppfører løsningen seg når argumentet t? Svar: Startverdiene leder til ligningssystemet ( ) ( ) ( 1 3 A 2 = 1 1 B 2 Det har løsning B = 0, A = 2, så svaret er ( ) ( ) y1 2 = e 5t 2 y 2 Altså er y 1 = y 2, og siden e 5t når t will begge funksjonene gå mot uendelig når t. 2. Denne kodesnutten bruker Newtons metode til å finne en tilnærmet løsning til ligningen xe x2 = 0. 1- x = 1 2- feilgrense = 0.00001 3- while ( abs(x*exp(-x^2)) > feilgrense) 4- x = x - (x*exp(-x^2)) / (exp(-x^2)-2*x^2*exp(-x^2)) 5- end (a) Forklar hva som skjer i løkken. )
Svar: x oppdateres til nullpunktet til funksjonens tangent i forrige x, altså til verdien x f(x)/f (x) der f(x) = xe x2. (b) Kjøring av kodesnutten gir x = 3,5982. Men funksjonen har bare ett nullpunkt, nemlig x = 0. Forklar hva som har skjedd! Svar: Vi er bare garantert at Newtons metode finner nullpunktet når vi starter tilstrekkelig nær punktet. Her starter vi for langt vekke, og det som skjer er at metoden får oss til større og større x-er. Siden lim x xe x2 = 0 vil vi få en funksjonsverdi som er nær null selv om vi ikke er i nærheten av et nullpunkt. (c) Modifiser kodesnutten til å finne en tilnærmet løsning til cos(3 x) = 4x 2 2 Svar: Som mellomregning setter vi alt over på den ene siden og deriverer: f(x) = cos(3 x) 4x 2 + 2 har nullpunkter som svarer til løsninger av ligningen. Nå er Vi setter dette inn i oppsettet: f (x) = 3 sin(3 x) 2 x 8x 1- x = 1 2- feilgrense = 0.00001 3- while ( abs(cos(3*sqrt(x))-4*x^2+1)) > feilgrense) 4- x = x - cos(3*sqrt(x))-4*x^2+1)/(-3*sin(3*sqrt(x))/(2*sqrt(x)) -8*x) 5- end 3. (a) Løs ligningssystemet 4x 6y = 2 8x + 6y = 1 Svar: ( ) x = y ( ) 1/4 1/2 (b) Løs ligningssystemet 2x + 4y + 3z = 14 4x + 8y + z = 8 2
Svar: Gausseliminasjon på totalmatrisen viser at y er en fri parameter, og den generelle løsningen er x 1 2 y = 0 + y 1 z 4 0 (c) i). Ved å bruke MATLAB-kommandoen rref på totalmatrisen til ligningssystemet får vi 2x 1 + x 2 + 6x 3 + 2x 4 + x 5 = 7 3x 1 2x 2 + 2x 3 5x 5 = 0 3x 2 + 6x 3 + x 4 + 4x 5 = 9 x 1 + x 2 + 4x 3 + x 4 + x 5 = 5 1 0 2 0 1 2 0 1 2 0 1 3 0 0 0 1 1 0 0 0 0 0 0 0 Skriv opp løsningen på ligningssystemet. ii). Ved å bruke MATLAB-kommandoen rref på totalmatrisen til ligningssystemet får vi 2x 1 + x 2 + 6x 3 + 2x 4 + x 5 = 4 3x 1 2x 2 + 2x 3 5x 5 = 0 3x 2 + 6x 3 + x 4 + 4x 5 = 4 x 1 + x 2 + 4x 3 + x 4 + x 5 = 5 1 0 2 0 1 0 0 1 2 0 1 0 0 0 0 1 1 0 0 0 0 0 0 1 Skriv opp løsningen på ligningssystemet. (Merk at høyresiden i den siste ligningen er forandret fra forrige deloppgave.) Svar: På i) er x 3 og x 5 frie parametre, og den generelle løsningen er x 1 2 2 1 x 2 x 3 x 3 = 3 0 0 + x 2 3 1 0 + x 1 5 0 1 x 5 0 0 1 3
På ii) er den siste ligningen 0 = 1, så systemet er inkonsistent: Det er ingen løsning. 4. I denne kodesnutten, som skal løse startverdiproblemet y = 3ye x2 4 sin(x), y(0) = 2 over intervallet [0, 1] ved Eulers metode, er det tre ufullstendige kodelinjer. 1- deltax = 0.01; 2- N = 100; 3- x(1) = 0; 4- y(1) = [Fyll inn] 5- for i = 2:N 6- x(i) = [Fyll inn] 7- y(i) = [Fyll inn] 9- plot(x,y) (a) Fyll inn de tre ufullstendige kodelinjene. Svar: 1- deltax = 0.01; 2- N = 100; 3- x(1) = 0; 4- y(1) = 2; 5- for i = 2:N 6- x(i) = x(i-1) + deltax 7- y(i) = y(i-1) + deltax*(3*y(i-1)*exp(x(i-1)^2) -4*sin(x(i-1))); 9- plot(x,y) (b) Skriv et program som løser startverdiproblemet y = x 4y cos x, y(2) = 7 ved Newtons metode, over intervallet [2, 5]. Bruk også her deltax = 0.01. Svar: Merk at det er trykkfeil i oppgaven, det skal være Eulers metode. Her er programmet: 1- deltax = 0.01; 2- N = 300; 3- x(1) = 2; 4- y(1) = 7; 4
5- for i = 2:N 6- x(i) = x(i-1) + deltax; 7- y(i) = y(i-1) + deltax*(x(i-1)/(4*y(i-1)-cos(x(i-1)))); 9- plot(x,y) (c) Skriv et program som løser startverdiproblemet y = cos(y) y + xy, y(0) = 4, y (0) = 2 over intervallet [0, 2] ved Eulers metode. Bruk igjen deltax = 0.01. Svar: Vi innfører z = y slik at ligningen blir omformet til y = z z = cos(y) z + xy med startverdier y(0) = 4 z(0) = 2 Vi får da programmet 1- deltax = 0.01; 2- N = 200; 3- x(1) = 0; 4- y(1) = 4; 5- z(1) = -2; 6- for i = 2:N 7- x(i) = x(i-1) + deltax; 8- y(i) = y(i-1) + deltax*z(i-1); 9- z(i) = z(i-1) + deltax*(cos(y(i-1))*z(i-1)+x(i-1)*y(i-1)); 10-end 5. Denne kodesnutten bruker trapesmetoden for å finne en tilnærmet verdi til 6 4 1 ln(ln x) dx. 1- n = 100; 2- a = 4; 3- b = 6; 4- Deltax = (b-a)/n 5- integralet = 1/log(log(a)); 6- for x = a + Deltax:Deltax:b - Deltax 7- integralet = integralet + 2 * 1/log(log(x)); 9- integralet = integralet + 1/log(log(b)); 10- integralet = Deltax*integralet/2 5
(a) Forklar hva som skjer i kodelinjene 5,7 og 9. Svar: I trapesmetoden summerer vi opp arealene til mange trapeser basert på funksjonsverdiene i de valgte x-punktene. De to x-verdiene i endene, som brukes i linje 5 og 9, er bare med i et trapes hver, mens resten er både venstre og høyre endestolpe i trapeser, og må derfor tas med to ganger. Det siste skjer i linje 7. Dermed passer det med formelen b a f(x) dx x f(a) + 2(f(a + x ) + f(a + 2 x ) + + f(b x )) + f(b) 2 (b) Modifiser programmet (bruk fortsatt n = 100) til å finne en tilnærmet verdi til 3 e sin x dx. 2 Svar: 1- n = 100; 2- a = -2; 3- b = 3; 4- Deltax = (b-a)/n 5- integralet = exp(sin(a)); 6- for x = a + Deltax:Deltax:b - Deltax 7- integralet = integralet + 2 * exp(sin(x)); 9- integralet = integralet + exp(sin(b)); 10- integralet = Deltax*integralet/2 (c) Kjøring av kodesnutten i forrige punkt gir, om du har gjort det korrekt, 3 2 esin x dx = 5,850623. Hvor mange desimaler er rett? Det er oppgitt at feilen ved trapesmetoden er begrenset av K (b a)/12n 2 om f (x) K for alle x i integrasjonsintervallet. Hint: Forklar hvorfor du kan bruke K = 2e. Svar: Ved å derivere to ganger finner vi at f (x) = (cos(x)e sin x ) = cos 2 (x)e sin x sin(x)e sin x Vi ser da, siden sinus og cosinus ligger mellom 1 og 1, at f (x) = cos 2 (x)e sin x sin(x)e sin x 1 e 1 + 1 e 1 = 2e = K Det følger at feilen er begrenset av K b a 12n = 2e 5 2,265 2 10 4 12 1002 Dermed ligger det korrekte svaret mellom omtrent 5,8503 og 5,8509, så 5,850 er korrekt men det siste sifferet skal kanskje rundes til 1. 6