29#ifndef G4ParticleHPThermalScattering_h
30#define G4ParticleHPThermalScattering_h 1
67 std::vector < G4double >
prob;
104 void clearCurrentFSData();
110 std::map < G4int , std::map < G4double , std::vector < std::pair< G4double , G4double >* >* >* >* coherentFSs;
111 std::map < G4double , std::vector < std::pair< G4double , G4double >* >* >* readACoherentFSDATA(
G4String );
115 std::map < G4int , std::map < G4double , std::vector < E_isoAng* >* >* >* incoherentFSs;
116 std::map < G4double , std::vector < E_isoAng* >* >* readAnIncoherentFSDATA(
G4String );
117 E_isoAng* readAnE_isoAng ( std::istream* );
121 std::map < G4int , std::map < G4double , std::vector < E_P_E_isoAng* >* >* >* inelasticFSs;
122 std::map < G4double , std::vector < E_P_E_isoAng* >* >* readAnInelasticFSDATA(
G4String );
132 std::pair< G4double , G4double > find_LH (
G4double , std::vector<G4double>* );
133 G4double get_linear_interpolated (
G4double , std::pair < G4double , G4double > , std::pair < G4double , G4double > );
135 E_isoAng create_E_isoAng_from_energy(
G4double , std::vector< E_isoAng* >* );
139 std::pair< G4double, G4double > sample_inelastic_E_mu(
G4double pE , std::vector< E_P_E_isoAng* >* vNEP_EPM );
142 std::pair< G4double , E_isoAng > create_sE_and_EPM_from_pE_and_vE_P_E_isoAng (
G4double ,
G4double , std::vector < E_P_E_isoAng* >* );
144 std::map < std::pair < const G4Material* , const G4Element* > ,
G4int > dic;
145 void buildPhysicsTable();
G4HadFinalState * ApplyYourself(const G4HadProjectile &aTrack, G4Nucleus &aTargetNucleus)
void AddUserThermalScatteringFile(G4String, G4String)
G4ParticleHPThermalScattering()
virtual void ModelDescription(std::ostream &outFile) const
virtual const std::pair< G4double, G4double > GetFatalEnergyCheckLevels() const
~G4ParticleHPThermalScattering()
void BuildPhysicsTable(const G4ParticleDefinition &)
std::vector< G4double > prob
std::vector< E_isoAng * > vE_isoAngle
std::vector< G4double > secondary_energy_pdf
G4int secondary_energy_cdf_size
std::vector< G4double > secondary_energy_cdf
std::vector< G4double > secondary_energy_value
std::vector< G4double > isoAngle