KerMor  0.9
Model order reduction for nonlinear dynamical systems and nonlinear approximation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
data.selection.ASelector Class Referenceabstract

Base interface for any approximation training data selection algorithm. More...

Detailed Description

Base interface for any approximation training data selection algorithm.

Attention
Any subclass must set the LastUsed property to the indices corresponding to the selected samples from the training data. Otherwise an error will be thrown and the generation process is terminated.
Note
Note that the selected training data is projected into the precomputed subspace if spacereduction is performed.
Author
Daniel Wirtz
Date
2011-04-12
New in 0.7:
(Daniel Wirtz, 2014-01-23) Added the EnsureUniqueData property so that any generated training data has unique \(x_i\) values.
Change in 0.5:
(Daniel Wirtz, 2011-11-09) Changed the return type of selectTrainingData to an instance of data.ApproxTrainData (not having the fxi property set yet)
New in 0.5:
(Daniel Wirtz, 2011-08-04) Removed the LastUsed property as it is incompatible with the new data.ATrajectoryData structure (the approximation training data is not a subset of TrainingData anymore). Subclasses have been changed in order to adopt to the new structure, too.
New in 0.4:
(Daniel Wirtz, 2011-05-04) Integrated this class to the property default value changed supervision system Property classes and levels. This class now inherits from KerMorObject and has an extended constructor registering any user-relevant properties using KerMorObject.registerProps.
New in 0.3:
(Daniel Wirtz, 2011-04-12) Added this class to implement strategy pattern for training data selection.
Todo:
return data.FileMatrix instances from select methods in the first place..

Definition at line 19 of file ASelector.m.

Public Member Functions

 ASelector ()
 
function data.ApproxTrainData atd = selectTrainingData (model)
 Performs the selection procedure. More...
 
- Public Member Functions inherited from KerMorObject
 KerMorObject ()
 Constructs a new KerMor object. More...
 
function  display ()
 disp(object2str(this)); More...
 
function bool = eq (B)
 Checks equality of two KerMor objects. More...
 
function bool = ne (B)
 Checks if two KerMorObjects are different. More...
 
function cn = getClassName ()
 Returns the simple class name of this object without packages. More...
 
- Public Member Functions inherited from DPCMObject
 DPCMObject ()
 Creates a new DPCM object. More...
 
 DPCMObject ()
 
- Public Member Functions inherited from ICloneable
virtual function copy = clone (target)
 The interface method with returns a copy of the current class instance. More...
 

Public Attributes

logical EnsureUniqueData = true
 Flag to enable automatic "uniqueification" if selected training data. Uniqueness is determined by the state space samples xi; if any xi is included twice or more, it is discarded along with the fxi, ti, mui data of the replicates (independent of whether they are equal, too) More...
 
- Public Attributes inherited from DPCMObject
 WorkspaceVariableName = ""
 The workspace variable name of this class. Optional. More...
 
 ID = "[]"
 An ID that allows to uniquely identify this DPCMObject (at least within the current MatLab session/context). More...
 
 PropertiesChanged = "[]"
 The Dictionary containing all the property settings as key/value pairs. More...
 
- Public Attributes inherited from handle
 addlistener
 Creates a listener for the specified event and assigns a callback function to execute when the event occurs. More...
 
 notify
 Broadcast a notice that a specific event is occurring on a specified handle object or array of handle objects. More...
 
 delete
 Handle object destructor method that is called when the object's lifecycle ends. More...
 
 disp
 Handle object disp method which is called by the display method. See the MATLAB disp function. More...
 
 display
 Handle object display method called when MATLAB software interprets an expression returning a handle object that is not terminated by a semicolon. See the MATLAB display function. More...
 
 findobj
 Finds objects matching the specified conditions from the input array of handle objects. More...
 
 findprop
 Returns a meta.property objects associated with the specified property name. More...
 
 fields
 Returns a cell array of string containing the names of public properties. More...
 
 fieldnames
 Returns a cell array of string containing the names of public properties. See the MATLAB fieldnames function. More...
 
 isvalid
 Returns a logical array in which elements are true if the corresponding elements in the input array are valid handles. This method is Sealed so you cannot override it in a handle subclass. More...
 
 eq
 Relational functions example. See details for more information. More...
 
 transpose
 Transposes the elements of the handle object array. More...
 
 permute
 Rearranges the dimensions of the handle object array. See the MATLAB permute function. More...
 
 reshape
 hanges the dimensions of the handle object array to the specified dimensions. See the MATLAB reshape function. More...
 
 sort
 ort the handle objects in any array in ascending or descending order. More...
 

Protected Member Functions

virtual function [
data.FileMatrix xi ,
rowvec ti ,
matrix mui ] = 
select (models.BaseFullModel model)
 Template method for subclasses to specify selection behaviour. More...
 
- Protected Member Functions inherited from KerMorObject
function  checkType (obj, type)
 Object typechecker. More...
 
- Protected Member Functions inherited from DPCMObject
function  registerProps (varargin)
 Call this method at any class that defines DPCM observed properties. More...
 
function  registerProps (varargin)
 

Additional Inherited Members

- Static Protected Member Functions inherited from DPCMObject
static function obj = loadobj (obj, from)
 Re-register any registered change listeners! More...
 
static function obj = loadobj (obj, from)
 

Constructor & Destructor Documentation

data.selection.ASelector.ASelector ( )

Definition at line 76 of file ASelector.m.

References KerMorObject.KerMorObject().

Here is the call graph for this function:

Member Function Documentation

function [ data.FileMatrix xi , rowvec ti , matrix mui ] = data.selection.ASelector.select ( models.BaseFullModel  model)
protectedpure virtual

Template method for subclasses to specify selection behaviour.

Parameters
modelThe full model with the training data
Return values
xiThe selected \(x_i = x(t_i)\) training data
tiThe selected training times \(t_i\)
muiThe selected parameter samples \(\mu_i\) with which the states \(x_i\) have been reached

Implemented in data.selection.EpsSelector, data.selection.TimeSelector, data.selection.LinspaceSelector, and data.selection.DefaultSelector.

Referenced by selectTrainingData().

Here is the caller graph for this function:

function data.ApproxTrainData atd = data.selection.ASelector.selectTrainingData (   model)

Performs the selection procedure.

After some validity checks the template method is called to start the actual selection algorithm.

"Hack": We convert any selected xi values to a FileMatrix here. The fact that the selected data fits into memory at this stage of course means it could fit there later on (and will be done so), but regarding storage of the model it is more consistent for the case where it could not be the case. Moreover, as long as the selected data does not exceed the default block size (see data.FileMatrix.BLOCK_SIZE), it is stored in the cached Block anyways.

See Also
data.ApproxTrainData.computeFrom
Parameters
modelThe models.BaseFullModel subclass containing the training data in its Data property.
Return values
atdThe approximation training data
Required fields of model:
Generated fields of atd:

Definition at line 81 of file ASelector.m.

References EnsureUniqueData, and select().

Referenced by data.ApproxTrainData.computeFrom().

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

data.selection.ASelector.EnsureUniqueData = true

Flag to enable automatic "uniqueification" if selected training data. Uniqueness is determined by the state space samples xi; if any xi is included twice or more, it is discarded along with the fxi, ti, mui data of the replicates (independent of whether they are equal, too)

Default: true

Note
This property has custom functionality when its value is changed.

Definition at line 59 of file ASelector.m.

Referenced by selectTrainingData().


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