CMS 3D CMS Logo

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

#include <APrimePhysics.h>

Inheritance diagram for APrimePhysics:

Public Member Functions

 APrimePhysics (double APMass, const G4String &scalefile, const G4double cxBias, const G4String &name="APrime")
 
void ConstructParticle () override
 
void ConstructProcess () override
 
 ~APrimePhysics () override
 

Private Attributes

double apmass
 
G4ParticleDefinition * aprimeDef_
 
G4double biasFactor
 
G4String mgfile
 

Detailed Description

Definition at line 7 of file APrimePhysics.h.

Constructor & Destructor Documentation

APrimePhysics::APrimePhysics ( double  APMass,
const G4String &  scalefile,
const G4double  cxBias,
const G4String &  name = "APrime" 
)

Class constructor.

Parameters
nameThe name of the physics.

Definition at line 11 of file APrimePhysics.cc.

References apmass, biasFactor, and mgfile.

12  : G4VPhysicsConstructor(name), aprimeDef_(nullptr) {
13  apmass = APMass;
14  mgfile = scalefile;
15  biasFactor = cxBias;
16 }
G4ParticleDefinition * aprimeDef_
Definition: APrimePhysics.h:34
G4double biasFactor
Definition: APrimePhysics.h:37
G4String mgfile
Definition: APrimePhysics.h:36
APrimePhysics::~APrimePhysics ( )
override

Class destructor.

Definition at line 18 of file APrimePhysics.cc.

18 {}

Member Function Documentation

void APrimePhysics::ConstructParticle ( )
override

Construct particles.

Insert A-prime into the Geant4 particle table. For now we flag it as stable.

Definition at line 20 of file APrimePhysics.cc.

References apmass, G4APrime::APrime(), and aprimeDef_.

20  {
26  //aprimeDef->SetProcessManager(new G4ProcessManager(aprimeDef));
27 }
G4ParticleDefinition * aprimeDef_
Definition: APrimePhysics.h:34
static G4APrime * APrime(double apmass=1000)
Definition: G4APrime.cc:43
void APrimePhysics::ConstructProcess ( )
override

Construct the process.

Definition at line 29 of file APrimePhysics.cc.

References biasFactor, and mgfile.

29  {
30  G4ParticleDefinition* muonminus = G4MuonMinus::MuonMinusDefinition();
31  G4ParticleDefinition* muonplus = G4MuonPlus::MuonPlusDefinition();
32  G4ProcessManager* pmplus = muonplus->GetProcessManager();
33  G4ProcessManager* pmminus = muonminus->GetProcessManager();
34  pmplus->AddDiscreteProcess(new G4muDarkBremsstrahlung(mgfile, biasFactor), 6);
35  pmminus->AddDiscreteProcess(new G4muDarkBremsstrahlung(mgfile, biasFactor), 6);
36 }
G4double biasFactor
Definition: APrimePhysics.h:37
G4String mgfile
Definition: APrimePhysics.h:36

Member Data Documentation

double APrimePhysics::apmass
private

Definition at line 35 of file APrimePhysics.h.

Referenced by APrimePhysics(), and ConstructParticle().

G4ParticleDefinition* APrimePhysics::aprimeDef_
private

Definition of the APrime particle.

Definition at line 34 of file APrimePhysics.h.

Referenced by ConstructParticle().

G4double APrimePhysics::biasFactor
private

Definition at line 37 of file APrimePhysics.h.

Referenced by APrimePhysics(), and ConstructProcess().

G4String APrimePhysics::mgfile
private

Definition at line 36 of file APrimePhysics.h.

Referenced by APrimePhysics(), and ConstructProcess().