Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CaloWaveformFitting Class Reference

#include <coresoftware/blob/master/offline/packages/CaloReco/CaloWaveformFitting.h>

+ Collaboration diagram for CaloWaveformFitting:

Public Member Functions

 CaloWaveformFitting ()=default
 
 ~CaloWaveformFitting ()=default
 
void set_template_file (const std::string &template_input_file)
 
void set_nthreads (int nthreads)
 
void set_softwarezerosuppression (bool usezerosuppression, int softwarezerosuppression)
 
int get_nthreads ()
 
std::vector< std::vector< float > > process_waveform (std::vector< std::vector< float >> waveformvector)
 
std::vector< std::vector< float > > calo_processing_templatefit (std::vector< std::vector< float >> chnlvector)
 
std::vector< std::vector< float > > calo_processing_fast (std::vector< std::vector< float >> chnlvector)
 
void initialize_processing (const std::string &templatefile)
 

Private Member Functions

void FastMax (float x0, float x1, float x2, float y0, float y1, float y2, float &xmax, float &ymax)
 
double template_function (double *x, double *par)
 

Private Attributes

TProfile * h_template = nullptr
 
int _nthreads = 1
 
int _nzerosuppresssamples = 2
 
int _nsoftwarezerosuppression = 40
 
bool _bdosoftwarezerosuppression = false
 
std::string m_template_input_file
 
std::string url_template
 
double m_peakTimeTemp = 0
 
std::string url_onnx
 
std::string m_model_name
 

Detailed Description

Definition at line 9 of file CaloWaveformFitting.h.

View newest version in sPHENIX GitHub at line 9 of file CaloWaveformFitting.h

Constructor & Destructor Documentation

CaloWaveformFitting::CaloWaveformFitting ( )
default
CaloWaveformFitting::~CaloWaveformFitting ( )
default

Member Function Documentation

std::vector< std::vector< float > > CaloWaveformFitting::calo_processing_fast ( std::vector< std::vector< float >>  chnlvector)

Definition at line 222 of file CaloWaveformFitting.cc.

View newest version in sPHENIX GitHub at line 222 of file CaloWaveformFitting.cc

References FastMax(), i, Acts::UnitConstants::m, nsamples, Acts::Test::time, and testSigmaEff::v.

Referenced by HcalMon::anaWaveform(), ZdcMon::anaWaveformFast(), SepdMon::anaWaveformFast(), CemcMon::anaWaveformFast(), and CaloWaveformProcessing::process_waveform().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

std::vector< std::vector< float > > CaloWaveformFitting::calo_processing_templatefit ( std::vector< std::vector< float >>  chnlvector)

Definition at line 52 of file CaloWaveformFitting.cc.

View newest version in sPHENIX GitHub at line 52 of file CaloWaveformFitting.cc

References _bdosoftwarezerosuppression, _nsoftwarezerosuppression, _nzerosuppresssamples, configureMap::data, f, h, i, m_peakTimeTemp, pedestal(), Acts::Result< T, E >::Result(), round(), t, template_function(), and testSigmaEff::v.

Referenced by process_waveform(), and CaloWaveformProcessing::process_waveform().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void CaloWaveformFitting::FastMax ( float  x0,
float  x1,
float  x2,
float  y0,
float  y1,
float  y2,
float &  xmax,
float &  ymax 
)
private

Definition at line 154 of file CaloWaveformFitting.cc.

View newest version in sPHENIX GitHub at line 154 of file CaloWaveformFitting.cc

References C, i, n, fixGDML::root, TauVsDIS_MachineLearning_Differentiation::X, x0, and TauVsDIS_MachineLearning_Differentiation::Y.

Referenced by calo_processing_fast().

+ Here is the caller graph for this function:

int CaloWaveformFitting::get_nthreads ( )
inline

Definition at line 33 of file CaloWaveformFitting.h.

View newest version in sPHENIX GitHub at line 33 of file CaloWaveformFitting.h

References _nthreads.

Referenced by CaloWaveformProcessing::get_nthreads().

+ Here is the caller graph for this function:

void CaloWaveformFitting::initialize_processing ( const std::string &  templatefile)

Definition at line 30 of file CaloWaveformFitting.cc.

View newest version in sPHENIX GitHub at line 30 of file CaloWaveformFitting.cc

References _nthreads, assert, h_template, m_peakTimeTemp, and t.

Referenced by CemcMon::Init(), HcalMon::Init(), and CaloWaveformProcessing::initialize_processing().

+ Here is the caller graph for this function:

std::vector< std::vector< float > > CaloWaveformFitting::process_waveform ( std::vector< std::vector< float >>  waveformvector)

Definition at line 40 of file CaloWaveformFitting.cc.

View newest version in sPHENIX GitHub at line 40 of file CaloWaveformFitting.cc

References calo_processing_templatefit(), and i.

Referenced by CemcMon::anaWaveformTemp(), and SepdMon::anaWaveformTemp().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void CaloWaveformFitting::set_nthreads ( int  nthreads)
inline

Definition at line 21 of file CaloWaveformFitting.h.

View newest version in sPHENIX GitHub at line 21 of file CaloWaveformFitting.h

References _nthreads.

Referenced by CaloWaveformProcessing::initialize_processing(), and CaloWaveformProcessing::set_nthreads().

+ Here is the caller graph for this function:

void CaloWaveformFitting::set_softwarezerosuppression ( bool  usezerosuppression,
int  softwarezerosuppression 
)
inline

Definition at line 27 of file CaloWaveformFitting.h.

View newest version in sPHENIX GitHub at line 27 of file CaloWaveformFitting.h

References _bdosoftwarezerosuppression, and _nsoftwarezerosuppression.

Referenced by CaloWaveformProcessing::initialize_processing().

+ Here is the caller graph for this function:

void CaloWaveformFitting::set_template_file ( const std::string &  template_input_file)
inline

Definition at line 15 of file CaloWaveformFitting.h.

View newest version in sPHENIX GitHub at line 15 of file CaloWaveformFitting.h

References m_template_input_file.

double CaloWaveformFitting::template_function ( double x,
double par 
)
private

Definition at line 24 of file CaloWaveformFitting.cc.

View newest version in sPHENIX GitHub at line 24 of file CaloWaveformFitting.cc

References h_template, and v1.

Referenced by calo_processing_templatefit().

+ Here is the caller graph for this function:

Member Data Documentation

bool CaloWaveformFitting::_bdosoftwarezerosuppression = false
private

Definition at line 51 of file CaloWaveformFitting.h.

View newest version in sPHENIX GitHub at line 51 of file CaloWaveformFitting.h

Referenced by calo_processing_templatefit(), and set_softwarezerosuppression().

int CaloWaveformFitting::_nsoftwarezerosuppression = 40
private

Definition at line 50 of file CaloWaveformFitting.h.

View newest version in sPHENIX GitHub at line 50 of file CaloWaveformFitting.h

Referenced by calo_processing_templatefit(), and set_softwarezerosuppression().

int CaloWaveformFitting::_nthreads = 1
private

Definition at line 48 of file CaloWaveformFitting.h.

View newest version in sPHENIX GitHub at line 48 of file CaloWaveformFitting.h

Referenced by get_nthreads(), initialize_processing(), and set_nthreads().

int CaloWaveformFitting::_nzerosuppresssamples = 2
private

Definition at line 49 of file CaloWaveformFitting.h.

View newest version in sPHENIX GitHub at line 49 of file CaloWaveformFitting.h

Referenced by calo_processing_templatefit().

TProfile* CaloWaveformFitting::h_template = nullptr
private

Definition at line 46 of file CaloWaveformFitting.h.

View newest version in sPHENIX GitHub at line 46 of file CaloWaveformFitting.h

Referenced by initialize_processing(), and template_function().

std::string CaloWaveformFitting::m_model_name
private

Definition at line 57 of file CaloWaveformFitting.h.

View newest version in sPHENIX GitHub at line 57 of file CaloWaveformFitting.h

double CaloWaveformFitting::m_peakTimeTemp = 0
private

Definition at line 54 of file CaloWaveformFitting.h.

View newest version in sPHENIX GitHub at line 54 of file CaloWaveformFitting.h

Referenced by calo_processing_templatefit(), and initialize_processing().

std::string CaloWaveformFitting::m_template_input_file
private

Definition at line 52 of file CaloWaveformFitting.h.

View newest version in sPHENIX GitHub at line 52 of file CaloWaveformFitting.h

Referenced by set_template_file().

std::string CaloWaveformFitting::url_onnx
private

Definition at line 56 of file CaloWaveformFitting.h.

View newest version in sPHENIX GitHub at line 56 of file CaloWaveformFitting.h

std::string CaloWaveformFitting::url_template
private

Definition at line 53 of file CaloWaveformFitting.h.

View newest version in sPHENIX GitHub at line 53 of file CaloWaveformFitting.h


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