Upgrade pulse processing, cleanup
Created by: JelleAalbers
This adds:
- Upgraded pulse processing. This requires https://github.com/AxFoundation/strax/pull/190.
- The tail veto now also passes large peaks after other large peaks, with a configurable threshold. See
software_he_vetofor more info. - Add
veto_regionsdata type, which lists the regions removed by the software veto. - Records for diagnostic PMTs and acquisition monitors are split off to separate data types (
diagnostic_recordsandaqmon_records) for further processing. For the moment I chose the convention that the TPC does not need a prefix (sorecordsis still calledrecords, nottpc_records). - Add a
pulse_countsdata type that counts the number of total and lone PMT pulses (not records) in every chunk (i.e. not per second). "Lone" here means that there is no overlapping pulse in any TPC channel. The count is done before the tail / software veto. This would be a useful data type to show on the online monitor with https://github.com/AxFoundation/strax/pull/159.
- The tail veto now also passes large peaks after other large peaks, with a configurable threshold. See
- Add tests. For the moment, it just downloads a tiny file of test data (same as in the tutorial), processes from raw_records to event_info, and checks there are events with non-zero cS1s. This build will fail until a new strax release with https://github.com/AxFoundation/strax/pull/190 is made.
- Add pypi registration for straxen -- why not.
- Split the plugins over some more files. Change import logic so they are available directly under straxen.xxx rather than straxen.plugins.whatever.xxx.
- Removes some whitespace from files (pycharm did this automatically)