Välkomna till Numme och MATLAB, 9 hp, för Materialdesign och Energi&Miljö, årskurs 2 Kursen avses ge dig kunskap om numeriska metoder, hur man kan använda dessa genom elementär programmering i MATLAB samt analys av osäkerheten i resultaten. Uppläggningen och schema framgår av utdelat kurs-pm. Löpande information finns på webbplatsen www.math.kth.se/na/sf1518/numpdb15 På de 14 föreläsningarna i period 1 behandlar jag såväl numeriska metoder som grunderna i MATLAB. På de 12 övningarna i period 1 i tre grupper (En&Mi A-J, En&Mi K-Ö, MatDes) behandlas numeriska exempel som analyseras och programmeras i MATLAB. Laborationer och projekt, se nästa sida. Yngve Sundblad Föreläsning 1 sid.1 SF 1518/19 ht 2015 31 aug.
Laborationer och Projekt De tre laborationerna och projektet upptar största delen av arbetet med kursen och belönas med vardera 1,5 hp. De görs i grupper om två teknologer, hitta partner snarast. Labbarna ligger helt i period 1 och består av flera moment. första på torsdag 8-10. Redovisning i tid ger bonuspoäng på tentamen, max 1+1,5+1,5 = 4 p. Lab.1 redovisas muntligt i datorsal för handledare. Lab.2 redovisas vid lappskrivning. Lab.3 redovisas med skriftlig rapport. Projektet genomförs intensivt de två första veckorna i period 2 och redovisas muntligt inför några andra grupper och lärare. Yngve Sundblad Föreläsning 1 sid.2 SF 1518/19 ht 2015 31 aug.
Tentamen (3 hp) Tentamen (3 timmar) omfattar två delar. På del 1 krävs 14 poäng (av 20), inklusive bonuspoäng från labbarna, för godkänt (E). Del 2, som bara rättas om del 1 är godkänd, kan ge högre betyg. Tentamen testar kunskaper i Numeriska metoder men när algoritmer ska beskrivas kan MATLAB vara praktiskt. Läsanvisningar till kurslitteraturen finns på webbplatsen. Ordinarie tenta torsdag 29 oktober 8-11 i E-salar Omtenta 7 januari 8-11 i V-salar Yngve Sundblad Föreläsning 1 sid.3 SF 1518/19 ht 2015 31 aug.
Kurslitteratur beskriven och länkad på kurswebben Numeriska metoder: Antingen Gerd Erikssons häfte (finns på nätet, se kurs-pm) eller (hellre) Peter Pohls bok. Läsanvisningar till båda i kurs-pm / inför tentan (kurs-pm och på webben) Exempelsamling: Gerd Eriksson m.fl. (på nätet), används på alla övningar MATLAB: Antingen Hollys modernare (2015) bok eller Chapmans (2007) bok (om du har, användes tidigare) Carina Edlunds häfte Yngve Sundblad Föreläsning 1 sid.4 SF 1518/19 ht 2015 31 aug.
MATLAB Programmeringsmiljö för lösning av numeriska problem, utvecklad sedan 1970-talet av numeriker, spec. Cleve Moler, Univ. of New Mexico. Nu stor spridning. Behandlar framför allt data i matrisform (specialfall skalärer, strängar, vektorer). Även symbolisk matematik (nytt). Bred och stor uppsättning av operationer och funktioner för att lösa problem numeriskt: ekvationssystem, icke-linjära ekvationer, interpolation, integraler, differentialekvationer mm., dvs. alla typer av problem som ingår i numeriken i kursen. Dessutom paket för många tekniska specialområden, strömningsmekanik mm. Yngve Sundblad Föreläsning 1 sid.5 SF 1518/19 ht 2015 31 aug.
Tillgång till MATLAB I datorsalarna, starta med att klicka på Dash Home så kommer MATLAB-ikonen upp och kan dubbelklickas. Kan laddas ner till egna datorn från http://www.kth.se/en/student/kth-it-support/software/download/matlab Nu live demo intmax 2147483647 (2 31-1), 32 bitars heltal med teckenbit realmax 1.797e+308, 53 bitars taldel, 11 bitars exponentdel, båda med teckenbit eps 2.2204e-16 (2-52 ) Yngve Sundblad Föreläsning 1 sid.6 SF 1518/19 ht 2015 31 aug.
Analys av felkällor och osäkerhet Mer kommer senare i kursen Fel Vid numeriska beräkningar måste de flesta tal representeras av närmevärden. Om talet x representeras med x så är absolutfelet e x = x - x, relativfelet r x = (x - x) / x Närmevärdet c =300000 km/s till c (ljushastigheten) har absolutfelet ca 208 och relativfelet ca 0,0007. Eftersom absolutfelet är mindre än 500 = 0,5*10^3, har c (6-3)=3 korrekta siffror, bör snarare skrivas 3,00*10^5. Närmevärdet 3,1416 till pi har 4 korrekta decimaler (absolut fel 0,5*10^(-4)) och 5 korrekta siffror. Felgränser / osäkerhet Normalt vet man inte felet (eftersom x inte är känd, bara närmevärdet) utan måste nöja sig med felgränser/osäkerhet (E, R): e x E x ; r x R x Yngve Sundblad Föreläsning 1 sid.7 SF 1518/19 ht 2015 31 aug.
Källor till fel och osäkerhet Beräkningsprocesser avbryts: Trunkeringsfel Osäkerhet i indata: Indatafel Fel under beräkningsprocessen: Beräkningsfel, tex avrundningar Avkortning av utdata: Presentationsfel Yngve Sundblad Föreläsning 1 sid.8 SF 1518/19 ht 2015 31 aug.
Trunkeringsfel Många beräkningsprocesser bygger på att en procedur upprepas och så småningom avbryts. Vi kommer att se många exempel i metoder för att lösa ekvationer mm. När processen avbryts är kvarvarande felet / osäkerheten trunkeringsfelet. Här nöjer vi oss med exemplet att använda en serieutveckling. I en konvergerande alternerande avtagande serie är felet / osäkerheten högst den första försummade termen. ln(1+x)=x-x^2/2+x^3/3-x^4/4+x^5/5-x^6/6+x^7/7-x^8/8+x^9/9- som konvergerar för -1<x 1. Om man tar med 8 termer för att beräkna ln(1,5) blir felet/ osäkerheten (0,5^9)/9 = 0,0002 Gör man det för att beräkna ln(2) blir osäkerheten 1/9=0,11 Yngve Sundblad Föreläsning 1 sid.9 SF 1518/19 ht 2015 31 aug.
Felfortplantning vid elementära operationer (för mer komplexa operationer kommer senare) När man räknar med tal med felgränser fortplantar sig dessa: Addition z = x + y : e z = e x + e y ; E z = E x + E y Subtraktion z = x - y : e z = e x - e y ; E z = E x + E y (Obs! tecknet) Absolutfelgränserna adderas vid + - Multiplikation z = x * y : r z r x + r y ; R z R x + R y, ty r z =e z /xy = ((x+e x )(y+e y )-xy)/xy = (xe y + ye x +e x e y )/xy, e x e y försumbar Division z = x / y : r z r x - r y ; R z R x + R y, visas analogt Relativfelgränserna adderas vid * / Skalning z = a x : e z = a e x ; r z = r x ; E z = ae x ; R z = R x Exponentiering z = x^n : r z = nr x ; R z = nr x, ty e z = (x + e x )^n x^n nx^(n-1)e x, r z ne x /x = nr x ; R z nr x Yngve Sundblad Föreläsning 1 sid.10 SF 1518/19 ht 2015 31 aug.
Linjära ekvationssystem ( ) ( ) ( ) 2x 1 + 3x 2 4x 3 = -4 2 3-4 -4 x 1 9x 1 2x 2 = 5 A = 9-2 0 b = 5 x = x 2 5x 1 + x 2 x 3 = 4 5 1-1 4 x 3 På matrisform A x = b Lösning x 1 =1 x 2 =2 x 3 = 3, t.ex. med Gausselimination I MATLAB: A = [2 3-4; 9-2 0; 5 1-1] b = [-4 5 4] (transponat-operatorn är ) eller b=[ -5 x = A \ b 4 ger x = [1 2 3] 5] Yngve Sundblad Föreläsning 1 sid.11 SF 1518/19 ht 2015 31 aug.
Normer ( storleksmått ) för vektorer och matriser Absolutbeloppet för tal : a Euklidisk norm ( längd ) för vektor: x 2 = (x 1 2 + x 2 2 + + x n2 ) Motsvarande för matris är komplicerat, vi nöjer oss i kursen att använda Maxnorm ( oändlighetsnorm ): x oo = max (x k ); A oo = max k ( j a k,jj ), tyngsta raden För normerna gäller (med vektor som specialfall) Ax A * x ; AB A * B sa = s * A, s reellt A + B A + B (triangelolikheten) Yngve Sundblad Föreläsning 1 sid.12 SF 1518/19 ht 2015 31 aug.
Konditionstal och experimentell störningsräkning Konditionstalet för en beräkning är kvoten mellan relativfelgränsen för (osäkerheten i) indata och relativfelgränsen för utdata: K = R ut / R in För linjära ekvationssystem är det naturligt att använda normer för att ange osäkerheten. Ett sätt att mäta konditionstalet är att med experimentell störningsräkning modifiera indata lite och se hur mycket det påverkar utdata. Vid lösning av A x = b ger man b en störning e b och löser A y = b + e b Störningen i x är e x = y x R in = e b / b ; R ut = e x / x Yngve Sundblad Föreläsning 1 sid.13 SF 1518/19 ht 2015 31 aug.
Urartade ekvationssystem Flera ekvationer än obekanta (n): En lösning om bara n linjärt oberoende, t.ex. A =[1 2; 4 5; 5 7], b = [5 14 19] x = A\b ger [1 2] Annars ingen lösning men kan minsta-kvadrat-anpassas. A A x = b (Nästa avsnitt i kursen) Färre ekvationer än obekanta Många lösningar, A\b ger en, oftast riktig, lösning A = [1 2 3; 4 5 6], b = [6 15] A\b ger [1.5 0 1.5] Alla lösningar [1.5 0 1.5] + k*[-0.5 1-0.5], bl.a. [1 1 1], [0 3 0] Yngve Sundblad Föreläsning 1 sid.14 SF 1518/19 ht 2015 31 aug.