Hydra  4.0.1
A header-only templated C++ framework to perform data analysis on massively parallel platforms.
dalitz_plot.C File Reference
#include <iostream>
#include <assert.h>
#include <time.h>
#include <chrono>
#include <random>
#include <algorithm>
#include <cstdlib>
#include <ctime>
#include <hydra/host/System.h>
#include <hydra/device/System.h>
#include <hydra/Function.h>
#include <hydra/Lambda.h>
#include <hydra/FunctorArithmetic.h>
#include <hydra/Placeholders.h>
#include <hydra/Complex.h>
#include <hydra/Tuple.h>
#include <hydra/Range.h>
#include <hydra/Distance.h>
#include <hydra/LogLikelihoodFCN.h>
#include <hydra/Parameter.h>
#include <hydra/UserParameters.h>
#include <hydra/Pdf.h>
#include <hydra/AddPdf.h>
#include <hydra/Vector4R.h>
#include <hydra/PhaseSpace.h>
#include <hydra/PhaseSpaceIntegrator.h>
#include <hydra/Decays.h>
#include <hydra/DenseHistogram.h>
#include <hydra/SparseHistogram.h>
#include <hydra/functions/BreitWignerLineShape.h>
#include <hydra/functions/CosHelicityAngle.h>
#include <hydra/functions/ZemachFunctions.h>
#include <hydra/SeedRNG.h>
#include "Minuit2/FunctionMinimum.h"
#include "Minuit2/MnUserParameterState.h"
#include "Minuit2/MnPrint.h"
#include "Minuit2/MnMigrad.h"
#include "Minuit2/MnMinimize.h"
#include <TROOT.h>
#include <TH1D.h>
#include <TH2D.h>
#include <TH3D.h>
#include <TApplication.h>
#include <TCanvas.h>
#include <TLegend.h>
#include <TLegendEntry.h>
Include dependency graph for dalitz_plot.C:

Go to the source code of this file.

Data Structures

class  NonResonant
 
class  Norm< T >
 
struct  parity< L, true >
 
class  Resonance< L, Signature >
 

Macros

#define HYDRA_DEVICE_SYSTEM   TBB
 
#define HYDRA_HOST_SYSTEM   CPP
 

Functions

void dalitz_plot (size_t nentries=50000)
 
 declarg (Dplus, hydra::Vector4R)
 
template<typename Amplitude , typename Model >
double fit_fraction (Amplitude const &amp, Model const &model, std::array< double, 3 > const &masses, size_t nentries)
 
template<typename Backend , typename Model , typename Container >
size_t generate_dataset (Backend const &system, Model const &model, std::array< double, 3 > const &masses, Container &decays, size_t nevents, size_t bunch_size)
 
template<typename Amplitude >
TH3D * histogram_component (Amplitude const &amp, std::array< double, 3 > const &masses, const char *name, size_t nentries)
 
template<typename ... Amplitudes>
auto make_model (Amplitudes const &... amplitudes) -> decltype(hydra::compose(std::declval< Norm< typename Amplitudes::return_type... >>(), amplitudes...))
 

Macro Definition Documentation

◆ HYDRA_DEVICE_SYSTEM

#define HYDRA_DEVICE_SYSTEM   TBB

◆ HYDRA_HOST_SYSTEM

#define HYDRA_HOST_SYSTEM   CPP

Function Documentation

◆ dalitz_plot()

void dalitz_plot ( size_t  nentries = 50000)
Examples:
dalitz_plot.C.

◆ declarg()

declarg ( Dplus  ,
hydra::Vector4R   
)
Examples:
dalitz_plot.C.

◆ fit_fraction()

template<typename Amplitude , typename Model >
double fit_fraction ( Amplitude const &  amp,
Model const &  model,
std::array< double, 3 > const &  masses,
size_t  nentries 
)
Examples:
dalitz_plot.C.

◆ generate_dataset()

template<typename Backend , typename Model , typename Container >
size_t generate_dataset ( Backend const &  system,
Model const &  model,
std::array< double, 3 > const &  masses,
Container &  decays,
size_t  nevents,
size_t  bunch_size 
)
Examples:
dalitz_plot.C.

◆ histogram_component()

template<typename Amplitude >
TH3D * histogram_component ( Amplitude const &  amp,
std::array< double, 3 > const &  masses,
const char *  name,
size_t  nentries 
)
Examples:
dalitz_plot.C.

◆ make_model()

template<typename ... Amplitudes>
auto make_model ( Amplitudes const &...  amplitudes) -> decltype(hydra::compose( std::declval<Norm<typename Amplitudes::return_type...>>(), amplitudes... ))
Examples:
dalitz_plot.C.