CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Member Functions | Private Attributes
CMSDarkPairProductionProcess Class Reference

#include <CMSDarkPairProductionProcess.h>

Inheritance diagram for CMSDarkPairProductionProcess:

Public Member Functions

 CMSDarkPairProductionProcess (G4double df=1E0, const G4String &processName="conv", G4ProcessType type=fElectromagnetic)
 
G4bool IsApplicable (const G4ParticleDefinition &) override
 
G4double MinPrimaryEnergy (const G4ParticleDefinition *, const G4Material *) override
 
 ~CMSDarkPairProductionProcess () override
 

Protected Member Functions

void InitialiseProcess (const G4ParticleDefinition *) override
 

Private Attributes

G4double darkFactor
 
G4bool isInitialised
 

Detailed Description

Definition at line 20 of file CMSDarkPairProductionProcess.h.

Constructor & Destructor Documentation

◆ CMSDarkPairProductionProcess()

CMSDarkPairProductionProcess::CMSDarkPairProductionProcess ( G4double  df = 1E0,
const G4String &  processName = "conv",
G4ProcessType  type = fElectromagnetic 
)

Definition at line 17 of file CMSDarkPairProductionProcess.cc.

References nanoDQM_cfi::Electron.

18  : G4VEmProcess(processName, type), isInitialised(false), darkFactor(df) {
19  SetMinKinEnergy(2.0 * electron_mass_c2);
20  SetProcessSubType(fGammaConversion);
21  SetStartFromNullFlag(true);
22  SetBuildTableFlag(true);
23  SetSecondaryParticle(G4Electron::Electron());
24  SetLambdaBinning(220);
25 }

◆ ~CMSDarkPairProductionProcess()

CMSDarkPairProductionProcess::~CMSDarkPairProductionProcess ( )
override

Definition at line 27 of file CMSDarkPairProductionProcess.cc.

27 {}

Member Function Documentation

◆ InitialiseProcess()

void CMSDarkPairProductionProcess::InitialiseProcess ( const G4ParticleDefinition *  p)
overrideprotected

◆ IsApplicable()

G4bool CMSDarkPairProductionProcess::IsApplicable ( const G4ParticleDefinition &  p)
override

Definition at line 29 of file CMSDarkPairProductionProcess.cc.

References funct::abs(), and AlCaHLTBitMon_ParallelJobs::p.

29  {
30  G4int pdg = std::abs(p.GetPDGEncoding());
31  return (pdg == 1023 || pdg == 1072000);
32 }
Abs< T >::type abs(const T &t)
Definition: Abs.h:22

◆ MinPrimaryEnergy()

G4double CMSDarkPairProductionProcess::MinPrimaryEnergy ( const G4ParticleDefinition *  p,
const G4Material *   
)
override

Definition at line 42 of file CMSDarkPairProductionProcess.cc.

References SiStripPI::max, and AlCaHLTBitMon_ParallelJobs::p.

42  {
43  return std::max(2 * CLHEP::electron_mass_c2 - p->GetPDGMass(), 0.0);
44 }

Member Data Documentation

◆ darkFactor

G4double CMSDarkPairProductionProcess::darkFactor
private

Definition at line 40 of file CMSDarkPairProductionProcess.h.

Referenced by InitialiseProcess().

◆ isInitialised

G4bool CMSDarkPairProductionProcess::isInitialised
private

Definition at line 39 of file CMSDarkPairProductionProcess.h.

Referenced by InitialiseProcess().