MOOCHO (Single Doxygen Collection)  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Attributes | List of all members
ConstrainedOptPack::MeritFuncNLPModL1 Class Reference

The modified L1 merit function using different penatly parameters for each constriant. More...

#include <ConstrainedOptPack_MeritFuncNLPModL1.hpp>

Inheritance diagram for ConstrainedOptPack::MeritFuncNLPModL1:
Inheritance graph
[legend]

Public Member Functions

 MeritFuncNLPModL1 ()
 Initializes deriv() = 0 and mu() = 0. More...
 
- Public Member Functions inherited from ConstrainedOptPack::MeritFuncNLP
virtual ~MeritFuncNLP ()
 
virtual MeritFuncNLPoperator= (const MeritFuncNLP &)
 Assign the state of one Merit functions. More...
 
- Public Member Functions inherited from ConstrainedOptPack::MeritFuncNLPDirecDeriv
virtual ~MeritFuncNLPDirecDeriv ()
 
- Public Member Functions inherited from ConstrainedOptPack::MeritFuncPenaltyParams
virtual ~MeritFuncPenaltyParams ()
 

Private Attributes

value_type deriv_
 
VectorSpace::vec_mut_ptr_t mu_
 

Overridden from MeritFuncNLP

value_type value (value_type f, const Vector *c, const Vector *h, const Vector *hl, const Vector *hu) const
 
value_type deriv () const
 
void print_merit_func (std::ostream &out, const std::string &leading_str) const
 

Overridden from MeritFuncNLPDirecDeriv

value_type calc_deriv (const Vector &Gf_k, const Vector *c_k, const Vector *h_k, const Vector *hl, const Vector *hu, const Vector &d_k)
 If the value n passed to resize(n) does not equal the size of the vector parameters then an exception #MeritFuncNLP::InvalidInitialization# will be thrown. More...
 

Overridden from MeritFuncPenaltyParams

void set_space_c (const VectorSpace::space_ptr_t &space_c)
 
VectorMutable & set_mu ()
 
const Vector & get_mu () const
 

Detailed Description

The modified L1 merit function using different penatly parameters for each constriant.

phi(x) = f) + sum( mu(j) * abs(c(j)), j = 1,...,m )

Dphi(x_k,d_k) = Gf_k' * d_k - sum( mu(j) * abs(c(j)), j = 1,...,m )

Note that the definition of Dphi(x_k,d_k) assumes that Gc_k'*d_k + c_k = 0. In otherwords, d_k must satisfiy the linearized equality constraints at at x_k.

Implicit copy constructor and assignment operators are allowed.

Definition at line 65 of file ConstrainedOptPack_MeritFuncNLPModL1.hpp.

Constructor & Destructor Documentation

ConstrainedOptPack::MeritFuncNLPModL1::MeritFuncNLPModL1 ( )

Initializes deriv() = 0 and mu() = 0.

Definition at line 49 of file ConstrainedOptPack_MeritFuncNLPModL1.cpp.

Member Function Documentation

value_type ConstrainedOptPack::MeritFuncNLPModL1::value ( value_type  f,
const Vector *  c,
const Vector *  h,
const Vector *  hl,
const Vector *  hu 
) const
virtual
value_type ConstrainedOptPack::MeritFuncNLPModL1::deriv ( ) const
virtual
void ConstrainedOptPack::MeritFuncNLPModL1::print_merit_func ( std::ostream &  out,
const std::string &  leading_str 
) const
virtual
value_type ConstrainedOptPack::MeritFuncNLPModL1::calc_deriv ( const Vector &  Gf_k,
const Vector *  c_k,
const Vector *  h_k,
const Vector *  hl,
const Vector *  hu,
const Vector &  d_k 
)
virtual

If the value n passed to resize(n) does not equal the size of the vector parameters then an exception #MeritFuncNLP::InvalidInitialization# will be thrown.

Implements ConstrainedOptPack::MeritFuncNLPDirecDeriv.

Definition at line 93 of file ConstrainedOptPack_MeritFuncNLPModL1.cpp.

void ConstrainedOptPack::MeritFuncNLPModL1::set_space_c ( const VectorSpace::space_ptr_t &  space_c)
virtual
VectorMutable & ConstrainedOptPack::MeritFuncNLPModL1::set_mu ( )
virtual
const Vector & ConstrainedOptPack::MeritFuncNLPModL1::get_mu ( ) const
virtual

Member Data Documentation

value_type ConstrainedOptPack::MeritFuncNLPModL1::deriv_
private

Definition at line 130 of file ConstrainedOptPack_MeritFuncNLPModL1.hpp.

VectorSpace::vec_mut_ptr_t ConstrainedOptPack::MeritFuncNLPModL1::mu_
private

Definition at line 131 of file ConstrainedOptPack_MeritFuncNLPModL1.hpp.


The documentation for this class was generated from the following files: