GGEMS  1.1
GPU GEant4-based Monte Carlo Simulations
GGEMSCrossSections.hh File Reference

GGEMS class handling the cross sections tables. More...

#include <vector>
#include <string>
#include "GGEMS/global/GGEMSOpenCLManager.hh"
#include "GGEMS/physics/GGEMSParticleCrossSections.hh"
Include dependency graph for GGEMSCrossSections.hh:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  GGEMSCrossSections
 GGEMS class handling the cross sections tables. More...
 

Functions

GGEMSCrossSectionscreate_ggems_cross_sections (void)
 Get the GGEMSCrossSections pointer for python user. More...
 
void add_process_ggems_cross_sections (GGEMSCrossSections *cross_sections, char const *process_name, char const *particle_name, bool const is_secondary)
 Add a process to cross section table. More...
 
void initialize_ggems_cross_sections (GGEMSCrossSections *cross_sections, GGEMSMaterials *materials)
 Intialize the cross section tables for process and materials. More...
 
GGfloat get_cs_cross_sections (GGEMSCrossSections *cross_sections, char const *process_name, char const *material_name, GGfloat const energy, char const *unit)
 get the cross section value of process More...
 
void clean_ggems_cross_sections (GGEMSCrossSections *cross_sections)
 clean all cross sections on each OpenCL device More...
 

Detailed Description

GGEMS class handling the cross sections tables.

Author
Julien BERT julie.nosp@m.n.be.nosp@m.rt@un.nosp@m.iv-b.nosp@m.rest..nosp@m.fr
Didier BENOIT didie.nosp@m.r.be.nosp@m.noit@.nosp@m.inse.nosp@m.rm.fr
LaTIM, INSERM - U1101, Brest, FRANCE
Version
1.0
Date
Tuesday March 31, 2020

Definition in file GGEMSCrossSections.hh.

Function Documentation

◆ add_process_ggems_cross_sections()

void add_process_ggems_cross_sections ( GGEMSCrossSections cross_sections,
char const *  process_name,
char const *  particle_name,
bool const  is_secondary 
)

Add a process to cross section table.

Parameters
cross_sections- pointer on GGEMS cross sections
process_name- name of the process
particle_name- name of the particle
is_secondary- activate secondaries or not

Definition at line 351 of file GGEMSCrossSections.cc.

◆ clean_ggems_cross_sections()

void clean_ggems_cross_sections ( GGEMSCrossSections cross_sections)

clean all cross sections on each OpenCL device

Parameters
cross_sections- pointer on GGEMS cross sections

Definition at line 378 of file GGEMSCrossSections.cc.

◆ create_ggems_cross_sections()

GGEMSCrossSections * create_ggems_cross_sections ( void  )

Get the GGEMSCrossSections pointer for python user.

Returns
the pointer on the singleton

Definition at line 342 of file GGEMSCrossSections.cc.

◆ get_cs_cross_sections()

GGfloat get_cs_cross_sections ( GGEMSCrossSections cross_sections,
char const *  process_name,
char const *  material_name,
GGfloat const  energy,
char const *  unit 
)

get the cross section value of process

Parameters
cross_sections- pointer on GGEMS cross sections
process_name- name of the process
material_name- name of the material
energy- energy of the particle
unit- unit in energy
Returns
cross section value in cm-1

Definition at line 369 of file GGEMSCrossSections.cc.

◆ initialize_ggems_cross_sections()

void initialize_ggems_cross_sections ( GGEMSCrossSections cross_sections,
GGEMSMaterials materials 
)

Intialize the cross section tables for process and materials.

Parameters
cross_sections- pointer on GGEMS cross sections
materials- pointer on GGEMS materials

Definition at line 360 of file GGEMSCrossSections.cc.