25 Warning(
"constructor",
"default constructor used");
27 std::cout<<
"Tot parameter "<<std::endl;
28 std::cout<<
" charge time: "<<
GetParameter(
"ftr")<<
" ns"<<std::endl;
29 std::cout<<
" const. current: "<<
GetParameter(
"fa")<<
" e/ns"<<std::endl;
30 std::cout<<
" threshold: "<<
GetParameter(
"fth")<<
" e"<<std::endl;
31 std::cout<<
" clock frequency: "<<
GetParameter(
"fclk")<<
" MHz"<<std::endl;
56 std::cout<<
"Tot parameter "<<std::endl;
57 std::cout<<
" charge time: "<<
GetParameter(
"ftr")<<
" ns"<<std::endl;
58 std::cout<<
" const. current: "<<
GetParameter(
"fa")<<
" e/ns"<<std::endl;
59 std::cout<<
" threshold: "<<
GetParameter(
"fth")<<
" e"<<std::endl;
60 std::cout<<
" clock frequency: "<<
GetParameter(
"fclk")<<
" MHz"<<std::endl;
68 Error(
"ConvertChargeToDigiValue(Double_t charge)",
"const. current is less or equal zero -> now set to 60 e/ns");
78 Error(
"ConvertChargeToDigiValue(Double_t charge)",
"threshold is less than zero -> now set to 0 eV");
82 if ((Q <=
Qt) or (Q <= 0)){
84 Warning(
"ConvertChargeToDigiValue(Double_t charge)",
"charge (%g) is equal or less than threshold (%g) -> zero TOT",Q,
Qt);
114 temp = temp/(
sqrt(temp*temp + 4*Qc*
Qt));
134 totaltime += flighttime;
135 totaltime += eventtime;
140 std::cout<<
" +++threshold: "<<
Qt <<
" "<<std::endl;
141 std::cout<<
" charge: "<< Charge <<
" "<<std::endl;
142 std::cout<<
" time since event: "<< time <<
" "<<std::endl;
143 std::cout<<
" event time: "<< MCEventTime << std::endl;
144 std::cout<<
" timewalk: "<<
ftimewalk <<std::endl;
145 std::cout<<
" total time: "<< totaltime <<std::endl;
146 std::cout<<
" time step: "<<
ftimestep<<std::endl;
147 std::cout<<
" digitized total time:"<< digitizedtime <<
"+++"<<std::endl;
149 return digitizedtime ;
156 Int_t temp = (Int_t)((time) /
ftimestep);
159 if (
fVerboseLevel>2) std::cout <<
"temp " << temp <<
" time " << time << std::endl;
167 Error(
"GetTimeWalk(Double_t charge)",
"const. current is less or equal zero -> now set to 60 e/ns");
175 Error(
"GetTimeWalk(Double_t charge)",
"threshold is less than zero -> now set to 0 eV");
179 if ((Q <=
Qt) or (Q <= 0)){
181 Warning(
"GetTimeWalk(Double_t charge)",
"charge is equal or less than threshold -> zero TOT -> infinity TimeWalk");
221 Error(
"ConvertDigiValueToELoss(Double_t digi)",
"charge digitization value not calculated properly");
virtual Double_t DigiValueToCharge(Double_t digivalue)
Converts a given digitized charge into charge in electrons.
PndSdsTotChargeConversion(Int_t VerboseLevel=0)
Default constructor.
friend F32vec4 sqrt(const F32vec4 &a)
virtual Double_t GetTimeWalk(Double_t Charge)
Double_t DigitizeTime(Double_t time)
returns the time in [ns] but binned to clock units
virtual Double_t GetTimeStamp(Double_t tof, Double_t charge, Double_t MCEventTime)
absolute time stamp of a hit in ns (clock is taken into account)
virtual Double_t ChargeToDigiValue(Double_t charge)
Converts a given charge in electrons into the electronics answer e.g. ToT [ns].
Double_t GetParameter(TString param)
virtual Double_t GetRelativeError(Double_t Charge)
virtual Double_t GetPileUpTime(Double_t charge)
returns the time the capacitor is loaded and therefore the time this MVD pixel/strip is blind for oth...
void SetParameter(TString param, Double_t value)