D0->KKpipi binning scheme
Description
This package contains the code containing the definition of a binning scheme for the \(D^0\to K^+K^-\pi^+\pi^-\) phase space. The binning scheme uses an amplitude model from the LHCb collaboration presented in this paper.
The files Amplitude.h/cpp and AmplitudePhaseSpace.h/cpp take a set of four-momentum vectors and calculates which phase-space bin the decay belongs to. D0toKKpipi.cpp and Dbar0toKKpipi.cpp contain the source code for the amplitude models, and are generated from the AmpGen package. An example for how to use the binning scheme is found in main.cpp.
The amplitude models can be compiled with the command:
g++ -Ofast -shared -rdynamic --std=c++14 -fPIC -march=native D0toKKpipi.cpp -o D0toKKpipi.so
g++ -Ofast -shared -rdynamic --std=c++14 -fPIC -march=native Dbar0toKKpipi.cpp -o Dbar0toKKpipi.so
Include the current path:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PWD
The example is compiled with (requires ROOT):
g++ main.cpp Amplitude.cpp AmplitudePhaseSpace.cpp -I. `root-config --cflags --glibs`
The example can be run with:
./a.out
This will generate a random decay and calculate the bin number. To specify the seed for the event generation, provide the seed as an argument:
./a.out 42
To swap to an optimised 2x4 binning scheme, replace the lines
AmplitudePhaseSpace BinningScheme(8);
...
BinningScheme.SetBinEdges(std::vector<double>{0.458065, 1.15464, 2.09644});
in main.cpp with
AmplitudePhaseSpace BinningScheme(4);
...
BinningScheme.SetBinEdges(std::vector<double>{1.20923});
Files
Files
(1.6 MB)
| Name | Size | Download all |
|---|---|---|
|
md5:ffebe0abe067c0cf4e0001c56f26985e
|
1.2 kB | Download |
|
md5:13605d8a03a0e6eb0607fe0de67f43e7
|
1.6 kB | Download |
|
md5:d62a203e4dac31d2122ae4bfc3ced616
|
2.6 kB | Download |
|
md5:5efb3394b854a4a4810cfc4c899b760f
|
3.4 kB | Download |
|
md5:80c922a92d5eefc1568d2caa56333887
|
808.3 kB | Download |
|
md5:d282af4ddc3cd5b8201e665060aa65e0
|
810.1 kB | Download |
|
md5:dc0c2b11b333ac3adf66cf5f7c207f3b
|
1.6 kB | Download |