ConicBundle
Public Member Functions | Private Attributes | List of all members
ConicBundle::VariableMetricBundleData Class Referenceabstract

abstract interface providing the bundle data that is typically needed in VariableMetricSelection classes. More...

#include <VariableMetric.hxx>

Inheritance diagram for ConicBundle::VariableMetricBundleData:
ConicBundle::BundleData ConicBundle::AFTData ConicBundle::BoxData ConicBundle::NNCData ConicBundle::PSCData ConicBundle::SOCData

Public Member Functions

virtual ~VariableMetricBundleData ()
 virtual destructor
 
virtual CH_Matrix_Classes::Real get_function_factor () const =0
 the factor by which the minorants (except for the aggregate) need to be multiplied in order to match the current function scaling
 
virtual int get_latest_minorants (MinorantBundle &latest_minorants, CH_Matrix_Classes::Integer max_number)=0
 latest_minorants should return up to the max_number latest minorants whose information should be incorporated in the metric model; the number may fall short of max_number; if the number returned is too large, only the first max_number will usually be considered; the minorants still need to be mutliplied by function_factor
 
virtual int get_model_data (MinorantBundle &model_minorants, CH_Matrix_Classes::Matrix &model_coeff) const =0
 model_mionrants should hold the minorants currently used in the model; the list may be empty, it may and typically will contain other minorants than returned in get_latest_minorants(); the minorants still need to be mutliplied by function_factor; modell_coeff needs to return a column vector with the same number of elements as in model_minorants and in the same sorting; mostly it will hold the convex combination of the model_minorants that gives rist to the aggregate, but it may also contain other nonnegativer numbers indicating the importance of the respective minorants
 
virtual const MinorantPointerget_aggregate () const =0
 the aggregate minorant as currently in use in the bundle method; it already includes the function_factor
 
virtual const CH_Matrix_Classes::Symmatrixget_denseH () const
 allows to retrieve dense variable metric information stored here
 
virtual CH_Matrix_Classes::Symmatrixset_denseH ()
 allows to retrieve the dense variable metric information generated in the previous call and allows to store the new one in the end
 
virtual const CH_Matrix_Classes::Matrixget_lowrankH () const
 allows to retrieve low rank variable metric information stored here
 
virtual CH_Matrix_Classes::Matrixset_lowrankH ()
 allows to retrieve the low rank variable metric information generated in the previous call and allows to store the new one in the end
 
virtual const CH_Matrix_Classes::Matrixget_diagH () const
 allows to retrieve the diagonal variable metric information generated in the previous call and allows to store the new one in the end
 
virtual CH_Matrix_Classes::Matrixset_diagH ()
 allows to retrieve the diagonal variable metric information generated in the previous call and allows to store the new one in the end
 

Private Attributes

CH_Matrix_Classes::Matrix vmbd_lowrankH
 used by the variable metric low rank heuristic (without function_factor)
 
CH_Matrix_Classes::Matrix vmbd_diagH
 used by the variable metric low rank heuristic (without function_factor)
 
CH_Matrix_Classes::Symmatrix vmbd_denseH
 used by the variable metric heuristic
 

Detailed Description

abstract interface providing the bundle data that is typically needed in VariableMetricSelection classes.

The standard models all employ derived classes of this class so as to allow customized implementations of VariableMetricSelection classes access to the full bundle information via a dynamic_cast.


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