Test of pmic GPA with filter

Dependencies:   mbed

Fork of nucf446-cuboid-balance1_strong by RT2_Cuboid_demo

Committer:
pmic
Date:
Mon Apr 09 18:23:10 2018 +0000
Revision:
25:e46687840dd6
Parent:
24:33ded7d7bcbd
Child:
26:492c7ab05e67
extend gpa with instantiate option 3: (for an arbitary but sorted frequency grid measurement)

Who changed what in which revision?

UserRevisionLine numberNew contents of line
pmic 6:da0c9587ecae 1 class GPA
pmic 6:da0c9587ecae 2 {
pmic 6:da0c9587ecae 3 public:
pmic 6:da0c9587ecae 4
pmic 6:da0c9587ecae 5 GPA(float fMin, float fMax, int NfexcDes, int NperMin, int NmeasMin, float Ts, float Aexc0, float Aexc1);
pmic 24:33ded7d7bcbd 6 GPA(float f0, float f1, float *fexcDes, int NperMin, int NmeasMin, float Ts, float Aexc0, float Aexc1);
pmic 25:e46687840dd6 7 GPA(float *fexcDes, int NperMin, int NmeasMin, float Ts, float Aexc0, float Aexc1);
pmic 6:da0c9587ecae 8
pmic 6:da0c9587ecae 9 float operator()(float inp, float out) {
pmic 22:715d351d0be7 10 return update((double)inp, (double)out);
pmic 6:da0c9587ecae 11 }
pmic 6:da0c9587ecae 12
pmic 6:da0c9587ecae 13 virtual ~GPA();
pmic 8:d68e177e2571 14
pmic 6:da0c9587ecae 15 void reset();
pmic 22:715d351d0be7 16 float update(double inp, double out);
pmic 8:d68e177e2571 17
pmic 6:da0c9587ecae 18 void printGPAfexcDes();
pmic 6:da0c9587ecae 19 void printGPAmeasPara();
pmic 6:da0c9587ecae 20 void printGPAmeasTime();
pmic 6:da0c9587ecae 21
pmic 6:da0c9587ecae 22 private:
pmic 6:da0c9587ecae 23
pmic 6:da0c9587ecae 24 int NfexcDes;
pmic 6:da0c9587ecae 25 int NperMin;
pmic 6:da0c9587ecae 26 int NmeasMin;
pmic 22:715d351d0be7 27 double Ts;
pmic 22:715d351d0be7 28 double *fexcDes;
pmic 22:715d351d0be7 29 double aAexcDes;
pmic 22:715d351d0be7 30 double bAexcDes;
pmic 8:d68e177e2571 31
pmic 22:715d351d0be7 32 double fnyq;
pmic 22:715d351d0be7 33 double pi2;
pmic 22:715d351d0be7 34 double pi2Ts;
pmic 22:715d351d0be7 35 double piDiv2;
pmic 8:d68e177e2571 36
pmic 6:da0c9587ecae 37 int Nmeas;
pmic 6:da0c9587ecae 38 int Nper;
pmic 22:715d351d0be7 39 double fexc;
pmic 22:715d351d0be7 40 double fexcPast;
pmic 6:da0c9587ecae 41 int ii;
pmic 6:da0c9587ecae 42 int jj;
pmic 22:715d351d0be7 43 double scaleG;
pmic 22:715d351d0be7 44 double cr;
pmic 22:715d351d0be7 45 double ci;
pmic 22:715d351d0be7 46 double *sU;
pmic 22:715d351d0be7 47 double *sY;
pmic 22:715d351d0be7 48 double sinarg;
pmic 6:da0c9587ecae 49 int NmeasTotal;
pmic 22:715d351d0be7 50 double Aexc;
pmic 22:715d351d0be7 51 double pi2Tsfexc;
pmic 8:d68e177e2571 52
pmic 22:715d351d0be7 53 void fexcDesLogspace(double fMin, double fMax, int NfexcDes);
pmic 22:715d351d0be7 54 void calcGPAmeasPara(double fexcDes_i);
pmic 6:da0c9587ecae 55 void printLine();
pmic 6:da0c9587ecae 56
pmic 6:da0c9587ecae 57 };