NLPInterfacePack: C++ Interfaces and Implementation for Non-Linear Programs
Version of the Day
|
Struct for zero and explicit first order quantities that subclass must fill in. More...
#include <NLPInterfacePack_NLPSerialPreprocessExplJac.hpp>
Public Types | |
typedef std::valarray< value_type > | val_t |
typedef std::valarray< index_type > | ivect_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_type * | Gc_nz |
val_t * | Gc_val |
ivect_t * | Gc_ivect |
jvect_t * | Gc_jvect |
size_type * | Gh_nz |
val_t * | Gh_val |
ivect_t * | Gh_ivect |
jvect_t * | Gh_jvect |
DVector * | Gf |
value_type * | f |
DVector * | c |
DVector * | h |
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 227 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.
typedef std::valarray<value_type> NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::val_t |
Definition at line 229 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.
typedef std::valarray<index_type> NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::ivect_t |
Definition at line 231 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.
|
inline |
Definition at line 235 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.
|
inline |
Definition at line 241 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.
size_type* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::Gc_nz |
Definition at line 251 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.
val_t* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::Gc_val |
Definition at line 253 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.
ivect_t* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::Gc_ivect |
Definition at line 255 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.
jvect_t* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::Gc_jvect |
Definition at line 257 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.
size_type* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::Gh_nz |
Definition at line 259 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.
val_t* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::Gh_val |
Definition at line 261 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.
ivect_t* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::Gh_ivect |
Definition at line 263 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.
jvect_t* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::Gh_jvect |
Definition at line 265 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.
DVector* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::Gf |
Definition at line 267 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.
value_type* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::f |
Definition at line 269 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.
DVector* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::c |
Definition at line 271 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.
DVector* NLPInterfacePack::NLPSerialPreprocessExplJac::FirstOrderExplInfo::h |
Definition at line 273 of file NLPInterfacePack_NLPSerialPreprocessExplJac.hpp.