v1.2.0 : Update Total Cross Section Calculation
The biggest change for this release and the one that motiviated an increase in the minor version is that the cross section calculation was improved. Specifically, the numerical integration of chi was stabilized so we can know use it everywhere. This means the only variation between different calculation methods is whether or not to neglect the lepton mass and the dark photon recoil angle theta.
Breaking Changes
It is important to note that this release breaks the previous API for constructing the model, now choosing to force the user to define which scaling method and which cross section calculation method they want the model to use. The easiest way to update is to look at one of the examples in app
, specifically, in xsec_calc.cxx, we construct the model as below.
auto model = std::make_shared<g4db::G4DarkBreMModel>(
g4db::G4DarkBreMModel::ScalingMethod::Undefined, // scaling method
xsec_methods.at(method), // xsec calculation method
0.0, // threshold for non-zero xsec
1.0, // epsilon
"NOT NEEDED", // path to dark brem event library
muons, // lepton is a muon (or not)
622, // ID of dark photon in event library
false // load event library
);
where xsec_methods
is a std::map
from the CLI names for the different methods to the enums that are taken as arguments to the model constructor.
What's Changed
- stablize action os by @tomeichlersmith in #14
- use ln(t) as integration variable in chi f95ee55
- allow user to choose which variation of the WW approximation to use 1c175f0 and 6cd12b8
- update documentation with new formulae 558efa1
Full Changelog: v1.1.2...v1.2.0