Geant4 VMC Version 6.6
Loading...
Searching...
No Matches
TG4RegionsManager2 Class Reference

Manager class for setting VMC cuts in energy in G4 regions. More...

#include <TG4RegionsManager2.h>

Inheritance diagram for TG4RegionsManager2:

Public Member Functions

 TG4RegionsManager2 ()
 
 ~TG4RegionsManager2 () override=default
 
void DefineRegions () override
 
void UpdateProductionCutsTable () override
 
- Public Member Functions inherited from TG4VRegionsManager
 TG4VRegionsManager ()
 
virtual ~TG4VRegionsManager ()
 
virtual void CheckRegions () const
 
virtual void PrintRegions (std::ostream &output) const
 
virtual void SaveRegions ()
 
virtual void DumpRegionStore () const
 
void SetFileName (const G4String &fileName)
 Set the file name for regions output.
 
void SetApplyForGamma (G4bool applyForGamma)
 Set the option to apply range cuts for gamma (default is true)
 
void SetApplyForElectron (G4bool applyForElectron)
 Set the option to apply range cuts for e- (default is true)
 
void SetApplyForPositron (G4bool applyForPositron)
 Set the option to apply range cuts for e+ (default is true)
 
void SetApplyForProton (G4bool applyForProton)
 Set the option to apply range cuts for proton (default is true)
 
void SetCheck (G4bool isCheck)
 Set the option to perform consistency check (by default false)
 
void SetPrint (G4bool isPrint)
 Set the option to print all regions.
 
void SetSave (G4bool isSave)
 Set the option to save all regions in a file.
 
G4String GetFileName () const
 Return the file name for regions output.
 
G4bool GetApplyForGamma () const
 Return the option to apply range cuts for gamma.
 
G4bool GetApplyForElectron () const
 Return the option to apply range cuts for e+.
 
G4bool GetApplyForPositron () const
 Return the option to apply range cuts for positron.
 
G4bool GetApplyForProton () const
 Return the option to apply range cuts for proton.
 
G4bool IsCheck () const
 Return the option to perform consistency check.
 
G4bool IsPrint () const
 Return the option to print all regions.
 
G4bool IsSave () const
 Return option to save all regions in a file.
 
- Public Member Functions inherited from TG4Verbose
 TG4Verbose (const G4String &cmdName)
 
 TG4Verbose (const G4String &cmdName, G4int verboseLevel)
 
virtual ~TG4Verbose ()
 
virtual void VerboseLevel (G4int level)
 
virtual G4int VerboseLevel () const
 

Private Member Functions

 TG4RegionsManager2 (const TG4RegionsManager2 &right)=delete
 
TG4RegionsManager2operator= (const TG4RegionsManager2 &right)=delete
 

Private Attributes

TG4RegionsMessenger fMessenger
 messenger
 

Additional Inherited Members

- Static Public Member Functions inherited from TG4VRegionsManager
static TG4VRegionsManagerInstance ()
 Return the singleton instance.
 
- Protected Types inherited from TG4VRegionsManager
using TG4RegionData = std::array<G4double, fgkValuesSize>
 
- Protected Member Functions inherited from TG4VRegionsManager
 TG4VRegionsManager (const TG4VRegionsManager &right)=delete
 
TG4VRegionsManageroperator= (const TG4VRegionsManager &right)=delete
 
G4double GetGlobalEnergyCut (TG4G3Cut cutType) const
 
G4double GetEnergyCut (TG4Limits *limits, TG4G3Cut cutType, G4double globalCutValue) const
 
G4bool IsCoupleUsedInTheRegion (const G4MaterialCutsCouple *couple, const G4Region *region) const
 
void CheckRegionsInGeometry () const
 
void PrintLegend (std::ostream &output) const
 
void PrintRegionData (std::ostream &output, const G4String &matName, const TG4RegionData &values) const
 
void PrintFromG4Table (std::ostream &output) const
 
- Protected Attributes inherited from TG4VRegionsManager
G4String fFileName
 file name for regions output
 
G4bool fApplyForGamma = true
 option to apply cuts for gamma (default is true)
 
G4bool fApplyForElectron = true
 option to apply cuts for e- (default is true)
 
G4bool fApplyForPositron = true
 option to apply cuts for e+ (default is true)
 
G4bool fApplyForProton = true
 option to apply cuts for proton (default is true)
 
G4bool fIsCheck = false
 option to perform consistency check (by default false)
 
G4bool fIsPrint = false
 option to print all regions
 
G4bool fIsSave = false
 option to save all regions in a file
 
- Static Protected Attributes inherited from TG4VRegionsManager
static constexpr size_t fgkRangeGamIdx = 0
 
static constexpr size_t fgkRangeEleIdx = 1
 
static constexpr size_t fgkCutGamIdx = 2
 
static constexpr size_t fgkCutEleIdx = 3
 
static constexpr size_t fgkVmcCutGamIdx = 4
 
static constexpr size_t fgkVmcCutEleIdx = 5
 
static constexpr size_t fgkValuesSize = 6
 
static TG4VRegionsManagerfgInstance = nullptr
 the singleton instance
 
static const G4String fgkDefaultRegionName
 the name of the region with default cuts
 
static const G4String fgkDefaultFileName = "regions.dat"
 the name of the region with default cuts
 

Detailed Description

Manager class for setting VMC cuts in energy in G4 regions.

The VMC cuts in energy can be defined via the following TVirtulaMC functions:

  • TVirtualMC::SetCut(..)
  • TVirtualMC::Gstpar(..)

The TG4RegionsManager2 class defines regions with production cuts corresponding to the VMC energy cuts set by user in two steps:

  • DefineRegions: regions per material are created and applied to all logical volumes
  • UpdateProductionCutsTable: create material cuts couples in G4ProductionCutsTable and construct energy cuts vectors in the order of created material cuts couples and set them to the table

User can select several levels of verbosity; the following information is then printed:

  • 0 no output
  • 1 number of regions added via VMC
  • 2 the list of all volumes and their associated regions
Author
I. Hrivnacova; IJCLab Orsay

Definition at line 53 of file TG4RegionsManager2.h.

Constructor & Destructor Documentation

◆ TG4RegionsManager2() [1/2]

TG4RegionsManager2::TG4RegionsManager2 ( )

Definition at line 31 of file TG4RegionsManager2.cxx.

◆ ~TG4RegionsManager2()

TG4RegionsManager2::~TG4RegionsManager2 ( )
overridedefault

◆ TG4RegionsManager2() [2/2]

TG4RegionsManager2::TG4RegionsManager2 ( const TG4RegionsManager2 & right)
privatedelete

Member Function Documentation

◆ DefineRegions()

void TG4RegionsManager2::DefineRegions ( )
overridevirtual

Define regions according to tracking media

Implements TG4VRegionsManager.

Definition at line 40 of file TG4RegionsManager2.cxx.

◆ UpdateProductionCutsTable()

void TG4RegionsManager2::UpdateProductionCutsTable ( )
overridevirtual

Update production cuts table according to stored region information

Implements TG4VRegionsManager.

Definition at line 126 of file TG4RegionsManager2.cxx.

◆ operator=()

TG4RegionsManager2 & TG4RegionsManager2::operator= ( const TG4RegionsManager2 & right)
privatedelete

Member Data Documentation

◆ fMessenger

TG4RegionsMessenger TG4RegionsManager2::fMessenger
private

messenger

Definition at line 68 of file TG4RegionsManager2.h.


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