diff --git a/src/DataVampire.cpp b/src/DataVampire.cpp index d18d6c3161d5476081ec650d406a3a57e51ba116..1068df9b4690e1be863c4e9f8d52f2deb0f1c663 100644 --- a/src/DataVampire.cpp +++ b/src/DataVampire.cpp @@ -2387,11 +2387,13 @@ void DataVampire::process_1D(int32_t cache_idx, int32_t auto_bck_samples) if (cache_buffer[cache_idx].datavalid[i*wave_size+j]) { sum += val; - pos += val * (j + 1); + pos += val * (double)(j + 1); cnt++; } } mean = sum / (double) cnt; + pos /= sum; + // get std cnt = 0; @@ -2403,7 +2405,8 @@ void DataVampire::process_1D(int32_t cache_idx, int32_t auto_bck_samples) } if (cnt != 0) std = pow(std / (double) cnt, 0.5); - std = 0; + else + std = 0; cache_buffer[cache_idx].sum[i] = sum; cache_buffer[cache_idx].mean[i] = mean;