22#define SOPT_IMAGING_FORWARD_BACKWARD_H
33
44#include " sopt/config.h"
5+ #include < limits> // for std::numeric_limits<>
6+ #include < memory> // for std::shared_ptr<>
57#include < numeric>
68#include < tuple>
79#include < utility>
@@ -141,7 +143,7 @@ class ImagingForwardBackward {
141143 // ! Vector of target measurements
142144 t_Vector const &target () const { return target_; }
143145 // ! Minimun of objective_function
144- Real objmin () const { return objmin_; };
146+ Real objmin () const { return objmin_; }
145147 // ! Sets the vector of target measurements
146148 template <class DERIVED >
147149 ImagingForwardBackward<Scalar> &target (Eigen::MatrixBase<DERIVED> const &target) {
@@ -293,7 +295,7 @@ bool ImagingForwardBackward<SCALAR>::residual_convergence(t_Vector const &x,
293295 auto const residual_norm = sopt::l2_norm (residual);
294296 SOPT_LOW_LOG (" - [FB] Residuals: {} <? {}" , residual_norm, residual_tolerance ());
295297 return residual_norm < residual_tolerance ();
296- };
298+ }
297299
298300template <class SCALAR >
299301bool ImagingForwardBackward<SCALAR>::objective_convergence(ScalarRelativeVariation<Scalar> &scalvar,
@@ -304,7 +306,7 @@ bool ImagingForwardBackward<SCALAR>::objective_convergence(ScalarRelativeVariati
304306 auto const current = ((gamma () > 0 ) ? g_proximal_->proximal_norm (x)
305307 * gamma () : 0 ) + std::pow (sopt::l2_norm (residual), 2 ) / (2 * sigma () * sigma ());
306308 return scalvar (current);
307- };
309+ }
308310
309311#ifdef SOPT_MPI
310312template <class SCALAR >
@@ -318,7 +320,7 @@ bool ImagingForwardBackward<SCALAR>::objective_convergence(mpi::Communicator con
318320 ((gamma () > 0 ) ? g_proximal_->proximal_norm (x)
319321 * gamma () : 0 ) + std::pow (sopt::l2_norm (residual), 2 ) / (2 * sigma_ * sigma_));
320322 return scalvar (current);
321- };
323+ }
322324#endif
323325
324326template <class SCALAR >
0 commit comments