Linear solver used for step computations.
Determines which linear algebra package is to be used for the solution of the augmented linear system (for obtaining the search directions). Note, the code must have been compiled with the linear solver you want to choose. Depending on your Ipopt installation, not all options are available. The default value for this string option is "ma27".
- ma27: use the Harwell routine MA27
- ma57: use the Harwell routine MA57
- ma77: use the Harwell routine HSL_MA77
- ma86: use the Harwell routine HSL_MA86
- ma97: use the Harwell routine HSL_MA97
- pardiso: use the Pardiso package
- wsmp: use WSMP package
- mumps: use MUMPS package
- custom: use custom linear solver
Method for scaling the linear system.
Determines the method used to compute symmetric scaling factors for the augmented system (see also the "linear_scaling_on_demand" option). This scaling is independent of the NLP problem scaling. By default, MC19 is only used if MA27 or MA57 are selected as linear solvers. This value is only available if Ipopt has been compiled with MC19. The default value for this string option is "mc19".
- none: no scaling will be performed
- mc19: use the Harwell routine MC19
- slack-based: use the slack values
Flag indicating that linear scaling is only done if it seems required.
This option is only important if a linear scaling method (e.g., mc19) is used. If you choose "no", then the scaling factors are computed for every linear system from the start. This can be quite expensive. Choosing "yes" means that the algorithm will start the scaling method only when the solutions to the linear system seem not good, and then use it until the end. The default value for this string option is "yes".
- no: Always scale the linear system.
- yes: Start using linear system scaling if solutions seem not good.
Maximum number of iterative refinement steps per linear system solve.
Iterative refinement (on the full unsymmetric system) is performed for each right hand side. This option determines the maximum number of iterative refinement steps. The valid range for this integer option is
and its default value is .
Minimum number of iterative refinement steps per linear system solve.
Iterative refinement (on the full unsymmetric system) is performed for each right hand side. This option determines the minimum number of iterative refinements (i.e. at least "min_refinement_steps" iterative refinement steps are enforced per right hand side.) The valid range for this integer option is
and its default value is .
Whether to do the curvature test with the primal regularization (see Zavala and Chiang, 2014).
The default value for this string option is "yes".
- yes: use primal regularization with the inertia-free curvature test
- no: use original IPOPT approach, in which the primal regularization is ignored
Tolerance for heuristic to ignore wrong inertia.
If nonzero, incorrect inertia in the augmented system is ignored, and Ipopt tests if the direction is a direction of positive curvature. This tolerance is alpha_n in the paper by Zavala and Chiang (2014) and it determines when the direction is considered to be sufficiently positive. A value in the range of [1e-12, 1e-11] is recommended. The valid range for this real option is
and its default value is 0.