summaryrefslogtreecommitdiff
path: root/src/statisticsFunctions/variance/zvariancea.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/statisticsFunctions/variance/zvariancea.c')
-rw-r--r--src/statisticsFunctions/variance/zvariancea.c21
1 files changed, 3 insertions, 18 deletions
diff --git a/src/statisticsFunctions/variance/zvariancea.c b/src/statisticsFunctions/variance/zvariancea.c
index 17dabe59..a1b65278 100644
--- a/src/statisticsFunctions/variance/zvariancea.c
+++ b/src/statisticsFunctions/variance/zvariancea.c
@@ -16,35 +16,20 @@ doubleComplex zvariancea(doubleComplex *in, int size)
{
int i = 0 ;
- /*here sumcis used to compensate the possible round off error to a less
- important degree */
-
doubleComplex sum = DoubleComplex ( 0 , 0 ) ;
doubleComplex temp = DoubleComplex ( 0 , 0 ) ;
- doubleComplex sumc = DoubleComplex ( 0 , 0 ) ;
doubleComplex variance = DoubleComplex ( 0 , 0 );
doubleComplex mean = zmeana ( in , size ) ;
for ( i = 0 ; i < size ; i++)
{
-
temp = zdiffs( in[i] , mean ) ;
sum = zadds ( sum , zpows ( temp , DoubleComplex ( 2, 0) ) );
- sumc = zadds ( sumc , temp );
- printf ( "%d r : %e i : %e\n" , i , zreals(in[i]) , zimags (in[i]));
}
- printf ( "\n\n" ) ;
- /*we don't use sumc if equal to 0 otherwise we would have "nan" */
- if ( fabs ( zreals ( sumc)) > 1e-16 || fabs ( zimags ( sumc)) > 1e-16 )
- {
- variance = zpows ( sumc ,DoubleComplex (2 , 0)) ;
- variance = zrdivs ( variance , DoubleComplex ( size , 0 ) ) ;
- variance = zdiffs ( sum , variance );
- variance = zrdivs (variance , DoubleComplex ( (size - 1),0 ));
- }
- else
- variance = zrdivs (sum , DoubleComplex ( (size - 1),0 ));
+
+ variance = zrdivs (sum , DoubleComplex ( (size - 1),0 ));
return variance ;
+
}