diff --git a/Tests/NumLib/TestTimeSteppingIterationNumber.cpp b/Tests/NumLib/TestTimeSteppingIterationNumber.cpp index 7b2927c0f600b60f64c556e12181930102186a78..c998526e37474de0c1baba1addbf3185b8e3a615 100644 --- a/Tests/NumLib/TestTimeSteppingIterationNumber.cpp +++ b/Tests/NumLib/TestTimeSteppingIterationNumber.cpp @@ -100,18 +100,22 @@ TEST(NumLib, TimeSteppingIterationNumberBased2) struct IterationNumberUpdate { - IterationNumberUpdate(const std::vector<std::size_t> &vec) : _nr_iterations(vec) {} + IterationNumberUpdate(const std::vector<std::size_t> &vec, std::size_t& counter) + : _nr_iterations(vec), i(counter) {} + std::vector<std::size_t> _nr_iterations; + std::size_t& i; + void operator()(NumLib::IterationNumberBasedAdaptiveTimeStepping &obj) { - static std::size_t i = 0; std::size_t n = (i<_nr_iterations.size()) ? _nr_iterations[i++] : 0; //INFO("-> NR-iterations=%d", n); obj.setNIterations(n); } }; - IterationNumberUpdate update(nr_iterations); + std::size_t counter = 0; + IterationNumberUpdate update(nr_iterations, counter); std::vector<double> vec_t = timeStepping(alg, &update); //std::cout << vec_t;