R1 eksamenHøst 2020

Matematikk R1 eksamen – høst 2020

ifingo
Norsk (Bokmål)

ifingo · Matematikk R1

Matematikk R1 - høsten 2020 (REA3022)

Løsningsforslag til eksamenssettet fra Utdanningsdirektoratet.

Del 1 - uten hjelpemidler

Del 1 - Oppgave 1aDerivasjon ledd for ledd

Oppgave 1a

Oppgave: Deriver \[f(x)=x^2+e^x.\]
Vis løsning

Hva spør oppgaven om? Vi deriverer polynomleddet og eksponentialleddet hver for seg.

Steg 1 - Potensregelen

\((x^2)^\prime=2x\).

Steg 2 - Eksponentialregelen

\((e^x)^\prime=e^x\).

Steg 3 - Summer

\[f^\prime(x)=2x+e^x.\]

Steg 4 - Domene

Begge ledd er definert og deriverbare for alle reelle x.

Steg 5 - Kontroll

En numerisk differansekvotient gir samme stigning.

Steg 6 - Konklusjon

Den deriverte består av summen av de to deriverte leddene.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Derivative[x^2+exp(x)]
\(2x+e^x\)

Tolkning: CAS deriverer leddvis.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
x = sp.symbols("x", real=True)
f = x**2 + sp.exp(x)
f_prime = sp.diff(f, x)
expected = 2*x + sp.exp(x)
print("f(x) =", f)
print("f'(x) =", f_prime)
print("Expected =", expected)
print("Difference =", sp.simplify(f_prime-expected))
print("Domain = all real numbers")
Utskrift fra Python:
f(x) = x**2 + exp(x)
f'(x) = 2*x + exp(x)
Expected = 2*x + exp(x)
Difference = 0
Domain = all real numbers

Fasit: \(f^\prime(x)=2x+e^x\).

Vanlig feil: Å skrive den deriverte av \(e^x\) som 1.
Sensorpunkt: Begge ledd må være derivert korrekt.
Del 1 - Oppgave 1bProduktregel og kjerneregel

Oppgave 1b

Oppgave: Deriver \[g(x)=x^3\sqrt{2x-1}.\]
Vis løsning

Hva spør oppgaven om? Funksjonen er et produkt, og rotfaktoren krever kjerneregelen.

Steg 1 - Domene

Originalfunksjonen krever \(x\ge1/2\); den deriverte formelen gjelder for \(x>1/2\).

Steg 2 - Faktorer

Sett \(u=x^3\) og \(v=(2x-1)^{1/2}\).

Steg 3 - Deriver faktorene

\(u^\prime=3x^2\) og \(v^\prime=(2x-1)^{-1/2}\).

Steg 4 - Produktregelen

\[g^\prime=3x^2\sqrt{2x-1}+\frac{x^3}{\sqrt{2x-1}}.\]

Steg 5 - Felles nevner

\[g^\prime(x)=\frac{x^2(7x-3)}{\sqrt{2x-1}}.\]

Steg 6 - Kontroll

Utvidet og faktorisert form er algebraisk identiske.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Derivative[x^3*sqrt(2x-1)]
\(x^2(7x-3)/\sqrt{2x-1}\)

Tolkning: CAS bruker produktregelen og kjerneregelen.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
x = sp.symbols("x", real=True)
g = x**3*sp.sqrt(2*x-1)
g_prime = sp.diff(g,x)
factored = sp.factor(g_prime)
expected = x**2*(7*x-3)/sp.sqrt(2*x-1)
print("g(x) =", g)
print("Expanded derivative =", sp.expand(g_prime))
print("Factored derivative =", factored)
print("Expected =", expected)
print("Difference =", sp.simplify(g_prime-expected))
print("Derivative domain: x > 1/2")
Utskrift fra Python:
g(x) = x**3*sqrt(2*x - 1)
Expanded derivative = x**3/sqrt(2*x - 1) + 3*x**2*sqrt(2*x - 1)
Factored derivative = x**2*(7*x - 3)/sqrt(2*x - 1)
Expected = x**2*(7*x - 3)/sqrt(2*x - 1)
Difference = 0
Derivative domain: x > 1/2

Fasit: \(g^\prime(x)=\dfrac{x^2(7x-3)}{\sqrt{2x-1}}\), for \(x>1/2\).

Vanlig feil: Å glemme faktoren 2 i kjerneregelen; den kansellerer med 1/2 fra rotderivasjonen.
Sensorpunkt: Produktregel, kjerneregel og domene bør vises.
Del 1 - Oppgave 1cKvotientregelen

Oppgave 1c

Oppgave: Deriver \[h(x)=\frac{x^3}{x^2-1}.\]
Vis løsning

Hva spør oppgaven om? Vi bruker kvotientregelen og beholder de utelukkede x-verdiene.

Steg 1 - Domene

\(x\ne-1\) og \(x\ne1\).

Steg 2 - Teller og nevner

\(u=x^3\), \(v=x^2-1\).

Steg 3 - Deriver

\(u^\prime=3x^2\), \(v^\prime=2x\).

Steg 4 - Kvotientregelen

\[h^\prime=\frac{3x^2(x^2-1)-x^3(2x)}{(x^2-1)^2}.\]

Steg 5 - Forenkle

\[h^\prime(x)=\frac{x^2(x^2-3)}{(x^2-1)^2}.\]

Steg 6 - Kontroll

Nevneren er kvadrert og definisjonsbegrensningen beholdes.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Derivative[x^3/(x^2-1)]
\(x^2(x^2-3)/(x^2-1)^2\)

Tolkning: CAS bekrefter kvotientregelen.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
x = sp.symbols("x", real=True)
h = x**3/(x**2-1)
h_prime = sp.factor(sp.diff(h,x))
expected = x**2*(x**2-3)/(x**2-1)**2
print("h(x) =", h)
print("h'(x) =", h_prime)
print("Expected =", expected)
print("Difference =", sp.simplify(h_prime-expected))
print("Excluded x-values =", [-1,1])
Utskrift fra Python:
h(x) = x**3/(x**2 - 1)
h'(x) = x**2*(x**2 - 3)/((x - 1)**2*(x + 1)**2)
Expected = x**2*(x**2 - 3)/(x**2 - 1)**2
Difference = 0
Excluded x-values = [-1, 1]

Fasit: \(h^\prime(x)=\dfrac{x^2(x^2-3)}{(x^2-1)^2}\), \(x\ne\pm1\).

Vanlig feil: Å glemme minusleddet i telleren eller å ikke kvadrere nevneren.
Sensorpunkt: Korrekt kvotientregel og definisjonsmengde.
Del 1 - Oppgave 2Logaritmeregler

Oppgave 2

Oppgave: Skriv så enkelt som mulig: \[2\ln(a^3b^4)-3\ln a-3\ln(ab^2).\]
Vis løsning

Hva spør oppgaven om? Vi bruker produkt- og potensreglene for logaritmer. Uttrykket forutsetter \(a>0\) og \(b>0\).

Steg 1 - Første logaritme

\(\ln(a^3b^4)=3\ln a+4\ln b\).

Steg 2 - Multipliser med 2

\(2\ln(a^3b^4)=6\ln a+8\ln b\).

Steg 3 - Siste logaritme

\(3\ln(ab^2)=3\ln a+6\ln b\).

Steg 4 - Samle a-ledd

\(6\ln a-3\ln a-3\ln a=0\).

Steg 5 - Samle b-ledd

\(8\ln b-6\ln b=2\ln b\).

Steg 6 - Skriv kompakt

\[2\ln b=\ln(b^2).\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Expand[2ln(a^3 b^4)-3ln(a)-3ln(a b^2)]
\(2\ln b\)

Tolkning: Under antakelsen a>0 og b>0 kanselleres alle a-leddene.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
a, b = sp.symbols("a b", positive=True)
expr = 2*sp.log(a**3*b**4)-3*sp.log(a)-3*sp.log(a*b**2)
expanded = sp.expand_log(expr, force=True)
simplified = sp.simplify(expanded)
print("Original expression =", expr)
print("Expanded logs =", expanded)
print("Simplified =", simplified)
print("Equivalent compact form =", sp.log(b**2))
print("Difference =", sp.simplify(simplified-2*sp.log(b)))
Utskrift fra Python:
Original expression = -3*log(a) - 3*log(a*b**2) + 2*log(a**3*b**4)
Expanded logs = 2*log(b)
Simplified = 2*log(b)
Equivalent compact form = log(b**2)
Difference = 0

Fasit: \(2\ln b\), eventuelt \(\ln(b^2)\).

Vanlig feil: Å bruke logaritmeregler uten å forutsette positive argumenter.
Sensorpunkt: Mellomregningen som viser kanselleringen bør være med.
Del 1 - Oppgave 3aPolynomlikning og kontroll

Oppgave 3a

Oppgave: Vis at \(x=2\) er en løsning av \[x^3+2x^2=5x+6.\]
Vis løsning

Hva spør oppgaven om? Vi setter inn x=2 på begge sider.

Steg 1 - Venstresiden

\(2^3+2\cdot2^2=8+8=16\).

Steg 2 - Høyresiden

\(5\cdot2+6=10+6=16\).

Steg 3 - Sammenlikn

Begge sider blir 16.

Steg 4 - Nullform

\(P(x)=x^3+2x^2-5x-6\).

Steg 5 - Restsetningen

\(P(2)=0\), så \(x-2\) er en faktor.

Steg 6 - Konklusjon

Dermed er x=2 en løsning.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Substitute[x^3+2x^2=5x+6,x,2]
\(16=16\)

Tolkning: Innsetting gir en sann likhet.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
x = sp.symbols("x", real=True)
left = x**3+2*x**2
right = 5*x+6
print("Left at x=2 =", left.subs(x,2))
print("Right at x=2 =", right.subs(x,2))
print("Difference at x=2 =", sp.simplify((left-right).subs(x,2)))
print("Polynomial factorization =", sp.factor(left-right))
print("x=2 is solution =", left.subs(x,2)==right.subs(x,2))
Utskrift fra Python:
Left at x=2 = 16
Right at x=2 = 16
Difference at x=2 = 0
Polynomial factorization = (x - 2)*(x + 1)*(x + 3)
x=2 is solution = True

Fasit: Begge sider er 16, derfor er \(x=2\) en løsning.

Vanlig feil: Å bare skrive at x=2 er en løsning uten innsetting.
Sensorpunkt: Begge sider eller P(2)=0 må dokumenteres.
Del 1 - Oppgave 3bFortegnsskjema for tredjegrad

Oppgave 3b

Oppgave: Løs \[x^3+2x^2<5x+6.\]
Vis løsning

Hva spør oppgaven om? Vi flytter alt til venstre, faktoriserer og analyserer fortegnet.

Steg 1 - Nullform

\[x^3+2x^2-5x-6<0.\]

Steg 2 - Faktoriser

\[(x-2)(x+1)(x+3)<0.\]

Steg 3 - Kritiske punkter

Nullpunktene er \(-3,-1,2\).

Steg 4 - Fortegn

Med positivt ledende ledd skifter fortegnet ved hvert enkelt nullpunkt.

Steg 5 - Negative intervaller

Uttrykket er negativt på \(( -\infty,-3)\) og \((-1,2)\).

Steg 6 - Streng ulikhet

Nullpunktene tas ikke med.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[(x-2)(x+1)(x+3)<0,x]
\(( -\infty,-3)\cup(-1,2)\)

Tolkning: CAS gir de samme fortegnsintervallene.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
x = sp.symbols("x", real=True)
P = x**3+2*x**2-5*x-6
factored = sp.factor(P)
solution = sp.solve_univariate_inequality(P<0,x)
print("P(x) =", P)
print("Factorization =", factored)
print("Roots =", sp.solve(sp.Eq(P,0),x))
print("Solution set =", solution)
for test in [-4,-2,0,3]:
    print("P(",test,") =", P.subs(x,test))
Utskrift fra Python:
P(x) = x**3 + 2*x**2 - 5*x - 6
Factorization = (x - 2)*(x + 1)*(x + 3)
Roots = [-3, -1, 2]
Solution set = (x < -3) | ((-1 < x) & (x < 2))
P( -4 ) = -18
P( -2 ) = 4
P( 0 ) = -6
P( 3 ) = 24

Fasit: \(x\in(-\infty,-3)\cup(-1,2)\).

Vanlig feil: Å ta med nullpunktene selv om ulikheten er streng.
Sensorpunkt: Faktorisering og korrekt fortegnsskjema.
Del 1 - Oppgave 3cKonstruere en rasjonal ulikhet

Oppgave 3c

Oppgave: Lag en ulikhet med løsningsmengde \[(-\infty,-1)\cup[2,\infty).\]
Vis løsning

Hva spør oppgaven om? Vi trenger at -1 er utelukket, mens 2 er inkludert. En nevner kan gjøre -1 ulovlig.

Steg 1 - Kritiske grenser

Vi ønsker fortegnsskifte ved -1 og 2.

Steg 2 - Utesteng -1

Plasser \(x+1\) i nevneren.

Steg 3 - Inkluder 2

Plasser \(x-2\) i telleren og bruk \(\ge0\).

Steg 4 - Forslag

\[\frac{x-2}{x+1}\ge0.\]

Steg 5 - Fortegn

Brøken er positiv for \(x<-1\) og \(x>2\), og null ved x=2.

Steg 6 - Domene

x=-1 er ikke definert og tas derfor ikke med.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[(x-2)/(x+1)>=0,x]
\(( -\infty,-1)\cup[2,\infty)\)

Tolkning: Nevneren sørger for åpent endepunkt ved -1.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
x = sp.symbols("x", real=True)
expr = (x-2)/(x+1)
solution = sp.solve_univariate_inequality(expr>=0,x)
print("Proposed inequality: (x-2)/(x+1) >= 0")
print("Zero of numerator =", 2)
print("Excluded denominator zero =", -1)
print("Solution set =", solution)
for test in [-2,0,2,3]:
    print("Value at",test,"=",sp.simplify(expr.subs(x,test)))
Utskrift fra Python:
Proposed inequality: (x-2)/(x+1) >= 0
Zero of numerator = 2
Excluded denominator zero = -1
Solution set = (2 <= x) | (x < -1)
Value at -2 = 4
Value at 0 = -2
Value at 2 = 0
Value at 3 = 1/4

Fasit: Et gyldig svar er \(\dfrac{x-2}{x+1}\ge0\).

Vanlig feil: Å bruke \((x+1)(x-2)\ge0\), som også inkluderer x=-1.
Sensorpunkt: Ulikheten må gi riktig åpent/lukket endepunkt.
Del 1 - Oppgave 4aFarts- og akselerasjonsvektor

Oppgave 4a

Oppgave: For \(\vec r(t)=[4t+2,\,2t-5t^2]\), finn farts- og akselerasjonsvektoren.
Vis løsning

Hva spør oppgaven om? Vi deriverer hver koordinat med hensyn på t.

Steg 1 - x-koordinat

\((4t+2)^\prime=4\).

Steg 2 - y-koordinat

\((2t-5t^2)^\prime=2-10t\).

Steg 3 - Fartsvektor

\[\vec v(t)=[4,2-10t].\]

Steg 4 - Deriver igjen

\(4^\prime=0\) og \((2-10t)^\prime=-10\).

Steg 5 - Akselerasjon

\[\vec a(t)=[0,-10].\]

Steg 6 - Tolk

Partikkelen har konstant akselerasjon rett nedover.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Derivative[(4t+2,2t-5t^2),t]
\((4,2-10t)\)
2
Derivative[(4,2-10t),t]
\((0,-10)\)

Tolkning: Koordinatene deriveres komponentvis.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
t = sp.symbols("t", real=True)
r = sp.Matrix([4*t+2,2*t-5*t**2])
v = r.diff(t)
a = v.diff(t)
print("r(t) =", r.T)
print("v(t) =", v.T)
print("a(t) =", a.T)
print("Acceleration is constant =", all(c.free_symbols==set() for c in a))
Utskrift fra Python:
r(t) = Matrix([[4*t + 2, -5*t**2 + 2*t]])
v(t) = Matrix([[4, 2 - 10*t]])
a(t) = Matrix([[0, -10]])
Acceleration is constant = True

Fasit: \(\vec v(t)=[4,2-10t]\) og \(\vec a(t)=[0,-10]\).

Vanlig feil: Å finne banefarten i stedet for fartsvektoren.
Sensorpunkt: Begge komponentene må deriveres korrekt.
Del 1 - Oppgave 4bOrtogonalitet mellom vektorer

Oppgave 4b

Oppgave: Når står fartsvektoren vinkelrett på akselerasjonsvektoren?
Vis løsning

Hva spør oppgaven om? Vektorer er vinkelrette når skalarproduktet er null.

Steg 1 - Sett opp

\[[4,2-10t]\cdot[0,-10]=0.\]

Steg 2 - Skalarprodukt

\[0-10(2-10t)=0.\]

Steg 3 - Forenkle

\[-20+100t=0.\]

Steg 4 - Løs

\[t=\frac{20}{100}=\frac15.\]

Steg 5 - Kontroll

\(\vec v(1/5)=[4,0]\), mens \(\vec a=[0,-10]\).

Steg 6 - Konklusjon

En horisontal og en vertikal vektor er vinkelrette.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[Dot[(4,2-10t),(0,-10)]=0,t]
\(t=1/5\)

Tolkning: Skalarproduktet blir null ved t=0,2 s.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
t = sp.symbols("t", real=True)
v = sp.Matrix([4,2-10*t])
a = sp.Matrix([0,-10])
dot = sp.expand(v.dot(a))
solution = sp.solve(sp.Eq(dot,0),t)[0]
print("v(t) =", v.T)
print("a(t) =", a.T)
print("v dot a =", dot)
print("t =", solution)
print("v(1/5) =", v.subs(t,solution).T)
print("Check dot product =", dot.subs(t,solution))
Utskrift fra Python:
v(t) = Matrix([[4, 2 - 10*t]])
a(t) = Matrix([[0, -10]])
v dot a = 100*t - 20
t = 1/5
v(1/5) = Matrix([[4, 0]])
Check dot product = 0

Fasit: \(t=\dfrac15=0.2\) s.

Vanlig feil: Å sette lengdene av vektorene lik null i stedet for skalarproduktet.
Sensorpunkt: Ortogonalitetsbetingelsen og kontrollen bør vises.
Del 1 - Oppgave 5aVektor mellom to punkter

Oppgave 5a

Oppgave: For \(A(1,1)\) og \(B(6,2)\), bestem \(\overrightarrow{AB}\) og \(|\overrightarrow{AB}|\).
Vis løsning

Hva spør oppgaven om? Vektoren fra A til B finnes som B minus A.

Steg 1 - Trekk fra koordinater

\[\overrightarrow{AB}=(6-1,2-1).\]

Steg 2 - Vektor

\[\overrightarrow{AB}=(5,1).\]

Steg 3 - Lengdeformel

\[|\overrightarrow{AB}|=\sqrt{5^2+1^2}.\]

Steg 4 - Forenkle

\[|\overrightarrow{AB}|=\sqrt{26}.\]

Steg 5 - Desimal

\(\sqrt{26}\approx5.10\).

Steg 6 - Retning

Vektoren går fem enheter mot høyre og én opp.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Vector[(1,1),(6,2)]
\((5,1)\)
2
Length[Vector[(1,1),(6,2)]]
\(\sqrt{26}\)

Tolkning: GeoGebra beregner både vektoren og lengden.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
A = sp.Matrix([1,1])
B = sp.Matrix([6,2])
AB = B-A
length = sp.sqrt(AB.dot(AB))
print("A =", A.T)
print("B =", B.T)
print("AB =", AB.T)
print("AB dot AB =", AB.dot(AB))
print("|AB| =", length)
print("Decimal length =", sp.N(length,8))
Utskrift fra Python:
A = Matrix([[1, 1]])
B = Matrix([[6, 2]])
AB = Matrix([[5, 1]])
AB dot AB = 26
|AB| = sqrt(26)
Decimal length = 5.0990195

Fasit: \(\overrightarrow{AB}=(5,1)\) og \(|\overrightarrow{AB}|=\sqrt{26}\).

Vanlig feil: Å regne A-B og dermed få motsatt retning.
Sensorpunkt: Riktig rekkefølge og eksakt lengde.
Del 1 - Oppgave 5bMatematisk tyngdepunkt

Oppgave 5b

Oppgave: Bestem tyngdepunktet til \(A(1,1),B(6,2),C(5,7),D(2,8)\).
Vis løsning

Hva spør oppgaven om? Tyngdepunktet er gjennomsnittet av de fire posisjonsvektorene.

Steg 1 - x-sum

\(1+6+5+2=14\).

Steg 2 - y-sum

\(1+2+7+8=18\).

Steg 3 - Divider med 4

\[T=\left(\frac{14}{4},\frac{18}{4}\right).\]

Steg 4 - Forenkle

\[T=\left(\frac72,\frac92\right).\]

Steg 5 - Desimalform

\(T=(3.5,4.5)\).

Steg 6 - Kontroll

Punktet ligger sentralt mellom hjørnene.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Centroid[(1,1),(6,2),(5,7),(2,8)]
\((7/2,9/2)\)

Tolkning: Gjennomsnittet av koordinatene gir tyngdepunktet.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
points = [sp.Matrix([1,1]),sp.Matrix([6,2]),sp.Matrix([5,7]),sp.Matrix([2,8])]
coordinate_sum = sum(points,sp.zeros(2,1))
T = coordinate_sum/4
print("Points =", [tuple(p) for p in points])
print("Coordinate sum =", coordinate_sum.T)
print("Centroid T =", T.T)
print("Decimal T =", tuple(sp.N(c) for c in T))
Utskrift fra Python:
Points = [(1, 1), (6, 2), (5, 7), (2, 8)]
Coordinate sum = Matrix([[14, 18]])
Centroid T = Matrix([[7/2, 9/2]])
Decimal T = (3.50000000000000, 4.50000000000000)

Fasit: \(T=(7/2,9/2)=(3.5,4.5)\).

Vanlig feil: Å dele på antall koordinater (8) i stedet for antall punkter (4).
Sensorpunkt: Begge koordinatene må gjennomsnittsberegnes.
Del 1 - Oppgave 5cUkjent hjørne fra tyngdepunkt

Oppgave 5c

Oppgave: Punktene \(E(0,3),F(2,-2),G(7,3)\) og H har tyngdepunkt \(T(3,2)\). Finn H.
Vis løsning

Hva spør oppgaven om? Fire ganger tyngdepunktet er summen av de fire posisjonsvektorene.

Steg 1 - Total sum

\[4T=(12,8).\]

Steg 2 - Kjente x-koordinater

\(0+2+7=9\).

Steg 3 - Kjente y-koordinater

\(3-2+3=4\).

Steg 4 - Trekk fra

\[H=(12,8)-(9,4).\]

Steg 5 - Resultat

\[H=(3,4).\]

Steg 6 - Kontroll

Gjennomsnittet av alle fire punkter blir \((3,2)\).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
H=4(3,2)-(0,3)-(2,-2)-(7,3)
\((3,4)\)

Tolkning: Vektorlikningen løses direkte for H.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
E=sp.Matrix([0,3]); F=sp.Matrix([2,-2]); G=sp.Matrix([7,3]); T=sp.Matrix([3,2])
H=4*T-E-F-G
check=(E+F+G+H)/4
print("4T =", (4*T).T)
print("E+F+G =", (E+F+G).T)
print("H =", H.T)
print("Centroid check =", check.T)
print("Check equals T =", check==T)
Utskrift fra Python:
4T = Matrix([[12, 8]])
E+F+G = Matrix([[9, 4]])
H = Matrix([[3, 4]])
Centroid check = Matrix([[3, 2]])
Check equals T = True

Fasit: \(H=(3,4)\).

Vanlig feil: Å bruke T i stedet for 4T i vektorlikningen.
Sensorpunkt: Tilbakekontroll av tyngdepunktet bør være med.
Del 1 - Oppgave 6aHypergeometrisk sannsynlighet

Oppgave 6a

Oppgave: En krukke har 2 røde og 2 blå kuler. To trekkes uten tilbakelegging. Finn sannsynligheten for lik farge.
Vis løsning

Hva spør oppgaven om? Lik farge betyr enten to røde eller to blå.

Steg 1 - Totalt antall par

\(\binom42=6\).

Steg 2 - To røde

\(\binom22=1\).

Steg 3 - To blå

\(\binom22=1\).

Steg 4 - Gunstige par

\(1+1=2\).

Steg 5 - Sannsynlighet

\[P=\frac{2}{6}=\frac13.\]

Steg 6 - Tolk

Mia må ta oppvasken med sannsynlighet omtrent 33,3 %.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
(nCr(2,2)+nCr(2,2))/nCr(4,2)
\(1/3\)

Tolkning: Kombinasjoner teller uordnede trekk uten tilbakelegging.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
from math import comb
all_pairs = comb(4,2)
red_red = comb(2,2)
blue_blue = comb(2,2)
favorable = red_red+blue_blue
probability = favorable/all_pairs
print("All pairs =", all_pairs)
print("Red-red pairs =", red_red)
print("Blue-blue pairs =", blue_blue)
print("Favorable pairs =", favorable)
print("Probability =", probability)
print("Exact fraction = 1/3")
Utskrift fra Python:
All pairs = 6
Red-red pairs = 1
Blue-blue pairs = 1
Favorable pairs = 2
Probability = 0.3333333333333333
Exact fraction = 1/3

Fasit: \(P(\text{lik farge})=1/3\).

Vanlig feil: Å behandle trekkene som uavhengige selv om det ikke er tilbakelegging.
Sensorpunkt: Begge tilfellene, RR og BB, må tas med.
Del 1 - Oppgave 6bMinste heltall i sannsynlighetsmodell

Oppgave 6b

Oppgave: Hvor mange røde kuler må det minst være når det fortsatt er 2 blå, dersom sannsynligheten for ulik farge skal være mindre enn 50 %?
Vis løsning

Hva spør oppgaven om? La r være antall røde kuler. Et ulikt par består av én rød og én blå.

Steg 1 - Gunstige par

Det finnes \(2r\) rød-blå-par.

Steg 2 - Totalt antall par

\(\binom{r+2}{2}=(r+2)(r+1)/2\).

Steg 3 - Sannsynlighet

\[P(\text{ulik})=\frac{4r}{(r+2)(r+1)}.\]

Steg 4 - Ulikhet

\[\frac{4r}{(r+2)(r+1)}<\frac12\iff r^2-5r+2>0.\]

Steg 5 - Heltallskontroll

For r=4 er sannsynligheten \(8/15>1/2\); for r=5 er den \(10/21<1/2\).

Steg 6 - Minimum

Det må minst være 5 røde kuler.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Sequence[4r/((r+2)(r+1)),r,2,8]
Første verdi under 0,5 ved r=5

Tolkning: Kontrollen av r=4 og r=5 dokumenterer minste heltall.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
from fractions import Fraction
def p_unlike(r):
    return Fraction(4*r,(r+2)*(r+1))
for r in range(2,7):
    print("r =",r,"P(unlike) =",p_unlike(r),"=",float(p_unlike(r)))
first = next(r for r in range(2,100) if p_unlike(r) < Fraction(1,2))
print("First r below 1/2 =", first)
print("Previous probability =", p_unlike(first-1))
print("Current probability =", p_unlike(first))
Utskrift fra Python:
r = 2 P(unlike) = 2/3 = 0.6666666666666666
r = 3 P(unlike) = 3/5 = 0.6
r = 4 P(unlike) = 8/15 = 0.5333333333333333
r = 5 P(unlike) = 10/21 = 0.47619047619047616
r = 6 P(unlike) = 3/7 = 0.42857142857142855
First r below 1/2 = 5
Previous probability = 8/15
Current probability = 10/21

Fasit: Det må minst være \(5\) røde kuler.

Vanlig feil: Å finne en verdi som virker uten å kontrollere at forrige heltall ikke virker.
Sensorpunkt: Formel og minimumskontroll ved r=4 og r=5.
Del 1 - Oppgave 7aMonotoni via den deriverte

Oppgave 7a

Oppgave: For \(f(x)=(x+2)(x^2+x+5)\), vis at grafen er stigende for alle x.
Vis løsning

Hva spør oppgaven om? Vi deriverer og omskriver den deriverte til en åpenbart positiv form.

Steg 1 - Utvid

\[f(x)=x^3+3x^2+7x+10.\]

Steg 2 - Deriver

\[f^\prime(x)=3x^2+6x+7.\]

Steg 3 - Fullfør kvadratet

\[f^\prime(x)=3(x+1)^2+4.\]

Steg 4 - Positivitet

\((x+1)^2\ge0\), derfor er \(3(x+1)^2+4>0\).

Steg 5 - Monotoni

Når den deriverte er positiv overalt, er f strengt stigende.

Steg 6 - Konklusjon

Grafen er stigende for alle reelle x.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Derivative[(x+2)(x^2+x+5)]
\(3x^2+6x+7\)
2
CompleteSquare[3x^2+6x+7]
\(3(x+1)^2+4\)

Tolkning: Den minste verdien av den deriverte er 4.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
x=sp.symbols("x", real=True)
f=(x+2)*(x**2+x+5)
f_prime=sp.expand(sp.diff(f,x))
completed=3*(x+1)**2+4
minimum=sp.minimum(f_prime,x,sp.S.Reals)
print("Expanded f =", sp.expand(f))
print("f'(x) =", f_prime)
print("Completed square =", completed)
print("Difference =", sp.expand(f_prime-completed))
print("Minimum of f' =", minimum)
print("Strictly positive =", minimum>0)
Utskrift fra Python:
Expanded f = x**3 + 3*x**2 + 7*x + 10
f'(x) = 3*x**2 + 6*x + 7
Completed square = 3*(x + 1)**2 + 4
Difference = 0
Minimum of f' = 4
Strictly positive = True

Fasit: \(f^\prime(x)=3(x+1)^2+4>0\), så f er strengt stigende.

Vanlig feil: Å bare se på koeffisienten foran x² uten å finne minimum.
Sensorpunkt: Positiv deriverte må begrunnes for alle x.
Del 1 - Oppgave 7bVendepunkt

Oppgave 7b

Oppgave: Bestem eventuelle vendepunkt på grafen til f.
Vis løsning

Hva spør oppgaven om? Et vendepunkt oppstår når den andrederiverte skifter fortegn.

Steg 1 - Førstederivert

\(f^\prime(x)=3x^2+6x+7\).

Steg 2 - Andrederivert

\[f^{\prime\prime}(x)=6x+6.\]

Steg 3 - Kandidat

\(6x+6=0\Rightarrow x=-1\).

Steg 4 - Fortegnsskifte

Andrederiverten er negativ før -1 og positiv etter -1.

Steg 5 - y-koordinat

\[f(-1)=(1)(5)=5.\]

Steg 6 - Vendepunkt

Grafen har vendepunkt \((-1,5)\).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[Derivative[(x+2)(x^2+x+5),2]=0,x]
\(x=-1\)
2
f(-1)
\(5\)

Tolkning: Fortegnsskiftet i f'' bekrefter vendepunktet.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
x=sp.symbols("x", real=True)
f=(x+2)*(x**2+x+5)
f2=sp.diff(f,x,2)
x0=sp.solve(sp.Eq(f2,0),x)[0]
y0=sp.expand(f).subs(x,x0)
print("f''(x) =", f2)
print("Candidate x =", x0)
print("f''(-2) =", f2.subs(x,-2))
print("f''(0) =", f2.subs(x,0))
print("y-coordinate =", y0)
print("Inflection point =", (x0,y0))
Utskrift fra Python:
f''(x) = 6*(x + 1)
Candidate x = -1
f''(-2) = -6
f''(0) = 6
y-coordinate = 5
Inflection point = (-1, 5)

Fasit: Vendepunktet er \((-1,5)\).

Vanlig feil: Å finne x=-1, men glemme å beregne y-koordinaten eller fortegnsskiftet.
Sensorpunkt: Andrederivert, fortegnsskifte og punktkoordinater.
Del 1 - Oppgave 7cGrafskisse

Oppgave 7c

Oppgave: Lag en skisse av grafen til f.
Vis løsning

Hva spør oppgaven om? Vi samler nullpunkt, skjæring med y-aksen, monotoni og vendepunkt.

Steg 1 - Nullpunkt

Faktoren \(x+2\) gir x=-2. Andregradsfaktoren har negativ diskriminant og ingen reelle nullpunkter.

Steg 2 - y-akse

\(f(0)=10\).

Steg 3 - Monotoni

Grafen er strengt stigende.

Steg 4 - Vendepunkt

Vendepunktet er \((-1,5)\).

Steg 5 - Endeadferd

Som tredjegrad med positivt ledende ledd går grafen mot \(-\infty\) til venstre og \(+\infty\) til høyre.

Steg 6 - Skisse

Tegn en stigende S-kurve gjennom \((-2,0),(-1,5),(0,10)\).

Illustrasjon til Oppgave 7c
Grafen viser alle sentrale kjennetegn.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
f(x)=(x+2)(x^2+x+5)
Funksjon
2
Root[f]
\((-2,0)\)
3
InflectionPoint[f]
\((-1,5)\)

Tolkning: Nøkkelpunktene bestemmer en korrekt kvalitativ skisse.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
x=sp.symbols("x", real=True)
f=sp.expand((x+2)*(x**2+x+5))
roots=sp.solve(sp.Eq(f,0),x)
real_roots=[r for r in roots if r.is_real]
print("f(x) =", f)
print("All symbolic roots =", roots)
print("Real roots =", real_roots)
print("y-intercept =", f.subs(x,0))
print("Inflection point =", (-1,f.subs(x,-1)))
print("Leading coefficient =", sp.Poly(f,x).LC())
Utskrift fra Python:
f(x) = x**3 + 3*x**2 + 7*x + 10
All symbolic roots = [-2]
Real roots = [-2]
y-intercept = 10
Inflection point = (-1, 5)
Leading coefficient = 1

Fasit: Skissen er en strengt stigende S-kurve med nullpunkt \((-2,0)\), vendepunkt \((-1,5)\) og y-skjæring \((0,10)\).

Vanlig feil: Å tegne lokale topp- eller bunnpunkter selv om f' er positiv overalt.
Sensorpunkt: Nullpunkt, vendepunkt, monotoni og endeadferd bør framgå.
Del 1 - Oppgave 8Sirkelvinkler

Oppgave 8

Oppgave: Bestem vinklene i trekanten ABC i figuren, der \(\angle ABS=30^\circ\) og \(\angle BSC=140^\circ\).
Vis løsning

Hva spør oppgaven om? Vi bruker at radiusene er like og at en periferivinkel er halvparten av sentralvinkelen over samme bue.

Steg 1 - Trekanten ASB

\(SA=SB\), så grunnvinklene ved A og B er begge \(30^\circ\).

Steg 2 - Sentralvinkel ASB

\(\angle ASB=180^\circ-30^\circ-30^\circ=120^\circ\).

Steg 3 - Siste sentralvinkel

\(\angle ASC=360^\circ-120^\circ-140^\circ=100^\circ\).

Steg 4 - Vinkel A

\(\angle BAC=\frac12\angle BSC=70^\circ\).

Steg 5 - Vinkel B

\(\angle ABC=\frac12\angle ASC=50^\circ\).

Steg 6 - Vinkel C

\(\angle ACB=\frac12\angle ASB=60^\circ\).

Illustrasjon til Oppgave 8
Sentralvinklene 120°, 140° og 100° bestemmer trekantvinklene.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
alpha=140/2
\(70^\circ\)
2
beta=(360-120-140)/2
\(50^\circ\)
3
gamma=120/2
\(60^\circ\)

Tolkning: De tre vinklene summerer til 180 grader.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
central_AB = 120
central_BC = 140
central_AC = 360-central_AB-central_BC
angle_A = central_BC/2
angle_B = central_AC/2
angle_C = central_AB/2
print("Central angle AB =", central_AB)
print("Central angle BC =", central_BC)
print("Central angle AC =", central_AC)
print("Angle A =", angle_A)
print("Angle B =", angle_B)
print("Angle C =", angle_C)
print("Triangle angle sum =", angle_A+angle_B+angle_C)
Utskrift fra Python:
Central angle AB = 120
Central angle BC = 140
Central angle AC = 100
Angle A = 70.0
Angle B = 50.0
Angle C = 60.0
Triangle angle sum = 180.0

Fasit: \(\angle A=70^\circ\), \(\angle B=50^\circ\), \(\angle C=60^\circ\).

Vanlig feil: Å halvere den sentralvinkelen som ligger ved samme punkt, i stedet for den som spenner over motsatt bue.
Sensorpunkt: Både likebeint trekant og periferivinkelsetning må brukes korrekt.
Del 1 - Oppgave 9Midtlinjen i et trapes

Oppgave 9

Oppgave: I trapeset ABCD er M midtpunkt på AD og N midtpunkt på BC. Vis at \[MN=\frac12(AB+CD).\]
Vis løsning

Hva spør oppgaven om? Vi kan bruke koordinater eller vektorer. Legg de parallelle sidene vannrett.

Steg 1 - Koordinater

Sett \(A=(0,0), B=(b,0), D=(d,h), C=(d+c,h)\), der \(AB=b\) og \(CD=c\).

Steg 2 - Midtpunkt M

\[M=(d/2,h/2).\]

Steg 3 - Midtpunkt N

\[N=((b+d+c)/2,h/2).\]

Steg 4 - Samme høyde

M og N har samme y-koordinat, så MN er parallell med grunnlinjene.

Steg 5 - Lengde

\[MN=\frac{b+d+c-d}{2}=\frac{b+c}{2}.\]

Steg 6 - Oversett

\[MN=\frac12(AB+CD).\]

Illustrasjon til Oppgave 9
M og N ligger på samme høyde, og den horisontale avstanden er gjennomsnittet av grunnlinjene.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
A=(0,0)
2
B=(b,0)
3
D=(d,h)
4
C=(d+c,h)
5
Distance[Midpoint[A,D],Midpoint[B,C]]
\((b+c)/2\)

Tolkning: Koordinatberegningen viser både parallellitet og lengde.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
b,c,d,h=sp.symbols("b c d h", positive=True)
A=sp.Matrix([0,0]); B=sp.Matrix([b,0]); D=sp.Matrix([d,h]); C=sp.Matrix([d+c,h])
M=(A+D)/2; N=(B+C)/2
MN=sp.simplify(N-M)
print("M =", M.T)
print("N =", N.T)
print("Vector MN =", MN.T)
print("Horizontal length MN =", sp.simplify(MN[0]))
print("Expected half-sum =", (b+c)/2)
print("Difference =", sp.simplify(MN[0]-(b+c)/2))
Utskrift fra Python:
M = Matrix([[d/2, h/2]])
N = Matrix([[b/2 + c/2 + d/2, h/2]])
Vector MN = Matrix([[b/2 + c/2, 0]])
Horizontal length MN = b/2 + c/2
Expected half-sum = b/2 + c/2
Difference = 0

Fasit: \(MN=\dfrac12(AB+CD)\).

Vanlig feil: Å bruke differansen av grunnlinjene; midtlinjen er gjennomsnittet av lengdene.
Sensorpunkt: En klar koordinat- eller vektorbevisføring.

Del 2 - med hjelpemidler

Del 2 - Oppgave 1aBinomisk modell og forutsetninger

Oppgave 1a

Oppgave: Gran Canaria har i gjennomsnitt 300 soldager i året. Forklar hvordan sannsynligheten for 14 soldager på rad kan bli 6,4 %.
Vis løsning

Hva spør oppgaven om? Agnete har sannsynligvis brukt en binomisk/produktmodell med konstant dagsannsynlighet.

Steg 1 - Dagsannsynlighet

\[p=\frac{300}{365}.\]

Steg 2 - Alle 14 dager

For 14 soldager må alle 14 forsøk lykkes.

Steg 3 - Produkt

\[P=p^{14}=\left(\frac{300}{365}\right)^{14}.\]

Steg 4 - Beregn

\[P\approx0.06421=6.42\%.\]

Steg 5 - Forutsetning 1

Hver dag antas å ha samme sannsynlighet p for sol.

Steg 6 - Forutsetning 2

Dagene antas uavhengige, og årsgjennomsnittet antas representativt for perioden.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
p=300/365
\(0.8219178\)
2
p^14
\(0.0642092\)

Tolkning: Produktet gir omtrent 6,4 prosent.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
p = 300/365
probability = p**14
print("Sunny-day probability p =", p)
print("Number of days =", 14)
print("P(all 14 sunny) =", probability)
print("Percent =", 100*probability)
print("Rounded percent =", round(100*probability,1))
print("Assumptions: constant p and independent days")
Utskrift fra Python:
Sunny-day probability p = 0.821917808219178
Number of days = 14
P(all 14 sunny) = 0.06420923026849663
Percent = 6.420923026849663
Rounded percent = 6.4
Assumptions: constant p and independent days

Fasit: \(P=(300/365)^{14}\approx0.0642=6.4\%\), under antakelser om konstant p og uavhengige dager.

Vanlig feil: Å bruke 300/365 som sannsynligheten for hele 14-dagersperioden.
Sensorpunkt: Beregning og modellforutsetninger må begge drøftes.
Del 2 - Oppgave 1bBinomisk sannsynlighet over flere år

Oppgave 1b

Oppgave: Finn sannsynligheten for bare soldager på minst 2 av 8 framtidige feriereiser.
Vis løsning

Hva spør oppgaven om? Hver reise regnes som et forsøk med suksessannsynlighet \(q=(300/365)^{14}\).

Steg 1 - Modell

\(X\sim\operatorname{Bin}(8,q)\), der \(q\approx0.0642092\).

Steg 2 - Hendelse

Vi ønsker \(P(X\ge2)\).

Steg 3 - Komplement

\[P(X\ge2)=1-P(X=0)-P(X=1).\]

Steg 4 - Sett inn

\[1-(1-q)^8-8q(1-q)^7.\]

Steg 5 - Beregn

\[P(X\ge2)\approx0.0891247.\]

Steg 6 - Tolk

Sannsynligheten er omtrent 8,9 %.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
q=(300/365)^14
\(0.0642092\)
2
1-BinomialDist[8,q,1,true]
\(0.0891247\)

Tolkning: Komplementet til høyst én vellykket reise gir minst to.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
from math import comb
q = (300/365)**14
p0 = (1-q)**8
p1 = comb(8,1)*q*(1-q)**7
probability = 1-p0-p1
print("Trip success probability q =", q)
print("P(X=0) =", p0)
print("P(X=1) =", p1)
print("P(X>=2) =", probability)
print("Percent =", 100*probability)
print("Rounded percent =", round(100*probability,1))
Utskrift fra Python:
Trip success probability q = 0.06420923026849663
P(X=0) = 0.5880713982652962
P(X=1) = 0.32280388349089756
P(X>=2) = 0.08912471824380624
Percent = 8.912471824380624
Rounded percent = 8.9

Fasit: \(P(X\ge2)\approx0.0891\), altså omtrent \(8.9\%\).

Vanlig feil: Å beregne nøyaktig to i stedet for minst to.
Sensorpunkt: Binomisk modell og komplementberegning.
Del 2 - Oppgave 1cSøk etter minste parameter

Oppgave 1c

Oppgave: Finn minste gjennomsnittlige antall soldager per år som gir minst 90 % sannsynlighet for minst 22 soldager i en 28-dagersperiode.
Vis løsning

Hva spør oppgaven om? La d være antall soldager per år og \(p=d/365\). Da er \(X\sim\operatorname{Bin}(28,p)\).

Steg 1 - Krav

\[P(X\ge22)\ge0.90.\]

Steg 2 - Digitalt søk

Test heltall d fra 0 til 365.

Steg 3 - Første gyldige verdi

For d=313 blir sannsynligheten omtrent 0.90684.

Steg 4 - Kontroller forrige

For d=312 blir sannsynligheten omtrent 0.89913.

Steg 5 - Minimum

312 er for lite, mens 313 oppfyller kravet.

Steg 6 - Konklusjon

Stedet må ha minst 313 soldager i gjennomsnitt per år.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Sequence[1-BinomialDist[28,d/365,21,true],d,300,320]
Første verdi minst 0,90 ved d=313

Tolkning: Kontrollen av d=312 dokumenterer minimumet.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
from math import comb
def tail(d):
    p=d/365
    return sum(comb(28,k)*p**k*(1-p)**(28-k) for k in range(22,29))
first=next(d for d in range(366) if tail(d)>=0.90)
print("First annual sunny-day count =", first)
print("p for d=313 =", first/365)
print("P(X>=22) for d=312 =", tail(first-1))
print("P(X>=22) for d=313 =", tail(first))
print("312 meets requirement =", tail(first-1)>=0.90)
print("313 meets requirement =", tail(first)>=0.90)
Utskrift fra Python:
First annual sunny-day count = 313
p for d=313 = 0.8575342465753425
P(X>=22) for d=312 = 0.89912679889525
P(X>=22) for d=313 = 0.9068370286817145
312 meets requirement = False
313 meets requirement = True

Fasit: Minst \(313\) soldager per år.

Vanlig feil: Å runde en beregnet p og deretter få feil minste heltall.
Sensorpunkt: Både 312 og 313 må kontrolleres.
Del 2 - Oppgave 2aProsjektil og nullpunkt

Oppgave 2a

Oppgave: Rikards kule har posisjon \(\vec r_A(t)=[9t,1+7t-5t^2]\). Hvor langt går den i x-retning før den treffer bakken?
Vis løsning

Hva spør oppgaven om? Kulen treffer bakken når y-koordinaten er null. Vi velger den positive tiden.

Steg 1 - Bakkevilkår

\[1+7t-5t^2=0.\]

Steg 2 - Løs andregradslikningen

\[t=\frac{7\pm\sqrt{69}}{10}.\]

Steg 3 - Fysisk tid

Den positive løsningen er \(t=(7+\sqrt{69})/10\approx1.5307\).

Steg 4 - x-koordinat

\[x=9t=\frac{9(7+\sqrt{69})}{10}.\]

Steg 5 - Desimal

\[x\approx13.776\text{ m}.\]

Steg 6 - Konklusjon

Kulen går omtrent 13,8 meter i x-retning.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[1+7t-5t^2=0,t]
\((7\pm\sqrt{69})/10\)
2
9(7+sqrt(69))/10
\(13.776\)

Tolkning: Bare den positive tiden er fysisk relevant.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
t=sp.symbols("t", real=True)
y=1+7*t-5*t**2
roots=sp.solve(sp.Eq(y,0),t)
t_hit=max(roots,key=lambda z: float(z))
x_hit=sp.simplify(9*t_hit)
print("Ground equation roots =", roots)
print("Positive impact time =", t_hit)
print("Decimal time =", sp.N(t_hit,10))
print("Horizontal distance =", x_hit)
print("Decimal distance =", sp.N(x_hit,10))
print("Height check =", sp.simplify(y.subs(t,t_hit)))
Utskrift fra Python:
Ground equation roots = [7/10 - sqrt(69)/10, 7/10 + sqrt(69)/10]
Positive impact time = 7/10 + sqrt(69)/10
Decimal time = 1.530662386
Horizontal distance = 63/10 + 9*sqrt(69)/10
Decimal distance = 13.77596148
Height check = 0

Fasit: \(x=\dfrac{9(7+\sqrt{69})}{10}\approx13.8\text{ m}\).

Vanlig feil: Å bruke den negative tiden eller glemme startshøyden 1 m.
Sensorpunkt: Positivt nullpunkt og x-innsetting må dokumenteres.
Del 2 - Oppgave 2bTegne parameterkurver

Oppgave 2b

Oppgave: Tegn banene til \(\vec r_A(t)=[9t,1+7t-5t^2]\) og \(\vec r_B(t)=[25-8t,1+7t-5t^2]\) i samme koordinatsystem.
Vis løsning

Hva spør oppgaven om? Begge kulene har samme høydefunksjon, men beveger seg i motsatt x-retning.

Steg 1 - Gyldig tidsintervall

Tegn fra t=0 til positivt bakkenullpunkt \(t\approx1.5307\).

Steg 2 - Rikard

Bruk parameterkurven \((9t,1+7t-5t^2)\).

Steg 3 - Berit

Bruk parameterkurven \((25-8t,1+7t-5t^2)\).

Steg 4 - Startpunkter

Rikard starter i \((0,1)\), Berit i \((25,1)\).

Steg 5 - Felles høyde

For samme t har de alltid samme y-koordinat.

Steg 6 - Dokumentasjon

Vis parameterintervall og akseenheter i grafverktøyet.

Illustrasjon til Oppgave 2b
Kulebanene er tegnet i samme x-y-koordinatsystem.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Curve[9t,1+7t-5t^2,t,0,(7+sqrt(69))/10]
Rikards bane
2
Curve[25-8t,1+7t-5t^2,t,0,(7+sqrt(69))/10]
Berits bane

Tolkning: Kurvene møtes før begge treffer bakken.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import numpy as np
import math
t_end=(7+math.sqrt(69))/10
t=np.linspace(0,t_end,6)
xa=9*t; xb=25-8*t; y=1+7*t-5*t**2
print("Impact time =", t_end)
print("t sample =", t)
print("Rikard x sample =", xa)
print("Berit x sample =", xb)
print("Common y sample =", y)
print("Start points =", (0,1),(25,1))
Utskrift fra Python:
Impact time = 1.5306623862918074
t sample = [0.         0.30613248 0.61226495 0.91839743 1.22452991 1.53066239]
Rikard x sample = [ 0.          2.7551923   5.51038459  8.26557689 11.02076918 13.77596148]
Berit x sample = [25.         22.55094018 20.10188036 17.65282055 15.20376073 12.75470091]
Common y sample = [1.00000000e+00 2.67434187e+00 3.41151281e+00 3.21151281e+00
 2.07434187e+00 1.77635684e-15]
Start points = (0, 1) (25, 1)

Fasit: Banene er de to parameterkurvene vist i figuren for \(0\le t\le(7+\sqrt{69})/10\).

Vanlig feil: Å tegne y som funksjon av t på en akse som skal vise x mot y.
Sensorpunkt: Begge parameteruttrykk og korrekt tidsintervall.
Del 2 - Oppgave 2cKollisjon mellom to parameterbevegelser

Oppgave 2c

Oppgave: Vil kulene treffe hverandre?
Vis løsning

Hva spør oppgaven om? Siden y-koordinatene er identiske ved samme t, trenger vi bare å løse likheten mellom x-koordinatene og kontrollere at kulene fortsatt er i luften.

Steg 1 - Lik x

\[9t=25-8t.\]

Steg 2 - Løs

\[17t=25\Rightarrow t=25/17\approx1.4706.\]

Steg 3 - Sammenlikn med landing

\(25/17<1.5307\), så møtet skjer før bakken.

Steg 4 - Møtepunkt x

\[x=9\cdot25/17=225/17.\]

Steg 5 - Møtepunkt y

\[y=1+7(25/17)-5(25/17)^2=139/289>0.\]

Steg 6 - Konklusjon

Ja, de treffer hverandre omtrent 0,48 m over bakken.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[9t=25-8t,t]
\(25/17\)
2
Substitute[(9t,1+7t-5t^2),t,25/17]
\((225/17,139/289)\)

Tolkning: Den positive høyden viser at kollisjonen skjer i luften.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
t=sp.symbols("t", real=True)
t_meet=sp.solve(sp.Eq(9*t,25-8*t),t)[0]
x_meet=sp.simplify(9*t_meet)
y_meet=sp.simplify(1+7*t_meet-5*t_meet**2)
t_hit=(7+sp.sqrt(69))/10
print("Meeting time =", t_meet)
print("Decimal meeting time =", sp.N(t_meet,10))
print("Ground-hit time =", sp.N(t_hit,10))
print("Meeting point =", (x_meet,y_meet))
print("Decimal height =", sp.N(y_meet,10))
print("Meeting before ground =", bool(t_meet<t_hit))
Utskrift fra Python:
Meeting time = 25/17
Decimal meeting time = 1.470588235
Ground-hit time = 1.530662386
Meeting point = (225/17, 139/289)
Decimal height = 0.4809688581
Meeting before ground = True

Fasit: Ja. De møtes ved \(t=25/17\) i punktet \((225/17,139/289)\).

Vanlig feil: Å løse x-likheten uten å kontrollere at tidspunktet er før kulene treffer bakken.
Sensorpunkt: Tid, punkt og fysisk gyldighet må kontrolleres.
Del 2 - Oppgave 2dParameterdrøfting

Oppgave 2d

Oppgave: Ville svaret blitt annerledes dersom Berit hadde stått nærmere Rikard, med samme kast?
Vis løsning

Hva spør oppgaven om? La startavstanden være d meter, der \(0<d<25\). Da er Berits x-koordinat \(d-8t\).

Steg 1 - Ny møtetid

\[9t=d-8t\Rightarrow t=d/17.\]

Steg 2 - Nærmere betyr tidligere

Når \(d<25\), får vi \(t<25/17\).

Steg 3 - Tidligere enn landing

Vi vet at \(25/17\) allerede er før landingstidspunktet.

Steg 4 - Høyden

For \(0\le t\le25/17\) er høyden positiv.

Steg 5 - Konklusjon

De vil fortsatt treffes, bare tidligere og nærmere Rikard.

Steg 6 - Generell grense

Faktisk kan startavstanden være opptil omtrent 26,02 m før møtet blir etter landing.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
t=d/17
Møtetid
2
17(7+sqrt(69))/10
\(26.0213\text{ m}\)

Tolkning: Alle avstander mindre enn 25 m er under den maksimale kollisjonsavstanden.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
d=sp.symbols("d", positive=True)
t_meet=d/17
t_hit=(7+sp.sqrt(69))/10
d_max=sp.simplify(17*t_hit)
print("Meeting time for distance d =", t_meet)
print("Original meeting time for d=25 =", t_meet.subs(d,25))
print("Impact time =", t_hit)
print("Largest distance for meeting before impact =", d_max)
print("Decimal largest distance =", sp.N(d_max,10))
print("25 m is below limit =", bool(25<d_max))
Utskrift fra Python:
Meeting time for distance d = d/17
Original meeting time for d=25 = 25/17
Impact time = 7/10 + sqrt(69)/10
Largest distance for meeting before impact = 119/10 + 17*sqrt(69)/10
Decimal largest distance = 26.02126057
25 m is below limit = True

Fasit: Nei. Hvis Berit står nærmere enn 25 m, møtes kulene fortsatt, men tidligere.

Vanlig feil: Å anta at samme kast betyr samme startpunkt eller endre y-funksjonen.
Sensorpunkt: En parameter d og tids-/landingskontroll gir en fullgod drøfting.
Del 2 - Oppgave 3Maksimering av rektangelareal

Oppgave 3

Oppgave: For \(f(x)=6x-x^2\) på \([0,6]\) har rektangelet venstre side ved x=a og høyre hjørne C på grafen. Finn eksakt a som maksimerer arealet.
Vis løsning

Hva spør oppgaven om? Parabelen er symmetrisk om x=3. Punktet på høyre side med samme høyde har x-koordinat \(6-a\).

Steg 1 - Bredde

\[(6-a)-a=6-2a.\]

Steg 2 - Høyde

\[f(a)=6a-a^2.\]

Steg 3 - Arealfunksjon

\[A(a)=(6-2a)(6a-a^2)=2a^3-18a^2+36a.\]

Steg 4 - Deriver

\[A^\prime(a)=6a^2-36a+36=6(a^2-6a+6).\]

Steg 5 - Kritiske verdier

\[a=3\pm\sqrt3.\] Bare \(3-\sqrt3\) ligger i \((0,3)\).

Steg 6 - Maksimum

Endepunktene gir areal 0, og den indre kritiske verdien gir maksimum.

Illustrasjon til Oppgave 3
Rektangelets sider ligger ved x=a og x=6-a.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
A(a)=(6-2a)(6a-a^2)
Arealfunksjon
2
Extremum[A,0,3]
\(a=3-\sqrt3\)

Tolkning: CAS finner den eneste indre maksimalverdien.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
a=sp.symbols("a", real=True)
A=(6-2*a)*(6*a-a**2)
A_prime=sp.factor(sp.diff(A,a))
critical=sp.solve(sp.Eq(A_prime,0),a)
valid=[r for r in critical if 0<r<3]
maximum_area=sp.simplify(A.subs(a,valid[0]))
print("A(a) =", sp.expand(A))
print("A'(a) =", A_prime)
print("Critical values =", critical)
print("Valid critical value =", valid[0])
print("A at endpoints =", A.subs(a,0),A.subs(a,3))
print("Maximum area =", maximum_area)
print("Decimal a =", sp.N(valid[0],10))
Utskrift fra Python:
A(a) = 2*a**3 - 18*a**2 + 36*a
A'(a) = 6*(a**2 - 6*a + 6)
Critical values = [3 - sqrt(3), sqrt(3) + 3]
Valid critical value = 3 - sqrt(3)
A at endpoints = 0 0
Maximum area = 12*sqrt(3)
Decimal a = 1.267949192

Fasit: \(a=3-\sqrt3\). Maksimalarealet er \(12\sqrt3\).

Vanlig feil: Å anta at rektangelets bredde er 6-a; venstre side starter ved a.
Sensorpunkt: Symmetri, korrekt arealfunksjon og kontroll av intervallet.
Del 2 - Oppgave 4aAndrederivert og oskulerende sirkel

Oppgave 4a

Oppgave: For \(h(x)=x^2\) og \(g(x)=r-\sqrt{r^2-x^2}\), bestem r slik at \(g^{\prime\prime}(0)=h^{\prime\prime}(0)\).
Vis løsning

Hva spør oppgaven om? Vi beregner begge andrederiverte i origo.

Steg 1 - Parabelen

\(h^\prime(x)=2x\) og \(h^{\prime\prime}(x)=2\).

Steg 2 - Førstederivert av g

\[g^\prime(x)=\frac{x}{\sqrt{r^2-x^2}}.\]

Steg 3 - Andrederivert

\[g^{\prime\prime}(x)=\frac{r^2}{(r^2-x^2)^{3/2}}.\]

Steg 4 - Sett x=0

For r>0 blir \(g^{\prime\prime}(0)=1/r\).

Steg 5 - Lik krumning

\[\frac1r=2.\]

Steg 6 - Løs

\[r=\frac12.\]

Illustrasjon til Oppgave 4a
For r=1/2 har parabelen og sirkelen samme tangent og andrederivert i origo.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
g(x)=r-sqrt(r^2-x^2)
2
Substitute[Derivative[g,2],x,0]
\(1/r\)
3
Solve[1/r=2,r]
\(1/2\)

Tolkning: Radiusen er positiv, så absoluttverdiproblemet faller bort.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
x,r=sp.symbols("x r", positive=True)
h=x**2
g=r-sp.sqrt(r**2-x**2)
h2=sp.diff(h,x,2)
g2=sp.simplify(sp.diff(g,x,2))
g2_at_0=sp.simplify(g2.subs(x,0))
solution=sp.solve(sp.Eq(g2_at_0,h2),r)[0]
print("h''(x) =", h2)
print("g'(x) =", sp.simplify(sp.diff(g,x)))
print("g''(x) =", g2)
print("g''(0) =", g2_at_0)
print("r =", solution)
print("Equality check =", sp.simplify(g2_at_0.subs(r,solution)-h2))
Utskrift fra Python:
h''(x) = 2
g'(x) = x/sqrt(r**2 - x**2)
g''(x) = r**2/(r**2 - x**2)**(3/2)
g''(0) = 1/r
r = 1/2
Equality check = 0

Fasit: \(r=1/2\).

Vanlig feil: Å sette g'(0)=h'(0); de er allerede begge 0. Oppgaven krever andrederivert.
Sensorpunkt: Korrekt andrederivasjon og positiv radius.
Del 2 - Oppgave 4bKrumningsradiusformelen

Oppgave 4b

Oppgave: Bruk \[r(a)=\sqrt{\frac{(1+(f^\prime(a))^2)^3}{(f^{\prime\prime}(a))^2}}\] til å finne krumningsradiusen til \(h(x)=x^2\) ved x=0.
Vis løsning

Hva spør oppgaven om? Vi setter inn første- og andrederivert i formelen.

Steg 1 - Deriver

\(h^\prime(x)=2x\), \(h^{\prime\prime}(x)=2\).

Steg 2 - Verdier ved 0

\(h^\prime(0)=0\), \(h^{\prime\prime}(0)=2\).

Steg 3 - Sett inn

\[r(0)=\sqrt{\frac{(1+0^2)^3}{2^2}}.\]

Steg 4 - Forenkle

\[r(0)=\sqrt{\frac14}.\]

Steg 5 - Positiv lengde

Radius er positiv, så \(r(0)=1/2\).

Steg 6 - Sammenlikn

Resultatet samsvarer med den direkte sirkelberegningen i a.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
sqrt((1+(2*0)^2)^3/(2^2))
\(1/2\)

Tolkning: Formelen gir samme krumningsradius som i del a.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
x=sp.symbols("x", real=True)
h=x**2
h1=sp.diff(h,x)
h2=sp.diff(h,x,2)
radius=sp.sqrt((1+h1.subs(x,0)**2)**3/(h2.subs(x,0)**2))
print("h'(x) =", h1)
print("h''(x) =", h2)
print("h'(0) =", h1.subs(x,0))
print("h''(0) =", h2.subs(x,0))
print("Radius formula value =", radius)
print("Decimal radius =", sp.N(radius,10))
Utskrift fra Python:
h'(x) = 2*x
h''(x) = 2
h'(0) = 0
h''(0) = 2
Radius formula value = 1/2
Decimal radius = 0.5000000000

Fasit: Krumningsradiusen er \(1/2\).

Vanlig feil: Å glemme kvadratet rundt f'' eller tredje potens i telleren.
Sensorpunkt: Direkte innsetting i den oppgitte formelen.
Del 2 - Oppgave 4cMinimering av krumningsradius med CAS

Oppgave 4c

Oppgave: For \(f(x)=\ln x\), finn punktet med minst krumningsradius og den minste radiusen.
Vis løsning

Hva spør oppgaven om? Funksjonen har domene x>0. Vi forenkler radiusfunksjonen og minimerer den.

Steg 1 - Deriver

\(f^\prime(x)=1/x\), \(f^{\prime\prime}(x)=-1/x^2\).

Steg 2 - Radiusfunksjon

\[r(x)=\sqrt{\frac{(1+1/x^2)^3}{1/x^4}}=\frac{(x^2+1)^{3/2}}{x},\quad x>0.\]

Steg 3 - Deriver radius

\[r^\prime(x)=\frac{\sqrt{x^2+1}(2x^2-1)}{x^2}.\]

Steg 4 - Kritisk x

\(2x^2-1=0\Rightarrow x=1/\sqrt2\), siden x>0.

Steg 5 - Punkt på grafen

\[\left(\frac1{\sqrt2},\ln\frac1{\sqrt2}\right)=\left(\frac1{\sqrt2},-\frac12\ln2\right).\]

Steg 6 - Minste radius

\[r_{\min}=\frac{3\sqrt3}{2}\approx2.598.\]

Illustrasjon til Oppgave 4c
Radiusfunksjonen har ett globalt minimum på x>0.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
f(x)=ln(x)
2
rho(x)=sqrt((1+(f'(x))^2)^3/(f''(x))^2)
\((x^2+1)^{3/2}/x\)
3
Extremum[rho,0,10]
\(x=1/\sqrt2\)

Tolkning: CAS-minimumet må tolkes på domenet x>0.

Python-kontroll med SymPy

Python 3 - faktisk kjøring
import sympy as sp
x=sp.symbols("x", positive=True)
f=sp.log(x)
f1=sp.diff(f,x); f2=sp.diff(f,x,2)
rho=sp.simplify(sp.sqrt((1+f1**2)**3/(f2**2)))
rho_prime=sp.factor(sp.diff(rho,x))
x_min=sp.sqrt(2)/2
y_min=sp.simplify(f.subs(x,x_min))
rho_min=sp.simplify(rho.subs(x,x_min))
print("f'(x) =", f1)
print("f''(x) =", f2)
print("rho(x) =", rho)
print("rho'(x) =", rho_prime)
print("x at minimum =", x_min)
print("Point y-value =", y_min)
print("Minimum radius =", rho_min)
print("Decimal radius =", sp.N(rho_min,10))
Utskrift fra Python:
f'(x) = 1/x
f''(x) = -1/x**2
rho(x) = (x**2 + 1)**(3/2)/x
rho'(x) = sqrt(x**2 + 1)*(2*x**2 - 1)/x**2
x at minimum = sqrt(2)/2
Point y-value = -log(2)/2
Minimum radius = 3*sqrt(3)/2
Decimal radius = 2.598076211

Fasit: Punktet er \(\left(1/\sqrt2,-\tfrac12\ln2\right)\), og minste krumningsradius er \(3\sqrt3/2\).

Vanlig feil: Å ta med den negative løsningen for x; ln x krever x>0.
Sensorpunkt: Domene, radiusfunksjon, kritisk punkt og eksakt minimum.
Kilde og metode: Oppgavetekstene er transkribert fra Utdanningsdirektoratets eksamenssett REA3022 Matematikk R1, høsten 2020. Sidebildene fra original-PDF-en er brukt som autoritativ kilde ved symboler og figurer. Løsningene, figurene og kontrollkodene er originale ifingo-utarbeidelser. Python-utskriftene er generert ved faktisk kjøring av hver kodeblokk under produksjonen.