Ignore:
Timestamp:
Apr 6, 2009, 12:30:29 PM (15 years ago)
Author:
garnier
Message:

update processes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/processes/hadronic/models/pre_equilibrium/exciton_model/src/G4VPreCompoundNucleon.cc

    r819 r962  
    2525//
    2626//
    27 // $Id: G4VPreCompoundNucleon.cc,v 1.5 2007/07/23 09:56:40 ahoward Exp $
    28 // GEANT4 tag $Name:  $
     27
     28// $Id: G4VPreCompoundNucleon.cc,v 1.9 2008/09/22 10:18:36 ahoward Exp $
     29// GEANT4 tag $Name: geant4-09-02-ref-02 $
     30
    2931//
    3032// by V. Lara
    31 
    32 #include "G4VPreCompoundNucleon.hh"
    33 #include "G4PreCompoundParameters.hh"
    34 //#include "G4EvaporationLevelDensityParameter.hh"
     33//
     34//J.M. Quesada (Apr. 2008) DUMMY abstract base class for nucleons.
     35// it is not ihherited by anything
     36// Suppressed
    3537
    3638
    37 G4double G4VPreCompoundNucleon::
    38 ProbabilityDistributionFunction(const G4double eKin,
    39                                 const G4Fragment& aFragment)
    40 {
    41   if ( !IsItPossible(aFragment) ) return 0.0;
    42 
    43   const G4double r0 = G4PreCompoundParameters::GetAddress()->Getr0();
    44 
    45   G4double U = aFragment.GetExcitationEnergy();
    46   G4double P = aFragment.GetNumberOfParticles();
    47   G4double H = aFragment.GetNumberOfHoles();
    48   G4double N = P + H;
    49 
    50   // g = (6.0/pi2)*a*A
    51   //  G4EvaporationLevelDensityParameter theLDP;
    52   G4double g0 = (6.0/pi2)*aFragment.GetA() *
    53     G4PreCompoundParameters::GetAddress()->GetLevelDensity();
    54   //    theLDP.LevelDensityParameter(G4int(aFragment.GetA()),G4int(aFragment.GetZ()),U);
    55   G4double g1 = (6.0/pi2)*GetRestA() *
    56     G4PreCompoundParameters::GetAddress()->GetLevelDensity();
    57     //    theLDP.LevelDensityParameter(G4int(GetRestA()),G4int(GetRestZ()),U);
    58 
    59 
    60   G4double A0 = ((P*P+H*H+P-H)/4.0 - H/2.0)/g0;
    61   G4double A1 = (A0*g0 - P/2.0)/g1;
    62 
    63   G4double E0 = std::max(0.0,U - A0);
    64   if (E0 == 0.0) return 0.0;
    65   G4double E1 = std::max(0.0,U - eKin - GetBindingEnergy() - A1);
    66 
    67   G4double Probability = 2.0/(hbarc*hbarc*hbarc) * GetReducedMass() *
    68       GetRj(aFragment.GetNumberOfParticles(), aFragment.GetNumberOfCharged()) * r0 * r0 * std::pow(GetRestA(),2.0/3.0) * GetAlpha() * (eKin + GetBeta()) *
    69       P*(N-1.0) * std::pow(g1*E1/(g0*E0),N-2.0)/E0 *
    70       g1/(g0*g0);
    71 
    72   return Probability;
    73 }
    74 
    75 
Note: See TracChangeset for help on using the changeset viewer.