Vind de nulpunten van f (x) = ax − xa
Vind alle nulpunten van de functie f (x) = ax − xa (a > 0, x ≥ 0).
Dit is de probleemfunctie:
Eigenlijk ziet dit er heel simpel uit, maar in dit geval geldt zeker dat schijn bedriegt.
Om de nulpunten te vinden moet ik de functie gelijk aan nul stellen en oplossen voor x:
Op deze manier zie je vrij gemakkelijk dat x = a een oplossing is.
Door de vorige vergelijking anders op te schrijven is dat wellicht nog duidelijker:
Of nog anders:
Maar we willen niet
zien dat x = a een oplossing is, we willen een duidelijke wiskundige uitdrukking
in de vorm van:
Bovendien zijn er misschien nog meer oplossingen die we ook boven water moeten zien te krijgen.
Daarom ga ik de functie eerst eens nader onderzoeken.
Om te beginnen bekijk ik het punt x = 0:
Voor x = 0 is de functiewaarde dus altijd gelijk aan één.
En we hebben gezien dat er altijd een nulpunt is bij x = a:
En hoe gedraagt de functie zich voor grote waarden van x:
Ik bekijk dit eerst voor a < 1:
Voor a < 1 gaat de functiewaarde naar −∞ en is er dus alleen een nulpunt bij x = a.
Figuur 1
De grafiek van f (x) voor a = 0.001 (de rode lijn),
a = 0.01 (de lichtgroene lijn), a = 0.05 (de oranje lijn),
a = 0.1 (de paarse lijn), a = 0.2 (de donkerblauwe lijn),
a = 0.3 (de grijze lijn), a = 0.4 (de donkerbruine lijn),
a = 0.5 (de lichtbruine lijn), a = 0.6 (de donkergroene lijn),
a = 0.7 (de gele lijn), a = 0.8 (de lichtblauwe lijn)
en a = 0.9 (de violet lijn)
Vervolgens bekijk ik de situatie voor a = 1:
Ook voor a = 1 gaat de functiewaarde naar −∞ en is er dus alleen een nulpunt bij x = a,
oftewel bij x = 1.
Figuur 2
De grafiek van f (x) voor a = 1 (de rode lijn)
Tenslotte bekijk ik de situatie voor a > 1:
Dit moet ik anders aanpakken:
Waar het feitelijk op neerkomt is dat a
x altijd sneller groeit dan x
a (voor a > 1
en grote waarden van x), dus voor a > 1 komt de functie uiteindelijk weer boven de x-as uit.
Figuur 3
De grafiek van f (x) voor a = 1.5 (de rode lijn),
a = 1.7 (de lichtgroene lijn), a = 1.9 (de oranje lijn),
a = 2.1 (de paarse lijn), a = 2.3 (de donkerblauwe lijn),
a = 2.5 (de grijze lijn), a = 2.7 (de donkerbruine lijn),
a = 2.9 (de lichtbruine lijn), a = 3.1 (de donkergroene lijn),
a = 3.3 (de gele lijn), a = 3.5 (de lichtblauwe lijn)
en a = 3.7 (de violet lijn)
De logische volgende vraag is of de functie slechts twee nulpunten heeft voor a > 1, of dat de functie
meer dan eens onder de x-as duikt.
Of anders gesteld: is het minimum in bovenstaande figuur het enige minimum?
Dat ga ik uitzoeken door de functie te
differentiëren
en vervolgens de
afgeleide gelijk aan nul
te stellen.
Eerst bepaal ik de
afgeleide van de functie:
Figuur 4
De grafiek van f’ (x) voor a = 1.5 (de rode lijn),
a = 1.7 (de lichtgroene lijn), a = 1.9 (de oranje lijn),
a = 2.1 (de paarse lijn), a = 2.3 (de donkerblauwe lijn),
a = 2.5 (de grijze lijn), a = 2.7 (de donkerbruine lijn),
a = 2.9 (de lichtbruine lijn), a = 3.1 (de donkergroene lijn),
a = 3.3 (de gele lijn), a = 3.5 (de lichtblauwe lijn)
en a = 3.7 (de violet lijn)
Vervolgens stel ik de
afgeleide gelijk aan
nul om minima (of maxima) te vinden:
Indien ik dit zou kunnen oplossen dan zou ik ook wel mijn oorspronkelijke probleem, vergelijking (1), rechtstreeks
hebben kunnen oplossen.
Hiermee kom ik dus niet verder, maar het is wel interessant om naar het minimum te kijken bij x = a:
Indien a = e dan is er één minimum, een absoluut minimum, en dat is tevens een nulpunt (want ik had x = a gesteld).
Met andere woorden: de beide nulpunten vallen dan samen.
In onderstaande grafiek laat ik a oplopen van a = 1 tot a = e, het linker nulpunt ligt bij x = a en het rechter nulpunt
nadert vanaf rechts totdat ze voor a = e samenvallen.
Tegelijkertijd gaat het minimum van de grafiek langzaam omhoog totdat het voor a = e op de x-as ligt.
Figuur 5
De grafiek van f (x) voor a = 1 (de rode lijn),
in stapjes oplopend tot a = e (de violet lijn)
Ik zal even de minima en maxima duidelijk aangeven.
Figuur 6
De grafiek van f (x) voor a = 1 (de rode lijn),
in stapjes oplopend tot a = e (de violet lijn),
met de absolute minima (de gele punten)
en de lokale maxima (de lichtblauwe punten)
In onderstaande grafiek laat ik a aflopen van a = 2e tot a = e, het rechter nulpunt ligt bij x = a en het linker nulpunt
nadert vanaf links totdat ze voor a = e samenvallen.
Tegelijkertijd gaat het minimum van de grafiek langzaam omhoog totdat het voor a = e op de x-as ligt.
Figuur 7
De grafiek van f (x) voor a = 2e (de rode lijn),
in stapjes aflopend tot a = e (de violet lijn)
Ik zal weer even de minima en maxima duidelijk aangeven.
Figuur 8
De grafiek van f (x) voor a = 2e (de rode lijn),
in stapjes aflopend tot a = e (de violet lijn),
met de absolute minima (de gele punten)
en de lokale maxima (de lichtblauwe punten)
Voor a ≤ 1 is er dus één nulpunt en dat ene nulpunt ligt bij x = a.
Voor a > 1 zijn er twee nulpunten, het ene nulpunt ligt bij x = a en het tweede nulpunt ligt tussen x = 1 en x = e
indien a > e en het tweede nulpunt ligt voorbij x = e indien a < e.
Wanneer a = e dan vallen beide nulpunten samen en vormen een raakpunt bij x = e.
Ik kan natuurlijk de computer met brute kracht de nulpunten uit laten rekenen (zie
deze pagina) en dat levert onderstaande grafiek op.
Figuur 9
De grafiek van de nulpunten van f (x):
x = a (de rode lijn) en het andere nulpunt (de groene lijn)
Zowel x als y loopt van nul tot en met tien en in dit geval is het wel illustratief om de grafiek verticaal op te rekken
zodat het grafiekgebied vierkant wordt.
Figuur 10
De grafiek van de nulpunten van f (x):
x = a (de rode lijn) en het andere nulpunt (de groene lijn)
Wat hier aan de hand is wordt duidelijk(er) wanneer ik de grafiek 45 graden linksom draai.
Figuur 11
De grafiek van de nulpunten van f (x):
x = a (de rode lijn) en het andere nulpunt (de groene lijn)
De groene lijn is perfect symmetrisch ten opzichte van de rode lijn en is dus een
involute functie.
Hoe gaan we dat tweede nulpunt vinden, dat is de grote uitdaging.
Rechtstreeks vergelijking (2), het nulstellen van de functie, proberen op te lossen gaat echt niet lukken:
Een andere optie is om de functie te ontwikkelen in een Taylor-reeks, echter de term ax
is daar wel geschikt voor maar de term xa niet.
Dit probleem is op te lossen door de hele functie te verschuiven, bijvoorbeeld één naar links, want we weten
inmiddels dat er alleen een tweede nulpunt is voor a > 1.
De functie komt er dan zo uit te zien (hierin is s de toegepaste verschuiving):
Nu kan ik de gehele functie probleemloos omzetten in een Taylor-reeks, in de
tabel met Taylor-reeksen vinden we:
En in de
tabel met Taylor-reeksen vinden we ook:
Helaas, ook dit pad gaat niet naar een oplossing leiden.
In de eerste plaats
convergeert de Taylor-reeks van
(x + s)
a alleen voor x < s, dus dat gaat sowieso al niet werken.
En al zou de Taylor-reeks wel
convergeren dan zit ik
opgescheept met een polynoom met oneindig veel termen waarvan ik vervolgens de nulpunten moet zien te vinden.
Voor een tweedegraads functie lukt dat simpel (zie
deze pagina),
voor een derdegraads functie is het al een stuk ingewikkelder (zie
deze pagina), een vierdegraads functie daar wil ik niet eens
over nadenken en voor hogere orde polynomen is niet eens een oplossing mogelijk.
Kortom, ontwikkelen in een Taylor-reeks gaat niet werken.
We weten dat x = a een oplossing is, een nulpunt, en na een tijd(je) nadenken zou de gedachte op kunnen komen (bij mij
kwam die gedachte in ieder geval wel op): helpt het om het tweede nulpunt te schrijven als een functie van het eerste
nulpunt?
Dat ben ik dus gaan proberen, allereerst schreef ik x als de som van a (het bekende nulpunt) plus een onbekende
factor k (die zowel positief als negatief kan zijn):
Het op te lossen probleem wordt dan:
Het onoverkomelijke probleem is nu de rechterterm waarin (a + k) achter de
natuurlijke logaritme staat.
Dat laat zich niet splitsen en een uitweg zou kunnen zijn om weer aan een Taylor-reeks te denken, maar dat
stuit vervolgens weer op convergentieproblemen en een niet op te lossen polynoom met oneindig veel termen.
Volgende poging, ik schrijf x als het product van a (het bekende nulpunt) en een onbekende factor k:
Het op te lossen probleem wordt dan:
Nu heb ik a als een functie van k en volgens vergelijking (21) is het andere nulpunt dan:
Ik heb beide nulpunten geschreven als een functie van k, of anders gezegd: de functie die de beide nulpunten
weergeeft heb ik geparametriseerd met de parameter k.
Daar kan ik natuurlijk ook een plaatje van maken.
Figuur 12
De grafiek van de nulpunten van f (x):
x = a (de rode lijn) en het andere nulpunt (de groene lijn)
En dit levert (uiteraard) dezelfde grafiek op als figuur 10.
Dit is een mooie stap voorwaarts, maar ik heb nu beide nulpunten uitgedrukt als functie van een nieuwe variabele k
en mijn doel is om beide nulpunten uit te drukken als functie van a:
Ik heb geprobeerd om x uit te drukken als de som van a (het bekende nulpunt) plus een onbekende factor k
(die zowel positief als negatief kan zijn), maar dat leverde niets op.
Vervolgens schreef ik x als het product van a (het bekende nulpunt) en een onbekende factor k, en dat bracht mij
de geparametriseerde functie volgens figuur 12.
Ik zou ook nog kunnen proberen om x als een
macht van a te schrijven, maar dat
gaat mij niet verder helpen omdat ak gelijk is aan a
k:
Kan ik een manier vinden om k als functie van a te schrijven?
Ik weet immers dat x = a een nulpunt is en wanneer ik k kan uitrekenen als functie van a en vervolgens
vergelijking (24) ter hand neem dan vind ik het andere nulpunt.
De uitweg daarvoor is om k = a te stellen, daarna x uit te rekenen volgens vergelijking (24), een correctie aan
te brengen op de waarde van k, daarna weer x uit te rekenen, enzovoort.
Een iteratief proces dus.
Hoe ziet dit er in de praktijk uit?
Ik laat dat zien voor de willekeurige waarde a = 5.555.
n | k | n1 | n2 |
0 | 5.55500000000000000000 | 1.00000000000000000000 | 5.55500000000000000000 |
1 | 5.55500000000000000000 | 1.45709266131273760824 | 8.09414973359225741375 |
2 | 3.01585026640774258625 | 1.72910008254991540287 | 5.21470694460381206558 |
3 | 3.35614332180393052067 | 1.67177753803412064194 | 5.61072501981503044915 |
4 | 3.30041830198890007152 | 1.68044297286418441348 | 5.54616474308959080175 |
5 | 3.30925355889930926978 | 1.67905177158883932379 | 5.55640805070655666795 |
6 | 3.30784550819275260182 | 1.67927304118147557788 | 5.55477578630132725095 |
7 | 3.30806972189142535087 | 1.67923779568360247956 | 5.55503570775662500006 |
8 | 3.30803401413480035082 | 1.67924340851612353001 | 5.55499431338299650528 |
9 | 3.30803970075180384554 | 1.67924251464069605551 | 5.55500090562171476734 |
10 | 3.30803879513008907819 | 1.67924265699456961670 | 5.55499985577536552568 |
11 | 3.30803893935472355251 | 1.67924263432402269384 | 5.55500002296847192713 |
12 | 3.30803891638625162538 | 1.67924263793441703119 | 5.55499999634215959326 |
13 | 3.30803892004409203212 | 1.67924263735944424232 | 5.55500000058252880349 |
14 | 3.30803891946156322864 | 1.67924263745101144406 | 5.55499999990722946629 |
15 | 3.30803891955433376235 | 1.67924263743642892364 | 5.55500000001477415687 |
16 | 3.30803891953955960548 | 1.67924263743875126065 | 5.55499999999764714395 |
17 | 3.30803891954191246153 | 1.67924263743838141723 | 5.55500000000037470372 |
18 | 3.30803891954153775780 | 1.67924263743844031659 | 5.55499999999994032662 |
19 | 3.30803891954159743119 | 1.67924263743843093658 | 5.55500000000000950328 |
20 | 3.30803891954158792791 | 1.67924263743843243039 | 5.55499999999999848656 |
21 | 3.30803891954158944135 | 1.67924263743843219250 | 5.55500000000000024102 |
22 | 3.30803891954158920033 | 1.67924263743843223038 | 5.55499999999999996162 |
23 | 3.30803891954158923871 | 1.67924263743843222435 | 5.55500000000000000611 |
24 | 3.30803891954158923260 | 1.67924263743843222531 | 5.55499999999999999903 |
25 | 3.30803891954158923357 | 1.67924263743843222516 | 5.55500000000000000016 |
26 | 3.30803891954158923342 | 1.67924263743843222518 | 5.55499999999999999998 |
27 | 3.30803891954158923344 | 1.67924263743843222518 | 5.55500000000000000000 |
Bij n = 0 staan de beginwaarden: k = a en n
2 = a, en n
1 = n
2/k = 1.
Bij de 27
e iteratiestap zijn beide nulpunten bepaald tot op twintig cijfers achter de komma.
Merk op dat:
- 1.67924263743843222518 × 3.30803891954158923344 = 5.55500000000000000000
- 1.679242637438432225183.30803891954158923344 = 5.55500000000000000000
Dit is precies zoals de vergelijkingen (23) en (24) voorspellen.
Bij iedere iteratiestap heb ik eerst de nieuwe waarde van k uitgerekend:
En vervolgens de nieuwe waarden van n
1 en n
2 volgens de vergelijkingen (24) en (22):
Een dergelijk iteratief proces kun je wellicht beschouwen als valsspelen, maar ik kan uiteindelijk wél beide
nulpunten uitdrukken als functie van a.
Let op, ik ga de vergelijkingen (25) en (26) uitschrijven met alleen maar a’tjes:
Je ziet al wat er gebeurt: dit wordt een kolossale puinhoop.
Aangezien er per iteratiestap het antwoord amper één decimaal nauwkeuriger wordt is dit geen oplossing om heel blij
van te worden.
Voor een antwoord dat tot op twintig cijfers achter de komma nauwkeurig is moet ik doorgaan tot en met n = 27
(voor deze waarde van van a).
Stel dat ik dat helemaal uit zou schrijven zoals de vergelijkingen hierboven dan heb ik uiteindelijk een vergelijking
die weliswaar correct is, maar vele schermen vult en totaal onleesbaar is.
Het goede nieuws is (er is altijd goed nieuws) dat het iteratieproces ruimte biedt voor verbetering en dan denken we
natuurlijk aan de methode Newton-Raphson:
Dit is de functie f (x):
En de
afgeleide had ik reeds bepaald:
Dan ziet het iteratieproces er zo uit, wederom voor de willekeurige waarde a = 5.555.
n | n1 |
0 | 1.85914091422952261768 |
1 | 1.72281371626025950975 |
2 | 1.68251614136310553392 |
3 | 1.67926277649427878168 |
4 | 1.67924263820623786781 |
5 | 1.67924263743843222629 |
6 | 1.67924263743843222518 |
Omdat a > e weet ik dat het gezochte nulpunt (niet het nulpunt x = a, maar die andere) tussen één en e ligt.
Daarom heb ik als startwaarde n
1 = (1 + e)/2 = 1.85914091422952261768 gekozen.
Het resultaat is dat ik nu al bij de 6
e iteratiestap het nulpunt n
1 bepaald heb tot op twintig
cijfers achter de komma.
Nu hebben we de smaak te pakken, want terwijl de iteratiemethode Newton-Raphson alleen met de
eerste afgeleide werkt daar betrekt de
iteratiemethode van Halley ook nog de
tweede afgeleide erbij:
De
tweede afgeleide is:
Dan wordt dit het iteratieproces, nogmaals voor de willekeurige waarde a = 5.555.
n | n1 |
0 | 1.85914091422952261768 |
1 | 1.60431836393232607517 |
2 | 1.66884637395687875155 |
3 | 1.67903715871671657358 |
4 | 1.67924255669416958462 |
5 | 1.67924263743841975550 |
6 | 1.67924263743843222518 |
Zoals je ziet maakt deze verfijning het aantal iteratieslagen niet minder (in dit geval).
Daarom val ik terug op de methode Newton-Raphson en ik ga het nulpunt, vergelijking (32), uitschrijven met
alleen maar a’tjes:
Ook ditmaal ontstaat er logischerwijs weer een kolossale puinhoop.
Het helpt om de functieaanduidingen f (x) en f’ (x) te laten staan in plaats van die uit te drukken in a’s en x-en:
Ik zal de laatste zijn om te ontkennen dat dit een onbruikbare puinzooi is, maar dat neemt niet weg dat het een oplossing
is van het probleem.
Het ene nulpunt van f (x) = a
x − x
a is x = a (exact) en het andere nulpunt is volgens
vergelijking (36f) (tot op meer dan tien decimalen nauwkeurig).