CMS 3D CMS Logo

CMSDarkPairProduction.h
Go to the documentation of this file.
1 //
2 // File name: CMSDarkPairProduction
3 //
4 // Author: Dustin Stolp (dostolp@ucdavis.edu)
5 // Sushil S. Chauhan (schauhan@cern.ch)
6 // Creation date: 01.22.2015
7 // -------------------------------------------------------------------
8 //
9 #ifndef SimG4Core_CustomPhysics_CMSDarkPairProduction_h
10 #define SimG4Core_CustomPhysics_CMSDarkPairProduction_h
11 
12 #include <CLHEP/Units/PhysicalConstants.h>
13 
14 #include "G4PairProductionRelModel.hh"
15 #include "G4PhysicsTable.hh"
16 #include "G4NistManager.hh"
17 #include "G4VEmModel.hh"
18 
19 class CMSDarkPairProduction : public G4PairProductionRelModel {
20 public:
21  CMSDarkPairProduction(const G4ParticleDefinition* p = nullptr,
22  G4double df = 1.0,
23  const G4String& nam = "BetheHeitlerLPM");
24 
25  ~CMSDarkPairProduction() override;
26 
27  G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition*,
28  G4double kinEnergy,
29  G4double Z,
30  G4double A = 0.,
31  G4double cut = 0.,
32  G4double emax = DBL_MAX) override;
33 
34 private:
35  G4double dark_factor;
36 };
37 #endif
G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition *, G4double kinEnergy, G4double Z, G4double A=0., G4double cut=0., G4double emax=DBL_MAX) override
CMSDarkPairProduction(const G4ParticleDefinition *p=nullptr, G4double df=1.0, const G4String &nam="BetheHeitlerLPM")