remage
Simulation framework for HPGe-based experiments
 
Loading...
Searching...
No Matches
RMGGeneratorDecay0 Class Reference

Integration of the BxDecay0 generator into remage. More...

#include <RMGGeneratorDecay0.hh>

Inheritance diagram for RMGGeneratorDecay0:
Collaboration diagram for RMGGeneratorDecay0:

Public Types

enum class  Process {
  k0vbb = 1 , k0vbb_lambda_0 = 2 , k0vbb_lambda_02 = 3 , k2vbb = 4 ,
  k0vbb_M1 = 5 , k0vbb_M2 = 6 , k0vbb_M3 = 7 , k0vbb_M7 = 8 ,
  k0vbb_lambda_2 = 9 , k2vbb_2 = 10 , k0vkb = 11 , k2vkb = 12 ,
  k0v2k = 13 , k2v2k = 14 , k2vbb_bos0 = 15 , k2vbb_bos2 = 16 ,
  k0vbb_eta_s = 17 , k0vbb_eta_nmes = 18 , k2vbb_lv = 19 , k0v4b = 20
}
 Enumeration of nuclear decay processes supported by the generator. More...
 

Public Member Functions

 RMGGeneratorDecay0 (RMGMasterGenerator *master_gen)
 Constructor that links the BxDecay0 generator action to remage.
 
 RMGGeneratorDecay0 (RMGGeneratorDecay0 const &)=delete
 
RMGGeneratorDecay0operator= (RMGGeneratorDecay0 const &)=delete
 
 RMGGeneratorDecay0 (RMGGeneratorDecay0 &&)=delete
 
RMGGeneratorDecay0operator= (RMGGeneratorDecay0 &&)=delete
 
void GeneratePrimaries (G4Event *) override
 Calls to fDecay0G4Generator to generate the primary for the event.
 
void SetParticlePosition (G4ThreeVector) override
 Set the primary vertex position.
 
void BeginOfRunAction (const G4Run *) override
 Updates the seed and configuration at the beginning of each run.
 
void EndOfRunAction (const G4Run *) override
 Called at the end of a run.
 
void SetBackground (std::string)
 Sets BxDecay0 to run in background mode and sets the specific isotope.
 
- Public Member Functions inherited from RMGVGenerator
 RMGVGenerator (std::string name)
 
 RMGVGenerator (RMGVGenerator const &)=delete
 
RMGVGeneratoroperator= (RMGVGenerator const &)=delete
 
 RMGVGenerator (RMGVGenerator &&)=delete
 
RMGVGeneratoroperator= (RMGVGenerator &&)=delete
 
void SetReportingFrequency (int freq)
 
std::string GetGeneratorName ()
 

Additional Inherited Members

- Protected Attributes inherited from RMGVGenerator
std::string fGeneratorName
 
std::unique_ptr< G4UImessengerfMessenger
 
int fReportingFrequency = 1000
 

Detailed Description

Integration of the BxDecay0 generator into remage.

This class links the BxDecay0 primary generator action with the remage vertex generator, allowing the simulation of various decay processes.

Additionally it offers more convenient commands to set the generator mode and process by writing into the BxDecay0 configuration interface.

Member Enumeration Documentation

◆ Process

enum class RMGGeneratorDecay0::Process
strong

Enumeration of nuclear decay processes supported by the generator.

This matches the BxDecay0 numbering, shifted by 1 as BxDecay0 starts counting at 1.

Enumerator
k0vbb 

neutrinoless double beta decay

k0vbb_lambda_0 

0+ -> 0+ {2n} with RHC lambda

k0vbb_lambda_02 

0+ -> 0+, 2+ {N*} with RHC lambda

k2vbb 

2 neutrino double beta decay

k0vbb_M1 

0+ -> 0+ {2n} (Majoron, SI=1)

k0vbb_M2 

0+ -> 0+ {2n} (Majoron, SI=2)

k0vbb_M3 

0+ -> 0+ {2n} (Majoron, SI=3)

k0vbb_M7 

0+ -> 0+ {2n} (Majoron, SI=7)

k0vbb_lambda_2 

0+ -> 2+ {2n} with RHC lambda

k2vbb_2 

0+ -> 2+ {2n}, {N*}

k0vkb 

EC + beta+ 0+ -> 0+, 2+.

k2vkb 

EC + beta+ 0+ -> 0+, 2+.

k0v2k 

double EC 0+ -> 0+, 2+

k2v2k 

double EC 0+ -> 0+, 2+

k2vbb_bos0 

0+ -> 0+ with bosonic neutrinos

k2vbb_bos2 

0+ -> 2+ with bosonic neutrinos

k0vbb_eta_s 

0+ -> 0+ with RHC eta simplified expression

k0vbb_eta_nmes 

0+ -> 0+ with RHC eta and specific NMEs

k2vbb_lv 

0+ -> 0+ with Lorentz violation

k0v4b 

0+ -> 0+ Quadruple beta decay

Constructor & Destructor Documentation

◆ RMGGeneratorDecay0()

RMGGeneratorDecay0::RMGGeneratorDecay0 ( RMGMasterGenerator * master_gen)

Constructor that links the BxDecay0 generator action to remage.

Parameters
master_genPointer to the remage master generator.

BxDecay0's primary generator action will own the pointer

Member Function Documentation

◆ BeginOfRunAction()

void RMGGeneratorDecay0::BeginOfRunAction ( const G4Run * )
overridevirtual

Updates the seed and configuration at the beginning of each run.

Only does something if any remage set up command was used ( fUpdateSeeds is true).

Reimplemented from RMGVGenerator.

◆ EndOfRunAction()

void RMGGeneratorDecay0::EndOfRunAction ( const G4Run * )
overridevirtual

Called at the end of a run.

Derived generators can perform any necessary finalization in this method.

Reimplemented from RMGVGenerator.

◆ GeneratePrimaries()

void RMGGeneratorDecay0::GeneratePrimaries ( G4Event * event)
overridevirtual

Calls to fDecay0G4Generator to generate the primary for the event.

Implements RMGVGenerator.

◆ SetBackground()

void RMGGeneratorDecay0::SetBackground ( std::string isotope)

Sets BxDecay0 to run in background mode and sets the specific isotope.

Parameters
isotopeThe isotope to set (e.g. "Co60").

◆ SetParticlePosition()

void RMGGeneratorDecay0::SetParticlePosition ( G4ThreeVector vec)
inlineoverridevirtual

Set the primary vertex position.

This pure virtual method must be implemented by derived classes to set the primary vertex position for the generator.

Parameters
vecThe desired primary vertex position.

Implements RMGVGenerator.


The documentation for this class was generated from the following files: