24template <
class LoadedProblem>
 
   27    if (!direction.empty())
 
   28        throw std::invalid_argument(
 
   29            "FISTA solver does not support any directions");
 
   34    return std::make_shared<SolverWrapper>(
 
   35        [solver{std::move(solver)}, N_exp](
 
 
 
   46    return make_fista_driver_impl<LoadedProblem>(direction, opts);
 
 
SolverResults run_alm_solver(LoadedProblem &problem, Solver &solver, std::ostream &os, unsigned N_exp)
 
auto make_alm_solver(InnerSolver &&inner_solver, Options &opts)
 
Augmented Lagrangian Method solver.
 
#define USING_ALPAQA_CONFIG(Conf)
 
SharedSolverWrapper make_fista_driver(std::string_view direction, Options &opts)
 
unsigned print_interval
When to print progress.
 
unsigned max_iter
Maximum number of inner FISTA iterations.
 
PANOCStopCrit stop_crit
What stopping criterion to use.
 
@ FPRNorm
∞-norm of fixed point residual:
 
auto attach_cancellation(Solver &solver)
Attach SIGINT and SIGTERM handlers to stop the given solver.
 
SharedSolverWrapper make_fista_driver_impl(std::string_view direction, Options &opts)
 
auto make_inner_fista_solver(Options &opts)
 
decltype(auto) set_params(T &t, std::string_view prefix, Options &opts)
 
std::shared_ptr< SolverWrapper > SharedSolverWrapper