Wolfram Computation Meets Knowledge

Wann verwende ich FindRoot anstatt NSolve?

Wie Solve ist NSolve in erster Linie für das Lösen von Polynomgleichungen gedacht.

In[1]:= NSolve[4 - r^2 == r, r]
Out[1]= {{r -> -2.56155}, {r -> 1.56155}}

Die in NSolve verfügbaren algebraischen Methoden können keine allgemeinen Gleichungen mit transzendenten Funktionen behandeln – zum Beispiel:

In[2]:= NSolve[4 Cos[r] == r, r]
  NSolve::nsmet: This system cannot be solved with the methods available to NSolve.
Out[2]= NSolve[4 Cos[r] == r, r] 

FindRoot verwendet numerische Methoden, um bei einem Anfangswert für die unabhängige Variable zu beginnen und eine Lösung zu finden:

In[3]:= fr = FindRoot[ 4 Cos[r] == r, {r, 1}]
Out[3]= {r -> 1.25235}  

Überprüfen Sie, ob der zurückgegebene Wert die Gleichung löst:

In[4]:= (4 Cos[r] - r) /. fr // Chop
Out[4]= 0

FindRoot findet eine Lösung pro Auswertung. Um weitere Lösungen mit FindRoot zu erhalten, müssen die Anfangswerte nahe genug an den anderen Nullstellen gewählt werden:

In[5]:= Plot[ 4 Cos[r] - r, {r, -2 Pi, 2 Pi}]

4Cos[r] - r , 3 roots

In[6]:= FindRoot[ 4 Cos[r] == r, {r, -4}]
Out[6]= {r -> -3.5953}

In[7]:= FindRoot[ 4 Cos[r] == r, {r, -2}]
Out[7]= {r -> -2.13333}

Beachten Sie dazu auch das Tutorial zum numerischen Lösen von Gleichungen.

[English]

Ist dieser Artikel hilfreich?
Ja
Nein

Kommentare?

Danke für Ihr Feedback.

Senden

Support kontaktieren

Egal, ob Sie eine Frage zur Rechnung, Aktivierung oder zu einer technischen Angelegenheit haben, wir sind da, um Ihnen zu helfen.

1-800-WOLFRAM (+1-217-398-0700 für internationale Anrufer)

Kundendienst

Montag–Freitag
8:00–17:00 US Central Time

  • Produktregistrierung oder Aktivierung
  • Kaufinformationen und Bestellung
  • Hilfe beim Installieren und Starten

Erweiterter technischer Support (für berechtigte Kunden)

Montag–Donnerstag
8:00–19:00 US Central Time

Freitag
8:30–10:00 & 11:00–17:00 US Central Time

  • Technischer Priority-Support
  • Produktassistenz von Wolfram-Experten
  • Hilfe beim Programmieren mit der Wolfram Language
  • Erweiterter Support beim Installieren