Brent Solver

BrentSolver

mitsuba\src\libcore\brent.cpp

http://mathworld.wolfram.com/BrentsMethod.html

Applied Mathematics > Numerical Methods > Root-Finding >

 

Brent's Method

DOWNLOAD Mathematica Notebook

Brent's method is a root-finding algorithm which combines root bracketing, bisection, and inverse quadratic interpolation. It is sometimes known as the van Wijngaarden-Deker-Brent method. Brent's method is implemented in the Wolfram Language as the undocumented option Method -> Brent in FindRoot[eqn, {​x, x0, x1}].

Brent's method uses a Lagrange interpolating polynomial of degree 2. Brent (1973) claims that this method will always converge as long as the values of the function are computable within a given region containing a root. Given three points x_1, x_2, and x_3, Brent's method fits x as a quadratic function of y, then uses the interpolation formula

x=([y-f(x_1)][y-f(x_2)]x_3)/([f(x_3)-f(x_1)][f(x_3)-f(x_2)])+([y-f(x_2)][y-f(x_3)]x_1)/([f(x_1)-f(x_2)][f(x_1)-f(x_3)])+([y-f(x_3)][y-f(x_1)]x_2)/([f(x_2)-f(x_3)][f(x_2)-f(x_1)]).

(1)

Subsequent root estimates are obtained by setting y=0, giving

x=x_2+P/Q,

(2)

where

P=S[T(R-T)(x_3-x_2)-(1-R)(x_2-x_1)]

(3)

Q=(T-1)(R-1)(S-1)

(4)

with

R=(f(x_2))/(f(x_3))

(5)

S=(f(x_2))/(f(x_1))

(6)

T=(f(x_1))/(f(x_3))

(7)

(Press et al. 1992).

SEE ALSO: Bisection, Brent's Factorization Method, Root Bracketing, Root-Finding Algorithm REFERENCES:

Brent, R. P. Ch. 3-4 in Algorithms for Minimization Without Derivatives. Englewood Cliffs, NJ: Prentice-Hall, 1973.

Forsythe, G. E.; Malcolm, M. A.; and Moler, C. B. §7.2 in Computer Methods for Mathematical Computations. Englewood Cliffs, NJ: Prentice-Hall, 1977.

Press, W. H.; Flannery, B. P.; Teukolsky, S. A.; and Vetterling, W. T. "Van Wijngaarden-Dekker-Brent Method." §9.3 in Numerical Recipes in FORTRAN: The Art of Scientific Computing, 2nd ed. Cambridge, England: Cambridge University Press, pp. 352-355, 1992.

Referenced on Wolfram|Alpha: Brent's Method CITE THIS AS:

Weisstein, Eric W. "Brent's Method." From MathWorld--A Wolfram Web Resource. http://mathworld.wolfram.com/BrentsMethod.html

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值