ATTPCROOT
0.3.0-alpha
A ROOT-based framework for analyzing data from active target detectors
|
#include <AtPulseGADGET.h>
Public Member Functions | |
AtPulseGADGET (AtMapPtr map) | |
~AtPulseGADGET ()=default | |
void | SetSigmaPercent (Float_t sigma) |
void | SetAdjecentPads (Int_t pads) |
virtual AtRawEvent | GenerateEvent (std::vector< AtSimulatedPoint * > &vec) override |
Executed for each event. More... | |
virtual std::shared_ptr< AtPulse > | Clone () const override |
![]() | |
AtPulse (AtMapPtr map, ResponseFunc response=nullptr) | |
AtPulse (const AtPulse &) | |
void | SetParameters (const AtDigiPar *fPar) |
AtMapPtr | GetMap () |
void | UseFastGain (bool val) |
void | SetNoiseSigma (double val) |
void | SetSaveCharge (bool val) |
void | SetDoConvolution (bool val) |
AtRawEvent | GenerateEvent (std::vector< SimPointPtr > &vec) |
Protected Member Functions | |
Double_t | ChargeDispersion (Double_t G, Double_t time, Double_t x0, Double_t y0, Double_t xi, Double_t yi) |
virtual bool | AssignElectronsToPad (AtSimulatedPoint *point) override |
![]() | |
void | Reset () |
double | GetGain (int padNum, int numElectrons) |
void | GenerateTraceFromElectrons () |
void | FillPad (AtPad &pad, TH1F &hist) |
void | ApplyNoise (AtPad &pad) |
Additional Inherited Members | |
![]() | |
using | AtMapPtr = std::shared_ptr< AtMap > |
using | ResponseFunctionType = std::add_pointer_t< double(double)> |
using | ResponseFunc = std::function< double(int, double)> |
Function (or callable object) to use as the response function. Parameters are padNum and time (us) More... | |
using | XYZVector = ROOT::Math::XYZVector |
using | XYZPoint = ROOT::Math::XYZPoint |
using | SimPointPtr = std::unique_ptr< AtSimulatedPoint > |
![]() | |
AtMapPtr | fMap |
AtTPC map. More... | |
int | fEventID = 0 |
double | fGain = 0 |
EventID. More... | |
double | fLowGainFactor = 0 |
Micromegas gain. More... | |
double | fGETGain = 0 |
If pad is AtMap::kLowGain multiply gain by this factor. More... | |
double | fPeakingTime = 0 |
GET Gain (ADC ch/electron). More... | |
double | fTBTime = 0 |
Electronic peaking time in us. More... | |
int | fNumTbs {512} |
Time bucket size in us. More... | |
int | fTBEntrance = 0 |
Number of time buckers. More... | |
int | fTBPadPlane = 0 |
Window location in timebuckets (from config) More... | |
ResponseFunc | fResponse |
Pad plane location in TBs (calculated from DriftVelocity, TBEntrance, ZPadPlane. More... | |
bool | fUseFastGain = true |
Response function of the electronics. More... | |
double | fNoiseSigma = 0 |
bool | fSaveCharge = true |
Sigma of random gaussian noise to apply to trace. More... | |
bool | fDoConvolution {true} |
std::vector< std::unique_ptr< TH1F > > | fPadCharge |
std::set< int > | fPadsWithCharge |
std::unique_ptr< TF1 > | fGainFunc |
double | fAvgGainDeviation {} |
Definition at line 21 of file AtPulseGADGET.h.
AtPulseGADGET::AtPulseGADGET | ( | AtMapPtr | map | ) |
Definition at line 27 of file AtPulseGADGET.cxx.
|
default |
|
overrideprotectedvirtual |
Assign electons to pad and apply the gain from the umegas (including gain reduction from smartzap) Returns if we were able to add the point to a pad.
Reimplemented from AtPulse.
Definition at line 39 of file AtPulseGADGET.cxx.
|
protected |
Definition at line 29 of file AtPulseGADGET.cxx.
|
inlineoverridevirtual |
Reimplemented from AtPulse.
Definition at line 47 of file AtPulseGADGET.h.
|
overridevirtual |
Executed for each event.
Reimplemented from AtPulse.
Definition at line 103 of file AtPulseGADGET.cxx.
|
inline |
Definition at line 44 of file AtPulseGADGET.h.
|
inline |
Definition at line 43 of file AtPulseGADGET.h.