Programmering og numerisk integrasjon

Del 2, alle hjelpemidler

Programmering og numerisk integrasjon

Funksjonen f er gitt ved

f(x)=32x

Programmet nedenfor beregner arealet avgrenset av grafen til f, x-aksen og linjene x=0 og x=2 ved hjelp av to ulike metoder.

start = 0
slutt = 2
n = 100

dx = (slutt-start)/n

def f(x):
    return 3**(2*x)

def areal_til_hoyre():
    areal = 0
    for i in range(n):
        x = start + i*dx
        areal = areal + f(x)*dx
    return areal

def areal_til_venstre():
    areal = 0
    for i in range(1, n+1):
        x = start + i*dx
        areal = areal + f(x)*dx
    return areal

print(areal_til_hoyre())
print(areal_til_venstre())
Hjelpemiddelkrav: For hånd

Forklar hvorfor den ene metoden vil gi en litt for høy verdi for arealet, og den andre metoden en litt for lav verdi.

Hjelpemiddelkrav: Krever PC

Lag et program som beregner arealet mer nøyaktig uten å dele det opp i flere deler. Ta utgangspunkt i koden nedenfor, og skriv ferdig funksjonen «bedre_metode()». Hvis du programmerer i et annet programmeringsspråk enn Python, må du først skrive en kode som samsvarer med koden nedenfor i språket du bruker.

Husk å legge ved skjermbilde av programmet du lager, og resultatet du får når du kjører programmet.

start = 0
slutt = 2
n = 100

dx = (slutt-start)/n

def f(x):
    return 3** (2*x)

def bedre_metode():
    areal = 0
    
    #Skriv ny kode her
    
    return areal
    
print(bedre_metode())
Fasit

areal_til_hoyre bruker venstre endepunkter (for lav), areal_til_venstre bruker høyre endepunkter (for høy)

Trapesmetode: (f(x) + f(x+dx)) / 2 * dx

Løsningsforslag

Funksjonen f(x)=32x=9x er strengt stigende på [0,2].

For en stigende funksjon gjelder:

  • areal_til_hoyre() bruker venstre endepunkt (x=0,Δx,2Δx,…) i hvert delintervall. Venstre endepunkt gir den minste funksjonsverdien → summerer for lav verdi.
  • areal_til_venstre() bruker høyre endepunkt (x=Δx,2Δx,…,2). Høyre endepunkt gir den største funksjonsverdien → summerer for høy verdi.

Det faktiske arealet (nøyaktig) er ∫029xdx=92−1ln⁡9≈36,4.

En bedre metode er trapesmetoden: vi bruker gjennomsnittet av funksjonsverdiene i begge endepunktene av hvert delintervall.

start = 0
slutt = 2
n = 100

dx = (slutt-start)/n

def f(x):
    return 3**(2*x)

def bedre_metode():
    areal = 0
    for i in range(n):
        x = start + i*dx
        areal = areal + (f(x) + f(x + dx)) / 2 * dx
    return areal

print(bedre_metode())

Trapesmetoden gir ≈36,415, som er svært nær den eksakte verdien ≈36,410.

Sensorveiledning

Oppgaven gir til sammen 4 poeng

2 poeng

Kandidaten må begrunne svaret godt for å få full uttelling. En mangelfull eller upresis forklaring kan gi 1 poeng.

2 poeng

Kandidater som kun endrer verdien for n får ingen uttelling. Program med riktig strategi, men feil svar kan gi 1 poeng.

Forstå oppgaven med en KI

Du får en ferdig tekst du limer inn i den KI-chatboten du bruker. Teksten inneholder oppgaven og en instruks om at chatboten skal hjelpe deg å tenke selv — stille spørsmål, gi ett hint av gangen og la deg gjøre regningen.

Anbefalt. Chatboten får beskjed om å bruke det til å veilede deg riktig vei — ikke til å røpe svaret. Du kan slå det av hvis du vil være helt sikker på at ingenting lekker.

Hva du bør vite
  • Ingenting sendes herfra. Teksten kopieres bare til utklippstavla på enheten din. Det du limer inn i en chatbot, går til den tjenesten — og de har sine egne regler for hva de lagrer.
  • Ikke lim inn personopplysninger — navn, skole eller noe annet om deg selv eller andre. Oppgaveteksten holder.
  • KI kan ta feil, også i matematikk. Sjekk alltid mot løsningsforslaget her på siden.
  • Er du usikker på om du har lov til å bruke KI på skolearbeidet ditt, spør læreren din først.

Tastatursnarveier

Navigasjon

⌘K / Ctrl+K
Åpne søk
G F
Gå til Fag
G E
Gå til Eksamener
G T
Gå til Temaer
G K
Gå til Kompetansemål
G H
Hjem
?
Vis snarveier

I oppgave

←/→ · J/K
Forrige / neste oppgave
0
Marker som ikke prøvd
1
Marker som prøvd
2
Marker som trenger hjelp
3
Marker som ferdig
S
Vis / skjul løsningsforslag
A
Legg til i liste
N
Skriv notat
Esc
Tilbake / avslutt