Geant4 рдХрд╛ рдирд┐рд░рдВрддрд░ рд╕рддреНрдпрд╛рдкрди

рдореИрдВрдиреЗ Geant4 рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд╕рддреНрдпрд╛рдкрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рд╣реА рд▓реЗрдЦ рд▓рд┐рдЦрд╛ рдерд╛ред рдореБрдЭреЗ рдЖрдкрдХреЛ рдкреГрд╖реНрдарднреВрдорд┐ рдпрд╛рдж рджрд┐рд▓рд╛рдиреЗ рджреЗрдВред рд╣рд╛рд▓ рд╣реА рдореЗрдВ, Geant4 рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдПрдХ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреА рдЬрд╛рдБрдЪ рдХреА рдЧрдИ рдФрд░ " рдХреЙрдкреА-рдкреЗрд╕реНрдЯ рдПрдВрдб рдореВрдиреНрд╕" рд▓реЗрдЦ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ред рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреА рдЬрд╛рдБрдЪ рдХреНрдпреЛрдВ рдХреА рдЧрдИ? рд▓реЛрдЧ рдкрд░рд┐рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИрдВред рдирд┐рд░реАрдХреНрд╖рдг рдХрд╛ рд╕рд╛рд░ рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЕрдм Geant4 рд╕рдВрд╕реНрдХрд░рдг 10.0-рдмреАрдЯрд╛ рдХреЗ рд╕рддреНрдпрд╛рдкрди рдкрд░ рдПрдХ рдЫреЛрдЯреА рд░рд┐рдкреЛрд░реНрдЯ рдЖрдкрдХреЗ рдзреНрдпрд╛рди рдореЗрдВ рдкреЗрд╢ рдХреА рдЧрдИ рд╣реИред



рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдХрд╛ рд╕рд╛рд░рд╛рдВрд╢


рд▓реЗрдЦ "рдХреЙрдкреА-рдкреЗрд╕реНрдЯ рдПрдВрдб рдореВрдиреНрд╕" рд╕реНрдереИрддрд┐рдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдкрджреНрдзрддрд┐ рдФрд░ рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд╛рднреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред рджрд╛рдврд╝реА рд╡рд╛рд▓реЗ Geant4 рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕рдВрд╕реНрдХрд░рдг 4.9.4 рдХреА рдЬрд╛рдБрдЪ рдХреА рдЧрдИ рдереАред рдХрдИ рд╕рдВрджрд┐рдЧреНрдз рдХреЛрдб рдЯреБрдХрдбрд╝реЗ рдкрд╛рдП рдЧрдП рдереЗ, рдЬрд┐рдиреНрд╣реЗрдВ рд▓реЗрдЦ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

Geant4 рдореЛрдВрдЯреЗ рдХрд╛рд░реНрд▓реЛ рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрджрд╛рд░реНрде рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рд╛рдердорд┐рдХ рдХрдгреЛрдВ рдХреЗ рдкрд╛рд░рд┐рдд рд╣реЛрдиреЗ рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рд╣реИред CERN рдореЗрдВ рдСрдмреНрдЬреЗрдХреНрдЯ рдУрд░рд┐рдПрдВрдЯреЗрдб C ++ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд▓реИрдВрдЧреНрд╡реЗрдЬ рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ред рдпрд╣ GEANT рдХреЗ рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХрд╛ рдПрдХ рдФрд░ рд╡рд┐рдХрд╛рд╕ рд╣реИ, рдХрд╛рдлреА рд╕рдВрд╢реЛрдзрд┐рдд рдФрд░ рдкреВрд░рдХ рд╣реИред

рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рд╡реЗрдмрд╕рд╛рдЗрдЯ: http://geant4.org

рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдореЗрдВ, 16 рдЕрддреНрдпрдзрд┐рдХ рд╕рдВрджрд┐рдЧреНрдз рдХреЛрдб рдЕрдВрд╢реЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдПрдХ рдирдП рдЪреЗрдХ рд╕реЗ рдЙрдирдореЗрдВ рд╕реЗ рдХреЗрд╡рд▓ 10 рдХрд╛ рдкрддрд╛ рдЪрд▓рд╛ред рдмрд╛рдХреА рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдпрд╛ рддреЛ рддрдп рд╣реИрдВ рдпрд╛ рдпрд╣ рдХреЛрдб рдЕрдм рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИред рдореИрдВ рдлрд┐рд░ рд╕реЗ рдПрдХ рдирдП рд▓реЗрдЦ рдореЗрдВ рдЗрди рдХреЛрдб рдЕрдВрд╢реЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛ред рдЙрдиреНрд╣реЗрдВ рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдЪреЗрддрд╛рд╡рдиреА рдЧрд╛рдпрдм рд╣реЛ рдЧрдИ рдпрд╛ рдирд╣реАрдВред

рдореИрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рдЕрдЬреАрдм рд╢реЛрдз рдкреНрд░рд╛рд░реВрдк рдХреЗ рд▓рд┐рдП рдорд╛рдлреА рдорд╛рдБрдЧрддрд╛ рд╣реВрдБред рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ Geant4 рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдХрдИ рдХрдорд┐рдпреЛрдВ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдФрд░ рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдЯреВрд▓ рдкрд░ рд▓реЛрдЧреЛрдВ рдХрд╛ рдзреНрдпрд╛рди рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪреЛрдЯ рдирд╣реАрдВ рдкрд╣реБрдВрдЪрд╛рддреА рд╣реИред

рдЕрдЧрд░ рдореИрдВ рдЧрд▓рдд рдирд╣реАрдВ рд╣реВрдВ, рддреЛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдкрд┐рдЫрд▓рд╛ рд╕рдВрд╕реНрдХрд░рдг 2011 рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рд╕рдордп рдХреЗ рджреМрд░рд╛рди, рдмрд╣реБрдд рдХреБрдЫ рдмрджрд▓ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдЖрд╢реНрдЪрд░реНрдп рдХреА рдмрд╛рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреЛрдб рдореЗрдВ рдХреБрдЫ рдирдП рдЕрдЬреАрдм рд╕реНрдерд╛рди рдкрд╛рдП рдЧрдП рдереЗред рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдирдпрд╛ рд╣реИ рдпрд╛ рдХреНрдпрд╛ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдирд╣реАрдВ рджреЗрдЦрд╛ рдерд╛ред

рдирдпрд╛ рд╕рдВрджрд┐рдЧреНрдз рдХреЛрдб рд╕реНрдирд┐рдкреЗрдЯ


рдЬрд┐рди рд╕рдВрджрд┐рдЧреНрдз рд╕реНрдерд╛рдиреЛрдВ рдкрд░ рдореИрдВрдиреЗ рдзреНрдпрд╛рди рджрд┐рдпрд╛, рдЙрдирдХреА рдкреВрд░реА рд╕реВрдЪреА geant4_new.txt рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╣реИред рдореИрдВ рдЗрд╕ рдмрд╛рдд рдкрд░ рдЬреЛрд░ рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдкрдХреЛ рдЗрд╕ рд╕реВрдЪреА рдкрд░ рдкреВрд░реА рддрд░рд╣ рднрд░реЛрд╕рд╛ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рд╕реНрд╡рдпрдВ рдЬрд╛рдВрдЪрдирд╛ рдФрд░ рд╕рднреА рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред рд╣рдо рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП Geant4 рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреА рдХреБрдВрдЬреА рдХреЗ рд▓рд┐рдП рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВ: рдПрдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдлрд╝реЙрд░реНрдо ред

рд╡рд╣реА рд╕реБрд╡рд┐рдзрд╛рдПрдБ


G4double G4CsvAnalysisManager::GetH2Xmin(G4int /*id*/) const { ExceptionForHistograms("GetH2Xmin"); return 0; } G4double G4CsvAnalysisManager::GetH2Xmax(G4int /*id*/) const { ExceptionForHistograms("GetH2Xmin"); return 0; } 

PVS-Studio рдЪреЗрддрд╛рд╡рдиреА: V524 рдпрд╣ рд╡рд┐рдЪрд┐рддреНрд░ рд╣реИ рдХрд┐ 'GetH2Xmax' рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рд╢рд░реАрд░ 'GetH2Xmin' рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╢рд░реАрд░ рдХреЗ рд╕рдорддреБрд▓реНрдп рд╣реИред _G4analysis- рд╕рдВрдЧреНрд░рд╣ g4csvanalysismanager.cc 933

GetH2Xmax () рдлрд╝рдВрдХреНрд╢рди, рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рдПрдХ рдЕрдиреНрдп рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд╕рд╛рде ExceptionForHistograms () рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП:
 ExceptionForHistograms("GetH2Xmax"); 

рддреНрд░реБрдЯрд┐ рдЧрдВрднреАрд░ рдирд╣реАрдВ рд▓рдЧрддреА рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдЗрд╕реЗ рд╕рдордЭрддрд╛ рд╣реВрдВ, рдпрд╣ рдПрдХ рдЕрдкрд╡рд╛рдж рд╣реИрдВрдбрд▓рд┐рдВрдЧ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдореИрдВрдиреЗ рдЗрд╕ рдХреЙрдкреА-рдкреЗрд╕реНрдЯ рддреНрд░реБрдЯрд┐ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ред

рдКрд░реНрдЬрд╛ рд╢реВрдиреНрдп рд╣реИ


рдХрд╛рд░реНрдп рдХреИрд▓рдХреБрд▓реЗрдЯ рдХрд░реЗрдВ рдЕрдЪрд╛рдирдХ, рдпрд╣ рдЪрд░ рд░реАрд╕реЗрдЯ рд╣реЛ рдЧрдпрд╛ рд╣реИред рдпрд╣ рдмрд╣реБрдд рд╣реА рд╕рдВрджрд┐рдЧреНрдз рд╣реИред
 G4double G4RKFieldIntegrator::CalculateTotalEnergy(const G4KineticTrackVector& Barions) { G4double Etot = 0; .... for(G4int c2 = c1 + 1; c2 < nBarion; c2++) { .... // Esk2 Etot += t1*std::pow(Alpha/pi, 3/2)* std::exp(-Alpha*r12*r12); // Eyuk Etot += ....; // Ecoul Etot += 1.44*p1->GetDefinition()->GetPDGCharge()* p2->GetDefinition()->GetPDGCharge()/r12* Erf(std::sqrt(Alpha)*r12); // Epaul Etot = 0; .... } .... } 

PVS-Studio рдЪреЗрддрд╛рд╡рдиреА: V519 'Etot' рдЪрд░ рдХреЛ рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ рджреЛ рдмрд╛рд░ рдорд╛рди рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╢рд╛рдпрдж рдпрд╣ рдПрдХ рдЧрд▓рддреА рд╣реИред рдЪреЗрдХ рд▓рд╛рдЗрдиреЗрдВ: 80, 83. _G4processes -рд░реНрдХрдЪрд░ g4rkfieldintegrator.cc 83

рд╕рдВрджрд┐рдЧреНрдз рддрд░реНрдХ


 G4double G4EmBiasingManager::ApplySecondaryBiasing(....) { .... if(0 == nsplit) { if(safety > fSafetyMin) .... } if(1 == nsplit) { weight = ApplyRussianRoulette(vd, index); } else { G4double tmpEnergy = pPartChange->GetProposedKineticEnergy(); G4ThreeVector tmpMomDir = .... weight = ApplySplitting(vd, track, currentModel, index, tcut); pPartChange->SetProposedKineticEnergy(tmpEnergy); pPartChange->ProposeMomentumDirection(tmpMomDir); } .... } 

рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдЪреЗрддрд╛рд╡рдиреА: V646 рдЖрд╡реЗрджрди рдХреЗ рддрд░реНрдХ рдХрд╛ рдирд┐рд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ 'рдФрд░' рдХреАрд╡рд░реНрдб рдЧрд╛рдпрдм рд╣реИред _G4processes- рд╕рдВрдЧреНрд░рд╣ g4embiasingmanager.cc 299

рдХреЛрдб рдХреЛ "рдЕрдЧрд░ рдФрд░" рдирд┐рд░реНрдорд╛рдг рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд╣реИ рдирд╣реАрдВред рдпрджрд┐ рдЖрдк рдХреЛрдб рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдкреНрд░рд╛рд░реВрдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдореЗрдВ рдпрд╣ рдорд┐рд▓рддрд╛ рд╣реИ:
 if(0 == nsplit) { if(safety > fSafetyMin) .... } if(1 == nsplit) { weight = ApplyRussianRoulette(vd, index); } else { G4double tmpEnergy = pPartChange->GetProposedKineticEnergy(); G4ThreeVector tmpMomDir = .... weight = ApplySplitting(vd, track, currentModel, index, tcut); pPartChange->SetProposedKineticEnergy(tmpEnergy); pPartChange->ProposeMomentumDirection(tmpMomDir); } 

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпрджрд┐ рдХрд┐рд╕реА рдЕрдиреНрдп рд╢рд╛рдЦрд╛ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдмреНрд▓реЙрдХ рдХреЛ рд╣рдореЗрд╢рд╛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдпрджрд┐ "1! = Nsplit"ред рдЗрд╕рдореЗрдВ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рдХрд╛рдо рдХреЗ рдПрдХ рдЕрд▓рдЧ рддрд░реНрдХ рдХреА рдХрд▓реНрдкрдирд╛ рдХреА рдЧрдИ рдереАред

рдЗрд╕реА рддрд░рд╣ рдХреА рд╕реНрдерд┐рддрд┐ рдпрд╣рд╛рдБ рджреЗрдЦреА рдЬрд╛ рд╕рдХрддреА рд╣реИ:

V646 рдЖрд╡реЗрджрди рдХреЗ рддрд░реНрдХ рдХрд╛ рдирд┐рд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ 'рдФрд░' рдХреАрд╡рд░реНрдб рдЧрд╛рдпрдм рд╣реИред _G4processes- рд╕рдВрдЧреНрд░рд╣ g4embiasingmanager.cc 347

рдЕрдзреВрд░рд╛ рдХреЛрдб?


 void G4MolecularDecayTable::AddExcitedState(const G4String& label) { channelsMap::iterator channelsIter = fDecayChannelsMap.find(label); if(channelsIter != fDecayChannelsMap.end()) { G4String errMsg = "Excited state" + label + " already registered in the decay table."; G4Exception("G4MolecularDecayTable::AddExcitedState", "G4MolecularDecayTable003", FatalErrorInArgument, errMsg); return; } fDecayChannelsMap[label] ; } 

рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдЪреЗрддрд╛рд╡рдиреА: V607 рдорд╛рд▓рд┐рдХрд╛рдирд╛ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ 'fDecayChannelsMap [рд▓реЗрдмрд▓]'ред _G4processes- рд╕рдВрдЧреНрд░рд╣ g4moleculardecaytable.cc 140

рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЕрдВрдд рдмрд╣реБрдд рд╕рдВрджрд┐рдЧреНрдз рд▓рдЧрддрд╛ рд╣реИ:
 fDecayChannelsMap[label] ; 

рдпрд╣ рдХреНрдпрд╛ рд╣реИ рдХреНрдпрд╛ рдпрд╣рд╛рдБ рдХреБрдЫ рдпрд╛рдж рдЖ рд░рд╣рд╛ рд╣реИ? рдЖрдк рдРрд░реЗ рд╕реЗрд▓ рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рдереЗ?

рдХреАрдиреЗрдореЗрдЯреАрдХреНрд╕


рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЙрджрд╛рд╣рд░рдг рдХрд╛рдлреА рд▓рдВрдмрд╛ рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдЖрдЧреЗ рднреА рдЗрд╕реЗ рдХрд╛рдЯрдирд╛ рдореЗрд░реЗ рд▓рд┐рдП рдХрдард┐рди рд╣реИред рджреЗрдЦреЗрдВ рдХрд┐ 'id' рдореЗрдВ рдХреМрди рд╕реЗ рдорд╛рди рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред
 void G4QMDCollision::CalKinematicsOfBinaryCollisions( G4double dt) { .... G4int id = 0; .... if ( secs ) { .... id++; .... } if ( std::abs ( eini - efin ) < fepse*10 ) .... else { .... for ( G4int i0i = 0 ; i0i < id-1 ; i0i++ ) { theSystem->DeleteParticipant( i0i+n0 ); } .... } .... } 

рдЪреЗрддрд╛рд╡рдиреА рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ: рд╡реА 621 'рдСрдкрд░реЗрдЯрд░' рдХреЗ рд▓рд┐рдП рдирд┐рд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рд▓реВрдк рдХреЛ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдпрд╛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред _G4processes- рд╕рдВрдЧреНрд░рд╣ g4qmdcollision.cc 228

рдпрджрд┐ рд╢рд░реНрдд "рдЕрдЧрд░ (рд╕реЗрдХрдВрдб)" рдкреВрд░реА рдирд╣реАрдВ рд╣реБрдИ рд╣реИ, рддреЛ рдЪрд░ 'рдЖрдИрдбреА' рд╢реВрдиреНрдп рдХреЗ рдмрд░рд╛рдмрд░ рд░рд╣реЗрдЧрд╛ред рдлрд┐рд░, рдкреНрд░рдкрддреНрд░ рдХрд╛ рдПрдХ рдЪрдХреНрд░ рдЙрддреНрдкрдиреНрди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ:
 for ( G4int i0i = 0 ; i0i < -1 ; i0i++ ) 

рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рдЕрдЬреАрдм рдЪрдХреНрд░ рд╣реЛрдЧрд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ CalKinematicsOfBinaryCollisions () рдлрд╝рдВрдХреНрд╢рди рдХреЗ рддрд░реНрдХ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд╛рдпрдХ рд╣реИред

рдЕрдиреНрдп


рдРрд╕реА рдХрдИ рдЪреЗрддрд╛рд╡рдирд┐рдпрд╛рдБ рд╣реИрдВ рдЬрд┐рдирдХрд╛ рдореИрдВрдиреЗ рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рд╡рд░реНрдгрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛ред рдореИрдВ рдЗрд╕рдореЗрдВ рдирд╣реАрдВ рд░рд╣реВрдВрдЧрд╛ред рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореИрдВ рдПрдХ рдорд╛рдорд▓рд╛ рджрд┐рдЦрд╛рдКрдВрдЧрд╛:
 class G4HadronicException : public std::exception { .... }; inline G4double G4GeneralPhaseSpaceDecay::Pmx( G4double e, G4double p1, G4double p2) { if (e-p1-p2 < 0 ) { G4HadronicException(__FILE__, __LINE__, "G4GeneralPhaseSpaceDecay::Pmx " "energy in cms > mass1+mass2"); } .... } 

рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдЪреЗрддрд╛рд╡рдиреАред V596 рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред 'рдереНрд░реЛ' рдХреАрд╡рд░реНрдб рдЧрд╛рдпрдм рд╣реЛ рд╕рдХрддрд╛ рд╣реИ: G4HadronicException (FOO) рдХреЛ рдлреЗрдВрдХ рджреЗрдВ; _G4processes- рд╕рдВрдЧреНрд░рд╣ g4generalphasespacedecay.hh 116

'рдереНрд░реЛ' рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдХреЛ рднреВрд▓ рдЬрд╛рдиреЗ рдкрд░ рдХрдИ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рд╣реЛрддреА рд╣реИрдВред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, 'G4HadronicException' рдкреНрд░рдХрд╛рд░ рдХреА рдПрдХ рд╡рд╕реНрддреБ рдмрдирд╛рдИ рдЬрд╛рддреА рд╣реИ рдФрд░ рддреБрд░рдВрдд рдирд╖реНрдЯ рд╣реЛ рдЬрд╛рддреА рд╣реИред рдФрд░ рдлрд┐рд░ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЧрд▓рдд рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрддрд╛ рд╣реИред

рдЖрд▓реЗрдЦ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдпреЗ рдЯрд╛рдЗрдкреЛрд╕ , рдлрд╝рд╛рдЗрд▓ geant4_new.txt рдореЗрдВ рдкрд╛рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдорд╛рдЗрдХреНрд░реЛрдкреЛрдЯрд┐рдорд┐рдЯреЗрд╢рди рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдЪреЗрддрд╛рд╡рдиреА рднреА рд╣реИрдВред

рдирд┐рд╖реНрдХрд░реНрд╖


рдПрдХ рдкреБрд░рд╛рдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдЬрд╛рдБрдЪ рдХреА рд╡реНрдпрд░реНрдерддрд╛ рдХреЗ рд╡рд┐рд╖рдп рдкрд░ред рдЖрдк рджреЗрдЦреЗрдВ, рдФрд░ рдореИрдВрдиреЗ рдЫреБрдЖред :)

рдореБрдЭреЗ рдЯреНрд░реЛрд▓ рдХрд░рдиреЗ рдХрд╛ рдЕрдЪреНрдЫрд╛ рдХрд╛рд░рдгред

Source: https://habr.com/ru/post/In202158/


All Articles