ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHG4ParticleGeneratorD0.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file PHG4ParticleGeneratorD0.h
1 // Tell emacs that this is a C++ source
2 // -*- C++ -*-.
3 #ifndef G4MAIN_PHG4PARTICLEGENERATORD0_H
4 #define G4MAIN_PHG4PARTICLEGENERATORD0_H
5 
7 
8 #include <string> // for string
9 
10 class PHCompositeNode;
11 class TF1;
12 
14 {
15  public:
16  PHG4ParticleGeneratorD0(const std::string &name = "D0GEN");
18 
19  int InitRun(PHCompositeNode *topNode) override;
20  int process_event(PHCompositeNode *topNode) override;
21 
22  void set_eta_range(const double eta_min, const double eta_max);
23  void set_rapidity_range(const double y_min, const double y_max);
24  void set_mom_range(const double mom_min, const double mom_max);
25  void set_pt_range(const double pt_min, const double pt_max);
26  void set_vtx_zrange(const double zmin, const double zmax);
27  void set_mass(const double mass);
28 
29  protected:
30  double vtx_zmin = -10.;
31  double vtx_zmax = 10.;
32  double y_min = 0.;
33  double y_max = 0.;
34  double eta_min = -1.;
35  double eta_max = 1.;
36  double mom_min = 0.;
37  double mom_max = 10.;
38  double pt_min = 4.;
39  double pt_max = 4.;
40  double mass = 1.86486;
41  double m1 = 0.493677;
42  double m2 = 0.13957018;
43 
44  TF1 *fsin = nullptr;
45  TF1 *frap = nullptr;
46  TF1 *fpt = nullptr;
47 };
48 
49 #endif