MOOCHO (Single Doxygen Collection) Version of the Day
Classes | Public Member Functions
ConstrainedOptPack::MeritFuncNLP Class Reference

Base class for all merit functions for NonLinear Programs (NLP) {abstract}. More...

#include <ConstrainedOptPack_MeritFuncNLP.hpp>

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

List of all members.

Classes

class  InvalidInitialization
  More...

Public Member Functions

virtual ~MeritFuncNLP ()
 

To be overridden by subclasses

virtual MeritFuncNLPoperator= (const MeritFuncNLP &)
 Assign the state of one Merit functions.
virtual value_type value (value_type f, const Vector *c, const Vector *h, const Vector *hl, const Vector *hu) const =0
 Return the value of the merit function at f(x), c(x), h(x). This interface requires the client to compute f(x) c(x) and h(x) and pass it to this function to have the value of phi(f,c,h,hl,hu) calculated.
virtual value_type deriv () const =0
 Return the value of the directional derivative of the merit function w.r.t. alpha at alpha = 0. In other words compute return d( phi(f(x),c(x),h(x)) ) / d(alpha_k) at alpha_k = 0 where x = x_k + alpha_k * d_k.
virtual void print_merit_func (std::ostream &out, const std::string &leading_str) const =0
 Print the merit funciton.

Detailed Description

Base class for all merit functions for NonLinear Programs (NLP) {abstract}.

Definition at line 53 of file ConstrainedOptPack_MeritFuncNLP.hpp.


Constructor & Destructor Documentation

virtual ConstrainedOptPack::MeritFuncNLP::~MeritFuncNLP ( ) [inline, virtual]

Definition at line 61 of file ConstrainedOptPack_MeritFuncNLP.hpp.


Member Function Documentation

MeritFuncNLP & ConstrainedOptPack::MeritFuncNLP::operator= ( const MeritFuncNLP merit_func) [virtual]

Assign the state of one Merit functions.

The default implementation throws an std::logic_error exception unless it is assignment to self.

Reimplemented in ConstrainedOptPack::MeritFuncNLPL1.

Definition at line 49 of file ConstrainedOptPack_MeritFuncNLP.cpp.

virtual value_type ConstrainedOptPack::MeritFuncNLP::value ( value_type  f,
const Vector c,
const Vector h,
const Vector hl,
const Vector hu 
) const [pure virtual]

Return the value of the merit function at f(x), c(x), h(x). This interface requires the client to compute f(x) c(x) and h(x) and pass it to this function to have the value of phi(f,c,h,hl,hu) calculated.

If the merit function has not been initialized properly then a InvalidInitialization exception will be thrown.

Implemented in ConstrainedOptPack::MeritFuncNLPL1, and ConstrainedOptPack::MeritFuncNLPModL1.

virtual value_type ConstrainedOptPack::MeritFuncNLP::deriv ( ) const [pure virtual]

Return the value of the directional derivative of the merit function w.r.t. alpha at alpha = 0. In other words compute return d( phi(f(x),c(x),h(x)) ) / d(alpha_k) at alpha_k = 0 where x = x_k + alpha_k * d_k.

If the merit function has not been initialized properly then a InvalidInitialization exception will be thrown.

Implemented in ConstrainedOptPack::MeritFuncNLPL1, and ConstrainedOptPack::MeritFuncNLPModL1.

virtual void ConstrainedOptPack::MeritFuncNLP::print_merit_func ( std::ostream &  out,
const std::string &  leading_str 
) const [pure virtual]

Print the merit funciton.

Implemented in ConstrainedOptPack::MeritFuncNLPL1, and ConstrainedOptPack::MeritFuncNLPModL1.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines