Skip to content
Snippets Groups Projects
Commit 10016625 authored by Elias Pipping's avatar Elias Pipping Committed by Elias Pipping
Browse files

Modularise test suite

parent 2f8314de
No related branches found
No related tags found
No related merge requests found
#include <boost/format.hpp>
#include <dune/tnnmg/problem-classes/bisection.hh>
#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
double const original = J(start);
Dune::minimise(J, start, runs, bisection);
double const final = J(start);
std::cout << boost::format("%8g -> %e") % original % final << std::endl;
return final;
}
......@@ -4,33 +4,13 @@
#include <cassert>
#include <boost/format.hpp>
#include <dune/common/exceptions.hh>
#include <dune/common/shared_ptr.hh>
#include <dune/tnnmg/problem-classes/bisection.hh>
#include <dune/tectonic/samplefunctional.hh>
#include "test-gradient-method-nicefunction.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
double const original = J(start);
Dune::minimise(J, start, runs, bisection);
double const final = J(start);
std::cout << boost::format("%8g -> %e") % original % final << std::endl;
return final;
}
#include "test-gradient-method-nicefunction.hh"
#include "test-gradient-method-helper.hh"
void testIdentity() {
int const dim = 2;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment