|
Analysis-Utilities 26.9.9
C++/ROOT utilities for nuclear measurement data analysis
|
Exponential tail below the photopeak, convolved with the resolution. More...
#include <RooFitPhotopeakPdfs.hpp>
Public Member Functions | |
| RooLowExpTail () | |
| Default constructor for ROOT I/O; leaves proxies unbound. | |
| RooLowExpTail (const char *name, const char *title, RooAbsReal &x, RooAbsReal &mu, RooAbsReal &sigma, RooAbsReal &tau_ratio) | |
| Construct the component and bind its parameters. | |
| RooLowExpTail (const RooLowExpTail &other, const char *name=nullptr) | |
| Copy constructor used by RooFit when cloning a model. | |
| TObject * | clone (const char *newname=nullptr) const override |
| RooFit clone hook. | |
| Int_t | getAnalyticalIntegral (RooArgSet &allVars, RooArgSet &analVars, const char *rangeName=nullptr) const override |
| Advertise the analytic integral over the observable. | |
| Double_t | analyticalIntegral (Int_t code, const char *rangeName=nullptr) const override |
| Evaluate the analytic integral advertised above. | |
| void | doEval (RooFit::EvalContext &ctx) const override |
| Batched evaluation over every event in one pass. | |
| bool | canComputeBatchWithCuda () const override |
| Whether doEval() can consume device-resident buffers. | |
Protected Member Functions | |
| Double_t | evaluate () const override |
| Scalar evaluation for a single observable value. | |
Protected Attributes | |
| RooRealProxy | x_ |
| RooRealProxy | mu_ |
| RooRealProxy | sigma_ |
| RooRealProxy | tau_ratio_ |
Exponential tail below the photopeak, convolved with the resolution.
Models incomplete charge collection and charge trapping, which move counts from the peak to lower energies. The density is the analytic convolution of a one-sided exponential with a Gaussian, evaluated as exp(a) * erfc(b) in a form that avoids intermediate overflow by folding the two exponentials together and switching to the large-argument expansion of the scaled complementary error function.
Definition at line 139 of file RooFitPhotopeakPdfs.hpp.
|
inline |
Default constructor for ROOT I/O; leaves proxies unbound.
Definition at line 142 of file RooFitPhotopeakPdfs.hpp.
Referenced by clone(), and RooLowExpTail().
| RooLowExpTail::RooLowExpTail | ( | const char * | name, |
| const char * | title, | ||
| RooAbsReal & | x, | ||
| RooAbsReal & | mu, | ||
| RooAbsReal & | sigma, | ||
| RooAbsReal & | tau_ratio ) |
Construct the component and bind its parameters.
| name | RooFit object name, unique within the workspace. |
| title | Human-readable title. |
| x | Observable (energy). |
| mu | Peak centroid, in the observable's units. |
| sigma | Gaussian resolution; must be positive. |
| tau_ratio | Tail decay constant in units of sigma, so tau = tau_ratio * sigma. Dimensionless and positive. |
Definition at line 208 of file RooFitPhotopeakPdfs.cpp.
| RooLowExpTail::RooLowExpTail | ( | const RooLowExpTail & | other, |
| const char * | name = nullptr ) |
Copy constructor used by RooFit when cloning a model.
| other | Instance to copy. |
| name | New object name, or null to keep other's. |
Definition at line 215 of file RooFitPhotopeakPdfs.cpp.
|
override |
Evaluate the analytic integral advertised above.
| code | Code returned by getAnalyticalIntegral(); only 1 is supported. |
| rangeName | Named range, or null for the full range. |
Definition at line 268 of file RooFitPhotopeakPdfs.cpp.
|
inlineoverride |
Whether doEval() can consume device-resident buffers.
Definition at line 200 of file RooFitPhotopeakPdfs.hpp.
|
inlineoverride |
RooFit clone hook.
| newname | Name for the clone, or null to reuse this one's. |
Definition at line 162 of file RooFitPhotopeakPdfs.hpp.
|
override |
Batched evaluation over every event in one pass.
Hoists the parameter-dependent constants out of the loop and writes one density per event. Dispatches to a CUDA kernel when built with CUDA support and handed device-resident buffers; otherwise runs an OpenMP host loop.
| ctx | RooFit evaluation context supplying inputs and the output span. |
Definition at line 230 of file RooFitPhotopeakPdfs.cpp.
|
overrideprotected |
Scalar evaluation for a single observable value.
Definition at line 220 of file RooFitPhotopeakPdfs.cpp.
|
override |
Advertise the analytic integral over the observable.
| allVars | Variables RooFit offers to integrate over. |
| analVars | Filled with those handled analytically. |
| rangeName | Named range, or null for the full range. |
Definition at line 260 of file RooFitPhotopeakPdfs.cpp.
|
protected |
Definition at line 205 of file RooFitPhotopeakPdfs.hpp.
Referenced by analyticalIntegral(), doEval(), evaluate(), RooLowExpTail(), and RooLowExpTail().
|
protected |
Definition at line 206 of file RooFitPhotopeakPdfs.hpp.
Referenced by analyticalIntegral(), doEval(), evaluate(), RooLowExpTail(), and RooLowExpTail().
|
protected |
Definition at line 207 of file RooFitPhotopeakPdfs.hpp.
Referenced by analyticalIntegral(), doEval(), evaluate(), RooLowExpTail(), and RooLowExpTail().
|
protected |
Definition at line 204 of file RooFitPhotopeakPdfs.hpp.
Referenced by analyticalIntegral(), doEval(), evaluate(), getAnalyticalIntegral(), RooLowExpTail(), and RooLowExpTail().