Pipal  1.2.0
Penalty Interior-Point ALgorithm
Loading...
Searching...
No Matches
Pipal::Parameter< Real > Struct Template Reference

Internal parameters for the solver algorithm. More...

#include <Types.hxx>

Public Member Functions

 Parameter ()=default
 Default constructor.
 Parameter (Parameter const &)=delete
 Delete copy constructor and assignment operator.
Parameteroperator= (Parameter const &)=delete
 Delete copy constructor and assignment operator.

Public Attributes

Real opt_err_tol {1.0e-6}
Integer iter_max {1000}
Algorithm algorithm {Algorithm::ADAPTIVE}
Real mu_max_exp {0.0}
Integer bfgs_update_freq {20}

Static Public Attributes

static constexpr Real rhs_bnd {1.0e+18}
static constexpr Real grad_max {1.0e+02}
static constexpr Real infeas_max {1.0e+02}
static constexpr Real nnz_max {2.0e+04}
static constexpr Integer opt_err_mem {6}
static constexpr Real ls_factor {5.0e-01}
static constexpr Real ls_thresh {1.0e-08}
static constexpr Real ls_frac {1.0e-02}
static constexpr Real slack_min {1.0e-20}
static constexpr Real shift_min {1.0e-12}
static constexpr Real shift_factor1 {5.0e-01}
static constexpr Real shift_factor2 {6.0e-01}
static constexpr Real shift_max {1.0e+08}
static constexpr Real rho_init {1.0e-01}
static constexpr Real rho_min {1.0e-12}
static constexpr Real rho_factor {5.0e-01}
static constexpr Integer rho_trials {8}
static constexpr Real mu_init {1.0e-01}
static constexpr Real mu_min {1.0e-12}
static constexpr Real mu_factor {1.0e-01}
static constexpr Real mu_factor_exp {1.5}
static constexpr Integer mu_trials {4}
static constexpr Real mu_max {1.0e-01}
static constexpr Real mu_max_exp0 {0.0}
static constexpr Real update_con_1 {1.0e-02}
static constexpr Real update_con_2 {1.0e-02}
static constexpr Real update_con_3 {1.01}

Detailed Description

template<typename Real>
struct Pipal::Parameter< Real >
Template Parameters
RealThe real number type.

Constructor & Destructor Documentation

◆ Parameter() [1/2]

template<typename Real>
Pipal::Parameter< Real >::Parameter ( )
default

◆ Parameter() [2/2]

template<typename Real>
Pipal::Parameter< Real >::Parameter ( Parameter< Real > const & )
delete

Member Function Documentation

◆ operator=()

template<typename Real>
Parameter & Pipal::Parameter< Real >::operator= ( Parameter< Real > const & )
delete

Member Data Documentation

◆ algorithm

template<typename Real>
Algorithm Pipal::Parameter< Real >::algorithm {Algorithm::ADAPTIVE}

Algorithm choice.

◆ bfgs_update_freq

template<typename Real>
Integer Pipal::Parameter< Real >::bfgs_update_freq {20}

BFGS update frequency.

◆ grad_max

template<typename Real>
Real Pipal::Parameter< Real >::grad_max {1.0e+02}
staticconstexpr

Gradient norm limit for scaling.

◆ infeas_max

template<typename Real>
Real Pipal::Parameter< Real >::infeas_max {1.0e+02}
staticconstexpr

Infeasibility limit for penalty parameter update.

◆ iter_max

template<typename Real>
Integer Pipal::Parameter< Real >::iter_max {1000}

Default iteration limit.

◆ ls_factor

template<typename Real>
Real Pipal::Parameter< Real >::ls_factor {5.0e-01}
staticconstexpr

Line search reduction factor.

◆ ls_frac

template<typename Real>
Real Pipal::Parameter< Real >::ls_frac {1.0e-02}
staticconstexpr

Line search fraction-to-boundary constant.

◆ ls_thresh

template<typename Real>
Real Pipal::Parameter< Real >::ls_thresh {1.0e-08}
staticconstexpr

Line search threshold value.

◆ mu_factor

template<typename Real>
Real Pipal::Parameter< Real >::mu_factor {1.0e-01}
staticconstexpr

Interior-point parameter reduction factor.

◆ mu_factor_exp

template<typename Real>
Real Pipal::Parameter< Real >::mu_factor_exp {1.5}
staticconstexpr

Interior-point parameter reduction exponent.

◆ mu_init

template<typename Real>
Real Pipal::Parameter< Real >::mu_init {1.0e-01}
staticconstexpr

Interior-point parameter initial value.

◆ mu_max

template<typename Real>
Real Pipal::Parameter< Real >::mu_max {1.0e-01}
staticconstexpr

Interior-point parameter maximum value.

◆ mu_max_exp

template<typename Real>
Real Pipal::Parameter< Real >::mu_max_exp {0.0}

Interior-point parameter maximum exponent in increases.

◆ mu_max_exp0

template<typename Real>
Real Pipal::Parameter< Real >::mu_max_exp0 {0.0}
staticconstexpr

Interior-point parameter maximum exponent in increases (default).

◆ mu_min

template<typename Real>
Real Pipal::Parameter< Real >::mu_min {1.0e-12}
staticconstexpr

Interior-point parameter minimum value.

◆ mu_trials

template<typename Real>
Integer Pipal::Parameter< Real >::mu_trials {4}
staticconstexpr

Interior-point parameter number of trial values per iteration.

◆ nnz_max

template<typename Real>
Real Pipal::Parameter< Real >::nnz_max {2.0e+04}
staticconstexpr

Maximum non-zeros in (upper triangle of) Newton matrix.

◆ opt_err_mem

template<typename Real>
Integer Pipal::Parameter< Real >::opt_err_mem {6}
staticconstexpr

Optimality error history length.

◆ opt_err_tol

template<typename Real>
Real Pipal::Parameter< Real >::opt_err_tol {1.0e-6}

Default optimality tolerance.

◆ rho_factor

template<typename Real>
Real Pipal::Parameter< Real >::rho_factor {5.0e-01}
staticconstexpr

Penalty parameter reduction factor.

◆ rho_init

template<typename Real>
Real Pipal::Parameter< Real >::rho_init {1.0e-01}
staticconstexpr

Penalty parameter initial value.

◆ rho_min

template<typename Real>
Real Pipal::Parameter< Real >::rho_min {1.0e-12}
staticconstexpr

Penalty parameter minimum value.

◆ rho_trials

template<typename Real>
Integer Pipal::Parameter< Real >::rho_trials {8}
staticconstexpr

Penalty parameter number of trial values per iteration.

◆ rhs_bnd

template<typename Real>
Real Pipal::Parameter< Real >::rhs_bnd {1.0e+18}
staticconstexpr

Maximum absolute value allowed for constraint right-hand side.

◆ shift_factor1

template<typename Real>
Real Pipal::Parameter< Real >::shift_factor1 {5.0e-01}
staticconstexpr

Hessian shift update value (for decreases).

◆ shift_factor2

template<typename Real>
Real Pipal::Parameter< Real >::shift_factor2 {6.0e-01}
staticconstexpr

Hessian shift update value (for increases).

◆ shift_max

template<typename Real>
Real Pipal::Parameter< Real >::shift_max {1.0e+08}
staticconstexpr

Hessian shift maximum value.

◆ shift_min

template<typename Real>
Real Pipal::Parameter< Real >::shift_min {1.0e-12}
staticconstexpr

Hessian shift (non-zero) minimum value.

◆ slack_min

template<typename Real>
Real Pipal::Parameter< Real >::slack_min {1.0e-20}
staticconstexpr

Slack variable bound.

◆ update_con_1

template<typename Real>
Real Pipal::Parameter< Real >::update_con_1 {1.0e-02}
staticconstexpr

Steering rule constant 1.

◆ update_con_2

template<typename Real>
Real Pipal::Parameter< Real >::update_con_2 {1.0e-02}
staticconstexpr

Steering rule constant 2.

◆ update_con_3

template<typename Real>
Real Pipal::Parameter< Real >::update_con_3 {1.01}
staticconstexpr

Adaptive interior-point rule constant.


The documentation for this struct was generated from the following file: