非線形方程式の解決は、科学的計算の共通のタスクです。SciPyライブラリは、ソリューションを効率的に見つけるのに役立ついくつかの根本的な機能を提供します。この記事では、SciPyの根本関数を使用して非線形方程式の解決のための実用的な方法を紹介します。

scipy.optimize.root を使う

は、非線形の式を解決するための汎用ツールです。 複数のアルゴリズムをサポートし、ユーザーは問題の最も適した方法を選択できるようにします。

を使うには、式を表す関数を定義し、初期の推測を指定します。この関数は、式に満足するソリューションを反復的に検索します。

一般的な方法とアプリケーション

いくつかの人気のある方法は次のとおりです。

  • []hybr]: デフォルトメソッドは、ほとんどの問題に適しています。
  • lm:Levenberg-Marquardtアルゴリズム、少なくとも正方形の問題に有効。
  • krylov]:Krylovサブスペースメソッドを使用して、大きなシステムに適しています。

適切な方法を選択すると、システムの存在やサイズなどの問題の特徴に依存します。

実用事例

式 [f(x) = x^3 - x - 2 = 0]を解決することを検討してください。 溶液を見つけるために[x = 1.5]の初期の推測をで使用することができます。

事例コード:

[[]]

[]]

[]

[]

結果の解決:

[]