numerical-collection-cpp 0.10.0
A collection of algorithms in numerical analysis implemented in C++
Loading...
Searching...
No Matches
num_collect::regularization::explicit_l_curve< Solver, Optimizer > Class Template Reference

Class to search optimal regularization parameter using l-curve. More...

#include <num_collect/regularization/explicit_l_curve.h>

+ Inheritance diagram for num_collect::regularization::explicit_l_curve< Solver, Optimizer >:
+ Collaboration diagram for num_collect::regularization::explicit_l_curve< Solver, Optimizer >:

Public Types

using base_type
 Type of base class.
 
using data_type
 Type of data.
 
using optimizer_type
 Type of optimizers.
 
using scalar_type
 Type of scalars.
 
using solver_type
 Type of solvers.
 
- Public Types inherited from num_collect::regularization::explicit_param_searcher_base< explicit_l_curve< Solver, opt::heuristic_global_optimizer >, Solver >
using data_type
 Type of data.
 
using scalar_type
 Type of scalars.
 
using solver_type
 Type of solvers.
 

Public Member Functions

 explicit_l_curve (const solver_type &solver)
 Constructor.
 
auto opt_param () const -> scalar_type
 Get the optimal regularization parameter.
 
void search ()
 Search the optimal regularization parameter.
 
void solve (data_type &solution) const
 Solver with the optimal regularization parameter.
 
- Public Member Functions inherited from num_collect::regularization::explicit_param_searcher_base< explicit_l_curve< Solver, opt::heuristic_global_optimizer >, Solver >
auto opt_param () const -> scalar_type
 Get the optimal regularization parameter.
 
void search ()
 Search the optimal regularization parameter.
 
void solve (data_type &solution) const
 Solver with the optimal regularization parameter.
 

Private Attributes

scalar_type opt_param_ {}
 Optimal regularization parameter.
 
optimizer_type optimizer_
 Optimizer.
 
const solver_typesolver_
 Solver.
 

Additional Inherited Members

- Protected Member Functions inherited from num_collect::regularization::explicit_param_searcher_base< explicit_l_curve< Solver, opt::heuristic_global_optimizer >, Solver >
auto derived () const noexcept -> const explicit_l_curve< Solver, opt::heuristic_global_optimizer > &
 Access derived object.
 
auto derived () noexcept -> explicit_l_curve< Solver, opt::heuristic_global_optimizer > &
 Access derived object.
 

Detailed Description

template<concepts::explicit_regularized_solver Solver, template< typename > typename Optimizer = opt::heuristic_global_optimizer>
class num_collect::regularization::explicit_l_curve< Solver, Optimizer >

Class to search optimal regularization parameter using l-curve.

Template Parameters
SolverType of solvers.
OptimizerType of optimizers.

Definition at line 82 of file explicit_l_curve.h.

Member Typedef Documentation

◆ base_type

template<concepts::explicit_regularized_solver Solver, template< typename > typename Optimizer = opt::heuristic_global_optimizer>
using num_collect::regularization::explicit_l_curve< Solver, Optimizer >::base_type
Initial value:
Solver>
Base class for searching the optimal regularization parameters using explicit formulas for regulariza...

Type of base class.

Definition at line 87 of file explicit_l_curve.h.

◆ data_type

template<concepts::explicit_regularized_solver Solver, template< typename > typename Optimizer = opt::heuristic_global_optimizer>
using num_collect::regularization::explicit_param_searcher_base< explicit_l_curve< Solver, Optimizer >, Solver >::data_type

Type of data.

Definition at line 43 of file explicit_param_searcher_base.h.

◆ optimizer_type

template<concepts::explicit_regularized_solver Solver, template< typename > typename Optimizer = opt::heuristic_global_optimizer>
using num_collect::regularization::explicit_l_curve< Solver, Optimizer >::optimizer_type
Initial value:
Wrapper class of a function object to use as an objective function.
typename solver_type::scalar_type scalar_type
Type of scalars.
typename solver_type::scalar_type scalar_type
Type of scalars.

Type of optimizers.

Definition at line 96 of file explicit_l_curve.h.

◆ scalar_type

template<concepts::explicit_regularized_solver Solver, template< typename > typename Optimizer = opt::heuristic_global_optimizer>
using num_collect::regularization::explicit_param_searcher_base< explicit_l_curve< Solver, Optimizer >, Solver >::scalar_type

Type of scalars.

Definition at line 40 of file explicit_param_searcher_base.h.

◆ solver_type

template<concepts::explicit_regularized_solver Solver, template< typename > typename Optimizer = opt::heuristic_global_optimizer>
using num_collect::regularization::explicit_param_searcher_base< explicit_l_curve< Solver, Optimizer >, Solver >::solver_type

Type of solvers.

Definition at line 37 of file explicit_param_searcher_base.h.

Constructor & Destructor Documentation

◆ explicit_l_curve()

template<concepts::explicit_regularized_solver Solver, template< typename > typename Optimizer = opt::heuristic_global_optimizer>
num_collect::regularization::explicit_l_curve< Solver, Optimizer >::explicit_l_curve ( const solver_type & solver)
inlineexplicit

Constructor.

Parameters
[in]solverSolver.

Definition at line 105 of file explicit_l_curve.h.

Member Function Documentation

◆ opt_param()

template<concepts::explicit_regularized_solver Solver, template< typename > typename Optimizer = opt::heuristic_global_optimizer>
auto num_collect::regularization::explicit_l_curve< Solver, Optimizer >::opt_param ( ) const -> scalar_type
inlinenodiscard

Get the optimal regularization parameter.

Returns
Optimal regularization parameter.

Definition at line 125 of file explicit_l_curve.h.

◆ search()

template<concepts::explicit_regularized_solver Solver, template< typename > typename Optimizer = opt::heuristic_global_optimizer>
void num_collect::regularization::explicit_l_curve< Solver, Optimizer >::search ( )
inline

Search the optimal regularization parameter.

Definition at line 112 of file explicit_l_curve.h.

◆ solve()

template<concepts::explicit_regularized_solver Solver, template< typename > typename Optimizer = opt::heuristic_global_optimizer>
void num_collect::regularization::explicit_l_curve< Solver, Optimizer >::solve ( data_type & solution) const
inline

Solver with the optimal regularization parameter.

Template Parameters
SolutionType of the solution.
Parameters
[out]solutionSolution.

Definition at line 128 of file explicit_l_curve.h.

Member Data Documentation

◆ opt_param_

template<concepts::explicit_regularized_solver Solver, template< typename > typename Optimizer = opt::heuristic_global_optimizer>
scalar_type num_collect::regularization::explicit_l_curve< Solver, Optimizer >::opt_param_ {}
private

Optimal regularization parameter.

Definition at line 140 of file explicit_l_curve.h.

◆ optimizer_

template<concepts::explicit_regularized_solver Solver, template< typename > typename Optimizer = opt::heuristic_global_optimizer>
optimizer_type num_collect::regularization::explicit_l_curve< Solver, Optimizer >::optimizer_
private

Optimizer.

Definition at line 137 of file explicit_l_curve.h.

◆ solver_

template<concepts::explicit_regularized_solver Solver, template< typename > typename Optimizer = opt::heuristic_global_optimizer>
const solver_type* num_collect::regularization::explicit_l_curve< Solver, Optimizer >::solver_
private

Solver.

Definition at line 134 of file explicit_l_curve.h.


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