From 13f6c94fd047b0fed2bcd62d0060acaced5b6584 Mon Sep 17 00:00:00 2001 From: Ryan Voots Date: Sat, 10 May 2025 09:43:15 -0400 Subject: [PATCH] ready for graphing --- sql/condition-glucose-grafana.sql | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/sql/condition-glucose-grafana.sql b/sql/condition-glucose-grafana.sql index 3f7badd..d897299 100644 --- a/sql/condition-glucose-grafana.sql +++ b/sql/condition-glucose-grafana.sql @@ -26,8 +26,22 @@ FROM generate_series($__timeFrom(), $__timeTo(), '1 minute'::interval) AS ts LIMIT 1 ) AS gi_next ON true WHERE gi_prev.time IS NOT NULL and gi_next.time IS NOT NULL AND gi_next.time <> gi_prev.time -) +), collected AS ( SELECT ts as time, - public.ema(samp_value ::real, 0.33) over (order by ts asc) as smoothval, + ema(samp_value ::real, 0.33) over (order by ts asc) as smoothval, samp_value as absvalue -FROM coallated; +FROM coallated), firstorder AS ( +SELECT time, smoothval, absvalue, + smoothval - LAG (smoothval, 1) OVER (ORDER BY time ASC) as delta1st + FROM collected), secondorder AS ( + SELECT + time, + smoothval, + absvalue, + delta1st, + delta1st - LAG(delta1st, 1) OVER (ORDER BY time ASC) as delta2nd + FROM firstorder) + SELECT *, + ema(delta1st, 0.25) OVER (ORDER BY time ASC) as smoothdelta1st, + ema(delta2nd, 0.25) OVER (ORDER BY time ASC) as smoothdelta2nd + FROM secondorder;