270 { 
if (TotalSigmaTableAreBuilt) 
return;
 
  277   for (
size_t i=0; i<listOfAdjointEMModel.size();i++){
 
  278     listSigmaTableForAdjointModelScatProjToProj[i]->clearAndDestroy();
 
  279     listSigmaTableForAdjointModelProdToProj[i]->clearAndDestroy();
 
  281         listSigmaTableForAdjointModelScatProjToProj[i]->push_back(
new G4PhysicsLogVector(Tmin, Tmax, nbins));
 
  282         listSigmaTableForAdjointModelProdToProj[i]->push_back(
new G4PhysicsLogVector(Tmin, Tmax, nbins));
 
  288   for (
size_t i=0;i<theListOfAdjointParticlesInAction.size();i++){
 
  290     DefineCurrentParticle(thePartDef);
 
  291     theTotalForwardSigmaTableVector[i]->clearAndDestroy();
 
  292     theTotalAdjointSigmaTableVector[i]->clearAndDestroy();
 
  293     EminForFwdSigmaTables[i].clear();
 
  294     EminForAdjSigmaTables[i].clear();
 
  295     EkinofFwdSigmaMax[i].clear();
 
  296     EkinofAdjSigmaMax[i].clear();
 
  326             for (
size_t k=0; k<listOfForwardEmProcess[i]->size(); k++){
 
  327                 totCS+=(*listOfForwardEmProcess[i])[k]->GetLambda(e, couple);
 
  329             for (
size_t k=0; k<listOfForwardEnergyLossProcess[i]->size(); k++){
 
  330                 if (thePartDef == theAdjIon) { 
 
  331                         size_t mat_index = couple->
GetIndex();
 
  332                     G4VEmModel* currentModel = (*listOfForwardEnergyLossProcess[i])[k]->SelectModelForMaterial(e,mat_index);
 
  334                     (*listOfForwardEnergyLossProcess[i])[k]->SetDynamicMassCharge(massRatio,chargeSqRatio);
 
  337                 totCS+=(*listOfForwardEnergyLossProcess[i])[k]->GetLambda(e1, couple);
 
  340             if (totCS>sigma_max){
 
  347             if (totCS>0 && !Emin_found) {
 
  348                 EminForFwdSigmaTables[i].push_back(e);
 
  356         EkinofFwdSigmaMax[i].push_back(e_sigma_max);
 
  359         if(!Emin_found) EminForFwdSigmaTables[i].push_back(Tmax);
 
  361         theTotalForwardSigmaTableVector[i]->push_back(aVector);
 
  372             if (totCS>sigma_max){
 
  378             if (totCS>0 && !Emin_found) {
 
  379                 EminForAdjSigmaTables[i].push_back(e);
 
  385         EkinofAdjSigmaMax[i].push_back(e_sigma_max);
 
  386         if(!Emin_found) EminForAdjSigmaTables[i].push_back(Tmax);
 
  388         theTotalAdjointSigmaTableVector[i]->push_back(aVector1);
 
  392   TotalSigmaTableAreBuilt =
true;
 
G4double ComputeTotalAdjointCS(const G4MaterialCutsCouple *aMatCutCouple, G4ParticleDefinition *aPart, G4double PrimEnergy)
 
size_t GetVectorLength() const 
 
G4double GetLowEdgeEnergy(size_t binNumber) const 
 
size_t GetTableSize() const 
 
void PutValue(size_t index, G4double theValue)
 
virtual G4double GetChargeSquareRatio(const G4ParticleDefinition *, const G4Material *, G4double kineticEnergy)
 
static G4ProductionCutsTable * GetProductionCutsTable()
 
const G4MaterialCutsCouple * GetMaterialCutsCouple(G4int i) const 
 
const G4Material * GetMaterial() const