alpaqa 1.0.0a17
Nonconvex constrained optimization
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | Private Types | Private Attributes | List of all members
PANTRSolver< DirectionT > Class Template Reference

#include <alpaqa/inner/pantr.hpp>

Detailed Description

template<class DirectionT>
class alpaqa::PANTRSolver< DirectionT >

PANTR solver for ALM.

Definition at line 151 of file pantr.hpp.

+ Collaboration diagram for PANTRSolver< DirectionT >:

Public Types

using Problem = TypeErasedProblem< config_t >
 
using Params = PANTRParams< config_t >
 
using Direction = DirectionT
 
using Stats = PANTRStats< config_t >
 
using ProgressInfo = PANTRProgressInfo< config_t >
 
using SolveOptions = InnerSolveOptions< config_t >
 

Public Member Functions

 PANTRSolver (const Params &params)
 
 PANTRSolver (const Params &params, Direction &&direction)
 
 PANTRSolver (const Params &params, const Direction &direction)
 
Stats operator() (const Problem &problem, const SolveOptions &opts, rvec x, rvec y, crvec Σ, rvec err_z)
 
template<class P >
Stats operator() (const P &problem, const SolveOptions &opts, rvec x, rvec y, crvec Σ, rvec e)
 
template<class P >
Stats operator() (const P &problem, const SolveOptions &opts, rvec x)
 
PANTRSolverset_progress_callback (std::function< void(const ProgressInfo &)> cb)
 Specify a callable that is invoked with some intermediate results on each iteration of the algorithm.
 
std::string get_name () const
 
void stop ()
 
const Paramsget_params () const
 

Public Attributes

Direction direction
 
std::ostream * os = &std::cout
 

Private Types

using Helpers = detail::PANOCHelpers< config_t >
 

Private Attributes

Params params
 
AtomicStopSignal stop_signal
 
std::function< void(const ProgressInfo &)> progress_cb
 

Member Typedef Documentation

◆ Problem

Definition at line 155 of file pantr.hpp.

◆ Params

template<class DirectionT >
using Params = PANTRParams<config_t>

Definition at line 156 of file pantr.hpp.

◆ Direction

Definition at line 157 of file pantr.hpp.

◆ Stats

template<class DirectionT >
using Stats = PANTRStats<config_t>

Definition at line 158 of file pantr.hpp.

◆ ProgressInfo

Definition at line 159 of file pantr.hpp.

◆ SolveOptions

Definition at line 160 of file pantr.hpp.

◆ Helpers

template<class DirectionT >
using Helpers = detail::PANOCHelpers<config_t>
private

Definition at line 210 of file pantr.hpp.

Constructor & Destructor Documentation

◆ PANTRSolver() [1/3]

template<class DirectionT >
PANTRSolver ( const Params params)
inline

Definition at line 162 of file pantr.hpp.

◆ PANTRSolver() [2/3]

template<class DirectionT >
PANTRSolver ( const Params params,
Direction &&  direction 
)
inline

Definition at line 165 of file pantr.hpp.

◆ PANTRSolver() [3/3]

template<class DirectionT >
PANTRSolver ( const Params params,
const Direction direction 
)
inline

Definition at line 167 of file pantr.hpp.

Member Function Documentation

◆ operator()() [1/3]

auto operator() ( const Problem problem,
const SolveOptions opts,
rvec  x,
rvec  y,
crvec  Σ,
rvec  err_z 
)
Parameters
[in]problemProblem description
[in]optsSolve options
[in,out]xDecision variable \( x \)
[in,out]yLagrange multipliers \( y \)
[in]ΣConstraint weights \( \Sigma \)
[out]err_zSlack variable error \( g(x) - \Pi_D(g(x) + \Sigma^{-1} y) \)

Definition at line 25 of file pantr.tpp.

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

◆ operator()() [2/3]

template<class DirectionT >
template<class P >
Stats operator() ( const P &  problem,
const SolveOptions opts,
rvec  x,
rvec  y,
crvec  Σ,
rvec  e 
)
inline

Definition at line 178 of file pantr.hpp.

+ Here is the call graph for this function:

◆ operator()() [3/3]

template<class DirectionT >
template<class P >
Stats operator() ( const P &  problem,
const SolveOptions opts,
rvec  x 
)
inline

Definition at line 184 of file pantr.hpp.

+ Here is the call graph for this function:

◆ set_progress_callback()

template<class DirectionT >
PANTRSolver & set_progress_callback ( std::function< void(const ProgressInfo &)>  cb)
inline

Specify a callable that is invoked with some intermediate results on each iteration of the algorithm.

See also
ProgressInfo

Definition at line 195 of file pantr.hpp.

◆ get_name()

std::string get_name ( ) const

Definition at line 20 of file pantr.tpp.

◆ stop()

template<class DirectionT >
void stop ( )
inline

Definition at line 202 of file pantr.hpp.

+ Here is the call graph for this function:

◆ get_params()

template<class DirectionT >
const Params & get_params ( ) const
inline

Definition at line 204 of file pantr.hpp.

Member Data Documentation

◆ params

template<class DirectionT >
Params params
private

Definition at line 207 of file pantr.hpp.

◆ stop_signal

template<class DirectionT >
AtomicStopSignal stop_signal
private

Definition at line 208 of file pantr.hpp.

◆ progress_cb

template<class DirectionT >
std::function<void(const ProgressInfo &)> progress_cb
private

Definition at line 209 of file pantr.hpp.

◆ direction

template<class DirectionT >
Direction direction

Definition at line 213 of file pantr.hpp.

◆ os

template<class DirectionT >
std::ostream* os = &std::cout

Definition at line 214 of file pantr.hpp.


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