开发者

How do I find the minimum/maximum values to use with Root Solvers?

开发者 https://www.devze.com 2023-04-09 21:07 出处:网络
I want to use the root solvers (ex: BrentSolver) in Commons Math to find roots for polynomial functions, but they all seem to require using an initial estimate for 开发者_JS百科minimum/maximum, where

I want to use the root solvers (ex: BrentSolver) in Commons Math to find roots for polynomial functions, but they all seem to require using an initial estimate for 开发者_JS百科minimum/maximum, where the function has different signals.

So how do I go about doing this? I know I can compute f(x) for points inside whatever interval I have in mind, but if my Interval is too big, do I still do that? How big should the step be between every attempt? Isn't there a better way to do this?


You might try the Durand-Kerner-Weierstrass method as an estimate or check. A Java implementation is shown here.


I think what they want is a starting interval to search in. The min and max values define the region where you think the roots are.

I don't know what you mean by "interval too big". It won't be +/- infinity; you must have some region of interest to start with.

Run it once; see what you get. Try a few other intervals to see if you can find a true global min/max.

It's not possible to use numerical methods as a complete black box. You have to know something about your function and how the methods work. Use them as an iterative tool to learn something about your function of interest.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号