Import Geant4 9.1.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-09 15:37:50 +02:00
parent a8e9364cea
commit 96c8bcd0af
6923 changed files with 198390 additions and 41849 deletions
+18 -6
View File
@@ -14,6 +14,18 @@ code and to keep track of all tags.
* Please list in reverse chronological order (last date on top)
---------------------------------------------------------------
11 Oct 2007 F.W. Jones (hadr-util-V09-00-00)
--------------------------------------------
- G4LightMedia: fixed coding errors in inequalities for
charge exchange occurrence in PionPlusExchange,
KaonZeroShortExchange, and NeutronExchange.
13 August 2007 Dennis Wright (hadr-util-V08-03-00a)
---------------------------------------------------
- special CMS tag: geant4-08-03-ref-00 + hadr-util-V08-03-02.
On top of geant4-08-03-ref-00, this contains only array bounds, units
and backward peak fixes in G4ReactionDynamics
27 June 2007 Alex Howard (hadr-util-V08-03-03)
------------------------------------------------
- Removed DumpCoreOnHadronicException protection around Report() in
@@ -30,18 +42,18 @@ code and to keep track of all tags.
1) sharp peak at 180 degrees for low and medium energies due to a units
error:
G4double totalE = kineticE + vMass;
was changed to
was changed to
G4double totalE = kineticE*GeV + vMass;
Result is that particles from intra-nuclear cascade now have energies
~ 100 MeV instead of almost 0.
~ 100 MeV instead of almost 0.
2) sharp peak at 180 degrees for low and medium energies and target nuclei
with Z > 6 due to incorrect sampling of polar angle:
replaced
G4double costheta =
replaced
G4double costheta =
1.0 + 2.0*std::log(1.0 - G4UniformRand()) / dtb;
with
G4double costheta =
with
G4double costheta =
1.0 + 2.0*std::log(1.0 - G4UniformRand()*factor) / dtb;
where factor = 1.0 - std::exp(-dtb) and dtb is momentum-dependent
@@ -23,11 +23,14 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
//
//
// Hadronic Process: Light Media Charge and/or Strangeness Exchange
// J.L. Chuma, TRIUMF, 21-Feb-1997
// Last modified: 13-Mar-1997
// Hadronic Process: Light Media Charge and/or Strangeness Exchange
// J.L. Chuma, TRIUMF, 21-Feb-1997
// Last modified: 13-Mar-1997
// 11-OCT-2007 F.W. Jones: fixed coding errors in inequalities for
// charge exchange occurrence in PionPlusExchange,
// KaonZeroShortExchange, and NeutronExchange.
#include "G4LightMedia.hh"
#include "Randomize.hh"
@@ -50,7 +53,7 @@
const G4double cech[] = {0.33,0.27,0.29,0.31,0.27,0.18,0.13,0.10,0.09,0.07};
G4int iplab = G4int(std::min( 9.0, incidentParticle->GetTotalMomentum()/GeV*5.0 ));
if( G4UniformRand() > cech[iplab]/std::pow(atomicNumber,0.42) ) {
if( G4UniformRand() < cech[iplab]/std::pow(atomicNumber,0.42) ) {
G4DynamicParticle* resultant = new G4DynamicParticle;
resultant->SetDefinition( aPiZero );
// targetParticle->SetDefinition( aProton );
@@ -123,7 +126,7 @@
const G4double cech[] = {0.33,0.27,0.29,0.31,0.27,0.18,0.13,0.10,0.09,0.07};
G4int iplab = G4int( std::min( 9.0, incidentParticle->GetTotalMomentum()/GeV*5.0 ) );
if( G4UniformRand() > cech[iplab]/std::pow(atomicNumber,0.42) ) {
if( G4UniformRand() < cech[iplab]/std::pow(atomicNumber,0.42) ) {
G4DynamicParticle* resultant = new G4DynamicParticle;
resultant->SetDefinition( aKaonPlus );
// targetParticle->SetDefinition( aNeutron );
@@ -232,7 +235,7 @@
if( targetParticle->GetDefinition() == aProton ) {
const G4double cech[] = {0.50,0.45,0.40,0.35,0.30,0.25,0.06,0.04,0.005,0.};
G4int iplab = G4int( std::min( 9.0, incidentParticle->GetTotalMomentum()/GeV*2.5 ) );
if( G4UniformRand() > cech[iplab]/std::pow(atomicNumber,0.42) ) {
if( G4UniformRand() < cech[iplab]/std::pow(atomicNumber,0.42) ) {
G4DynamicParticle* resultant = new G4DynamicParticle;
resultant->SetDefinition( aProton );
// targetParticle->SetDefinition( aNeutron );