Hoe bereken je X?

Moderators: dirkwb, Xilvo

Forumregels
(Middelbare) school-achtige vragen naar het forum "Huiswerk en Practica" a.u.b.
Zie eerst de Huiswerkbijsluiter
Reageer
Berichten: 416

Hoe bereken je X?

Stel X^X=10, hoe bereken je dan X?

Is dat te berekenen via een reeksontwikkeling, zoals logarithmen? OF is daar een totaal andere methode voor? Zo ja welke en hoe ziet die eruit?

Berichten: 718

Re: Hoe bereken je X?

bats schreef:Stel X^X=10, hoe bereken je dan X?

Is dat te berekenen via een reeksontwikkeling, zoals logarithmen? OF is daar een totaal andere methode voor? Zo ja welke en hoe ziet die eruit?
Een dergelijke vergelijking bereken je door iteratie. Je probeert dan een functie f(x) te vinden zodanig dat de oplossing van x=f(x) ook de oplossing is van de vergelijking g(x)=x^x-10=0. Daarmee maak je dan een reeks {x(n)} door te beginnen met een min of meer willekeurig gekozen getal x(1) en door x(n) uit te rekenen uit x(n-1) door x(n)=f(x(n-1)). De bedoeling is uiteraard dat de functie f zodanig gekozen is dat deze reeks convergeert. Er zijn een heleboel iteratiemethoden. Een van de bekendste is Newton-Rapson: x(n)=x(n-1)-g(x(n-1))/g'(x(n-1)) (covergeert vaak heel snel).

Soms wordt er met meer reeksen gewerkt bijvoorbeeld bij bisectie. Daar construeer je 2 reeksen a(n) en b(n) waarbij a(n) kleiner is dan de gezochte oplossing en b(n) groter dan de gezochte oplossing.

Het werkt als volgt in het bovenstaande geval. Als je begint met a(1)=2 en b(1)=3 dan is g(a(1))<0 en g(b(1))>0. Reken nu de functiewaarde uit voor x=(a(1)+b(1))/2. Als g(x)<0 dan kies je a(2)=x en b(2)=(1) en als g(x)> 0 dan kies je a(2)=a(1) en b(2)=x enz. Op deze manier sluit je de wortel in tussen 2 grenzen die steeds dichter bij elkaar komen te liggen.

Bisectie is niet snel maar werkt (in tegenstelling tot veel van de snellere methoden) wel altijd. In computer algoritmes wordt daarom vaak een combinatie gebruikt: als bekend is dat een wortel tussen 2 waardes ligt dan wordt de volgende waarde berekend met een snelle methode. Als die snelle waarde echter buiten de 2 bekende waardes ligt dan wordt een bisectie uitgevoerd. Dit proces wordt in iedere stap herhaald.

Berichten: 416

Re: Hoe bereken je X?

Bert schreef:
bats schreef:Stel X^X=10, hoe bereken je dan X?

Is dat te berekenen via een reeksontwikkeling, zoals logarithmen? OF is daar een totaal andere methode voor? Zo ja welke en hoe ziet die eruit?
Een dergelijke vergelijking bereken je door iteratie. Je probeert dan een functie f(x) te vinden zodanig dat de oplossing van x=f(x) ook de oplossing is van de vergelijking g(x)=x^x-10=0. Daarmee maak je dan een reeks {x(n)} door te beginnen met een min of meer willekeurig gekozen getal x(1) en door x(n) uit te rekenen uit x(n-1) door x(n)=f(x(n-1)). De bedoeling is uiteraard dat de functie f zodanig gekozen is dat deze reeks convergeert. Er zijn een heleboel iteratiemethoden. Een van de bekendste is Newton-Rapson: x(n)=x(n-1)-g(x(n-1))/g'(x(n-1)) (covergeert vaak heel snel).

Soms wordt er met meer reeksen gewerkt bijvoorbeeld bij bisectie. Daar construeer je 2 reeksen a(n) en b(n) waarbij a(n) kleiner is dan de gezochte oplossing en b(n) groter dan de gezochte oplossing.

Het werkt als volgt in het bovenstaande geval. Als je begint met a(1)=2 en b(1)=3 dan is g(a(1))<0 en g(b(1))>0. Reken nu de functiewaarde uit voor x=(a(1)+b(1))/2. Als g(x)<0 dan kies je a(2)=x en b(2)=(1) en als g(x)> 0 dan kies je a(2)=a(1) en b(2)=x enz. Op deze manier sluit je de wortel in tussen 2 grenzen die steeds dichter bij elkaar komen te liggen.

Bisectie is niet snel maar werkt (in tegenstelling tot veel van de snellere methoden) wel altijd. In computer algoritmes wordt daarom vaak een combinatie gebruikt: als bekend is dat een wortel tussen 2 waardes ligt dan wordt de volgende waarde berekend met een snelle methode. Als die snelle waarde echter buiten de 2 bekende waardes ligt dan wordt een bisectie uitgevoerd. Dit proces wordt in iedere stap herhaald.
Maar hoe reken je zo snel uit dat a(1)=2 en b(1)=3? En hoe kom je zo snel aan x(n)=x(n-1)-g(x(n-1))/g'(x(n-1))? Of zijn dat afgeleiden, en krijg je dan ook in x(n) bij de g(x(n-1)) dan naast g' ook g'' en g'''? Want zo worden toch die reeksen opgesteld?

En.. X in dit geval van X^X=10, de uitkomst is dat een algebraïs getal of een transcedent getal?

Berichten: 718

Re: Hoe bereken je X?

Maar hoe reken je zo snel uit dat a(1)=2 en b(1)=3?
De eerste 2 waardes vindt je gewoon door te proberen. Het had ook 1 en 5 kunnen zijn zolang ze, wanneer ze worden ingevuld in g(x) maar uitkomsten met een tegengesteld teken geven.
En hoe kom je zo snel aan x(n)=x(n-1)-g(x(n-1))/g'(x(n-1))? Of zijn dat afgeleiden, en krijg je dan ook in x(n) bij de g(x(n-1)) dan naast g' ook g'' en g'''? Want zo worden toch die reeksen opgesteld?
Alleen de afgeleide van g(x) komt voor. Je vindt als achtereenvolgende benaderingen:

x(2)=x(1)-g(x(1))/g'(x(1))

x(3)=x(2)-g(x(2))/g'(x(2))

x(4)=x(3)-g(x(3))/g'(x(3))

... etc

Je vraagt je misschien af waarom de iteratieformule deze form heeft en waarom niet iets anders van de vorm x(n)=f(x(n-1)). De reden is dat de formule van Newton Rapson vaak snel convergeert (maar iedere andere formule van de vorm x(n)=f(x(n-1)) die convergeert mag natuurlijk ook).
En.. X in dit geval van X^X=10, de uitkomst is dat een algebraïs getal of een transcedent getal?
Dat zal ongetwijfeld een trancendent getal zijn want anders zou het getal een nulpunt van een rationeel polynoom zijn en dat lijkt me erg onwaarschijnlijk (een bewijs heb ik overigens niet voor je).

Berichten: 718

Re: Hoe bereken je X?

Ik heb je functie x^x inmiddels uitgerekend met een spreadsheet. De formule is:

x(n+1)=x(n)-(x^x-10)/((x^x)*(ln(x)+1)) en als je begint met x(1)=3 dan vindt je achtereenvolgens:

x(1)=3

x(2)=2.699978108

x(3)=2.541664405

x(4)=2.507493579

x(5)=2.506185967

x(6)=2.506184146

x(7)=2.506184146

Zoals je ziet: als deze methode werkt dan gaat het ook snel.

Re: Hoe bereken je X?

transcedent ben ik bang......

Volgens Derive 6 is x^x=10 <==> x~2.50618413......

Gebruikersavatar
Berichten: 255

Re: Hoe bereken je X?

dit vind ik met de bisectie methode:

2,5

2,75

2,625

2,5625

2,53125

2,515625

2,5078125

2,50390625

2,505859375

2,506835938

2,506347656

2,506103516

2,506225586

2,506164551

2,506195068

2,50617981

2,506187439

2,506183624

2,506185532

2,506184578

2,506184101

2,50618434

2,50618422

2,506184161

2,506184131

2,506184146

2,506184138

2,506184142

2,506184144

2,506184145

2,506184145

2,506184146

2,506184146

2,506184146

Berichten: 416

Re: Hoe bereken je X?

Bert schreef:Ik heb je functie x^x inmiddels uitgerekend met een spreadsheet. De formule is:

x(n+1)=x(n)-(x^x-10)/((x^x)*(ln(x)+1)) en als je begint met  x(1)=3 dan vindt je achtereenvolgens:

x(1)=3

x(2)=2.699978108

x(3)=2.541664405

x(4)=2.507493579

x(5)=2.506185967

x(6)=2.506184146

x(7)=2.506184146

Zoals je ziet: als deze methode werkt dan gaat het ook snel.
Ja maar bij x(1)=3 heb je dan nu voor n 1 ingevuld of voor x, ik bedoel is in de bovenstaande formule nu n=1 of x=1?

Berichten: 718

Re: Hoe bereken je X?

bats schreef:
Bert schreef:Ik heb je functie x^x inmiddels uitgerekend met een spreadsheet. De formule is:

x(n+1)=x(n)-(x^x-10)/((x^x)*(ln(x)+1)) en als je begint met  x(1)=3 dan vindt je achtereenvolgens:

x(1)=3

x(2)=2.699978108

x(3)=2.541664405

x(4)=2.507493579

x(5)=2.506185967

x(6)=2.506184146

x(7)=2.506184146

Zoals je ziet: als deze methode werkt dan gaat het ook snel.
Ja maar bij x(1)=3 heb je dan nu voor n 1 ingevuld of voor x, ik bedoel is in de bovenstaande formule nu n=1 of x=1?
De eerste waarde is voor n=1 (normaal gebruik je daarvoor een subscript maar dat gaat hier niet (of ik heb nog niet ondekt hoe dat moet)).

Reageer