# bdm::ArxDS Class Reference

Generator of ARX data. More...

`#include <datasources.h>`

List of all members.

## Public Member Functions
void | getdata (vec &dt)
| Returns full vector of observed data=[output, input].
void | getdata (vec &dt, const ivec &indices)
| Returns data records at indeces.
void | write (vec &ut)
| Accepts action variable and schedule it for application.
void | write (vec &ut, const ivec &indices)
| Accepts action variables at specific indeces.
void | step ()
| Moves from to , i.e. perfroms the actions and reads response of the system.
| ArxDS ()
| Default constructor.
void | set_parameters (const mat &Th0, const vec mu0, const chmat &sqR0)
| Set parameters of the internal model, H is maximum time delay.
void | set_drv (const RV &yrv, const RV &urv, const RV &rrv)
| Set.
void | set_options (const string &s)
| set options from a string
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.
void | from_setting (const Setting &set)
virtual RV | _drv () const
| access function
const RV & | _urv () const
| access function
virtual void | set_drv (const RV &drv, const RV &urv)
| set random rvariables
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
RV | Rrv
| Rv of the regressor.
vec | H
| History, ordered as .
vec | U
| (future) input
vec | rgr
| temporary variable for regressor
datalink | rgrlnk
| data link: H -> rgr
mlnorm< chmat > | model
| model of Y - linear Gaussian
bool | opt_L_theta
| options
int | L_theta
| loggers
int | L_R
int | dt_size
int | dtsize
int | utsize
RV | Drv
| Description of data returned by `getdata()`.
RV | Urv
| Description of data witten by by `write()`.
int | L_dt
| Remember its own index in Logger L.
int | L_ut

## Detailed Description

Generator of ARX data.

## Member Function Documentation

void ArxDS::from_setting | ( | const Setting & | set | ) | `[virtual]`

UI for ArxDS using factorized description!

The ArxDS is constructed from a structure with fields:

            system = {
                    type = "ArxDS";
                    // description of y variables
                    y = {type="rv"; names=["y", "u"];};
                    // description of u variable
                    u = {type="rv"; names=[];}
                    // description of regressor
                    rgr = {type="rv";
                            names = ["y","y","y","u"];
                            times = [-1, -2, -3, -1];
                    }

                    // theta
                    theta = [0.8, -0.3, 0.4, 1.0,
                                     0.0, 0.0, 0.0, 0.0];
                    // offset (optional)
                    offset = [0.0, 0.0];
                    //variance
                    r = [0.1, 0.0,
                             0.0, 1.0];
                    //options: L_theta = log value of theta,
                    opt = "L_theta";
            };

Result is ARX data source offering with full history as Drv.

Reimplemented from bdm::root.

References bdm::UI::get(), set_drv(), set_options(), and set_parameters().

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

- datasources.h
- datasources.cpp