From c4afee8ef5e16d6dd58cc92713be846a4be0b69f Mon Sep 17 00:00:00 2001
From: Tamas Gal <tgal@km3net.de>
Date: Sun, 19 May 2019 10:52:07 +0200
Subject: [PATCH] Remove old script

---
 scripts/event_hits.py | 173 ------------------------------------------
 1 file changed, 173 deletions(-)
 delete mode 100755 scripts/event_hits.py

diff --git a/scripts/event_hits.py b/scripts/event_hits.py
deleted file mode 100755
index 3389bc0..0000000
--- a/scripts/event_hits.py
+++ /dev/null
@@ -1,173 +0,0 @@
-#!/usr/bin/env python
-# coding=utf-8
-# Filename: event_hits.py
-# Author: Tamas Gal <tgal@km3net.de>
-# vim: ts=4 sw=4 et
-"""
-Monitors hits and triggered hits on each DOM, based on events.
-
-Usage:
-    event_hits.py [options]
-    event_hits.py (-h | --help)
-
-Options:
-    -l LIGIER_IP    The IP of the ligier [default: 127.0.0.1].
-    -p LIGIER_PORT  The port of the ligier [default: 5553].
-    -d DET_ID       Detector ID [default: 29].
-    -o PLOT_DIR     The directory to save the plot [default: www/plots].
-    -h --help       Show this screen.
-
-"""
-from __future__ import division
-
-from datetime import datetime
-from collections import deque, defaultdict
-from functools import partial
-import math
-import os
-import shutil
-import time
-import threading
-from io import BytesIO
-
-import matplotlib
-# Force matplotlib to not use any Xwindows backend.
-matplotlib.use('Agg')
-import matplotlib.pyplot as plt
-import matplotlib.ticker as ticker
-import matplotlib.dates as md
-from matplotlib.colors import LogNorm
-from matplotlib import pylab
-import seaborn as sns
-import pandas as pd
-import numpy as np
-
-from km3pipe import Pipeline, Module, Geometry
-from km3pipe.dataclasses import HitSeries
-from km3pipe.common import Queue, Empty
-from km3pipe.hardware import Detector
-from km3pipe.io import CHPump
-from km3pipe.io.daq import (DAQProcessor, DAQPreamble, DAQSummaryslice,
-                               DAQEvent)
-from km3pipe.time import tai_timestamp
-import km3pipe.style
-km3pipe.style.use('km3pipe')
-
-
-PLOTS_PATH = 'km3web/plots'
-N_DOMS = 18
-N_DUS = 2
-geometry = Geometry(det_id=29)
-detector = geometry.detector
-
-xfmt = md.DateFormatter('%Y-%m-%d %H:%M')
-
-
-class DOMHits(Module):
-    def configure(self):
-        self.run = True
-        self.max_events = 1000
-        self.hits = deque(maxlen=1000)
-        self.triggered_hits = deque(maxlen=1000)
-        self.lock = threading.Lock()
-        self.thread = threading.Thread(target=self.plot).start()
-
-    def process(self, blob):
-        tag = str(blob['CHPrefix'].tag)
-
-        if not tag == 'IO_EVT':
-            return blob
-
-        data = blob['CHData']
-        data_io = BytesIO(data)
-        preamble = DAQPreamble(file_obj=data_io)
-        event = DAQEvent(file_obj=data_io)
-        with self.lock:
-            hits = np.zeros(N_DOMS * N_DUS)
-            for dom_id, _, _, _ in event.snapshot_hits:
-                du, floor, _ = detector.doms[dom_id]
-                hits[(du - 1) * N_DOMS + floor - 1] += 1
-            self.hits.append(hits)
-            triggered_hits = np.zeros(N_DOMS * N_DUS)
-            for dom_id, _, _, _, _ in event.triggered_hits:
-                du, floor, _ = detector.doms[dom_id]
-                triggered_hits[(du - 1) * N_DOMS + floor - 1] += 1
-            self.triggered_hits.append(triggered_hits)
-
-        return blob
-
-    def plot(self):
-        while self.run:
-            with self.lock:
-                self.create_plots()
-            time.sleep(50)
-
-    def create_plots(self):
-        if len(self.hits) > 0:
-            self.create_plot(self.hits, "Hits on DOMs", 'hits_on_doms')
-        if len(self.triggered_hits) > 0:
-            self.create_plot(self.triggered_hits, "Triggered Hits on DOMs",
-                        'triggered_hits_on_doms')
-
-    def create_plot(self, hits, title, filename):
-        fig, ax = plt.subplots(figsize=(16,8))
-        ax.grid(True)
-        ax.set_axisbelow(True)
-        hit_matrix = np.array([np.array(x) for x in hits]).transpose()
-        im = ax.matshow(hit_matrix,
-                  interpolation='nearest', filternorm=None, cmap='plasma',
-                  aspect='auto', origin='lower', zorder=3,
-                  norm=LogNorm(vmin=1, vmax=np.amax(hit_matrix)))
-        yticks = np.arange(N_DOMS * N_DUS)
-        ytick_labels = ["DU{0:0.0f}-DOM{1:02d}"
-                        .format(np.ceil((y+1)/N_DOMS), y % (N_DOMS) + 1) \
-                        for y in yticks]
-        ax.set_yticks(yticks);
-        ax.set_yticklabels(ytick_labels);
-        ax.tick_params(labelbottom=False)
-        ax.tick_params(labeltop=False)
-        ax.set_xlabel("event (latest on the right)")
-        ax.set_title("{0} - via the last {1} Events\n{2} UTC"
-                     .format(title, self.max_events,
-                             datetime.utcnow().strftime("%c")))
-        cb = fig.colorbar(im, pad = 0.05)
-        cb.set_label("number of hits")
-
-        fig.tight_layout()
-
-        f = os.path.join(PLOTS_PATH, filename + '.png')
-        f_tmp = os.path.join(PLOTS_PATH, filename + '_tmp.png')
-        plt.savefig(f_tmp, dpi=120, bbox_inches="tight")
-        plt.close('all')
-        shutil.move(f_tmp, f)
-
-    def finish(self):
-        self.run = False
-        if self.thread is not None:
-            self.thread.stop()
-
-
-
-
-def main():
-    from docopt import docopt
-    args = docopt(__doc__, version=VERSION)
-
-    det_id = int(args['-d'])
-    plots_path = args['-o']
-    ligier_ip = args['-l']
-    ligier_port = int(args['-p'])
-
-    pipe = kp.Pipeline()
-    pipe.attach(kp.io.ch.CHPump, host=ligier_ip,
-                port=ligier_port,
-                tags='IO_EVT, IO_SUM',
-                timeout=60*60*24*7,
-                max_queue=2000)
-    pipe.attach(kp.io.daq.DAQProcessor)
-    pipe.attach(DOMHits, det_id=det_id, plots_path=plots_path)
-    pipe.drain()
-
-
-if __name__ == '__main__':
-    main()
-- 
GitLab