1 #include "Test.h" 2 #include "Pattern.h" 3 4 #include "dsp/matrix_functions.h" 5 6 class UnaryTestsF64:public Client::Suite 7 { 8 public: 9 UnaryTestsF64(Testing::testID_t id); 10 virtual void setUp(Testing::testID_t,std::vector<Testing::param_t>& params,Client::PatternMgr *mgr); 11 virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); 12 private: 13 #include "UnaryTestsF64_decl.h" 14 15 void compute_ldlt_error(const int n,const int16_t *outpp); 16 17 Client::Pattern<float64_t> input1; 18 Client::Pattern<float64_t> input2; 19 Client::Pattern<float64_t> ref; 20 Client::Pattern<float64_t> refBeta; 21 22 23 Client::Pattern<float64_t> refll; 24 Client::Pattern<float64_t> refd; 25 Client::Pattern<int16_t> refp; 26 Client::Pattern<float64_t> refTau; 27 Client::Pattern<float64_t> refR; 28 Client::Pattern<float64_t> refQ; 29 30 Client::Pattern<int16_t> dims; 31 Client::LocalPattern<float64_t> output; 32 Client::LocalPattern<float64_t> outputBeta; 33 34 Client::LocalPattern<float64_t> outputll; 35 Client::LocalPattern<float64_t> outputd; 36 Client::LocalPattern<int16_t> outputp; 37 38 Client::LocalPattern<float64_t> outputTau; 39 Client::LocalPattern<float64_t> outputR; 40 Client::LocalPattern<float64_t> outputQ; 41 42 /* Local copies of inputs since matrix instance in CMSIS-DSP are not using 43 pointers to const. 44 */ 45 Client::LocalPattern<float64_t> a; 46 Client::LocalPattern<float64_t> b; 47 Client::LocalPattern<float64_t> c; 48 Client::LocalPattern<float64_t> d; 49 50 Client::LocalPattern<float64_t> tmpapat; 51 Client::LocalPattern<float64_t> tmpbpat; 52 Client::LocalPattern<float64_t> tmpcpat; 53 Client::LocalPattern<float64_t> outputa; 54 Client::LocalPattern<float64_t> outputb; 55 56 int nbr; 57 int nbc; 58 59 arm_matrix_instance_f64 in1; 60 arm_matrix_instance_f64 in2; 61 arm_matrix_instance_f64 out; 62 63 arm_matrix_instance_f64 outll; 64 arm_matrix_instance_f64 outd; 65 arm_matrix_instance_f64 outQ; 66 arm_matrix_instance_f64 outR; 67 68 float64_t *outa; 69 float64_t *outb; 70 }; 71