#include <types.h>
QPALM Workspace.
The workspace is the main data structure and is given as a pointer to (almost) all QPALM functions. It contains pointers to the settings, the data, return info, solution variables and intermediate workspace variables.
Data Fields | |
QPALMData * | data |
problem data to work on (possibly scaled) More... | |
QPALMSolver * | solver |
linsys variables More... | |
QPALMSettings * | settings |
problem settings More... | |
QPALMScaling * | scaling |
scaling vectors More... | |
QPALMSolution * | solution |
problem solution More... | |
QPALMInfo * | info |
solver information More... | |
QPALMTimer * | timer |
timer object More... | |
Iterates | |
c_float * | x |
primal iterate More... | |
c_float * | y |
dual iterate More... | |
c_float * | Ax |
scaled A * x More... | |
c_float * | Qx |
scaled Q * x More... | |
c_float * | Aty |
A' * y (useful for saving one mat_tpose_vec) More... | |
c_float * | x_prev |
previous primal iterate More... | |
c_int | initialized |
flag whether the iterates were initialized or not More... | |
Workspace variables | |
c_float * | temp_m |
placeholder for vector of size m More... | |
c_float * | temp_n |
placeholder for vector of size n More... | |
c_float * | sigma |
penalty vector More... | |
c_float * | sigma_inv |
1./sigma More... | |
c_float | sqrt_sigma_max |
sqrt(sigma_max) More... | |
c_int | nb_sigma_changed |
number of sigma-components that changed in an outer iteration (relevant for factorization update) More... | |
c_float | gamma |
proximal penalty factor More... | |
c_int | gamma_maxed |
flag to indicate whether gamma has been maximized when the primal residual was low More... | |
c_float * | Axys |
Ax + y./sigma. More... | |
c_float * | z |
projection of Axys onto the constraint set [bmin, bmax] More... | |
c_float * | pri_res |
primal residual More... | |
c_float * | pri_res_in |
intermediate primal residual More... | |
c_float * | yh |
candidate dual update More... | |
c_float * | Atyh |
A' * yh. More... | |
c_float * | df |
gradient of the primal objective (+proximal term) More... | |
c_float * | x0 |
record of the primal iterate during the last dual update More... | |
c_float * | xx0 |
x - x0 More... | |
c_float * | dphi |
gradient of the Lagrangian More... | |
c_float * | neg_dphi |
-dphi, required as the rhs in SCHUR More... | |
c_float * | dphi_prev |
previous gradient of the Lagrangian More... | |
c_float * | d |
primal update step More... | |
Linesearch variables | |
c_float | tau |
stepsize More... | |
c_float * | Qd |
Q * d. More... | |
c_float * | Ad |
A * d. More... | |
c_float * | sqrt_sigma |
elementwise sqrt(sigma) More... | |
c_float | sqrt_delta |
sqrt(penalty update factor) More... | |
c_float | eta |
linesearch parameter More... | |
c_float | beta |
linesearch parameter More... | |
c_float * | delta |
linesearch parameter More... | |
c_float * | alpha |
linesearch parameter More... | |
c_float * | temp_2m |
placeholder for vector of size 2m More... | |
c_float * | delta2 |
delta .* delta More... | |
c_float * | delta_alpha |
delta .* alpha More... | |
array_element * | s |
alpha ./ delta More... | |
c_int * | index_L |
index set L (where s>0) More... | |
c_int * | index_P |
index set P (where delta>0) More... | |
c_int * | index_J |
index set J (L xor P) More... | |
Termination criteria variables | |
c_float | eps_pri |
primal tolerance More... | |
c_float | eps_dua |
dual tolerance More... | |
c_float | eps_dua_in |
intermediate dual tolerance More... | |
c_float | eps_abs_in |
intermediate absolute tolerance More... | |
c_float | eps_rel_in |
intermediate relative tolerance More... | |
Primal infeasibility variables | |
c_float * | delta_y |
difference of consecutive dual iterates More... | |
c_float * | Atdelta_y |
A' * delta_y. More... | |
Dual infeasibility variables | |
c_float * | delta_x |
difference of consecutive primal iterates More... | |
c_float * | Qdelta_x |
Q * delta_x. More... | |
c_float * | Adelta_x |
A * delta_x. More... | |
Temporary vectors used in scaling | |
c_float * | D_temp |
temporary primal variable scaling vectors More... | |
c_float * | E_temp |
temporary constraints scaling vectors More... | |
c_float* QPALMWorkspace::Aty |
c_float* QPALMWorkspace::D_temp |
QPALMData* QPALMWorkspace::data |
c_float* QPALMWorkspace::delta_x |
c_float* QPALMWorkspace::delta_y |
c_float* QPALMWorkspace::df |
c_float* QPALMWorkspace::dphi_prev |
c_float* QPALMWorkspace::E_temp |
c_float QPALMWorkspace::eps_abs_in |
c_float QPALMWorkspace::eps_dua_in |
c_float QPALMWorkspace::eps_rel_in |
c_int QPALMWorkspace::gamma_maxed |
QPALMInfo* QPALMWorkspace::info |
c_int QPALMWorkspace::initialized |
c_int QPALMWorkspace::nb_sigma_changed |
c_float* QPALMWorkspace::neg_dphi |
c_float* QPALMWorkspace::pri_res_in |
array_element* QPALMWorkspace::s |
QPALMScaling* QPALMWorkspace::scaling |
QPALMSettings* QPALMWorkspace::settings |
QPALMSolution* QPALMWorkspace::solution |
QPALMSolver* QPALMWorkspace::solver |
c_float QPALMWorkspace::sqrt_delta |
c_float* QPALMWorkspace::temp_2m |
c_float* QPALMWorkspace::temp_m |
c_float* QPALMWorkspace::temp_n |
QPALMTimer* QPALMWorkspace::timer |
c_float* QPALMWorkspace::x0 |
c_float* QPALMWorkspace::z |