diff --git a/src/test-gradient-method.cc b/src/test-gradient-method.cc index 1f384e8c1fa2f8a4cc3c07038a5a778a153aac00..9f7d0e3a2bd076b95eb1562c358989f8ef366744 100644 --- a/src/test-gradient-method.cc +++ b/src/test-gradient-method.cc @@ -2,20 +2,29 @@ #include "config.h" #endif +#include <cassert> + #include <dune/common/exceptions.hh> #include <dune/common/shared_ptr.hh> #include <dune/common/stdstreams.hh> -#include <dune/tectonic/samplefunctional.hh> +#include <dune/tnnmg/problem-classes/bisection.hh> -#include <cassert> +#include <dune/tectonic/samplefunctional.hh> template <int dim> double functionTester(Dune::SampleFunctional<dim> J, typename Dune::SampleFunctional<dim>::SmallVector &start, size_t runs) { + Bisection const bisection( + 0.0, // acceptError: Stop if the search interval has + // become smaller than this number + 1.0, // acceptFactor: ? + 1e-12, // requiredResidual: ? + true, // fastQuadratic + 0); // safety: acceptance factor for inexact minimization std::cout << "Old value: J(...) = " << J(start) << std::endl; - Dune::minimise(J, start, runs); + Dune::minimise(J, start, runs, bisection); double const final = J(start); std::cout << "Final value J(...) = " << final << std::endl; return final;