QRSlv
From ASCEND
| NLA |
|---|
| QRSlv |
| CMSlv |
| IPSlv |
| Opt |
| NLP |
| CONOPT |
| IPOPT |
| TRON |
| MINOS |
| NGSlv |
| OptSQP |
| DAE/ODE |
| IDA |
| LSODE |
| DOPRI5 |
| LA |
| linsolqr |
| linsol |
| LP |
| MakeMPS |
| Logic |
| LRSlv |
QRSlv is the main non-linear algebraic solver (NLA) in ASCEND.
Current standard ASCEND nonlinear solver. Note that this code includes an SQP optimization capability that is always turned off at this time as it does not quite work. The math behind the optimization part is in Joe Zaher's PhD thesis (see ASCEND bibliography). It would be very worthwhile to try to make this code function correctly. It is based on SQP with a twist: to add in a quadratic penalty term to the objective. This removes some of the nonsmooth behavior of other implementations.
[edit] Solver Parameters
The definitive reference is the source code, see qrslv.c or by accessing the GUI, which provides some limited explanation for the various parameters. We will attempt to gradually document the parameters here, where further explanation is thought worthwhile.
- feastol. Tolerance for 'satisfied' relations. How it is applied depends on the value of convopt.
- convopt. If set to RELNOMSCALE, a relation is consider satisfied if the residual is less than feastol multiplied by the relation nominal. If set to ABSOLUTE, the absolute value of the residual must be less than feastol.
The relation nominal is determined using the routine CalcRelationNominal, which gives the absolute value of the maximum affine term, or 1.0 for a black box.

