#include <Stage.hpp>
Public Types | |
typedef MatrixXd::Index | Index |
typedef SubMatrix< MatrixXd > ::RowIndices | Indirect |
typedef TriangularView < SubMatrixXd, Lower > | TriSubMatrixXd |
typedef TriangularView < const_SubMatrixXd, Lower > | const_TriSubMatrixXd |
typedef VectorBlock < MatrixXd::RowXpr > | RowL |
typedef MatrixXd::RowXpr | RowML |
Public Member Functions | |
Stage (const MatrixXd &J, const VectorBound &bounds, BaseY &Y) | |
Stage (const Index nr, const Index nc, const double *Jdata, const Bound *bdata, const BaseY &Y) | |
Stage (const Index nr, const Index nc, const double *Jdata, const BaseY &Y) | |
void | setInitialActiveSet (void) |
void | setInitialActiveSet (const cstref_vector_t &initialGuess, bool checkTwin=false) |
cstref_vector_t | getOptimalActiveSet (bool withTwin=false) |
void | reset (void) |
void | computeInitialCOD (BaseY &Yinit) |
bool | downdate (const Index position, GivensSequence &Ydown) |
bool | propagateDowndate (GivensSequence &Ydown, bool decreasePreviousRank) |
Index | update (const ConstraintRef &cst, GivensSequence &Yup) |
void | propagateUpdate (GivensSequence &Ydown, Index decreasePreviousRank) |
void | computeSolution (VectorXd &Ytu) const |
void | damp (void) |
template<typename VectorDerived > | |
void | applyDamping (MatrixBase< VectorDerived > &x) const |
template<typename VD1 , typename VD2 > | |
void | applyDamping (MatrixBase< VD1 > &x, MatrixBase< VD2 > &y) const |
template<typename VectorDerived > | |
void | applyDampingTranspose (MatrixBase< VectorDerived > &x) const |
template<typename VD1 , typename VD2 > | |
void | applyDampingTranspose (MatrixBase< VD1 > &x, const MatrixBase< VD2 > &y) const |
void | damping (const double &factor) |
double | damping (void) const |
bool | useDamp (void) const |
void | dampBoundValue (const ConstraintRef &cst, const double &value) |
template<typename D > | |
void | computeError (const VectorXd &Ytu, MatrixBase< D > &err) const |
void | computeError (const VectorXd &Ytu) |
void | computeRho (const VectorXd &Ytu, VectorXd &Ytrho, bool inLambda=false) |
template<typename D > | |
void | computeLagrangeMultipliers (VectorXd &rho, MatrixBase< D > &l) const |
input: rho_under_i = {ro_1, ..., ro_i} on return: lambda_i = Wr_i*L_i^{-T}*rho_i rho_under_{i-1} = rho_under_{i-1} + Mr_i^T*L_i^{-T}*rho_i ??? * rho_i = L_i^{-T}*rho_i (should not be useful). | |
void | computeLagrangeMultipliers (VectorXd &rho) |
bool | checkBound (const VectorXd &u0, const VectorXd &u1, ConstraintRef *, double *tau) |
bool | checkBound (const VectorXd &u0, const VectorXd &u1, ConstraintRef &cstmax, double &taumax) |
bool | maxLambda (const VectorXd &u, double &lmax, Index &row) const |
void | freezeSlacks (const bool &slacks=true) |
void | recompose (MatrixXd &WMLY) const |
void | show (std::ostream &os, Index stageRef, bool check=false) const |
void | showActiveSet (std::ostream &os) const |
SubMatrix< MatrixXd, RowPermutation > | Jactive (MatrixXd &J_) const |
MatrixXd | Jactive () const |
SubVectorXd | eactive (VectorXd &e_) const |
VectorXd | eactive () const |
bool | testRecomposition (void) const |
bool | testSolution (const VectorXd &solution) const |
bool | testUnactiveTwins (void) |
Index | where (Index cst) const |
ConstraintRef | which (Index row) const |
bool | isActive (Index cst) const |
SubMatrixXd | getM () |
const_SubMatrixXd | getM () const |
SubMatrixXd | getL () |
const_SubMatrixXd | getL () const |
TriSubMatrixXd | getLtri () |
const_TriSubMatrixXd | getLtri () const |
TriSubMatrixXd | getLdtri () |
const_TriSubMatrixXd | getLdtri () const |
SubVectorXd | gete () |
const_SubVectorXd | gete () const |
SubVectorXd | getLagrangeMultipliers () |
const_SubVectorXd | getLagrangeMultipliers () const |
MatrixXd | getWr () const |
VectorXd | getLagrangeDamped () const |
RowL | rowL0 (const Index r) |
RowML | rowMrL0 (const Index r) |
RowL | rowML (const Index r) |
Index | rowSize (const Index r) |
Index | nbConstraints (void) const |
Index | sizeA (void) const |
Index | sizeN (void) const |
Index | rank () const |
Index | getSizeM () const |
Index | getSizeL () const |
Public Attributes | |
std::string | name |
Static Public Attributes | |
static double | EPSILON = 1e-8 |
Protected Member Functions | |
void | nullifyLineDeficient (const Index row, const Index in_r) |
void | computeInitialJY () |
void | conditionalWinit (bool id) |
void | regularizeHessenberg (GivensSequence &Ydown) |
Index | nullifyACrossFromW (const Index position) |
void | removeARowFromL (Index row) |
void | removeACrossFromW (const Index &row, const Index &col) |
void | addARow (const Index &mlrowup, bool deficient=false) |
void | computeErrorFromJu (const VectorXd &MLYtu) |
template<typename D > | |
void | computeErrorFromJu (const VectorXd &Ytu, MatrixBase< D > &err) const |
void | computeMLYtu (const VectorXd &Ytu, VectorXd &MLYtu) const |
Protected Attributes | |
MatrixXd | W_ |
MatrixXd | ML_ |
VectorXd | e_ |
VectorXd | lambda_ |
Indirect | Ir |
Indirect | Irn |
Indirect | Iw |
Indirect | Im |
Indirect | Il |
SubMatrixXd | M |
SubMatrixXd | L |
SubMatrixXd | W |
SubMatrixXd | Wr |
SubMatrixXd | Mr |
SubVectorXd | e |
SubVectorXd | lambda |
VectorXd | lambdadamped |
VectorXd | lzfreezed |
bool | isWIdenty |
Index | sizeM |
Index | sizeL |
SubActiveSet< ActiveSet < Indirect >, Indirect > | activeSet |
AllocatorML | freeML |
MatrixXd | Ld_ |
MatrixXd | Ldwork_ |
VectorXd | edwork_ |
SubMatrixXd | Ld |
SubMatrixXd | Ldwork |
SubVectorXd | edwork |
GivensSequence | Wd |
double | dampingFactor |
bool | isReset |
bool | isInit |
bool | isOptimumCpt |
bool | isLagrangeCpt |
bool | isDampCpt |
bool | isFreezed |
Static Protected Attributes | |
static const double | DAMPING_FACTOR = 1e-2 |
typedef TriangularView<const_SubMatrixXd,Lower> soth::Stage::const_TriSubMatrixXd |
typedef MatrixXd::Index soth::Stage::Index |
Reimplemented from soth::BasicStage.
typedef SubMatrix<MatrixXd>::RowIndices soth::Stage::Indirect |
typedef VectorBlock<MatrixXd::RowXpr> soth::Stage::RowL |
typedef MatrixXd::RowXpr soth::Stage::RowML |
typedef TriangularView<SubMatrixXd,Lower> soth::Stage::TriSubMatrixXd |
soth::Stage::Stage | ( | const MatrixXd & | J, |
const VectorBound & | bounds, | ||
BaseY & | Y | ||
) |
References SOTH_STAGE_COMMON_INIT.
soth::Stage::Stage | ( | const Index | nr, |
const Index | nc, | ||
const double * | Jdata, | ||
const Bound * | bdata, | ||
const BaseY & | Y | ||
) |
References SOTH_STAGE_COMMON_INIT.
References SOTH_STAGE_COMMON_INIT.
void soth::Stage::addARow | ( | const Index & | mlrowup, |
bool | deficient = false |
||
) | [protected] |
void soth::Stage::applyDamping | ( | MatrixBase< VectorDerived > & | x | ) | const |
void soth::Stage::applyDamping | ( | MatrixBase< VD1 > & | x, |
MatrixBase< VD2 > & | y | ||
) | const |
void soth::Stage::applyDampingTranspose | ( | MatrixBase< VectorDerived > & | x | ) | const |
References Eigen::ColSelectionImpl< MatrixType, IsSub >::cols(), edwork, isDampCpt, L, Eigen::RowSelectionImpl< MatrixType, IsSub >::rows(), sizeL, sotDEBUG, soth::GivensSequence::transpose(), and Wd.
Referenced by computeSolution().
void soth::Stage::applyDampingTranspose | ( | MatrixBase< VD1 > & | x, |
const MatrixBase< VD2 > & | y | ||
) | const |
bool soth::Stage::checkBound | ( | const VectorXd & | u0, |
const VectorXd & | u1, | ||
ConstraintRef * | cstptr, | ||
double * | tau | ||
) |
bool soth::Stage::checkBound | ( | const VectorXd & | u0, |
const VectorXd & | u1, | ||
ConstraintRef & | cstmax, | ||
double & | taumax | ||
) |
References activeSet, soth::Bound::BOUND_INF, soth::Bound::BOUND_NONE, soth::Bound::BOUND_SUP, soth::Bound::BOUND_TWIN, soth::BasicStage::bounds, soth::Bound::check(), EPSILON, soth::Bound::getBound(), soth::ActiveSet< Indirect >::getBoundDamping(), soth::ActiveSet< Indirect >::isActive(), isDampCpt, soth::BasicStage::J, name, soth::BasicStage::nr, and sotDEBUG.
void soth::Stage::computeError | ( | const VectorXd & | Ytu, |
MatrixBase< D > & | err | ||
) | const |
References computeErrorFromJu(), computeMLYtu(), isInit, and soth::BasicStage::nc.
Referenced by computeError().
void soth::Stage::computeError | ( | const VectorXd & | Ytu | ) |
References computeError(), isInit, isLagrangeCpt, and lambda.
void soth::Stage::computeErrorFromJu | ( | const VectorXd & | MLYtu | ) | [protected] |
References isLagrangeCpt, lambda, and sotDEBUG.
Referenced by computeError().
void soth::Stage::computeErrorFromJu | ( | const VectorXd & | Ytu, |
MatrixBase< D > & | err | ||
) | const [protected] |
void soth::Stage::computeInitialCOD | ( | BaseY & | Yinit | ) |
References Eigen::ColSelectionImpl< MatrixType, IsSub >::cols(), Eigen::DestructiveColPivQR< _MatrixType, _HouseholderStorageType >::colsPermutation(), computeInitialJY(), conditionalWinit(), e, EPSILON, soth::BaseY::getHouseholderEssential(), soth::BaseY::getNextHouseholderEssential(), soth::BaseY::getRank(), soth::BaseY::increaseRank(), isInit, isReset, isWIdenty, soth::BasicStage::J, L, M, soth::BaseY::matrixExplicit, Eigen::DestructiveColPivQR< _MatrixType, _HouseholderStorageType >::matrixR(), ML_, soth::BasicStage::nc, nullifyLineDeficient(), Eigen::DestructiveColPivQR< _MatrixType, _HouseholderStorageType >::rank(), rank(), Eigen::RowSelectionImpl< MatrixType, IsSub >::rows(), Eigen::ColSelectionImpl< MatrixType, IsSub >::setColIndices(), Eigen::ColSelectionImpl< MatrixType, IsSub >::setColRange(), Eigen::RowSelectionImpl< MatrixType, IsSub >::setRowIndices(), Eigen::RowSelectionImpl< MatrixType, IsSub >::setRowRange(), sizeA(), sizeL, sizeM, sotDEBUG, W, and soth::BasicStage::Y.
void soth::Stage::computeInitialJY | ( | void | ) | [protected] |
References activeSet, soth::BaseY::applyThisOnTheLeft(), soth::Bound::BOUND_INF, soth::BasicStage::bounds, soth::SubActiveSet< AS, Indirect >::defrag(), e, e_, freeML, soth::BasicStage::J, ML_, soth::AllocatorML::reset(), soth::AllocatorML::resetTop(), sizeA(), sotDEBUG, testUnactiveTwins(), soth::ActiveSet< Indirect >::whichBound(), and soth::BasicStage::Y.
Referenced by computeInitialCOD().
void soth::Stage::computeLagrangeMultipliers | ( | VectorXd & | rho, |
MatrixBase< D > & | l | ||
) | const |
input: rho_under_i = {ro_1, ..., ro_i} on return: lambda_i = Wr_i*L_i^{-T}*rho_i rho_under_{i-1} = rho_under_{i-1} + Mr_i^T*L_i^{-T}*rho_i ??? * rho_i = L_i^{-T}*rho_i (should not be useful).
References isInit, isWIdenty, L, Mr, soth::BasicStage::nc, sizeA(), sizeL, sizeM, soth::solveInPlaceWithUpperTriangular(), sotDEBUG, and Wr.
Referenced by computeLagrangeMultipliers().
void soth::Stage::computeLagrangeMultipliers | ( | VectorXd & | rho | ) |
References computeLagrangeMultipliers(), isInit, isLagrangeCpt, lambda, and sotDEBUG.
void soth::Stage::computeMLYtu | ( | const VectorXd & | Ytu, |
VectorXd & | MLYtu | ||
) | const [protected] |
References getLtri(), M, soth::BasicStage::nc, sizeL, sizeM, and sotDEBUG.
Referenced by computeError().
void soth::Stage::computeRho | ( | const VectorXd & | Ytu, |
VectorXd & | Ytrho, | ||
bool | inLambda = false |
||
) |
void soth::Stage::computeSolution | ( | VectorXd & | Ytu | ) | const |
void soth::Stage::conditionalWinit | ( | bool | id | ) | [protected] |
Referenced by computeInitialCOD(), propagateDowndate(), propagateUpdate(), and update().
void soth::Stage::damp | ( | void | ) |
void soth::Stage::dampBoundValue | ( | const ConstraintRef & | cst, |
const double & | value | ||
) |
References activeSet, and soth::ActiveSet< Indirect >::dampBoundValue().
Referenced by soth::HCOD::downdate().
void soth::Stage::damping | ( | const double & | factor | ) | [inline] |
Referenced by soth::HCOD::testLagrangeMultipliers().
double soth::Stage::damping | ( | void | ) | const [inline] |
bool soth::Stage::downdate | ( | const Index | position, |
GivensSequence & | Ydown | ||
) |
References activeSet, isDampCpt, isInit, isLagrangeCpt, isOptimumCpt, isWIdenty, L, M, soth::SubActiveSet< AS, Indirect >::mapInv(), name, soth::BasicStage::notifior, nullifyACrossFromW(), regularizeHessenberg(), removeACrossFromW(), Eigen::ColSelectionImpl< MatrixType, IsSub >::removeCol(), sizeL, sizeN(), sotDEBUG, W, and soth::SubActiveSet< AS, Indirect >::whichBoundInv().
SubVectorXd soth::Stage::eactive | ( | VectorXd & | e_ | ) | const |
void soth::Stage::freezeSlacks | ( | const bool & | slacks = true | ) |
SubVectorXd soth::Stage::gete | ( | ) | [inline] |
const_SubVectorXd soth::Stage::gete | ( | ) | const [inline] |
SubMatrixXd soth::Stage::getL | ( | ) | [inline] |
const_SubMatrixXd soth::Stage::getL | ( | ) | const [inline] |
VectorXd soth::Stage::getLagrangeDamped | ( | ) | const [inline] |
SubVectorXd soth::Stage::getLagrangeMultipliers | ( | ) | [inline] |
Referenced by soth::HCOD::testLagrangeMultipliers().
const_SubVectorXd soth::Stage::getLagrangeMultipliers | ( | ) | const [inline] |
TriSubMatrixXd soth::Stage::getLdtri | ( | ) | [inline] |
const_TriSubMatrixXd soth::Stage::getLdtri | ( | ) | const [inline] |
TriSubMatrixXd soth::Stage::getLtri | ( | ) | [inline] |
Referenced by computeMLYtu().
const_TriSubMatrixXd soth::Stage::getLtri | ( | ) | const [inline] |
SubMatrixXd soth::Stage::getM | ( | ) | [inline] |
const_SubMatrixXd soth::Stage::getM | ( | ) | const [inline] |
cstref_vector_t soth::Stage::getOptimalActiveSet | ( | bool | withTwin = false | ) |
Index soth::Stage::getSizeL | ( | ) | const [inline] |
Index soth::Stage::getSizeM | ( | ) | const [inline] |
Referenced by soth::HCOD::testLagrangeMultipliers().
MatrixXd soth::Stage::getWr | ( | ) | const [inline] |
bool soth::Stage::isActive | ( | Index | cst | ) | const |
SubMatrix< MatrixXd, RowPermutation > soth::Stage::Jactive | ( | MatrixXd & | J_ | ) | const |
MatrixXd soth::Stage::Jactive | ( | ) | const |
Referenced by show(), and testRecomposition().
bool soth::Stage::maxLambda | ( | const VectorXd & | u, |
double & | lmax, | ||
Index & | row | ||
) | const |
Index soth::Stage::nbConstraints | ( | void | ) | const [inline] |
Reimplemented from soth::BasicStage.
MatrixXd::Index soth::Stage::nullifyACrossFromW | ( | const Index | position | ) | [protected] |
References soth::Givens::applyTransposeOnTheRight(), isWIdenty, L, Mr, removeARowFromL(), sotDEBUG, W, and Wr.
Referenced by computeInitialCOD(), propagateUpdate(), and update().
bool soth::Stage::propagateDowndate | ( | GivensSequence & | Ydown, |
bool | decreasePreviousRank | ||
) |
References conditionalWinit(), EI_FOREACH, EPSILON, Irn, isDampCpt, isInit, isLagrangeCpt, isOptimumCpt, isWIdenty, L, M, ML_, soth::BasicStage::nr, Eigen::RowSelectionImpl< MatrixType, IsSub >::permuteRows(), Eigen::ColSelectionImpl< MatrixType, IsSub >::popColBack(), Eigen::ColSelectionImpl< MatrixType, IsSub >::pushColFront(), Eigen::RowSelectionImpl< MatrixType, IsSub >::pushRowFront(), regularizeHessenberg(), rowML(), sizeL, sizeM, sizeN(), sotDEBUG, soth::Givens::transpose(), and W.
void soth::Stage::propagateUpdate | ( | GivensSequence & | Ydown, |
Index | decreasePreviousRank | ||
) |
References soth::GivensSequence::applyThisOnTheLeft(), soth::GivensSequence::applyThisOnTheLeftReduced(), conditionalWinit(), isDampCpt, isInit, isLagrangeCpt, isOptimumCpt, L, M, soth::BasicStage::nc, nullifyLineDeficient(), Eigen::ColSelectionImpl< MatrixType, IsSub >::popColFront(), Eigen::ColSelectionImpl< MatrixType, IsSub >::pushColBack(), rowML(), sizeA(), sizeL, sizeM, and sotDEBUG.
Index soth::Stage::rank | ( | ) | const [inline] |
Referenced by computeInitialCOD().
void soth::Stage::recompose | ( | MatrixXd & | WMLY | ) | const |
References soth::BaseY::applyTransposeOnTheLeft(), Eigen::ColSelectionImpl< MatrixType, IsSub >::cols(), isWIdenty, L, M, soth::BasicStage::nc, Eigen::RowSelectionImpl< MatrixType, IsSub >::rows(), sizeA(), sizeL, sizeM, sotDEBUG, W, Wr, and soth::BasicStage::Y.
Referenced by show(), and testRecomposition().
void soth::Stage::regularizeHessenberg | ( | GivensSequence & | Ydown | ) | [protected] |
References soth::GivensSequence::push(), rowMrL0(), sizeL, and sizeM.
Referenced by downdate(), and propagateDowndate().
References activeSet, freeML, Eigen::ColSelectionImpl< MatrixType, IsSub >::getColIndices(), Eigen::RowSelectionImpl< MatrixType, IsSub >::getRowIndices(), Irn, isWIdenty, L, M, soth::AllocatorML::put(), Eigen::ColSelectionImpl< MatrixType, IsSub >::removeCol(), Eigen::RowSelectionImpl< MatrixType, IsSub >::removeRow(), sizeL, sizeN(), sotDEBUG, soth::SubActiveSet< AS, Indirect >::unactiveRow(), and W.
Referenced by downdate().
void soth::Stage::removeARowFromL | ( | Index | row | ) | [protected] |
References isWIdenty, L, M, Eigen::RowSelectionImpl< MatrixType, IsSub >::pushRowFront(), Eigen::RowSelectionImpl< MatrixType, IsSub >::removeRow(), sizeL, sizeN(), and sotDEBUG.
Referenced by nullifyLineDeficient().
void soth::Stage::reset | ( | void | ) |
References isDampCpt, isFreezed, isInit, isLagrangeCpt, isOptimumCpt, isReset, ML_, name, soth::BasicStage::nc, soth::BasicStage::nr, and sotDEBUG.
Stage::RowL soth::Stage::rowL0 | ( | const Index | r | ) |
References Ir, ML_, soth::BasicStage::nc, and sizeM.
Stage::RowL soth::Stage::rowML | ( | const Index | r | ) |
References Irn, ML_, and rowSize().
Referenced by propagateDowndate(), and propagateUpdate().
Stage::RowML soth::Stage::rowMrL0 | ( | const Index | r | ) |
Referenced by regularizeHessenberg().
Stage::Index soth::Stage::rowSize | ( | const Index | r | ) |
References soth::BasicStage::nc, sizeM, and sizeN().
Referenced by nullifyACrossFromW(), and rowML().
void soth::Stage::setInitialActiveSet | ( | void | ) |
void soth::Stage::setInitialActiveSet | ( | const cstref_vector_t & | initialGuess, |
bool | checkTwin = false |
||
) |
void soth::Stage::show | ( | std::ostream & | os, |
Index | stageRef, | ||
bool | check = false |
||
) | const |
References activeSet, soth::SubActiveSet< AS, Indirect >::disp(), e, eactive(), Irn, isDampCpt, isLagrangeCpt, isWIdenty, Iw, Jactive(), L, lambda, Ld, M, ML_, recompose(), sizeA(), sizeL, sizeM, sizeN(), sotDEBUG, sotDEBUG_ENABLE, soth::sotDEBUGFLOW, sotDEBUGPRIOR, W, and Wd.
void soth::Stage::showActiveSet | ( | std::ostream & | os | ) | const |
References activeSet.
Index soth::Stage::sizeA | ( | void | ) | const [inline] |
Index soth::Stage::sizeN | ( | void | ) | const [inline] |
Referenced by computeRho(), downdate(), propagateDowndate(), removeACrossFromW(), removeARowFromL(), rowSize(), and show().
bool soth::Stage::testRecomposition | ( | void | ) | const |
References Eigen::ColSelectionImpl< MatrixType, IsSub >::cols(), EPSILON, isFreezed, Jactive(), recompose(), sizeA(), and sotDEBUG.
bool soth::Stage::testSolution | ( | const VectorXd & | solution | ) | const |
bool soth::Stage::testUnactiveTwins | ( | void | ) |
References activeSet, soth::Bound::BOUND_TWIN, soth::BasicStage::bounds, soth::ActiveSet< Indirect >::isActive(), soth::BasicStage::nr, and sotDEBUG.
Referenced by computeInitialJY().
MatrixXd::Index soth::Stage::update | ( | const ConstraintRef & | cst, |
GivensSequence & | Yup | ||
) |
References soth::SubActiveSet< AS, Indirect >::activeRow(), activeSet, addARow(), soth::BaseY::applyThisOnTheLeft(), soth::Bound::BOUND_INF, soth::Bound::BOUND_SUP, soth::BasicStage::bounds, conditionalWinit(), e, EPSILON, freeML, soth::AllocatorML::get(), Eigen::ColSelectionImpl< MatrixType, IsSub >::getColIndices(), Eigen::RowSelectionImpl< MatrixType, IsSub >::getRowIndices(), isDampCpt, isInit, isLagrangeCpt, isOptimumCpt, isWIdenty, soth::BasicStage::J, L, M, ML_, name, soth::BasicStage::nc, soth::BasicStage::notifior, soth::BasicStage::nr, nullifyLineDeficient(), soth::GivensSequence::push(), Eigen::ColSelectionImpl< MatrixType, IsSub >::pushColBack(), soth::ConstraintRef::row, soth::ConstraintRef::sign(), sizeL, sizeM, sotDEBUG, soth::ConstraintRef::type, W, and soth::BasicStage::Y.
bool soth::Stage::useDamp | ( | void | ) | const [inline] |
Referenced by soth::HCOD::testLagrangeMultipliers().
Stage::Index soth::Stage::where | ( | Index | cst | ) | const |
References activeSet, and soth::SubActiveSet< AS, Indirect >::map().
ConstraintRef soth::Stage::which | ( | Index | row | ) | const |
SubActiveSet<ActiveSet<Indirect>,Indirect> soth::Stage::activeSet [protected] |
const double soth::Stage::DAMPING_FACTOR = 1e-2 [static, protected] |
double soth::Stage::dampingFactor [protected] |
Referenced by applyDampingTranspose(), computeRho(), and damp().
SubVectorXd soth::Stage::e [protected] |
Referenced by computeErrorFromJu(), computeInitialCOD(), computeInitialJY(), computeRho(), computeSolution(), freezeSlacks(), show(), and update().
VectorXd soth::Stage::e_ [protected] |
Referenced by computeInitialJY(), and eactive().
SubVectorXd soth::Stage::edwork [mutable, protected] |
Referenced by applyDamping(), and applyDampingTranspose().
VectorXd soth::Stage::edwork_ [mutable, protected] |
double soth::Stage::EPSILON = 1e-8 [static] |
AllocatorML soth::Stage::freeML [protected] |
Referenced by computeInitialJY(), removeACrossFromW(), and update().
Indirect soth::Stage::Il [protected] |
Indirect soth::Stage::Im [protected] |
Indirect soth::Stage::Ir [protected] |
Indirect soth::Stage::Irn [protected] |
Referenced by nullifyACrossFromW(), propagateDowndate(), removeACrossFromW(), rowML(), and show().
bool soth::Stage::isDampCpt [protected] |
Referenced by applyDamping(), applyDampingTranspose(), checkBound(), computeRho(), computeSolution(), damp(), downdate(), freezeSlacks(), propagateDowndate(), propagateUpdate(), reset(), show(), and update().
bool soth::Stage::isFreezed [protected] |
Referenced by damp(), freezeSlacks(), reset(), and testRecomposition().
bool soth::Stage::isInit [protected] |
bool soth::Stage::isLagrangeCpt [protected] |
Referenced by computeError(), computeErrorFromJu(), computeLagrangeMultipliers(), computeRho(), downdate(), freezeSlacks(), propagateDowndate(), propagateUpdate(), reset(), show(), and update().
bool soth::Stage::isOptimumCpt [protected] |
Referenced by downdate(), propagateDowndate(), propagateUpdate(), reset(), and update().
bool soth::Stage::isReset [protected] |
Referenced by computeInitialCOD(), and reset().
bool soth::Stage::isWIdenty [protected] |
Referenced by addARow(), computeErrorFromJu(), computeInitialCOD(), computeLagrangeMultipliers(), computeRho(), computeSolution(), conditionalWinit(), downdate(), nullifyACrossFromW(), nullifyLineDeficient(), propagateDowndate(), recompose(), removeACrossFromW(), removeARowFromL(), show(), and update().
Indirect soth::Stage::Iw [protected] |
SubMatrixXd soth::Stage::L [protected] |
Referenced by addARow(), applyDamping(), applyDampingTranspose(), computeInitialCOD(), computeLagrangeMultipliers(), computeRho(), computeSolution(), damp(), downdate(), freezeSlacks(), nullifyACrossFromW(), nullifyLineDeficient(), propagateDowndate(), propagateUpdate(), recompose(), removeACrossFromW(), removeARowFromL(), show(), and update().
SubVectorXd soth::Stage::lambda [protected] |
Referenced by computeError(), computeErrorFromJu(), computeLagrangeMultipliers(), computeRho(), freezeSlacks(), and show().
VectorXd soth::Stage::lambda_ [protected] |
VectorXd soth::Stage::lambdadamped [mutable, protected] |
SubMatrixXd soth::Stage::Ld [protected] |
Referenced by computeSolution(), damp(), freezeSlacks(), and show().
MatrixXd soth::Stage::Ld_ [protected] |
SubMatrixXd soth::Stage::Ldwork [protected] |
Referenced by damp().
MatrixXd soth::Stage::Ldwork_ [protected] |
VectorXd soth::Stage::lzfreezed [protected] |
SubMatrixXd soth::Stage::M [protected] |
MatrixXd soth::Stage::ML_ [protected] |
Referenced by computeInitialCOD(), computeInitialJY(), nullifyACrossFromW(), propagateDowndate(), reset(), rowL0(), rowML(), rowMrL0(), show(), and update().
SubMatrixXd soth::Stage::Mr [protected] |
Referenced by computeLagrangeMultipliers(), computeSolution(), and nullifyLineDeficient().
std::string soth::Stage::name |
Reimplemented from soth::BasicStage.
Referenced by checkBound(), computeSolution(), downdate(), freezeSlacks(), reset(), setInitialActiveSet(), and update().
Index soth::Stage::sizeL [protected] |
Referenced by addARow(), applyDamping(), applyDampingTranspose(), computeInitialCOD(), computeLagrangeMultipliers(), computeMLYtu(), computeRho(), computeSolution(), damp(), downdate(), freezeSlacks(), propagateDowndate(), propagateUpdate(), recompose(), regularizeHessenberg(), removeACrossFromW(), removeARowFromL(), show(), and update().
Index soth::Stage::sizeM [protected] |
SubMatrixXd soth::Stage::W [protected] |
MatrixXd soth::Stage::W_ [protected] |
Referenced by addARow().
GivensSequence soth::Stage::Wd [protected] |
Referenced by applyDamping(), applyDampingTranspose(), damp(), freezeSlacks(), and show().
SubMatrixXd soth::Stage::Wr [protected] |
Referenced by computeLagrangeMultipliers(), computeSolution(), nullifyLineDeficient(), and recompose().