135 for (jMatCC = 0; jMatCC < numOfCouples; jMatCC++ )
139 if( jMatCC == numOfCouples && jMatCC > 0 ) jMatCC--;
143 G4double deltaCutInKineticEnergyNow = (*deltaCutInKineticEnergy)[jMatCC];
144 G4double photonCutInKineticEnergyNow = (*photonCutInKineticEnergy)[jMatCC];
146 G4cout<<
"G4PAIPhotData::Initialise: "<<
"cut = "<<cut/
keV<<
" keV; cutEl = " 147 <<deltaCutInKineticEnergyNow/
keV<<
" keV; cutPh = " 148 <<photonCutInKineticEnergyNow/
keV<<
" keV"<<
G4endl;
196 if ( Tmax < Tmin + deltaLow ) Tmax = Tmin + deltaLow;
211 for(
G4int k = 0; k <
n; k++ )
228 if(ionloss < 0.0) ionloss = 0.0;
230 dEdxMeanVector->
PutValue(i,ionloss);
232 G4double dNdxCut = transferVector->
Value(deltaCutInKineticEnergyNow)/deltaCutInKineticEnergyNow;
233 G4double dNdxCutPhoton = photonVector->
Value(photonCutInKineticEnergyNow)/photonCutInKineticEnergyNow;
234 G4double dNdxCutPlasmon = plasmonVector->
Value(deltaCutInKineticEnergyNow)/deltaCutInKineticEnergyNow;
239 if(dNdxCut < 0.0) { dNdxCut = 0.0; }
240 if(dNdxCutPhoton < 0.0) { dNdxCutPhoton = 0.0; }
241 if(dNdxCutPlasmon < 0.0) { dNdxCutPlasmon = 0.0; }
243 dNdxCutVector->
PutValue(i, dNdxCut);
244 dNdxCutPhotonVector->
PutValue(i, dNdxCutPhoton);
245 dNdxCutPlasmonVector->
PutValue(i, dNdxCutPlasmon);
247 dEdxCutVector->
PutValue(i, dEdxCut);
249 PAItransferTable->
insertAt(i,transferVector);
250 PAIphotonTable->
insertAt(i,photonVector);
251 PAIplasmonTable->
insertAt(i,plasmonVector);
252 PAIdEdxTable->
insertAt(i,dEdxVector);
std::vector< G4PhysicsLogVector * > fdEdxCutTable
void PutValue(size_t binNumber, G4double binValue, G4double dataValue)
const G4Material * GetMaterial() const
std::vector< G4PhysicsTable * > fPAIxscBank
G4PAIxSection fPAIxSection
G4double fLowestKineticEnergy
std::vector< G4PhysicsLogVector * > fdNdxCutPhotonTable
const std::vector< G4double > * GetEnergyCutsVector(size_t pcIdx) const
std::vector< G4PhysicsLogVector * > fdNdxCutPlasmonTable
G4double GetIntegralCerenkov(G4int i) const
G4GLOB_DLL std::ostream G4cout
G4double ComputeMaxEnergy(G4double scaledEnergy)
G4double GetIntegralPlasmon(G4int i) const
void PutValue(size_t index, G4double theValue)
G4int GetSplineSize() const
G4double fHighestKineticEnergy
G4double Value(G4double theEnergy, size_t &lastidx) const
G4double GetIntegralPAIdEdx(G4int i) const
G4double GetSplineEnergy(G4int i) const
G4double GetSandiaMatTablePAI(G4int, G4int) const
std::vector< G4PhysicsLogVector * > fdNdxCutTable
static G4ProductionCutsTable * GetProductionCutsTable()
const G4MaterialCutsCouple * GetMaterialCutsCouple(G4int i) const
G4double GetIntegralPAIxSection(G4int i) const
void Initialize(const G4Material *material, G4double maxEnergyTransfer, G4double betaGammaSq, G4SandiaTable *)
G4double GetMeanEnergyLoss() const
void insertAt(size_t, G4PhysicsVector *)
size_t GetTableSize() const
std::vector< G4PhysicsTable * > fPAIplasmonBank
std::vector< G4PhysicsTable * > fPAIdEdxBank
G4double Energy(size_t index) const
std::vector< G4PhysicsTable * > fPAIphotonBank
void Initialize(G4Material *)
std::vector< G4PhysicsLogVector * > fdEdxTable
G4PhysicsLogVector * fParticleEnergyVector