vendor/scs/include/scs_work.h in scs-0.3.2 vs vendor/scs/include/scs_work.h in scs-0.4.0

- old
+ new

@@ -7,10 +7,12 @@ #ifdef __cplusplus extern "C" { #endif +#include "scs.h" + /** Contains normalization variables. */ typedef struct { scs_float *D, *E; /* for normalization */ scs_int m; /* Length of D */ scs_int n; /* Length of E */ @@ -38,44 +40,39 @@ scs_float res_unbdd_a; /* tau NOT divided out */ scs_float *ax, *ax_s, *px, *aty, *ax_s_btau, *px_aty_ctau; } ScsResiduals; -/** Workspace for SCS */ +/** Workspace for SCS. */ struct SCS_WORK { /* x_prev = x from previous iteration */ - scs_int time_limit_reached; /* set if the time-limit is reached */ + scs_float setup_time; /* time taken for setup phase (milliseconds) */ + scs_int time_limit_reached; /* boolean, if the time-limit is reached */ scs_float *u, *u_t; scs_float *v, *v_prev; scs_float *rsk; /* rsk [ r; s; kappa ] */ scs_float *h; /* h = [c; b] */ scs_float *g; /* g = (I + M)^{-1} h */ scs_float *lin_sys_warm_start; /* linear system warm-start (indirect only) */ scs_float *diag_r; /* vector of R matrix diagonals (affects cone proj) */ - AaWork *accel; /* struct for acceleration workspace */ - scs_float *b_orig, *c_orig; /* original b and c vectors */ - scs_float *b_normalized, *c_normalized; /* normalized b and c vectors */ - scs_int m, n; /* A has m rows, n cols */ - ScsMatrix *A; /* (possibly normalized) A matrix */ - ScsMatrix *P; /* (possibly normalized) P matrix */ - ScsLinSysWork *p; /* struct populated by linear system solver */ - ScsScaling *scal; /* contains the re-scaling data */ - ScsConeWork *cone_work; /* workspace for the cone projection step */ + scs_float *b_orig, *c_orig; /* original unnormalized b and c vectors */ + AaWork *accel; /* struct for acceleration workspace */ + ScsData *d; /* Problem data deep copy NORMALIZED */ + ScsCone *k; /* Problem cone deep copy */ + ScsSettings *stgs; /* contains solver settings specified by user */ + ScsLinSysWork *p; /* struct populated by linear system solver */ + ScsScaling *scal; /* contains the re-scaling data */ + ScsConeWork *cone_work; /* workspace for the cone projection step */ /* normalized and unnormalized residuals */ ScsResiduals *r_orig, *r_normalized; /* track x,y,s as alg progresses, tau *not* divided out */ ScsSolution *xys_orig, *xys_normalized; - /* updating scale params workspace */ + /* Scale updating workspace */ scs_float sum_log_scale_factor; scs_int last_scale_update_iter, n_log_scale_factor, scale_updates; - /* aa norm stat */ + /* AA stats */ scs_float aa_norm; scs_int rejected_accel_steps, accepted_accel_steps; - scs_float setup_time; /* time taken for setup phase (milliseconds) */ - scs_float scale; /* current scale parameter */ - const ScsData *d; - const ScsCone *k; - const ScsSettings *stgs; /* contains solver settings specified by user */ }; #ifdef __cplusplus } #endif