3#ifdef NOT_INCLUDE_GASLIB_IN_PACSLIB
28std::string getDataBasePath() {
32 char* heed_database = std::getenv(
"HEED_DATABASE");
33 if (heed_database == NULL) {
35 char* garfield_home = std::getenv(
"GARFIELD_HOME");
36 if (garfield_home == NULL) {
37 std::cerr <<
"Heed:\n Could not retrieve database path.\n";
39 path = std::string(garfield_home) +
"/Heed/heed++/database";
42 path = std::string(heed_database);
45 std::cout <<
"Heed:\n Database path: " << path <<
"\n";
51 const std::string& pacs_table_dir) {
54 pacs_table_dir +
"Ar.dat");
64 std::vector<double> electron_energy;
65 std::vector<double> photon_energy;
66 electron_energy.emplace_back(0.000200);
68 asp->
add_channel(0.65, electron_energy, photon_energy);
69 electron_energy.resize(2);
70 electron_energy[0] = 0.000050;
71 electron_energy[1] = 0.000200;
72 asp->
add_channel(0.35, electron_energy, photon_energy, 1);
76 asp = Argon_PACS_mod_esc.get_asp(2);
77 electron_energy.resize(1);
78 electron_energy[0] = 0.000200;
79 asp->
add_channel(1.0, electron_energy, photon_energy, 1);
83 asp = Argon_PACS_mod_esc.get_asp(3);
84 electron_energy.resize(1);
85 electron_energy[0] = 0.000200;
86 asp->
add_channel(1.0, electron_energy, photon_energy, 1);
90 return Argon_PACS_mod_esc;
109 std::make_shared<PhenoPhotoAbsCS>(
"Hydrogen_for_H2", 1, 15.43e-6, 3.228));
111 std::make_shared<PhenoPhotoAbsCS>(
"Hydrogen_for_CH4", 1, 12.65e-06, 3.228));
113 std::make_shared<PhenoPhotoAbsCS>(
"Hydrogen_for_NH4", 1, 10.0e-06, 3.228));
150 "C_for_CH4", 12.65e-6);
153 "C_for_C2H4", 10.51e-06);
156 "C_for_C2H6", 11.52e-06);
159 "C_for_C4H10", 10.55e-06);
163 "C_for_Methylal", 10.0e-06);
193 "shelllist_solid.dat",
244 "Ge_crystal", 0.67e-06);
326 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.
ExAtomPhotoAbsCS Gallium_for_GaAs_PACS(31, shelllist_dir_name+"shelllist_solid.dat", pacs_table_dir_name+"Ga.dat", "Ga_for_GaAs")
ExAtomPhotoAbsCS Tellurium_for_CdTe_PACS(52, shelllist_dir_name+"shelllist_solid.dat", pacs_table_dir_name+"Te.dat", "Te_for_CdTe")
SimpleAtomPhotoAbsCS Hydrogen_for_CH4_PACS(1, std::make_shared< PhenoPhotoAbsCS >("Hydrogen_for_CH4", 1, 12.65e-06, 3.228))
ExAtomPhotoAbsCS Phosphorus_PACS(15, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"P.dat")
SimpleAtomPhotoAbsCS Hydrogen_for_H2_PACS(1, std::make_shared< PhenoPhotoAbsCS >("Hydrogen_for_H2", 1, 15.43e-6, 3.228))
MolecPhotoAbsCS C2H2_MPACS
const std::string pacs_table_dir_name
ExAtomPhotoAbsCS Mercury_PACS(80, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Hg.dat")
MolecPhotoAbsCS Methylal_MPACS
MolecPhotoAbsCS CH3OH_MPACS
ExAtomPhotoAbsCS Magnesium_PACS(12, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Mg.dat")
MolecPhotoAbsCS C2F4H2_MPACS
MolecPhotoAbsCS CF4_MPACS
ExAtomPhotoAbsCS Carbon_for_C2H4_PACS(6, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"C.dat", "C_for_C2H4", 10.51e-06)
ExAtomPhotoAbsCS Silicon_crystal_PACS(14, shelllist_dir_name+"shelllist_solid.dat", pacs_table_dir_name+"Si.dat", "Si_crystal")
MolecPhotoAbsCS CS2_MPACS
MolecPhotoAbsCS NH3_MPACS
ExAtomPhotoAbsCS Nitrogen_PACS(7, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"N.dat", "N_for_N2", 15.581e-6)
MolecPhotoAbsCS CF3Br_MPACS
MolecPhotoAbsCS C2H6_MPACS
ExAtomPhotoAbsCS Beryllium_PACS(4, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Be.dat")
MolecPhotoAbsCS SiH4_MPACS
MolecPhotoAbsCS SF6_MPACS
MolecPhotoAbsCS C2H2F4_MPACS
ExAtomPhotoAbsCS Cadmium_PACS(48, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Cd.dat")
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 H2O_MPACS
MolecPhotoAbsCS SF4_MPACS
MolecPhotoAbsCS C2H4_MPACS
ExAtomPhotoAbsCS Fluorine_PACS(9, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"F.dat")
MolecPhotoAbsCS C2F6_MPACS
MolecPhotoAbsCS CO2_MPACS
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")
MolecPhotoAbsCS COS_MPACS
ExAtomPhotoAbsCS Carbon_for_C2H6_PACS(6, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"C.dat", "C_for_C2H6", 11.52e-06)
ExAtomPhotoAbsCS Silicon_PACS(14, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Si.dat")
MolecPhotoAbsCS N2O_MPACS
ExAtomPhotoAbsCS Silicon_G4_PACS(14, shelllist_dir_name+"shelllist_solid.dat", shelllist_dir_name+"Si_G4.dat", "Si_G4")
ExAtomPhotoAbsCS Sodium_PACS(11, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Na.dat")
ExAtomPhotoAbsCS Carbon_for_C4H10_PACS(6, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"C.dat", "C_for_C4H10", 10.55e-06)
ExAtomPhotoAbsCS Arsenic_for_GaAs_PACS(33, shelllist_dir_name+"shelllist_solid.dat", pacs_table_dir_name+"As.dat", "As_for_GaAs")
ExAtomPhotoAbsCS Argon_PACS
ExAtomPhotoAbsCS Tellurium_PACS(52, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Te.dat")
ExAtomPhotoAbsCS Helium_PACS(2, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"He.dat")
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)
MolecPhotoAbsCS C2HF5_MPACS
ExAtomPhotoAbsCS Neon_PACS(10, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Ne.dat")
ExAtomPhotoAbsCS Carbon_for_CO2_PACS(6, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"C.dat", "C_for_CO2", 13.79e-06)
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")
ExAtomPhotoAbsCS Cadmium_for_CdTe_PACS(48, shelllist_dir_name+"shelllist_solid.dat", pacs_table_dir_name+"Cd.dat", "Cd_for_CdTe")
const std::string shelllist_dir_name
MolecPhotoAbsCS BF3_MPACS
ExAtomPhotoAbsCS Germanium_crystal_PACS(32, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Ge.dat", "Ge_crystal", 0.67e-06)
MolecPhotoAbsCS H2S_MPACS
ExAtomPhotoAbsCS Lithium_PACS(3, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Li.dat")
ExAtomPhotoAbsCS Xenon_PACS(54, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Xe.dat")
MolecPhotoAbsCS DME_MPACS
ExAtomPhotoAbsCS Uranium_PACS(92, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"U.dat")
MolecPhotoAbsCS C3H7OH_MPACS
MolecPhotoAbsCS C3F8_MPACS
MolecPhotoAbsCS C3H6_MPACS
MolecPhotoAbsCS C4H10_MPACS
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 C3H8_MPACS
MolecPhotoAbsCS C5H12_MPACS
SimpleAtomPhotoAbsCS Hydrogen_for_NH4_PACS(1, std::make_shared< PhenoPhotoAbsCS >("Hydrogen_for_NH4", 1, 10.0e-06, 3.228))
ExAtomPhotoAbsCS Caesium_PACS(55, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"Cs.dat")
SimpleAtomPhotoAbsCS Hydrogen_PACS(1, std::make_shared< HydrogenPhotoAbsCS >())
MolecPhotoAbsCS C2H5OH_MPACS
MolecPhotoAbsCS CHF3_MPACS
MolecPhotoAbsCS CH4_MPACS
ExAtomPhotoAbsCS Diamond_PACS(6, shelllist_dir_name+"shelllist_solid.dat", pacs_table_dir_name+"C.dat", "Diamond")
ExAtomPhotoAbsCS Carbon_for_CF4_PACS(6, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"C.dat", "C_for_CF4", 16.23e-06)
ExAtomPhotoAbsCS Carbon_for_Methylal_PACS(6, shelllist_dir_name+"shelllist.dat", pacs_table_dir_name+"C.dat", "C_for_Methylal", 10.0e-06)
MolecPhotoAbsCS GeH4_MPACS
ExAtomPhotoAbsCS Carbon_for_CH4_PACS(6, shelllist_dir_name+"shelllist.dat", shelllist_dir_name+"C_for_CH4.dat", "C_for_CH4", 12.65e-6)