.

Fork of Cntrlol_Lib by Ruprecht Altenburger

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers GPA.h Source File

GPA.h

00001 class GPA
00002 {
00003 public:
00004 
00005     GPA(float fMin, float fMax, int NfexcDes, int NperMin, int NmeasMin, float Ts, float Aexc0, float Aexc1);
00006     GPA(float f0, float f1, float *fexcDes, int NfexcDes, int NperMin, int NmeasMin, float Ts, float Aexc0, float Aexc1);
00007     GPA(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((double)inp, (double)out);
00011     }
00012 
00013     virtual ~GPA();
00014 
00015     void     reset();
00016     float    update(double inp, double 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     double  Ts;
00029     double *fexcDes;
00030     double  aAexcDes;
00031     double  bAexcDes;
00032 
00033     double  fnyq;
00034     double  pi2;
00035     double  pi2Ts;
00036     double  piDiv2;
00037 
00038     int     Nmeas;
00039     int     Nper;
00040     double  fexc;
00041     double  fexcPast;
00042     int     ii;
00043     int     jj;
00044     double  scaleG;
00045     double  scaleH;
00046     double  wk;
00047     double  cr;
00048     double  ci;
00049     double *sU;
00050     double *sY;
00051     double  sinarg;
00052     int     NmeasTotal;
00053     double  Aexc;
00054     double  pi2Tsfexc;
00055 
00056     void    fexcDesLogspace(double fMin, double fMax, int NfexcDes);
00057     void    calcGPAmeasPara(double fexcDes_i);
00058     void    printLine();
00059     void    calcHann();
00060 
00061 };