numerical-collection-cpp 0.10.0
A collection of algorithms in numerical analysis implemented in C++
Loading...
Searching...
No Matches
num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data > Class Template Reference

Class to solve linear equations with total variation (TV) regularization using the alternating direction method of multipliers (ADMM) [2]. More...

#include <num_collect/regularization/tv_admm.h>

+ Inheritance diagram for num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >:
+ Collaboration diagram for num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >:

Public Types

using base_type = iterative_regularized_solver_base<this_type, Data>
 Type of the base class.
 
using coeff_type = Coeff
 Type of coefficient matrices.
 
using derivative_matrix_type = DerivativeMatrix
 Type of matrices to compute derivatives.
 
using this_type = tv_admm<Coeff, DerivativeMatrix, Data>
 This type.
 
- Public Types inherited from num_collect::regularization::regularized_solver_base< tv_admm< Coeff, DerivativeMatrix, Data >, Data >
using data_type
 Type of data.
 
using scalar_type
 Type of scalars.
 

Public Member Functions

 tv_admm ()
 Constructor.
 
void calculate_data_for (const data_type &solution, data_type &data) const
 Calculate data for a solution.
 
void change_data (const data_type &data)
 Change data.
 
void compute (const Coeff &coeff, const DerivativeMatrix &derivative_matrix, const Data &data)
 Compute internal parameters.
 
void configure_iteration_logger (logging::iterations::iteration_logger< this_type > &iteration_logger) const
 Configure an iteration logger.
 
auto data_size () const -> index_type
 Get the size of data.
 
void init (const scalar_type &param, data_type &solution)
 Initialize.
 
auto is_stop_criteria_satisfied (const data_type &solution) const -> bool
 Determine if stopping criteria of the algorithm are satisfied.
 
void iterate (const scalar_type &param, data_type &solution)
 Iterate the algorithm once.
 
auto iterations () const noexcept -> index_type
 Get the number of iterations.
 
auto max_iterations () const -> index_type
 Get the maximum number of iterations.
 
auto max_iterations (index_type value) -> tv_admm &
 Set the maximum number of iterations.
 
auto param_search_region () const -> std::pair< scalar_type, scalar_type >
 Get the default region to search for the optimal regularization parameter.
 
auto regularization_term (const data_type &solution) const -> scalar_type
 Calculate the regularization term.
 
auto residual_norm (const data_type &solution) const -> scalar_type
 Calculate the squared norm of the residual.
 
auto residual_norm_rate () const -> scalar_type
 Get the rate of the last residual norm.
 
auto tol_update_rate () const -> scalar_type
 Get the tolerance of update rate of the solution.
 
auto tol_update_rate (scalar_type value) -> tv_admm &
 Set the tolerance of update rate of the solution.
 
auto update_rate () const noexcept -> scalar_type
 Get the rate of the norm of the update of the solution in the last iteration.
 
- Public Member Functions inherited from num_collect::regularization::iterative_regularized_solver_base< tv_admm< Coeff, DerivativeMatrix, Data >, Data >
void init (const scalar_type &param, data_type &solution)
 Initialize.
 
auto is_stop_criteria_satisfied (const data_type &solution) const -> bool
 Determine if stopping criteria of the algorithm are satisfied.
 
void iterate (const scalar_type &param, data_type &solution)
 Iterate the algorithm once.
 
void solve (const scalar_type &param, data_type &solution)
 Solve for a regularization parameter.
 
- Public Member Functions inherited from num_collect::regularization::implicit_regularized_solver_base< tv_admm< Coeff, DerivativeMatrix, Data >, Data >
void calculate_data_for (const data_type &solution, data_type &data) const
 Calculate data for a solution.
 
void change_data (const data_type &data)
 Change data.
 
auto regularization_term (const data_type &solution) const -> scalar_type
 Calculate the regularization term.
 
auto residual_norm (const data_type &solution) const -> scalar_type
 Calculate the squared norm of the residual.
 
- Public Member Functions inherited from num_collect::regularization::regularized_solver_base< tv_admm< Coeff, DerivativeMatrix, Data >, Data >
auto data_size () const -> index_type
 Get the size of data.
 
auto param_search_region () const -> std::pair< scalar_type, scalar_type >
 Get the default region to search for the optimal regularization parameter.
 
void solve (const scalar_type &param, data_type &solution)
 Solve for a regularization parameter.
 
- Public Member Functions inherited from num_collect::logging::logging_mixin
 logging_mixin (log_tag_view tag)
 Constructor.
 
template<typename Child >
void configure_child_algorithm_logger_if_exists (Child &child)
 Configure a logger of a child algorithm if exists.
 
auto logger () const noexcept -> const num_collect::logging::logger &
 Access to the logger.
 
auto logger () noexcept -> num_collect::logging::logger &
 Access to the logger.
 
- Public Member Functions inherited from num_collect::logging::iterations::iteration_logger_mixin< tv_admm< Coeff, DerivativeMatrix, Data > >
 iteration_logger_mixin ()=default
 Constructor.
 
void configure_iteration_logger (num_collect::logging::iterations::iteration_logger< tv_admm< Coeff, DerivativeMatrix, Data > > &iteration_logger) const
 Configure an iteration logger.
 
auto initialize_iteration_logger () -> num_collect::logging::iterations::iteration_logger< tv_admm< Coeff, DerivativeMatrix, Data > > &
 Get the iteration logger.
 

Private Attributes

const coeff_typecoeff_ {nullptr}
 Coefficient matrix to compute data vector.
 
linear::impl::operator_conjugate_gradient< data_typeconjugate_gradient_ {}
 Conjugate gradient solver.
 
const data_typedata_ {nullptr}
 Data vector.
 
data_type derivative_ {}
 Derivative.
 
scalar_type derivative_constraint_coeff_
 Coefficient of the constraint for the derivative.
 
const derivative_matrix_typederivative_matrix_ {nullptr}
 Matrix to compute derivative.
 
index_type iterations_ {}
 Number of iterations.
 
data_type lagrange_multiplier_ {}
 Lagrange multiplier.
 
data_type lagrange_multiplier_update_ {}
 Update of lagrange multiplier.
 
index_type max_iterations_ {default_max_iterations}
 Maximum number of iterations.
 
data_type previous_derivative_ {}
 Previous derivative.
 
data_type previous_solution_ {}
 Previous solution.
 
scalar_type rate_of_cg_tol_rate_to_tol_update_rate_
 Rate of the ratio of the rate of tolerance in CG method to the tolerance of update rate of the solution.
 
data_type residual_ {}
 Residual vector.
 
data_type temp_solution_ {}
 Temporary vector for the update of the solution.
 
scalar_type tol_update_rate_ {default_tol_update_rate}
 Tolerance of update rate of the solution.
 
scalar_type update_rate_ {}
 Rate of norm of the update of the solution in the last iteration.
 

Static Private Attributes

static constexpr auto default_derivative_constraint_coeff
 Default coefficient of the constraint for the derivative.
 
static constexpr index_type default_max_iterations = 1000
 Default maximum number of iterations.
 
static constexpr auto default_rate_of_cg_tol_rate_to_tol_update_rate
 Default value of the ratio of the rate of tolerance in CG method to the tolerance of update rate of the solution.
 
static constexpr auto default_tol_update_rate
 Default tolerance of update rate of the solution.
 

Additional Inherited Members

- Protected Member Functions inherited from num_collect::regularization::iterative_regularized_solver_base< tv_admm< Coeff, DerivativeMatrix, Data >, Data >
 iterative_regularized_solver_base (logging::log_tag_view tag)
 Constructor.
 
- Protected Member Functions inherited from num_collect::regularization::implicit_regularized_solver_base< tv_admm< Coeff, DerivativeMatrix, Data >, Data >
 implicit_regularized_solver_base (logging::log_tag_view tag)
 Constructor.
 
auto derived () const noexcept -> const tv_admm< Coeff, DerivativeMatrix, Data > &
 Access derived object.
 
auto derived () noexcept -> tv_admm< Coeff, DerivativeMatrix, Data > &
 Access derived object.
 
- Protected Member Functions inherited from num_collect::regularization::regularized_solver_base< tv_admm< Coeff, DerivativeMatrix, Data >, Data >
 regularized_solver_base (logging::log_tag_view tag)
 Constructor.
 
auto derived () const noexcept -> const tv_admm< Coeff, DerivativeMatrix, Data > &
 Access derived object.
 
auto derived () noexcept -> tv_admm< Coeff, DerivativeMatrix, Data > &
 Access derived object.
 

Detailed Description

template<typename Coeff, typename DerivativeMatrix, base::concepts::dense_vector Data>
requires ((base::concepts::sparse_matrix<Coeff> || base::concepts::dense_matrix<Coeff>) && (base::concepts::sparse_matrix<DerivativeMatrix> || base::concepts::dense_matrix<DerivativeMatrix>))
class num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >

Class to solve linear equations with total variation (TV) regularization using the alternating direction method of multipliers (ADMM) [2].

Template Parameters
CoeffType of coefficient matrices.
DerivativeMatrixType of matrices to compute derivatives.
DataType of data vectors.

Definition at line 62 of file tv_admm.h.

Member Typedef Documentation

◆ base_type

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
using num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::base_type = iterative_regularized_solver_base<this_type, Data>

Type of the base class.

Definition at line 69 of file tv_admm.h.

◆ coeff_type

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
using num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::coeff_type = Coeff

Type of coefficient matrices.

Definition at line 75 of file tv_admm.h.

◆ derivative_matrix_type

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
using num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::derivative_matrix_type = DerivativeMatrix

Type of matrices to compute derivatives.

Definition at line 78 of file tv_admm.h.

◆ this_type

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
using num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::this_type = tv_admm<Coeff, DerivativeMatrix, Data>

This type.

Definition at line 66 of file tv_admm.h.

Constructor & Destructor Documentation

◆ tv_admm()

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::tv_admm ( )
inline

Constructor.

Definition at line 83 of file tv_admm.h.

Member Function Documentation

◆ calculate_data_for()

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
void num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::calculate_data_for ( const data_type & solution,
data_type & data ) const
inline

Calculate data for a solution.

Parameters
[in]solutionSolution.
[out]dataData.

Definition at line 217 of file tv_admm.h.

◆ change_data()

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
void num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::change_data ( const data_type & data)
inline

Change data.

Parameters
[in]dataNew data.

Definition at line 214 of file tv_admm.h.

◆ compute()

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
void num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::compute ( const Coeff & coeff,
const DerivativeMatrix & derivative_matrix,
const Data & data )
inline

Compute internal parameters.

Parameters
[in]coeffCoefficient matrix.
[in]dataData vector.
[in]derivative_matrixMatrix to compute derivative.
Note
Pointers to the arguments are saved in this object, so don't destruct those arguments.
Call this before init.

Definition at line 98 of file tv_admm.h.

◆ configure_iteration_logger()

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
void num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::configure_iteration_logger ( logging::iterations::iteration_logger< this_type > & iteration_logger) const
inline

Configure an iteration logger.

Parameters
[in]iteration_loggerIteration logger.

Definition at line 190 of file tv_admm.h.

◆ data_size()

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
auto num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::data_size ( ) const -> index_type
inlinenodiscard

Get the size of data.

Returns
Size of data.

Definition at line 222 of file tv_admm.h.

◆ init()

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
void num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::init ( const scalar_type & param,
data_type & solution )
inline

Initialize.

Parameters
[in]paramRegularization parameter.
[in,out]solutionSolution. (Assumed to be the initial solution.)
Warning
Any required initializations (with compute functions) are assumed to have been done.

Definition at line 106 of file tv_admm.h.

◆ is_stop_criteria_satisfied()

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
auto num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::is_stop_criteria_satisfied ( const data_type & solution) const -> bool
inlinenodiscard

Determine if stopping criteria of the algorithm are satisfied.

Parameters
[in]solutionSolution.
Returns
If stopping criteria of the algorithm are satisfied.

Definition at line 182 of file tv_admm.h.

◆ iterate()

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
void num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::iterate ( const scalar_type & param,
data_type & solution )
inline

Iterate the algorithm once.

Parameters
[in]paramRegularization parameter.
[in,out]solutionSolution. (Assumed to be the last solution.)
Warning
Any required initializations (with init functions) are assumed to have been done.

Definition at line 138 of file tv_admm.h.

◆ iterations()

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
auto num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::iterations ( ) const -> index_type
inlinenodiscardnoexcept

Get the number of iterations.

Returns
Value.

Definition at line 248 of file tv_admm.h.

◆ max_iterations() [1/2]

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
auto num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::max_iterations ( ) const -> index_type
inlinenodiscard

Get the maximum number of iterations.

Returns
Value.

Definition at line 276 of file tv_admm.h.

◆ max_iterations() [2/2]

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
auto num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::max_iterations ( index_type value) -> tv_admm&
inline

Set the maximum number of iterations.

Parameters
[in]valueValue.
Returns
This object.

Definition at line 286 of file tv_admm.h.

◆ param_search_region()

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
auto num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::param_search_region ( ) const -> std::pair<scalar_type, scalar_type>
inlinenodiscard

Get the default region to search for the optimal regularization parameter.

Returns
Pair of minimum and maximum regularization parameters.

Definition at line 225 of file tv_admm.h.

◆ regularization_term()

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
auto num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::regularization_term ( const data_type & solution) const -> scalar_type
inlinenodiscard

Calculate the regularization term.

Parameters
[in]solutionSolution.
Returns
Result.

Definition at line 208 of file tv_admm.h.

◆ residual_norm()

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
auto num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::residual_norm ( const data_type & solution) const -> scalar_type
inlinenodiscard

Calculate the squared norm of the residual.

Parameters
[in]solutionSolution.
Returns
Result.

Definition at line 202 of file tv_admm.h.

◆ residual_norm_rate()

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
auto num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::residual_norm_rate ( ) const -> scalar_type
inlinenodiscard

Get the rate of the last residual norm.

Returns
Rate of the residual norm.

Definition at line 267 of file tv_admm.h.

◆ tol_update_rate() [1/2]

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
auto num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::tol_update_rate ( ) const -> scalar_type
inlinenodiscard

Get the tolerance of update rate of the solution.

Returns
Value.

Definition at line 298 of file tv_admm.h.

◆ tol_update_rate() [2/2]

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
auto num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::tol_update_rate ( scalar_type value) -> tv_admm&
inline

Set the tolerance of update rate of the solution.

Parameters
[in]valueValue.
Returns
This object.

Definition at line 308 of file tv_admm.h.

◆ update_rate()

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
auto num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::update_rate ( ) const -> scalar_type
inlinenodiscardnoexcept

Get the rate of the norm of the update of the solution in the last iteration.

Returns
Value.

Definition at line 258 of file tv_admm.h.

Member Data Documentation

◆ coeff_

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
const coeff_type* num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::coeff_ {nullptr}
private

Coefficient matrix to compute data vector.

Definition at line 318 of file tv_admm.h.

◆ conjugate_gradient_

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
linear::impl::operator_conjugate_gradient<data_type> num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::conjugate_gradient_ {}
private

Conjugate gradient solver.

Definition at line 354 of file tv_admm.h.

◆ data_

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
const data_type* num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::data_ {nullptr}
private

Data vector.

Definition at line 324 of file tv_admm.h.

◆ default_derivative_constraint_coeff

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
auto num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::default_derivative_constraint_coeff
staticconstexprprivate
Initial value:
=
static_cast<scalar_type>(1)

Default coefficient of the constraint for the derivative.

Definition at line 357 of file tv_admm.h.

◆ default_max_iterations

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
index_type num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::default_max_iterations = 1000
staticconstexprprivate

Default maximum number of iterations.

Definition at line 365 of file tv_admm.h.

◆ default_rate_of_cg_tol_rate_to_tol_update_rate

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
auto num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::default_rate_of_cg_tol_rate_to_tol_update_rate
staticconstexprprivate
Initial value:
=
static_cast<scalar_type>(1e-2)

Default value of the ratio of the rate of tolerance in CG method to the tolerance of update rate of the solution.

Definition at line 378 of file tv_admm.h.

◆ default_tol_update_rate

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
auto num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::default_tol_update_rate
staticconstexprprivate
Initial value:
=
static_cast<scalar_type>(1e-4)

Default tolerance of update rate of the solution.

Definition at line 371 of file tv_admm.h.

◆ derivative_

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
data_type num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::derivative_ {}
private

Derivative.

Definition at line 330 of file tv_admm.h.

◆ derivative_constraint_coeff_

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
scalar_type num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::derivative_constraint_coeff_
private
Initial value:
{
static constexpr auto default_derivative_constraint_coeff
Default coefficient of the constraint for the derivative.
Definition tv_admm.h:357

Coefficient of the constraint for the derivative.

Definition at line 361 of file tv_admm.h.

◆ derivative_matrix_

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
const derivative_matrix_type* num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::derivative_matrix_ {nullptr}
private

Matrix to compute derivative.

Definition at line 321 of file tv_admm.h.

◆ iterations_

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
index_type num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::iterations_ {}
private

Number of iterations.

Definition at line 327 of file tv_admm.h.

◆ lagrange_multiplier_

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
data_type num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::lagrange_multiplier_ {}
private

Lagrange multiplier.

Definition at line 333 of file tv_admm.h.

◆ lagrange_multiplier_update_

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
data_type num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::lagrange_multiplier_update_ {}
private

Update of lagrange multiplier.

Definition at line 345 of file tv_admm.h.

◆ max_iterations_

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
index_type num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::max_iterations_ {default_max_iterations}
private

Maximum number of iterations.

Definition at line 368 of file tv_admm.h.

◆ previous_derivative_

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
data_type num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::previous_derivative_ {}
private

Previous derivative.

Definition at line 342 of file tv_admm.h.

◆ previous_solution_

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
data_type num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::previous_solution_ {}
private

Previous solution.

Definition at line 339 of file tv_admm.h.

◆ rate_of_cg_tol_rate_to_tol_update_rate_

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
scalar_type num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::rate_of_cg_tol_rate_to_tol_update_rate_
private
Initial value:
{
static constexpr auto default_rate_of_cg_tol_rate_to_tol_update_rate
Default value of the ratio of the rate of tolerance in CG method to the tolerance of update rate of t...
Definition tv_admm.h:378

Rate of the ratio of the rate of tolerance in CG method to the tolerance of update rate of the solution.

Definition at line 382 of file tv_admm.h.

◆ residual_

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
data_type num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::residual_ {}
private

Residual vector.

Definition at line 348 of file tv_admm.h.

◆ temp_solution_

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
data_type num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::temp_solution_ {}
private

Temporary vector for the update of the solution.

Definition at line 336 of file tv_admm.h.

◆ tol_update_rate_

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
scalar_type num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::tol_update_rate_ {default_tol_update_rate}
private

Tolerance of update rate of the solution.

Definition at line 375 of file tv_admm.h.

◆ update_rate_

template<typename Coeff , typename DerivativeMatrix , base::concepts::dense_vector Data>
scalar_type num_collect::regularization::tv_admm< Coeff, DerivativeMatrix, Data >::update_rate_ {}
private

Rate of norm of the update of the solution in the last iteration.

Definition at line 351 of file tv_admm.h.


The documentation for this class was generated from the following file: