From 13d062f0d61e317deef73081f83e0537be58fb6f Mon Sep 17 00:00:00 2001 From: Sergey Revyakin Date: Wed, 25 Feb 2026 11:58:06 +0700 Subject: [PATCH] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB=20=D0=BE=D0=BF=D0=B5=D1=87=D0=B0=D0=B0=D1=82=D0=BA=D1=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/core/data_buffer.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/core/data_buffer.py b/src/core/data_buffer.py index 0dde66a..68e169d 100644 --- a/src/core/data_buffer.py +++ b/src/core/data_buffer.py @@ -13,7 +13,7 @@ class DataBuffer: num_of_thinning_iter: Прореживающий множитель. Раз в это количечество раз будет обнволяться столбец буфера. line_size: Количество строк буфера = количеству каналов. columns_size: Количество столбцов = фиксированное число. - multiply_factor: Прцоентный показатель превышения сигналом уровня шума. ex m_p = 1.1 => триггер, если + multiply_factor: Процентный показатель превышения сигналом уровня шума. ex m_p = 1.1 => триггер, если сигнал превышает шум на 10%. num_for_alarm: Количество раз, превышающих шум, при которых триггеримся = фиксированное число. is_init: Флаг инициализации буфера. = True, если инициализирован. @@ -71,7 +71,7 @@ class DataBuffer: if self.check_init(): for i in range(self.line_size): self.buffer_medians[i] = statistics.median(self.buffer[i]) - # print('meidans is: ', self.buffer_medians) + # print('medians is: ', self.buffer_medians) # return self.buffer_medians def alarms_fill_zeros(self): @@ -130,9 +130,11 @@ class DataBuffer: :return: Да/нет. """ if self.check_init(): + ratios=[] + print("="*50) for i in range(len(data)): exceeding = data[i] > self.multiply_factor * self.buffer_medians[i] - print(data[i]/self.buffer_medians[i]) + ratios.append(data[i]/self.buffer_medians[i]) if exceeding: self.buffer_alarms[i] += 1 # print('Инкремент буффер алармов по каналу {0}, текущее число по этому каналу: {1}'.format(i,self.buffer_alarms[i])) @@ -143,7 +145,12 @@ class DataBuffer: if self.buffer_alarms[i] >= self.num_for_alarm: # print('Сработала тревога по каналу {0}, текущее число по этому каналу: {1}'.format(i,self.buffer_alarms[i])) self.buffer_alarms = [0] * self.line_size + print("Отношения:", [f"{r:.3f}" for r in ratios]) + print("!"*50) return True + print("Отношения:", [f"{r:.3f}" for r in ratios]) + print("="*50) + return False