Vis enkel innførsel

dc.contributor.advisorStøvneng, Jon Andreas
dc.contributor.advisorNordam, Tor
dc.contributor.authorMikkelsen, Simen
dc.date.accessioned2017-03-10T16:00:00Z
dc.date.available2017-03-10T16:00:00Z
dc.date.created2017-02-20
dc.date.issued2017
dc.identifierntnudaim:11005
dc.identifier.urihttp://hdl.handle.net/11250/2433720
dc.description.abstractDet er skrevet et program i Python for å beregne parallell partikkeltransport. Som numerisk integrator ble fjerdeordens Runge-Kutta-metode brukt for å beregne partikkeltransporten i et hastighetsfelt gitt ved et analytisk uttrykk. Bevegelsen av hver partikkel er antatt å være uavhengig av de andre, en vanlig antagelse ved transport av løste partikler i vann. Programmet er kjørt i parallell på flere datamaskiner, inkludert superdatamaskinen Vilje ved NTNU. Kjøretiden for ulikt antall av parallelle prosesser ble målt og sammenlignet. Ytelsen ble funnet til å være meget bra. Hastighetsøkningen var bedre enn lineær skalering ved bruk av mellom 8 og 16 parallelle prosesser. Ved kjøring på flere enn 16 prosesser ble imidlertid ytelsen ikke bedre. Dette kommer av at programmet det da må kommuniseres mellom noder, som er tregere enn å kommunisere innad i en node. Det er demonstrert at kombinasjonen av Python og \emph{Message Passing Interface} kan bli brukt til å skrive vitenskapelig kildekode for parallelle simuleringer av partikkeltransport. Koden er svært kompakt og lesbar, sammenlignet med lignende kode i Fortran. En tentativ sammenligning viser at ytelsen til det mer høynivå programmeringsspråket Python ikke er signifikant dårligere enn til en tilsvarende kode skrevet i Fortran.
dc.languagenob
dc.publisherNTNU
dc.subjectFysikk og matematikk, Teknisk fysikk
dc.titleParallell partikkeltransport implementert i Python med MPI
dc.typeMaster thesis


Tilhørende fil(er)

Thumbnail
Thumbnail

Denne innførselen finnes i følgende samling(er)

Vis enkel innførsel