Custom memory allocation, print and utility functions, and data types for floats and ints.
ladel_int c_int
type for integer numbers
ladel_double c_float
type for floating point numbers
void initialize_sigma(QPALMWorkspace *work, solver_common *c)
Initialize penalty factors from initial x.
c_float compute_dual_objective(QPALMWorkspace *work, solver_common *c)
Compute the (unscaled) dual objective value at the current iterate.
void update_dual_iterate_and_parameters(QPALMWorkspace *work, solver_common *c, c_int iter_out, c_float *eps_k_abs, c_float *eps_k_rel)
void update_gamma(QPALMWorkspace *work)
Update the proximal penalty.
void update_proximal_point_and_penalty(QPALMWorkspace *work, solver_common *c, c_int iter_out, c_float *eps_k_abs, c_float *eps_k_rel)
void update_sigma(QPALMWorkspace *work, solver_common *c)
Update the penalty factors.
void update_or_boost_gamma(QPALMWorkspace *work, solver_common *c, c_int iter_out)
void update_primal_iterate(QPALMWorkspace *work, solver_common *c)
Update the primal iterate.
c_float compute_objective(QPALMWorkspace *work)
Compute the (unscaled) primal objective value at the current iterate.
void boost_gamma(QPALMWorkspace *work, solver_common *c)
Maximize the proximal penalty.
void compute_residuals(QPALMWorkspace *work, solver_common *c)
Compute the residuals (in vector form)
Internal data structures used in QPALM.