Most recent comments
Jogging og blogging
Are, 4 måneder, 2 uker
Liveblogg nyttårsaften 2016
Are, 4 måneder, 2 uker
Reading in dark times
Are, 6 måneder, 2 uker
Moldejazz 2016
Camilla, 10 måneder
Dørskilt
Karoline, 10 måneder, 2 uker
Halifax
Tor, 11 måneder, 1 uke
Sony Smartwatch 3 review
Tor, 11 måneder, 3 uker
Numerikk, takk
Tor, 12 måneder
Topp tur
Camilla, 1 år, 2 måneder
Tolkien reading day
Tor, 1 år, 2 måneder
50 book challenge
Camilla, 4 måneder, 4 uker
Ten years ago
Reed switch
Tor
Controls
Register

Numerisk fysikk

Jeg har tidligere nevnt at jeg har hatt en litt travel høst, fordi jeg har jobbet deltid på NTNU som foreleser i kvantemekanikk. Nå viser det seg at det også ligger an til å bli en travel vår, fordi jeg har tatt på meg nok et vikariat på NTNU, denne gangen som foreleser i numerisk fysikk. Jeg har riktignok redusert min vanlige stilling noe, men det blir likevel litt over 100%, så jeg har nok å holde på med.

Numerisk fysikk var et skikkelig kult fag å ta som student, og dedikerte lesere vil kanskje huske at jeg tok dette faget i 2008. Jeg mener å huske jeg tok faget fordi noen fortalte meg at det var en lur ting å gjøre hvis man ville ha en jobb, og i ettertid tror jeg at det muligens var noe av det lureste noen sa til meg i løpet av studietiden. Jeg lærte meg å programmere samtidig som jeg tok kurset, og i ettertid må jeg si at jeg er veldig fornøyd med at jeg valgte å bruke python, og ikke lisp, som var min opprinnelige idé. Det er mulig det hadde gått fint det også, men om lisp kanskje er mer elegant tror jeg det er et ubestridelig faktum at python er noe et noe mer matnyttig språk å kunne.

Det viser seg også at numerisk fysikk er et ganske kult fag å forelese. Det er på en måte et litt frakoblet fag, for det bygger ikke på noe spesielt annet enn litt generell kunnskap i fysikk og matematikk, og naturligvis litt programmering, og i og med at det vanligvis tas på våren fjerdeåret er det ingen andre fag som bygger videre på det. Dermed står man egentlig ganske fritt til å velge hva som skal gjennomgås. Som vikar for ett semester har jeg naturligvis valgt å holde meg relativt nært opptil fjorårets opplegg, som jeg har arvet i form av en 460-siders presentasjon skrevet i TeX, men litt justeringer finner jeg rom for. En av tingene jeg liker ganske godt er at jeg foreleser i et auditorium som har to store lerret, så jeg kan ha presentasjonen på en prosjektør, og en jupyter notebook med eksempler på den andre.

Jupyter notebook, som jeg såvidt har nevnt før, er et opplegg som lar deg kjøre python-kode (og forsåvidt en rekke andre språk) i nettleseren. Det høres kanskje ikke så veldig nyttig ut sånn i utgangspunktet, men det er mye kulere enn man kanskje skulle tro. Det lar deg organisere koden din som begrensede blokker, som kan redigeres og kjøres på nytt uavhengig av hverandre, det tillater at man plotter rett i dokumentet med matplotlib, og det finnes støtte for markdown og \(\LaTeX\) (via mathjax). Gode greier, rett og slett. Velegnet for litt interaktiv jobbing, og spesielt ypperlig for demonstrasjoner. Det eneste som har vært litt dumt er at man må ha jupyter installert for å kunne kjøre dem lokalt, og mens alle seriøse operativsystemer kommer med python installert er det ikke så vanlig at jupyter følger med. Ikke at det nødvendigvis er så vanskelig å installere, for eksempel har man jo Anaconda, som gjør det superduperkjempeenkelt å sette opp hele scientific-python-stacken på Windows, Mac og Linux, men likevel. Det hadde vært gjevt om man kunne legge opp sine notatbøker på nett på en måte som gjorde at de kunne kjøres interaktivt uten å laste ned noe.

Og, takket være de hyggelige folkene som har laget binder, kan man gjøre nettopp dette nå. Alt du trenger å gjøre er å putte koden på github, gi adressen til binder, og legge til en kodesnutt i readme-filen, og vips kan hvemsomhelst teste koden din i all sin interaktivitet. Det virker så bra at jeg nesten blir litt skeptisk, og jeg må innrømme at jeg lurer litt på hvordan denne tjenesten finansieres. Uansett, det ser ut til å funke, så om man skulle ønske å ta en titt på noen av eksemplene jeg har brukt i faget mitt er det bare å gå til repoet på github og trykke på launch binder (eller bare følge linken her.

Comments

Camilla,  22.02.16 07:54

Jeg tror faktisk at hvis jeg skal prøve å lære meg python på ordentlig vil dette være nyttig. Det virker som om det gjør ting mer håndterlige.

Men er det bare jeg som synes de første plottene i finite_difference ligner mistenkelig på de flygetingene i Commander Keen?
Tor likes this
Camilla,  22.02.16 07:54

Jeg tror faktisk at hvis jeg skal prøve å lære meg python på ordentlig vil dette være nyttig. Det virker som om det gjør ting mer håndterlige.

Men er det bare jeg som synes de første plottene i finite_difference ligner mistenkelig på de flygetingene i Commander Keen?
Tor,  24.02.16 07:09

Det er nok bare du.
Category
Physics
Tags
python
numerisk fysikk
binder
jupyter
Views
2847