| ' Licensed to the Apache Software Foundation (ASF) under one or more |
| ' contributor license agreements. See the NOTICE file distributed with |
| ' this work for additional information regarding copyright ownership. |
| ' The ASF licenses this file to You under the Apache License, Version 2.0 |
| ' (the "License"); you may not use this file except in compliance with |
| ' the License. You may obtain a copy of the License at |
| ' |
| ' http://www.apache.org/licenses/LICENSE-2.0 |
| ' |
| ' Unless required by applicable law or agreed to in writing, software |
| ' distributed under the License is distributed on an "AS IS" BASIS, |
| ' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| ' See the License for the specific language governing permissions and |
| ' limitations under the License. |
| |
| @startuml |
| |
| skinparam svek true |
| skinparam ClassBackgroundColor #F3EFEB |
| skinparam ClassArrowColor #691616 |
| skinparam ClassBorderColor #691616 |
| skinparam NoteBackgroundColor #F3EFEB |
| skinparam NoteBorderColor #691616 |
| skinparam NoteFontColor #691616 |
| skinparam ClassFontSize 11 |
| |
| package org.apache.commons.math4.differentiation.solvers #ECEBD8 { |
| |
| enum AllowedSolution { |
| ANY_SIDE |
| LEFT_SIDE |
| RIGHT_SIDE |
| BELOW_SIDE |
| ABOVE_SIDE |
| } |
| |
| interface "BaseUnivariateSolver<FUNC extends UnivariateFunction>" as BaseUnivariateSolver_FUNC_ { |
| +int getMaxEvaluations() |
| +int getEvaluations() |
| +double getAbsoluteAccuracy() |
| +double getRelativeAccuracy() |
| +double getFunctionValueAccuracy() |
| +double solve(int maxEval, FUNC f, double min, double max) |
| +double solve(int maxEval, FUNC f, double min, double max, double startValue) |
| +double solve(int maxEval, FUNC f, double startValue) |
| } |
| |
| abstract class "BaseAbstractUnivariateSolver<FUNC extends UnivariateFunction>" as BaseAbstractUnivariateSolver_FUNC_ { |
| #{Abstract} double doSolve() |
| } |
| |
| interface UnivariateSolver |
| abstract class AbstractUnivariateSolver |
| |
| interface DifferentiableUnivariateSolver |
| abstract class AbstractDifferentiableUnivariateSolver |
| |
| interface PolynomialSolver |
| abstract class AbstractPolynomialSolver |
| |
| BaseUnivariateSolver_FUNC_ <|.. BaseAbstractUnivariateSolver_FUNC_ |
| |
| BaseUnivariateSolver_FUNC_ <|.. UnivariateSolver |
| UnivariateSolver <|.. AbstractUnivariateSolver |
| BaseAbstractUnivariateSolver_FUNC_ <|-- AbstractUnivariateSolver |
| |
| BaseUnivariateSolver_FUNC_ <|.. DifferentiableUnivariateSolver |
| DifferentiableUnivariateSolver <|.. AbstractDifferentiableUnivariateSolver |
| BaseAbstractUnivariateSolver_FUNC_ <|-- AbstractDifferentiableUnivariateSolver |
| |
| BaseUnivariateSolver_FUNC_ <|.. PolynomialSolver |
| PolynomialSolver <|.. AbstractPolynomialSolver |
| BaseAbstractUnivariateSolver_FUNC_ <|-- AbstractPolynomialSolver |
| |
| |
| interface "BracketedUnivariateSolver<FUNC extends UnivariateFunction>" as BracketedUnivariateSolver_FUNC_ |
| AllowedSolution <-- BracketedUnivariateSolver_FUNC_ : solution side selector |
| BaseUnivariateSolver_FUNC_ <|.. BracketedUnivariateSolver_FUNC_ |
| |
| abstract class BaseSecantSolver |
| |
| AbstractUnivariateSolver <|-- BaseSecantSolver |
| BracketedUnivariateSolver_FUNC_ <|.. BaseSecantSolver |
| BaseSecantSolver <|-- IllinoisSolver |
| BaseSecantSolver <|-- PegasusSolver |
| BaseSecantSolver <|-- RegulaFalsiSolver |
| |
| AbstractUnivariateSolver <|-- BracketingNthOrderBrentSolver |
| BracketedUnivariateSolver_FUNC_ <|.. BracketingNthOrderBrentSolver |
| |
| AbstractUnivariateSolver <|-- BrentSolver |
| AbstractUnivariateSolver <|-- SecantSolver |
| AbstractUnivariateSolver <|-- RiddersSolver |
| AbstractUnivariateSolver <|-- MullerSolver |
| AbstractUnivariateSolver <|-- MullerSolver2 |
| AbstractDifferentiableUnivariateSolver <|-- NewtonSolver |
| AbstractPolynomialSolver <|-- LaguerreSolver |
| |
| AbstractUnivariateSolver <|-- BisectionSolver |
| } |
| |
| @enduml |