.
Fork of Cntrlol_Lib by
GPAf.h@7:15ea5021288d, 2018-10-26 (annotated)
- Committer:
- altb
- Date:
- Fri Oct 26 12:31:41 2018 +0000
- Revision:
- 7:15ea5021288d
Added GPAf class, GPA with single Prec. arithmetic. (approx: 10x faster)
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
altb | 7:15ea5021288d | 1 | class GPAf |
altb | 7:15ea5021288d | 2 | { |
altb | 7:15ea5021288d | 3 | public: |
altb | 7:15ea5021288d | 4 | |
altb | 7:15ea5021288d | 5 | GPAf(float fMin, float fMax, int NfexcDes, int NperMin, int NmeasMin, float Ts, float Aexc0, float Aexc1); |
altb | 7:15ea5021288d | 6 | GPAf(float f0, float f1, float *fexcDes, int NfexcDes, int NperMin, int NmeasMin, float Ts, float Aexc0, float Aexc1); |
altb | 7:15ea5021288d | 7 | GPAf(float *fexcDes, int NfexcDes, int NperMin, int NmeasMin, float Ts, float Aexc0, float Aexc1); |
altb | 7:15ea5021288d | 8 | |
altb | 7:15ea5021288d | 9 | float operator()(float inp, float out) { |
altb | 7:15ea5021288d | 10 | return update((float)inp, (float)out); |
altb | 7:15ea5021288d | 11 | } |
altb | 7:15ea5021288d | 12 | |
altb | 7:15ea5021288d | 13 | virtual ~GPAf(); |
altb | 7:15ea5021288d | 14 | |
altb | 7:15ea5021288d | 15 | void reset(); |
altb | 7:15ea5021288d | 16 | float update(float inp, float out); |
altb | 7:15ea5021288d | 17 | |
altb | 7:15ea5021288d | 18 | void printGPAfexcDes(); |
altb | 7:15ea5021288d | 19 | void printGPAmeasPara(); |
altb | 7:15ea5021288d | 20 | void printGPAmeasTime(); |
altb | 7:15ea5021288d | 21 | void printNfexcDes(); |
altb | 7:15ea5021288d | 22 | |
altb | 7:15ea5021288d | 23 | private: |
altb | 7:15ea5021288d | 24 | |
altb | 7:15ea5021288d | 25 | int NfexcDes; |
altb | 7:15ea5021288d | 26 | int NperMin; |
altb | 7:15ea5021288d | 27 | int NmeasMin; |
altb | 7:15ea5021288d | 28 | float Ts; |
altb | 7:15ea5021288d | 29 | float *fexcDes; |
altb | 7:15ea5021288d | 30 | float aAexcDes; |
altb | 7:15ea5021288d | 31 | float bAexcDes; |
altb | 7:15ea5021288d | 32 | |
altb | 7:15ea5021288d | 33 | float fnyq; |
altb | 7:15ea5021288d | 34 | float pi2; |
altb | 7:15ea5021288d | 35 | float pi2Ts; |
altb | 7:15ea5021288d | 36 | float piDiv2; |
altb | 7:15ea5021288d | 37 | |
altb | 7:15ea5021288d | 38 | int Nmeas; |
altb | 7:15ea5021288d | 39 | int Nper; |
altb | 7:15ea5021288d | 40 | float fexc; |
altb | 7:15ea5021288d | 41 | float fexcPast; |
altb | 7:15ea5021288d | 42 | int ii; |
altb | 7:15ea5021288d | 43 | int jj; |
altb | 7:15ea5021288d | 44 | float scaleG; |
altb | 7:15ea5021288d | 45 | float scaleH; |
altb | 7:15ea5021288d | 46 | float wk; |
altb | 7:15ea5021288d | 47 | float cr; |
altb | 7:15ea5021288d | 48 | float ci; |
altb | 7:15ea5021288d | 49 | float *sU; |
altb | 7:15ea5021288d | 50 | float *sY; |
altb | 7:15ea5021288d | 51 | float sinarg; |
altb | 7:15ea5021288d | 52 | int NmeasTotal; |
altb | 7:15ea5021288d | 53 | float Aexc; |
altb | 7:15ea5021288d | 54 | float pi2Tsfexc; |
altb | 7:15ea5021288d | 55 | |
altb | 7:15ea5021288d | 56 | void fexcDesLogspace(float fMin, float fMax, int NfexcDes); |
altb | 7:15ea5021288d | 57 | void calcGPAmeasPara(float fexcDes_i); |
altb | 7:15ea5021288d | 58 | void printLine(); |
altb | 7:15ea5021288d | 59 | void calcHann(); |
altb | 7:15ea5021288d | 60 | |
altb | 7:15ea5021288d | 61 | }; |