Uppsala universitet Institutionen för informationsteknologi Teknisk databehandling Per Wahlund, tel. 471 2986 Tentamen i Beräkningsvetenskap II, 5.0 hp, 2012-01-11 Skrivtid: 14 00 17 00 (OBS! Tre timmars skrivtid!) Hjälpmedel: Bifogat formelblad, miniräknare. Det är också tillåtet att använda Mathematics Handbook eller Physics Handbook. För fullt uppfyllda mål och kriterier på uppgifterna krävs fullständiga räkningar och utförliga resonemang samt motivering till alla svar. Kursmål (förkortade), hur de täcks i uppgifterna och maximalt betyg Fråga nr Nyckelbegrepp Algoritmer Analys Argumentation 1 3 2 3 3 3 3 3 3 4 3 3 5 3, 3 6 5 4 7 4 5 5 Del A 1. Med ett mätinstrument hade man mätt upp aktivitet från en biologisk process. Eftersom utrustningen gav sitt resultat i logaritmisk skala, så väntade man sig att aktiviteten skulle växa linjärt. Bestäm koefficienterna i detta linjära förlopp genom att approximera mätdata givna nedan med ett förstagradspolynom i minstakvadratmening. Ø 0.2 0.4 0.7 0.9 ØÚØØ 3.1 5.9 9 11.2 1
2. (a) Vi har differentialekvationen Ý ¼ (Ø) = 1 + Ý(Ø)Ø Ø 1 Ý(1) = 2 Visa att du behärskar Heuns metod genom att göra ett steg med steglängden = 02. (b) Om man fick veta att felet i det värde man fick för y(1.2) i ) var högst 0.006, uppskatta med hjälp av detta hur många steg man skulle ha behövt göra på intervallet [1 12] för att med Heuns metod få ett värde på y(1.2) som har 5 korrekta decimaler. 3. (a) Bestäm stabilitetsområdet för metoden Euler bakåt, (även kallad implicit Euler), genom att tillämpa den på testekvationen Ý ¼ = Ý (b) På vilket sätt kan man på den erhållna lösningens egenskaper märka att man har överskridit stabilitetsgränsen vid användandet av en differensmetod med bergänsat stabilitetsområde? 4. En normal tärning ger vid ett slag valörerna 1, 2, 3, 4, 5 resp. 6 med samma sannolikhet, (dvs. 1/6), för varje valör. Vid ett visst tärningsspel hade dock tärningen manipulerats så att sannolikheten att få en sexa endast var hälften så stor som att få någon annan valör, (de andra valörerna hade lika stor sannolikhet vardera). (a) Hur stor är sannolikheten att få en sexa med den defekta tärningen? (b) Beskriv algoritmen för att simulera ett slag med den defekta tärningen med hjälp av en slumptalsgenerator randnr som ger ett slumptal likformigt fördelat i intervallet [0 1)? 5. a) Ge ett exempel på när interpolation är att föredra framför minstakvadratapproximation vid approximation av en uppsättning datapunkter. Ge också ett exempel på när interpolation kan ge ett dåligt resultat. b) Nämn minst en fördel och en nackdel med Monte Carlo-metoder. 2
Del B 6. (a) Antag att du vet volymen av en kub med sidan, och att du vet att volymen Î Ë för en sfär definierad av Ü 2 + Ý 2 + Þ 2 Ö 2 ges av Î Ë = 4Ö3, men att 3 du inte vet värdet på. Förklara hur du med en Monte Carlo-metod kan uppskatta värdet på. Skriv ned en algoritm i pseudo-kod. (b) Du uppskattar nu volymen Î Í av en sfär med det du beräknat med metoden i a). Förklara hur du kan uppskatta felet i Î Í. Gör en så noggrann uppskattning som möjligt. 7. Man vill lösa en differentialekvation Ý ¼ = (Ü Ý) på intervallet 0 Ü 1. Man har tillgång till två lösare: i) En explicit lösare med egenskaperna: Totalfelet är högst ( ) 1 3, (där ( ) motsvarar den intervallängd man löser över), stabilitetsvillkoret är 2, och varje steg tar 10 6 sek. att utföra. ii) En implicit lösare med egenskaperna: Totalfel högst ( ) 2 2, stabilitetsvillkor 50, och varje steg tar 10 5 sek. att utföra. Nu vill man lösa en diff.ekvation, som har sådana egenskaper att konstanterna i fel- och stabilitetsgränserna är 1 = 60, 2 = 3 och = 1000. Man vill ha en lösning så att totalfelet för Ü = 1 är högst. Utred för vilka värden på som noggrannhets- resp. stabilitetskraven sätter gränsen för hur stora steg man kan ta. Ange också för vilka noggrannhetskrav, som det tidsmässigt kan vara fördelaktigt att använda den explicita lösaren, trots dess sämre stabilitetsegenskaper. 3
4
Uppsala universitet Inst. för informationsteknologi Avd. för teknisk databehandling Blandade formler i Beräkningsvetenskap I och II 1. Flyttal och avrundningsfel Ett flyttal Ð(Ü) representeras enligt Ð(Ü) = ˆÑ ˆÑ = ( 0 1 2 Ô 1 ) 0 0 = 0 Ä Í där betecknar bas och Ô precision. Ett flyttalssystem defineras È ( Ô Ä Í). Maskinepsilon (avrundningsenheten) Å = 1 2 1 Ô och kan defineras som det minsta tal sådant att Ð(1 + ) 1. 2. Linjära och ickelinjära ekvationer (Ü ) ¼ (Ü ) Newton-Raphsons metod: Ü +1 = Ü För system: Ü +1 = Ü [ ¼ ] 1 (Ü ), där Ü och (Ü ) är vektorer och ¼ är Jacobianen. Fixpunktsiteration för Ü = (Ü): Ü +1 = (Ü ) Konvergenskvot, konvergenshastighet Ü +1 Ü lim = ½ Ü Ü Ö där är en konstant, och Ö anger konvergenshastigheten (Ö = 1 betyder t ex linjär konvergens). Allmän feluppskattning Ü Ü (Ü ) min ¼ (Ü) Konditionstalet cond() = 1 mäter känsligheten för störningar hos ekvationssystemet Ü =. Det gäller att Ü Ü cond() där Ü = Ü ˆÜ och = ˆ.
Normer (vektor- respektive matrisnorm) Ü 2 = Ô Ü 1 2 + + Ü Ò 2 Ü 1 = È Ü Ü ½ = max Ü 1 = ÑÜ ( È ) ½ = ÑÜ ( È ) 3. Approximation Newtons interpolationspolynom Ô(Ü) då vi har Ò punkter (Ü 1 Ý 1 ) (Ü Ò Ý Ò ) bygger på ansatsen Ô(Ü) = 0 + 1 (Ü Ü 1 ) + 2 (Ü Ü 1 )(Ü Ü 2 ) + + Ò 1 (Ü Ü 1 ) (Ü Ü Ò 1 ) Minstakvadratapproximationen till punktmängden (Ü 1 Ý 1 ) (Ü 2 Ý 2 ) (Ü Ñ Ý Ñ ) med ett Ò:egradspolynom Ô(Ü) = 0 1 + 1 Ü + + Ò Ü Ò kan formuleras som ett överbestämt ekvationssystem Ü =, där är Ñ Ò, Ñ Ò. Minstakvadratlösningen kan fås ur normalekvationerna Ì Ü = Ì 4. Ordinära differentialekvationer Eulers metod (explicit Euler): Ý +1 = Ý + (Ü Ý ), n.o. 1 Implicit Euler (Euler bakåt): Ý +1 = Ý + (Ü +1 Ý +1 ), n.o. 1 Trapetsmetoden: Ý +1 = Ý + 2 ((Ü Ý ) + (Ü +1 Ý +1 )), n.o. = 2 Heuns metod (tillhör gruppen Runge-Kuttametoder): Ã 1 = (Ü Ý ) Ã 2 = (Ü +1 Ý + Ã 1 ) Ý +1 = Ý + 2 (Ã 1 + Ã 2 ) n.o. = 2 Klassisk Runge-Kutta: Ã 1 = (Ü Ý ) Ã 2 = (Ü + 2 Ý + 2 Ã 1) Ã 3 = (Ü + 2 Ý + 2 Ã 2) Ã 4 = (Ü +1 Ý + Ã 3 ) Ý +1 = Ý + 6 (Ã 1 + 2Ã 2 + 2Ã 3 + Ã 4 ) n.o. = 4
5. Numerisk integration Trapetsformeln Beräkning på ett delintervall med steglängd = Ü +1 Ü Ü+1 Ü (Ü) Ü = 2 [(Ü ) + (Ü +1 )] Sammansatt formel på helt intervall [ ], då ekvidistant steglängd = : (Ü) Ü 2 [(Ü 0) + 2(Ü 1 ) + + 2(Ü Æ 1 ) + (Ü Æ )] Diskretiseringsfelet Ê på helt intervall [ ], dvs Ê (Ü) Ü = Ì () + Ê är Ê = ( ) 2 ¼¼ () 12 Funktionsfelet (övre gräns): ( ), där är en övre gräns för absoluta felet i varje funktionsberäkning. Simpsons formel Beräkning på ett dubbelintervall med steglängd Ü+2 (Ü) Ü = Ü 3 [(Ü ) + 4(Ü +1 ) + (Ü +2 )] Sammansatt formel på helt intervall [ ], då ekvidistant steglängd = : (Ü) Ü 3 [(Ü 0) + 4(Ü 1 ) + 2(Ü 2 ) + 4(Ü 3 ) + + 2(Ü Æ 2 ) + 4(Ü Æ 1 ) + (Ü Æ )] Diskretiseringsfelet Ê på helt intervall [ ], dvs Ê (Ü) Ü = Ë() + Ê är Ê = ( ) 180 4 ¼¼¼¼ () Funktionsfelet: Samma som för trapetsformeln, se ovan. 6. Richardsonextrapolation Om 1 () och 1 (2) är två beräkningar (t ex ett steg i en beräkning av en integral eller en ODE) med en metod av noggrannhetsordning Ô med steglängd respektive dubbel steglängd 2 så är Ê() = 1() 1 (2) 2 Ô 1
en uppskattning av den ledande termen i trunkeringsfelet i 1 (). Kan även användas för att förbättra noggrannheten i 1 () genom () = 1 () + 1() 1 (2) 2 Ô 1 7. Numerisk derivering För numerisk derivering används s k differensformler ¼ (Ü) ¼ (Ü) ¼ (Ü) ¼¼ (Ü) (Ü+) (Ü ) 2 (Ü+) (Ü) (Ü) (Ü ) (Ü+) 2(Ü)+(Ü ) 2 8. Monte Carlometoder centraldifferens framåtdifferens bakåtdifferens Den övergripande strukturen för Monte Carlosimuleringar är Indata N (antal försök) for i = 1:N Utför en stokastisk simulering resultat(i) = resultatet av simuleringen end slutresultat genom någon statistisk beräkning, t.ex. medelvärdet mean(resultat) Noggrannhetsordning för Monte carlometoder är Ç( 1 Ô Æ ), där Æ är antal samplingar. Kumultativ fördelningsfunktion: (Ü) = Ê Ü½ (Ý)Ý Normalfördelning (Ü) = 1 Ô 2 (Ü ) 2 2 2 Aritmetiskt medelvärde baserat på Æ realisationer Ü av slumpvariablen : È = 1 Æ Æ =1 Ü. 9. Taylorutveckling Taylorutveckling av Ý(Ü + ) kring Ü : Ý(Ü + ) = Ý(Ü ) + Ý ¼ (Ü ) + 2 2! ݼ¼ (Ü ) + 3 3! ݼ¼¼ (Ü ) + Ç( 4 )