GGEMS  1.1
GPU GEant4-based Monte Carlo Simulations
GGEMSPhotoElectricEffect Class Reference

Photoelectric Effect process using Sandia table. More...

#include "GGEMSPhotoElectricEffect.hh"

Inheritance diagram for GGEMSPhotoElectricEffect:
Inheritance graph
Collaboration diagram for GGEMSPhotoElectricEffect:
Collaboration graph

Public Member Functions

 GGEMSPhotoElectricEffect (std::string const &primary_particle="gamma", bool const &is_secondary=false)
 GGEMSPhotoElectricEffect constructor. More...
 
 ~GGEMSPhotoElectricEffect (void)
 GGEMSPhotoElectricEffect destructor. More...
 
 GGEMSPhotoElectricEffect (GGEMSPhotoElectricEffect const &photoelectric_effect)=delete
 Avoid copy by reference. More...
 
GGEMSPhotoElectricEffectoperator= (GGEMSPhotoElectricEffect const &photoelectric_effect)=delete
 Avoid assignement by reference. More...
 
 GGEMSPhotoElectricEffect (GGEMSPhotoElectricEffect const &&photoelectric_effect)=delete
 Avoid copy by rvalue reference. More...
 
GGEMSPhotoElectricEffectoperator= (GGEMSPhotoElectricEffect const &&photoelectric_effect)=delete
 Avoid copy by rvalue reference. More...
 
- Public Member Functions inherited from GGEMSEMProcess
 GGEMSEMProcess (void)
 GGEMSEMProcess constructor. More...
 
virtual ~GGEMSEMProcess (void)
 GGEMSEMProcess destructor. More...
 
 GGEMSEMProcess (GGEMSEMProcess const &em_process)=delete
 Avoid copy by reference. More...
 
GGEMSEMProcessoperator= (GGEMSEMProcess const &em_process)=delete
 Avoid assignement by reference. More...
 
 GGEMSEMProcess (GGEMSEMProcess const &&em_process)=delete
 Avoid copy by rvalue reference. More...
 
GGEMSEMProcessoperator= (GGEMSEMProcess const &&em_process)=delete
 Avoid copy by rvalue reference. More...
 
std::string GetProcessName (void) const
 get the name of the process More...
 
virtual void BuildCrossSectionTables (cl::Buffer *particle_cross_sections, cl::Buffer *material_tables, GGsize const &thread_index)
 build cross section tables and storing them in particle_cross_sections More...
 

Private Member Functions

GGfloat ComputeCrossSectionPerAtom (GGfloat const &energy, GGuchar const &atomic_number) const override
 compute Compton cross section for an atom with Klein-Nishina More...
 

Additional Inherited Members

- Protected Member Functions inherited from GGEMSEMProcess
GGfloat ComputeCrossSectionPerMaterial (GGEMSParticleCrossSections *cross_section, GGEMSMaterialTables const *material_tables, GGsize const &material_index, GGsize const &energy_index)
 compute cross section for a process for a material More...
 
- Protected Attributes inherited from GGEMSEMProcess
GGchar process_id_
 
std::string process_name_
 
std::string primary_particle_
 
std::string secondary_particle_
 
bool is_secondaries_
 

Detailed Description

Photoelectric Effect process using Sandia table.

Definition at line 40 of file GGEMSPhotoElectricEffect.hh.

Constructor & Destructor Documentation

◆ GGEMSPhotoElectricEffect() [1/3]

GGEMSPhotoElectricEffect::GGEMSPhotoElectricEffect ( std::string const &  primary_particle = "gamma",
bool const &  is_secondary = false 
)

GGEMSPhotoElectricEffect constructor.

Parameters
primary_particle- type of primary particle (gamma)
is_secondary- flag activating secondary (e- for Compton)

Definition at line 39 of file GGEMSPhotoElectricEffect.cc.

◆ ~GGEMSPhotoElectricEffect()

GGEMSPhotoElectricEffect::~GGEMSPhotoElectricEffect ( void  )

GGEMSPhotoElectricEffect destructor.

Definition at line 65 of file GGEMSPhotoElectricEffect.cc.

◆ GGEMSPhotoElectricEffect() [2/3]

GGEMSPhotoElectricEffect::GGEMSPhotoElectricEffect ( GGEMSPhotoElectricEffect const &  photoelectric_effect)
delete

Avoid copy by reference.

Parameters
photoelectric_effect- reference on the GGEMS photoelectric effect

◆ GGEMSPhotoElectricEffect() [3/3]

GGEMSPhotoElectricEffect::GGEMSPhotoElectricEffect ( GGEMSPhotoElectricEffect const &&  photoelectric_effect)
delete

Avoid copy by rvalue reference.

Parameters
photoelectric_effect- rvalue reference on the GGEMS photoelectric effect

Member Function Documentation

◆ ComputeCrossSectionPerAtom()

GGfloat GGEMSPhotoElectricEffect::ComputeCrossSectionPerAtom ( GGfloat const &  energy,
GGuchar const &  atomic_number 
) const
overrideprivatevirtual

compute Compton cross section for an atom with Klein-Nishina

Parameters
energy- energy of the bin
atomic_number- Z number of the chemical element
Returns
Compton cross section by atom

Implements GGEMSEMProcess.

Definition at line 76 of file GGEMSPhotoElectricEffect.cc.

◆ operator=() [1/2]

GGEMSPhotoElectricEffect & GGEMSPhotoElectricEffect::operator= ( GGEMSPhotoElectricEffect const &&  photoelectric_effect)
delete

Avoid copy by rvalue reference.

Parameters
photoelectric_effect- rvalue reference on the GGEMS photoelectric effect

◆ operator=() [2/2]

GGEMSPhotoElectricEffect & GGEMSPhotoElectricEffect::operator= ( GGEMSPhotoElectricEffect const &  photoelectric_effect)
delete

Avoid assignement by reference.

Parameters
photoelectric_effect- reference on the GGEMS photoelectric effect

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