3#ifdef NOT_INCLUDE_GASLIB_IN_PACSLIB
26std::string getDataBasePath() {
30 char* heed_database = std::getenv(
"HEED_DATABASE");
31 if (heed_database == NULL) {
33 char* garfield_home = std::getenv(
"GARFIELD_HOME");
34 if (garfield_home == NULL) {
35 std::cerr <<
"Heed:\n Could not retrieve database path.\n";
37 path = std::string(garfield_home) +
"/Heed/heed++/database";
40 path = std::string(heed_database);
43 std::cout <<
"Heed:\n Database path: " << path <<
"\n";
49 const std::string& pacs_table_dir) {
52 pacs_table_dir +
"Ar.dat");
62 std::vector<double> electron_energy;
63 std::vector<double> photon_energy;
64 electron_energy.push_back(0.000200);
66 asp->
add_channel(0.65, electron_energy, photon_energy);
67 electron_energy.resize(2);
68 electron_energy[0] = 0.000050;
69 electron_energy[1] = 0.000200;
70 asp->
add_channel(0.35, electron_energy, photon_energy, 1);
74 asp = Argon_PACS_mod_esc.get_asp(2);
75 electron_energy.resize(1);
76 electron_energy[0] = 0.000200;
77 asp->
add_channel(1.0, electron_energy, photon_energy, 1);
81 asp = Argon_PACS_mod_esc.get_asp(3);
82 electron_energy.resize(1);
83 electron_energy[0] = 0.000200;
84 asp->
add_channel(1.0, electron_energy, photon_energy, 1);
88 return Argon_PACS_mod_esc;
153 "C_for_CH4", 12.65e-6);
156 "C_for_C2H4", 10.51e-06);
159 "C_for_C2H6", 11.52e-06);
162 "C_for_C4H10", 10.55e-06);
166 "C_for_Methylal", 10.0e-06);
194 "shelllist_solid.dat",
242 "Ge_crystal", 0.67e-06);
313 10.0e-6 * 23.4 / 10.55);
void add_channel(double fchannel_prob_dens, const std::vector< double > &felectron_energy, const std::vector< double > &fphoton_energy, int s_all_rest=0)
Atomic photo-absorption with excitation.
Simple phenomenological CS for any shell (analytic formula).
ExAtomPhotoAbsCS Phosphorus_PACS(15, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"P.dat")
const std::string pacs_table_dir_name
MolecPhotoAbsCS Cs_MPACS(Caesium_PACS, 1)
ExAtomPhotoAbsCS Mercury_PACS(80, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Hg.dat")
PhenoPhotoAbsCS Hydrogen_for_NH4_shell_PACS("Hydrogen_for_NH4", 1, 10.0e-06, 3.228)
ExAtomPhotoAbsCS Magnesium_PACS(12, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Mg.dat")
SimpleAtomPhotoAbsCS Hydrogen_for_CH4_PACS(1, Hydrogen_for_CH4_shell_PACS)
ExAtomPhotoAbsCS Tellurium_PACS(49, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Te.dat")
ExAtomPhotoAbsCS Carbon_for_C2H4_PACS(6, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"C.dat", "C_for_C2H4", 10.51e-06)
MolecPhotoAbsCS CF3Br_MPACS(Carbon_for_CF4_PACS, 1, Fluorine_PACS, 3, Bromine_PACS, 1)
MolecPhotoAbsCS N2_MPACS(Nitrogen_PACS, 2, 34.8e-6)
ExAtomPhotoAbsCS Silicon_crystal_PACS(14, shelllist_dir_name+"shelllist_solid.dat", pacs_table_dir_name+"Si.dat", "Si_crystal")
MolecPhotoAbsCS Ne_MPACS(Neon_PACS, 1, 35.4e-6)
MolecPhotoAbsCS C5H12_MPACS(Carbon_for_C4H10_PACS, 5, Hydrogen_for_H2_PACS, 12, 23.2e-6)
ExAtomPhotoAbsCS Nitrogen_PACS(7, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"N.dat", "N_for_N2", 15.581e-6)
MolecPhotoAbsCS CO_MPACS(Carbon_for_CO2_PACS, 1, Oxygen_PACS, 1)
MolecPhotoAbsCS Hg_MPACS(Mercury_PACS, 1)
MolecPhotoAbsCS SiH4_MPACS(Silicon_PACS, 1, Hydrogen_for_H2_PACS, 4)
MolecPhotoAbsCS CS2_MPACS(Carbon_for_CO2_PACS, 1, Sulfur_PACS, 2)
MolecPhotoAbsCS COS_MPACS(Carbon_for_CO2_PACS, 1, Oxygen_PACS, 1, Sulfur_PACS, 1)
SimpleAtomPhotoAbsCS Hydrogen_PACS(1, Hydrogen_shell_PACS)
ExAtomPhotoAbsCS Beryllium_PACS(4, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Be.dat")
SimpleAtomPhotoAbsCS Hydrogen_for_NH4_PACS(1, Hydrogen_for_NH4_shell_PACS)
MolecPhotoAbsCS DME_MPACS(Carbon_for_Methylal_PACS, 2, Hydrogen_for_H2_PACS, 6, Oxygen_PACS, 1)
MolecPhotoAbsCS Xe_MPACS(Xenon_PACS, 1, 22.1e-6)
MolecPhotoAbsCS H2S_MPACS(Hydrogen_for_H2_PACS, 2, Sulfur_PACS, 1)
ExAtomPhotoAbsCS Cadmium_PACS(48, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Cd.dat")
MolecPhotoAbsCS F2_MPACS(Fluorine_PACS, 2)
ExAtomPhotoAbsCS Bromine_PACS(35, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Br.dat")
ExAtomPhotoAbsCS Krypton_PACS(36, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Kr.dat")
MolecPhotoAbsCS SF4_MPACS(Sulfur_PACS, 1, Fluorine_PACS, 4)
MolecPhotoAbsCS C3H8_MPACS(Carbon_for_CH4_PACS, 3, Hydrogen_for_H2_PACS, 8, 24.0e-6)
ExAtomPhotoAbsCS Fluorine_PACS(9, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"F.dat")
SimpleAtomPhotoAbsCS Hydrogen_for_H2_PACS(1, Hydrogen_for_H2_shell_PACS)
ExAtomPhotoAbsCS Boron_PACS(5, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"B.dat")
ExAtomPhotoAbsCS Oxygen_PACS(8, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"O.dat")
ExAtomPhotoAbsCS Arsenic_PACS(33, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"As.dat")
ExAtomPhotoAbsCS Carbon_for_C2H6_PACS(6, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"C.dat", "C_for_C2H6", 11.52e-06)
MolecPhotoAbsCS C2H5OH_MPACS(Carbon_for_C2H6_PACS, 2, Hydrogen_for_H2_PACS, 6, Oxygen_PACS, 1, 24.8e-6)
ExAtomPhotoAbsCS Silicon_PACS(14, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Si.dat")
PhenoPhotoAbsCS Hydrogen_for_H2_shell_PACS("Hydrogen_for_H2", 1, 15.43e-6, 3.228)
ExAtomPhotoAbsCS Silicon_G4_PACS(14, shelllist_dir_name+"shelllist_solid.dat", shelllist_dir_name+"Si_G4.dat", "Si_G4")
MolecPhotoAbsCS O2_MPACS(Oxygen_PACS, 2, 30.8e-6)
ExAtomPhotoAbsCS Sodium_PACS(11, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Na.dat")
MolecPhotoAbsCS C2F4H2_MPACS(Carbon_for_CF4_PACS, 2, Fluorine_PACS, 4, Hydrogen_for_H2_PACS, 2)
ExAtomPhotoAbsCS Carbon_for_C4H10_PACS(6, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"C.dat", "C_for_C4H10", 10.55e-06)
MolecPhotoAbsCS C2H2_MPACS(Carbon_for_CH4_PACS, 2, Hydrogen_for_H2_PACS, 2, 25.8e-6)
MolecPhotoAbsCS C2H4_MPACS(Carbon_for_C2H4_PACS, 2, Hydrogen_for_H2_PACS, 4, 25.8e-6)
MolecPhotoAbsCS Ar_MPACS(Argon_PACS, 1, 26.4e-6)
ExAtomPhotoAbsCS Argon_PACS
MolecPhotoAbsCS CHF3_MPACS(Carbon_for_CF4_PACS, 1, Hydrogen_for_H2_PACS, 1, Fluorine_PACS, 3)
ExAtomPhotoAbsCS Helium_PACS(2, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"He.dat")
MolecPhotoAbsCS NH3_MPACS(Nitrogen_PACS, 1, Hydrogen_for_NH4_PACS, 3, 26.6e-6)
ExAtomPhotoAbsCS Sulfur_PACS(16, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"S.dat")
ExAtomPhotoAbsCS Oxygen_for_CO2_PACS(8, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"O.dat", "O_for_CO2", 13.79e-6)
ExAtomPhotoAbsCS Neon_PACS(10, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Ne.dat")
MolecPhotoAbsCS CH3OH_MPACS(Carbon_for_C2H6_PACS, 1, Hydrogen_for_H2_PACS, 4, Oxygen_PACS, 1, 24.7e-6)
MolecPhotoAbsCS C2HF5_MPACS(Carbon_for_C2H6_PACS, 2, Hydrogen_for_H2_PACS, 1, Fluorine_PACS, 5)
ExAtomPhotoAbsCS Carbon_for_CO2_PACS(6, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"C.dat", "C_for_CO2", 13.79e-06)
PhenoPhotoAbsCS Hydrogen_for_CH4_shell_PACS("Hydrogen_for_CH4", 1, 12.65e-06, 3.228)
MolecPhotoAbsCS C4H10_MPACS(Carbon_for_C4H10_PACS, 4, Hydrogen_for_H2_PACS, 10, 23.4e-6)
MolecPhotoAbsCS CH4_MPACS(Carbon_for_CH4_PACS, 1, Hydrogen_for_CH4_PACS, 4, 27.3e-6)
MolecPhotoAbsCS SF6_MPACS(Sulfur_PACS, 1, Fluorine_PACS, 6)
MolecPhotoAbsCS C2H2F4_MPACS(Carbon_for_C2H6_PACS, 2, Fluorine_PACS, 4, Hydrogen_for_H2_PACS, 2)
MolecPhotoAbsCS BF3_MPACS(Boron_PACS, 1, Fluorine_PACS, 3)
ExAtomPhotoAbsCS Aluminium_PACS(13, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Al.dat")
ExAtomPhotoAbsCS Chlorine_PACS(17, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Cl.dat")
ExAtomPhotoAbsCS Germanium_PACS(32, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Ge.dat")
MolecPhotoAbsCS Kr_MPACS(Krypton_PACS, 1, 24.4e-6)
const std::string shelllist_dir_name
MolecPhotoAbsCS C2F6_MPACS(Carbon_for_C2H6_PACS, 2, Fluorine_PACS, 6)
ExAtomPhotoAbsCS Germanium_crystal_PACS(32, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Ge.dat", "Ge_crystal", 0.67e-06)
MolecPhotoAbsCS C3H7OH_MPACS(Carbon_for_C2H6_PACS, 3, Hydrogen_for_H2_PACS, 8, Oxygen_PACS, 1)
MolecPhotoAbsCS CO2_MPACS(Carbon_for_CO2_PACS, 1, Oxygen_for_CO2_PACS, 2, 33.0e-6)
MolecPhotoAbsCS C2H6_MPACS(Carbon_for_C2H6_PACS, 2, Hydrogen_for_H2_PACS, 6, 25.0e-6)
ExAtomPhotoAbsCS Lithium_PACS(3, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Li.dat")
MolecPhotoAbsCS He_MPACS(Helium_PACS, 1, 41.3e-6)
ExAtomPhotoAbsCS Xenon_PACS(54, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Xe.dat")
ExAtomPhotoAbsCS Uranium_PACS(92, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"U.dat")
MolecPhotoAbsCS H2_MPACS(Hydrogen_for_H2_PACS, 2)
ExAtomPhotoAbsCS Gallium_PACS(31, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Ga.dat")
ExAtomPhotoAbsCS Carbon_PACS(6, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"C.dat")
MolecPhotoAbsCS NO_MPACS(Nitrogen_PACS, 1, Oxygen_PACS, 1)
MolecPhotoAbsCS O3_MPACS(Oxygen_PACS, 3)
MolecPhotoAbsCS GeH4_MPACS(Germanium_PACS, 1, Hydrogen_for_H2_PACS, 4)
MolecPhotoAbsCS C3F8_MPACS(Carbon_for_CF4_PACS, 3, Fluorine_PACS, 8)
MolecPhotoAbsCS Methylal_MPACS(Oxygen_PACS, 2, Carbon_for_Methylal_PACS, 3, Hydrogen_for_H2_PACS, 8, 10.0e-6 *23.4/10.55)
MolecPhotoAbsCS H2O_MPACS(Hydrogen_for_H2_PACS, 2, Oxygen_PACS, 1, 29.6e-6)
ExAtomPhotoAbsCS Caesium_PACS(55, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Cs.dat")
MolecPhotoAbsCS CF4_MPACS(Carbon_for_CF4_PACS, 1, Fluorine_PACS, 4)
MolecPhotoAbsCS N2O_MPACS(Nitrogen_PACS, 2, Oxygen_PACS, 1, 34.8e-6)
ExAtomPhotoAbsCS Carbon_for_CF4_PACS(6, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"C.dat", "C_for_CF4", 16.23e-06)
HydrogenPhotoAbsCS Hydrogen_shell_PACS
ExAtomPhotoAbsCS Carbon_for_Methylal_PACS(6, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"C.dat", "C_for_Methylal", 10.0e-06)
MolecPhotoAbsCS C3H6_MPACS(Carbon_for_C2H6_PACS, 3, Hydrogen_for_H2_PACS, 6)
ExAtomPhotoAbsCS Carbon_for_CH4_PACS(6, shelllist_dir_name+"shelllist.dat", shelllist_dir_name+"C_for_CH4.dat", "C_for_CH4", 12.65e-6)