#include <G4DiffractiveSplitableHadron.hh>
◆ G4DiffractiveSplitableHadron() [1/5]
      
        
          | G4DiffractiveSplitableHadron::G4DiffractiveSplitableHadron  | 
          ( | 
           | ) | 
           | 
        
      
 
 
◆ G4DiffractiveSplitableHadron() [2/5]
      
        
          | G4DiffractiveSplitableHadron::G4DiffractiveSplitableHadron  | 
          ( | 
          const G4ReactionProduct &  | 
          aPrimary | ) | 
           | 
        
      
 
 
◆ G4DiffractiveSplitableHadron() [3/5]
      
        
          | G4DiffractiveSplitableHadron::G4DiffractiveSplitableHadron  | 
          ( | 
          const G4Nucleon &  | 
          aNucleon | ) | 
           | 
        
      
 
 
◆ G4DiffractiveSplitableHadron() [4/5]
      
        
          | G4DiffractiveSplitableHadron::G4DiffractiveSplitableHadron  | 
          ( | 
          const G4VKineticNucleon *  | 
          aNucleon | ) | 
           | 
        
      
 
 
◆ ~G4DiffractiveSplitableHadron()
      
        
          | G4DiffractiveSplitableHadron::~G4DiffractiveSplitableHadron  | 
          ( | 
           | ) | 
           | 
        
      
 
 
◆ G4DiffractiveSplitableHadron() [5/5]
◆ ChooseStringEnds()
  
  
      
        
          | void G4DiffractiveSplitableHadron::ChooseStringEnds  | 
          ( | 
          G4int  | 
          PDGcode,  | 
         
        
           | 
           | 
          G4int *  | 
          aEnd,  | 
         
        
           | 
           | 
          G4int *  | 
          bEnd  | 
         
        
           | 
          ) | 
           |  const | 
         
       
   | 
  
private   | 
  
 
Definition at line 162 of file G4DiffractiveSplitableHadron.cc.
  164   G4int absPDGcode = std::abs( PDGcode );
   166   if ( absPDGcode < 1000 ) {  
   167     G4int heavy(0), light(0);
   168     if(!((absPDGcode == 111)||(absPDGcode == 221)||(absPDGcode == 331)))
   170      heavy = absPDGcode/100;
   171      light = (absPDGcode % 100)/10;
   174      if (PDGcode < 0 ) anti *= -1;
   181      else                        {heavy = 2; light = -2;}
   191     G4int j1000 = PDGcode/1000;
   192     G4int j100  = (PDGcode % 1000)/100;
   193     G4int j10   = (PDGcode % 100)/10;
   196     if((j1000 == j100) && (j1000 == j10)) SuppresUUDDSS=1.; 
   199     const G4int maxNumberOfLoops = 1000;
   200     G4int loopCounter = 0;
   207         if(( j100 == j10 ) && ( 
G4UniformRand() > SuppresUUDDSS )) 
continue;
   209         if( j100 == j10 )             {*bEnd = 
Diquark( j100, j10, 1 );}
   212           else                        {*bEnd = 
Diquark( j100, j10, 1 );}
   215        else if(random < 0.66667)
   217         if(( j1000 == j10 ) && ( 
G4UniformRand() > SuppresUUDDSS )) 
continue;
   219         if( j1000 == j10 )            {*bEnd = 
Diquark( j1000, j10, 1 );}
   222           else                        {*bEnd = 
Diquark( j1000, j10, 1 );}
   227         if(( j1000 == j100 ) && ( 
G4UniformRand() > SuppresUUDDSS )) 
continue;
   229         if( j1000 == j100 )           {*bEnd = 
Diquark( j1000, j100, 1 );}
   232           else                        {*bEnd = 
Diquark( j1000, j100, 1 );}
   236               ++loopCounter < maxNumberOfLoops );  
   237     if ( loopCounter >= maxNumberOfLoops ) {
   238       *aEnd = j10; *bEnd = 
Diquark( j1000, j100, 1 );  
 
G4int Diquark(G4int aquark, G4int bquark, G4int Spin) const
 
 
 
 
◆ Diquark()
Definition at line 276 of file G4DiffractiveSplitableHadron.cc.
  277   G4int diquarkPDG = 
std::max( std::abs( aquark ), std::abs( bquark ) ) * 1000 +
   278                      std::min( std::abs( aquark ), std::abs( bquark ) ) * 100  +
   280   return ( aquark > 0  &&  bquark > 0 ) ? diquarkPDG : -1*diquarkPDG;
 
 
 
 
◆ GetNextAntiParton()
  
  
      
        
          | G4Parton * G4DiffractiveSplitableHadron::GetNextAntiParton  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
virtual   | 
  
 
 
◆ GetNextParton()
  
  
      
        
          | G4Parton * G4DiffractiveSplitableHadron::GetNextParton  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
virtual   | 
  
 
 
◆ operator!=()
◆ operator=()
◆ operator==()
◆ SetFirstParton()
  
  
      
        
          | void G4DiffractiveSplitableHadron::SetFirstParton  | 
          ( | 
          G4int  | 
          PDGcode | ) | 
           | 
         
       
   | 
  
virtual   | 
  
 
 
◆ SetSecondParton()
  
  
      
        
          | void G4DiffractiveSplitableHadron::SetSecondParton  | 
          ( | 
          G4int  | 
          PDGcode | ) | 
           | 
         
       
   | 
  
virtual   | 
  
 
 
◆ SplitUp()
  
  
      
        
          | void G4DiffractiveSplitableHadron::SplitUp  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
virtual   | 
  
 
Implements G4VSplitableHadron.
Definition at line 94 of file G4DiffractiveSplitableHadron.cc.
   99   if ( 
Parton[0] != NULL ) 
return;
   103   G4int stringStart, stringEnd;
 
G4int GetPDGEncoding() const
 
void ChooseStringEnds(G4int PDGcode, G4int *aEnd, G4int *bEnd) const
 
const G4ParticleDefinition * GetDefinition() const
 
 
 
 
◆ Parton
  
  
      
        
          | G4Parton* G4DiffractiveSplitableHadron::Parton[2] | 
         
       
   | 
  
private   | 
  
 
 
◆ PartonIndex
  
  
      
        
          | G4int G4DiffractiveSplitableHadron::PartonIndex | 
         
       
   | 
  
private   | 
  
 
 
The documentation for this class was generated from the following files: