Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Challenge: Solving Nonlinear Equations | Optimering och Rotfinnande
Introduktion till SciPy
Avsnitt 3. Kapitel 5
single

single

Challenge: Solving Nonlinear Equations

Svep för att visa menyn

Inom många vetenskapliga och tekniska tillämpningar stöter du ofta på icke-linjära ekvationer som inte kan lösas analytiskt och kräver numeriska metoder. Modulen scipy.optimize erbjuder kraftfulla algoritmer för att hitta rötterna till sådana ekvationer, vilket möjliggör modellering och analys av verkliga system. I denna utmaning kommer du att tillämpa dina kunskaper om rotlösning genom att lösa en icke-linjär ekvation som representerar en fysisk process med hjälp av scipy.optimize.root.

Uppgift

Svep för att börja koda

Lös den icke-linjära ekvationen x^3 - 2x^2 + x - 1 = 0 för att modellera en fysisk process. Använd den tillhandahållna funktionen physical_process_equation för ekvationen.

  • Använd scipy.optimize.root för att numeriskt hitta en rot till ekvationen, med startvärdet 2.0 som initial gissning.
  • Returnera rotvärdet som ett flyttal från funktionen solve_nonlinear_equation.

Kom ihåg att extrahera roten från resultatobjektet med .x[0] och konvertera det till ett flyttal innan du returnerar. Kontrollera att din funktion returnerar ett flyttal, inte en array.

Lösning

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 3. Kapitel 5
single

single

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

some-alt