Hur polynomlösaren fungerar
Denna polynomlösare hittar alla reella, komplexa och upprepade rötter till ett polynom av grad 1 till 20. Verktyget beräknar rötterna numeriskt, utför residual- och konvergenskontroller samt visar resultaten tillsammans med en visuell graf i det komplexa talplanet och detaljerade steg för algoritmens körning.
Du kan mata in ditt polynom på två olika sätt:
- Utvecklat uttryck: En utvecklad ekvation eller ett uttryck med en variabel där termer kan förekomma på båda sidor om ett likhetstecken.
- Koefficientlista: En lista med dimensionslösa reella tal separerade med kommatecken, mellanslag eller nyrad, ordnade från den högsta potensen till konstanten.
För att snabbt komma igång kan du använda knapparna under "Prova ett polynom" för att ladda förinställda exempel:
- Fem rötter
- Fyra komplexa rötter
- Multipelrot
Inmatningsregler och begränsningar
För att beräkningen ska kunna genomföras måste polynomet uppfylla följande matematiska och tekniska villkor:
- Gradtal: Polynomet måste ha en grad från 1 till 20.
- Koefficienter: Koefficienterna måste vara dimensionslösa reella tal med ett absolutbelopp som är mindre än eller lika med 1e100 (|koefficient| ≤ 1e100). Bråk är tillåtna som koefficienter.
- Teckenbegränsning: Inmatningen i textfältet måste vara under 600 tecken.
- Precision: Inställningen för visade decimaler måste ligga mellan 4 och 12. En högre decimalinställning stramar åt det matematiska avbrottstestet, men kan inte återställa precision som gått förlorad i de ursprungliga koefficienterna.
Om inmatningen bryter mot reglerna visar verktyget något av följande felmeddelanden:
- Om fältet är tomt: Ange ett polynomuttryck eller en koefficientlista.
- Om teckengränsen överskrids: Håll inmatningen under 600 tecken.
- Om uttrycket inte är ett utvecklat polynom med en variabel: Det där är inte ett utvecklat polynom med en variabel. Prova x^5 - x = 0 eller ange dess koefficienter.
- Om uttrycket innehåller parenteser: Utveckla parenteserna först så att varje potens har en explicit koefficient.
- Om flera variabler används: Använd endast en variabel.
- Om potenserna är negativa, i bråkform eller överstiger 20: Använd heltalspotenser från 0 till och med 20.
- Om en koefficient är ogiltig: Varje koefficient måste vara ett reellt tal, som −2.5, 3/4 eller 1e-6.
- Om ett bråk har noll i nämnaren: Ett bråk kan inte ha 0 i nämnaren.
- Om en koefficient eller ett mellanliggande skalningsvärde är för stort: En koefficient eller ett mellanliggande skalningsvärde ligger utanför det ändliga intervall som stöds. Skala om polynomet och försök igen.
- Om decimalprecisionen ligger utanför gränserna: Välj mellan 4 och 12 decimaler.
Beräkningsmetod och algoritmer
Beroende på polynomets grad använder lösaren olika matematiska metoder för att hitta rötterna:
Direkt linjär lösning
För en ekvation av grad 1 används en direkt linjär lösning.
Ehrlich–Aberth-iteration
För polynom av grad 2 till 20 använder verktyget Ehrlich–Aberth-iteration. Metoden startar från deterministiska uppsättningar av komplexa gissningar och uppdaterar alla rotgissningar samtidigt. Under denna process används Horners metod för att effektivt utvärdera polynomet och dess derivata.
Rötter grupperas som upprepade rötter (multipelrötter) endast när deras numeriska värden sammanfaller mycket nära.
Steg-för-steg-redovisning
Under panelen "Algoritm och substitution" visas beräkningens olika faser:
- Samla termerna i standardform: Visar det insamlade polynomet.
- Dividera varje koefficient med den ledande koefficienten.
- Skala sökningen efter rötter: Sökningen skalas med en faktor R så att de initiala gissningarna ligger kvar i ett stabilt intervall.
- Uppdatera alla rotgissningar tillsammans: Iterationen fortsätter tills korrektionen ligger under toleransgränsen.
- Sätt in varje rot i polynomet igen: Varje rot verifieras genom att beräkna dess normaliserade residual.
Tolkning av resultat och diagnostik
När beräkningen är klar visas resultatet under "Rotmängd". Du kan se polynomets standardform, det totala antalet rötter samt en lista över varje enskild rot. Om en rot är upprepad visas dess multiplicitet. För varje rot visas även en normaliserad residual, vilket är ett skalningsoberoende mått på hur väl roten löser ekvationen. Du kan använda knappen "Kopiera rötter" för att kopiera resultaten.
Under "Numerisk kontroll" visas följande diagnostiska värden:
- Effektiv grad
- Metod (antingen "Direkt linjär lösning" eller "Ehrlich–Aberth-iteration")
- Visningsprecision
- Iterationer
- Testade startmängder
- Största normaliserade residual
Särskilda fall och statusmeddelanden
- Om inmatningen är en konstant som inte är noll visas: En konstant som inte är noll är aldrig lika med 0, så detta polynom saknar rötter.
- Om inmatningen är ett nollpolynom visas: Varje komplext tal är en rot till nollpolynomet.
- Om rötterna är känsliga för små förändringar visas en känslighetsvarning: Rötter hittades, men multipelrötter eller mycket tätt liggande rötter gör att vissa visade siffror är känsliga för små förändringar i koefficienterna.
Integritet och databehandling
Ditt polynom och alla beräkningar stannar i den här webbläsaren och laddas aldrig upp. All bearbetning sker lokalt på din enhet.
Vanliga frågor
Är dessa exakta rötter?
Nej. Med undantag för en linjär ekvation är de visade rötterna numeriska approximationer. Grader över 4 saknar allmän formel i rotuttryck, och även formler för lägre grader kan förlora noggrannhet vid svåra koefficienter. Använd residualen och känslighetsvarningen för att bedöma approximationen; använd andragradsekvationskalkylatorn när du behöver exakta bråk eller rottecken för en ekvation av grad 2.
Vad kan jag skriva in?
Använd reella, dimensionslösa koefficienter och en variabel med heltalspotenser upp till 20. Uttrycket måste redan vara utvecklat, men termer kan vara i oordning eller förekomma på båda sidor om ett likhetstecken. Koefficientlistan löper från den högsta potensen till konstanten och måste innehålla nollor för saknade potenser.
Hur hittas rötter av högre grad?
Lösaren startar från flera deterministiska uppsättningar av komplexa gissningar och förbättrar alla gissningar samtidigt med Ehrlich–Aberth-uppdateringen. Horners metod utvärderar polynomet och dess derivata effektivt, och varje returnerad rot sätts tillbaka i det ursprungliga polynomet for en skalningsoberoende residualkontroll.
Varför är multipelrötter mindre stabila?
Vid en multipelrot är både polynomet och dess derivata noll. Det försvagar korrektionssteget, så minimala förändringar i koefficienterna kan dela upp en multipelrot i flera närliggande rötter. Lösaren grupperar rötter endast när deras numeriska värden sammanfaller mycket nära och håller multipliciteten synlig.