2016-12-04 9 views
0

二分アルゴリズムの線で何かを使って関数のすべての根を見つける方法はありますか?複数の根を見つける二等分アルゴリズム

ある範囲で中点の両側をチェックすることを考えましたが、新しく生成された範囲に根があるかどうかを知るためにはどれだけ深く進まなければならないかはまだ分かりません。また、関数を適用する際の対応する値が反対の符号であることがわかっていても、与えられた範囲にいくつの根があるかをどのように知ることができますか?

ありがとうございました。

+0

https://en.wikipedia.org/wiki/Root-finding_algorithm#Bisection_method –

+0

はい。あなたは何を試しましたか、どの言語を使用していますか? –

+0

CまたはPython。私はまだ何もコード化していないが、私の思考が正しい方向にあるかどうかを知りたい。 – kd394

答えて

0

二分法アルゴリズムを使用して、関数が単調である範囲の根を見つけることができます。このようなセグメントは、微分関数を調べることで見つけることができますが、一般的なケースでは、任意の範囲の関数の単調性については仮定することはできません。

たとえば、関数f(x) = sin(1/x)は、-11の間に無限数のルートを持ちます。これらのルーツを列挙するには、まず単調な範囲を決定し、x0に近づくにつれて、これらの範囲が消えて小さくなる必要があります。

関連する問題