diff options
Diffstat (limited to 'src/c/statisticsFunctions/meanf/cmeanfa.c')
-rw-r--r-- | src/c/statisticsFunctions/meanf/cmeanfa.c | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/src/c/statisticsFunctions/meanf/cmeanfa.c b/src/c/statisticsFunctions/meanf/cmeanfa.c index 5b4037b0..fceaff7d 100644 --- a/src/c/statisticsFunctions/meanf/cmeanfa.c +++ b/src/c/statisticsFunctions/meanf/cmeanfa.c @@ -16,13 +16,25 @@ floatComplex cmeanfa(floatComplex *in1, int size, floatComplex *in2 ) { floatComplex accumulate = FloatComplex(0.0f, 0.0f); - floatComplex freAccumulate = FloatComplex(0.0f, 0.0f); + float freAccumulate = 0.0f; int i = 0; for (i = 0; i < size; ++i) { accumulate = cadds(accumulate, cmuls (in1[i] , in2[i])); - freAccumulate = cadds(accumulate, in2[i]); + freAccumulate += creals(in2[i]); } - return FloatComplex(creals(accumulate) / creals(freAccumulate), cimags(accumulate) / creals(freAccumulate)); + return FloatComplex(creals(accumulate) /freAccumulate, cimags(accumulate) /freAccumulate); } + + +/* + for (i = 0; i < size; ++i) + { + accumulate += (in1[i] * in2[i]) ; + freAccumulate += in2[i] ; + } + return accumulate / freAccumulate; + + +*/ |