#include <IpLeastSquareMults.hpp>
The Calculate method of this class computes the least-square estimate for the y_c and y_d multiplers, based on the current values of the gradient of the Lagrangian.
Public Member Functions | |
virtual bool | InitializeImpl (const OptionsList &options, const std::string &prefix) |
overloaded from AlgorithmStrategyObject | |
virtual bool | CalculateMultipliers (Vector &y_c, Vector &y_d) |
This method computes the least-square estimates for y_c and y_d at the current point. | |
Constructors/Destructors | |
LeastSquareMultipliers (AugSystemSolver &augSysSolver) | |
Constructor. | |
virtual | ~LeastSquareMultipliers () |
Default destructor. |
LeastSquareMultipliers | ( | AugSystemSolver & | augSysSolver | ) |
Constructor.
It needs to be given the strategy object for solving the augmented system.
virtual ~LeastSquareMultipliers | ( | ) | [inline, virtual] |
Default destructor.
bool InitializeImpl | ( | const OptionsList & | options, | |
const std::string & | prefix | |||
) | [virtual] |
overloaded from AlgorithmStrategyObject
Implements EqMultiplierCalculator.
References AlgorithmStrategyObject::IpCq(), AlgorithmStrategyObject::IpData(), AlgorithmStrategyObject::IpNLP(), and AlgorithmStrategyObject::Jnlst().
This method computes the least-square estimates for y_c and y_d at the current point.
The return value is false, if the least square system could not be solved (the linear system is singular).
Implements EqMultiplierCalculator.
References IpoptData::curr(), IpoptCalculatedQuantities::curr_grad_f(), IpoptCalculatedQuantities::curr_jac_c(), IpoptCalculatedQuantities::curr_jac_d(), DBG_PRINT_MATRIX, DBG_PRINT_VECTOR, DBG_START_METH, Ipopt::GetRawPtr(), AlgorithmStrategyObject::IpCq(), AlgorithmStrategyObject::IpData(), AlgorithmStrategyObject::IpNLP(), Vector::MakeNew(), IpoptNLP::Pd_L(), IpoptNLP::Pd_U(), IpoptNLP::Px_L(), IpoptNLP::Px_U(), Ipopt::SYMSOLVER_SUCCESS, and IpoptNLP::uninitialized_h().