[Excel] Niet lineaire 3de graads vgl oplossen met solver

Pagina: 1
Acties:
  • 388 views sinds 30-01-2008
  • Reageer

  • chrisstructor
  • Registratie: Juni 2001
  • Laatst online: 01-02-2020

chrisstructor

Employ your more evil being

Topicstarter
Ik heb een vergelijking van de vorm :
code:
1
(1 / C1) * X^3 + (1 / C1) * X^2 = A1

Hierin zijn C1 en A1 bekende waarden uit de respectievelijke cellen.
Deze vgl heb ik geplaatst in cel D1 als :
code:
1
= (1 / C1) * X^3 + (1 / C1) * X^2

In de oplosser heb ik nu opgegeven :

Cel bepalen : D1
Door verandering cel : E1 ( dit is dus de iteratieve X - waarde )
Restrictie : D1 = A1
Het aantal iteraties is verhoogd naar 10000 voor een meer nauwkeurige oplossing.

Vervolgens berekend de oplosser netjes de gevonden X waarde in cel E1 .
Nu wil ik echter dat er 2 dingen gebeuren :

Deze "oplosser functie" moet gekopieerd worden, zodat ik snel de waarden C1 kan aanpassen naar C2 , C3 etc.
Op deze manier krijg ik een geheel scala van oplossingen van de functie voor x bij varierende factor C1, C2 etc.

Ik wil dat deze oplosser automatisch de waarden voor X uitrekent na aanpassing van waarden binnen de sheet, zodat als iemand anders deze excel sheet gebruikt, hij niet apart de oplosser hoeft te draaien voor het verkrijgen van de X-waarden, berekend bij varierende C-cel.

Zijn deze mogelijkheden er voor de oplosser binnen excel?

[ Voor 5% gewijzigd door chrisstructor op 13-10-2006 19:43 ]

There are 10 types of people in this world, those who understand binary and those who don't


  • QuaQu
  • Registratie: Oktober 2002
  • Laatst online: 18-08-2021
Als dit de enige soort formule is die je wil oplossen, kan het ook analytisch! Veel mooier en kan eenvoudig geupdate worden. Mocht dit slechts een voorbeeld zijn, dan moet jenk ik met macro's dan wel VBA aan de slag, maar daar zit ik niet op..

Om terug te komen op de analytische oplossing: Ik heb de vergelijking omgeschreven naar:
x3 + x2 = p
p = C1 * A1
Als we dit oplossen en dan de complexe oplossingen weglaten, is dit de oplossing:

x = 1/6*(-8+108*p+12*(-12*p+81*p^2)^(1/2))^(1/3)+2/3/(-8+108*p+12*(-12*p+81*p^2)^(1/2))^(1/3)-1/3

Dit komt van Maple btw, gaat me net een beetje boven m'n pet. Maar een tussen-kolom dus aanmaken met daarin de waarde van A1 x C1 en dat dan gebruiken om x uit te rekenen. Heb het net even getest en het werkt.

"Ik heb een boel geld uitgegeven aan drank, vrouwen en snelle auto's. De rest heb ik over de balk gesmeten." - George Best


  • chrisstructor
  • Registratie: Juni 2001
  • Laatst online: 01-02-2020

chrisstructor

Employ your more evil being

Topicstarter
Het is natuurlijk mogelijk om de vgl analytisch op te lossen.
Inderdaad misschien beter om even maple te gebruiken, om vervolgens de gevonden vergelijking voor x in te voeren in excel.
Tx voor de tip ;) .

There are 10 types of people in this world, those who understand binary and those who don't


  • chrisstructor
  • Registratie: Juni 2001
  • Laatst online: 01-02-2020

chrisstructor

Employ your more evil being

Topicstarter
Ik zit hier op mijn werk en nu blijkt dat ze hier op het werk geen maple hebben.. ;( .
Ik wil echter wel verder met mijn berekeningen.

Zou iemand voor mij de volgende vergelijking in maple kunnen invoeren :
(De vgl is dus niet precies gelijk aan de eerder vermelde vgl ;) )
code:
1
( 1/2 * 1/A * 1/B ) * X^3 + ( 1/2 * 1/B ) * X^2 = C

Ik hoef alleen de reele oplossing voor X te weten, uitgeschreven zoals Quaqu hierboven heeft gedaan.

Ik weet niet of dit binnen het forum-policy ligt, maar ik zou hier wel super mee geholpen zijn voor de voortgang van mijn werk.

[ Voor 10% gewijzigd door chrisstructor op 16-10-2006 11:42 ]

There are 10 types of people in this world, those who understand binary and those who don't


  • QuaQu
  • Registratie: Oktober 2002
  • Laatst online: 18-08-2021
Ik zie dat de vergelijking echt anders is, aangezien nu de hulpvariabele p er niet bij kan, wordt het wat lelijker allemaal,maar hier is de reëele oplossing:

x3/(2*a*b) + x2/(2*b) = c

geeft:

x = 1/3*(27*c*a*b-a^3+3*(81*c^2*a^2*b^2-6*c*a^4*b)^(1/2))^(1/3) + 1/3*a^2/(27*c*a*b-a^3+3*(81*c^2*a^2*b^2-6*c*a^4*b)^(1/2))^(1/3)-1/3*a

Ik heb het even onder elkaar gezet, anders wordt het wel erg lelijk.

"Ik heb een boel geld uitgegeven aan drank, vrouwen en snelle auto's. De rest heb ik over de balk gesmeten." - George Best


  • chrisstructor
  • Registratie: Juni 2001
  • Laatst online: 01-02-2020

chrisstructor

Employ your more evil being

Topicstarter
Ik zal even controleren of de afleiding kloppend is.
(Uitgerekende ge-itereerde waarde vergelijken met de uitkomst uit deze oplossing voor de reele waarde van x , en invullen in de oorspronkelijke vgl natuurlijk)
In ieder geval SUPER bedankt! :>

[ Voor 49% gewijzigd door chrisstructor op 16-10-2006 15:50 ]

There are 10 types of people in this world, those who understand binary and those who don't

Pagina: 1