NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo Struct Reference

Struct for zero and explicit first order quantities that subclass must fill in. More...

#include <NLPInterfacePack_NLPSerialPreprocessExplJac.hpp>

List of all members.

Public Types

typedef std::valarray< value_typeval_t
 
typedef std::valarray< index_typeivect_t
 
typedef std::valarray< index_typejvect_t

Public Member Functions

 FirstOrderExplInfo ()
 
 FirstOrderExplInfo (index_type *Gc_nz_in, val_t *Gc_val_in, ivect_t *Gc_ivect_in, jvect_t *Gc_jvect_in, index_type *Gh_nz_in, val_t *Gh_val_in, ivect_t *Gh_ivect_in, jvect_t *Gh_jvect_in, const ObjGradInfoSerial &obj_grad)
 

Public Attributes

size_typeGc_nz
 
val_tGc_val
 
ivect_tGc_ivect
 
jvect_tGc_jvect
 
size_typeGh_nz
 
val_tGh_val
 
ivect_tGh_ivect
 
jvect_tGh_jvect
 
DVectorGf
 
value_typef
 
DVectorc
 
DVectorh
 


Detailed Description

Struct for zero and explicit first order quantities that subclass must fill in.

When computing Gc and/or Gh, the subclass can be instructed to set the row and columns index arrays by setting Gc_ivect!=NULL and/or Gh_ivect!=NULL respecitively.

Objects of this type are passed on to subclasses and contain pointers to quantities to be updated. Note that NLP subclasses are not to resize the DVector or std::valarray objects Gc_val, Gc_ivect, Gc_jvect, Gh_val, Gh_ivect, Gh_jvect, *Gf, *c or h since the these will already be resized.

The storage format for the gradient matrices Gc and Gh use the coordinate data structure. For Gc, for instance, the elements are stored as:

   for k = 0 ... Gc_nz
       Gc(Gc_ivect[k],Gc_jvect[k]) == Gc_val[k]
   
and all of the other matrix entries in Gc are implicitly zero.

In general, it is allowed for duplicate entries (Gc_ivect[k],Gc_jvect[k]) to exist with the convention that the corresponding Gc_val[k] are to be added in matrix operations. This is a relaxed requirement that can make things much more complicated for the code that accesses these matrix entries.

Definition at line 214 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.


Member Typedef Documentation

typedef std::valarray<value_type> NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::val_t

Definition at line 216 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.

typedef std::valarray<index_type> NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::ivect_t

Definition at line 218 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.

typedef std::valarray<index_type> NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::jvect_t

Definition at line 220 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.


Constructor & Destructor Documentation

NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::FirstOrderExplInfo (  )  [inline]

Definition at line 222 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.

NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::FirstOrderExplInfo ( index_type Gc_nz_in,
val_t Gc_val_in,
ivect_t Gc_ivect_in,
jvect_t Gc_jvect_in,
index_type Gh_nz_in,
val_t Gh_val_in,
ivect_t Gh_ivect_in,
jvect_t Gh_jvect_in,
const ObjGradInfoSerial &  obj_grad 
) [inline]

Definition at line 228 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.


Member Data Documentation

size_type* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::Gc_nz

Definition at line 238 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.

val_t* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::Gc_val

Definition at line 240 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.

ivect_t* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::Gc_ivect

Definition at line 242 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.

jvect_t* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::Gc_jvect

Definition at line 244 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.

size_type* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::Gh_nz

Definition at line 246 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.

val_t* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::Gh_val

Definition at line 248 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.

ivect_t* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::Gh_ivect

Definition at line 250 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.

jvect_t* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::Gh_jvect

Definition at line 252 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.

DVector* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::Gf

Definition at line 254 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.

value_type* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::f

Definition at line 256 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.

DVector* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::c

Definition at line 258 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.

DVector* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::h

Definition at line 260 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.


The documentation for this struct was generated from the following file:
Generated on Wed May 12 21:57:31 2010 for MOOCHO (Single Doxygen Collection) by  doxygen 1.4.7