52#ifndef G4SBBremTable_h
53#define G4SBBremTable_h 1
82 const bool iselectron);
89 void BuildSamplingTables();
91 void InitSamplingTables();
95 void LoadSamplingTables(
G4int iz);
97 void ReadCompressedFile(
const G4String &fname, std::istringstream &iss);
111 std::vector<G4double> fCumCutValues;
113 std::vector<STPoint> fSTable;
118 struct SamplingTablePerZ {
119 SamplingTablePerZ() : fNumGammaCuts(0), fMinElEnergyIndx(-1), fMaxElEnergyIndx(-1) {}
120 size_t fNumGammaCuts;
121 G4int fMinElEnergyIndx;
122 G4int fMaxElEnergyIndx;
123 std::vector<STable*> fTablesPerEnergy;
125 std::vector<G4double> fGammaECuts;
126 std::vector<G4double> fLogGammaECuts;
128 std::vector<size_t> fMatCutIndxToGamCutIndx;
130 std::vector< std::vector<size_t> > fGamCutIndxToMatCutIndx;
134 G4int LinSearch(
const std::vector<STPoint>& vect,
152 std::vector<G4double> fElEnergyVect;
153 std::vector<G4double> fLElEnergyVect;
154 std::vector<G4double> fKappaVect;
155 std::vector<G4double> fLKappaVect;
158 std::vector<SamplingTablePerZ*> fSBSamplingTables;
double SampleEnergyTransfer(const G4double eekin, const G4double leekin, const G4double gcut, const G4double dielSupConst, const G4int izet, const G4int matCutIndx, const bool iselectron)
void Initialize(const G4double lowe, const G4double highe)
void ClearSamplingTables()