.

Fork of Cntrlol_Lib by Ruprecht Altenburger

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers GPAf.h Source File

GPAf.h

00001 class GPAf
00002 {
00003 public:
00004 
00005     GPAf(float fMin, float fMax, int NfexcDes, int NperMin, int NmeasMin, float Ts, float Aexc0, float Aexc1);
00006     GPAf(float f0, float f1, float *fexcDes, int NfexcDes, int NperMin, int NmeasMin, float Ts, float Aexc0, float Aexc1);
00007     GPAf(float *fexcDes, int NfexcDes, int NperMin, int NmeasMin, float Ts, float Aexc0, float Aexc1);
00008 
00009     float operator()(float inp, float out) {
00010         return update((float)inp, (float)out);
00011     }
00012 
00013     virtual ~GPAf();
00014 
00015     void     reset();
00016     float    update(float inp, float out);
00017 
00018     void     printGPAfexcDes();
00019     void     printGPAmeasPara();
00020     void     printGPAmeasTime();
00021     void     printNfexcDes();
00022 
00023 private:
00024 
00025     int     NfexcDes;
00026     int     NperMin;
00027     int     NmeasMin;
00028     float  Ts;
00029     float *fexcDes;
00030     float  aAexcDes;
00031     float  bAexcDes;
00032 
00033     float  fnyq;
00034     float  pi2;
00035     float  pi2Ts;
00036     float  piDiv2;
00037 
00038     int     Nmeas;
00039     int     Nper;
00040     float  fexc;
00041     float  fexcPast;
00042     int     ii;
00043     int     jj;
00044     float  scaleG;
00045     float  scaleH;
00046     float  wk;
00047     float  cr;
00048     float  ci;
00049     float *sU;
00050     float *sY;
00051     float  sinarg;
00052     int     NmeasTotal;
00053     float  Aexc;
00054     float  pi2Tsfexc;
00055 
00056     void    fexcDesLogspace(float fMin, float fMax, int NfexcDes);
00057     void    calcGPAmeasPara(float fexcDes_i);
00058     void    printLine();
00059     void    calcHann();
00060 
00061 };