R2 eksamenVår 2016

Matematikk R2 eksamen – vår 2016

ifingo
Norsk (Bokmål)

ifingo · Matematikk R2

Matematikk R2 - eksamen vår 2016

Løsningsforslag til eksamenssettet fra Utdanningsdirektoratet.

Del 1 - uten hjelpemidler

Del 1 / Oppgave 1aDerivasjon og kjerneregel

Oppgave 1a

Oppgave: Deriver funksjonen \(f(x)=2\cos 5x\).
Original poengangivelse: Oppgave 1 (3 poeng).
Vis løsning

Hva spør oppgaven om? Vi skal derivere en cosinusfunksjon med kjernen \(5x\). Konstanten 2 beholdes, mens kjerneregelen gir en ekstra faktor 5.

  1. Identifiser oppbygningen
    Skriv \(f(x)=2\cos(5x)\). Den ytre funksjonen er cosinus, og den indre funksjonen er \(u=5x\).
  2. Deriver den ytre funksjonen
    \(\frac{d}{du}(\cos u)=-\sin u\).
  3. Deriver kjernen
    \(u' = 5\).
  4. Bruk kjerneregelen
    \(f'(x)=2\cdot[-\sin(5x)]\cdot 5\).
  5. Forenkle
    \[f'(x)=-10\sin(5x)\]
  6. Rimelighetskontroll
    Ved \(x=0\) er den deriverte 0, slik en cosinusgraf skal ha i et toppunkt.

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1Derivative(2 cos(5x), x)
Resultat: \(-10\sin(5x)\)
Tolkning: CAS bekrefter både minusfortegnet og faktoren 10.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, cos, sin, diff, simplify
x = symbols('x', real=True)
f = 2*cos(5*x)
result = diff(f, x)
expected = -10*sin(5*x)
print("f(x) =", f)
print("f'(x) =", result)
print("Kontroll =", simplify(result - expected))
assert simplify(result - expected) == 0
Kjørt utskriftf(x) = 2*cos(5*x)
f'(x) = -10*sin(5*x)
Kontroll = 0

Fasit: \(f'(x)=-10\sin(5x)\).

Vanlig feil: Å glemme faktoren 5 fra den indre funksjonen.
Sensorpunkt: Sensor ser etter korrekt kjerneregel og riktig minusfortegn.
Del 1 / Oppgave 1bProduktregel og kjerneregel

Oppgave 1b

Oppgave: Deriver funksjonen \(g(x)=e^{-2x}\sin x\).
Original poengangivelse: Oppgave 1 (3 poeng).
Vis løsning

Hva spør oppgaven om? Funksjonen er et produkt av en eksponentialfunksjon og en sinusfunksjon. Vi må bruke både produktregelen og kjerneregelen.

  1. Velg faktorene
    Sett \(u=e^{-2x}\) og \(v=\sin x\).
  2. Deriver første faktor
    Med kjerneregelen får vi \(u'=-2e^{-2x}\).
  3. Deriver andre faktor
    \(v'=\cos x\).
  4. Bruk produktregelen
    \((uv)'=u'v+uv'\).
  5. Sett inn
    \(g'(x)=-2e^{-2x}\sin x+e^{-2x}\cos x\).
  6. Faktoriser
    \[g'(x)=e^{-2x}(\cos x-2\sin x)\]

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1Derivative(exp(-2x) sin(x), x)
Resultat: \(e^{-2x}(\cos x-2\sin x)\)
Tolkning: Resultatet viser begge produktleddene samlet.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, exp, sin, cos, diff, factor, simplify
x = symbols('x', real=True)
g = exp(-2*x)*sin(x)
raw = diff(g, x)
result = factor(raw)
expected = exp(-2*x)*(cos(x)-2*sin(x))
print("g(x) =", g)
print("Derivert, utvidet =", raw)
print("Derivert, faktorisert =", result)
print("Kontroll =", simplify(raw-expected))
assert simplify(raw-expected) == 0
Kjørt utskriftg(x) = exp(-2*x)*sin(x)
Derivert, utvidet = -2*exp(-2*x)*sin(x) + exp(-2*x)*cos(x)
Derivert, faktorisert = (-2*sin(x) + cos(x))*exp(-2*x)
Kontroll = 0

Fasit: \(g'(x)=e^{-2x}(\cos x-2\sin x)\).

Vanlig feil: Å multiplisere de deriverte i stedet for å bruke produktregelen.
Sensorpunkt: Sensor ser etter produktregelen, faktoren -2 og den deriverte av sinus.
Del 1 / Oppgave 2aBestemt integral

Oppgave 2a

Oppgave: Bestem integralet \(\displaystyle \int_1^e \frac{3}{x}\,dx\).
Original poengangivelse: Oppgave 2 (4 poeng).
Vis løsning

Hva spør oppgaven om? Integranden er et konstant multiplum av \(1/x\), som har den naturlige logaritmen som stamfunksjon.

  1. Trekk ut konstanten
    \(\int_1^e 3/x\,dx=3\int_1^e 1/x\,dx\).
  2. Finn stamfunksjonen
    \(\int 1/x\,dx=\ln|x|+C\).
  3. Bruk grensene
    \(3[\ln x]_1^e\), siden intervallet ligger på den positive x-aksen.
  4. Sett inn øvre grense
    \(\ln e=1\).
  5. Sett inn nedre grense
    \(\ln 1=0\).
  6. Regn ut
    \[3(1-0)=3\]

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1Integral(3/x, x, 1, e)
Resultat: \(3\)
Tolkning: CAS gir den eksakte verdien 3.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, integrate, E, log, simplify
x = symbols('x', positive=True)
expr = 3/x
F = integrate(expr, x)
value = integrate(expr, (x, 1, E))
print("Integrand =", expr)
print("Stamfunksjon =", F)
print("ln(e) - ln(1) =", log(E)-log(1))
print("Bestemt integral =", value)
assert simplify(value-3) == 0
Kjørt utskriftIntegrand = 3/x
Stamfunksjon = 3*log(x)
ln(e) - ln(1) = 1
Bestemt integral = 3

Fasit: \(3\).

Vanlig feil: Å bruke tierlogaritmen eller glemme å trekke fra verdien ved nedre grense.
Sensorpunkt: Sensor ser etter stamfunksjonen \(3\ln x\) og korrekt grenseinnsetting.
Del 1 / Oppgave 2bDelbrøkoppspalting

Oppgave 2b

Oppgave: Bestem integralet \(\displaystyle \int \frac{2}{x^2-1}\,dx\).
Original poengangivelse: Oppgave 2 (4 poeng).
Vis løsning

Hva spør oppgaven om? Nevneren kan faktoriseres som en differanse av to kvadrater. Da kan brøken spaltes i to enkle logaritmeintegraler.

  1. Faktoriser nevneren
    \(x^2-1=(x-1)(x+1)\).
  2. Sett opp delbrøker
    \(\frac{2}{(x-1)(x+1)}=\frac{A}{x-1}+\frac{B}{x+1}\).
  3. Finn konstantene
    \(2=A(x+1)+B(x-1)\). Innsetting av \(x=1\) gir \(A=1\), og \(x=-1\) gir \(B=-1\).
  4. Skriv integranden på nytt
    \(\frac{2}{x^2-1}=\frac1{x-1}-\frac1{x+1}\).
  5. Integrer leddvis
    \(\ln|x-1|-\ln|x+1|+C\).
  6. Samle logaritmene
    \[\ln\left|\frac{x-1}{x+1}\right|+C\]

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1PartialFractions(2/(x^2-1))
Resultat: \(1/(x-1)-1/(x+1)\)
Tolkning: Oppspaltingen gjør integrasjonen direkte.
2Integral(2/(x^2-1), x)
Resultat: \(\ln|x-1|-\ln|x+1|\)
Tolkning: CAS-resultatet gjelder på intervaller som ikke krysser \(x=\pm1\).

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, apart, log, diff, simplify
x = symbols('x', real=True)
expr = 2/(x**2-1)
partial = apart(expr, x)
F = log((x-1)/(x+1))
check = simplify(diff(F, x)-expr)
print("Delbrøkoppspalting =", partial)
print("Valgt stamfunksjon =", F)
print("Derivert tilbake =", simplify(diff(F, x)))
print("Kontroll =", check)
assert check == 0
Kjørt utskriftDelbrøkoppspalting = -1/(x + 1) + 1/(x - 1)
Valgt stamfunksjon = log((x - 1)/(x + 1))
Derivert tilbake = 2/(x**2 - 1)
Kontroll = 0

Fasit: \(\displaystyle \ln\left|\frac{x-1}{x+1}\right|+C\).

Vanlig feil: Å glemme absoluttverdier eller få samme fortegn på begge delbrøkene.
Sensorpunkt: Sensor ser etter faktorisering, korrekt delbrøkoppspalting og integrasjonskonstant.
Del 1 / Oppgave 3aAreal med integral

Oppgave 3a

Oppgave: Funksjonen er gitt ved \(f(x)=\sin x\), \(x\in[0,\pi]\). Et flatestykke er avgrenset av x-aksen og grafen til \(f\). Regn ut arealet av flatestykket.
Original poengangivelse: Oppgave 3 (6 poeng).
Vis løsning

Hva spør oppgaven om? På intervallet \([0,\pi]\) er sinus ikke-negativ, så arealet er lik det bestemte integralet av funksjonen.

  1. Sett opp arealet
    \(A=\int_0^\pi \sin x\,dx\).
  2. Finn stamfunksjonen
    En stamfunksjon er \(-\cos x\).
  3. Bruk grensene
    \(A=[-\cos x]_0^\pi\).
  4. Sett inn øvre grense
    \(-\cos\pi=1\).
  5. Sett inn nedre grense
    \(-\cos0=-1\).
  6. Trekk fra
    \[A=1-(-1)=2\]
Arealet er området mellom grafen og x-aksen fra 0 til π.
Arealet er området mellom grafen og x-aksen fra 0 til π.

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1Integral(sin(x), x, 0, pi)
Resultat: \(2\)
Tolkning: Siden grafen ligger over x-aksen, er integralet også geometrisk areal.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, sin, pi, integrate, simplify
x = symbols('x', real=True)
area = integrate(sin(x), (x, 0, pi))
print("Arealintegral = Integral(sin(x), (x, 0, pi))")
print("Eksakt areal =", area)
print("Desimalverdi =", area.evalf())
assert simplify(area-2) == 0
Kjørt utskriftArealintegral = Integral(sin(x), (x, 0, pi))
Eksakt areal = 2
Desimalverdi = 2.00000000000000

Fasit: Flatearealet er \(2\) arealenheter.

Vanlig feil: Å få \(-2\) fordi grensene settes inn i feil rekkefølge.
Sensorpunkt: Sensor ser etter korrekt arealintegral og eksakt svar.
Del 1 / Oppgave 3bKontroll ved derivasjon

Oppgave 3b

Oppgave: Vis ved derivasjon at \(\displaystyle \int \sin^2 x\,dx=\frac12x-\frac12\sin x\cos x+C\).
Original poengangivelse: Oppgave 3 (6 poeng).
Vis løsning

Hva spør oppgaven om? For å vise at et uttrykk er en stamfunksjon, deriverer vi høyresiden og kontrollerer at resultatet blir \(\sin^2x\).

  1. Definer kandidaten
    La \(F(x)=\frac12x-\frac12\sin x\cos x\).
  2. Deriver første ledd
    \((x/2)'=1/2\).
  3. Deriver produktet
    \((\sin x\cos x)'=\cos^2x-\sin^2x\).
  4. Sett sammen
    \(F'(x)=\frac12-\frac12(\cos^2x-\sin^2x)\).
  5. Bruk identiteten
    Siden \(1=\sin^2x+\cos^2x\), får vi \(F'=\sin^2x\).
  6. Konkluder
    Dermed er \(F(x)+C\) en stamfunksjon til \(\sin^2x\).

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1Derivative(x/2 - sin(x) cos(x)/2, x)
Resultat: \(\sin^2x\)
Tolkning: Trigonometrisk forenkling bekrefter påstanden.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, sin, cos, diff, trigsimp, simplify
x = symbols('x', real=True)
F = x/2 - sin(x)*cos(x)/2
result = trigsimp(diff(F, x))
print("F(x) =", F)
print("F'(x), før forenkling =", diff(F, x))
print("F'(x), trigonometrisk forenklet =", result)
print("Kontroll =", simplify(result-sin(x)**2))
assert simplify(result-sin(x)**2) == 0
Kjørt utskriftF(x) = x/2 - sin(x)*cos(x)/2
F'(x), før forenkling = sin(x)**2/2 - cos(x)**2/2 + 1/2
F'(x), trigonometrisk forenklet = sin(x)**2
Kontroll = 0

Fasit: Påstanden er vist fordi den deriverte av høyresiden er \(\sin^2x\).

Vanlig feil: Å derivere \(\sin x\cos x\) uten produktregelen.
Sensorpunkt: Sensor ser etter en fullstendig derivasjon og bruk av en trigonometrisk identitet.
Del 1 / Oppgave 3cVolum av omdreiningslegeme

Oppgave 3c

Oppgave: Vi roterer flatestykket 360° om x-aksen. Regn ut volumet av omdreiningslegemet vi da får.
Original poengangivelse: Oppgave 3 (6 poeng).
Vis løsning

Hva spør oppgaven om? Ved rotasjon om x-aksen bruker vi skivemetoden. Radius i hver skive er \(f(x)=\sin x\).

  1. Skriv volumformelen
    \(V=\pi\int_a^b [f(x)]^2\,dx\).
  2. Sett inn funksjon og grenser
    \(V=\pi\int_0^\pi\sin^2x\,dx\).
  3. Bruk stamfunksjonen fra b
    \(\int\sin^2x\,dx=\frac12x-\frac12\sin x\cos x\).
  4. Sett inn grensene
    \(V=\pi[\frac12x-\frac12\sin x\cos x]_0^\pi\).
  5. Forenkle randleddene
    Sinus er 0 både ved 0 og \(\pi\), så integralet er \(\pi/2\).
  6. Multipliser med π
    \[V=\pi\cdot\frac\pi2=\frac{\pi^2}{2}\]
Legemet har radius sin x og spisser i x=0 og x=π.
Legemet har radius sin x og spisser i x=0 og x=π.

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1pi * Integral(sin(x)^2, x, 0, pi)
Resultat: \(\pi^2/2\)
Tolkning: CAS beregner skiveintegralet eksakt.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, sin, pi, integrate, simplify, N
x = symbols('x', real=True)
section_integral = integrate(sin(x)**2, (x, 0, pi))
volume = pi*section_integral
print("Integral av radius^2 =", section_integral)
print("Volum, eksakt =", volume)
print("Volum, desimal =", N(volume, 10))
assert simplify(volume-pi**2/2) == 0
Kjørt utskriftIntegral av radius^2 = pi/2
Volum, eksakt = pi**2/2
Volum, desimal = 4.934802201

Fasit: \(V=\frac{\pi^2}{2}\) volumenheter.

Vanlig feil: Å glemme kvadratet på radius eller faktoren \(\pi\).
Sensorpunkt: Sensor ser etter korrekt skiveformel, grenser og eksakt volum.
Del 1 / Oppgave 4aGeometrisk rekke

Oppgave 4a

Oppgave: Rekken \(\frac12+\frac14+\frac18+\frac1{16}+\cdots+\frac1{2^n}\) er gitt. Forklar at dette er en geometrisk rekke. Bestem et uttrykk for summen \(S_n\) av de \(n\) første leddene i rekken.
Original poengangivelse: Oppgave 4 (5 poeng).
Vis løsning

Hva spør oppgaven om? Vi undersøker forholdet mellom to påfølgende ledd og bruker sumformelen for en endelig geometrisk rekke.

  1. Finn første ledd
    \(a_1=1/2\).
  2. Finn kvotienten
    \((1/4)/(1/2)=1/2\), og det samme forholdet gjelder videre. Derfor er rekken geometrisk.
  3. Skriv sumformelen
    \(S_n=a_1\frac{1-k^n}{1-k}\).
  4. Sett inn verdiene
    \(S_n=\frac12\frac{1-(1/2)^n}{1-1/2}\).
  5. Forenkle nevneren
    Faktoren \(1/2\) i teller og nevner kanselleres.
  6. Skriv svaret
    \[S_n=1-\frac1{2^n}\]

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1Sum((1/2)^j, j, 1, n)
Resultat: \(1-2^{-n}\)
Tolkning: CAS gir samme lukkede uttrykk.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, summation, simplify
j, n = symbols('j n', integer=True, positive=True)
S = summation((1/2)**j, (j, 1, n))
expected = 1 - (1/2)**n
print("Symbolsk sum =", S)
print("Forventet form =", expected)
print("Forenklet forskjell =", simplify(S-expected))
assert simplify(S-expected) == 0
Kjørt utskriftSymbolsk sum = 1.0 - 2.0*0.5**(n + 1)
Forventet form = 1 - 0.5**n
Forenklet forskjell = 0

Fasit: \(S_n=1-\frac1{2^n}\).

Vanlig feil: Å bruke \(n-1\) i eksponenten i sumformelen når første ledd allerede er \(a_1\).
Sensorpunkt: Sensor ser etter begrunnelse for geometrisk rekke og korrekt sumformel.
Del 1 / Oppgave 4bPotensregler og rekker

Oppgave 4b

Oppgave: Vi har gitt produktet \(P_n(x)=\sqrt{x}\cdot\sqrt[4]{x}\cdot\sqrt[8]{x}\cdot\sqrt[16]{x}\cdots\sqrt[2^n]{x}\), \(x>0\). Vis at \(P_n(x)=x^{1-1/2^n}\).
Original poengangivelse: Oppgave 4 (5 poeng).
Vis løsning

Hva spør oppgaven om? Hver rot kan skrives som en potens av \(x\). Når potenser med samme grunntall multipliseres, summeres eksponentene.

  1. Skriv røttene som potenser
    \(\sqrt[2^j]{x}=x^{1/2^j}\).
  2. Skriv hele produktet
    \(P_n=x^{1/2}x^{1/4}\cdots x^{1/2^n}\).
  3. Bruk produktregelen for potenser
    \(P_n=x^{1/2+1/4+\cdots+1/2^n}\).
  4. Gjenkjenn eksponentsummen
    Eksponenten er nettopp den geometriske summen \(S_n\) fra del a.
  5. Sett inn sumformelen
    \(S_n=1-1/2^n\).
  6. Konkluder
    \[P_n(x)=x^{1-1/2^n}\]

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1Simplify(Product(x^(1/2^j), j, 1, n))
Resultat: \(x^{1-2^{-n}}\)
Tolkning: For \(x>0\) kan potensene samles uten fortegnsproblemer.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, summation, simplify
x = symbols('x', positive=True)
j, n = symbols('j n', integer=True, positive=True)
exponent = summation(2**(-j), (j, 1, n))
Pn = x**exponent
expected = x**(1-2**(-n))
print("Eksponentsum =", exponent)
print("P_n(x) =", Pn)
print("Kontroll av eksponent =", simplify(exponent-(1-2**(-n))))
assert simplify(exponent-(1-2**(-n))) == 0
Kjørt utskriftEksponentsum = 1 - 2*2**(-n - 1)
P_n(x) = x**(1 - 2*2**(-n - 1))
Kontroll av eksponent = 0

Fasit: \(P_n(x)=x^{1-1/2^n}\).

Vanlig feil: Å multiplisere eksponentene i stedet for å addere dem.
Sensorpunkt: Sensor ser etter omskriving til potenser og koblingen til summen fra del a.
Del 1 / Oppgave 4cGrenseverdi

Oppgave 4c

Oppgave: Bestem \(\displaystyle \lim_{n\to\infty}P_n(x)\).
Original poengangivelse: Oppgave 4 (5 poeng).
Vis løsning

Hva spør oppgaven om? Vi bruker uttrykket fra del b og undersøker hva som skjer med eksponenten når \(n\) går mot uendelig.

  1. Start med uttrykket
    \(P_n(x)=x^{1-1/2^n}\).
  2. Finn grensen til brøken
    \(2^n\to\infty\), derfor \(1/2^n\to0\).
  3. Finn grensen til eksponenten
    \(1-1/2^n\to1\).
  4. Bruk kontinuitet
    For \(x>0\) er funksjonen \(a\mapsto x^a\) kontinuerlig.
  5. Flytt grensen inn i potensen
    \(\lim P_n=x^{\lim(1-1/2^n)}\).
  6. Konkluder
    \[\lim_{n\to\infty}P_n(x)=x\]

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1Limit(x^(1-1/2^n), n, infinity)
Resultat: \(x\)
Tolkning: CAS bekrefter grensen under forutsetningen \(x>0\).

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, limit, oo, simplify
x = symbols('x', positive=True)
n = symbols('n', integer=True, positive=True)
Pn = x**(1-2**(-n))
value = limit(Pn, n, oo)
print("P_n(x) =", Pn)
print("Grenseverdi =", value)
print("Kontroll =", simplify(value-x))
assert simplify(value-x) == 0
Kjørt utskriftP_n(x) = x**(1 - 1/2**n)
Grenseverdi = x
Kontroll = 0

Fasit: \(\displaystyle \lim_{n\to\infty}P_n(x)=x\) for \(x>0\).

Vanlig feil: Å tro at hele eksponenten går mot 0 i stedet for 1.
Sensorpunkt: Sensor ser etter grensen \(2^{-n}\to0\) og bruk av kontinuitet.
Del 1 / Oppgave 5aTrigonometriske likninger

Oppgave 5a

Oppgave: Funksjonen er gitt ved \(f(x)=3\cos 2x\), \(x\in[0,2\pi]\). Bestem eventuelle nullpunkter til \(f\).
Original poengangivelse: Oppgave 5 (6 poeng).
Vis løsning

Hva spør oppgaven om? Nullpunkter oppstår når cosinusfaktoren er 0. Vi løser likningen og avgrenser løsningene til det oppgitte intervallet.

  1. Sett funksjonen lik null
    \(3\cos2x=0\).
  2. Del på 3
    \(\cos2x=0\).
  3. Bruk den generelle cosinusløsningen
    \(2x=\pi/2+k\pi\), \(k\in\mathbb Z\).
  4. Løs for x
    \(x=\pi/4+k\pi/2\).
  5. Velg løsninger i intervallet
    For \(k=0,1,2,3\) får vi fire løsninger i \([0,2\pi]\).
  6. Skriv nullpunktene
    \[x=\frac\pi4,\frac{3\pi}4,\frac{5\pi}4,\frac{7\pi}4\]

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1Solve(3 cos(2x)=0, x, 0 <= x <= 2pi)
Resultat: \(\pi/4,3\pi/4,5\pi/4,7\pi/4\)
Tolkning: Alle kandidatene ligger i definisjonsintervallet.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import pi, cos, simplify
roots = [pi/4, 3*pi/4, 5*pi/4, 7*pi/4]
values = [simplify(3*cos(2*r)) for r in roots]
print("Nullpunktkandidater =", roots)
print("Funksjonsverdier =", values)
print("Alle ligger i [0, 2*pi] =", all(0 <= r <= 2*pi for r in roots))
assert values == [0, 0, 0, 0]
Kjørt utskriftNullpunktkandidater = [pi/4, 3*pi/4, 5*pi/4, 7*pi/4]
Funksjonsverdier = [0, 0, 0, 0]
Alle ligger i [0, 2*pi] = True

Fasit: Nullpunktene er \((\pi/4,0),(3\pi/4,0),(5\pi/4,0),(7\pi/4,0)\).

Vanlig feil: Å løse \(\cos x=0\) og glemme at argumentet er \(2x\).
Sensorpunkt: Sensor ser etter generell løsning og korrekt intervallkontroll.
Del 1 / Oppgave 5bEkstremalpunkter

Oppgave 5b

Oppgave: Bestem eventuelle topp- eller bunnpunkter på grafen til \(f(x)=3\cos2x\) for \(x\in[0,2\pi]\).
Original poengangivelse: Oppgave 5 (6 poeng).
Vis løsning

Hva spør oppgaven om? Vi finner stasjonære punkter ved å løse \(f'(x)=0\), og tar også med endepunktene i det lukkede intervallet.

  1. Deriver
    \(f'(x)=-6\sin2x\).
  2. Finn kritiske x-verdier
    \(\sin2x=0\Rightarrow2x=k\pi\Rightarrow x=k\pi/2\).
  3. Avgrens til intervallet
    \(x=0,\pi/2,\pi,3\pi/2,2\pi\).
  4. Beregn funksjonsverdiene
    Verdiene alternerer mellom 3 og -3.
  5. Klassifiser
    Når \(\cos2x=1\) får vi toppverdi 3; når \(\cos2x=-1\) får vi bunnverdi -3.
  6. Skriv punktene
    Topp: \((0,3),(\pi,3),(2\pi,3)\). Bunn: \((\pi/2,-3),(3\pi/2,-3)\).

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1Extremum(3 cos(2x), 0, 2pi)
Resultat: Maksimum 3 og minimum -3
Tolkning: CAS-verdiene stemmer med amplituden 3.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, pi, cos, sin, diff
x = symbols('x', real=True)
f = 3*cos(2*x)
critical = [0, pi/2, pi, 3*pi/2, 2*pi]
values = [(c, f.subs(x,c)) for c in critical]
print("f'(x) =", diff(f,x))
print("Kritiske punkter og endepunkter =", values)
print("Maksimal verdi =", max(v for _,v in values))
print("Minimal verdi =", min(v for _,v in values))
assert [v for _,v in values] == [3,-3,3,-3,3]
Kjørt utskriftf'(x) = -6*sin(2*x)
Kritiske punkter og endepunkter = [(0, 3), (pi/2, -3), (pi, 3), (3*pi/2, -3), (2*pi, 3)]
Maksimal verdi = 3
Minimal verdi = -3

Fasit: Toppunkter: \((0,3),(\pi,3),(2\pi,3)\). Bunnpunkter: \((\pi/2,-3),(3\pi/2,-3)\).

Vanlig feil: Å utelate endepunktene eller bare oppgi y-verdiene.
Sensorpunkt: Sensor ser etter kritiske punkter, endepunkter og koordinater.
Del 1 / Oppgave 5cGrafskisse

Oppgave 5c

Oppgave: Lag en skisse av grafen til \(f(x)=3\cos2x\) for \(x\in[0,2\pi]\).
Original poengangivelse: Oppgave 5 (6 poeng).
Vis løsning

Hva spør oppgaven om? En god skisse bygges fra amplitude, periode, nullpunkter og ekstremalpunkter.

  1. Finn amplituden
    Amplituden er 3, så grafen varierer mellom -3 og 3.
  2. Finn perioden
    Perioden er \(2\pi/2=\pi\). Det blir to hele perioder på intervallet.
  3. Marker startpunktet
    \(f(0)=3\).
  4. Marker nullpunktene
    Bruk de fire nullpunktene fra del a.
  5. Marker topp- og bunnpunktene
    Bruk punktene fra del b.
  6. Tegn en jevn cosinuskurve
    Kurven skal passere alle punktene og gjenta seg etter \(\pi\).
Kontrollert skisse av f(x)=3 cos(2x) på [0, 2π].
Kontrollert skisse av f(x)=3 cos(2x) på [0, 2π].

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1Curve(t, 3 cos(2t), t, 0, 2pi)
Resultat: Graf med to perioder
Tolkning: Grafen viser amplitude 3 og periode \(\pi\).

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import pi, cos
key_x = [0, pi/4, pi/2, 3*pi/4, pi, 5*pi/4, 3*pi/2, 7*pi/4, 2*pi]
key_y = [3*cos(2*v) for v in key_x]
print("Nøkkelpunkter:")
for a,b in zip(key_x,key_y):
    print(a, "->", b)
print("Periode =", pi)
assert key_y == [3,0,-3,0,3,0,-3,0,3]
Kjørt utskriftNøkkelpunkter:
0 -> 3
pi/4 -> 0
pi/2 -> -3
3*pi/4 -> 0
pi -> 3
5*pi/4 -> 0
3*pi/2 -> -3
7*pi/4 -> 0
2*pi -> 3
Periode = pi

Fasit: Grafen er en cosinuskurve med amplitude 3, periode \(\pi\) og de markerte nøkkelpunktene.

Vanlig feil: Å tegne bare én periode eller bruke periode \(2\pi\).
Sensorpunkt: Sensor ser etter riktig amplitude, periode, nullpunkter og ekstremalpunkter.
Del 1 / Oppgave 6Lineær differensiallikning

Oppgave 6

Oppgave: Løs differensiallikningen \(y'-xy=x\), \(y(0)=1\).
Original poengangivelse: Oppgave 6 (3 poeng).
Vis løsning

Hva spør oppgaven om? Dette er en lineær førsteordens differensiallikning. Vi bruker integrerende faktor.

  1. Skriv standardformen
    \(y'+p(x)y=q(x)\) med \(p(x)=-x\) og \(q(x)=x\).
  2. Finn integrerende faktor
    \(\mu(x)=e^{\int -x\,dx}=e^{-x^2/2}\).
  3. Multipliser likningen
    \(e^{-x^2/2}y'-xe^{-x^2/2}y=xe^{-x^2/2}\).
  4. Gjenkjenn produktderivert
    \((ye^{-x^2/2})'=xe^{-x^2/2}\).
  5. Integrer
    \(ye^{-x^2/2}=-e^{-x^2/2}+C\), fordi \((e^{-x^2/2})'=-xe^{-x^2/2}\).
  6. Isoler y og bruk initialverdien
    \(y=-1+Ce^{x^2/2}\). Fra \(1=-1+C\) får vi \(C=2\).
  7. Skriv løsningen
    \[y(x)=2e^{x^2/2}-1\]

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1SolveODE(y' - x y = x, y(0)=1)
Resultat: \(y=2e^{x^2/2}-1\)
Tolkning: CAS-løsningen oppfyller både likningen og initialbetingelsen.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, Function, Eq, dsolve, diff, exp, simplify
x = symbols('x', real=True)
y = Function('y')
ode = Eq(diff(y(x),x)-x*y(x), x)
solution = dsolve(ode, ics={y(0):1})
rhs = solution.rhs
residual = simplify(diff(rhs,x)-x*rhs-x)
print("Differensiallikning =", ode)
print("Løsning =", solution)
print("y(0) =", rhs.subs(x,0))
print("Residual =", residual)
assert rhs.subs(x,0)==1 and residual==0
Kjørt utskriftDifferensiallikning = Eq(-x*y(x) + Derivative(y(x), x), x)
Løsning = Eq(y(x), 2*exp(x**2/2) - 1)
y(0) = 1
Residual = 0

Fasit: \(y(x)=2e^{x^2/2}-1\).

Vanlig feil: Å bruke integrerende faktor \(e^{x^2/2}\) med feil fortegn.
Sensorpunkt: Sensor ser etter metode, integrasjonskonstant, initialbetingelse og kontroll.
Del 1 / Oppgave 7aPlan og normalvektor

Oppgave 7a

Oppgave: Punktene \(A(1,-4,1)\) og \(B(3,0,5)\) ligger i planet \(\alpha\). Vektoren \(\vec n_\alpha=[k,1,-k]\) står normalt på \(\alpha\) for en bestemt verdi av konstanten \(k\). Vis at planet \(\alpha\) er gitt ved \(2x+y-2z+4=0\).
Original poengangivelse: Oppgave 7 (7 poeng).
Vis løsning

Hva spør oppgaven om? En normalvektor til planet må stå vinkelrett på alle retningsvektorer i planet, særlig \(\overrightarrow{AB}\).

  1. Finn retningsvektoren
    \(\overrightarrow{AB}=B-A=[2,4,4]\).
  2. Bruk ortogonalitet
    \([k,1,-k]\cdot[2,4,4]=0\).
  3. Løs for k
    \(2k+4-4k=0\Rightarrow k=2\).
  4. Finn normalvektoren
    \(\vec n_\alpha=[2,1,-2]\).
  5. Bruk punkt-normal-form
    Gjennom A: \(2(x-1)+(y+4)-2(z-1)=0\).
  6. Forenkle
    \[2x+y-2z+4=0\]

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1Dot((k,1,-k),(2,4,4))
Resultat: \(4-2k\)
Tolkning: Likningen \(4-2k=0\) gir \(k=2\).
2Expand(2(x-1)+(y+4)-2(z-1))
Resultat: \(2x+y-2z+4\)
Tolkning: Punkt-normal-formen gir den oppgitte planlikningen.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, Matrix, solve, expand
k,x,y,z = symbols('k x y z', real=True)
AB = Matrix([2,4,4])
n = Matrix([k,1,-k])
dot = n.dot(AB)
k_value = solve(dot,k)[0]
plane = expand(2*(x-1)+(y+4)-2*(z-1))
print("AB =", AB.T)
print("Skalarprodukt =", dot)
print("k =", k_value)
print("Planuttrykk =", plane)
assert k_value==2 and plane==2*x+y-2*z+4
Kjørt utskriftAB = Matrix([[2, 4, 4]])
Skalarprodukt = 4 - 2*k
k = 2
Planuttrykk = 2*x + y - 2*z + 4

Fasit: Planet er \(2x+y-2z+4=0\).

Vanlig feil: Å bruke punktvektoren A i skalarproduktet i stedet for retningsvektoren AB.
Sensorpunkt: Sensor ser etter ortogonalitetsbetingelsen, k-verdien og punkt-normal-form.
Del 1 / Oppgave 7bSkjæring med koordinatakse

Oppgave 7b

Oppgave: Planet \(\alpha\) skjærer z-aksen i punktet \(C\). Bestem koordinatene til \(C\).
Original poengangivelse: Oppgave 7 (7 poeng).
Vis løsning

Hva spør oppgaven om? Alle punkter på z-aksen har \(x=0\) og \(y=0\). Vi setter dette inn i planlikningen.

  1. Bruk planlikningen
    \(2x+y-2z+4=0\).
  2. Beskriv z-aksen
    På z-aksen er \(x=0\) og \(y=0\).
  3. Sett inn
    \(-2z+4=0\).
  4. Løs
    \(z=2\).
  5. Skriv koordinatene
    \(C=(0,0,2)\).
  6. Kontroller
    \(2\cdot0+0-2\cdot2+4=0\).

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1Intersect(2x+y-2z+4=0, x=0, y=0)
Resultat: \(C=(0,0,2)\)
Tolkning: Skjæringen oppfyller både z-aksen og planet.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, solve, Eq
z = symbols('z', real=True)
z_value = solve(Eq(-2*z+4,0),z)[0]
C = (0,0,z_value)
check = 2*C[0]+C[1]-2*C[2]+4
print("z =", z_value)
print("C =", C)
print("Kontroll i planet =", check)
assert C==(0,0,2) and check==0
Kjørt utskriftz = 2
C = (0, 0, 2)
Kontroll i planet = 0

Fasit: \(C=(0,0,2)\).

Vanlig feil: Å sette bare én av koordinatene lik 0.
Sensorpunkt: Sensor ser etter korrekt parameterisering av z-aksen og innsetting i planet.
Del 1 / Oppgave 7cVolum med determinant

Oppgave 7c

Oppgave: Bestem volumet av pyramiden \(ABCO\), der \(O\) er origo.
Original poengangivelse: Oppgave 7 (7 poeng).
Vis løsning

Hva spør oppgaven om? Pyramiden er et tetraeder med hjørne i origo. Volumet er en sjettedel av absoluttverdien av determinantproduktet til tre kantvektorer.

  1. Velg kantvektorer fra O
    \(\overrightarrow{OA}=[1,-4,1]\), \(\overrightarrow{OB}=[3,0,5]\), \(\overrightarrow{OC}=[0,0,2]\).
  2. Skriv volumformelen
    \(V=\frac16|\det(\overrightarrow{OA},\overrightarrow{OB},\overrightarrow{OC})|\).
  3. Sett opp determinanten
    \(\det\begin{pmatrix}1&-4&1\\3&0&5\\0&0&2\end{pmatrix}\).
  4. Beregn determinanten
    Utvikling etter siste rad gir \(2(1\cdot0-(-4)\cdot3)=24\).
  5. Ta absoluttverdi og del på 6
    \(V=|24|/6\).
  6. Konkluder
    \[V=4\]

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1abs(Determinant({{1,-4,1},{3,0,5},{0,0,2}}))/6
Resultat: \(4\)
Tolkning: Determinanten gir det orienterte parallellpipedvolumet; deling på 6 gir tetraedervolumet.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import Matrix, Rational
M = Matrix([[1,-4,1],[3,0,5],[0,0,2]])
det = M.det()
volume = abs(det)/6
print("Matrise =")
print(M)
print("Determinant =", det)
print("Pyramidevolum =", volume)
assert volume==4
Kjørt utskriftMatrise =
Matrix([[1, -4, 1], [3, 0, 5], [0, 0, 2]])
Determinant = 24
Pyramidevolum = 4

Fasit: Volumet er \(4\) volumenheter.

Vanlig feil: Å dele på 3 i stedet for 6, eller å glemme absoluttverdien.
Sensorpunkt: Sensor ser etter en gyldig volumformel og korrekt determinant.
Del 1 / Oppgave 7dAvstand og normalprojeksjon

Oppgave 7d

Oppgave: En kule har sentrum i origo og tangerer planet \(\alpha\) i et punkt \(P\). Bestem koordinatene til punktet \(P\).
Original poengangivelse: Oppgave 7 (7 poeng).
Vis løsning

Hva spør oppgaven om? Radiusen til tangentpunktet står normalt på planet. Derfor ligger \(P\) på linjen gjennom origo i normalretningen.

  1. Bruk normalvektoren
    \(\vec n=[2,1,-2]\).
  2. Parameteriser normallinjen
    \(P=(2s,s,-2s)\).
  3. Sett punktet inn i planet
    \(2(2s)+s-2(-2s)+4=0\).
  4. Løs for s
    \(9s+4=0\Rightarrow s=-4/9\).
  5. Finn koordinatene
    \(P=(-8/9,-4/9,8/9)\).
  6. Kontroller
    P ligger i planet, og \(\overrightarrow{OP}\) er parallell med normalvektoren. Avstanden er \(4/3\).
P er det ortogonale fotpunktet fra O til planet α.
P er det ortogonale fotpunktet fra O til planet α.

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1Solve({x=2s,y=s,z=-2s,2x+y-2z+4=0},{x,y,z,s})
Resultat: \(P=(-8/9,-4/9,8/9)\)
Tolkning: Løsningen er fotpunktet fra origo på planet.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import Matrix, Rational, sqrt, simplify
n = Matrix([2,1,-2])
s = Rational(-4,9)
P = s*n
plane_check = 2*P[0]+P[1]-2*P[2]+4
radius = sqrt(P.dot(P))
print("P =", tuple(P))
print("Kontroll i planet =", plane_check)
print("OP parallell med n: faktor =", s)
print("Kuleradius =", radius)
assert plane_check==0 and simplify(radius-Rational(4,3))==0
Kjørt utskriftP = (-8/9, -4/9, 8/9)
Kontroll i planet = 0
OP parallell med n: faktor = -4/9
Kuleradius = 4/3

Fasit: \(P=(-8/9,-4/9,8/9)\).

Vanlig feil: Å velge motsatt punkt på normallinjen uten å kontrollere at det ligger i planet.
Sensorpunkt: Sensor ser etter normallinje, planinnsetting og koordinatkontroll.
Del 1 / Oppgave 8Matematisk induksjon

Oppgave 8

Oppgave: Bruk induksjon til å bevise påstanden \(P(n):\;\frac{k^n-1}{k-1}=1+k+k^2+k^3+\cdots+k^{n-1}\), \(n\in\mathbb N\).
Original poengangivelse: Oppgave 8 (2 poeng).
Vis løsning

Hva spør oppgaven om? Vi viser først basissteget og deretter at sannhet for \(n\) medfører sannhet for \(n+1\). Vi forutsetter \(k\ne1\).

  1. Basissteg n=1
    Venstresiden er \((k-1)/(k-1)=1\), og høyresiden består bare av leddet 1. Påstanden er sann for \(n=1\).
  2. Induksjonsantakelse
    Anta at \(1+k+\cdots+k^{n-1}=\frac{k^n-1}{k-1}\).
  3. Skriv summen for n+1
    \(1+k+\cdots+k^{n-1}+k^n\).
  4. Bruk antakelsen
    \(=\frac{k^n-1}{k-1}+k^n\).
  5. Sett på felles nevner
    \(=\frac{k^n-1+k^n(k-1)}{k-1}=\frac{k^{n+1}-1}{k-1}\).
  6. Konkluder induksjonssteget
    Dette er nøyaktig venstresiden i \(P(n+1)\).
  7. Sluttkonklusjon
    Dermed gjelder påstanden for alle \(n\in\mathbb N\) ved induksjon.

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1Simplify((k^n-1)/(k-1)+k^n)
Resultat: \((k^{n+1}-1)/(k-1)\)
Tolkning: CAS bekrefter algebraen i induksjonssteget.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, simplify
k = symbols('k', real=True)
n = symbols('n', integer=True, positive=True)
induction_step = (k**n-1)/(k-1) + k**n
target = (k**(n+1)-1)/(k-1)
print("Uttrykk etter induksjonsantakelsen =", induction_step)
print("Mål for n+1 =", target)
print("Forenklet forskjell =", simplify(induction_step-target))
assert simplify(induction_step-target)==0
Kjørt utskriftUttrykk etter induksjonsantakelsen = k**n + (k**n - 1)/(k - 1)
Mål for n+1 = (k**(n + 1) - 1)/(k - 1)
Forenklet forskjell = 0

Fasit: Påstanden er bevist for alle \(n\in\mathbb N\), for \(k\ne1\).

Vanlig feil: Å kontrollere bare noen tallverdier eller å glemme å legge til det nye leddet \(k^n\).
Sensorpunkt: Sensor ser etter basissteg, tydelig induksjonsantakelse og et komplett induksjonssteg.

Del 2 - med hjelpemidler

Del 2 / Oppgave 1aTrigonometri og modellering

Oppgave 1a

Oppgave: En stige, som kan justeres, skal stå på skrå mot en husvegg og berøre et 2,0 m høyt gjerde. Gjerdet står 1,0 m fra husveggen. La \(x\) være vinkelen mellom stigen og bakken. Vis at lengden av stigen, målt i meter, er \(L(x)=\frac1{\cos x}+\frac2{\sin x}\), der \(0^\circ<x<90^\circ\).
Original poengangivelse: Oppgave 1 (6 poeng).
Vis løsning

Hva spør oppgaven om? Vi deler stigen i to segmenter ved berøringspunktet med toppen av gjerdet og bruker cosinus og sinus i de to rettvinklede trekantene.

  1. Del stigen ved gjerdet
    Det øvre segmentet går fra gjerdet til veggen; det nedre går fra gjerdet til bakken.
  2. Øvre segment
    Den horisontale kateten er 1,0 m og hypotenusen er \(l_1\). Dermed \(\cos x=1/l_1\).
  3. Løs for øvre lengde
    \(l_1=1/\cos x\).
  4. Nedre segment
    Den vertikale kateten er 2,0 m og hypotenusen er \(l_2\). Dermed \(\sin x=2/l_2\).
  5. Løs for nedre lengde
    \(l_2=2/\sin x\).
  6. Legg sammen
    \[L(x)=l_1+l_2=\frac1{\cos x}+\frac2{\sin x}\]
  7. Domene
    Begge kateter må være positive, derfor \(0^\circ<x<90^\circ\).

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1Simplify(1/cos(x)+2/sin(x))
Resultat: \(\sec x+2\csc x\)
Tolkning: CAS-formen er identisk med den geometriske summen.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, sin, cos, simplify
x = symbols('x', positive=True)
lower = 2/sin(x)
upper = 1/cos(x)
L = simplify(lower+upper)
print("Nedre stigedel =", lower)
print("Øvre stigedel =", upper)
print("Total lengde L(x) =", L)
assert simplify(L-(1/cos(x)+2/sin(x)))==0
Kjørt utskriftNedre stigedel = 2/sin(x)
Øvre stigedel = 1/cos(x)
Total lengde L(x) = 1/cos(x) + 2/sin(x)

Fasit: \(L(x)=\frac1{\cos x}+\frac2{\sin x}\), \(0^\circ<x<90^\circ\).

Vanlig feil: Å blande motstående og hosliggende katet i de to trekantene.
Sensorpunkt: Sensor ser etter en tydelig geometrisk oppdeling og korrekt trigonometrisk begrunnelse.
Del 2 / Oppgave 1bOptimering

Oppgave 1b

Oppgave: Bestem \(x\) slik at lengden av stigen blir kortest mulig. Hvor høyt opp på veggen rekker stigen da?
Original poengangivelse: Oppgave 1 (6 poeng).
Vis løsning

Hva spør oppgaven om? Vi minimerer funksjonen fra del a på det åpne intervallet. Siden lengden går mot uendelig ved begge ender, gir det indre kritiske punktet globalt minimum.

  1. Deriver lengdefunksjonen
    \(L'(x)=\sec x\tan x-2\csc x\cot x\).
  2. Sett den deriverte lik null
    \(\frac{\sin x}{\cos^2x}=\frac{2\cos x}{\sin^2x}\).
  3. Kryssmultipliser
    \(\sin^3x=2\cos^3x\).
  4. Løs for tangens
    \(\tan^3x=2\Rightarrow\tan x=\sqrt[3]{2}\).
  5. Finn vinkelen
    \(x=\arctan(\sqrt[3]{2})\approx51,56^\circ\).
  6. Finn høyden
    Stigen stiger 2 m fram til gjerdet. Fra gjerdet til veggen øker høyden med \(1\cdot\tan x\). Dermed \(h=2+\tan x=2+\sqrt[3]{2}\).
  7. Oppgi svar
    \(h\approx3,26\) m. Den minimale stigelengden er omtrent \(4,16\) m som kontroll.
Ved minimum er tan x = ∛2, og høyden blir 2 + ∛2 meter.
Ved minimum er tan x = ∛2, og høyden blir 2 + ∛2 meter.

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1NSolve(Derivative(1/cos(x)+2/sin(x),x)=0, x, 0.9)
Resultat: \(x\approx0,89998\) rad \(=51,56^\circ\)
Tolkning: Andrederivert er positiv i punktet, og endeadferden viser globalt minimum.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import real_root, atan, pi, sin, cos, N, diff, symbols, simplify
x = symbols('x', positive=True)
r = real_root(2,3)
x_min = atan(r)
L = 1/cos(x)+2/sin(x)
height = 2+r
print("tan(x) =", r)
print("x i radianer =", N(x_min,12))
print("x i grader =", N(180*x_min/pi,12))
print("Minimal stigelengde =", N(L.subs(x,x_min),12))
print("Høyde på veggen =", N(height,12))
assert abs(float(N(height,15))-3.2599210498948732) < 1e-12
Kjørt utskrifttan(x) = 2**(1/3)
x i radianer = 0.899908348082
x i grader = 51.5609502937
Minimal stigelengde = 4.16193818494
Høyde på veggen = 3.25992104989

Fasit: \(x\approx51,6^\circ\), og stigen rekker omtrent \(3,26\) m opp på veggen.

Vanlig feil: Å minimere bare ett av de to leddene eller å bruke grader direkte i symbolsk derivasjon.
Sensorpunkt: Sensor ser etter derivasjon, kritisk punkt, minimumsbegrunnelse og høydeberegning.
Del 2 / Oppgave 2aSinusmodell

Oppgave 2a

Oppgave: Daglengden i Bergen er tilnærmet gitt ved \(D(t)=6,63\sin(0,0172t-1,39)+12,5\). Bruk uttrykket \(D(t)\) til å bestemme den korteste og den lengste daglengden i Bergen.
Original poengangivelse: Oppgave 2 (8 poeng).
Vis løsning

Hva spør oppgaven om? En sinusfunksjon \(a\sin(\cdot)+d\) varierer mellom \(d-|a|\) og \(d+|a|\).

  1. Les av amplituden
    \(|a|=6,63\).
  2. Les av likevektslinjen
    \(d=12,5\).
  3. Finn minimum
    \(D_{min}=12,5-6,63=5,87\).
  4. Finn maksimum
    \(D_{max}=12,5+6,63=19,13\).
  5. Kontroller at ekstremene nås i året
    Maksimum oppstår ved \(t\approx172\), og minimum ved \(t\approx355\), begge innen \([0,365]\).
  6. Oppgi med enhet
    Korteste daglengde er 5,87 timer, lengste er 19,13 timer.

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1Extremum(6.63 sin(0.0172t-1.39)+12.5, 0, 365)
Resultat: Minimum 5,87 og maksimum 19,13
Tolkning: Ekstremene ligger innenfor modellintervallet.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, sin, pi, N
t = symbols('t', real=True)
Dmin = 12.5-6.63
Dmax = 12.5+6.63
t_max = (pi/2+1.39)/0.0172
t_min = (-pi/2+1.39+2*pi)/0.0172
print("Korteste daglengde =", Dmin, "timer")
print("Lengste daglengde =", Dmax, "timer")
print("t for maksimum =", N(t_max,8))
print("t for minimum =", N(t_min,8))
assert abs(Dmin-5.87)<1e-12 and abs(Dmax-19.13)<1e-12
Kjørt utskriftKorteste daglengde = 5.87 timer
Lengste daglengde = 19.13 timer
t for maksimum = 172.13932
t for minimum = 354.79006

Fasit: Kortest: \(5,87\) timer. Lengst: \(19,13\) timer.

Vanlig feil: Å oppgi amplituden 6,63 som maksimal daglengde.
Sensorpunkt: Sensor ser etter amplitude, likevektslinje og enheter.
Del 2 / Oppgave 2bGraftegning

Oppgave 2b

Oppgave: Bruk graftegner til å tegne grafen til \(D\) for \(t\in[0,365]\).
Original poengangivelse: Oppgave 2 (8 poeng).
Vis løsning

Hva spør oppgaven om? Grafen skal vise én nesten full periode, riktige akser og rimelige nøkkelpunkter.

  1. Definer funksjonen
    \(D(t)=6,63\sin(0,0172t-1,39)+12,5\).
  2. Velg vindu
    Bruk \(0\le t\le365\) og omtrent \(5\le D\le20\).
  3. Marker likevektslinjen
    \(D=12,5\).
  4. Marker maksimalpunkt
    Omtrent \((172,19,13)\).
  5. Marker minimalpunkt
    Omtrent \((355,5,87)\).
  6. Kontroller periodens lengde
    \(T=2\pi/0,0172\approx365,3\) døgn, som passer med ett år.
Modellen gir omtrent én hel periode i løpet av 365 dager.
Modellen gir omtrent én hel periode i løpet av 365 dager.

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1D(t)=6.63 sin(0.0172t-1.39)+12.5
Resultat: Graf på \([0,365]\)
Tolkning: Grafen viser en årlig sinusvariasjon rundt 12,5 timer.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import pi
period = 2*pi/0.0172
samples = [(0, 6.63*__import__('math').sin(-1.39)+12.5),
           (172.1393213, 19.13),
           (354.7900570, 5.87),
           (365, 6.63*__import__('math').sin(0.0172*365-1.39)+12.5)]
print("Periode =", float(period), "døgn")
print("Kontrollpunkter:")
for p in samples:
    print(p)
assert 365 < float(period) < 366
Kjørt utskriftPeriode = 365.30147134765036 døgn
Kontrollpunkter:
(0, 5.978063597801237)
(172.1393213, 19.13)
(354.790057, 5.87)
(365, 5.971969588272416)

Fasit: Grafen er vist nedenfor med korrekt intervall, maksimum og minimum.

Vanlig feil: Å bruke radianargumentet som om koeffisienten 0,0172 var i grader.
Sensorpunkt: Sensor ser etter korrekt vindu, akser og en sammenhengende sinusgraf.
Del 2 / Oppgave 2cTrigonometrisk likning og dato

Oppgave 2c

Oppgave: Når er daglengden i Bergen 14 timer?
Original poengangivelse: Oppgave 2 (8 poeng).
Vis løsning

Hva spør oppgaven om? Vi løser sinuslikningen numerisk i intervallet \(0\le t\le365\) og omgjør dagnumrene til omtrentlige datoer.

  1. Sett modellen lik 14
    \(6,63\sin(0,0172t-1,39)+12,5=14\).
  2. Isoler sinus
    \(\sin(0,0172t-1,39)=1,5/6,63\approx0,22624\).
  3. Bruk de to sinusgrenene
    \(u=\arcsin(0,22624)+2k\pi\) eller \(u=\pi-\arcsin(0,22624)+2k\pi\).
  4. Løs for t
    \(t=(u+1,39)/0,0172\).
  5. Velg løsninger i året
    \(t\approx94,08\) og \(t\approx250,20\).
  6. Tolk som datoer
    Med \(t=0\) ved 1. januar blir dette omtrent 5. april og 8. september.

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1NSolve(D(t)=14, t, 0..365)
Resultat: \(t\approx94,08\) og \(t\approx250,20\)
Tolkning: Grafen krysser linjen \(D=14\) én gang om våren og én gang om høsten.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
import math, datetime
q = 1.5/6.63
a = math.asin(q)
solutions = sorted([(a+1.39)/0.0172, (math.pi-a+1.39)/0.0172])
print("sinusverdi =", q)
print("Løsninger t =", solutions)
for value in solutions:
    date = datetime.date(2015,1,1)+datetime.timedelta(days=round(value))
    print(round(value,3), "->", date.isoformat())
assert all(0<=v<=365 for v in solutions)
Kjørt utskriftsinusverdi = 0.22624434389140272
Løsninger t = [94.08257645072908, 250.1960661998403]
94.083 -> 2015-04-05
250.196 -> 2015-09-08

Fasit: Daglengden er 14 timer omtrent 5. april og 8. september.

Vanlig feil: Å ta med bare hovedverdien til arcsinus og dermed miste høstløsningen.
Sensorpunkt: Sensor ser etter begge løsninger, intervallkontroll og en rimelig datotolkning.
Del 2 / Oppgave 2dDerivert og maksimal vekst

Oppgave 2d

Oppgave: Undersøk på hvilken dato daglengden vokser raskest. Hvor mye øker daglengden per døgn da?
Original poengangivelse: Oppgave 2 (8 poeng).
Vis løsning

Hva spør oppgaven om? Vekstfarten er den deriverte \(D'(t)\). Den er størst når cosinusfaktoren er 1.

  1. Deriver
    \(D'(t)=6,63\cdot0,0172\cos(0,0172t-1,39)\).
  2. Finn maksimal mulig verdi
    Cosinus er maksimalt 1, så \(D'_{max}=6,63\cdot0,0172=0,114036\) timer per døgn.
  3. Finn tidspunktet
    Maksimum oppstår når \(0,0172t-1,39=2k\pi\).
  4. Velg løsning i året
    \(t=1,39/0,0172\approx80,81\).
  5. Tolk dato
    Dette er omtrent 23. mars når \(t=0\) er 1. januar.
  6. Konverter veksten
    \(0,114036\cdot60\approx6,84\) minutter per døgn.

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1Derivative(D(t),t)
Resultat: \(0,114036\cos(0,0172t-1,39)\)
Tolkning: Maksimal positiv verdi fås når cosinus er 1.
2Solve(0.0172t-1.39=0,t)
Resultat: \(t\approx80,81\)
Tolkning: Dette er den relevante løsningen i kalenderåret.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
import math, datetime
rate = 6.63*0.0172
t = 1.39/0.0172
date = datetime.date(2015,1,1)+datetime.timedelta(days=round(t))
print("Maksimal vekst =", rate, "timer per døgn")
print("Maksimal vekst =", rate*60, "minutter per døgn")
print("t =", t)
print("Dato ≈", date.isoformat())
assert abs(rate-0.114036)<1e-12
Kjørt utskriftMaksimal vekst = 0.114036 timer per døgn
Maksimal vekst = 6.84216 minutter per døgn
t = 80.81395348837209
Dato ≈ 2015-03-23

Fasit: Daglengden vokser raskest omtrent 23. mars, med ca. \(0,114\) timer = \(6,84\) minutter per døgn.

Vanlig feil: Å finne maksimal daglengde i stedet for maksimal vekstfart.
Sensorpunkt: Sensor ser etter derivasjon, maksimum for cosinus, dato og korrekt enhet.
Del 2 / Oppgave 3aCAS og areal mellom grafer

Oppgave 3a

Oppgave: Funksjonen er gitt ved \(f(x)=x^2\). Punktene \(A(a,a^2)\) og \(B(b,b^2)\), der \(a<b\), ligger på grafen. Grafen til \(f\) og linjestykket \(AB\) avgrenser et flatestykke med areal \(T\). Bruk CAS til å bestemme \(T\) uttrykt ved \(a\) og \(b\).
Original poengangivelse: Oppgave 3 (6 poeng).
Vis løsning

Hva spør oppgaven om? Vi finner først likningen til korden AB, og integrerer differansen mellom korden og parabelen fra a til b.

  1. Finn stigningstallet
    \(m=(b^2-a^2)/(b-a)=a+b\).
  2. Finn korden
    Linjen gjennom A blir \(y-a^2=(a+b)(x-a)\), altså \(y=(a+b)x-ab\).
  3. Sett opp arealet
    \(T=\int_a^b[(a+b)x-ab-x^2]\,dx\).
  4. Integrer med CAS
    En antiderivert er \((a+b)x^2/2-abx-x^3/3\).
  5. Sett inn grensene
    CAS-forenkling av \(F(b)-F(a)\) gir et kubisk uttrykk.
  6. Faktoriser
    \[T=\frac{(b-a)^3}{6}\]
T er området mellom korden AB og parabelen; S er trekanten ACB.
T er området mellom korden AB og parabelen; S er trekanten ACB.

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1Integral((a+b)x-ab-x^2, x, a, b)
Resultat: \((b-a)^3/6\)
Tolkning: Siden parabelen er konveks, ligger korden over grafen mellom A og B.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, integrate, factor, simplify
x,a,b = symbols('x a b', real=True)
line = (a+b)*x-a*b
T = integrate(line-x**2,(x,a,b))
result = factor(T)
expected = (b-a)**3/6
print("Kordelinje =", line)
print("Areal før faktorisering =", T)
print("Areal faktorisert =", result)
print("Kontroll =", simplify(T-expected))
assert simplify(T-expected)==0
Kjørt utskriftKordelinje = -a*b + x*(a + b)
Areal før faktorisering = a**3/3 + a**2*b - a**2*(a/2 + b/2) - a*b**2 - b**3/3 + b**2*(a/2 + b/2)
Areal faktorisert = -(a - b)**3/6
Kontroll = 0

Fasit: \(T=\frac16(b-a)^3\).

Vanlig feil: Å integrere parabel minus korde og få negativt areal.
Sensorpunkt: Sensor ser etter kordelikning, korrekt integrand og CAS-forenkling.
Del 2 / Oppgave 3bTrekantareal med determinant

Oppgave 3b

Oppgave: Punktet \(C\) på grafen har koordinatene \((c,c^2)\), der \(c=(a+b)/2\). Bruk CAS til å vise at arealet \(S\) av \(\triangle ACB\) er \(S=\frac18(b-a)^3\).
Original poengangivelse: Oppgave 3 (6 poeng).
Vis løsning

Hva spør oppgaven om? Vi bruker determinantformelen for trekantareal med vektorene fra A til B og fra A til C.

  1. Skriv punktene
    \(A=(a,a^2)\), \(B=(b,b^2)\), \(C=((a+b)/2,(a+b)^2/4)\).
  2. Finn vektorene
    \(\overrightarrow{AB}=(b-a,b^2-a^2)\) og \(\overrightarrow{AC}=((b-a)/2,c^2-a^2)\).
  3. Bruk arealformelen
    \(S=\frac12|\det(\overrightarrow{AB},\overrightarrow{AC})|\).
  4. La CAS forenkle determinanten
    Determinanten blir \(-(b-a)^3/4\).
  5. Ta absoluttverdi
    Siden \(b-a>0\), er absoluttverdien \((b-a)^3/4\).
  6. Del på 2
    \[S=\frac18(b-a)^3\]

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1Simplify(abs(Determinant({B-A,C-A}))/2)
Resultat: \((b-a)^3/8\)
Tolkning: Forutsetningen \(a<b\) fjerner tvetydigheten i absoluttverdien.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, Matrix, factor, simplify
A1,B1 = symbols('a b', real=True)
c = (A1+B1)/2
AB = Matrix([B1-A1, B1**2-A1**2])
AC = Matrix([c-A1, c**2-A1**2])
det = Matrix.hstack(AB,AC).det()
S_signed = factor(det/2)
print("AB =", AB.T)
print("AC =", AC.T)
print("Orientert dobbeltareal =", factor(det))
print("Orientert areal =", S_signed)
print("Absolutt areal for b>a =", (B1-A1)**3/8)
assert simplify(abs(-1)*(-det)/2-(B1-A1)**3/8)==0
Kjørt utskriftAB = Matrix([[-a + b, -a**2 + b**2]])
AC = Matrix([[-a/2 + b/2, -a**2 + (a/2 + b/2)**2]])
Orientert dobbeltareal = (a - b)**3/4
Orientert areal = (a - b)**3/8
Absolutt areal for b>a = (-a + b)**3/8

Fasit: \(S=\frac18(b-a)^3\).

Vanlig feil: Å glemme faktoren \(1/2\) i determinantformelen for trekantareal.
Sensorpunkt: Sensor ser etter koordinater, determinant og håndtering av \(a<b\).
Del 2 / Oppgave 3cForhold mellom arealer

Oppgave 3c

Oppgave: Bestem forholdet \(T/S\).
Original poengangivelse: Oppgave 3 (6 poeng).
Vis løsning

Hva spør oppgaven om? Vi setter inn uttrykkene fra del a og b. Faktoren \((b-a)^3\) kanselleres.

  1. Skriv T
    \(T=(b-a)^3/6\).
  2. Skriv S
    \(S=(b-a)^3/8\).
  3. Sett opp forholdet
    \(T/S=\frac{(b-a)^3/6}{(b-a)^3/8}\).
  4. Kanseller felles faktor
    Siden \(a<b\), er \(b-a\ne0\).
  5. Del brøkene
    \((1/6)/(1/8)=8/6\).
  6. Forkort
    \[\frac TS=\frac43\]

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1Simplify(((b-a)^3/6)/((b-a)^3/8))
Resultat: \(4/3\)
Tolkning: Forholdet er uavhengig av plasseringen og avstanden mellom A og B.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, simplify, Rational
a,b = symbols('a b', real=True)
T = (b-a)**3/6
S = (b-a)**3/8
ratio = simplify(T/S)
print("T =", T)
print("S =", S)
print("T/S =", ratio)
assert ratio==Rational(4,3)
Kjørt utskriftT = (-a + b)**3/6
S = (-a + b)**3/8
T/S = 4/3

Fasit: \(T/S=4/3\).

Vanlig feil: Å snu forholdet og få \(3/4\).
Sensorpunkt: Sensor ser etter korrekt innsetting og forkorting.
Del 2 / Oppgave 4aLogistisk differensiallikning

Oppgave 4a

Oppgave: I en bygd med 1200 innbyggere spres et rykte. La \(y\) være antall innbyggere som kjenner til ryktet ved tiden \(t\), målt i dager. Farten er proporsjonal med produktet av antall som kjenner ryktet og antall som ikke kjenner det. Proporsjonalitetskonstanten er 0,0006. Ved \(t=0\) kjente bare én person ryktet. Sett opp en differensiallikning som beskriver situasjonen.
Original poengangivelse: Oppgave 4 (4 poeng).
Vis løsning

Hva spør oppgaven om? Tallet som kjenner ryktet er \(y\), mens tallet som ikke kjenner det er \(1200-y\). Produktet bestemmer vekstfarten.

  1. Identifiser de to gruppene
    Kjenner ryktet: \(y\). Kjenner ikke ryktet: \(1200-y\).
  2. Bruk proporsjonalitet
    \(y' = k\,y(1200-y)\).
  3. Sett inn konstanten
    \(k=0,0006\).
  4. Ta med initialbetingelsen
    Ved \(t=0\) er \(y=1\).
  5. Skriv modellen
    \[y'=0,0006y(1200-y),\qquad y(0)=1\]
  6. Tolk modellen
    Veksten er liten når få eller nesten alle kjenner ryktet, og størst nær \(y=600\).

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1y'=0.0006 y(1200-y)
Resultat: Logistisk differensiallikning
Tolkning: Bæreevnen er 1200 og den intrinsiske vekstraten er \(0,72\) per døgn.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, expand
y = symbols('y', real=True)
rhs = 0.0006*y*(1200-y)
print("Differensiallikning: y' =", rhs)
print("Utvidet høyreside =", expand(rhs))
print("Initialbetingelse: y(0) = 1")
print("Vekstfart ved y=600 =", rhs.subs(y,600))
assert rhs.subs(y,0)==0 and rhs.subs(y,1200)==0
Kjørt utskriftDifferensiallikning: y' = 0.0006*y*(1200 - y)
Utvidet høyreside = -0.0006*y**2 + 0.72*y
Initialbetingelse: y(0) = 1
Vekstfart ved y=600 = 216.000000000000

Fasit: \(y'=0,0006y(1200-y)\), \(y(0)=1\).

Vanlig feil: Å bruke \(1200\) i stedet for \(1200-y\) for dem som ennå ikke kjenner ryktet.
Sensorpunkt: Sensor ser etter produktmodellen, konstanten og initialbetingelsen.
Del 2 / Oppgave 4bLogistisk vekst

Oppgave 4b

Oppgave: Hvor lang tid tar det før halve bygda kjenner til ryktet?
Original poengangivelse: Oppgave 4 (4 poeng).
Vis løsning

Hva spør oppgaven om? Vi løser den logistiske differensiallikningen med initialbetingelsen og setter deretter \(y=600\).

  1. Skriv standard logistisk form
    \(y'=0,72y(1-y/1200)\).
  2. Bruk generell løsning
    \(y(t)=\frac{1200}{1+Ce^{-0,72t}}\).
  3. Bestem C
    \(1=1200/(1+C)\Rightarrow C=1199\).
  4. Sett y=600
    \(600=1200/(1+1199e^{-0,72t})\).
  5. Løs eksponentiallikningen
    \(1+1199e^{-0,72t}=2\Rightarrow e^{-0,72t}=1/1199\).
  6. Ta logaritmen
    \(t=\ln(1199)/0,72\).
  7. Regn ut
    \[t\approx9,85\text{ døgn}\]
Halvparten av innbyggerne kjenner ryktet ved modellens vendepunkt, etter ca. 9,85 døgn.
Halvparten av innbyggerne kjenner ryktet ved modellens vendepunkt, etter ca. 9,85 døgn.

Digital kontroll i GeoGebra/CAS

GeoGebra / CAS
1SolveODE(y'=0.0006y(1200-y), y(0)=1)
Resultat: \(y=1200/(1+1199e^{-0,72t})\)
Tolkning: CAS gir den logistiske løsningen.
2NSolve(y(t)=600,t)
Resultat: \(t\approx9,846\)
Tolkning: Halvparten nås ved vendepunktet til logistikkurven.

Digital kontroll i Python (SymPy)

Python 3.12 / SymPy - faktisk kjørt
from sympy import symbols, exp, log, N, simplify
t = symbols('t', real=True)
y = 1200/(1+1199*exp(-0.72*t))
time_half = log(1199)/0.72
print("Løsning y(t) =", y)
print("Tid til y=600, eksakt =", time_half)
print("Tid til y=600, desimal =", N(time_half,12))
print("Kontroll y(t_half) =", simplify(y.subs(t,time_half)))
assert abs(float(N(y.subs(t,time_half),15))-600.0) < 1e-9
Kjørt utskriftLøsning y(t) = 1200/(1 + 1199*exp(-0.72*t))
Tid til y=600, eksakt = 1.38888888888889*log(1199)
Tid til y=600, desimal = 9.84617104865
Kontroll y(t_half) = 600.000000000000

Fasit: Det tar omtrent \(9,85\) døgn før 600 innbyggere kjenner ryktet.

Vanlig feil: Å bruke vanlig eksponentiell vekst uten øvre grense på 1200.
Sensorpunkt: Sensor ser etter logistisk løsning, initialbetingelse og korrekt logaritmeløsning.