alpaqa 0.0.1
Nonconvex constrained optimization
Classes | Public Member Functions | Public Attributes | List of all members
PolymorphicInnerSolver< InnerSolver > Class Template Reference

#include <alpaqa/polymorphic-inner-solver.hpp>

Detailed Description

template<class InnerSolver>
class alpaqa::PolymorphicInnerSolver< InnerSolver >

Definition at line 294 of file polymorphic-inner-solver.hpp.

+ Inheritance diagram for PolymorphicInnerSolver< InnerSolver >:
+ Collaboration diagram for PolymorphicInnerSolver< InnerSolver >:

Classes

struct  WrappedStats
 
struct  WrappedStatsAccumulator
 

Public Member Functions

 PolymorphicInnerSolver (InnerSolver &&innersolver)
 
 PolymorphicInnerSolver (const InnerSolver &innersolver)
 
template<class... Args>
 PolymorphicInnerSolver (Args... args)
 
Stats operator() (const Problem &problem, crvec Σ, real_t ε, bool always_overwrite_results, rvec x, rvec y, rvec err_z) override
 
void stop () override
 
std::string get_name () const override
 
py::object get_params () const override
 
void set_progress_callback (std::function< void(const typename InnerSolver::ProgressInfo &)> cb)
 

Public Attributes

InnerSolver innersolver
 

Constructor & Destructor Documentation

◆ PolymorphicInnerSolver() [1/3]

PolymorphicInnerSolver ( InnerSolver &&  innersolver)
inline

Definition at line 296 of file polymorphic-inner-solver.hpp.

◆ PolymorphicInnerSolver() [2/3]

PolymorphicInnerSolver ( const InnerSolver &  innersolver)
inline

Definition at line 298 of file polymorphic-inner-solver.hpp.

◆ PolymorphicInnerSolver() [3/3]

PolymorphicInnerSolver ( Args...  args)
inline

Definition at line 301 of file polymorphic-inner-solver.hpp.

Member Function Documentation

◆ operator()()

Stats operator() ( const Problem problem,
crvec  Σ,
real_t  ε,
bool  always_overwrite_results,
rvec  x,
rvec  y,
rvec  err_z 
)
inlineoverridevirtual
Parameters
[in]problemProblem description
[in]ΣConstraint weights \( \Sigma \)
[in]εTolerance \( \varepsilon \)
[in]always_overwrite_resultsOverwrite x, y and err_z even if not converged
[in,out]xDecision variable \( x \)
[in,out]yLagrange multipliers \( y \)
[out]err_zSlack variable error \( g(x) - z \)

Implements PolymorphicInnerSolverBase.

Definition at line 327 of file polymorphic-inner-solver.hpp.

◆ stop()

void stop ( )
inlineoverridevirtual

Implements PolymorphicInnerSolverBase.

Definition at line 352 of file polymorphic-inner-solver.hpp.

◆ get_name()

std::string get_name ( ) const
inlineoverridevirtual

Implements PolymorphicInnerSolverBase.

Definition at line 353 of file polymorphic-inner-solver.hpp.

+ Here is the caller graph for this function:

◆ get_params()

py::object get_params ( ) const
inlineoverridevirtual

Implements PolymorphicInnerSolverBase.

Definition at line 354 of file polymorphic-inner-solver.hpp.

+ Here is the caller graph for this function:

◆ set_progress_callback()

void set_progress_callback ( std::function< void(const typename InnerSolver::ProgressInfo &)>  cb)
inline

Definition at line 358 of file polymorphic-inner-solver.hpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ innersolver

InnerSolver innersolver

Definition at line 363 of file polymorphic-inner-solver.hpp.


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