#include <G4BigBanger.hh>
 | 
| virtual G4bool  | explosion (const G4Fragment &target) const | 
|   | 
| virtual G4bool  | explosion (G4int A, G4int Z, G4double excitation) const | 
|   | 
| virtual G4bool  | validateOutput (const G4Fragment &target, G4CollisionOutput &output) | 
|   | 
| virtual G4bool  | validateOutput (const G4Fragment &target, const std::vector< G4InuclElementaryParticle > &particles) | 
|   | 
| virtual G4bool  | validateOutput (const G4Fragment &target, const std::vector< G4InuclNuclei > &fragments) | 
|   | 
| void  | getTargetData (const G4Fragment &target) | 
|   | 
| const G4Fragment &  | makeFragment (G4LorentzVector mom, G4int A, G4int Z, G4double EX=0.) | 
|   | 
| const G4Fragment &  | makeFragment (G4int A, G4int Z, G4double EX=0.) | 
|   | 
| virtual void  | setName (const G4String &name) | 
|   | 
| G4CascadeCheckBalance *  | balance | 
|   | 
| G4int  | A | 
|   | 
| G4int  | Z | 
|   | 
| G4LorentzVector  | PEX | 
|   | 
| G4double  | EEXS | 
|   | 
| G4Fragment  | aFragment | 
|   | 
| G4String  | theName | 
|   | 
| G4int  | verboseLevel | 
|   | 
Definition at line 48 of file G4BigBanger.hh.
 
◆ G4BigBanger() [1/2]
      
        
          | G4BigBanger::G4BigBanger  | 
          ( | 
           | ) | 
           | 
        
      
 
Definition at line 67 of file G4BigBanger.cc.
G4CascadeDeexciteBase(const char *name)
 
 
 
 
◆ ~G4BigBanger()
  
  
      
        
          | virtual G4BigBanger::~G4BigBanger  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
inlinevirtual   | 
  
 
 
◆ G4BigBanger() [2/2]
◆ deExcite()
Implements G4VCascadeDeexcitation.
Definition at line 69 of file G4BigBanger.cc.
   78   if (etot < 0.0) etot = 0.0;
    81     G4cout << 
" BigBanger: target\n" << target
    82        << 
"\n etot " << etot << 
G4endl;
    87     PEXrest.
boost(-toTheLabFrame);
    88     G4cout << 
" target rest frame: px " << PEXrest.
px() << 
" py "    89        << PEXrest.
py() << 
" pz " << PEXrest.
pz() << 
" E " << PEXrest.
e()
   102     G4cerr << 
" >>> G4BigBanger unable to process fragment "   120     mom.
boost(toTheLabFrame);
   123     ipart->setMomentum(mom); 
   132     G4cout << 
" In SCM: total outgoing momentum " << G4endl 
   133        << 
" E " << totscm.
e() << 
" px " << totscm.
x()
   134        << 
" py " << totscm.
y() << 
" pz " << totscm.
z() << 
G4endl; 
   135     G4cout << 
" In Lab: mom cons " << G4endl 
   136        << 
" E " << 
PEX.
e() - totlab.
e() 
   137        << 
" px " << 
PEX.
x() - totlab.
x()
   138        << 
" py " << 
PEX.
y() - totlab.
y() 
   142   globalOutput.addOutgoingParticles(
particles);
 
std::vector< G4InuclElementaryParticle > particles
 
void getTargetData(const G4Fragment &target)
 
G4GLOB_DLL std::ostream G4cout
 
HepLorentzVector & boost(double, double, double)
 
Hep3Vector boostVector() const
 
void generateBangInSCM(G4double etot, G4int a, G4int z)
 
std::vector< G4InuclElementaryParticle >::iterator particleIterator
 
virtual G4bool validateOutput(const G4Fragment &target, G4CollisionOutput &output)
 
G4GLOB_DLL std::ostream G4cerr
 
 
 
 
◆ generateBangInSCM()
Definition at line 145 of file G4BigBanger.cc.
  147     G4cout << 
" >>> G4BigBanger::generateBangInSCM" << 
G4endl;
   151   const G4int itry_max = 1000;
   160     G4int knd = (
z>0) ? 1 : 2;
   173   while(bad && itry < itry_max) {   
   187       for(
G4int i = 0; i < 
a-2; i++) {      
   202       if(std::fabs(ct) < ang_cut) {
   208     G4double a_tr = std::sqrt(apr.
x()*apr.
x() + apr.
y()*apr.
y());
   210     mom.
setX(mom2.
z()*apr.
x() + ( mom2.
x()*apr.
y() + mom2.
y()*apr.
z()*apr.
x())/a_tr);
   211     mom.setY(mom2.
z()*apr.
y() + (-mom2.
x()*apr.
x() + mom2.
y()*apr.
z()*apr.
y())/a_tr);
   212     mom.setZ(mom2.
z()*apr.
z() - mom2.
y()*a_tr);
   227     for(
G4int i = 0; i < 
a; i++) {
   228       G4int knd = i < 
z ? 1 : 2;
   234     if (itry == itry_max) 
G4cout << 
" BigBanger -> can not generate bang " << 
G4endl;
 
std::vector< G4InuclElementaryParticle > particles
 
void generateMomentumModules(G4double etot, G4int a, G4int z)
 
G4GLOB_DLL std::ostream G4cout
 
std::vector< G4LorentzVector > scm_momentums
 
std::vector< G4double > momModules
 
 
 
 
◆ generateMomentumModules()
Definition at line 240 of file G4BigBanger.cc.
  242     G4cout << 
" >>> G4BigBanger::generateMomentumModules" << 
G4endl;
   257     for(
G4int i = 0; i < 
a; i++) { 
   271   for(
G4int i = 0; i < 
a; i++) {
 static G4double getParticleMass(G4int type)
 
G4GLOB_DLL std::ostream G4cout
 
std::vector< G4double > momModules
 
G4double generateX(G4int ia, G4double promax) const
 
G4double maxProbability(G4int a) const
 
 
 
 
◆ generateX()
Definition at line 313 of file G4BigBanger.cc.
  316   const G4int itry_max = 1000;
   320   while(itry < itry_max) {  
   327     G4cout << 
" BigBanger -> can not generate x " << 
G4endl;
 
G4GLOB_DLL std::ostream G4cout
 
G4double xProbability(G4double x, G4int a) const
 
G4double maxProbability(G4int a) const
 
 
 
 
◆ maxProbability()
Definition at line 305 of file G4BigBanger.cc.
G4GLOB_DLL std::ostream G4cout
 
G4double xProbability(G4double x, G4int a) const
 
 
 
 
◆ operator=()
◆ xProbability()
Definition at line 285 of file G4BigBanger.cc.
  291   if(x < 1.0 || x > 0.0) {
   295       ekpr *= std::sqrt(1.0 - x) * theG4Pow->
powN((1.0 - x), (3*
a-6)/2); 
   298       ekpr *= theG4Pow->
powN((1.0 - x), (3*
a-5)/2);
 static G4Pow * GetInstance()
 
G4double powN(G4double x, G4int n) const
 
G4GLOB_DLL std::ostream G4cout
 
 
 
 
◆ momModules
  
  
      
        
          | std::vector<G4double> G4BigBanger::momModules | 
         
       
   | 
  
private   | 
  
 
 
◆ particles
◆ scm_momentums
The documentation for this class was generated from the following files: