All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Functions
ChannelNoiseDB.cxx File Reference
#include "ChannelNoiseDB.h"
#include "larevt/CalibrationDBI/Interface/ElectronicsCalibService.h"
#include "larevt/CalibrationDBI/Interface/ElectronicsCalibProvider.h"
#include "larevt/CalibrationDBI/Interface/ChannelStatusService.h"
#include "larevt/CalibrationDBI/Interface/ChannelStatusProvider.h"
#include "larcore/Geometry/Geometry.h"
#include "WireCellUtil/NamedFactory.h"

Go to the source code of this file.

Functions

 WIRECELL_FACTORY (wclsChannelNoiseDB, wcls::ChannelNoiseDB, wcls::IArtEventVisitor, WireCell::IChannelNoiseDatabase) using namespace WireCell
 

Function Documentation

WIRECELL_FACTORY ( wclsChannelNoiseDB  ,
wcls::ChannelNoiseDB  ,
wcls::IArtEventVisitor  ,
WireCell::IChannelNoiseDatabase   
)

This channel noise database class inherits from OmniChannelNoiseDB and thus may be fully configured via WCT configuration.

It additionally provides some select and configurable means to override this configuration with information taken from Art services.

  • If bad_channel_policy is set then take bad channels from the ChannelStatusService. Example WCT config:

    bad_channel: {policy: "replace"}, bad_channel: {policy: "union"},

  • If misconfig_channel_policy is set then take misconfigured channels from ElectronicsCalibService. Example WCT config:

    misconfig_channel: { policy: "replace", from: {gain: 4.7*wc.mV/wc.fC, shaping: 1.1*wc.us}, to: {gain: 14.0*wc.mV/wc.fC, shaping: 2.2*wc.us}, }

Fixme: original noise filter also used the following and needs to be handled somewhere:

  • DetPedestalService: to learn and restore a per-channel baseline.