Ignore:
Timestamp:
Nov 25, 2009, 5:13:58 PM (15 years ago)
Author:
garnier
Message:

update CVS release candidate geant4.9.3.01

Location:
trunk/source/processes/hadronic/models/qmd/src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/processes/hadronic/models/qmd/src/G4QMDGroundStateNucleus.cc

    r962 r1196  
    4848   //std::cout << " G4QMDGroundStateNucleus( G4int z , G4int a ) Begin " << z << " " << a << std::endl;
    4949
    50 // Hydrogen  Case
    51    if ( z ==  1 && a == 1 )
     50   if ( z == 1 && a == 1 ) // Hydrogen  Case or proton primary
    5251   {
    5352      SetParticipant( new G4QMDParticipant( G4Proton::Proton() , G4ThreeVector( 0.0 ) , G4ThreeVector( 0.0 ) ) );
     53      return;
     54   }
     55   else if ( z == 0 && a == 1 ) // Neutron primary
     56   {
     57      SetParticipant( new G4QMDParticipant( G4Neutron::Neutron() , G4ThreeVector( 0.0 ) , G4ThreeVector( 0.0 ) ) );
    5458      return;
    5559   }
  • trunk/source/processes/hadronic/models/qmd/src/G4QMDReaction.cc

    r1055 r1196  
    3333// 090122 Be8 -> Alpha + Alpha
    3434// 090331 Change member shenXS and genspaXS object to pointer
     35// 091119 Fix for incidence of neutral particles
    3536//
    3637#include "G4QMDReaction.hh"
     
    636637   G4double pccf = std::sqrt( pcca );
    637638
    638    G4double aas = 2.0 * eccm * b / double ( zp * zt ) / ccoul; 
    639    G4double bbs = 1.0 / std::sqrt ( 1.0 + aas*aas );
    640    G4double aas1 = ( 1.0 + aas * b / rmax ) * bbs;
     639   //Fix for neutral particles
     640   G4double aas1 = 0.0;
     641   G4double bbs = 0.0;
     642
     643   if ( zp != 0 )
     644   {
     645      G4double aas = 2.0 * eccm * b / double ( zp * zt ) / ccoul;
     646      bbs = 1.0 / std::sqrt ( 1.0 + aas*aas );
     647      aas1 = ( 1.0 + aas * b / rmax ) * bbs;
     648   }
    641649
    642650   G4double cost = 0.0;
Note: See TracChangeset for help on using the changeset viewer.