REST-for-Physics  v2.3
Rare Event Searches ToolKit for Physics
Public Member Functions | Private Attributes
TRestGeant4ParticleSourceCry Class Reference

Detailed Description

Definition at line 15 of file TRestGeant4ParticleSourceCry.h.

Inheritance diagram for TRestGeant4ParticleSourceCry:
TRestGeant4ParticleSource TRestGeant4Particle TRestMetadata

Public Member Functions

 ClassDefOverride (TRestGeant4ParticleSourceCry, 1)
 
Int_t GetNumberOfParticles () const
 
void InitFromConfigFile () override
 Initialization of TRestGeant4ParticleSourceCry members through a RML file. More...
 
void PrintMetadata () override
 It will print on screen the settings used for the CRY generator setup. More...
 
void Update () override
 It is used by restG4 PrimaryGeneratorAction to update the particle source. More...
 
- Public Member Functions inherited from TRestGeant4ParticleSource
void AddParticle (const TRestGeant4Particle &particle)
 
 ClassDefOverride (TRestGeant4ParticleSource, 6)
 
void FlushParticlesTemplate ()
 
TString GetAngularDistributionFilename () const
 
size_t GetAngularDistributionFormulaNPoints () const
 
const TF1 * GetAngularDistributionFunction () const
 
double GetAngularDistributionIsotropicConeHalfAngle () const
 
TString GetAngularDistributionNameInFile () const
 
TVector2 GetAngularDistributionRange () const
 
Double_t GetAngularDistributionRangeMax () const
 
Double_t GetAngularDistributionRangeMin () const
 
TString GetAngularDistributionType () const
 
TVector3 GetDirection () const
 
const TF2 * GetEnergyAndAngularDistributionFunction () const
 
TString GetEnergyDistributionFilename () const
 
size_t GetEnergyDistributionFormulaNPoints () const
 
const TF1 * GetEnergyDistributionFunction () const
 
TString GetEnergyDistributionNameInFile () const
 
TVector2 GetEnergyDistributionRange () const
 
Double_t GetEnergyDistributionRangeMax () const
 
Double_t GetEnergyDistributionRangeMin () const
 
TString GetEnergyDistributionType () const
 
TString GetGenFilename () const
 
std::vector< TRestGeant4ParticleGetParticles () const
 
virtual void InitFromConfigFile () override
 To make settings from rml file. This method must be implemented in the derived class. More...
 
virtual void PrintMetadata () override
 Implemented it in the derived metadata class to print out specific metadata information. More...
 
void RemoveParticles ()
 
void RemoveTemplates ()
 
void SetAngularDistributionFilename (const TString &filename)
 
void SetAngularDistributionFormula (const TString &formula)
 
void SetAngularDistributionFormulaNPoints (size_t nPoints)
 
void SetAngularDistributionIsotropicConeHalfAngle (double angle)
 
void SetAngularDistributionNameInFile (const TString &name)
 
void SetAngularDistributionRange (const TVector2 &range)
 
void SetAngularDistributionType (const TString &type)
 
void SetEnergyAndAngularDistributionFormula (const TString &formula)
 
void SetEnergyDistributionFilename (const TString &filename)
 
void SetEnergyDistributionFormula (const TString &formula)
 
void SetEnergyDistributionFormulaNPoints (size_t nPoints)
 
void SetEnergyDistributionNameInFile (const TString &name)
 
void SetEnergyDistributionRange (const TVector2 &range)
 
void SetEnergyDistributionType (const TString &type)
 
void SetGenFilename (const TString &name)
 
void SetRandomMethod (double(*method)())
 
virtual void Update ()
 
- Public Member Functions inherited from TRestGeant4Particle
Double_t GetEnergy () const
 
Double_t GetExcitationLevel () const
 
TVector3 GetMomentumDirection () const
 
TVector3 GetOrigin () const
 
Int_t GetParticleCharge () const
 
TString GetParticleName () const
 
void Print () const
 Prints on screen the details about the Geant4 simulation conditions, stored in TRestGeant4Metadata. More...
 
void SetDirection (const TVector3 &dir)
 
void SetEnergy (Double_t en)
 
void SetExcitationLevel (Double_t excitationEnergy)
 
void SetOrigin (const TVector3 &pos)
 
void SetParticle (TRestGeant4Particle particle)
 A copy method. More...
 
void SetParticleCharge (Int_t charge)
 
void SetParticleName (TString particle)
 

Private Attributes

Double_t fAltitude = 0.0
 Allowed values are 0, 2100 and 11300 m. More...
 
std::string fDate = "7\1\2012"
 It will adjust the cosmic-ray distributions to the 11-year solar cycle. More...
 
Double_t fLatitude = 90.0
 The allowed range is -90 to 90. 0 defines the magnetic equator. More...
 
Int_t fNParticlesMax = 1000000
 Showers with number of particles above this number will be truncated. More...
 
Int_t fNParticlesMin = 1
 Showers with number of particles below this number will be truncated. More...
 
TRandom3 * fRandom = nullptr
 Internal process random generator. More...
 
Int_t fReturnElectrons = 1
 It defines if secondary gammas will be produced by the generator. More...
 
Int_t fReturnGammas = 1
 It defines if secondary photons will be produced by the generator. More...
 
Int_t fReturnKaons = 1
 It defines if secondary pions will be produced by the generator. More...
 
Int_t fReturnMuons = 1
 It defines if secondary muons will be produced by the generator. More...
 
Int_t fReturnNeutrons = 1
 It defines if secondary neutrons will be produced by the generator. More...
 
Int_t fReturnPions = 1
 It defines if secondary electrons will be produced by the generator. More...
 
Int_t fReturnProtons = 1
 It defines if secondary protons will be produced by the generator. More...
 
Int_t fSeed = 0
 Seed used in random generator. More...
 
Double_t fSubBoxLength = 100.0
 The size of the box where the CRY generator produces particles (in m). More...
 
Double_t fXOffset = 0
 This is likely the X-coordinate where the box of generated particles is centered. More...
 
Double_t fYOffset = 0
 This is likely the Y-coordinate where the box of generated particles is centered. More...
 
Double_t fZOffset = 0
 This is likely the Z-coordinate where the box of generated particles is centered. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from TRestGeant4ParticleSource
static TRestGeant4ParticleSourceinstantiate (std::string model="")
 
- Protected Attributes inherited from TRestGeant4ParticleSource
TString fAngularDistributionFilename
 
size_t fAngularDistributionFormulaNPoints = 500
 
TF1 * fAngularDistributionFunction = nullptr
 
double fAngularDistributionIsotropicConeHalfAngle = 0
 
TString fAngularDistributionNameInFile
 
TVector2 fAngularDistributionRange
 
TString fAngularDistributionType = "Flux"
 
TF2 * fEnergyAndAngularDistributionFunction = nullptr
 
TString fEnergyDistributionFilename
 
size_t fEnergyDistributionFormulaNPoints = 5000
 
TF1 * fEnergyDistributionFunction = nullptr
 
TString fEnergyDistributionNameInFile
 
TVector2 fEnergyDistributionRange
 
TString fEnergyDistributionType = "Mono"
 
TString fGenFilename
 
std::vector< TRestGeant4ParticlefParticles
 
std::vector< std::vector< TRestGeant4Particle > > fParticlesTemplate
 
double(* fRandomMethod )()
 
- Protected Attributes inherited from TRestGeant4Particle
Int_t fCharge = 0
 
TVector3 fDirection = {1, 0, 0}
 
Double_t fEnergy = 0
 
Double_t fExcitationLevel = 0
 
TVector3 fOrigin
 
TString fParticleName
 

Constructor & Destructor Documentation

◆ TRestGeant4ParticleSourceCry()

TRestGeant4ParticleSourceCry::TRestGeant4ParticleSourceCry ( )

Definition at line 7 of file TRestGeant4ParticleSourceCry.cxx.

◆ ~TRestGeant4ParticleSourceCry()

TRestGeant4ParticleSourceCry::~TRestGeant4ParticleSourceCry ( )
inline

Definition at line 77 of file TRestGeant4ParticleSourceCry.h.

Member Function Documentation

◆ GetNumberOfParticles()

Int_t TRestGeant4ParticleSourceCry::GetNumberOfParticles ( ) const
inline

Definition at line 73 of file TRestGeant4ParticleSourceCry.h.

◆ InitFromConfigFile()

void TRestGeant4ParticleSourceCry::InitFromConfigFile ( )
overridevirtual

Initialization of TRestGeant4ParticleSourceCry members through a RML file.

Reimplemented from TRestGeant4ParticleSource.

Definition at line 43 of file TRestGeant4ParticleSourceCry.cxx.

◆ PrintMetadata()

void TRestGeant4ParticleSourceCry::PrintMetadata ( )
overridevirtual

It will print on screen the settings used for the CRY generator setup.

Reimplemented from TRestGeant4ParticleSource.

Definition at line 12 of file TRestGeant4ParticleSourceCry.cxx.

◆ Update()

void TRestGeant4ParticleSourceCry::Update ( )
overridevirtual

It is used by restG4 PrimaryGeneratorAction to update the particle source.

Reimplemented from TRestGeant4ParticleSource.

Definition at line 99 of file TRestGeant4ParticleSourceCry.cxx.

Field Documentation

◆ fAltitude

Double_t TRestGeant4ParticleSourceCry::fAltitude = 0.0
private

Allowed values are 0, 2100 and 11300 m.

Definition at line 52 of file TRestGeant4ParticleSourceCry.h.

◆ fDate

std::string TRestGeant4ParticleSourceCry::fDate = "7\1\2012"
private

It will adjust the cosmic-ray distributions to the 11-year solar cycle.

Definition at line 45 of file TRestGeant4ParticleSourceCry.h.

◆ fLatitude

Double_t TRestGeant4ParticleSourceCry::fLatitude = 90.0
private

The allowed range is -90 to 90. 0 defines the magnetic equator.

Definition at line 48 of file TRestGeant4ParticleSourceCry.h.

◆ fNParticlesMax

Int_t TRestGeant4ParticleSourceCry::fNParticlesMax = 1000000
private

Showers with number of particles above this number will be truncated.

Definition at line 35 of file TRestGeant4ParticleSourceCry.h.

◆ fNParticlesMin

Int_t TRestGeant4ParticleSourceCry::fNParticlesMin = 1
private

Showers with number of particles below this number will be truncated.

Definition at line 33 of file TRestGeant4ParticleSourceCry.h.

◆ fRandom

TRandom3* TRestGeant4ParticleSourceCry::fRandom = nullptr
private

Internal process random generator.

Definition at line 63 of file TRestGeant4ParticleSourceCry.h.

◆ fReturnElectrons

Int_t TRestGeant4ParticleSourceCry::fReturnElectrons = 1
private

It defines if secondary gammas will be produced by the generator.

Definition at line 24 of file TRestGeant4ParticleSourceCry.h.

◆ fReturnGammas

Int_t TRestGeant4ParticleSourceCry::fReturnGammas = 1
private

It defines if secondary photons will be produced by the generator.

Definition at line 22 of file TRestGeant4ParticleSourceCry.h.

◆ fReturnKaons

Int_t TRestGeant4ParticleSourceCry::fReturnKaons = 1
private

It defines if secondary pions will be produced by the generator.

Definition at line 28 of file TRestGeant4ParticleSourceCry.h.

◆ fReturnMuons

Int_t TRestGeant4ParticleSourceCry::fReturnMuons = 1
private

It defines if secondary muons will be produced by the generator.

Definition at line 30 of file TRestGeant4ParticleSourceCry.h.

◆ fReturnNeutrons

Int_t TRestGeant4ParticleSourceCry::fReturnNeutrons = 1
private

It defines if secondary neutrons will be produced by the generator.

Definition at line 18 of file TRestGeant4ParticleSourceCry.h.

◆ fReturnPions

Int_t TRestGeant4ParticleSourceCry::fReturnPions = 1
private

It defines if secondary electrons will be produced by the generator.

Definition at line 26 of file TRestGeant4ParticleSourceCry.h.

◆ fReturnProtons

Int_t TRestGeant4ParticleSourceCry::fReturnProtons = 1
private

It defines if secondary protons will be produced by the generator.

Definition at line 20 of file TRestGeant4ParticleSourceCry.h.

◆ fSeed

Int_t TRestGeant4ParticleSourceCry::fSeed = 0
private

Seed used in random generator.

Definition at line 60 of file TRestGeant4ParticleSourceCry.h.

◆ fSubBoxLength

Double_t TRestGeant4ParticleSourceCry::fSubBoxLength = 100.0
private

The size of the box where the CRY generator produces particles (in m).

Definition at line 56 of file TRestGeant4ParticleSourceCry.h.

◆ fXOffset

Double_t TRestGeant4ParticleSourceCry::fXOffset = 0
private

This is likely the X-coordinate where the box of generated particles is centered.

Definition at line 38 of file TRestGeant4ParticleSourceCry.h.

◆ fYOffset

Double_t TRestGeant4ParticleSourceCry::fYOffset = 0
private

This is likely the Y-coordinate where the box of generated particles is centered.

Definition at line 40 of file TRestGeant4ParticleSourceCry.h.

◆ fZOffset

Double_t TRestGeant4ParticleSourceCry::fZOffset = 0
private

This is likely the Z-coordinate where the box of generated particles is centered.

Definition at line 42 of file TRestGeant4ParticleSourceCry.h.


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