Funksjonsdrøfting og halveringsmetode

Funksjonsdrøfting og halveringsmetode

En funksjon ff er gitt ved

f(x)=4x2lnxf(x) = 4x^2 \cdot \ln x

Bestem koordinatene til eventuelle topp- og bunnpunkter på grafen til ff.

En elev jobber med funksjonen ff og har skrevet programmet nedenfor:

from math import log              # log(x) er kode for ln(x)

a = 0.1
b = 3

maks_avvik = 0.0001

def f(x):                         # definerer funksjonen
    return 4*x**2*log(x)

m = (a + b)/2

while abs(f(m)) >= maks_avvik:    # abs() finner absoluttverdi

	if f(a)*f(m) < 0:
		b = m
    else:
        a = m

    m = (a + b)/2

print(m)

Hva ønsker eleven å finne ut?
Forklar hva programmet gjør i linje 11–20.
Bestem verdien som blir skrevet ut når eleven kjører programmet.

Fasit

Bunnpunkt (1e,  2e)\left(\dfrac{1}{\sqrt{e}},\; -\dfrac{2}{e}\right), ingen toppunkt

m1,000m \approx 1{,}000

Løsningsforslag

f(x)=4x2lnxf(x) = 4x^2 \ln x er definert for x>0x > 0.

f(x)=8xlnx+4x21x=8xlnx+4x=4x(2lnx+1)f'(x) = 8x \ln x + 4x^2 \cdot \frac{1}{x} = 8x \ln x + 4x = 4x(2\ln x + 1)

For x>0x > 0 er 4x>04x > 0, så f(x)=0f'(x) = 0 når 2lnx+1=02\ln x + 1 = 0, det vil si lnx=12\ln x = -\dfrac{1}{2}, altså x=e1/2=1ex = e^{-1/2} = \dfrac{1}{\sqrt{e}}.

Fortegnskifte: f<0f' < 0 for x<e1/2x < e^{-1/2} og f>0f' > 0 for x>e1/2x > e^{-1/2}, så dette er et bunnpunkt.

f(e1/2)=4e1ln(e1/2)=4e(12)=2ef\left(e^{-1/2}\right) = 4 \cdot e^{-1} \cdot \ln\left(e^{-1/2}\right) = \frac{4}{e} \cdot \left(-\frac{1}{2}\right) = -\frac{2}{e}

Bunnpunkt: (1e,  2e)\underline{\underline{\left(\dfrac{1}{\sqrt{e}},\; -\dfrac{2}{e}\right)}}

Grafen til ff har ingen toppunkt.

Eleven ønsker å finne nullpunktet til ff i intervallet [0,1,  3][0{,}1,\; 3], ved hjelp av halveringsmetoden.

f(0,1)=40,01ln(0,1)0,092<0f(0{,}1) = 4 \cdot 0{,}01 \cdot \ln(0{,}1) \approx -0{,}092 < 0 og f(3)=36ln339,6>0f(3) = 36\ln 3 \approx 39{,}6 > 0, så det finnes ett nullpunkt i intervallet. (Vi ser at f(x)=4x2lnx=0f(x) = 4x^2 \ln x = 0 for x=1x = 1.)

Hva programmet gjør i linje 11–20:

  • Linje 11 setter mm til midtpunktet i intervallet [a,b][a, b].
  • Linje 13: loopen fortsetter så lenge f(m)0,0001|f(m)| \ge 0{,}0001.
  • Linje 15–16: dersom f(a)f(a) og f(m)f(m) har motsatt fortegn, er nullpunktet i [a,m][a, m] → vi oppdaterer b=mb = m.
  • Linje 17–18: ellers er nullpunktet i [m,b][m, b] → vi oppdaterer a=ma = m.
  • Linje 20: ny midtpunkt beregnes.

Programmet halverer intervallet i hver iterasjon til f(m)|f(m)| er tilstrekkelig liten.

Programmet skriver ut m1,000\underline{\underline{m \approx 1{,}000}}.


Sensorveiledning

1 poeng for å derivere riktig og 1 poeng for å finne koordinatene.

1 poeng for å forklare og beskrive koden og 1 poeng for å finne verdien.