3 #ifndef CONICBUNDLE_UQPBLOCK_HXX 4 #define CONICBUNDLE_UQPBLOCK_HXX 55 { constant_minorant.clear(); bundle.clear();}
65 {
return constant_minorant.back(); }
69 {
return bundle.back();}
73 {
return constant_minorant.back(); }
77 {
return bundle.back();}
83 std::map<MinorantPointer,MinorantPointer>* precomputed=0);
254 { model_block=
dynamic_cast<UQPModelBlock*
>(inbp);
return (model_block==0);}
std::vector< MinorantBundle > bundle
the minorants forming the cutting model; how to combine them is described in derived classes ...
Definition: UQPModelBlock.hxx:49
abstract interface for automatically generating and retrieving the qp blocks with the model data that...
Definition: QPModelDataObject.hxx:298
QPModelDataObject * get_model_data_ptr() const
returns the pointer value
Definition: UQPModelBlock.hxx:263
UQPModelPointer(CBout *cb=0, int cbinc=-1)
default constructor
Definition: UQPModelBlock.hxx:243
std::vector< MinorantPointer > constant_minorant
constant offset minorant (fixed affine function to be added to the model)
Definition: UQPModelBlock.hxx:47
Matrix class for integral values of type Integer
Definition: indexmat.hxx:195
abstract interface extension of QPModelDataObject to allow uniform generation of tuned quadratic solv...
Definition: QPModelDataObject.hxx:144
abstract interface declaring the uniform outer appearance of general cutting models produced by the v...
Definition: QPModelDataObject.hxx:44
virtual const MinorantPointer & get_constant_minorant() const
gives reading access to a constant offset minorant
Definition: UQPModelBlock.hxx:64
virtual int push_aft(const AffineFunctionTransformation *inaft, const CH_Matrix_Classes::Indexmatrix *global_indices, const CH_Matrix_Classes::Indexmatrix *local_indices, std::map< MinorantPointer, MinorantPointer > *precomputed=0)
applies the AffineFunctionTransformation to constant_minorant and bundle, where (if given) only the g...
virtual MinorantBundle & get_bundle()
gives access to the bundle minorants of the cutting model
Definition: UQPModelBlock.hxx:76
Header declaring the class CH_Matrix_Classes::Symmatrix for symmetric matrices with Real elements...
conic bundle method solver for sum of convex functions. See the ConicBundle_Manual for a quick introd...
Definition: CBSolver.hxx:22
virtual MinorantPointer & get_constant_minorant()
gives access to a constant offset minorant
Definition: UQPModelBlock.hxx:72
UQPModelBlock(CBout *cb=0, int cbinc=-1)
default constructor
Definition: UQPModelBlock.hxx:58
abstract interface for model blocks in the unconstrained UQPSolver
Definition: UQPModelBlockObject.hxx:70
base class for uniform use of WARNINGS and ERRORS (at some point in time)
Definition: CBout.hxx:30
virtual int pop_aft()
undo the last push_aft
Interface in BundelSolver for generating the correct type of blocks for UQPSolver and for setting the...
Definition: UQPModelBlock.hxx:235
Header declaring the class ConicBundle::QPModelDataObject, ConicBundle::QPSumModelDataObject, ConicBundle::QPConeModelDataObject, ConicBundle::QPModelDataPointer.
combines and provides basic functionalities of QPModelDataObject and UQPModelBlockObject, but is still abstract
Definition: UQPModelBlock.hxx:42
void clear_model_data_ptr()
set the pointer to NULL
Definition: UQPModelBlock.hxx:249
virtual ~UQPModelBlock()
vritual destructor
abstract interface for BundleSolver giving access to all objective function specific bundle routines ...
Definition: BundleModel.hxx:140
std::vector< MinorantPointer > MinorantBundle
a bundle is a vector with MinorantPointer entries
Definition: MinorantPointer.hxx:24
virtual const MinorantBundle & get_bundle() const
gives reading access to the bundle minorants of the cutting model
Definition: UQPModelBlock.hxx:68
Header declaring the classes ConicBundle::UQPModelBlockObject.
abstract interface extension of QPModelDataObject for use in SumModel where several blocks are concat...
Definition: QPModelDataObject.hxx:105
int set_model_data(QPModelDataObject *inbp)
store the pointer to the object if it matches the required type for the QP solver, otherwise return a nonzero value as error; this is used in the models to return the local qp model data
Definition: UQPModelBlock.hxx:253
void clear()
reset to "empty/no" model information
Definition: UQPModelBlock.hxx:54
points to MinorantUseData that may be shared by many and allows computations with Minorants ...
Definition: MinorantPointer.hxx:34
UQPModelBlock * model_block
stores a pointer to the current starting block giving access to the cutting model(s) [it does not own...
Definition: UQPModelBlock.hxx:238