ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4QGSMSplitableHadron Class Reference

#include <geant4/tree/geant4-10.6-release/source/processes/hadronic/models/parton_string/qgsm/include/G4QGSMSplitableHadron.hh>

+ Inheritance diagram for G4QGSMSplitableHadron:
+ Collaboration diagram for G4QGSMSplitableHadron:

Public Member Functions

 G4QGSMSplitableHadron ()
 
 G4QGSMSplitableHadron (const G4ReactionProduct &aPrimary)
 
 G4QGSMSplitableHadron (const G4ReactionProduct &aPrimary, G4bool Direction)
 
 G4QGSMSplitableHadron (const G4Nucleon &aNucleon)
 
 G4QGSMSplitableHadron (const G4Nucleon &aNucleon, G4bool Direction)
 
virtual ~G4QGSMSplitableHadron ()
 
virtual void SplitUp ()
 
virtual void SetFirstParton (G4int PDGcode)
 
virtual void SetSecondParton (G4int PDGcode)
 
virtual G4PartonGetNextParton ()
 
virtual G4PartonGetNextAntiParton ()
 
- Public Member Functions inherited from G4VSplitableHadron
 G4VSplitableHadron ()
 
 G4VSplitableHadron (const G4ReactionProduct &aPrimary)
 
 G4VSplitableHadron (const G4Nucleon &aNucleon)
 
 G4VSplitableHadron (const G4VKineticNucleon *aNucleon)
 
virtual ~G4VSplitableHadron ()
 
G4bool operator== (const G4VSplitableHadron &right) const
 
G4bool operator!= (const G4VSplitableHadron &right) const
 
void Set4Momentum (const G4LorentzVector &a4Momentum)
 
const G4LorentzVectorGet4Momentum () const
 
void SetDefinition (const G4ParticleDefinition *aDefinition)
 
const G4ParticleDefinitionGetDefinition () const
 
void IncrementCollisionCount (G4int aCount)
 
void SetCollisionCount (G4int aCount)
 
void SetTimeOfCreation (G4double aTime)
 
G4double GetTimeOfCreation ()
 
void SetPosition (const G4ThreeVector &aPosition)
 
const G4ThreeVectorGetPosition () const
 
void SetStatus (const G4int aStatus)
 
G4int GetStatus ()
 
G4bool IsSplit ()
 
G4int GetSoftCollisionCount ()
 

Private Member Functions

const G4QGSMSplitableHadronoperator= (const G4QGSMSplitableHadron &right)
 
void InitParameters ()
 
void DiffractiveSplitUp ()
 
void SoftSplitUp ()
 
G4ThreeVector GaussianPt (G4double widthSquare, G4double maxPtSquare)
 
void GetValenceQuarkFlavors (const G4ParticleDefinition *aPart, G4Parton *&Parton1, G4Parton *&Parton2)
 
G4PartonBuildSeaQuark (G4bool isAntiQuark, G4int aPDGCode, G4int nSeaPair)
 
G4double SampleX (G4double anXmin, G4int nSea, G4int theTotalSea, G4double aBeta)
 

Private Attributes

G4bool Direction
 
std::deque< G4Parton * > Color
 
std::deque< G4Parton * > AntiColor
 
unsigned int iP
 
unsigned int iAP
 
G4MesonSplitter theMesonSplitter
 
G4BaryonSplitter theBaryonSplitter
 
G4double alpha
 
G4double beta
 
G4double theMinPz
 
G4double StrangeSuppress
 
G4double sigmaPt
 
G4double widthOfPtSquare
 
G4double minTransverseMass
 

Additional Inherited Members

- Protected Member Functions inherited from G4VSplitableHadron
void Splitting ()
 

Detailed Description

Definition at line 41 of file G4QGSMSplitableHadron.hh.

View newest version in sPHENIX GitHub at line 41 of file G4QGSMSplitableHadron.hh

Constructor & Destructor Documentation

G4QGSMSplitableHadron::G4QGSMSplitableHadron ( )

Definition at line 76 of file G4QGSMSplitableHadron.cc.

View newest version in sPHENIX GitHub at line 76 of file G4QGSMSplitableHadron.cc

References InitParameters().

+ Here is the call graph for this function:

G4QGSMSplitableHadron::G4QGSMSplitableHadron ( const G4ReactionProduct aPrimary)

Definition at line 89 of file G4QGSMSplitableHadron.cc.

View newest version in sPHENIX GitHub at line 89 of file G4QGSMSplitableHadron.cc

References InitParameters().

+ Here is the call graph for this function:

G4QGSMSplitableHadron::G4QGSMSplitableHadron ( const G4ReactionProduct aPrimary,
G4bool  Direction 
)

Definition at line 81 of file G4QGSMSplitableHadron.cc.

View newest version in sPHENIX GitHub at line 81 of file G4QGSMSplitableHadron.cc

References Direction, and InitParameters().

+ Here is the call graph for this function:

G4QGSMSplitableHadron::G4QGSMSplitableHadron ( const G4Nucleon aNucleon)

Definition at line 95 of file G4QGSMSplitableHadron.cc.

View newest version in sPHENIX GitHub at line 95 of file G4QGSMSplitableHadron.cc

References InitParameters().

+ Here is the call graph for this function:

G4QGSMSplitableHadron::G4QGSMSplitableHadron ( const G4Nucleon aNucleon,
G4bool  Direction 
)

Definition at line 101 of file G4QGSMSplitableHadron.cc.

View newest version in sPHENIX GitHub at line 101 of file G4QGSMSplitableHadron.cc

References Direction, and InitParameters().

+ Here is the call graph for this function:

G4QGSMSplitableHadron::~G4QGSMSplitableHadron ( )
virtual

Definition at line 108 of file G4QGSMSplitableHadron.cc.

View newest version in sPHENIX GitHub at line 108 of file G4QGSMSplitableHadron.cc

Member Function Documentation

G4Parton * G4QGSMSplitableHadron::BuildSeaQuark ( G4bool  isAntiQuark,
G4int  aPDGCode,
G4int  nSeaPair 
)
private

Definition at line 280 of file G4QGSMSplitableHadron.cc.

View newest version in sPHENIX GitHub at line 280 of file G4QGSMSplitableHadron.cc

References DBL_MAX, GaussianPt(), G4VSplitableHadron::GetPosition(), G4Parton::Set4Momentum(), G4Parton::SetPosition(), and sigmaPt.

Referenced by SoftSplitUp().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4QGSMSplitableHadron::DiffractiveSplitUp ( )
private

Definition at line 128 of file G4QGSMSplitableHadron.cc.

View newest version in sPHENIX GitHub at line 128 of file G4QGSMSplitableHadron.cc

References AntiColor, Color, Direction, GaussianPt(), G4VSplitableHadron::Get4Momentum(), G4VSplitableHadron::GetDefinition(), G4VSplitableHadron::GetPosition(), GetValenceQuarkFlavors(), iAP, iP, CLHEP::HepLorentzVector::mag(), max, minTransverseMass, CLHEP::HepLorentzVector::minus(), CLHEP::HepLorentzVector::perp2(), CLHEP::HepLorentzVector::plus(), pt, CLHEP::HepLorentzVector::px(), CLHEP::HepLorentzVector::py(), G4Parton::Set4Momentum(), CLHEP::HepLorentzVector::setE(), G4Parton::SetPosition(), CLHEP::HepLorentzVector::setPx(), CLHEP::HepLorentzVector::setPy(), CLHEP::HepLorentzVector::setPz(), sqr(), widthOfPtSquare, CLHEP::Hep3Vector::x(), and CLHEP::Hep3Vector::y().

Referenced by SplitUp().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4ThreeVector G4QGSMSplitableHadron::GaussianPt ( G4double  widthSquare,
G4double  maxPtSquare 
)
private

Definition at line 263 of file G4QGSMSplitableHadron.cc.

View newest version in sPHENIX GitHub at line 263 of file G4QGSMSplitableHadron.cc

References G4Log(), G4UniformRand, phi, Acts::IntegrationTest::R, and twopi.

Referenced by BuildSeaQuark(), and DiffractiveSplitUp().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4Parton * G4QGSMSplitableHadron::GetNextAntiParton ( )
inlinevirtual

Implements G4VSplitableHadron.

Definition at line 107 of file G4QGSMSplitableHadron.hh.

View newest version in sPHENIX GitHub at line 107 of file G4QGSMSplitableHadron.hh

References AntiColor, and iAP.

Referenced by G4QGSParticipants::CreateStrings(), and G4QGSParticipants::DeterminePartonMomenta().

+ Here is the caller graph for this function:

G4Parton * G4QGSMSplitableHadron::GetNextParton ( )
inlinevirtual

Implements G4VSplitableHadron.

Definition at line 98 of file G4QGSMSplitableHadron.hh.

View newest version in sPHENIX GitHub at line 98 of file G4QGSMSplitableHadron.hh

References Color, and iP.

Referenced by G4QGSParticipants::CreateStrings(), and G4QGSParticipants::DeterminePartonMomenta().

+ Here is the caller graph for this function:

void G4QGSMSplitableHadron::GetValenceQuarkFlavors ( const G4ParticleDefinition aPart,
G4Parton *&  Parton1,
G4Parton *&  Parton2 
)
private

Definition at line 224 of file G4QGSMSplitableHadron.cc.

View newest version in sPHENIX GitHub at line 224 of file G4QGSMSplitableHadron.cc

References kdfinder::abs(), G4ParticleDefinition::GetBaryonNumber(), G4Parton::GetColour(), G4ParticleDefinition::GetPDGEncoding(), G4ParticleDefinition::GetPDGSpin(), G4VSplitableHadron::GetPosition(), G4Parton::GetSpinZ(), G4Parton::SetColour(), G4Parton::SetPosition(), G4Parton::SetSpinZ(), G4BaryonSplitter::SplitBarion(), G4MesonSplitter::SplitMeson(), theBaryonSplitter, and theMesonSplitter.

Referenced by DiffractiveSplitUp(), and SoftSplitUp().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4QGSMSplitableHadron::InitParameters ( )
private

Definition at line 54 of file G4QGSMSplitableHadron.cc.

View newest version in sPHENIX GitHub at line 54 of file G4QGSMSplitableHadron.cc

References alpha, beta, Direction, FALSE, G4ParticleDefinition::GetPDGMass(), GeV, iAP, iP, keV, minTransverseMass, G4PionMinus::PionMinus(), sigmaPt, sqr(), StrangeSuppress, theMinPz, and widthOfPtSquare.

Referenced by G4QGSMSplitableHadron().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4QGSMSplitableHadron& G4QGSMSplitableHadron::operator= ( const G4QGSMSplitableHadron right)
private
G4double G4QGSMSplitableHadron::SampleX ( G4double  anXmin,
G4int  nSea,
G4int  theTotalSea,
G4double  aBeta 
)
private

Definition at line 293 of file G4QGSMSplitableHadron.cc.

View newest version in sPHENIX GitHub at line 293 of file G4QGSMSplitableHadron.cc

References alpha, G4UniformRand, G4Pow::GetInstance(), G4Pow::powA(), G4Pow::powN(), G4INCL::DeJongSpin::shoot(), x1, x2, y, and ymax.

+ Here is the call graph for this function:

void G4QGSMSplitableHadron::SetFirstParton ( G4int  PDGcode)
inlinevirtual

Implements G4VSplitableHadron.

Definition at line 116 of file G4QGSMSplitableHadron.hh.

View newest version in sPHENIX GitHub at line 116 of file G4QGSMSplitableHadron.hh

void G4QGSMSplitableHadron::SetSecondParton ( G4int  PDGcode)
inlinevirtual

Implements G4VSplitableHadron.

Definition at line 118 of file G4QGSMSplitableHadron.hh.

View newest version in sPHENIX GitHub at line 118 of file G4QGSMSplitableHadron.hh

void G4QGSMSplitableHadron::SoftSplitUp ( )
private

Definition at line 178 of file G4QGSMSplitableHadron.cc.

View newest version in sPHENIX GitHub at line 178 of file G4QGSMSplitableHadron.cc

References AntiColor, BuildSeaQuark(), Color, G4UniformRand, G4Parton::GetColour(), G4VSplitableHadron::GetDefinition(), G4VSplitableHadron::GetSoftCollisionCount(), G4Parton::GetSpinZ(), GetValenceQuarkFlavors(), iAP, iP, G4Parton::Set4Momentum(), G4Parton::SetColour(), G4Parton::SetSpinZ(), StrangeSuppress, and tmp.

Referenced by SplitUp().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4QGSMSplitableHadron::SplitUp ( )
virtual

Implements G4VSplitableHadron.

Definition at line 113 of file G4QGSMSplitableHadron.cc.

View newest version in sPHENIX GitHub at line 113 of file G4QGSMSplitableHadron.cc

References Color, DiffractiveSplitUp(), G4VSplitableHadron::GetSoftCollisionCount(), G4VSplitableHadron::IsSplit(), SoftSplitUp(), and G4VSplitableHadron::Splitting().

+ Here is the call graph for this function:

Member Data Documentation

G4double G4QGSMSplitableHadron::alpha
private

Definition at line 89 of file G4QGSMSplitableHadron.hh.

View newest version in sPHENIX GitHub at line 89 of file G4QGSMSplitableHadron.hh

Referenced by InitParameters(), and SampleX().

std::deque<G4Parton *> G4QGSMSplitableHadron::AntiColor
private

Definition at line 78 of file G4QGSMSplitableHadron.hh.

View newest version in sPHENIX GitHub at line 78 of file G4QGSMSplitableHadron.hh

Referenced by DiffractiveSplitUp(), GetNextAntiParton(), and SoftSplitUp().

G4double G4QGSMSplitableHadron::beta
private

Definition at line 90 of file G4QGSMSplitableHadron.hh.

View newest version in sPHENIX GitHub at line 90 of file G4QGSMSplitableHadron.hh

Referenced by InitParameters().

std::deque<G4Parton *> G4QGSMSplitableHadron::Color
private

Definition at line 77 of file G4QGSMSplitableHadron.hh.

View newest version in sPHENIX GitHub at line 77 of file G4QGSMSplitableHadron.hh

Referenced by DiffractiveSplitUp(), GetNextParton(), SoftSplitUp(), and SplitUp().

G4bool G4QGSMSplitableHadron::Direction
private

Definition at line 75 of file G4QGSMSplitableHadron.hh.

View newest version in sPHENIX GitHub at line 75 of file G4QGSMSplitableHadron.hh

Referenced by DiffractiveSplitUp(), G4QGSMSplitableHadron(), and InitParameters().

unsigned int G4QGSMSplitableHadron::iAP
private

Definition at line 80 of file G4QGSMSplitableHadron.hh.

View newest version in sPHENIX GitHub at line 80 of file G4QGSMSplitableHadron.hh

Referenced by DiffractiveSplitUp(), GetNextAntiParton(), InitParameters(), and SoftSplitUp().

unsigned int G4QGSMSplitableHadron::iP
private

Definition at line 79 of file G4QGSMSplitableHadron.hh.

View newest version in sPHENIX GitHub at line 79 of file G4QGSMSplitableHadron.hh

Referenced by DiffractiveSplitUp(), GetNextParton(), InitParameters(), and SoftSplitUp().

G4double G4QGSMSplitableHadron::minTransverseMass
private

Definition at line 95 of file G4QGSMSplitableHadron.hh.

View newest version in sPHENIX GitHub at line 95 of file G4QGSMSplitableHadron.hh

Referenced by DiffractiveSplitUp(), and InitParameters().

G4double G4QGSMSplitableHadron::sigmaPt
private

Definition at line 93 of file G4QGSMSplitableHadron.hh.

View newest version in sPHENIX GitHub at line 93 of file G4QGSMSplitableHadron.hh

Referenced by BuildSeaQuark(), and InitParameters().

G4double G4QGSMSplitableHadron::StrangeSuppress
private

Definition at line 92 of file G4QGSMSplitableHadron.hh.

View newest version in sPHENIX GitHub at line 92 of file G4QGSMSplitableHadron.hh

Referenced by InitParameters(), and SoftSplitUp().

G4BaryonSplitter G4QGSMSplitableHadron::theBaryonSplitter
private

Definition at line 85 of file G4QGSMSplitableHadron.hh.

View newest version in sPHENIX GitHub at line 85 of file G4QGSMSplitableHadron.hh

Referenced by GetValenceQuarkFlavors().

G4MesonSplitter G4QGSMSplitableHadron::theMesonSplitter
private

Definition at line 84 of file G4QGSMSplitableHadron.hh.

View newest version in sPHENIX GitHub at line 84 of file G4QGSMSplitableHadron.hh

Referenced by GetValenceQuarkFlavors().

G4double G4QGSMSplitableHadron::theMinPz
private

Definition at line 91 of file G4QGSMSplitableHadron.hh.

View newest version in sPHENIX GitHub at line 91 of file G4QGSMSplitableHadron.hh

Referenced by InitParameters().

G4double G4QGSMSplitableHadron::widthOfPtSquare
private

Definition at line 94 of file G4QGSMSplitableHadron.hh.

View newest version in sPHENIX GitHub at line 94 of file G4QGSMSplitableHadron.hh

Referenced by DiffractiveSplitUp(), and InitParameters().


The documentation for this class was generated from the following files: