MAT-INF1100 - forelesningsrapport, h?sten 2014

Her vil det komme en kort rapport om hva som ble gjennomg?tt p? hver forelesning.

Mandag 1/12. Aller f?rst ga jeg en rask oversikt over pensum. Deretter gjorde jeg en flervalgs eksamensoppgave med halveringsmetoden f?r jeg gjorde to oppgaver med induksjon, en eksamensoppgave og en fra Kalkulus, se opptak og forelesningsnotatene.

Onsdag 26/11. St?rstedelen av forelesningen i dag var demonstrasjon av hvordan vi kan gj?re beregninger p? lyd, se kapittel 8 i kompendiet. Vi ogs? raskt p? hvordan vi kan gj?re beregninger p? bilder, se kapittel 15 i kompendiet.

Mandag 24/11. Den regul?re pensumgjennomgangen er over, og i dag gjennomgikk vi to oppgaver om Taylorpolynomer og estimering av feil, oppgave 4b fra del 2 av eksamen h?sten 2013, og oppgave 3 fra del 2 av eksamen h?sten 2011.

Onsdag 19/11. Vi fortsatte serien om estimering av feil. Aller f?rst oppsummerte vi feilestimatene for de ulike metodene for numerisk integrasjon og vi s? hvordan vi kan bruke feilestimatene til ? finne en h (bredde p? delintervall) slik at feilen blir mindre enn en gitt epsilon. Deretter gikk vi over til en analyse av feilen i Eulers metode, se seksjon 13.4 i kompendiet. Vi gikk gjennom de grunnleggende ideene, men ikke alle detaljene. Vi s? ogs? p? den generelle formen p? feilestimatet og kategoriserte metoder etter hvilken ordens n?yaktighet de har. Til slutt s? vi raskt p? Runge Kutta av 2. og 4. orden.

Mandag 17/11. Vi begynte p? kapittel 7, der vi etablerte terminologi for koding og kompresjon. Hovedideen var ? bruke korte koder for symboler som forekommer ofte, og lengre koder for symboler som forekommer sjeldent. Vi illustrerte dette med et par eksempler, og s? at en kode m? ha det vi kaller for prefiksekgenskapen hvis de skal kunen brukes i praksis. Deretter s? vi p? hvordan Huffmankoding fungerer i praksis, spesielt hvordan Huffmantreet settes opp ut fra frekvensene til de forskjellige symbolene, og hvordan kodene for symbolene leses ut fra dette. Vi forklarte ogs? at Huffmankoder er optimale (med tanke p? hvor mange bits per symbol de bruker) blant alle koder som baserer seg p? bin?re s?ketr?r der symbolene er l?vnoder. 

Onsdag 12/11. Dagens forelesning var analog med mandagens, men denne gang var tema numerisk integrasjon. Vi gjennomgikk feilanalysen for midtpunktmetoden i seksjon 12.2 i detalj. F?r det viste jeg en oppsummering av de ulike metodene for numerisk derivasjon med feilestimater.

Mandag 10/11. Vi begynte p? feilanalysene, i dag for numerisk derivasjon. Vi gennomgikk seksjonene 11.1.2-11.1.4 i detalj. Lignende feilanalyser finner du i seksjonene 11.3-11.5. Disse trenger dere ikke lese, bare vite at den samme analysen kan gj?res der. Dere b?r dog kjenne til de ulike metodene for numerisk derivasjon og hva eksponenten p? h er i feilestimatet, det er det som er den viktigste egenskapen til hver metode.

Onsdag 5/11. Mer differensialligninger, denne gang andreordens line?re ligninger med konstante koeffisienter. Vi gikk enkelt og greit gjennom seksjonene 10.5 og 10.6, inkludert noen eksempler.

Mandag 3/11. Vi begynte med ? avslutte kapittel 13 i kompendiet ved ? se hvordan h?yereordens differensialligninger kan skrives som et system av f?rsteordensligninger. Deretter gikk vi over p? seksjon 10.4 i Kalkulus om hvordan vi i noen tilfeller kan finne en formel for l?sningen av separable differensialligninger. Deretter gjennomgikk vi seksjon 10.1 om hvordan f?rsteordens line?re ligninger kan l?ses ved hjelp av en formel. Vi s? p? eksempler p? begge l?sningsteknikker. 

Onsdag 29/10. Tema var ogs? i dag numerisk l?sning av differensialligninger. Vi repeterte f?rst  tolkningen av en differensialligning som en samling av tangenter og utledet deretter raskt Eulers metode en gang til. Deretter gjennomgikk vi Eulers midtpunktmetode (seksjon 13.7.1 i Kompendiet). Til slutt s? vi hvordan Eulers metode kan utvides til systemer av differensialligninger, seksjon 13.8.1 og 13.8.2 i Kompendiet.

Mandag 27/10. Aller f?rst repeterte vi kort derivasjon og numerisk derivasjon. Deretter begynte vi p? nytt tema: numerisk l?sning av differensialligninger, kapittel 13 i kompendiet. Vi startet med ? se hvordan en differensialligning kan oppst? gjennom Newtons andre lov, se eksempel 13.1.1. Deretter s? vi mer i detalj hva en differensialligning er, se seksjon 13.2.1-13.2.2, s?rlig figur 13.1. Deretter tok vi for oss ideen bak Eulers metode i seksjon 13.3.

Onsdag 22/10. Vi fortsatte v?r gjennomgang av numeriske teknikker. For stoffet i kapitlene 11-13 hopper vi forel?big over alle feilanalyser og fokuserer p? selve metodene og ideene som ligger bak. F?rst s? vi p? numerisk derivasjon, kapittel 11 i kompendiet. Vi gjennomgikk den enkleste metoden i seksjon 11.1 i detalj og vektla at metoden kan betraktes som om vi interpolerer en funksjon f i a og a+h med en rett linje (sekanten), og bruker den deriverte av sekanten i a som en tiln?rming til f'(a). Vi testet numerisk og s? at det fungerte. Denne strategien kan generaliseres ved ? interpolere i flere punkter, se seksjon 11.2. Vi nevnte kort noen av de andre metodene som framkommer p? denne m?ten.

Etter pause s? vi p? numerisk integrasjon p? samme m?te. Integralet til f mellom a og b er gitt ved arealet under grafen til f. Vi kan finne en god tiln?rming til dette ved ? dele [a,b] i delintervaller, tiln?rme f med et polynom p? hvert delintervall, integrere dette polynomet i steden for f og s? summere over alle delintervallene. Det enkleste er ? tiln?rme f med en konstanten gitt ved funksjonsverdien i midtpunktet - dette gir opphav til midtpunktmetoden. Det nest enkleste er ? tiln?rme med sekanten som g?r gjennom verdien til f i endepunktene (trapesmetoden). Det neste er kombinasjonen der vi interpolerer med en parabel i endepunktene og midtpunktet (Simpsons formel).

Mandag 20/10. Tema for denne forelesningen var stadig numerisk beregning av nullpunkter, n? sekantmetoden og Newtons metode. Vi gjennomgikk ideen bak begge metoder og demonstrerte programmer som viste hvordan begge metoder oppf?rer seg i praksis. Endelig s? vi p? situasjoner der metodene ikke fungerer.

Onsdag 15/10. Aller f?rst oppsummerte vi interpolasjon, seksjon 9.2 i kompendiet. Deretter gikk vi over p? det ? l?se ligninger numerisk. Vi gjennomgikk halveringsmetoden i detalj, s? p? algoritmen og hvordan den kan programmeres, og feilanalyse. P? grunn av tekniske problemer ble det ikke noe av opptaket. Forelesningen gjentas derfor mandag 20/10 kl. 08.15.

Mandag 13/10. Vi repeterte f?rst Taylor-polynomer ved ? gjennomg? eksempel 9.10 fra kompendiet. Deretter gjennomgikk vi seksjon 9.2 i kompendiet om interpolasjon. Dette gjorde vi ved ? l?se et kvadratisk interpolasjonsproblem, f?rst ved ? skrive polynomet p? standardform og deretter ved ? bruke Newton-formen.

Onsdag 1/10. Tema i dag var Taylors formel med restledd, seksjon 11.2 i Kalkulus. Vi begynte med ? utlede feilleddet ved hjelp av delvis integrasjon, og s? deretter p? eksempel 11.2.4 i detalj.

Mandag 29/9. Aller f?rst gikk vi raskt gjennom eksempel 6.27 i kompendiet med forklaring. Deretter begynte vi p? Taylor-polynomer, seksjon 11.1 i Kalkulus og f?rste tema for MAT-INF1100L studentene fra MAT-INF1100 (bortsett fra induksjon). Vi utledet formelen for Taylor-polynomer, regnet ut Taylor-polynomene til e^x, sin x og cos x, og s? fra det at Eulers formel, som gir sammenhengen mellom disse tre funksjonene, er naturlig.

Onsdag 24/9. I f?rste time gjennomgikk vi et eksempel p? l?sning av en inhomogen differensligning der vi det ? velge en partikul?r l?sning p? samme form som h?yresiden ikke fungerte, vi m?tte ?ke graden for ? f? det til. I andre time s? vi hvordan vi kunne l?se differensligninger gjennom numerisk simulering p? datamaskin. Vi avsluttet med et eksempel som oppf?rte seg merkelig, forklaringen kommer senere (merk at deler av denne forelesningen ble gjentatt med opptak, se siden med materiell fra forelesningene).

Mandag 22/9. Stadig mer om differenseligninger. Vi startet med to eksempler p? l?sning av homogen, andreordensligninger og gikk deretter over p? seksjon 4.2 i Kalkulus om l?sning av inhomogene differensligninger. Vi s? p? et par eksempler, men tar et til p? onsdag der vi m? ?ke graden p? partikul?rl?sningen.

Onsdag 17/9. Vi fortsatte med differensligninger og i dag utledet vi prosedyren for ? l?se homogen, andreordens, line?re differensligninger med konstante koeffisienter, seksjon 4.1 i Kalkulus. Vi gjennomgikk ikke alle bevisene, fokus var p? ? komme fram til l?sningsprosedyren.

Mandag 15/9. I matematikk gj?r vi stadig tiln?rminger og dermed trenger vi en m?te ? m?le feil p?. I dag s? vi p? absolutt feil og relativ feil, se seksjon 5.3 i kompendiet. Deretter gikk vi over p? kapittel 4 i Kalkulus som tar for seg differensligninger. Vi s? hvordan vi ganske enkelt kunne l?se line?re, f?rsteordens differensligninger med konstante koeffisienter, og gikk deretter over til line?re andreordens ligninger med konstante koeffisienter. Vi s? hvordan vi kunne finne en l?sning av slike ligninger ved ? gjette p? en l?sning p? samme form som for f?rsteordens ligninger, noe som endte opp med at vi m?tte l?se en andregradsligning. Vi fortsetter med dette stoffet p? onsdag.

Onsdag 10/9. Vi fortsatte der vi slapp sist onsdag, representasjon av reelle tall p? datamaskin. Vi repeterte f?rst normalformen for reelle tall, b?de desimalform og bin?rform og hvordan man ved hjelp av denne representerer reelle tall enten ved hjelp av 4 bytes eller 8 bytes, seksjon 4.2 i kompendiet. Dette gir naturlige begrensninger p? st?rrelsen og n?yaktigheten i tallene. Vi gikk deretter over til seksjon 5.2 om aritmetikk for flyttall. Vi brukte en lekedatamaskin som eksempel for ? holde ting enkelt og s? spesielt p? hvordan addisjon med flyttall gj?res. Det kritiske er at om vi subtraherer to nesten like tall mister vi mange siffer, i ekstreme tilfeller risikerer vi at alle sifrene i resultatet blir feil. Vi s? s? vidt ogs? at det fins spesialtall som 'Infinity' og 'NaN' som angir ulike feilsituasjoner. Til slutt gjennomgikk vi seksjon 5.4 som viser hvordan enkelte uttrykk som gir stor avrundingsfeil i spesielle situasjoner kan omskrives til en ekvivalent form som ikke skaper problemer. Det siste er nyttig for oppgave 3 i oblig1!!

Mandag 8/9. Vi snakket om hvordan tekst blir representert p? en datamaskin. Man m? f?rst ha definert et tegnsett, hvor vi nevnte ASCII, ISO Latin (med sine varianter), og Unicode som eksempler. Unicode var her det mest generelle, med ca. 100000 tegn, og ASCII var et subsett av de to andre. Sammen med tegnsettet defineres ogs? en tabell, som assosierer en kode (code point i kompendiet) til hvert tegn i tegnsettet. Til slutt trenger vi en regel (en enkoding), som forteller hvordan vi skal representere kodene i bytes p? en datamaskin (vi brukte alltid et helt antall bytes til ? representere et tegn). UTF-8 enkodingen representerer tegn med 1, 2, 3, eller 4 bytes, avhengig av hvor stor koden er. UTF-16 representerer tegnene p? en tilsvarende m?te med 2 eller 4 bytes. En og samme samme tekst kan bli vidt forskjellige n?r vi bruker forskjellige enkodinger. Spesielt s? vi at de s?rnorske bokstavene ?,?,? ikke kan kodes i ASCII siden de ikke er med i dette tegnsettet, mens de med ISO-Latin1 kodes med 1 byte, mens de med UTF-8 og UTF-16 begge kodes med to bytes, men p? to forskjellige m?ter. 

Onsdag 3/9. Det dreier seg stadig om representasjon av tall i andre siffersystemer enn det desimale. Vi repeterte f?rst eksempelet vi avsluttet med p? mandag som viste hvordan vi kan konvertere et reelt tall til beta-tallsystemet. Vi observerte at om tallet vi begynner med m? sifrene gjenta seg. Deretter karakteriserte vi alle tall i (0,1) som har en endelig sifferutvikling i beta-tallsystemet, f?r vi demonstrerte et Python-program som utf?rer konverteringen. Alt dette finner du i seksjon 3.3 i kompendiet. Deretter gikk vi over p? kapittel 4 og s? raskt hvordan heltall representeres p? datamaskin. Vi definerte dessuten normalformen til reelle tall, men rakk ikke beskrive fullt ut hvordan representasjonen av slike tall er p? datamaskin.

Mandag 1/9. I dag systematiserte vi metoden for ? konvertere heltall til siffersystemet med grunntall beta og testet den i et python-program. Deretter s? vi hvordan et tall i intervallet (0,1) kan skrives p? en entydig m?te med grunntall beta, seksjon 3.3.2 i kompendiet.

Onsdag 27/8. Vi s? f?rst p? aksiomene for reelle tall, seksjon 2.4 i Kalkulus. Deretter gikk vi over p? stoff fra kompendiet. Aller f?rst snakket vi om at det mest robuste er ? kode informasjon ved hjelp av to tegn, seksjon 2.1 i kompendiet. Programmet framover er ? se hvordan heltall, og s? flyttall kan representeres ved hjelp av 0 og 1. I dag gjennomgikk vi seksjon 3.1 og mesteparten av seksjon 3.2 i kompendiet om hvordan heltall kan representeres med et vilk?rlig grunntall, ikke bare 10. 

Mandag 25/8. Vi fortsatte forelesningene om tall, denne gangen om reelle tall. Vi startet i seksjon 2.1 og definerte notasjon for intervaller, definerte tallverdisymbolet og skrev opp trekantulikheten. Deretter gikk vi over til seksjon 2.2 om rasjonale og irrasjonale tall. Hovedresultatet som vi gjennomgikk med fullt bevis er at kvadratroten av 2 er irrasjonal.

Fredag 22/8. Vi s? i dag p? Pascals trekant og binomialteoremet, seksjon 1.4 i Kalkulus. Vi begynte med ? regne ut (a+b)^3 og (a+b)^4 og fors?ke ? gjenkjenne strukturen i uttrykkene. Denne gjenkjente vi som relasjonen mellom tallene i Pascals trekant, og til slutt viste vi at binomialkoeffisientene ogs? har samme egenskap som tallene i Pascals trekant. Dermed konkluderte vi med at binomialkoeffisientene er koeffisientene som inng?r n?r (a+b)^n ekspanderes ut.

Onsdag 20/8. I dag var tema induksjon, seksjon 1.2 i Kalkulus. Vi gjennomgikk et enkelt induksjonsbevis (for formelen for summen av de n f?rste heltallene) i detalj for ? avmystifisere noe som mange synes er litt mystisk. I andre time gjennomgikk vi et eksempel som var helt annerledes, se notatene.

Mandag 18/8. F?rste time brukte vi til litt forskjellig administrativ administrasjon, se kopi av lysarkene som er lagt ut. I andre time introduserte vi litt notasjon og grunnleggende egenskaper ved summetegn, se seksjon 1.1 i Kalkulus.

Av Knut M?rken
Publisert 5. aug. 2014 05:31 - Sist endret 1. des. 2014 22:03