Sandia Home Sandia Home
Main Page | Publications | Downloads | Configuration | Running the Code | Solver Parameters | FAQ | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

APPSPACK::Combiner::Generic Class Reference

#include <APPSPACK_Combiner_Generic.hpp>

List of all members.

Detailed Description

Abstract generic class for combining a vector of values into a single function value.

The purpose of the combiner is to combine multiple function values into a single function value. This generic combiner assumes that the first value (if any) is the objective value and all remaining values are constraints that need to be nonnegative. In other words, suppose we have an input vector $f$ of length $n$. Then, we compute a single function value, $\hat f$, such that

\[ \hat f = \begin{cases} +\infty & \mbox{if } n = 0 \\ f_1 & \mbox{if } n = 1\\ f_1 & \mbox{if } f_2,f_3,\dots,f_n \geq 0\\ +\infty & \mbox{otherwise}. \end{cases} \]

The user may derive a new combiner that does the combining in some alternative fashion.

Definition at line 79 of file APPSPACK_Combiner_Generic.hpp.

Public Member Functions

 Generic ()
virtual ~Generic ()
virtual double operator() (const Vector &f) const
 Returns the objective value calculated from the vector of function values.

Constructor & Destructor Documentation

APPSPACK::Combiner::Generic::Generic  )  [inline]


Definition at line 84 of file APPSPACK_Combiner_Generic.hpp.

virtual APPSPACK::Combiner::Generic::~Generic  )  [inline, virtual]


Definition at line 87 of file APPSPACK_Combiner_Generic.hpp.

Member Function Documentation

double APPSPACK::Combiner::Generic::operator() const Vector f  )  const [virtual]

Returns the objective value calculated from the vector of function values.

f input vector (may be empty, in which case return value should be $+\infty$)
Combined function value. Be sure to return APPSPACK::dne() for $f=+\infty$.

Definition at line 39 of file APPSPACK_Combiner_Generic.cpp.

References APPSPACK::dne(), APPSPACK::exists(), and APPSPACK::Vector::size().

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


© Sandia Corporation | Site Contact | Privacy and Security

Generated on Fri Feb 16 10:33:36 2007 for APPSPACK 5.0.1 by doxygen written by Dimitri van Heesch, © 1997-2002