3.5
Newtons metode

3.5 Newtons metode

Numerisk løsning av ligninger ved iterasjon.

55 min
9 oppgaver
Newtons metodeIterasjonNumerisk rotfunnKonvergensStartverdier
Du leser den tradisjonelle versjonen
Din fremgang i kapitlet
0 / 9 oppgaver
Kapitlets plass i kurset

Numerisk løsning av likninger

Mange likninger kan ikke løses eksakt med algebraiske metoder. For eksempel:
- x5−3x+1=0x^5 - 3x + 1 = 0
- ex=3xe^x = 3x
- cos⁡x=x\cos x = x

Likningen cos⁡x=x\cos x = x bruker cosinus, som hører til R2. Eksempel 2 og oppgave 3 a) er derfor fordypning. Vi bruker også noen deriverte som du lærer å finne i kapittel 4: (ex)′=ex(e^x)' = e^x og (ln⁡x)′=1x\displaystyle (\ln x)' = \frac{1}{x}.

Newtons metode gir oss en måte å finne tilnærmede løsninger med høy presisjon.

Ideen: Start med en gjetning, og forbedre den iterativt ved å følge tangentlinjen.

Newtons metode
For å finne nullpunkter til f(x)=0f(x) = 0:

1. Velg en startverdi x0x_0 nær løsningen
2. Iterer med formelen:
xn+1=xn−f(xn)f′(xn)x_{n+1} = x_n - \frac{f(x_n)}{f'(x_n)}

Geometrisk tolkning:
- Tegn tangenten til ff i punktet (xn,f(xn))(x_n, f(x_n))
- Finn hvor tangenten krysser xx-aksen
- Dette gir xn+1x_{n+1}

Prosessen gjentas til ønsket nøyaktighet er oppnådd.

Utledning av formelen

Tangentlinjen til ff i (xn,f(xn))(x_n, f(x_n)) har likning:
y−f(xn)=f′(xn)(x−xn)y - f(x_n) = f'(x_n)(x - x_n)

Vi finner hvor tangenten krysser xx-aksen (y=0y = 0):
0−f(xn)=f′(xn)(x−xn)0 - f(x_n) = f'(x_n)(x - x_n)
x=xn−f(xn)f′(xn)x = x_n - \frac{f(x_n)}{f'(x_n)}

Dette gir oss xn+1x_{n+1}.

✏️Eksempel 1: Finne kvadratroten av 2

Bruk Newtons metode til å finne 2\sqrt{2} ved å løse x2−2=0x^2 - 2 = 0.

Sett opp:
- f(x)=x2−2f(x) = x^2 - 2
- f′(x)=2xf'(x) = 2x
- Iterasjonsformel: xn+1=xn−xn2−22xn=xn2+22xn=xn2+1xn\displaystyle x_{n+1} = x_n - \frac{x_n^2 - 2}{2x_n} = \frac{x_n^2 + 2}{2x_n} = \frac{x_n}{2} + \frac{1}{x_n}

Startverdi: x0=1x_0 = 1

Iterasjoner:

nnxnx_n
01
112+11=1,5\displaystyle \frac{1}{2} + \frac{1}{1} = 1{,}5
21,52+11,5=1,4167\displaystyle \frac{1{,}5}{2} + \frac{1}{1{,}5} = 1{,}4167
31,41421{,}4142

Svar: 2≈1,4142\sqrt{2} \approx 1{,}4142 (etter 3 iterasjoner)
✏️Eksempel 2: Løse en transcendent likning (fordypning)
Fordypning (utenfor læreplanen for R1): cosinus og sinus er R2-stoff, og her bruker vi at (cos⁡x)′=−sin⁡x(\cos x)' = -\sin x.

Finn en løsning av cos⁡x=x\cos x = x med Newtons metode.

Omform til nullpunktsproblem:
f(x)=cos⁡x−x=0f(x) = \cos x - x = 0

Derivert:
f′(x)=−sin⁡x−1f'(x) = -\sin x - 1

Iterasjonsformel:
xn+1=xn−cos⁡xn−xn−sin⁡xn−1x_{n+1} = x_n - \frac{\cos x_n - x_n}{-\sin x_n - 1}

Startverdi: x0=0,5x_0 = 0{,}5 (fra grafisk inspeksjon)

Iterasjoner:

nnxnx_nf(xn)f(x_n)
00,50,378
10,7552−0,0271-0{,}0271
20,7391−0,00009-0{,}00009

Svar: x≈0,7391x \approx 0{,}7391 er løsningen av cos⁡x=x\cos x = x.
Konvergens og problemer
Når fungerer Newtons metode godt?
- Startverdien er nær løsningen
- f′(x)≠0f'(x) \neq 0 nær løsningen
- ff er kontinuerlig og deriverbar nær løsningen

Når kan det gå galt?
- f′(xn)=0f'(x_n) = 0 (divisjon med null)
- Dårlig startverdi (kan gi divergens eller feil løsning)
- Flere løsninger (kan lande på "feil" løsning)

Konvergenshastighet:
Når metoden fungerer, dobles vanligvis antall korrekte siffer for hver iterasjon (kvadratisk konvergens).

📝Oppgave 1

Bruk Newtons metode med 3 iterasjoner.

a

Finn 5\sqrt{5} ved å løse x2−5=0x^2 - 5 = 0 med x0=2x_0 = 2.

b

Finn 103\sqrt[3]{10} ved å løse x3−10=0x^3 - 10 = 0 med x0=2x_0 = 2.

c

Løs ex=3xe^x = 3x med x0=2x_0 = 2.

📝Oppgave 2

Likningen x3−2x−5=0x^3 - 2x - 5 = 0 har én reell løsning.

a

Vis at løsningen ligger mellom 2 og 3.

b

Bruk Newtons metode med x0=2x_0 = 2 til å finne løsningen med 4 desimalers nøyaktighet.

Løs oppgaven

Gjør dette i GeoGebra

Utforsk Newtons metode grafisk

Se hvordan tangentlinjene konvergerer mot nullpunktet.

Skriv inn én linje om gangen i inntastingsfeltet:

f(x) = x^3 - 2x - 5
x0 = 3
A = (x0, f(x0))
tang1 = Tangent(A, f)
B = Intersect(tang1, xAxis)
x1 = x(B)
C = (x1, f(x1))
tang2 = Tangent(C, f)
D = Intersect(tang2, xAxis)

Med språket satt til norsk forstår GeoGebra kommandonavnene både på norsk og engelsk.

Åpne GeoGebra(åpnes i ny fane)
✏️Eksempel 3: Når Newtons metode feiler

Forsøk å løse x1/3=0x^{1/3} = 0 (kubikkrot) med Newtons metode. Bruk x0=1x_0 = 1.

Sett opp:
- f(x)=x1/3f(x) = x^{1/3}
- f′(x)=13x−2/3\displaystyle f'(x) = \frac{1}{3}x^{-2/3}

Iterasjonsformel:
xn+1=xn−xn1/313xn−2/3=xn−xn1/3⋅3xn2/31=xn−3xn=−2xn\begin{aligned} x_{n+1} &= x_n - \frac{x_n^{1/3}}{\frac{1}{3}x_n^{-2/3}} \\ &= x_n - \frac{x_n^{1/3} \cdot 3x_n^{2/3}}{1} \\ &= x_n - 3x_n \\ &= -2x_n \end{aligned}

Iterasjoner:

nnxnx_n
011
1−2-2
244
3−8-8
41616

Iteratene 1,−2,4,−8,16,…1, -2, 4, -8, 16, \ldots divergerer — verdiene vokser og spretter mellom positiv og negativ.
Årsak:
Nullpunktet er x=0x = 0, men der er f′(0)=13⋅0−2/3→∞\displaystyle f'(0) = \frac{1}{3} \cdot 0^{-2/3} \to \infty. Den deriverte er ubegrenset nær nullpunktet, og tangentlinjene peker lenger og lenger bort. Newtons metode konvergerer ikke.
Svar: Newtons metode divergerer her, og vi finner ikke nullpunktet x=0x = 0 fra x0=1x_0 = 1.
📝Oppgave 3

Anvend Newtons metode på ulike problemer.

a

(Fordypning, R2-stoff) Finn nullpunktet til f(x)=x−cos⁡xf(x) = x - \cos x med x0=1x_0 = 1. Utfør 3 iterasjoner.

b

Likningen ln⁡x=5−x\ln x = 5 - x har en løsning nær x=4x = 4. Bruk Newtons metode til å finne den.

c

Forklar hvorfor x0=0x_0 = 0 er en dårlig startverdi for å løse f(x)=x2−1=0f(x) = x^2 - 1 = 0 med Newtons metode.

📝Oppgave 4

Skriv en algoritme (pseudokode eller Python) for Newtons metode.

a

Skriv en funksjon newton(f, f_derivert, x0, toleranse, maks_iter) som returnerer et tilnærmet nullpunkt. Funksjonen skal iterere til ∣f(xn)∣<toleranse|f(x_n)| < \text{toleranse} eller maks antall iterasjoner er nådd.

b

Test algoritmen på f(x)=x3−2f(x) = x^3 - 2 for å finne 23\sqrt[3]{2}. Hvor mange iterasjoner trengs for 10 desimalers nøyaktighet?

Halveringsmetoden

Newtons metode krever den deriverte og en god startverdi. Halveringsmetoden krever bare at ff er kontinuerlig og skifter fortegn i et intervall.

Er f(a)f(a) og f(b)f(b) av motsatt fortegn, er f(a)⋅f(b)<0f(a) \cdot f(b) < 0, og ff har et nullpunkt i ⟨a,b⟩\langle a, b \rangle. Vi regner ut midtpunktet m=a+b2\displaystyle m = \frac{a + b}{2} og beholder den halvdelen der fortegnsskiftet er:

- Er f(a)⋅f(m)<0f(a) \cdot f(m) < 0, ligger nullpunktet i ⟨a,m⟩\langle a, m \rangle, og vi setter b=mb = m.
- Ellers ligger nullpunktet i [m,b⟩[m, b \rangle, og vi setter a=ma = m.

Hver runde halverer intervallet. Starter vi med lengden b−ab - a, er lengden b−a2n\displaystyle \frac{b - a}{2^n} etter nn runder, og nullpunktet ligger alltid i det intervallet vi har igjen.

✏️Eksempel 4: Halveringsmetoden på ex=4e^x = 4

La f(x)=ex−4f(x) = e^x - 4.

a) Vis at ff har et nullpunkt i ⟨1,2⟩\langle 1, 2 \rangle.

b) Utfør tre runder med halveringsmetoden for hånd.

c) Programmet nedenfor bruker halveringsmetoden. Forklar hva det gjør, og hva det skriver ut.

from math import exp

def f(x):
    return exp(x) - 4

a = 1
b = 2
while b - a > 0.001:
    m = (a + b) / 2
    if f(a) * f(m) < 0:
        b = m
    else:
        a = m

print(a, b)

a) f(1)=e−4≈−1,2817<0f(1) = e - 4 \approx -1{,}2817 < 0 og f(2)=e2−4≈3,3891>0f(2) = e^2 - 4 \approx 3{,}3891 > 0.

ff er kontinuerlig og skifter fortegn, så ff har et nullpunkt i ⟨1,2⟩\langle 1, 2 \rangle.

Svar: f(1)<0<f(2)f(1) < 0 < f(2), så det finnes et nullpunkt i ⟨1,2⟩\langle 1, 2 \rangle.

b)

Rundeaabbmm
1121,5
211,51,25
31,251,51,375
Rundef(m)f(m)Nytt intervall
10,48170{,}4817⟨1; 1,5⟩\langle 1;\ 1{,}5 \rangle
2−0,5097-0{,}5097⟨1,25; 1,5⟩\langle 1{,}25;\ 1{,}5 \rangle
3−0,0449-0{,}0449⟨1,375; 1,5⟩\langle 1{,}375;\ 1{,}5 \rangle

Svar: Etter tre runder ligger nullpunktet i ⟨1,375; 1,5⟩\langle 1{,}375;\ 1{,}5 \rangle.
c) f er funksjonen, a og b er endepunktene. Løkka kjører så lenge intervallet er lengre enn 0,001. I hver runde regnes midtpunktet m ut, og if-testen beholder den halvdelen der ff skifter fortegn.
Lengden starter på 1 og halveres hver runde. Etter 10 runder er den 1210=11024<0,001\displaystyle \frac{1}{2^{10}} = \frac{1}{1024} < 0{,}001, og løkka stopper.
Det eksakte nullpunktet er x=ln⁡4≈1,38629x = \ln 4 \approx 1{,}38629.

Svar: Programmet skriver ut endepunktene i det siste intervallet: 1.3857421875 1.38671875. Nullpunktet x=ln⁡4≈1,386x = \ln 4 \approx 1{,}386 ligger mellom dem.

📝Oppgave 5

La f(x)=x3+x−3f(x) = x^3 + x - 3.

a

Vis at ff har et nullpunkt i ⟨1,2⟩\langle 1, 2 \rangle.

b

Utfør tre runder med halveringsmetoden. I hvilket intervall ligger nullpunktet etterpå?

📝Oppgave 6

Programmet nedenfor bruker halveringsmetoden.

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

a = 1
b = 2
while b - a > 0.2:
    m = (a + b) / 2
    print(m)
    if f(a) * f(m) < 0:
        b = m
    else:
        a = m

a

Hva skriver programmet ut?

b

Hvilket tall nærmer midtpunktene seg hvis vi lar løkka gå lenger? Begrunn svaret.

c

Hvor mange runder kjører løkka hvis vi bytter 0.2 med 0.001?

📝Oppgave 7

Vi vil løse likningen ex=3xe^x = 3x med programmet fra eksempel 4.

a

Endre programmet slik at det finner løsningen som ligger i ⟨0,1⟩\langle 0, 1 \rangle. Hva skriver det ut?

b

Hva skriver programmet ut hvis vi starter med a = -1 og b = 0? Er det en løsning av likningen?

c

Legg til en kontroll slik at programmet skriver ut en melding når det ikke er fortegnsskifte i startintervallet.

Oppsummering

Newtons metode:
xn+1=xn−f(xn)f′(xn)x_{n+1} = x_n - \frac{f(x_n)}{f'(x_n)}

Fremgangsmåte:
1. Omform likningen til f(x)=0f(x) = 0
2. Finn f′(x)f'(x)
3. Velg en god startverdi x0x_0
4. Iterer til ønsket nøyaktighet

Halveringsmetoden: Halver intervallet og behold halvdelen der ff skifter fortegn. Langsom, men virker alltid når ff er kontinuerlig og f(a)⋅f(b)<0f(a) \cdot f(b) < 0.

Fordeler med Newtons metode:
- Rask konvergens (dobler presisjon per steg)
- Fungerer for de fleste funksjoner

Ulemper med Newtons metode:
- Krever god startverdi
- Krever at f′(x)≠0f'(x) \neq 0

Repetisjonsoppgaver
Din fremgang
0deloppgaver0 / 5 oppgaver

Dette kapitlet er skrevet av Anthropics toppmodeller (Claude Opus og Claude Fable) og er foreløpig ikke manuelt gjennomgått — kvalitetskontrollen gjøres av uavhengige KI-agenter, og innmeldte feil rettes fortløpende. Funnet en feil? Meld fra, så retter vi den. Les mer om hvordan innholdet lages.