bdm::MemDS Class Reference

Memory storage of off-line data column-wise. More...

#include <datasources.h>

List of all members.

Public Member Functions

int max_length ()
 Returns maximum number of provided data, by default it is set to maximum allowed length, shorter DS should overload this method! See, MemDS.max_length().
void getdata (vec &dt)
 Returns full vector of observed data=[output, input].
void getdata (vec &dt, const ivec &indeces)
 Returns data records at indeces.
void set_rvs (RV &drv, RV &urv)
void write (vec &ut)
 Accepts action variable and schedule it for application.
void write (vec &ut, ivec &indices)
void step ()
 Moves from $ t $ to $ t+1 $, i.e. perfroms the actions and reads response of the system.
 MemDS ()
 Default constructor.
 MemDS (mat &Dat, ivec &rowid0)
void from_setting (const Setting &set)
virtual void write (vec &ut, const ivec &indeces)
 Accepts action variables at specific indeces.
virtual void log_add (logger &L)
 Register DS for logging into logger L.
virtual void logit (logger &L)
 Register DS for logging into logger L.
virtual const RV_drv () const
 access function
const RV_urv () const
 access function
const RV_yrv () const
 access function
virtual void set_drv (const RV &yrv, const RV &urv)
 set random variables
virtual string to_string ()
 This method returns a basic info about the current instance.
virtual void to_setting (Setting &set) const
 This method save all the instance properties into the Setting structure.
virtual void validate ()
 This method TODO.

Protected Attributes

mat Data
 internal matrix of data
int time
 active column in the Data matrix
ivec rowid
 vector of rows that are presented in Dt
int dtsize
 size of data returned by getdata()
int utsize
 size of data
int ytsize
 size of output
RV Drv
 Description of data returned by getdata().
RV Urv
 Description of data witten by by write().
RV Yrv
 Description of output data.
int L_dt
 Remember its own index in Logger L.
int L_ut


Detailed Description

Memory storage of off-line data column-wise.

The data are stored in an internal matrix Data . Each column of Data corresponds to one discrete time observation $t$. Access to this matrix is via indices rowid.

The data can be loaded from a file.


Member Function Documentation

void bdm::MemDS::from_setting ( const Setting &  set  )  [inline, virtual]

Create object from the following structure

                { class = "MemDS";
                   Data = (...);            // Data matrix or data vector
                   --- optional ---
                   drv = {class="RV"; ...} // Identification how rows of the matrix Data will be known to others
                   time = 0;               // Index of the first column to user_info,
                   rowid = [1,2,3...];     // ids of rows to be used
                }

If the optional fields are not given, they will be filled as follows:

                rowid= [0, 1, 2, ...number_of_rows_of_Data];
                drv = {names=("ch0", "ch1", "ch2", ..."number_of_rows_of_Data");
                      sizes=( 1    1    1 ...);
                          times=( 0    0    0 ...);
                          };
                time = 0;
If rowid is given, drv will be named after indeces in rowids.

Hence the data provided by method getdata() will be full column of matrix Data starting from the first record.

Reimplemented from bdm::root.

Reimplemented in bdm::ITppFileDS, and bdm::mxArrayDS.

References Data, bdm::DS::dtsize, bdm::UI::get(), rowid, bdm::DS::set_drv(), time, and bdm::DS::utsize.


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

Generated on Wed Oct 7 17:34:46 2009 for mixpp by  doxygen 1.5.9