# pmsmDS Class Reference

`#include <pmsmDS.h>`

Inheritance diagram for pmsmDS:

List of all members.

## Detailed Description

Simulator of PMSM machine with predefined profile on omega.

## Public Member Functions
| pmsmDS ()
| Constructor with fixed sampling period.
void | set_parameters (double Rs0, double Ls0, double Fmag0, double Bf0, double p0, double kp0, double J0, double Uc0, double DT0, double dt0)
void | set_options (string &opt)
| parse options: "modelu" => opt_modu=true;
void | getdata (vec &dt)
| Returns full vector of observed data=[output, input].
void | write (vec &ut)
| Accepts action variable and schedule it for application.
void | step ()
| Moves from to , i.e. perfroms the actions and reads response of the system.
void | log_add (logger &L)
| Register DS for logging into logger L.
void | logit (logger &L)
| Register DS for logging into logger L.
void | set_profile (double dt, const vec &Ww)
virtual void | getdata (vec &dt, const ivec &indeces)
| Returns data records at indeces.
virtual void | write (vec &ut, const ivec &indeces)
| Accepts action variables at specific indeces.
virtual RV | _drv () const
| access function
const RV & | _urv () const
| access function
## Protected Attributes
int | L_x
| indeces of logged variables
int | L_ou
int | L_oy
int | L_iu
int | L_optu
vec | profileWw
| Setpoints of omega in timespans given by dt_prof.
double | dt_prof
| time-step for profiles
int | Dt
| Number of miliseconds per discrete time step.
bool | opt_modu
| options for logging, - log predictions of 'true' voltage
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

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

- pmsmDS.h