Innskrevet rektangel og Lars sitt program
En funksjon er gitt ved
Lars har tegnet grafen til med et innskrevet rektangel . Lars har også skrevet et program.

def f(x):
return -x**2 + 4
def areal(x):
return x*f(x)
h = 0.0001
def der_areal(x):
return (areal(x + h) - areal(x))/h
x = 0
dx = 0.01
while der_areal(x + dx) > 0:
x = x + dx
print(areal(x))
Forklar hva Lars prøver å finne ut med programmet. Hva blir svaret hvis man kjører programmet?
Hvilken strategi bruker Lars i programmet sitt? Vil strategien fungere uavhengig av hvilken funksjon er?
Fasit
Programmet finner det største arealet av et rektangel innskrevet under grafen. Svaret er ca. .
Lars bruker en numerisk trinnvis tilnærming der han leter fremover til deriverte av arealet skifter fortegn. Strategien er ikke universell.
LøsningsforslagKI-generert
Rektangelet har ett hjørne på grafen til . Hjørnet over -aksen befinner seg i punktet . Siden rektangelet er symmetrisk om -aksen, har det bredde og høyde .
Av figuren leser vi imidlertid at bare halvparten av rektangelet vises (fra til -verdien på grafen), altså bredde og høyde . Arealet er:
Hva programmet gjør:
areal(x)beregner .der_areal(x)beregner den numeriske deriverte med .- Løkken starter på og øker med i hvert steg, så lenge den numeriske deriverte i neste steg er positiv (dvs. arealet fortsatt vokser).
- Løkken stopper når
der_areal(x + dx) <= 0, altså når arealet er i ferd med å avta — ved et (lokalt) maksimum.
Programmet prøver å finne -verdien som maksimerer arealet, og skriver deretter ut i dette punktet.
Kjøring: øker fra i steg på . Den eksakte maksimumsverdien er . Programmet stopper siste gang , noe som gir (siden ).
Programmet skriver ut:
(Det eksakte maksimale arealet er .)
Strategi: Lars antar at arealet begynner med å vokse fra , og leter trinnvis fremover til den numeriske deriverte skifter fra positiv til ikke-positiv. Han finner altså det første punktet der snur fra positiv til negativ — et lokalt toppunkt.
Strategien er ikke universell. Den kan feile i følgende situasjoner:
- Hvis allerede er negativ eller lik null for (arealet avtar fra start), stopper løkken umiddelbart uten å finne noe maksimum.
- Hvis har flere lokale maksimumspunkter, finner programmet bare det første og overser et eventuelt høyere globalt maksimum lenger ut.
- Steglengden gir en numerisk tilnærming, ikke det eksakte maksimumet. Her gir programmet istedenfor det eksakte .
Strategien fungerer kun for funksjoner der arealet er positivt, starter med å vokse, og har nøyaktig ett lokalt maksimum.