3.6 Numerisk derivasjon med digitale verktøy
Fremover-, bakover- og sentraldifferanse, og bruk av regneark og CAS.
Derivasjon uten formel
En treningsklokke logger posisjonen din hvert sekund. En værstasjon registrerer temperaturen hvert minutt. En ingeniør får måleserier fra en sensor i en bro. Alle tre vil vite det samme: hvor fort endrer dette seg? -- altså den deriverte. Men her er problemet: ingen av dem har noe funksjonsuttrykk. Det finnes ingen å derivere med reglene fra kapittel 2 og 3 -- bare en tabell med tall.
Og selv når formelen finnes, kan den være så uhåndterlig at symbolsk derivasjon er upraktisk. Hva gjør vi da?
Vi går tilbake til kilden. Derivasjonens definisjon var grenseverdien av differansekvotienten:
Grenseverdien krever formelen -- men kvotienten gjør ikke. Ideen i numerisk derivasjon er frekk i all sin enkelhet: dropp grenseovergangen, og bruk differansekvotienten med en liten, men endelig . Med får du ikke den deriverte eksakt, men du får en tilnærming -- og spørsmålene blir straks praktiske: Hvilken differanseformel gir best tilnærming? Hvor liten bør være? Og kan den bli for liten?
Svaret på det siste er et overraskende ja, og historien om hvorfor -- kappløpet mellom metodefeil og avrundingsfeil -- er kapittelets mest lærerike poeng. Underveis setter vi opp beregningene i regneark, og lar CAS-verktøy gjøre både symbolsk og numerisk derivasjon for oss.
Tre måter å spørre naboene på
Du står i punktet og vil anslå stigningen der. Med steglengde har du tre naturlige muligheter, alt etter hvilke naboverdier du bruker.
Framoverdifferansen ser fremover: . Bakoverdifferansen ser bakover: . Og sentraldifferansen ser begge veier og hopper over punktet selv:
Geometrisk er alle tre sekantstigninger -- forskjellen er hvor sekanten festes. Framover- og bakoverdifferansen lener seg til hver sin side av , mens sentraldifferansen spenner symmetrisk over punktet, og symmetrien viser seg å være gull verdt.
La oss måle dem mot en fasit. Ta i , der vi vet at eksakt. Med er , og . Framoverdifferansen gir -- feil på . Bakoverdifferansen gir -- feil på . Men sentraldifferansen:
Feil på bare -- seksti ganger bedre enn de ensidige, med nøyaktig samme datamengde! Intuisjonen: framoverdifferansen overdriver stigningen der grafen krummer oppover, bakoverdifferansen underdriver den, og i den symmetriske sentraldifferansen kansellerer de to skjevhetene hverandre nesten perfekt. Når du har verdier på begge sider av punktet, er sentraldifferansen derfor standardvalget.
Feilens anatomi -- og fellen ved liten
Talleksempelet antydet et mønster, og mønsteret er en presis lov. Feilen i framover- og bakoverdifferansen er av størrelsesorden -- proporsjonal med -- mens sentraldifferansens feil er , proporsjonal med . Konsekvensen merkes hver gang du forfiner: halverer du , halveres feilen i de ensidige formlene, men sentraldifferansens feil deles på fire. Sentraldifferansen konvergerer altså mye raskere mot den eksakte verdien, og det er denne kvadratiske gevinsten symmetrien kjøper oss.
Da skulle man tro strategien var opplagt: velg mikroskopisk, så blir feilen mikroskopisk. Men her venter kapittelets felle. Datamaskinen regner med endelig presisjon -- omtrent 16 gjeldende siffer i vanlig dobbeltpresisjon. Når blir bitteliten, er og nesten like tall, og i subtraksjonen utsletter de felles sifrene hverandre. Du sitter igjen med
-- en differanse der bare de usikre sifrene overlever, blåst opp av divisjonen med den lille -en. Dette kalles avrundingsfeil, og den vokser når krymper.
To krefter drar altså i hver sin retning: metodefeilen vil ha liten , avrundingsfeilen vil ha stor. Et sted imellom ligger en optimal steglengde. Tommelregelen, med maskinpresisjonen : bruk for framover- og bakoverdifferanse, og for sentraldifferansen. «Mindre er bedre» gjelder altså bare til et visst punkt -- numerikkens første leveregel.
Verktøyene: regneark og CAS
Teorien er på plass -- nå til verkstedet. I et regneark settes numerisk derivasjon opp på minutter. Legg -verdiene , og i kolonne A, funksjonsverdiene i kolonne B (for skriver du =A2^3 og kopierer nedover), og sentraldifferansen i kolonne C: =(B4-B2)/(A4-A2) -- differansen mellom verdiene over og under, delt på -avstanden . Vil du eksperimentere, lar du stå i en egen celle (f.eks. =A3-0.001) og ser tilnærmingen endre seg når du justerer den. Regnearkets styrke er nettopp måledata: har du en tabell fra en sensor, deriverer du hele serien med én formel kopiert nedover.
CAS-verktøy (Computer Algebra System) hever ambisjonen: de kan derivere symbolsk -- finne selve uttrykket for -- i tillegg til numerisk. I GeoGebra CAS gir Derivative[x^3 + sin(x)] svaret 3x^2 + cos(x), eksakt og gyldig for alle , mens NDerivative[x^3 + sin(x), 2] gir en numerisk verdi av . I Python gjør SymPy det samme: diff(f, x) for det symbolske uttrykket, etterfulgt av .subs(x, 2).evalf() for tallverdien i punktet.
Når velger du hva? Analytisk derivasjon (for hånd eller med CAS) når du har funksjonsuttrykket og trenger eksakte svar -- den gir full informasjon om overalt. Numerisk når du bare har tabelldata, når uttrykket er for innfløkt til at symbolsk derivasjon er praktisk, eller når du raskt trenger ett tall i ett punkt. Og i praksis kombineres de gjerne: CAS finner det analytiske uttrykket, som så evalueres numerisk akkurat der du trenger det. Verktøyene konkurrerer ikke -- de deler arbeidet.
Fortellingen i et nøtteskall
Treningsklokka, værstasjonen og brosensoren fikk svaret sitt: den deriverte kan tilnærmes uten formel, med differansekvotienter der grenseovergangen er byttet ut med en liten, endelig .
Tre formler sto til rådighet. Framoverdifferansen og bakoverdifferansen ser hver sin vei og har feil av orden . Sentraldifferansen spenner symmetrisk over punktet, lar skjevhetene kansellere og oppnår -- testen på i ga feil mot de ensidiges . Halverer du , kvarteres sentraldifferansens feil.
Men «mindre er bedre» har en grense: når og blir nesten like, utsletter subtraksjonen de gjeldende sifrene, og avrundingsfeilen vokser. Mellom metodefeil og avrundingsfeil ligger den optimale steglengden -- tommelregelen sier for ensidige og for sentral, med maskinpresisjon .
Verktøyene deler arbeidet: regnearket deriverer måleserier med én kopiert formel, og CAS behersker begge verdener -- Derivative gir det eksakte uttrykket, NDerivative (eller SymPys diff + evalf) tallverdien. Analytisk når du har uttrykk og trenger eksakthet; numerisk når du har tabeller eller hastverk.
Dermed er kapittel 3 fullført: grenseverdien ga den deriverte mening, og tallene ga den hender å arbeide med.
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.