类 BrentSolver
java.lang.Object
org.hipparchus.analysis.solvers.BaseAbstractUnivariateSolver<UnivariateFunction>
org.hipparchus.analysis.solvers.AbstractUnivariateSolver
org.hipparchus.analysis.solvers.BrentSolver
- 所有已实现的接口:
-
BaseUnivariateSolver<UnivariateFunction>
,UnivariateSolver
该类实现了用于查找实数一元函数零点的 Brent算法。函数应连续但不一定平滑。
solve
方法返回给定区间[a, b]
内函数f
的零点x
,精度为2 eps abs(x) + t
,其中eps
为相对精度,t
为绝对精度。
给定的区间必须包围根。
参考实现见
无导数最小化算法,Richard P. Brent,Dover,2002
- 另请参阅:
-
构造器概要
构造器说明使用默认绝对精度(1e-6)构造求解器。BrentSolver
(double absoluteAccuracy) 构造求解器。BrentSolver
(double relativeAccuracy, double absoluteAccuracy) 构造求解器。BrentSolver
(double relativeAccuracy, double absoluteAccuracy, double functionValueAccuracy) 构造求解器。 -
方法概要
从类继承的方法 org.hipparchus.analysis.solvers.BaseAbstractUnivariateSolver
computeObjectiveValue, getAbsoluteAccuracy, getEvaluations, getFunctionValueAccuracy, getMax, getMin, getRelativeAccuracy, getStartValue, incrementEvaluationCount, isBracketing, isSequence, setup, solve, solve, solve, verifyBracketing, verifyInterval, verifySequence
从类继承的方法 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
从接口继承的方法 org.hipparchus.analysis.solvers.BaseUnivariateSolver
getAbsoluteAccuracy, getEvaluations, getFunctionValueAccuracy, getRelativeAccuracy, solve, solve, solve
-
构造器详细资料
-
BrentSolver
public BrentSolver()使用默认绝对精度(1e-6)构造一个求解器。 -
BrentSolver
public BrentSolver(double absoluteAccuracy) 构造一个求解器。- 参数:
-
absoluteAccuracy
- 绝对精度。
-
BrentSolver
public BrentSolver(double relativeAccuracy, double absoluteAccuracy) 构造一个求解器。- 参数:
-
relativeAccuracy
- 相对精度。 -
absoluteAccuracy
- 绝对精度。
-
BrentSolver
public BrentSolver(double relativeAccuracy, double absoluteAccuracy, double functionValueAccuracy) 构造一个求解器。- 参数:
-
relativeAccuracy
- 相对精度。 -
absoluteAccuracy
- 绝对精度。 -
functionValueAccuracy
- 函数值精度。 - 另请参阅:
-
-
方法详细资料
-
doSolve
在派生类中实现实际优化算法的方法。- 指定者:
-
doSolve
在类中BaseAbstractUnivariateSolver<UnivariateFunction>
- 返回:
- 根。
- 抛出:
-
MathIllegalArgumentException
- 如果初始搜索区间不包含根并且求解器需要它。 -
MathIllegalStateException
- 如果超过最大评估次数。
-