HerdSoftware  0.4.0
Public Member Functions | Private Attributes | List of all members
Herd::CaloPDChannelInfo Class Reference

Data structure for the Calo PD readout information. More...

#include <dataobjects/CaloPDChannelInfo.h>

Public Member Functions

 CaloPDChannelInfo ()
 Default constructor with the number of channels = 0. More...
 
 CaloPDChannelInfo (unsigned int nChannels)
 Constructor. More...
 
virtual ~CaloPDChannelInfo ()=default
 Virtual destructor
More...
 
void SetNChannels (size_t nChannels)
 Setup the total number of channels. More...
 
float MIPvalue (unsigned int volID) const
 Return the MIP value [ADC]. More...
 
float SiLpdMIPvalue (unsigned int volID) const
 Return the MIP value in Si for LPD [ADC]. More...
 
float SiSpdMIPvalue (unsigned int volID) const
 Return the MIP value in Si for SPD [ADC]. More...
 
float SiLpdMipVar (unsigned int volID) const
 Return the MIP RMS in Si for LPD [ADC]. More...
 
float SiSpdMipVar (unsigned int volID) const
 Return the MIP RMS in Si for SPD [ADC]. More...
 
const std::vector< float > & MIPvalues () const
 Return a vector with the MIP values [ADC]. More...
 
const std::vector< float > & SiLpdMIPvalues () const
 Return a vector with the MIP values in Si for LPD [ADC]. More...
 
const std::vector< float > & SiSpdMIPvalues () const
 Return a vector with the MIP values in Si for SPD [ADC]. More...
 
const std::vector< float > & SiLpdMopVar () const
 Return a vector with the MIP RMS in Si for LPD [ADC]. More...
 
const std::vector< float > & SiSpdMipVar () const
 Return a vector with the MIP RMS in Si for SPD [ADC]. More...
 
float HighGainNoise (unsigned int volID) const
 Return the high gain noise [ADC]. More...
 
const std::vector< float > & HighGainNoises () const
 Return a vector with the high gain noises [ADC]. More...
 
float LowGainNoise (unsigned int volID) const
 Return the low gain noise [ADC]. More...
 
const std::vector< float > & LowGainNoises () const
 Return a vector with the low gain noises [ADC]. More...
 
float GainRatio (unsigned int volID) const
 Return the gain ratio. More...
 
const std::vector< float > & GainRatios () const
 Return a vector with the gain ratios. More...
 
float MaximumHighGainSignal (unsigned int volID) const
 Return the maximum signal obtained with high gain [ADC]. More...
 
const std::vector< float > & MaximumHighGainSignals () const
 Return a vector with the maximum signals obtained with high gain [ADC]. More...
 
float MaximumLowGainSignal (unsigned int volID) const
 Return the maximum signal obtained with low gain [ADC]. More...
 
const std::vector< float > & MaximumLowGainSignals () const
 Return a vector with the maximum signals obtained with low gain [ADC]. More...
 
float Pedestal (unsigned int volID) const
 Return the pedestal mean [ADC]. More...
 
const std::vector< float > & Pedestals () const
 Return a vector with the pedestal means [ADC]. More...
 
unsigned int NChannels () const
 Return the number of channels. More...
 
void SetMIPvalue (unsigned int volID, float MIPvalue)
 Set MIP value. More...
 
void SetSiLpdMipValue (unsigned int volID, float MIPvalue)
 Set MIP value in Si for LPD. More...
 
void SetSiSpdMipValue (unsigned int volID, float MIPvalue)
 Set MIP value in Si for SPD. More...
 
void SetSiLPDMIPvar (unsigned int volID, float MIPvar)
 Set MIP RMS in Si for LPD. More...
 
void SetSiSPDMIPvar (unsigned int volID, float MIPvar)
 Set MIP RMS in Si for SPD. More...
 
void SetHighGainNoise (unsigned int volID, float HGnoise)
 Set high gain noise (i.e. pedestal distribution RMS). More...
 
void SetLowGainNoise (unsigned int volID, float LGnoise)
 Set low gain noise (i.e. pedestal distribution RMS). More...
 
void SetGainRatio (unsigned int volID, float gainRatio)
 Set gain ratio. More...
 
void SetMaximumHighGainSignal (unsigned int volID, float maxHGADCvalues)
 Set saturation level for high gain. More...
 
void SetMaximumLowGainSignal (unsigned int volID, float maxLGADCvalues)
 Set saturation level for low gain gain. More...
 
void SetPedestal (unsigned int volID, float pedestal)
 Set pedestal mean. More...
 

Private Attributes

std::vector< float > _MIPvalues
 MIP values for each crystal in ADC as read by the LPD. More...
 
std::vector< float > _HGnoises
 RMS of the pedestal when the electronics is in Low gain, for each crystal. More...
 
std::vector< float > _LGnoises
 RMS of the pedestal when the electronics is in low gain, for each crystal. More...
 
std::vector< float > _gainRatios
 Ration between Low gain and low gain. More...
 
std::vector< float > _maxHGADCvalues
 ADC value of the saturation for Low gain. More...
 
std::vector< float > _maxLGADCvalues
 ADC value of the saLuration for Low gain, i.e. the saturation of teh chip. More...
 
std::vector< float > _pedestals
 ADC value of the pedestal, the pedesLal is the same in LG and HG. More...
 
std::vector< float > _SiLpdMIPvalues
 MIP values in Si LPD for each crystal. More...
 
std::vector< float > _SiSpdMIPvalues
 MIP values in Si SPD for each crystal. More...
 
std::vector< float > _SiLpdMIPvar
 RMS of MIP values in Si LPD for each crystal. More...
 
std::vector< float > _SiSpdMIPvar
 RMS of MIP values in Si SPD for each crystal. More...
 

Detailed Description

Data structure for the Calo PD readout information.

It is based on several laboratory test performed in 2019/2020 using the HIDRA chips, version 2. Each PD is connected to a dedicated HIDRA channel. The ACQ system is based on the TROC2-1 boards. Brief HIDRA description (see the data-sheet): "The HIDRA-2 ASIC includes 16 frontend channels, based on a pulsed reset Charge Sensitive Amplifier (CSA) with automatic double-gain selection, followed by a Correlated Double Sampling (CDS) filter, and a self-trigger circuitry that provides a differential CMOS output for each pair of channels".

Constructor & Destructor Documentation

◆ CaloPDChannelInfo() [1/2]

Herd::CaloPDChannelInfo::CaloPDChannelInfo ( )
inline

Default constructor with the number of channels = 0.

◆ CaloPDChannelInfo() [2/2]

Herd::CaloPDChannelInfo::CaloPDChannelInfo ( unsigned int  nChannels)
inline

Constructor.

Parameters
nChannelsnumber of channels, i.e. number of PD.

◆ ~CaloPDChannelInfo()

virtual Herd::CaloPDChannelInfo::~CaloPDChannelInfo ( )
virtualdefault

Virtual destructor

Member Function Documentation

◆ GainRatio()

float Herd::CaloPDChannelInfo::GainRatio ( unsigned int  volID) const
inline

Return the gain ratio.

Parameters
volIDVolume identifier.
Returns
Gain ratio.

◆ GainRatios()

const std::vector<float>& Herd::CaloPDChannelInfo::GainRatios ( ) const
inline

Return a vector with the gain ratios.

Returns
Gain ratios.

◆ HighGainNoise()

float Herd::CaloPDChannelInfo::HighGainNoise ( unsigned int  volID) const
inline

Return the high gain noise [ADC].

Parameters
volIDVolume identifier.
Returns
High gain noise [ADC].

◆ HighGainNoises()

const std::vector<float>& Herd::CaloPDChannelInfo::HighGainNoises ( ) const
inline

Return a vector with the high gain noises [ADC].

Returns
High gain noises.

◆ LowGainNoise()

float Herd::CaloPDChannelInfo::LowGainNoise ( unsigned int  volID) const
inline

Return the low gain noise [ADC].

Parameters
volIDVolume identifier.
Returns
Low gain noise [ADC].

◆ LowGainNoises()

const std::vector<float>& Herd::CaloPDChannelInfo::LowGainNoises ( ) const
inline

Return a vector with the low gain noises [ADC].

Returns
Low gain noises.

◆ MaximumHighGainSignal()

float Herd::CaloPDChannelInfo::MaximumHighGainSignal ( unsigned int  volID) const
inline

Return the maximum signal obtained with high gain [ADC].

Parameters
volIDVolume identifier.
Returns
Maximum high gain singal [ADC].

◆ MaximumHighGainSignals()

const std::vector<float>& Herd::CaloPDChannelInfo::MaximumHighGainSignals ( ) const
inline

Return a vector with the maximum signals obtained with high gain [ADC].

Returns
Maximum high gain singals [ADC].

◆ MaximumLowGainSignal()

float Herd::CaloPDChannelInfo::MaximumLowGainSignal ( unsigned int  volID) const
inline

Return the maximum signal obtained with low gain [ADC].

Parameters
volIDVolume identifier.
Returns
Maximum low gain singal [ADC].

◆ MaximumLowGainSignals()

const std::vector<float>& Herd::CaloPDChannelInfo::MaximumLowGainSignals ( ) const
inline

Return a vector with the maximum signals obtained with low gain [ADC].

Returns
Maximum low gain singals [ADC].

◆ MIPvalue()

float Herd::CaloPDChannelInfo::MIPvalue ( unsigned int  volID) const
inline

Return the MIP value [ADC].

The value is the readout value of the LPD attached to cube volID for the scintillation light produced by a Z=1 MIP particle traversing 3 cm of LYSO.

Parameters
volIDVolume identifier.
Returns
MIP value [ADC].

◆ MIPvalues()

const std::vector<float>& Herd::CaloPDChannelInfo::MIPvalues ( ) const
inline

Return a vector with the MIP values [ADC].

The values are the readout values of the LPDs attached to each cube for the scintillation light produced by a Z=1 MIP particle traversing 3 cm of LYSO.

Returns
MIP values [ADC].

◆ NChannels()

unsigned int Herd::CaloPDChannelInfo::NChannels ( ) const
inline

Return the number of channels.

Returns
Number of channels.

◆ Pedestal()

float Herd::CaloPDChannelInfo::Pedestal ( unsigned int  volID) const
inline

Return the pedestal mean [ADC].

Parameters
volIDVolume identifier.
Returns
Pedestal mean [ADC].

◆ Pedestals()

const std::vector<float>& Herd::CaloPDChannelInfo::Pedestals ( ) const
inline

Return a vector with the pedestal means [ADC].

Returns
Pedestal means [ADC].

◆ SetGainRatio()

void Herd::CaloPDChannelInfo::SetGainRatio ( unsigned int  volID,
float  gainRatio 
)
inline

Set gain ratio.

Parameters
volIDVolume identifier.
gainRatiogain ratio.

◆ SetHighGainNoise()

void Herd::CaloPDChannelInfo::SetHighGainNoise ( unsigned int  volID,
float  HGnoise 
)
inline

Set high gain noise (i.e. pedestal distribution RMS).

Parameters
volIDVolume identifier.
HGnoiseHigh gain noise [ADC].

◆ SetLowGainNoise()

void Herd::CaloPDChannelInfo::SetLowGainNoise ( unsigned int  volID,
float  LGnoise 
)
inline

Set low gain noise (i.e. pedestal distribution RMS).

Parameters
volIDVolume identifier.
LGnoiseLow gain noise [ADC].

◆ SetMaximumHighGainSignal()

void Herd::CaloPDChannelInfo::SetMaximumHighGainSignal ( unsigned int  volID,
float  maxHGADCvalues 
)
inline

Set saturation level for high gain.

Parameters
volIDVolume identifier.
maxHGADCvaluessaturation level [ADC].

◆ SetMaximumLowGainSignal()

void Herd::CaloPDChannelInfo::SetMaximumLowGainSignal ( unsigned int  volID,
float  maxLGADCvalues 
)
inline

Set saturation level for low gain gain.

Parameters
volIDVolume identifier.
maxLGADCvaluessaturation level [ADC].

◆ SetMIPvalue()

void Herd::CaloPDChannelInfo::SetMIPvalue ( unsigned int  volID,
float  MIPvalue 
)
inline

Set MIP value.

Parameters
volIDVolume identifier.
MIPvalueMIP value [ADC].

◆ SetNChannels()

void Herd::CaloPDChannelInfo::SetNChannels ( size_t  nChannels)
inline

Setup the total number of channels.

Parameters
nChannelsNumber of channels

◆ SetPedestal()

void Herd::CaloPDChannelInfo::SetPedestal ( unsigned int  volID,
float  pedestal 
)
inline

Set pedestal mean.

Parameters
volIDVolume identifier.
pedestalpedestal mean [ADC].

◆ SetSiLpdMipValue()

void Herd::CaloPDChannelInfo::SetSiLpdMipValue ( unsigned int  volID,
float  MIPvalue 
)
inline

Set MIP value in Si for LPD.

Parameters
volIDVolume identifier.
MIPvalueMIP value in Si for LPD [ADC].

◆ SetSiLPDMIPvar()

void Herd::CaloPDChannelInfo::SetSiLPDMIPvar ( unsigned int  volID,
float  MIPvar 
)
inline

Set MIP RMS in Si for LPD.

Parameters
volIDVolume identifier.
MIPvarMIP RMS in Si for LPD [ADC].

◆ SetSiSpdMipValue()

void Herd::CaloPDChannelInfo::SetSiSpdMipValue ( unsigned int  volID,
float  MIPvalue 
)
inline

Set MIP value in Si for SPD.

Parameters
volIDVolume identifier.
MIPvalueMIP value in Si for SPD [ADC].

◆ SetSiSPDMIPvar()

void Herd::CaloPDChannelInfo::SetSiSPDMIPvar ( unsigned int  volID,
float  MIPvar 
)
inline

Set MIP RMS in Si for SPD.

Parameters
volIDVolume identifier.
MIPvarMIP RMS in Si for SPD [ADC].

◆ SiLpdMIPvalue()

float Herd::CaloPDChannelInfo::SiLpdMIPvalue ( unsigned int  volID) const
inline

Return the MIP value in Si for LPD [ADC].

Parameters
volIDVolume identifier.
Returns
MIP value in Si for LPD [ADC].

◆ SiLpdMIPvalues()

const std::vector<float>& Herd::CaloPDChannelInfo::SiLpdMIPvalues ( ) const
inline

Return a vector with the MIP values in Si for LPD [ADC].

Returns
MIP values in Si for LPD [ADC].

◆ SiLpdMipVar()

float Herd::CaloPDChannelInfo::SiLpdMipVar ( unsigned int  volID) const
inline

Return the MIP RMS in Si for LPD [ADC].

Parameters
volIDVolume identifier.
Returns
MIP RMS in Si for LPD [ADC].

◆ SiLpdMopVar()

const std::vector<float>& Herd::CaloPDChannelInfo::SiLpdMopVar ( ) const
inline

Return a vector with the MIP RMS in Si for LPD [ADC].

Returns
MIP RMS in Si for LPD [ADC].

◆ SiSpdMIPvalue()

float Herd::CaloPDChannelInfo::SiSpdMIPvalue ( unsigned int  volID) const
inline

Return the MIP value in Si for SPD [ADC].

Parameters
volIDVolume identifier.
Returns
MIP value in Si for SPD [ADC].

◆ SiSpdMIPvalues()

const std::vector<float>& Herd::CaloPDChannelInfo::SiSpdMIPvalues ( ) const
inline

Return a vector with the MIP values in Si for SPD [ADC].

Returns
MIP values in Sifor SPD [ADC].

◆ SiSpdMipVar() [1/2]

const std::vector<float>& Herd::CaloPDChannelInfo::SiSpdMipVar ( ) const
inline

Return a vector with the MIP RMS in Si for SPD [ADC].

Returns
MIP RMS in Si for SPD [ADC].

◆ SiSpdMipVar() [2/2]

float Herd::CaloPDChannelInfo::SiSpdMipVar ( unsigned int  volID) const
inline

Return the MIP RMS in Si for SPD [ADC].

Parameters
volIDVolume identifier.
Returns
MIP RMS in Si for SPD [ADC].

Member Data Documentation

◆ _gainRatios

std::vector<float> Herd::CaloPDChannelInfo::_gainRatios
private

Ration between Low gain and low gain.

◆ _HGnoises

std::vector<float> Herd::CaloPDChannelInfo::_HGnoises
private

RMS of the pedestal when the electronics is in Low gain, for each crystal.

◆ _LGnoises

std::vector<float> Herd::CaloPDChannelInfo::_LGnoises
private

RMS of the pedestal when the electronics is in low gain, for each crystal.

◆ _maxHGADCvalues

std::vector<float> Herd::CaloPDChannelInfo::_maxHGADCvalues
private

ADC value of the saturation for Low gain.

◆ _maxLGADCvalues

std::vector<float> Herd::CaloPDChannelInfo::_maxLGADCvalues
private

ADC value of the saLuration for Low gain, i.e. the saturation of teh chip.

◆ _MIPvalues

std::vector<float> Herd::CaloPDChannelInfo::_MIPvalues
private

MIP values for each crystal in ADC as read by the LPD.

◆ _pedestals

std::vector<float> Herd::CaloPDChannelInfo::_pedestals
private

ADC value of the pedestal, the pedesLal is the same in LG and HG.

◆ _SiLpdMIPvalues

std::vector<float> Herd::CaloPDChannelInfo::_SiLpdMIPvalues
private

MIP values in Si LPD for each crystal.

◆ _SiLpdMIPvar

std::vector<float> Herd::CaloPDChannelInfo::_SiLpdMIPvar
private

RMS of MIP values in Si LPD for each crystal.

◆ _SiSpdMIPvalues

std::vector<float> Herd::CaloPDChannelInfo::_SiSpdMIPvalues
private

MIP values in Si SPD for each crystal.

◆ _SiSpdMIPvar

std::vector<float> Herd::CaloPDChannelInfo::_SiSpdMIPvar
private

RMS of MIP values in Si SPD for each crystal.


The documentation for this class was generated from the following file: