File indexing completed on 2025-08-03 08:15:33
0001 WITH good_runs AS (
0002
0003 SELECT runnumber
0004 FROM filelist
0005 WHERE (
0006 (filename LIKE '%@RUNTYPE@/%ebdc%' AND filename LIKE '%.evt') OR
0007 (filename LIKE '%@RUNTYPE@/%mvtx%' AND filename LIKE '%.evt') OR
0008 (filename LIKE '%@RUNTYPE@/%intt%' AND filename LIKE '%.evt')
0009 )
0010
0011 GROUP BY runnumber
0012 HAVING
0013 COUNT(DISTINCT CASE
0014 WHEN filename LIKE '%TPC_ebdc%' AND filename LIKE '%-0000.evt'
0015 THEN SUBSTRING(filename FROM 'TPC_ebdc(\d{2}_\d)')
0016 END) = 48
0017
0018 AND
0019
0020 COUNT(DISTINCT CASE
0021 WHEN filename LIKE '%mvtx%' AND filename LIKE '%-0000.evt'
0022 THEN SUBSTRING(filename FROM 'mvtx(\d+)')
0023 END) = 6
0024
0025 AND
0026
0027 COUNT(DISTINCT CASE
0028 WHEN filename LIKE '%intt%' AND filename LIKE '%-0000.evt'
0029 THEN SUBSTRING(filename FROM 'intt(\d+)')
0030 END) = 8
0031
0032
0033 @TRANSFER_CONDITION@
0034 )
0035
0036 SELECT
0037 r.runnumber,
0038 r.runtype,
0039 r.brtimestamp,
0040 r.ertimestamp,
0041 r.eventsinrun AS total_events,
0042 ROUND(EXTRACT(EPOCH FROM r.ertimestamp - r.brtimestamp)) AS duration_sec,
0043 ROUND(r.eventsinrun::numeric / NULLIF(EXTRACT(EPOCH FROM r.ertimestamp - r.brtimestamp), 0), 2) AS event_rate
0044 FROM good_runs gr
0045 JOIN run r ON r.runnumber = gr.runnumber
0046 WHERE r.runtype = '@RUNTYPE@'
0047 AND r.eventsinrun > 0
0048 AND r.brtimestamp IS NOT NULL
0049 AND r.ertimestamp IS NOT NULL
0050 AND EXTRACT(EPOCH FROM r.ertimestamp - r.brtimestamp) >= 300
0051 ORDER BY r.runnumber DESC;
0052