|
QPALM
develop
Proximal Augmented Lagrangian method for Quadratic Programs
|
settings derived type with component defaults bound to C’s QPALMSettings
Definition at line 78 of file qpalm_fiface.F90.
Collaboration diagram for qpalm_fiface::qpalm_settings:Data Fields | |
| integer(kind=integer_kind_qpalm) | max_iter = 10000 |
| maximum number of iterations: > 0 | |
| integer(kind=integer_kind_qpalm) | inner_max_iter = 100 |
| maximum number of iterations per subproblem: > 0 | |
| real(kind=real_kind_qpalm) | eps_abs = ten ** ( - 4 ) |
| absolute convergence tolerance: >= 0, either eps_abs or eps_rel must be > 0 | |
| real(kind=real_kind_qpalm) | eps_rel = ten ** ( - 4 ) |
| relative convergence tolerance: >= 0, either eps_abs or eps_rel must be > 0 | |
| real(kind=real_kind_qpalm) | eps_abs_in = 1.0_real_kind_qpalm |
| intermediate absolute convergence tolerance: >= 0, either eps_abs_in or eps_rel_in must be > 0 | |
| real(kind=real_kind_qpalm) | eps_rel_in = 1.0_real_kind_qpalm |
| intermediate relative convergence tolerance: >= 0, either eps_abs_in or eps_rel_in must be > 0 | |
| real(kind=real_kind_qpalm) | rho = 0.1_real_kind_qpalm |
| tolerance scaling factor: 0 < rho < 1 | |
| real(kind=real_kind_qpalm) | eps_prim_inf = ten ** ( - 5 ) |
| primal infeasibility tolerance: >= 0 | |
| real(kind=real_kind_qpalm) | eps_dual_inf = ten ** ( - 5 ) |
| dual infeasibility tolerance: >= 0 | |
| real(kind=real_kind_qpalm) | theta = 0.25_real_kind_qpalm |
| penalty update criterion parameter: <= 1 | |
| real(kind=real_kind_qpalm) | delta = 100.0_real_kind_qpalm |
| penalty update factor: > 1 | |
| real(kind=real_kind_qpalm) | sigma_max = ten ** 9 |
| penalty factor cap: > 0 | |
| real(kind=real_kind_qpalm) | sigma_init = 20.0_real_kind_qpalm |
| initial penalty parameter (guideline): > 0 | |
| integer(kind=integer_kind_qpalm) | proximal = 1 |
| boolean, use proximal method of multipliers or not: in {0,1} | |
| real(kind=real_kind_qpalm) | gamma_init = ten ** 7 |
| initial proximal penalty parameter: > 0 | |
| real(kind=real_kind_qpalm) | gamma_upd = 10.0_real_kind_qpalm |
| proximal penalty update factor: >= 1 | |
| real(kind=real_kind_qpalm) | gamma_max = ten ** 7 |
| proximal penalty parameter cap: >= gamma_init | |
| integer(kind=integer_kind_qpalm) | scaling = 10 |
| scaling iterations, if 0 then scaling is disabled: >= 0 | |
| integer(kind=integer_kind_qpalm) | nonconvex = 0 |
| boolean, indicates whether the QP is nonconvex: in {0,1} | |
| integer(kind=integer_kind_qpalm) | verbose = 1 |
| boolean, write out progress: in {0,1} | |
| integer(kind=integer_kind_qpalm) | print_iter = 1 |
| frequency of printing: > 0 | |
| integer(kind=integer_kind_qpalm) | warm_start = 0 |
| boolean, warm start: in {0,1} | |
| integer(kind=integer_kind_qpalm) | reset_newton_iter = 10000 |
| frequency of performing a complete Cholesky factorization: > 0 | |
| integer(kind=integer_kind_qpalm) | enable_dual_termination = 0 |
| boolean, enable termination based on dual objective (useful in branch and bound): in {0,1} | |
| real(kind=real_kind_qpalm) | dual_objective_limit = ten ** 20 |
| termination value for the dual objective (useful in branch and bound) | |
| real(kind=real_kind_qpalm) | time_limit = ten ** 20 |
| time limit: > 0 | |
| integer(kind=integer_kind_qpalm) | ordering = 1 |
| ordering method for factorization: 0 No ordering is performed during the symbolic part of the factorization 1 Ordering method during the symbolic part of the factorization 2 The ordering was computed previously and is already stored | |
| integer(kind=integer_kind_qpalm) | factorization_method = 2 |
| factorize KKT or Schur complement: 0 factorize the kkt system 1 factorize the Schur complement 2 select automatically between kkt system and schur complemen | |
| integer(kind=integer_kind_qpalm) | max_rank_update = 160 |
| maximum rank for the sparse factorization update | |
| real(kind=real_kind_qpalm) | max_rank_update_fraction = 0.1_real_kind_qpalm |
| maximum rank (relative to n+m) for the factorization update | |
| integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::max_iter = 10000 |
maximum number of iterations: > 0
Definition at line 82 of file qpalm_fiface.F90.
| integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::inner_max_iter = 100 |
maximum number of iterations per subproblem: > 0
Definition at line 86 of file qpalm_fiface.F90.
| real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::eps_abs = ten ** ( - 4 ) |
absolute convergence tolerance: >= 0, either eps_abs or eps_rel must be > 0
Definition at line 91 of file qpalm_fiface.F90.
| real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::eps_rel = ten ** ( - 4 ) |
relative convergence tolerance: >= 0, either eps_abs or eps_rel must be > 0
Definition at line 96 of file qpalm_fiface.F90.
| real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::eps_abs_in = 1.0_real_kind_qpalm |
intermediate absolute convergence tolerance: >= 0, either eps_abs_in or eps_rel_in must be > 0
Definition at line 101 of file qpalm_fiface.F90.
| real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::eps_rel_in = 1.0_real_kind_qpalm |
intermediate relative convergence tolerance: >= 0, either eps_abs_in or eps_rel_in must be > 0
Definition at line 106 of file qpalm_fiface.F90.
| real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::rho = 0.1_real_kind_qpalm |
tolerance scaling factor: 0 < rho < 1
Definition at line 110 of file qpalm_fiface.F90.
| real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::eps_prim_inf = ten ** ( - 5 ) |
primal infeasibility tolerance: >= 0
Definition at line 114 of file qpalm_fiface.F90.
| real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::eps_dual_inf = ten ** ( - 5 ) |
dual infeasibility tolerance: >= 0
Definition at line 118 of file qpalm_fiface.F90.
| real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::theta = 0.25_real_kind_qpalm |
penalty update criterion parameter: <= 1
Definition at line 122 of file qpalm_fiface.F90.
| real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::delta = 100.0_real_kind_qpalm |
penalty update factor: > 1
Definition at line 126 of file qpalm_fiface.F90.
| real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::sigma_max = ten ** 9 |
penalty factor cap: > 0
Definition at line 130 of file qpalm_fiface.F90.
| real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::sigma_init = 20.0_real_kind_qpalm |
initial penalty parameter (guideline): > 0
Definition at line 134 of file qpalm_fiface.F90.
| integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::proximal = 1 |
boolean, use proximal method of multipliers or not: in {0,1}
Definition at line 138 of file qpalm_fiface.F90.
| real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::gamma_init = ten ** 7 |
initial proximal penalty parameter: > 0
Definition at line 142 of file qpalm_fiface.F90.
| real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::gamma_upd = 10.0_real_kind_qpalm |
proximal penalty update factor: >= 1
Definition at line 146 of file qpalm_fiface.F90.
| real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::gamma_max = ten ** 7 |
proximal penalty parameter cap: >= gamma_init
Definition at line 150 of file qpalm_fiface.F90.
| integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::scaling = 10 |
scaling iterations, if 0 then scaling is disabled: >= 0
Definition at line 154 of file qpalm_fiface.F90.
| integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::nonconvex = 0 |
boolean, indicates whether the QP is nonconvex: in {0,1}
Definition at line 158 of file qpalm_fiface.F90.
| integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::verbose = 1 |
boolean, write out progress: in {0,1}
Definition at line 162 of file qpalm_fiface.F90.
| integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::print_iter = 1 |
frequency of printing: > 0
Definition at line 166 of file qpalm_fiface.F90.
| integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::warm_start = 0 |
boolean, warm start: in {0,1}
Definition at line 170 of file qpalm_fiface.F90.
| integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::reset_newton_iter = 10000 |
frequency of performing a complete Cholesky factorization: > 0
Definition at line 174 of file qpalm_fiface.F90.
| integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::enable_dual_termination = 0 |
boolean, enable termination based on dual objective (useful in branch and bound): in {0,1}
Definition at line 179 of file qpalm_fiface.F90.
| real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::dual_objective_limit = ten ** 20 |
termination value for the dual objective (useful in branch and bound)
Definition at line 183 of file qpalm_fiface.F90.
| real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::time_limit = ten ** 20 |
time limit: > 0
Definition at line 187 of file qpalm_fiface.F90.
| integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::ordering = 1 |
ordering method for factorization: 0 No ordering is performed during the symbolic part of the factorization 1 Ordering method during the symbolic part of the factorization 2 The ordering was computed previously and is already stored
Definition at line 194 of file qpalm_fiface.F90.
| integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::factorization_method = 2 |
factorize KKT or Schur complement: 0 factorize the kkt system 1 factorize the Schur complement 2 select automatically between kkt system and schur complemen
Definition at line 201 of file qpalm_fiface.F90.
| integer ( kind = integer_kind_qpalm ) qpalm_fiface::qpalm_settings::max_rank_update = 160 |
maximum rank for the sparse factorization update
Definition at line 205 of file qpalm_fiface.F90.
| real ( kind = real_kind_qpalm ) qpalm_fiface::qpalm_settings::max_rank_update_fraction = 0.1_real_kind_qpalm |
maximum rank (relative to n+m) for the factorization update
Definition at line 209 of file qpalm_fiface.F90.