Esempio n. 1
0
        private static UnivariateSolver GetSolver(Type type, double error = DEFAULT_ABSOLUTE_ACCURACY)
        {
            UnivariateSolver univariateSolver;

            switch (type)
            {
            case Type.Brent:
                univariateSolver = new BrentSolver(error);
                break;

            case Type.Bisection:
                univariateSolver = new BisectionSolver(error);
                break;

            case Type.Secant:
                univariateSolver = new SecantSolver(error);
                break;

            case Type.RegulaFalsi:
                univariateSolver = new RegulaFalsiSolver(error);
                break;

            case Type.Ridders:
                univariateSolver = new RiddersSolver(error);
                break;

            default:
                throw new IndexOutOfRangeException();
            }
            return(univariateSolver);
        }
 /// <param name="functionValueAccuracy"> The accuracy of the function evaluations. </param>
 /// <param name="absoluteAccurary"> The maximum absolute error of the variable. </param>
 public RidderSingleRootFinder(double functionValueAccuracy, double absoluteAccurary)
 {
     _ridder = new RiddersSolver(functionValueAccuracy, absoluteAccurary);
 }