.
Fork of Cntrlol_Lib by
Diff: GPAf.h
- Revision:
- 7:15ea5021288d
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/GPAf.h Fri Oct 26 12:31:41 2018 +0000 @@ -0,0 +1,61 @@ +class GPAf +{ +public: + + GPAf(float fMin, float fMax, int NfexcDes, int NperMin, int NmeasMin, float Ts, float Aexc0, float Aexc1); + GPAf(float f0, float f1, float *fexcDes, int NfexcDes, int NperMin, int NmeasMin, float Ts, float Aexc0, float Aexc1); + GPAf(float *fexcDes, int NfexcDes, int NperMin, int NmeasMin, float Ts, float Aexc0, float Aexc1); + + float operator()(float inp, float out) { + return update((float)inp, (float)out); + } + + virtual ~GPAf(); + + void reset(); + float update(float inp, float out); + + void printGPAfexcDes(); + void printGPAmeasPara(); + void printGPAmeasTime(); + void printNfexcDes(); + +private: + + int NfexcDes; + int NperMin; + int NmeasMin; + float Ts; + float *fexcDes; + float aAexcDes; + float bAexcDes; + + float fnyq; + float pi2; + float pi2Ts; + float piDiv2; + + int Nmeas; + int Nper; + float fexc; + float fexcPast; + int ii; + int jj; + float scaleG; + float scaleH; + float wk; + float cr; + float ci; + float *sU; + float *sY; + float sinarg; + int NmeasTotal; + float Aexc; + float pi2Tsfexc; + + void fexcDesLogspace(float fMin, float fMax, int NfexcDes); + void calcGPAmeasPara(float fexcDes_i); + void printLine(); + void calcHann(); + +}; \ No newline at end of file