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

Compton Scattering process from standard model for Geant4 (G4KleinNishinaCompton) More...

#include "GGEMSComptonScattering.hh"

Inheritance diagram for GGEMSComptonScattering:
Inheritance graph
Collaboration diagram for GGEMSComptonScattering:
Collaboration graph

Public Member Functions

 GGEMSComptonScattering (std::string const &primary_particle="gamma", bool const &is_secondary=false)
 GGEMSComptonScattering constructor. More...
 
 ~GGEMSComptonScattering (void)
 GGEMSComptonScattering destructor. More...
 
 GGEMSComptonScattering (GGEMSComptonScattering const &compton_scattering)=delete
 Avoid copy by reference. More...
 
GGEMSComptonScatteringoperator= (GGEMSComptonScattering const &compton_scattering)=delete
 Avoid assignement by reference. More...
 
 GGEMSComptonScattering (GGEMSComptonScattering const &&compton_scattering)=delete
 Avoid copy by rvalue reference. More...
 
GGEMSComptonScatteringoperator= (GGEMSComptonScattering const &&compton_scattering)=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

Compton Scattering process from standard model for Geant4 (G4KleinNishinaCompton)

Definition at line 40 of file GGEMSComptonScattering.hh.

Constructor & Destructor Documentation

◆ GGEMSComptonScattering() [1/3]

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

GGEMSComptonScattering constructor.

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

Definition at line 38 of file GGEMSComptonScattering.cc.

◆ ~GGEMSComptonScattering()

GGEMSComptonScattering::~GGEMSComptonScattering ( void  )

GGEMSComptonScattering destructor.

Definition at line 64 of file GGEMSComptonScattering.cc.

◆ GGEMSComptonScattering() [2/3]

GGEMSComptonScattering::GGEMSComptonScattering ( GGEMSComptonScattering const &  compton_scattering)
delete

Avoid copy by reference.

Parameters
compton_scattering- reference on the GGEMS compton scattering

◆ GGEMSComptonScattering() [3/3]

GGEMSComptonScattering::GGEMSComptonScattering ( GGEMSComptonScattering const &&  compton_scattering)
delete

Avoid copy by rvalue reference.

Parameters
compton_scattering- rvalue reference on the GGEMS compton scattering

Member Function Documentation

◆ ComputeCrossSectionPerAtom()

GGfloat GGEMSComptonScattering::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 75 of file GGEMSComptonScattering.cc.

◆ operator=() [1/2]

GGEMSComptonScattering & GGEMSComptonScattering::operator= ( GGEMSComptonScattering const &&  compton_scattering)
delete

Avoid copy by rvalue reference.

Parameters
compton_scattering- rvalue reference on the GGEMS compton scattering

◆ operator=() [2/2]

GGEMSComptonScattering & GGEMSComptonScattering::operator= ( GGEMSComptonScattering const &  compton_scattering)
delete

Avoid assignement by reference.

Parameters
compton_scattering- reference on the GGEMS compton scattering

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