MoochoPack::DampenCrossTermStd_Step Class Reference

Compute a dampening term zeta_k for the cross term w_k such that Gf'*Z*pz <= 0. More...

#include <MoochoPack_DampenCrossTermStd_Step.hpp>

List of all members.

Public Member Functions

void frac_descent (const value_type &frac_descent)
 «std comp» members for frac_descent
 DampenCrossTermStd_Step (const value_type &frac_descent=0.9)
 
bool do_step (Algorithm &algo, poss_type step_poss, IterationPack::EDoStepType type, poss_type assoc_step_poss)
 
void print_step (const Algorithm &algo, poss_type step_poss, IterationPack::EDoStepType type, poss_type assoc_step_poss, std::ostream &out, const std::string &leading_str) const
 


Detailed Description

Compute a dampening term zeta_k for the cross term w_k such that Gf'*Z*pz <= 0.

This condition Gf'*Z*pz <= 0 is needed to ensure descent of many merit functions.

This implementation ensures that Gf'*Z*pz <= 0 only if there will not be any active constraints when the reduced QP subproblem is solved (nu_k = 0) and there are no undecomposed equality constraints or if there they are linearly dependent (lambda_k(undecomp_con) = 0).

In particular this implementation computes zeta_k such that:

Gf'*Z*pz <= frac_descent * rGf'inv(B)*rGf

where: 0 < frac_descent < 1

To ensure strong descent (and hopefully deal with the cases where nu_k != 0 and lambda_k(undecomp_con) != 0) the parameter frac_descent is set to frac_descent = 0.9 by default.

The basis derivation goes like this:

ToDo: Finish documentation!

Definition at line 62 of file MoochoPack_DampenCrossTermStd_Step.hpp.


Constructor & Destructor Documentation

MoochoPack::DampenCrossTermStd_Step::DampenCrossTermStd_Step const value_type &  frac_descent = 0.9  ) 
 

Definition at line 42 of file MoochoPack_DampenCrossTermStd_Step.cpp.


Member Function Documentation

void MoochoPack::DampenCrossTermStd_Step::frac_descent const value_type &  frac_descent  )  [inline]
 

«std comp» members for frac_descent

Definition at line 66 of file MoochoPack_DampenCrossTermStd_Step.hpp.

bool MoochoPack::DampenCrossTermStd_Step::do_step Algorithm algo,
poss_type  step_poss,
IterationPack::EDoStepType  type,
poss_type  assoc_step_poss
 

Definition at line 46 of file MoochoPack_DampenCrossTermStd_Step.cpp.

void MoochoPack::DampenCrossTermStd_Step::print_step const Algorithm algo,
poss_type  step_poss,
IterationPack::EDoStepType  type,
poss_type  assoc_step_poss,
std::ostream &  out,
const std::string &  leading_str
const
 

Definition at line 119 of file MoochoPack_DampenCrossTermStd_Step.cpp.


The documentation for this class was generated from the following files:
Generated on Thu Sep 18 12:34:29 2008 for MoochoPack : Framework for Large-Scale Optimization Algorithms by doxygen 1.3.9.1