Hopp til innhold
TasksAndActivitiesOppgaver og aktiviteter

Øvelse

Halveringstid – programmering i Python

På denne siden finner du et utvalg av oppgaver der du skal bruke programmeringsspråket Python til å utforske halveringstid, bruke funksjoner, tegne grafer og jobbe med aldersdatering. Oppgavene har en stigende vanskelighetsgrad, men prøv selv før du studerer fasiten.

FooterHeaderIconFooter iconLK20
Søyler og graf som viser at mengden radioaktive kjerner halveres for hvert 1600 år. Illustrasjon.

Halveringstid for radium er cirka 1600 år.

Halveringstid

Reaksjonslikning av uran som sender ut en heliumpartikkel og blir til Thorium. Illustrasjon.

En urankjerne sender ut en alfapartikkel (Heliumkjerne) og omdannes til Thorium. Dette kalles desintegrasjon.

Halveringstid er den tiden det tar før halvparten av atomene av et bestemt grunnstoff har sendt ut radioaktiv stråling og blitt forvandlet til et annet grunnstoff.

Andelen som fremdeles ikke har sendt ut stråling er uavhengig av hvor mye av grunnstoffet som er tilgjengelig, men avhenger bare av halveringstiden og hvor lang tid som er gått.

Hvor mange prosent av atomene som enda ikke har sendt ut stråling, kan beregnes med funksjonen p(t,h)=0.5th·100%, hvor h er halveringstiden til grunnstoffet og t er tiden som har gått.

Vi kan lage et program som ber brukeren om disse to verdiene og deretter beregner hvor mange prosent av mengden som gjenstår, slik:

Bruke funksjoner

En mer oversiktlig måte å få Python til å gjøre beregninger på, er å bruke funksjoner. Disse lages ved å skrive "def" etterfulgt av funksjonsnavn og hvilke variabler funksjonen trenger. Til slutt må vi skrive "return" for å angi hva funksjonen skal regne ut. Da kan vi lage det samme programmet som over på denne måten:

Forsøk å kjøre programmet noen ganger og se om det stemmer med det du vet om halveringstid. For eksempel: Skriv 6 for t og 3 for h. Da har det gått 2 halveringstider. Etter den første halveringstiden vil det være 50 % igjen og etter den andre halveringstiden vil det være 25 % igjen. Altså burde programmet gi 25 % som sitt svar.

En fordel med funksjoner er at du kan få programmet til å gjøre beregningen på nytt med andre tall ved å skrive p(t,h), der t og h er tall. Det er veldig nyttig i større program. Merk også at funksjoner skrives i toppen av koden, noe som kanskje kan være litt ulogisk i starten.

Grafer

Dersom du vil ha en graf som viser hvor mange prosent som gjenstår etter en viss tid, kan koden utvides slik:

Grafen viser hvor mye som er igjen av opprinnelig radioaktivt materiale gjennom 500 år. Illustrasjon.

Eksempel på graf for halveringstid du kan lage i Python.

Her har vi startet programmet med å importere to biblioteker (numpy og matplotlib.pyplot). Det gjør vi fordi Python selv ikke har noen måte å gjøre mer avanserte matematiske opperasjoner på, men kan "lære" seg det ved å bruke numpy. For å tegne en graf trenger Python matplotlib.pyplot for å gjøre det.

Kjør programmet med ulike verdier for tidslengde og halveringstid.

Hvor mange kilo er igjen?

Programmet vi har laget, angir hvor mange prosent som gjenstår av opprinnelig mengde. Et mer praktisk eksempel kan være at du har en klump med 2 kg av et radioaktivt grunnstoff. Forsøk å lage et program som viser hvor mange kilo du har igjen av stoffet i stedet for prosent.

Ekstraoppgave: Forsøk å endre programmet slik at brukeren kan angi hvor mange kilo hen starter med.

Formelsnuing: Finne halveringstiden

Tenk deg nå at du har mottatt en klump med radioaktivt materiale. Du vet ikke hvilket stoff det er snakk om, men du vet at dersom du klarer å finne halveringstiden til stoffet, kan det gi en indikasjon på hvilket stoff det er snakk om, siden alle grunnstoff har ulik halveringstid.

Formelen for halveringstid finner vi ved å snu på formelen vi hadde i det forrige eksempelet (prøv å snu den selv dersom du alt har lært om logaritmer!):
h=lg(0.5)lg(p)·t

Ved å gjøre en praktisk måling, finner du ut at 99,8% gjenstår etter én måned. Ta utgangspunkt i programmet over og skriv et program som regner ut halveringstiden til stoffet du har med å gjøre. Når du vil bruke lg, henter du den fra numpy ved å skrive "np.log":

Dersom du ønsker det, kan du lese om logaritmer her.

Aldersbesemmelse med karbon-14 (C-14-datering)

Apeskjelett – fossil med lang hale. Foto.

Ida – verdens eldste hele apeskjelett. Aldersbestemt med C-14-metoden.

Halveringstid brukes mye for å aldersbestemme steiner eller skjeletter. For skjeletter er karbon-14 et slikt radioaktivt stoff (radioaktiv isotop 14C) som brukes. Den samles opp i kroppen når et dyr spiser mat. Når dyret dør og ikke lenger spiser, vil mengden karbon-14 i skjelettet gradvis avta. Halveringstiden til karbon-14 er 5730 år, så hvis vi finner et skjelett og måler hvor mange prosent karbon-14 som er igjen i det, kan vi regne ut hvor gammelt det er ved å snu på funksjonen vår: t=lg(p100)lg(12)·h, hvor h nå er 5730. Forsøk å lage et program som finner ut hvor gammel et skjelett er ved å bruke denne funksjonen.

Utforskningsoppgave: Prøv programmet med litt forskjellige verdier. Kan du ut i fra resultatet si noe om hvorfor karbon-14 kan brukes på mammutskjelett, men ikke på dinosaurskjelett? Hvis du angir prosenten i desimaltall, må du bruke punktum i stedet for komma for at programmet skal forstå.

"{:.0f}".format brukes for å endre antall desimaler som python gir i svaret, her 0 desimaler.

Sist oppdatert 03.06.2021
Skrevet av Eirik Farestveit Erstad og Kristin Bøhle

Læringsressurser

Programmering i naturfag