diff --git a/NumLib/ODESolver/MatrixTranslator.h b/NumLib/ODESolver/MatrixTranslator.h index 6df68880311403152646c2f83cc466a9d4e055a7..76970880311f22f24b019df4123cc7bef0d026c2 100644 --- a/NumLib/ODESolver/MatrixTranslator.h +++ b/NumLib/ODESolver/MatrixTranslator.h @@ -404,7 +404,7 @@ public: // Note: using x_old here is correct, since this method is called from within // CrankNicolson::pushState() __after__ x_old has been updated to the result // from the timestep just finished. - auto const x_old = _crank_nicolson.getXOld(); + auto const& x_old = _crank_nicolson.getXOld(); // _M_bar = (1.0-theta) * M; BLAS::copy(M, _M_bar); diff --git a/NumLib/ODESolver/TimeLoopSingleODE.h b/NumLib/ODESolver/TimeLoopSingleODE.h index dd69d77269297970ae877de696844827705db139..ff8f29d8e086bda2b65dc8b9b7c5fbfaff4f6a36 100644 --- a/NumLib/ODESolver/TimeLoopSingleODE.h +++ b/NumLib/ODESolver/TimeLoopSingleODE.h @@ -64,7 +64,7 @@ public: * \retval false otherwise */ template<typename Callback> - bool loop(const double t0, const Vector x0, + bool loop(const double t0, Vector const& x0, const double t_end, const double delta_t, Callback& post_timestep); @@ -81,7 +81,7 @@ template<typename Matrix, typename Vector, NonlinearSolverTag NLTag> template<typename Callback> bool TimeLoopSingleODE<Matrix, Vector, NLTag>:: -loop(const double t0, const Vector x0, const double t_end, const double delta_t, +loop(const double t0, Vector const& x0, const double t_end, const double delta_t, Callback& post_timestep) { // solution vector