network/generator.h

00001 // generator.h
00002 
00003 #ifndef _GENERATOR_H
00004 #define _GENERATOR_H
00005 
00006 class generator {
00007 public:
00008     double Pdesired_MW;     // desired real power output
00009     double Qdesired_MVAR;   // desired reactive power output (if Q controlled)
00010     int32 Qcontrolled;      // flag true if reactive power is controlled (requires PQ bus)
00011     double Pmax_MW;         // maximum real power
00012     double Qmin_MVAR;       // maximum reactive power possible
00013     double Qmax_MVAR;       // minimum reactive power possible
00014     double QVa, QVb, QVc;   // voltage response parameters (Q = a*V^2 + b*V + c)
00015     enum {STOPPED=0, STANDBY=1, ONLINE=2, TRIPPED=3} state;
00016 private:
00017     //int generator_state_to_string(void *addr, char *value, int size);
00018     //int generator_state_from_string(void *addr, char *value);
00019 public:
00020     static CLASS *oclass;
00021     static generator *defaults;
00022     static CLASS *pclass;
00023 public:
00024     generator(MODULE *mod);
00025     int create();
00026     int init(node *parent);
00027     TIMESTAMP sync(TIMESTAMP t0);
00028 };
00029 
00030 GLOBAL CLASS *generator_class INIT(NULL);
00031 GLOBAL OBJECT *last_generator INIT(NULL);
00032 
00033 #endif

GridLAB-DTM Version 1.0
An open-source project initiated by the US Department of Energy