R1 eksamenVår 2015

Matematikk R1 eksamen – vår 2015

ifingo
Norsk (Bokmål)

ifingo · Matematikk R1

Matematikk R1 - våren 2015 (REA3022)

Løsningsforslag til eksamenssettet fra Utdanningsdirektoratet.

Del 1 - uten hjelpemidler

Del 1 - Oppgave 1aDerivasjon

Oppgave 1a

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

Hva spør oppgaven om? Vi skal bruke potensregelen på hvert ledd og samle de deriverte uttrykkene.

Steg 1 - Skriv potensregelen

For et ledd \(ax^n\) er den deriverte \(anx^{n-1}\).

Steg 2 - Deriver tredjegradsleddet

\[\frac{d}{dx}(x^3)=3x^2.\]

Steg 3 - Deriver andregradsleddet

\[\frac{d}{dx}(2x^2)=2\cdot2x=4x.\]

Steg 4 - Deriver førstegradsleddet

\[\frac{d}{dx}(-3x)=-3.\]

Steg 5 - Summer leddene

\[f'(x)=3x^2+4x-3.\]

Steg 6 - Kontroller graden

En tredjegradsfunksjon skal normalt få en andregradsfunksjon som derivert, noe svaret gjør.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Derivative[x^3+2x^2-3x,x]
\(3x^2+4x-3\)

Tolkning: CAS bekrefter den leddvise derivasjonen.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x")
f = x**3 + 2*x**2 - 3*x
print("f(x) =", f)
print("Deriver hvert ledd:")
print("d/dx(x^3) =", sp.diff(x**3, x))
print("d/dx(2*x^2) =", sp.diff(2*x**2, x))
print("d/dx(-3*x) =", sp.diff(-3*x, x))
print("f'(x) =", sp.diff(f, x))
print("Kontroll, utvidet form =", sp.expand(sp.diff(f, x)))
Utskrift fra Python:
f(x) = x**3 + 2*x**2 - 3*x
Deriver hvert ledd:
d/dx(x^3) = 3*x**2
d/dx(2*x^2) = 4*x
d/dx(-3*x) = -3
f'(x) = 3*x**2 + 4*x - 3
Kontroll, utvidet form = 3*x**2 + 4*x - 3

Fasit: \(f'(x)=3x^2+4x-3\).

Vanlig feil: Å skrive \(2x\) som derivert av \(2x^2\); koeffisienten 2 må også multipliseres med eksponenten 2.
Sensorpunkt: Sensor ser etter korrekt potensregel på alle tre ledd.
Del 1 - Oppgave 1bLogaritme og kjerneregel

Oppgave 1b

Oppgave: Deriver funksjonen \[g(x)=\ln(x-2).\]
Vis løsning

Hva spør oppgaven om? Vi skal derivere en naturlig logaritme med en lineær indre funksjon.

Steg 1 - Identifiser den indre funksjonen

Sett \(u(x)=x-2\).

Steg 2 - Deriver den indre funksjonen

\[u'(x)=1.\]

Steg 3 - Bruk logaritmeregelen

\[\frac{d}{dx}\ln u(x)=\frac{u'(x)}{u(x)}.\]

Steg 4 - Sett inn u og u-prime

\[g'(x)=\frac{1}{x-2}.\]

Steg 5 - Kontroller domenet

Originalfunksjonen krever \(x-2>0\), altså \(x>2\).

Steg 6 - Skriv sluttresultatet med domene

Den deriverte gjelder for alle \(x>2\).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Derivative[ln(x-2),x]
\(\dfrac{1}{x-2}\)
2
Solve[x-2>0,x]
\(x>2\)

Tolkning: CAS bekrefter både derivert og definisjonsmengde.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", real=True)
g = sp.log(x - 2)
print("g(x) = ln(x - 2)")
print("Indre funksjon u(x) = x - 2")
print("u'(x) =", sp.diff(x - 2, x))
print("Regel: d/dx ln(u) = u'/u")
print("g'(x) =", sp.diff(g, x))
print("Definisjonskrav: x - 2 > 0")
print("Dermed gjelder x > 2")
Utskrift fra Python:
g(x) = ln(x - 2)
Indre funksjon u(x) = x - 2
u'(x) = 1
Regel: d/dx ln(u) = u'/u
g'(x) = 1/(x - 2)
Definisjonskrav: x - 2 > 0
Dermed gjelder x > 2

Fasit: \(g'(x)=\dfrac{1}{x-2}\), for \(x>2\).

Vanlig feil: Å skrive \(1/x-2\). Hele uttrykket \(x-2\) skal stå i nevneren.
Sensorpunkt: Sensor ser etter logaritmeregelen og korrekt parentesbruk.
Del 1 - Oppgave 1cKjerneregel

Oppgave 1c

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

Hva spør oppgaven om? Vi skal bruke kjerneregelen på en tredje potens av et andregradsuttrykk.

Steg 1 - Velg indre funksjon

Sett \(u(x)=2x^2-1\). Da er \(h(x)=u^3\).

Steg 2 - Deriver den ytre funksjonen

Den deriverte av \(u^3\) med hensyn på \(u\) er \(3u^2\).

Steg 3 - Deriver den indre funksjonen

\[u'(x)=4x.\]

Steg 4 - Bruk kjerneregelen

\[h'(x)=3u^2\cdot u'(x).\]

Steg 5 - Sett inn uttrykkene

\[h'(x)=3(2x^2-1)^2\cdot4x.\]

Steg 6 - Forenkle koeffisienten

\[h'(x)=12x(2x^2-1)^2.\]

GeoGebra/CAS-kontroll

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

Tolkning: CAS gir samme faktoriserte derivert.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x")
u = 2*x**2 - 1
h = u**3
print("h(x) =", h)
print("Ytre funksjon: u^3, derivert 3*u^2")
print("Indre funksjon u(x) =", u)
print("u'(x) =", sp.diff(u, x))
print("Kjerneregelen gir:")
print("h'(x) =", sp.factor(sp.diff(h, x)))
print("Utvidet kontroll =", sp.expand(sp.diff(h, x)))
Utskrift fra Python:
h(x) = (2*x**2 - 1)**3
Ytre funksjon: u^3, derivert 3*u^2
Indre funksjon u(x) = 2*x**2 - 1
u'(x) = 4*x
Kjerneregelen gir:
h'(x) = 12*x*(2*x**2 - 1)**2
Utvidet kontroll = 48*x**5 - 48*x**3 + 12*x

Fasit: \(h'(x)=12x(2x^2-1)^2\).

Vanlig feil: Å derivere bare den ytre tredje potensen og glemme faktoren \(4x\) fra den indre funksjonen.
Sensorpunkt: Sensor ser etter tydelig kjerneregel med både ytre og indre derivert.
Del 1 - Oppgave 2aPolynom og restsetningen

Oppgave 2a

Oppgave: Polynomfunksjonen \(P\) er gitt ved \[P(x)=x^3+2x^2-5x-6.\] Vis at \((x-2)\) er en faktor i \(P(x)\).
Vis løsning

Hva spør oppgaven om? Vi skal bruke restsetningen og vise at polynomet får verdien 0 når \(x=2\).

Steg 1 - Bruk restsetningen

\(x-2\) er en faktor akkurat når \(P(2)=0\).

Steg 2 - Sett inn x lik 2

\[P(2)=2^3+2\cdot2^2-5\cdot2-6.\]

Steg 3 - Regn ut potensene

\[P(2)=8+2\cdot4-10-6.\]

Steg 4 - Summer leddene

\[P(2)=8+8-10-6=0.\]

Steg 5 - Bruk konklusjonen fra restsetningen

Siden resten er 0, er divisjonen med \(x-2\) eksakt.

Steg 6 - Formuler beviset

Dermed er \((x-2)\) en faktor i \(P(x)\).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Substitute[P(x),x,2]
\(0\)
2
PolynomialRemainder[P(x),x-2]
\(0\)

Tolkning: Resten 0 viser faktorforholdet.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x")
P = x**3 + 2*x**2 - 5*x - 6
print("P(x) =", P)
print("Restsetningen: x - 2 er faktor hvis P(2) = 0")
print("P(2) =", sp.expand(P.subs(x, 2)))
print("Divisjonsrest ved divisjon med x - 2 =", sp.rem(P, x - 2, domain=sp.QQ))
print("Faktorisering =", sp.factor(P))
print("Konklusjon: x - 2 er en faktor")
Utskrift fra Python:
P(x) = x**3 + 2*x**2 - 5*x - 6
Restsetningen: x - 2 er faktor hvis P(2) = 0
P(2) = 0
Divisjonsrest ved divisjon med x - 2 = 0
Faktorisering = (x - 2)*(x + 1)*(x + 3)
Konklusjon: x - 2 er en faktor

Fasit: \(P(2)=0\), derfor er \((x-2)\) en faktor.

Vanlig feil: Å undersøke \(P(-2)\). Faktoren \(x-2\) har nullpunkt \(x=2\).
Sensorpunkt: Sensor ser etter eksplisitt innsetting i P og korrekt bruk av restsetningen.
Del 1 - Oppgave 2bPolynomdivisjon og faktorisering

Oppgave 2b

Oppgave: Bruk blant annet polynomdivisjon til å faktorisere \(P(x)\) med lineære faktorer.
Vis løsning

Hva spør oppgaven om? Vi skal dividere med den kjente faktoren \(x-2\) og deretter faktorisere andregradskvotienten.

Steg 1 - Sett opp divisjonen

Vi dividerer \(x^3+2x^2-5x-6\) med \(x-2\).

Steg 2 - Første divisjonsledd

\(x^3/x=x^2\). Subtraksjonen etter første steg gir \(4x^2-5x\).

Steg 3 - Andre divisjonsledd

\(4x^2/x=4x\). Subtraksjonen gir \(3x-6\).

Steg 4 - Tredje divisjonsledd

\(3x/x=3\). Resten blir 0.

Steg 5 - Skriv kvotienten

\[P(x)=(x-2)(x^2+4x+3).\]

Steg 6 - Faktoriser andregradsuttrykket

Tallene 1 og 3 har produkt 3 og sum 4: \[x^2+4x+3=(x+1)(x+3).\]

Steg 7 - Skriv full faktorisering

\[P(x)=(x-2)(x+1)(x+3).\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Div[x^3+2x^2-5x-6,x-2]
\(x^2+4x+3\)
2
Factor[x^2+4x+3]
\((x+1)(x+3)\)

Tolkning: CAS bekrefter divisjonen og full faktorisering.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x")
P = x**3 + 2*x**2 - 5*x - 6
q, r = sp.div(P, x - 2)
print("P(x) =", P)
print("Polynomdivisjon P(x) : (x - 2)")
print("Kvotient =", q)
print("Rest =", r)
print("Faktoriser kvotienten:", sp.factor(q))
print("Full faktorisering:", sp.factor(P))
print("Kontroll ved utvidelse:", sp.expand((x-2)*(x+1)*(x+3)))
Utskrift fra Python:
P(x) = x**3 + 2*x**2 - 5*x - 6
Polynomdivisjon P(x) : (x - 2)
Kvotient = x**2 + 4*x + 3
Rest = 0
Faktoriser kvotienten: (x + 1)*(x + 3)
Full faktorisering: (x - 2)*(x + 1)*(x + 3)
Kontroll ved utvidelse: x**3 + 2*x**2 - 5*x - 6

Fasit: \(P(x)=(x-2)(x+1)(x+3)\).

Vanlig feil: Å stoppe etter polynomdivisjonen uten å faktorisere andregradskvotienten videre.
Sensorpunkt: Sensor ser etter kvotient, null rest og tre lineære faktorer.
Del 1 - Oppgave 2cGrenseverdi

Oppgave 2c

Oppgave: Bestem \[\lim_{x\to2}\frac{x^3+2x^2-5x-6}{x-2}.\]
Vis løsning

Hva spør oppgaven om? Vi skal fjerne den ubestemte formen 0/0 ved å faktorisere og forkorte.

Steg 1 - Kontroller direkte innsetting

Både telleren og nevneren blir 0 når \(x=2\), så direkte innsetting gir \(0/0\).

Steg 2 - Bruk faktoriseringen

\[P(x)=(x-2)(x+1)(x+3).\]

Steg 3 - Forkort faktoren

For \(x\neq2\): \[\frac{P(x)}{x-2}=(x+1)(x+3).\]

Steg 4 - Bruk kontinuitet i det forkortede uttrykket

Produktet \((x+1)(x+3)\) er et polynom og derfor kontinuerlig.

Steg 5 - Sett inn grensepunktet

\[(2+1)(2+3)=3\cdot5=15.\]

Steg 6 - Skriv grenseverdien

\[\lim_{x\to2}\frac{P(x)}{x-2}=15.\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Limit[(x^3+2x^2-5x-6)/(x-2),x,2]
\(15\)
2
Substitute[(x+1)(x+3),x,2]
\(15\)

Tolkning: CAS bekrefter grenseverdien etter forkorting.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x")
P = x**3 + 2*x**2 - 5*x - 6
expr = P/(x - 2)
print("Uttrykk =", expr)
print("Faktoriser P(x) =", sp.factor(P))
print("Forkortet uttrykk for x != 2 =", sp.cancel(expr))
print("Sett x = 2 i det forkortede uttrykket:")
print("Verdi =", sp.cancel(expr).subs(x, 2))
print("Direkte grenseverdi =", sp.limit(expr, x, 2))
print("Kontroll med P'(2) =", sp.diff(P, x).subs(x, 2))
Utskrift fra Python:
Uttrykk = (x**3 + 2*x**2 - 5*x - 6)/(x - 2)
Faktoriser P(x) = (x - 2)*(x + 1)*(x + 3)
Forkortet uttrykk for x != 2 = x**2 + 4*x + 3
Sett x = 2 i det forkortede uttrykket:
Verdi = 15
Direkte grenseverdi = 15
Kontroll med P'(2) = 15

Fasit: Grenseverdien er \(15\).

Vanlig feil: Å forkorte \(x-2\) før telleren er faktorisert, eller å svare 0/0.
Sensorpunkt: Sensor ser etter faktorisering, gyldig forkorting for x ulik 2 og innsetting etterpå.
Del 1 - Oppgave 3Brøkuttrykk

Oppgave 3

Oppgave: Skriv så enkelt som mulig \[\frac{x-2}{x^2+2x}+\frac{2}{x}+\frac{x+2}{x^2-2x}-\frac{3x}{x^2-4}.\]
Vis løsning

Hva spør oppgaven om? Vi skal faktorisere nevnerne, finne fellesnevner og redusere telleren systematisk.

Steg 1 - Faktoriser nevnerne

\[x^2+2x=x(x+2),\quad x^2-2x=x(x-2),\quad x^2-4=(x-2)(x+2).\]

Steg 2 - Velg fellesnevner

En fellesnevner er \(x(x-2)(x+2)\).

Steg 3 - Utvid første brøk

\[\frac{x-2}{x(x+2)}=\frac{(x-2)^2}{x(x-2)(x+2)}.\]

Steg 4 - Utvid de øvrige brøkene

Telleren blir \((x-2)^2+2(x-2)(x+2)+(x+2)^2-3x^2\).

Steg 5 - Forenkle telleren

\[(x^2-4x+4)+(2x^2-8)+(x^2+4x+4)-3x^2=x^2.\]

Steg 6 - Forkort felles faktor

\[\frac{x^2}{x(x-2)(x+2)}=\frac{x}{(x-2)(x+2)}.\]

Steg 7 - Skriv sluttresultat og restriksjoner

\[\frac{x}{x^2-4},\qquad x\neq-2,0,2.\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Simplify[(x-2)/(x^2+2x)+2/x+(x+2)/(x^2-2x)-3x/(x^2-4)]
\(\dfrac{x}{x^2-4}\)

Tolkning: CAS bekrefter forenklingen på originaluttrykkets definisjonsmengde.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x")
expr = (x-2)/(x**2+2*x) + 2/x + (x+2)/(x**2-2*x) - 3*x/(x**2-4)
print("Opprinnelig uttrykk:")
print(expr)
print("Faktorer i nevnerne:")
print("x^2 + 2*x =", sp.factor(x**2+2*x))
print("x^2 - 2*x =", sp.factor(x**2-2*x))
print("x^2 - 4 =", sp.factor(x**2-4))
print("Fellesforenkling =", sp.factor(sp.together(expr)))
print("Forenklet uttrykk =", sp.cancel(expr))
print("Opprinnelig definisjon krever x != -2, 0, 2")
Utskrift fra Python:
Opprinnelig uttrykk:
-3*x/(x**2 - 4) + (x - 2)/(x**2 + 2*x) + (x + 2)/(x**2 - 2*x) + 2/x
Faktorer i nevnerne:
x^2 + 2*x = x*(x + 2)
x^2 - 2*x = x*(x - 2)
x^2 - 4 = (x - 2)*(x + 2)
Fellesforenkling = x/((x - 2)*(x + 2))
Forenklet uttrykk = x/(x**2 - 4)
Opprinnelig definisjon krever x != -2, 0, 2

Fasit: \(\dfrac{x}{x^2-4}\), med \(x\neq-2,0,2\).

Vanlig feil: Å glemme at x=0 fortsatt er utelukket fra originaluttrykket selv om faktoren x forkortes.
Sensorpunkt: Sensor ser etter fellesnevner, korrekt tellerregning og opprinnelige definisjonsrestriksjoner.
Del 1 - Oppgave 4Sirkel og fullstendig kvadrat

Oppgave 4

Oppgave: En sirkel er gitt ved likningen \[x^2-2x+y^2-4y-20=0.\] Bestem sentrum \(S\) og radius \(r\).
Vis løsning

Hva spør oppgaven om? Vi skal fullføre kvadratet i både x- og y-leddene og sammenligne med standardformen for en sirkel.

Steg 1 - Flytt konstantleddet

\[x^2-2x+y^2-4y=20.\]

Steg 2 - Fullfør kvadratet i x

\[x^2-2x=(x-1)^2-1.\]

Steg 3 - Fullfør kvadratet i y

\[y^2-4y=(y-2)^2-4.\]

Steg 4 - Sett uttrykkene inn

\[(x-1)^2-1+(y-2)^2-4=20.\]

Steg 5 - Samle konstantene

\[(x-1)^2+(y-2)^2=25.\]

Steg 6 - Les av sentrum og radius

Standardformen \((x-a)^2+(y-b)^2=r^2\) gir \(S=(1,2)\) og \(r=5\).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
CompleteSquare[x^2-2x+y^2-4y-20,{x,y}]
\((x-1)^2+(y-2)^2-25\)

Tolkning: CAS gir standardformen direkte.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x, y = sp.symbols("x y")
expr = x**2 - 2*x + y**2 - 4*y - 20
completed = (x-1)**2 + (y-2)**2 - 25
print("Opprinnelig venstreside =", expr)
print("Fullfør kvadratet i x: x^2 - 2*x = (x-1)^2 - 1")
print("Fullfør kvadratet i y: y^2 - 4*y = (y-2)^2 - 4")
print("Omskrevet venstreside =", sp.expand(completed))
print("Differanse mellom uttrykkene =", sp.simplify(expr-completed))
print("Standardform: (x-1)^2 + (y-2)^2 = 25")
print("Sentrum = (1, 2)")
print("Radius =", sp.sqrt(25))
Utskrift fra Python:
Opprinnelig venstreside = x**2 - 2*x + y**2 - 4*y - 20
Fullfør kvadratet i x: x^2 - 2*x = (x-1)^2 - 1
Fullfør kvadratet i y: y^2 - 4*y = (y-2)^2 - 4
Omskrevet venstreside = x**2 - 2*x + y**2 - 4*y - 20
Differanse mellom uttrykkene = 0
Standardform: (x-1)^2 + (y-2)^2 = 25
Sentrum = (1, 2)
Radius = 5

Fasit: \(S=(1,2)\) og \(r=5\).

Vanlig feil: Å lese sentrum som (-1,-2). Fortegnene i standardformen er motsatt av koordinatene.
Sensorpunkt: Sensor ser etter korrekt kvadratkomplettering og standardform.
Del 1 - Oppgave 5aVektorer

Oppgave 5a

Oppgave: Vektoren \(\vec v=[3,4]\) er gitt. Bestem en vektor \(\vec u\) som er parallell med \(\vec v\) og motsatt rettet.
Vis løsning

Hva spør oppgaven om? Vi skal finne et negativt skalar multiplum av vektoren.

Steg 1 - Bruk kriteriet for parallelle vektorer

To vektorer er parallelle når den ene er et skalar multiplum av den andre.

Steg 2 - Krev motsatt retning

Skalaren må være negativ for at retningen skal bli motsatt.

Steg 3 - Velg den enkleste negative skalaren

Velg skalaren \(-1\).

Steg 4 - Multipliser vektoren

\[\vec u=-1\cdot[3,4]=[-3,-4].\]

Steg 5 - Kontroller parallellitet

Komponentforholdene er \(-3/3=-1\) og \(-4/4=-1\).

Steg 6 - Kontroller retning

Skalarproduktet \(\vec v\cdot\vec u=-25<0\), så vektorene peker motsatt vei.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
u:=-1*(3,4)
\((-3,-4)\)
2
AreParallel[(3,4),u]
true

Tolkning: Valget er parallelt og motsatt rettet.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
v = sp.Matrix([3, 4])
u = -v
print("v =", list(v))
print("Velg u = -v")
print("u =", list(u))
print("Kryssprodukt/determinant i planet =", v[0]*u[1]-v[1]*u[0])
print("Skalarprodukt v dot u =", v.dot(u))
print("Lengde v =", sp.sqrt(v.dot(v)))
print("Lengde u =", sp.sqrt(u.dot(u)))
print("Negativt skalarprodukt viser motsatt retning")
Utskrift fra Python:
v = [3, 4]
Velg u = -v
u = [-3, -4]
Kryssprodukt/determinant i planet = 0
Skalarprodukt v dot u = -25
Lengde v = 5
Lengde u = 5
Negativt skalarprodukt viser motsatt retning

Fasit: Et mulig svar er \(\vec u=[-3,-4]\).

Vanlig feil: Å velge [3,4], som er parallell, men har samme retning.
Sensorpunkt: Sensor godtar ethvert negativt skalar multiplum av [3,4].
Del 1 - Oppgave 5bVektorer og ortogonalitet

Oppgave 5b

Oppgave: Bestem en vektor \(\vec w\neq\vec0\) som står vinkelrett på \(\vec v\).
Vis løsning

Hva spør oppgaven om? Vi skal konstruere en ikke-null vektor med skalarprodukt 0 mot [3,4].

Steg 1 - Skriv ortogonalitetskravet

For \(\vec w=[a,b]\) må \(3a+4b=0\).

Steg 2 - Bruk standardkonstruksjonen i planet

Fra \([3,4]\) kan vi bytte komponentene og skifte fortegn på én: \([4,-3]\).

Steg 3 - Kontroller at vektoren ikke er null

\([4,-3]\neq[0,0]\).

Steg 4 - Regn skalarproduktet

\[[3,4]\cdot[4,-3]=3\cdot4+4\cdot(-3).\]

Steg 5 - Forenkle

\[12-12=0.\]

Steg 6 - Konkluder

Dermed står \([4,-3]\) vinkelrett på \([3,4]\).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Dot[(3,4),(4,-3)]
\(0\)
2
ArePerpendicular[(3,4),(4,-3)]
true

Tolkning: Skalarprodukt 0 bekrefter vinkelretthet.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
v = sp.Matrix([3, 4])
w = sp.Matrix([4, -3])
print("v =", list(v))
print("Velg w ved å bytte komponenter og skifte ett fortegn")
print("w =", list(w))
print("Skalarprodukt v dot w =", v.dot(w))
print("w er nullvektor?", w == sp.zeros(2, 1))
print("Lengde w =", sp.sqrt(w.dot(w)))
print("Konklusjon: w står vinkelrett på v")
Utskrift fra Python:
v = [3, 4]
Velg w ved å bytte komponenter og skifte ett fortegn
w = [4, -3]
Skalarprodukt v dot w = 0
w er nullvektor? False
Lengde w = 5
Konklusjon: w står vinkelrett på v

Fasit: Et mulig svar er \(\vec w=[4,-3]\).

Vanlig feil: Å velge [4,3]; skalarproduktet blir da 24, ikke 0.
Sensorpunkt: Sensor ser etter en ikke-null vektor og en gyldig ortogonalitetskontroll.
Del 1 - Oppgave 5cVektorkombinasjon

Oppgave 5c

Oppgave: Bestem konstantene \(k\) og \(t\) slik at \[\vec v=k\vec u+t\vec w,\] med valgene \(\vec u=[-3,-4]\) og \(\vec w=[4,-3]\).
Vis løsning

Hva spør oppgaven om? Vi skal løse komponentlikningene som oppstår når to vektorer er like.

Steg 1 - Sett inn vektorene

\[[3,4]=k[-3,-4]+t[4,-3].\]

Steg 2 - Skriv x-komponenten

\[-3k+4t=3.\]

Steg 3 - Skriv y-komponenten

\[-4k-3t=4.\]

Steg 4 - Observer den enkle strukturen

Siden \(\vec u=-\vec v\), får vi umiddelbart \(\vec v=-1\vec u\).

Steg 5 - Velg koeffisienten til w

Ingen w-komponent er nødvendig, så \(t=0\).

Steg 6 - Finn k

\(k=-1\) gir \((-1)[-3,-4]=[3,4]\).

Steg 7 - Kontroller

\[-1\vec u+0\vec w=[3,4]=\vec v.\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[k*(-3,-4)+t*(4,-3)=(3,4),{k,t}]
\(k=-1,\ t=0\)

Tolkning: CAS løser komponentlikningene samtidig.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
k, t = sp.symbols("k t")
v = sp.Matrix([3, 4])
u = sp.Matrix([-3, -4])
w = sp.Matrix([4, -3])
vector_equation = k*u + t*w
print("v =", list(v))
print("u =", list(u))
print("w =", list(w))
print("k*u + t*w =", list(vector_equation))
solutions = sp.solve([sp.Eq(vector_equation[0], v[0]), sp.Eq(vector_equation[1], v[1])], [k, t])
print("Likningssystemets løsning =", solutions)
print("Kontrollvektor =", list(vector_equation.subs(solutions)))
Utskrift fra Python:
v = [3, 4]
u = [-3, -4]
w = [4, -3]
k*u + t*w = [-3*k + 4*t, -4*k - 3*t]
Likningssystemets løsning = {k: -1, t: 0}
Kontrollvektor = [3, 4]

Fasit: \(k=-1\) og \(t=0\).

Vanlig feil: Å anta at koeffisientene er komponentene 3 og 4. De skal bestemmes fra basisvektorene u og w.
Sensorpunkt: Sensor ser etter to komponentlikninger eller en likeverdig tydelig argumentasjon.
Del 1 - Oppgave 5dEnhetsvektor

Oppgave 5d

Oppgave: Bestem en vektor \(\vec x\) som har samme retning som \(\vec v\) og lengde 7.
Vis løsning

Hva spør oppgaven om? Vi skal normalisere v og deretter skalere enhetsvektoren til ønsket lengde.

Steg 1 - Finn lengden av v

\[|\vec v|=\sqrt{3^2+4^2}=5.\]

Steg 2 - Lag enhetsvektor

\[\frac{\vec v}{|\vec v|}=\left[\frac35,\frac45\right].\]

Steg 3 - Skaler til lengde 7

\[\vec x=7\left[\frac35,\frac45\right].\]

Steg 4 - Multipliser komponentene

\[\vec x=\left[\frac{21}{5},\frac{28}{5}\right].\]

Steg 5 - Kontroller retningen

\(\vec x=(7/5)\vec v\), og skalaren \(7/5\) er positiv.

Steg 6 - Kontroller lengden

\[|\vec x|=\sqrt{(21/5)^2+(28/5)^2}=7.\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
UnitVector[(3,4)]
\((3/5,4/5)\)
2
7*UnitVector[(3,4)]
\((21/5,28/5)\)

Tolkning: CAS bekrefter enhetsvektoren og skaleringen.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
v = sp.Matrix([3, 4])
length_v = sp.sqrt(v.dot(v))
unit_v = v/length_v
x_vec = 7*unit_v
print("v =", list(v))
print("|v| =", length_v)
print("Enhetsvektor i v-retningen =", list(unit_v))
print("Gang enhetsvektoren med 7")
print("x =", list(x_vec))
print("|x| =", sp.sqrt(x_vec.dot(x_vec)))
print("Forhold x_1/v_1 =", sp.simplify(x_vec[0]/v[0]))
Utskrift fra Python:
v = [3, 4]
|v| = 5
Enhetsvektor i v-retningen = [3/5, 4/5]
Gang enhetsvektoren med 7
x = [21/5, 28/5]
|x| = 7
Forhold x_1/v_1 = 7/5

Fasit: \(\vec x=\left[\dfrac{21}{5},\dfrac{28}{5}\right]\).

Vanlig feil: Å multiplisere v direkte med 7; da blir lengden 35, ikke 7.
Sensorpunkt: Sensor ser etter normalisering og kontroll av både retning og lengde.
Del 1 - Oppgave 6aBinomialkoeffisienter

Oppgave 6a

Oppgave: Binomialkoeffisientene er gitt ved \[\binom nr=\frac{n!}{(n-r)!r!}.\] Bestem \(\binom{12}{2}\). Vis at \(\binom n1=n\).
Vis løsning

Hva spør oppgaven om? Vi skal bruke fakultetsformelen i begge tilfeller og forkorte systematisk.

Steg 1 - Beregn tolv velg to

\[\binom{12}{2}=\frac{12!}{10!\,2!}.\]

Steg 2 - Forkort fakultetene

\[\frac{12\cdot11\cdot10!}{10!\cdot2\cdot1}=\frac{12\cdot11}{2}.\]

Steg 3 - Regn ut tallet

\[\binom{12}{2}=66.\]

Steg 4 - Sett r lik 1 i den generelle formelen

\[\binom n1=\frac{n!}{(n-1)!1!}.\]

Steg 5 - Bruk n-fakultet

\(n!=n(n-1)!\) og \(1!=1\).

Steg 6 - Forkort

\[\binom n1=\frac{n(n-1)!}{(n-1)!}=n.\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
BinomialCoefficient[12,2]
\(66\)
2
Simplify[BinomialCoefficient[n,1]]
\(n\)

Tolkning: CAS bekrefter begge identitetene.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
from math import comb
n = sp.symbols("n", integer=True, positive=True)
print("Binomialkoeffisient (12 choose 2) =", comb(12, 2))
print("Fakultetsutregning:")
print("12! / (10! * 2!) =", sp.factorial(12) // (sp.factorial(10)*sp.factorial(2)))
formula = sp.factorial(n)/(sp.factorial(n-1)*sp.factorial(1))
print("(n choose 1) som fakulteter =", formula)
print("Forenklet (n choose 1) =", sp.simplify(formula))
print("Kontroll for n=12:", comb(12,1))
Utskrift fra Python:
Binomialkoeffisient (12 choose 2) = 66
Fakultetsutregning:
12! / (10! * 2!) = 66
(n choose 1) som fakulteter = factorial(n)/factorial(n - 1)
Forenklet (n choose 1) = n
Kontroll for n=12: 12

Fasit: \(\binom{12}{2}=66\) og \(\binom n1=n\).

Vanlig feil: Å beregne \(12!/2!\) uten faktoren \(10!\) i nevneren.
Sensorpunkt: Sensor ser etter korrekt fakultetsformel og synlig forkorting.
Del 1 - Oppgave 6bLikning med binomialkoeffisienter

Oppgave 6b

Oppgave: Bruk resultatet fra a) til å løse likningen \[\frac{\binom{x}{1}\binom{12-x}{1}}{\binom{12}{2}}=\frac6{11}.\]
Vis løsning

Hva spør oppgaven om? Vi skal erstatte velg-én-uttrykkene med x og 12-x og løse den resulterende andregradslikningen.

Steg 1 - Bruk identiteten fra a

\[\binom{x}{1}=x,\qquad \binom{12-x}{1}=12-x.\]

Steg 2 - Sett inn nevneren

\[\binom{12}{2}=66.\]

Steg 3 - Skriv om likningen

\[\frac{x(12-x)}{66}=\frac6{11}.\]

Steg 4 - Kryssmultipliser

\[11x(12-x)=396\quad\Rightarrow\quad x(12-x)=36.\]

Steg 5 - Flytt alt til én side

\[x^2-12x+36=0.\]

Steg 6 - Faktoriser

\[(x-6)^2=0.\]

Steg 7 - Les av løsningen

\[x=6.\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[BinomialCoefficient[x,1]*BinomialCoefficient[12-x,1]/66=6/11,x]
\(x=6\)

Tolkning: CAS gir den dobbelte løsningen x=6.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", real=True)
left = x*(12-x)/sp.binomial(12,2)
right = sp.Rational(6,11)
print("(x choose 1) = x")
print("(12-x choose 1) = 12-x")
print("(12 choose 2) =", sp.binomial(12,2))
print("Likningen blir:", sp.Eq(left, right))
cleared = sp.expand(x*(12-x) - 36)
print("Etter kryssmultiplikasjon:", sp.Eq(cleared, 0))
print("Faktorisert venstreside =", sp.factor(cleared))
print("Løsning =", sp.solve(sp.Eq(left,right), x))
print("Kontroll ved x=6:", sp.simplify(left.subs(x,6)))
Utskrift fra Python:
(x choose 1) = x
(12-x choose 1) = 12-x
(12 choose 2) = 66
Likningen blir: Eq(x*(12 - x)/66, 6/11)
Etter kryssmultiplikasjon: Eq(-x**2 + 12*x - 36, 0)
Faktorisert venstreside = -(x - 6)**2
Løsning = [6]
Kontroll ved x=6: 6/11

Fasit: \(x=6\).

Vanlig feil: Å glemme at \(\binom{12}{2}=66\), eller å miste minustegnet når \(x(12-x)\) utvides.
Sensorpunkt: Sensor ser etter omforming med binomialidentiteten og full løsning av andregradslikningen.
Del 1 - Oppgave 7aFunksjonsdrøfting

Oppgave 7a

Oppgave: Funksjonen er gitt ved \[f(x)=3xe^{-x},\qquad x\in\langle-1,4\rangle.\] Bruk \(f'(x)\) til å avgjøre hvor funksjonen vokser og avtar. Bestem x-verdien til eventuelle topp- eller bunnpunkter.
Vis løsning

Hva spør oppgaven om? Vi skal finne den deriverte, analysere fortegnet og klassifisere det kritiske punktet på det oppgitte intervallet.

Steg 1 - Deriver med produktregelen

\[f'(x)=3e^{-x}+3x(-e^{-x}).\]

Steg 2 - Faktoriser

\[f'(x)=3e^{-x}(1-x).\]

Steg 3 - Bruk at eksponentialfaktoren er positiv

\(3e^{-x}>0\) for alle x, så fortegnet bestemmes av \(1-x\).

Steg 4 - Finn kritisk x-verdi

\[1-x=0\Rightarrow x=1.\]

Steg 5 - Lag fortegnsvurdering

For \(x<1\) er \(f'(x)>0\); for \(x>1\) er \(f'(x)<0\).

Steg 6 - Avgrens til domenet

f vokser på \(\langle-1,1\rangle\) og avtar på \(\langle1,4\rangle\).

Steg 7 - Klassifiser punktet

Fortegnet går fra pluss til minus, så grafen har toppunkt ved \(x=1\). Det finnes ikke et indre bunnpunkt.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Derivative[3x*exp(-x),x]
\(3e^{-x}(1-x)\)
2
Solve[Derivative[3x*exp(-x),x]=0,x]
\(x=1\)

Tolkning: CAS bekrefter kritisk punkt og derivert.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", real=True)
f = 3*x*sp.exp(-x)
fp = sp.factor(sp.diff(f,x))
print("f(x) =", f)
print("f'(x) =", fp)
print("e^(-x) er alltid positiv")
print("Kritiske punkt fra f'(x)=0:", sp.solve(sp.Eq(fp,0),x))
print("Fortegn f'(0) =", sp.N(fp.subs(x,0)))
print("Fortegn f'(2) =", sp.N(fp.subs(x,2)))
print("f(1) =", sp.simplify(f.subs(x,1)), "=", sp.N(f.subs(x,1),8))
print("Grenseverdier ved de åpne endene:", sp.N(f.subs(x,-1),8), sp.N(f.subs(x,4),8))
Utskrift fra Python:
f(x) = 3*x*exp(-x)
f'(x) = -3*(x - 1)*exp(-x)
e^(-x) er alltid positiv
Kritiske punkt fra f'(x)=0: [1]
Fortegn f'(0) = 3.00000000000000
Fortegn f'(2) = -0.406005849709838
f(1) = 3*exp(-1) = 1.1036383
Grenseverdier ved de åpne endene: -8.1548455 0.21978767

Fasit: Vokser for \(-1<x<1\), avtar for \(1<x<4\), og har toppunkt ved \(x=1\).

Vanlig feil: Å sette \(e^{-x}=0\). En eksponentialfunksjon er aldri 0.
Sensorpunkt: Sensor ser etter produktregel, faktorisert derivert og korrekt fortegnsskifte.
Del 1 - Oppgave 7bAndrederivert og vendepunkt

Oppgave 7b

Oppgave: Bruk \(f''(x)\) til å bestemme x-verdien til eventuelle vendepunkter på grafen til \(f\).
Vis løsning

Hva spør oppgaven om? Vi skal derivere én gang til, løse f-andrederivert lik 0 og kontrollere fortegnsskifte.

Steg 1 - Start med første derivert

\[f'(x)=3e^{-x}(1-x).\]

Steg 2 - Deriver produktet

\[f''(x)=3\bigl[-e^{-x}(1-x)-e^{-x}\bigr].\]

Steg 3 - Forenkle

\[f''(x)=3e^{-x}(x-2).\]

Steg 4 - Finn kandidat

\[f''(x)=0\Rightarrow x-2=0\Rightarrow x=2.\]

Steg 5 - Kontroller fortegnsskifte

For \(x<2\) er \(f''(x)<0\), mens for \(x>2\) er \(f''(x)>0\).

Steg 6 - Konkluder om vendepunkt

Krumningen skifter, så grafen har vendepunkt ved \(x=2\).

Steg 7 - Finn y-koordinaten som tillegg

\[f(2)=6e^{-2}.\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Derivative[3x*exp(-x),x,2]
\(3e^{-x}(x-2)\)
2
Solve[Derivative[3x*exp(-x),x,2]=0,x]
\(x=2\)

Tolkning: CAS bekrefter vendepunktkandidaten.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", real=True)
f = 3*x*sp.exp(-x)
fp = sp.factor(sp.diff(f,x))
fpp = sp.factor(sp.diff(f,x,2))
print("f'(x) =", fp)
print("f''(x) =", fpp)
print("e^(-x) er positiv")
print("Løs f''(x)=0:", sp.solve(sp.Eq(fpp,0),x))
print("f''(1) =", sp.N(fpp.subs(x,1)))
print("f''(3) =", sp.N(fpp.subs(x,3)))
print("f(2) =", sp.simplify(f.subs(x,2)), "=", sp.N(f.subs(x,2),8))
Utskrift fra Python:
f'(x) = -3*(x - 1)*exp(-x)
f''(x) = 3*(x - 2)*exp(-x)
e^(-x) er positiv
Løs f''(x)=0: [2]
f''(1) = -1.10363832351433
f''(3) = 0.149361205103592
f(2) = 6*exp(-2) = 0.81201170

Fasit: Vendepunktets x-verdi er \(x=2\), og punktet er \((2,6e^{-2})\).

Vanlig feil: Å bare løse f-andrederivert lik 0 uten å kontrollere at fortegnet faktisk skifter.
Sensorpunkt: Sensor ser etter korrekt andrederivert og fortegnsskifte.
Del 1 - Oppgave 7cGrafskisse

Oppgave 7c

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

Hva spør oppgaven om? Vi skal samle nullpunkt, endepunkter, monotoni, toppunkt og vendepunkt i én konsistent grafskisse.

Steg 1 - Finn nullpunktet

\(3xe^{-x}=0\) gir \(x=0\), siden eksponentialfaktoren aldri er 0.

Steg 2 - Marker de åpne intervallendene

Grenseverdiene er \(f(-1)=-3e\approx-8{,}155\) og \(f(4)=12e^{-4}\approx0{,}220\), men punktene er ikke med fordi intervallet er åpent.

Steg 3 - Marker toppunktet

Ved \(x=1\) er \(f(1)=3/e\approx1{,}104\).

Steg 4 - Marker vendepunktet

Ved \(x=2\) er \(f(2)=6/e^2\approx0{,}812\).

Steg 5 - Tegn monotoni

Grafen stiger fra x=-1 til x=1 og synker deretter mot x=4.

Steg 6 - Tegn krumningen

Grafen er konkav ned fram til x=2 og konkav opp etter x=2.

Steg 7 - Kontroller helheten

Skissen skal krysse origo, ha én topp og flate gradvis ut mot x=4.

Graf av 3x e minus x
Grafen er kontrollert mot den deriverte og andrederiverte.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
f(x):=3x*exp(-x)
2
Extremum[f,-1,4]
\((1,3/e)\)
3
InflectionPoint[f]
\((2,6/e^2)\)

Tolkning: GeoGebra-skissen skal samsvare med de analytiske nøkkelpunktene.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", real=True)
f = 3*x*sp.exp(-x)
points = [-1, 0, 1, 2, 4]
print("Nøkkelverdier for skissen:")
for p in points:
    print(f"f({p}) =", sp.N(f.subs(x,p),8))
print("Nullpunkt:", sp.solve(sp.Eq(f,0),x))
print("Toppunkt x = 1, y =", sp.N(f.subs(x,1),8))
print("Vendepunkt x = 2, y =", sp.N(f.subs(x,2),8))
print("Vekst: -1 < x < 1, avtakning: 1 < x < 4")
print("Krumning ned før 2, krumning opp etter 2")
Utskrift fra Python:
Nøkkelverdier for skissen:
f(-1) = -8.1548455
f(0) = 0
f(1) = 1.1036383
f(2) = 0.81201170
f(4) = 0.21978767
Nullpunkt: [0]
Toppunkt x = 1, y = 1.1036383
Vendepunkt x = 2, y = 0.81201170
Vekst: -1 < x < 1, avtakning: 1 < x < 4
Krumning ned før 2, krumning opp etter 2

Fasit: Se den kontrollerte grafen. Nøkkelpunkter: \((0,0)\), topp ved \((1,3/e)\), vendepunkt ved \((2,6/e^2)\).

Vanlig feil: Å fylle inn punktene ved x=-1 og x=4. Domenet er åpent i begge ender, så de markeres med åpne sirkler.
Sensorpunkt: Sensor ser etter riktig nullpunkt, topp, vendepunkt, monotoni og krumning.
Del 1 - Oppgave 8aSirkelgeometri

Oppgave 8a

Oppgave: En sirkel med sentrum \(S\) og radius \(R\) omskriver \(\triangle ABC\). Normalen fra \(S\) til siden \(AC\) har fotpunkt \(D\). Forklar at \[\angle B=\angle DSA.\]
Vis løsning

Hva spør oppgaven om? Vi skal koble periferivinkelen ved B til sentralvinkelen over samme bue og bruke symmetrien i den likebeinte trekanten ASC.

Steg 1 - Se på buen AC

Både periferivinkelen \(\angle ABC\) og sentralvinkelen \(\angle ASC\) spenner over buen AC.

Steg 2 - Bruk periferivinkelsetningen

\[\angle B=\frac12\angle ASC.\]

Steg 3 - Bruk radiusene

\(AS=CS=R\), så \(\triangle ASC\) er likebeint.

Steg 4 - Bruk normalen til korden

En normal fra sentrum til en korde halverer både korden og sentralvinkelen.

Steg 5 - Halver sentralvinkelen

\[\angle DSA=\frac12\angle ASC.\]

Steg 6 - Sammenlign

Begge vinklene er halvparten av \(\angle ASC\).

Steg 7 - Konkluder

\[\angle B=\angle DSA.\]

Trekant i omskrevet sirkel
Normalen SD halverer korden AC og sentralvinkelen ASC.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Angle(A,B,C)
\(\tfrac12\operatorname{Angle}(A,S,C)\)
2
Angle(D,S,A)
\(\tfrac12\operatorname{Angle}(A,S,C)\)

Tolkning: Begge vinklene uttrykkes som samme halve sentralvinkel.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
B, theta = sp.symbols("B theta", real=True)
print("Sentralvinkelen over buen AC settes til theta")
print("Innsvinkelen B = theta/2")
print("I likebeint trekant ASC er AS = CS = R")
print("Normalen SD til korden AC halverer sentralvinkelen")
print("Dermed vinkel DSA = theta/2")
print("Differanse B - DSA =", sp.simplify(theta/2-theta/2))
print("Konklusjon: vinkel B = vinkel DSA")
Utskrift fra Python:
Sentralvinkelen over buen AC settes til theta
Innsvinkelen B = theta/2
I likebeint trekant ASC er AS = CS = R
Normalen SD til korden AC halverer sentralvinkelen
Dermed vinkel DSA = theta/2
Differanse B - DSA = 0
Konklusjon: vinkel B = vinkel DSA

Fasit: \(\angle B=\angle DSA\).

Vanlig feil: Å hevde likheten bare fordi vinklene ser like ut på skissen. Begrunnelsen må bruke periferivinkelsetningen og vinkelhalveringen.
Sensorpunkt: Sensor ser etter koblingen til samme bue AC og halv sentralvinkel.
Del 1 - Oppgave 8bSinussetningen - ett sideforhold

Oppgave 8b

Oppgave: Vi setter \(AC=b\). Vis at \[\frac{b}{\sin B}=2R.\]
Vis løsning

Hva spør oppgaven om? Vi skal bruke den rettvinklede trekanten ASD, der hypotenusen er radiusen og AD er halve korden.

Steg 1 - Halver korden

Siden \(SD\perp AC\) og S er sentrum, halverer D korden: \(AD=b/2\).

Steg 2 - Identifiser hypotenusen

\(AS=R\) fordi A ligger på sirkelen.

Steg 3 - Bruk resultatet fra a

\(\angle DSA=\angle B\).

Steg 4 - Skriv sinus i trekant ASD

\[\sin B=\sin\angle DSA=\frac{AD}{AS}.\]

Steg 5 - Sett inn lengdene

\[\sin B=\frac{b/2}{R}=\frac{b}{2R}.\]

Steg 6 - Løs for ønsket brøk

\[2R\sin B=b\quad\Rightarrow\quad\frac{b}{\sin B}=2R.\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
AD:=b/2
\(b/2\)
2
Simplify[(b/2)/R]
\(b/(2R)\)

Tolkning: CAS bekrefter algebraen i sinusforholdet.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
b, R, B = sp.symbols("b R B", positive=True)
AD = b/2
print("Korden AC har lengde b")
print("Normal fra sentrum halverer korden: AD =", AD)
print("AS = R")
print("I rettvinklet trekant ASD:")
print("sin(DSA) = AD/AS =", sp.simplify(AD/R))
print("Siden DSA = B: sin(B) = b/(2R)")
result = sp.solve(sp.Eq(sp.sin(B), b/(2*R)), b)[0]
print("Løst for b:", result)
print("Dermed b/sin(B) =", sp.simplify(result/sp.sin(B)))
Utskrift fra Python:
Korden AC har lengde b
Normal fra sentrum halverer korden: AD = b/2
AS = R
I rettvinklet trekant ASD:
sin(DSA) = AD/AS = b/(2*R)
Siden DSA = B: sin(B) = b/(2R)
Løst for b: 2*R*sin(B)
Dermed b/sin(B) = 2*R

Fasit: \(\dfrac{b}{\sin B}=2R\).

Vanlig feil: Å bruke hele korden b som motstående katet i trekant ASD; kateten er AD=b/2.
Sensorpunkt: Sensor ser etter kordehalvering, rettvinklet trekant og korrekt sinusforhold.
Del 1 - Oppgave 8cUtvidet sinussetning

Oppgave 8c

Oppgave: Vi setter \(BC=a\), \(AC=b\) og \(AB=c\). Bruk tilsvarende resonnement som i b) til å vise at \[\frac a{\sin A}=\frac b{\sin B}=\frac c{\sin C}=2R.\]
Vis løsning

Hva spør oppgaven om? Vi skal gjenta korde- og radiusargumentet for hver av de tre sidene.

Steg 1 - Bruk siden a

Siden \(a=BC\) står mot vinkelen A. Samme konstruksjon gir \[\sin A=\frac{a}{2R}.\]

Steg 2 - Løs første forhold

\[\frac a{\sin A}=2R.\]

Steg 3 - Bruk siden b

Fra del b har vi allerede \[\frac b{\sin B}=2R.\]

Steg 4 - Bruk siden c

Siden \(c=AB\) står mot vinkelen C, og konstruksjonen gir \[\sin C=\frac{c}{2R}.\]

Steg 5 - Løs tredje forhold

\[\frac c{\sin C}=2R.\]

Steg 6 - Sammenstill

Alle tre forholdene er lik den samme diameteren \(2R\).

Steg 7 - Skriv den utvidede sinussetningen

\[\frac a{\sin A}=\frac b{\sin B}=\frac c{\sin C}=2R.\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Simplify[a/sin(A)] under a=2R sin(A)
\(2R\)
2
Simplify[b/sin(B)] under b=2R sin(B)
\(2R\)
3
Simplify[c/sin(C)] under c=2R sin(C)
\(2R\)

Tolkning: De tre kordeformlene gir samme diameter.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
a, b, c, R = sp.symbols("a b c R", positive=True)
A, B, C = sp.symbols("A B C", positive=True)
relations = [sp.Eq(a,2*R*sp.sin(A)), sp.Eq(b,2*R*sp.sin(B)), sp.Eq(c,2*R*sp.sin(C))]
print("Tilsvarende kordeformler:")
for rel in relations:
    print(rel)
ratios = [sp.simplify(a/sp.sin(A)).subs(a,2*R*sp.sin(A)),
          sp.simplify(b/sp.sin(B)).subs(b,2*R*sp.sin(B)),
          sp.simplify(c/sp.sin(C)).subs(c,2*R*sp.sin(C))]
print("a/sin(A) =", ratios[0])
print("b/sin(B) =", ratios[1])
print("c/sin(C) =", ratios[2])
print("Alle tre er lik 2R")
Utskrift fra Python:
Tilsvarende kordeformler:
Eq(a, 2*R*sin(A))
Eq(b, 2*R*sin(B))
Eq(c, 2*R*sin(C))
a/sin(A) = 2*R
b/sin(B) = 2*R
c/sin(C) = 2*R
Alle tre er lik 2R

Fasit: \(\dfrac a{\sin A}=\dfrac b{\sin B}=\dfrac c{\sin C}=2R\).

Vanlig feil: Å koble en side til feil motstående vinkel.
Sensorpunkt: Sensor ser etter side-vinkel-parene a-A, b-B og c-C og at alle gir 2R.
Del 1 - Oppgave 9Eksponentiallikning

Oppgave 9

Oppgave: Løs likningen \[9^x-3^x-12=0.\]
Vis løsning

Hva spør oppgaven om? Vi skal gjøre likningen om til en andregradslikning ved å sette u lik 3 opphøyd i x.

Steg 1 - Skriv 9 som en potens av 3

\[9^x=(3^2)^x=3^{2x}=(3^x)^2.\]

Steg 2 - Gjør substitusjonen

Sett \(u=3^x\). Da er \(u>0\).

Steg 3 - Skriv andregradslikningen

\[u^2-u-12=0.\]

Steg 4 - Faktoriser

\[(u-4)(u+3)=0.\]

Steg 5 - Vurder røttene

\(u=4\) eller \(u=-3\), men \(u=3^x\) kan ikke være negativ.

Steg 6 - Gå tilbake til x

\[3^x=4.\]

Steg 7 - Bruk logaritmer

\[x=\frac{\ln4}{\ln3}.\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[9^x-3^x-12=0,x]
\(x=\ln(4)/\ln(3)\)

Tolkning: CAS bekrefter den eksakte logaritmeløsningen.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", real=True)
u = sp.symbols("u", positive=True)
poly = u**2-u-12
print("Likning: 9^x - 3^x - 12 = 0")
print("Sett u = 3^x, da er 9^x = (3^x)^2 = u^2")
print("Andregradslikning:", sp.Eq(poly,0))
print("Faktorisering:", sp.factor(poly))
print("Røtter i u:", sp.solve(sp.Eq(poly,0),u))
print("Siden u = 3^x > 0, velges u = 4")
solution = sp.log(4)/sp.log(3)
print("x = ln(4)/ln(3)")
print("Desimalverdi =", sp.N(solution,12))
print("Kontroll =", sp.simplify(9**solution-3**solution-12))
Utskrift fra Python:
Likning: 9^x - 3^x - 12 = 0
Sett u = 3^x, da er 9^x = (3^x)^2 = u^2
Andregradslikning: Eq(u**2 - u - 12, 0)
Faktorisering: (u - 4)*(u + 3)
Røtter i u: [4]
Siden u = 3^x > 0, velges u = 4
x = ln(4)/ln(3)
Desimalverdi = 1.26185950714
Kontroll = 0

Fasit: \(x=\dfrac{\ln4}{\ln3}\approx1{,}2619\).

Vanlig feil: Å godta u=-3 som løsning selv om 3 opphøyd i x alltid er positiv.
Sensorpunkt: Sensor ser etter substitusjonen, forkasting av negativ u og logaritmeløsningen.

Del 2 - med hjelpemidler

Del 2 - Oppgave 1aAnalytisk geometri

Oppgave 1a

Oppgave: En sirkel har sentrum på linjen \(y=x\), sentrum ligger like langt fra origo som fra \(A(6,0)\), og både origo og A ligger på sirkelperiferien. Tegn sirkelen i et koordinatsystem.
Vis løsning

Hva spør oppgaven om? Vi skal finne sentrum geometrisk som skjæringspunktet mellom y=x og midtnormalen til OA, og deretter tegne sirkelen.

Steg 1 - Tegn punktene O og A

Marker \(O=(0,0)\) og \(A=(6,0)\).

Steg 2 - Finn midtpunktet av OA

Midtpunktet er \(M=(3,0)\).

Steg 3 - Finn midtnormalen

OA er horisontal, så midtnormalen er den vertikale linjen \(x=3\).

Steg 4 - Bruk sentrumslinjen

Sentrum skal samtidig ligge på \(y=x\).

Steg 5 - Finn skjæringspunktet

Linjen \(x=3\) og linjen \(y=x\) skjærer hverandre i \(S=(3,3)\).

Steg 6 - Finn radiusen for tegningen

\[SO=\sqrt{3^2+3^2}=3\sqrt2.\]

Steg 7 - Tegn sirkelen

Tegn en sirkel med sentrum S og radius \(3\sqrt2\), slik at den passerer O og A.

Sirkel gjennom origo og A
Sentrum er skjæringspunktet mellom y=x og midtnormalen x=3.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
O=(0,0)
2
A=(6,0)
3
S=Intersect[x=3,y=x]
\((3,3)\)
4
Circle[S,O]
sirkel gjennom O og A

Tolkning: GeoGebra-konstruksjonen viser alle tre gitte egenskapene.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
h, k = sp.symbols("h k", real=True)
O = sp.Point(0,0)
A = sp.Point(6,0)
print("Sentrum S=(h,k) ligger på y=x, altså k=h")
condition = sp.Eq((h-0)**2+(k-0)**2, (h-6)**2+(k-0)**2)
print("Lik avstand til O og A gir:", condition)
print("Forenklet likning:", sp.simplify(condition.lhs-condition.rhs), "= 0")
solution_h = sp.solve(condition,h)[0]
print("h =", solution_h)
print("k = h =", solution_h)
print("Sentrum S =", (solution_h,solution_h))
r2 = solution_h**2+solution_h**2
print("r^2 =", r2)
print("r =", sp.sqrt(r2))
Utskrift fra Python:
Sentrum S=(h,k) ligger på y=x, altså k=h
Lik avstand til O og A gir: Eq(h**2 + k**2, k**2 + (h - 6)**2)
Forenklet likning: 12*h - 36 = 0
h = 3
k = h = 3
Sentrum S = (3, 3)
r^2 = 18
r = 3*sqrt(2)

Fasit: Sirkelen har sentrum \(S=(3,3)\) og går gjennom \((0,0)\) og \((6,0)\).

Vanlig feil: Å plassere sentrum i midtpunktet (3,0) uten å bruke kravet y=x.
Sensorpunkt: Sensor ser etter korrekt konstruksjon med midtnormal og linjen y=x.
Del 2 - Oppgave 1bSirkellikning

Oppgave 1b

Oppgave: Bestem en likning for sirkelen.
Vis løsning

Hva spør oppgaven om? Vi skal bruke sentrum-radius-formen med sentrum (3,3) og radius 3 rot 2.

Steg 1 - Bruk sentrum fra a

\[S=(3,3).\]

Steg 2 - Beregn radiusen

\[r^2=SO^2=(3-0)^2+(3-0)^2=18.\]

Steg 3 - Skriv standardformen

For sentrum \((a,b)\) er sirkellikningen \((x-a)^2+(y-b)^2=r^2\).

Steg 4 - Sett inn verdiene

\[(x-3)^2+(y-3)^2=18.\]

Steg 5 - Kontroller origo

Venstresiden i O er \(9+9=18\).

Steg 6 - Kontroller punktet A

Venstresiden i A(6,0) er \(9+9=18\).

Steg 7 - Oppgi eventuelt utvidet form

\[x^2+y^2-6x-6y=0.\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Circle[(3,3),3sqrt(2)]
\((x-3)^2+(y-3)^2=18\)
2
Expand[(x-3)^2+(y-3)^2=18]
\(x^2+y^2-6x-6y=0\)

Tolkning: CAS gir både standardform og utvidet form.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x, y = sp.symbols("x y")
S = sp.Point(3,3)
O = sp.Point(0,0)
r2 = S.distance(O)**2
print("Sentrum S =", S)
print("Radius^2 = SO^2 =", r2)
print("Standardform:")
print("(x - 3)^2 + (y - 3)^2 =", r2)
expanded = sp.expand((x-3)**2+(y-3)**2-r2)
print("Utvidet form, venstreside =", expanded)
print("Kontroll O:", expanded.subs({x:0,y:0}))
print("Kontroll A(6,0):", expanded.subs({x:6,y:0}))
Utskrift fra Python:
Sentrum S = Point2D(3, 3)
Radius^2 = SO^2 = 18
Standardform:
(x - 3)^2 + (y - 3)^2 = 18
Utvidet form, venstreside = x**2 - 6*x + y**2 - 6*y
Kontroll O: 0
Kontroll A(6,0): 0

Fasit: \((x-3)^2+(y-3)^2=18\).

Vanlig feil: Å bruke r=18 i stedet for r i andre, slik at høyresiden feilaktig blir 324.
Sensorpunkt: Sensor ser etter sentrum-radius-form og kontroll mot begge periferi-punktene.
Del 2 - Oppgave 2aRasjonal modell og graf

Oppgave 2a

Oppgave: Antall biler per minutt er modellert ved \[N(v)=\frac{16{,}7v}{4+0{,}25v+0{,}006v^2}.\] Bruk graftegner til å tegne grafen til \(N\) for \(v\in[0,120]\).
Vis løsning

Hva spør oppgaven om? Vi skal registrere modellen med riktig parentesbruk og tegne den på det oppgitte intervallet.

Steg 1 - Skriv inn hele nevneren i parentes

Registrer \(N(v)=16.7v/(4+0.25v+0.006v^2)\).

Steg 2 - Sett x-intervallet

Velg vindu \(0\le v\le120\).

Steg 3 - Velg passende y-vindu

Et y-vindu fra 0 til omtrent 33 viser hele kapasitetstoppen tydelig.

Steg 4 - Kontroller startverdien

\(N(0)=0\), så grafen starter i origo.

Steg 5 - Kontroller noen tabellverdier

For eksempel er \(N(20)\approx29{,}30\) og \(N(120)\approx16{,}64\).

Steg 6 - Beskriv formen

Grafen stiger raskt, når ett maksimum og avtar deretter gradvis.

Steg 7 - Tegn og merk aksene

x-aksen er fart i km/h og y-aksen er biler per minutt.

Graf av kømodell
Det grønne feltet markerer fartsintervallet der minst 25 biler passerer per minutt.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
N(v):=16.7v/(4+0.25v+0.006v^2)
2
Function[N,0,120]
graf på angitt intervall

Tolkning: Grafen viser én tydelig kapasitetstopp.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
v = sp.symbols("v", real=True)
N = sp.Rational(167,10)*v/(4+sp.Rational(1,4)*v+sp.Rational(6,1000)*v**2)
print("N(v) =", N)
print("Definisjonsintervall: 0 <= v <= 120")
print("N(0) =", N.subs(v,0))
print("N(20) =", sp.N(N.subs(v,20),8))
print("N(40) =", sp.N(N.subs(v,40),8))
print("N(80) =", sp.N(N.subs(v,80),8))
print("N(120) =", sp.N(N.subs(v,120),8))
print("Nevnerens diskriminant =", sp.discriminant(4+sp.Rational(1,4)*v+sp.Rational(6,1000)*v**2,v))
print("Nevneren er positiv på intervallet")
Utskrift fra Python:
N(v) = 167*v/(10*(3*v**2/500 + v/4 + 4))
Definisjonsintervall: 0 <= v <= 120
N(0) = 0
N(20) = 29.298246
N(40) = 28.305085
N(80) = 21.410256
N(120) = 16.644518
Nevnerens diskriminant = -67/2000
Nevneren er positiv på intervallet

Fasit: Se grafen for \(0\le v\le120\).

Vanlig feil: Å skrive 16.7v/4 + 0.25v + 0.006v^2 uten parentes rundt nevneren.
Sensorpunkt: Sensor ser etter riktig modell, intervall og lesbar skala.
Del 2 - Oppgave 2bGrafisk ulikhet

Oppgave 2b

Oppgave: Bestem grafisk hva farten bør være for at minst 25 biler skal kunne passere stedet per minutt.
Vis løsning

Hva spør oppgaven om? Vi skal finne skjæringspunktene mellom grafen til N og den horisontale linjen y=25 og lese av området over linjen.

Steg 1 - Tegn hjelpelinjen

Tegn den horisontale linjen \(y=25\).

Steg 2 - Finn første skjæring

Grafen krysser linjen ved omtrent \(v=11{,}45\).

Steg 3 - Finn andre skjæring

Den krysser på nytt ved omtrent \(v=58{,}21\).

Steg 4 - Vurder området mellom skjæringene

Mellom disse fartene ligger grafen over eller på y=25.

Steg 5 - Vurder området utenfor

Under 11,45 og over 58,21 ligger grafen under 25.

Steg 6 - Ta med endepunktene

Kravet er minst 25, så skjæringsfartene inkluderes.

Steg 7 - Skriv praktisk svar

Farten bør ligge omtrent mellom 11,5 km/h og 58,2 km/h.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Intersect[N,y=25]
\((11{,}45,25)\) og \((58{,}21,25)\)
2
Solve[N(v)>=25,v]
\(11{,}45\le v\le58{,}21\)

Tolkning: Grafen ligger over y=25 mellom de to skjæringene.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
v = sp.symbols("v", real=True)
N = sp.Rational(167,10)*v/(4+sp.Rational(1,4)*v+sp.Rational(6,1000)*v**2)
solutions = sp.solve(sp.Eq(N,25),v)
print("Løs N(v) = 25")
print("Eksakte skjæringspunkter =", solutions)
print("Desimalverdier:")
for s in solutions:
    print(sp.N(s,12))
print("Test mellom røttene, N(30) =", sp.N(N.subs(v,30),10))
print("Test utenfor, N(5) =", sp.N(N.subs(v,5),10))
print("Ulikheten N(v) >= 25 gjelder mellom skjæringspunktene")
Utskrift fra Python:
Løs N(v) = 25
Eksakte skjæringspunkter = [209/6 - sqrt(19681)/6, sqrt(19681)/6 + 209/6]
Desimalverdier:
11.4518354248
58.2148312418
Test mellom røttene, N(30) = 29.64497041
Test utenfor, N(5) = 15.46296296
Ulikheten N(v) >= 25 gjelder mellom skjæringspunktene

Fasit: \(11{,}45\lesssim v\lesssim58{,}21\) km/h.

Vanlig feil: Å oppgi bare den ene skjæringen eller å lese området utenfor skjæringene.
Sensorpunkt: Sensor ser etter begge skjæringspunkter og riktig intervall.
Del 2 - Oppgave 2cMaksimum i modell

Oppgave 2c

Oppgave: Bestem grafisk hva farten må være for at flest mulig biler skal kunne passere stedet per minutt. Hvor mange biler passerer da?
Vis løsning

Hva spør oppgaven om? Vi skal lese av toppunktet på grafen og kontrollere det ved derivasjon.

Steg 1 - Bruk ekstremalpunkt-verktøy

Finn toppunktet på grafen innen intervallet 0 til 120.

Steg 2 - Les av x-koordinaten

Toppunktet ligger ved omtrent \(v=25{,}82\) km/h.

Steg 3 - Les av y-koordinaten

Kapasiteten der er omtrent \(N=29{,}83\) biler per minutt.

Steg 4 - Kontroller analytisk

Den deriverte har nullpunkt når \(3v^2-2000=0\), altså \(v=20\sqrt{15}/3\).

Steg 5 - Forkast negativ løsning

Den negative roten er ikke en gyldig fart.

Steg 6 - Sammenlign med endepunktene

Begge endepunktverdiene er lavere enn toppverdien.

Steg 7 - Gi praktisk svar

Optimal fart i modellen er omtrent 26 km/h, med omtrent 30 biler per minutt.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Extremum[N,0,120]
\((25{,}82,29{,}83)\)
2
Derivative[N,v]
null ved \(v=20\sqrt{15}/3\)

Tolkning: Toppunktverktøyet og den deriverte gir samme resultat.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
v = sp.symbols("v", real=True)
N = sp.Rational(167,10)*v/(4+sp.Rational(1,4)*v+sp.Rational(6,1000)*v**2)
Np = sp.factor(sp.diff(N,v))
print("N'(v) =", Np)
critical = [s for s in sp.solve(sp.Eq(Np,0),v) if s >= 0]
print("Positivt kritisk punkt =", critical)
vm = critical[0]
print("v_max eksakt =", vm)
print("v_max desimalt =", sp.N(vm,12))
print("N(v_max) eksakt =", sp.simplify(N.subs(v,vm)))
print("N(v_max) desimalt =", sp.N(N.subs(v,vm),12))
print("Endepunkt N(0) =", N.subs(v,0))
print("Endepunkt N(120) =", sp.N(N.subs(v,120),12))
Utskrift fra Python:
N'(v) = -8350*(3*v**2 - 2000)/(3*v**2 + 125*v + 2000)**2
Positivt kritisk punkt = [20*sqrt(15)/3]
v_max eksakt = 20*sqrt(15)/3
v_max desimalt = 25.8198889747
N(v_max) eksakt = -8350/67 + 2672*sqrt(15)/67
N(v_max) desimalt = 29.8300224040
Endepunkt N(0) = 0
Endepunkt N(120) = 16.6445182724

Fasit: Maksimum ved \(v\approx25{,}82\) km/h, der \(N\approx29{,}83\) biler/min.

Vanlig feil: Å runde av til 30 biler per minutt og samtidig skrive nøyaktig 30; modellen gir omtrent 29,83.
Sensorpunkt: Sensor ser etter både fart og maksimal kapasitet.
Del 2 - Oppgave 3aVektorfunksjon og banefart

Oppgave 3a

Oppgave: Posisjonene er \[\vec r_A(t)=[18t-8,\,10-3t],\qquad \vec r_B(t)=[10t,\,20-6t].\] Bestem farten til hver båt.
Vis løsning

Hva spør oppgaven om? Vi skal derivere posisjonsvektorene og finne lengdene av de konstante hastighetsvektorene.

Steg 1 - Deriver posisjonen til A

\[\vec v_A(t)=\vec r_A'(t)=[18,-3].\]

Steg 2 - Finn lengden

\[|\vec v_A|=\sqrt{18^2+(-3)^2}=\sqrt{333}=3\sqrt{37}.\]

Steg 3 - Beregn desimaltall for A

\[3\sqrt{37}\approx18{,}25\text{ km/h}.\]

Steg 4 - Deriver posisjonen til B

\[\vec v_B(t)=\vec r_B'(t)=[10,-6].\]

Steg 5 - Finn lengden

\[|\vec v_B|=\sqrt{10^2+(-6)^2}=\sqrt{136}=2\sqrt{34}.\]

Steg 6 - Beregn desimaltall for B

\[2\sqrt{34}\approx11{,}66\text{ km/h}.\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Length[Derivative[(18t-8,10-3t),t]]
\(3\sqrt{37}\)
2
Length[Derivative[(10t,20-6t),t]]
\(2\sqrt{34}\)

Tolkning: CAS beregner de konstante banefartene.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
vA = sp.Matrix([18, -3])
vB = sp.Matrix([10, -6])
print("Hastighetsvektor A =", list(vA))
print("Hastighetsvektor B =", list(vB))
print("Banefart A = sqrt(18^2 + (-3)^2)")
print("Banefart A eksakt =", sp.sqrt(vA.dot(vA)))
print("Banefart A desimalt =", sp.N(sp.sqrt(vA.dot(vA)),10))
print("Banefart B = sqrt(10^2 + (-6)^2)")
print("Banefart B eksakt =", sp.sqrt(vB.dot(vB)))
print("Banefart B desimalt =", sp.N(sp.sqrt(vB.dot(vB)),10))
Utskrift fra Python:
Hastighetsvektor A = [18, -3]
Hastighetsvektor B = [10, -6]
Banefart A = sqrt(18^2 + (-3)^2)
Banefart A eksakt = 3*sqrt(37)
Banefart A desimalt = 18.24828759
Banefart B = sqrt(10^2 + (-6)^2)
Banefart B eksakt = 2*sqrt(34)
Banefart B desimalt = 11.66190379

Fasit: Båt A: \(3\sqrt{37}\approx18{,}25\) km/h. Båt B: \(2\sqrt{34}\approx11{,}66\) km/h.

Vanlig feil: Å oppgi hastighetsvektorene som fart uten å ta vektorlengden.
Sensorpunkt: Sensor ser etter derivasjon og norm av begge hastighetsvektorene.
Del 2 - Oppgave 3bAvstand mellom bevegelige punkter

Oppgave 3b

Oppgave: Forklar at avstanden mellom båtene er \[d(t)=\sqrt{(8t-8)^2+(3t-10)^2}.\]
Vis løsning

Hva spør oppgaven om? Vi skal trekke posisjonsvektorene fra hverandre og bruke avstandsformelen i planet.

Steg 1 - Finn x-forskjellen

\[(18t-8)-10t=8t-8.\]

Steg 2 - Finn y-forskjellen

\[(10-3t)-(20-6t)=3t-10.\]

Steg 3 - Skriv forskjellsvektoren

\[\vec r_A(t)-\vec r_B(t)=[8t-8,\,3t-10].\]

Steg 4 - Bruk vektorlengden

Avstanden er lengden av forskjellsvektoren.

Steg 5 - Sett inn komponentene

\[d(t)=\sqrt{(8t-8)^2+(3t-10)^2}.\]

Steg 6 - Kontroller fortegnene

Om vi bytter rekkefølgen på båtene, skifter begge komponenter fortegn, men kvadratene blir uendret.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Distance[(18t-8,10-3t),(10t,20-6t)]
\(\sqrt{(8t-8)^2+(3t-10)^2}\)

Tolkning: CAS gir det oppgitte avstandsuttrykket.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
t = sp.symbols("t", real=True)
rA = sp.Matrix([18*t-8, 10-3*t])
rB = sp.Matrix([10*t, 20-6*t])
diff = sp.simplify(rA-rB)
print("r_A(t) =", list(rA))
print("r_B(t) =", list(rB))
print("Forskjellsvektor r_A-r_B =", list(diff))
print("Kvadrert avstand =", sp.expand(diff.dot(diff)))
print("Faktorisert som sum av kvadrater =", (8*t-8)**2+(3*t-10)**2)
print("Avstand d(t) =", sp.sqrt(diff.dot(diff)))
print("Kontroll ved t=0: d(0) =", sp.sqrt(diff.dot(diff)).subs(t,0))
Utskrift fra Python:
r_A(t) = [18*t - 8, 10 - 3*t]
r_B(t) = [10*t, 20 - 6*t]
Forskjellsvektor r_A-r_B = [8*t - 8, 3*t - 10]
Kvadrert avstand = 73*t**2 - 188*t + 164
Faktorisert som sum av kvadrater = (3*t - 10)**2 + (8*t - 8)**2
Avstand d(t) = sqrt((3*t - 10)**2 + (8*t - 8)**2)
Kontroll ved t=0: d(0) = 2*sqrt(41)

Fasit: \(d(t)=\sqrt{(8t-8)^2+(3t-10)^2}\).

Vanlig feil: Å summere komponentforskjellene uten å kvadrere dem.
Sensorpunkt: Sensor ser etter forskjellsvektor og korrekt euklidsk norm.
Del 2 - Oppgave 3cMinimering av avstand

Oppgave 3c

Oppgave: Når er avstanden minst? Hvor langt fra hverandre er båtene da?
Vis løsning

Hva spør oppgaven om? Vi skal minimere kvadratet av avstanden; det har samme minimum som selve avstanden, men er enklere å derivere.

Steg 1 - Definer kvadrert avstand

\[D(t)=d(t)^2=(8t-8)^2+(3t-10)^2.\]

Steg 2 - Utvid uttrykket

\[D(t)=73t^2-188t+164.\]

Steg 3 - Deriver

\[D'(t)=146t-188.\]

Steg 4 - Finn kritisk tidspunkt

\[146t-188=0\Rightarrow t=\frac{94}{73}\approx1{,}288.\]

Steg 5 - Kontroller minimum

\(D''(t)=146>0\), så punktet er et minimum.

Steg 6 - Beregn minste kvadrerte avstand

\[D\left(\frac{94}{73}\right)=\frac{3136}{73}.\]

Steg 7 - Ta kvadratroten

\[d_{\min}=\sqrt{\frac{3136}{73}}=\frac{56}{\sqrt{73}}\approx6{,}55\text{ km}.\]

Båtenes baner og minste avstand
Den stiplete forbindelsen viser båtenes posisjoner ved minste innbyrdes avstand.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
D(t):=(8t-8)^2+(3t-10)^2
2
Extremum[D]
\((94/73,3136/73)\)
3
sqrt(3136/73)
\(56/\sqrt{73}\approx6{,}55\)

Tolkning: CAS bekrefter tidspunkt og minste avstand.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
t = sp.symbols("t", real=True)
D = (8*t-8)**2+(3*t-10)**2
print("Minimer kvadrert avstand D(t) =", sp.expand(D))
Dp = sp.diff(D,t)
print("D'(t) =", sp.expand(Dp))
t0 = sp.solve(sp.Eq(Dp,0),t)[0]
print("Kritisk tidspunkt t =", t0)
print("Desimaltid =", sp.N(t0,12), "timer")
print("D''(t) =", sp.diff(D,t,2))
Dmin = sp.simplify(D.subs(t,t0))
print("Minste kvadrerte avstand =", Dmin)
print("Minste avstand eksakt =", sp.sqrt(Dmin))
print("Minste avstand desimalt =", sp.N(sp.sqrt(Dmin),12), "km")
Utskrift fra Python:
Minimer kvadrert avstand D(t) = 73*t**2 - 188*t + 164
D'(t) = 146*t - 188
Kritisk tidspunkt t = 94/73
Desimaltid = 1.28767123288 timer
D''(t) = 146
Minste kvadrerte avstand = 3136/73
Minste avstand eksakt = 56*sqrt(73)/73
Minste avstand desimalt = 6.55430424298 km

Fasit: Etter \(t=94/73\approx1{,}29\) timer er avstanden minst, omtrent \(6{,}55\) km.

Vanlig feil: Å minimere hver koordinatforskjell separat; de blir ikke nødvendigvis minst samtidig.
Sensorpunkt: Sensor ser etter én samlet avstandsfunksjon, derivert null og minimumskontroll.
Del 2 - Oppgave 4aBetingelser for polynom

Oppgave 4a

Oppgave: Funksjonen er \[f(x)=x^4+ax^3+bx^2+cx+1.\] Vi vet at f har nullpunkt i x=1, x=2 er x-koordinaten til et vendepunkt, og grafen går gjennom (3,4). Sett opp tre likninger.
Vis løsning

Hva spør oppgaven om? Vi skal oversette hver geometrisk opplysning til en algebraisk betingelse.

Steg 1 - Bruk nullpunktet

Nullpunkt ved x=1 betyr \(f(1)=0\).

Steg 2 - Sett inn x=1

\[1+a+b+c+1=0\quad\Rightarrow\quad a+b+c=-2.\]

Steg 3 - Bruk vendepunktopplysningen

Et nødvendig vilkår for vendepunkt ved x=2 er \(f''(2)=0\).

Steg 4 - Finn andrederiverten

\[f''(x)=12x^2+6ax+2b.\]

Steg 5 - Sett inn x=2

\[48+12a+2b=0.\]

Steg 6 - Bruk punktet (3,4)

\[f(3)=4\Rightarrow81+27a+9b+3c+1=4.\]

Steg 7 - Forenkle den tredje

\[27a+9b+3c=-78.\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
f(1)=0
\(a+b+c=-2\)
2
f''(2)=0
\(48+12a+2b=0\)
3
f(3)=4
\(27a+9b+3c=-78\)

Tolkning: CAS-oppsettet samsvarer med de tre betingelsene.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x, a, b, c = sp.symbols("x a b c")
f = x**4+a*x**3+b*x**2+c*x+1
fpp = sp.diff(f,x,2)
print("f(x) =", f)
print("f''(x) =", fpp)
print("Nullpunkt x=1 gir:", sp.Eq(f.subs(x,1),0))
print("Vendepunktets x-koordinat 2 gir f''(2)=0:", sp.Eq(fpp.subs(x,2),0))
print("Punktet (3,4) gir:", sp.Eq(f.subs(x,3),4))
print("Forenklede venstresider:")
print(sp.expand(f.subs(x,1)))
print(sp.expand(fpp.subs(x,2)))
print(sp.expand(f.subs(x,3)-4))
Utskrift fra Python:
f(x) = a*x**3 + b*x**2 + c*x + x**4 + 1
f''(x) = 2*(3*a*x + b + 6*x**2)
Nullpunkt x=1 gir: Eq(a + b + c + 2, 0)
Vendepunktets x-koordinat 2 gir f''(2)=0: Eq(12*a + 2*b + 48, 0)
Punktet (3,4) gir: Eq(27*a + 9*b + 3*c + 82, 4)
Forenklede venstresider:
a + b + c + 2
12*a + 2*b + 48
27*a + 9*b + 3*c + 78

Fasit: Likningene kan skrives \(a+b+c=-2\), \(12a+2b=-48\) og \(27a+9b+3c=-78\).

Vanlig feil: Å bruke f-prime(2)=0 i stedet for f-andrederivert(2)=0. Vendepunkt gjelder krumning.
Sensorpunkt: Sensor ser etter én korrekt likning fra hver av de tre opplysningene.
Del 2 - Oppgave 4bCAS og lineært system

Oppgave 4b

Oppgave: Bruk CAS til å bestemme konstantene \(a\), \(b\) og \(c\).
Vis løsning

Hva spør oppgaven om? Vi skal løse de tre lineære likningene samtidig og kontrollere alle opprinnelige vilkår.

Steg 1 - Registrer systemet

\[a+b+c=-2,\quad12a+2b=-48,\quad27a+9b+3c=-78.\]

Steg 2 - Løs med CAS

CAS gir \(a=-6\), \(b=12\) og \(c=-8\).

Steg 3 - Sett inn i funksjonen

\[f(x)=x^4-6x^3+12x^2-8x+1.\]

Steg 4 - Kontroller nullpunktet

\[f(1)=1-6+12-8+1=0.\]

Steg 5 - Kontroller vendepunktvilkåret

\[f''(x)=12(x-1)(x-2),\quad f''(2)=0.\]

Steg 6 - Kontroller fortegnsskiftet

Faktoren x-2 skifter fortegn ved 2, mens x-1 er positiv rundt 2, så f-andrederivert skifter fortegn.

Steg 7 - Kontroller punktet

\[f(3)=81-162+108-24+1=4.\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[{a+b+c=-2,48+12a+2b=0,27a+9b+3c=-78},{a,b,c}]
\(a=-6,\ b=12,\ c=-8\)
2
Factor[Derivative[x^4-6x^3+12x^2-8x+1,x,2]]
\(12(x-1)(x-2)\)

Tolkning: CAS bekrefter både konstantene og vendepunktets fortegnsskifte.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
a, b, c, x = sp.symbols("a b c x")
eqs = [sp.Eq(a+b+c,-2), sp.Eq(48+12*a+2*b,0), sp.Eq(27*a+9*b+3*c,-78)]
print("Likningssystem:")
for eq in eqs:
    print(eq)
solution = sp.solve(eqs,[a,b,c], dict=True)[0]
print("Løsning =", solution)
f = x**4+a*x**3+b*x**2+c*x+1
f_sol = sp.expand(f.subs(solution))
print("f(x) med konstantene =", f_sol)
print("Kontroll f(1) =", f_sol.subs(x,1))
print("Kontroll f''(2) =", sp.diff(f_sol,x,2).subs(x,2))
print("Kontroll f(3) =", f_sol.subs(x,3))
print("f''(x) faktorisert =", sp.factor(sp.diff(f_sol,x,2)))
Utskrift fra Python:
Likningssystem:
Eq(a + b + c, -2)
Eq(12*a + 2*b + 48, 0)
Eq(27*a + 9*b + 3*c, -78)
Løsning = {a: -6, b: 12, c: -8}
f(x) med konstantene = x**4 - 6*x**3 + 12*x**2 - 8*x + 1
Kontroll f(1) = 0
Kontroll f''(2) = 0
Kontroll f(3) = 4
f''(x) faktorisert = 12*(x - 2)*(x - 1)

Fasit: \(a=-6\), \(b=12\), \(c=-8\).

Vanlig feil: Å bare løse systemet uten å kontrollere at f-andrederivert faktisk skifter fortegn ved x=2.
Sensorpunkt: Sensor ser etter CAS-løsningen og kontroll av de tre opplysningene.
Del 2 - Oppgave 5aSymbolsk tangentlikning

Oppgave 5a

Oppgave: Funksjonen er \(g(x)=ax^3-x^2\). Grafen har tangent i \(P(t,g(t))\). Vis at tangenten har likningen \[y=(3at^2-2t)x+t^2-2at^3.\]
Vis løsning

Hva spør oppgaven om? Vi skal bruke den deriverte som stigningstall og punkt-stigning-formen for en rett linje.

Steg 1 - Deriver g

\[g'(x)=3ax^2-2x.\]

Steg 2 - Finn stigningstallet i x=t

\[g'(t)=3at^2-2t.\]

Steg 3 - Finn punktets y-koordinat

\[g(t)=at^3-t^2.\]

Steg 4 - Bruk punkt-stigning-formen

\[y-g(t)=g'(t)(x-t).\]

Steg 5 - Sett inn uttrykkene

\[y-(at^3-t^2)=(3at^2-2t)(x-t).\]

Steg 6 - Utvid høyresiden

\[y=(3at^2-2t)x-(3at^3-2t^2)+at^3-t^2.\]

Steg 7 - Samle konstantleddene

\[y=(3at^2-2t)x+t^2-2at^3.\]

Kubikk med tangent
Illustrasjonen bruker a=1 og t=1; den symbolske utledningen gjelder generelt.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
g(x):=a*x^3-x^2
2
Tangent[t,g]
\(y=(3at^2-2t)x+t^2-2at^3\)

Tolkning: CAS utvider tangentlikningen til det ønskede uttrykket.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x, a, t = sp.symbols("x a t")
g = a*x**3-x**2
gp = sp.diff(g,x)
print("g(x) =", g)
print("g'(x) =", gp)
print("g(t) =", sp.expand(g.subs(x,t)))
print("g'(t) =", sp.expand(gp.subs(x,t)))
line = sp.expand(g.subs(x,t)+gp.subs(x,t)*(x-t))
print("Punkt-stigning-form:")
print("y = g(t) + g'(t)*(x-t)")
print("Utvidet tangentlikning:")
print("y =", line)
print("Forventet uttrykk =", (3*a*t**2-2*t)*x+t**2-2*a*t**3)
print("Differanse =", sp.simplify(line-((3*a*t**2-2*t)*x+t**2-2*a*t**3)))
Utskrift fra Python:
g(x) = a*x**3 - x**2
g'(x) = 3*a*x**2 - 2*x
g(t) = a*t**3 - t**2
g'(t) = 3*a*t**2 - 2*t
Punkt-stigning-form:
y = g(t) + g'(t)*(x-t)
Utvidet tangentlikning:
y = -2*a*t**3 + 3*a*t**2*x + t**2 - 2*t*x
Forventet uttrykk = -2*a*t**3 + t**2 + x*(3*a*t**2 - 2*t)
Differanse = 0

Fasit: Tangenten er \(y=(3at^2-2t)x+t^2-2at^3\).

Vanlig feil: Å bruke g(t) som stigningstall eller å glemme leddet minus t i punkt-stigning-formen.
Sensorpunkt: Sensor ser etter g-prime(t), punkt-stigning-form og korrekt algebra.
Del 2 - Oppgave 5bCAS og skjæring mellom kurve og tangent

Oppgave 5b

Oppgave: Bruk CAS til å bestemme koordinatene til det andre skjæringspunktet \(Q\), uttrykt ved \(a\) og \(t\).
Vis løsning

Hva spør oppgaven om? Vi skal sette kubikken lik tangentlinjen, faktorisere skjæringslikningen og hente ut den tredje roten.

Steg 1 - Sett uttrykkene lik hverandre

\[ax^3-x^2=(3at^2-2t)x+t^2-2at^3.\]

Steg 2 - Flytt alt til én side

CAS faktoriserer differansen mellom kurven og linjen.

Steg 3 - Bruk tangentkontakten

Siden linjen tangerer ved x=t, må x=t være en dobbel rot.

Steg 4 - Faktoriser med CAS

\[g(x)-\ell(x)=(x-t)^2(ax+2at-1).\]

Steg 5 - Finn den andre x-koordinaten

\[ax+2at-1=0\Rightarrow x_Q=\frac1a-2t.\]

Steg 6 - Sett inn i g

\[y_Q=g\left(\frac1a-2t\right)=-\frac{2t(2at-1)^2}{a}.\]

Steg 7 - Skriv koordinatene og vilkår

For \(a\neq0\) og \(t\neq1/(3a)\): \[Q=\left(\frac1a-2t,-\frac{2t(2at-1)^2}{a}\right).\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Factor[a*x^3-x^2-((3a*t^2-2t)x+t^2-2a*t^3)]
\((x-t)^2(ax+2at-1)\)
2
Solve[ax+2at-1=0,x]
\(x=1/a-2t\)
3
Substitute[a*x^3-x^2,x,1/a-2t]
\(-2t(2at-1)^2/a\)

Tolkning: CAS isolerer den tredje skjæringsroten og tilhørende y-verdi.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x, a, t = sp.symbols("x a t", nonzero=True)
g = a*x**3-x**2
line = (3*a*t**2-2*t)*x+t**2-2*a*t**3
difference = sp.factor(g-line)
print("Skjæringslikning g(x) = tangent(x)")
print("g(x) - tangent(x) faktorisert =")
print(difference)
print("Faktoren (x-t)^2 viser tangentkontakt i P")
remaining = sp.factor(difference/(x-t)**2)
print("Gjenværende lineær faktor =", remaining)
q_x = sp.solve(sp.Eq(remaining,0),x)[0]
print("Q sin x-koordinat =", q_x)
q_y = sp.factor(g.subs(x,q_x))
print("Q sin y-koordinat =", q_y)
print("Kontroll i tangentlinjen =", sp.factor(line.subs(x,q_x)))
print("Q er forskjellig fra P når t != 1/(3a)")
Utskrift fra Python:
Skjæringslikning g(x) = tangent(x)
g(x) - tangent(x) faktorisert =
(-t + x)**2*(2*a*t + a*x - 1)
Faktoren (x-t)^2 viser tangentkontakt i P
Gjenværende lineær faktor = 2*a*t + a*x - 1
Q sin x-koordinat = -2*t + 1/a
Q sin y-koordinat = -2*t*(2*a*t - 1)**2/a
Kontroll i tangentlinjen = -2*t*(2*a*t - 1)**2/a
Q er forskjellig fra P når t != 1/(3a)

Fasit: \(Q=\left(\dfrac1a-2t,-\dfrac{2t(2at-1)^2}{a}\right)\), for den ikke-degenererte situasjonen.

Vanlig feil: Å ta x=t som det andre punktet. Roten x=t er dobbelt fordi linjen er tangent.
Sensorpunkt: Sensor ser etter faktorisering med (x-t) i andre og den gjenværende lineære faktoren.
Kildegrunnlag: Oppgavetekstene er transkribert fra Utdanningsdirektoratets eksamenssett REA3022 Matematikk R1 våren 2015. Løsningene, figurene og kontrollene er utarbeidet for ifingo.