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

#include <geant4/tree/geant4-10.6-release/source/processes/hadronic/models/im_r_matrix/include/G4CollisionComposite.hh>

+ Inheritance diagram for G4CollisionComposite:
+ Collaboration diagram for G4CollisionComposite:

Classes

struct  Register
 
struct  Resolve
 

Public Member Functions

 G4CollisionComposite ()
 
virtual ~G4CollisionComposite ()
 
virtual G4double CrossSection (const G4KineticTrack &trk1, const G4KineticTrack &trk2) const
 
virtual G4KineticTrackVectorFinalState (const G4KineticTrack &trk1, const G4KineticTrack &trk2) const
 
virtual G4bool IsInCharge (const G4KineticTrack &trk1, const G4KineticTrack &trk2) const
 
void AddComponent (G4VCollision *aC)
 
virtual const
G4VCrossSectionSource
GetCrossSectionSource () const
 
virtual const
G4VAngularDistribution
GetAngularDistribution () const
 
virtual const G4CollisionVectorGetComponents () const
 
- Public Member Functions inherited from G4VCollision
 G4VCollision ()
 
void establish_G4MT_TLS_G4VCollision ()
 
 G4VCollision (void *s1, void *s2, void *s3, void *s4, void *s5, void *s6, void *s7)
 
virtual ~G4VCollision ()
 
G4bool operator== (const G4VCollision &right) const
 
G4bool operator!= (const G4VCollision &right) const
 
virtual G4String GetName () const =0
 
virtual void Print () const
 
virtual void Print (const G4KineticTrack &trk1, const G4KineticTrack &trk2) const
 

Private Member Functions

 G4CollisionComposite (const G4CollisionComposite &right)
 
const G4CollisionCompositeoperator= (const G4CollisionComposite &right)
 
void BufferCrossSection (const G4ParticleDefinition *aP, const G4ParticleDefinition *bP)
 
G4double BufferedCrossSection (const G4KineticTrack &trk1, const G4KineticTrack &trk2) const
 

Private Attributes

G4CollisionVector components
 
std::vector< G4CrossSectionBuffertheBuffer
 
G4Mutex bufferMutex
 

Static Private Attributes

static const G4int nPoints = 32
 
static const G4double theT []
 

Additional Inherited Members

- Protected Member Functions inherited from G4VCollision
G4int GetNumberOfPartons (const G4ParticleDefinition *aP) const
 
virtual const std::vector
< G4String > & 
GetListOfColliders (G4int whichOne) const =0
 

Detailed Description

Definition at line 57 of file G4CollisionComposite.hh.

View newest version in sPHENIX GitHub at line 57 of file G4CollisionComposite.hh

Constructor & Destructor Documentation

G4CollisionComposite::G4CollisionComposite ( )

Definition at line 44 of file G4CollisionComposite.cc.

View newest version in sPHENIX GitHub at line 44 of file G4CollisionComposite.cc

References bufferMutex, and G4MUTEXINIT.

G4CollisionComposite::~G4CollisionComposite ( )
virtual

Definition at line 50 of file G4CollisionComposite.cc.

View newest version in sPHENIX GitHub at line 50 of file G4CollisionComposite.cc

References bufferMutex, components, and G4MUTEXDESTROY.

G4CollisionComposite::G4CollisionComposite ( const G4CollisionComposite right)
private

Member Function Documentation

void G4CollisionComposite::AddComponent ( G4VCollision aC)
inline

Definition at line 72 of file G4CollisionComposite.hh.

View newest version in sPHENIX GitHub at line 72 of file G4CollisionComposite.hh

References components.

Referenced by G4CollisionMesonBaryon::G4CollisionMesonBaryon(), G4CollisionMesonBaryonToResonance::G4CollisionMesonBaryonToResonance(), G4CollisionComposite::Register::operator()(), and G4CollisionComposite::Resolve::operator()().

+ Here is the caller graph for this function:

void G4CollisionComposite::BufferCrossSection ( const G4ParticleDefinition aP,
const G4ParticleDefinition bP 
)
private

Definition at line 142 of file G4CollisionComposite.cc.

View newest version in sPHENIX GitHub at line 142 of file G4CollisionComposite.cc

References a, b, components, G4ParticleDefinition::GetPDGMass(), GeV, IsInCharge(), maxE, nPoints, G4CrossSectionBuffer::push_back(), theBuffer, and theT.

Referenced by CrossSection().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4CollisionComposite::BufferedCrossSection ( const G4KineticTrack trk1,
const G4KineticTrack trk2 
) const
private

Definition at line 202 of file G4CollisionComposite.cc.

View newest version in sPHENIX GitHub at line 202 of file G4CollisionComposite.cc

References G4KineticTrack::GetDefinition(), and theBuffer.

Referenced by CrossSection().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4CollisionComposite::CrossSection ( const G4KineticTrack trk1,
const G4KineticTrack trk2 
) const
virtual

Reimplemented from G4VCollision.

Reimplemented in G4CollisionMesonBaryonToResonance, and G4CollisionNN.

Definition at line 57 of file G4CollisionComposite.cc.

View newest version in sPHENIX GitHub at line 57 of file G4CollisionComposite.cc

References BufferCrossSection(), BufferedCrossSection(), bufferMutex, G4VCrossSectionSource::CrossSection(), GetCrossSectionSource(), and G4KineticTrack::GetDefinition().

Referenced by G4CollisionMesonBaryonToResonance::CrossSection().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4KineticTrackVector * G4CollisionComposite::FinalState ( const G4KineticTrack trk1,
const G4KineticTrack trk2 
) const
virtual

Implements G4VCollision.

Definition at line 79 of file G4CollisionComposite.cc.

View newest version in sPHENIX GitHub at line 79 of file G4CollisionComposite.cc

References components, G4UniformRand, and IsInCharge().

+ Here is the call graph for this function:

virtual const G4VAngularDistribution* G4CollisionComposite::GetAngularDistribution ( ) const
inlinevirtual

Implements G4VCollision.

Reimplemented in G4CollisionPN, and G4CollisionNN.

Definition at line 76 of file G4CollisionComposite.hh.

View newest version in sPHENIX GitHub at line 76 of file G4CollisionComposite.hh

virtual const G4CollisionVector* G4CollisionComposite::GetComponents ( ) const
inlinevirtual
virtual const G4VCrossSectionSource* G4CollisionComposite::GetCrossSectionSource ( ) const
inlinevirtual

Implements G4VCollision.

Reimplemented in G4CollisionPN, and G4CollisionNN.

Definition at line 75 of file G4CollisionComposite.hh.

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

Referenced by CrossSection().

+ Here is the caller graph for this function:

G4bool G4CollisionComposite::IsInCharge ( const G4KineticTrack trk1,
const G4KineticTrack trk2 
) const
virtual

Implements G4VCollision.

Reimplemented in G4GeneralNNCollision.

Definition at line 121 of file G4CollisionComposite.cc.

View newest version in sPHENIX GitHub at line 121 of file G4CollisionComposite.cc

References GetComponents().

Referenced by BufferCrossSection(), and FinalState().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4CollisionComposite& G4CollisionComposite::operator= ( const G4CollisionComposite right)
private

Member Data Documentation

G4Mutex G4CollisionComposite::bufferMutex
mutableprivate

Definition at line 126 of file G4CollisionComposite.hh.

View newest version in sPHENIX GitHub at line 126 of file G4CollisionComposite.hh

Referenced by CrossSection(), G4CollisionComposite(), and ~G4CollisionComposite().

G4CollisionVector G4CollisionComposite::components
private

Definition at line 120 of file G4CollisionComposite.hh.

View newest version in sPHENIX GitHub at line 120 of file G4CollisionComposite.hh

Referenced by AddComponent(), BufferCrossSection(), FinalState(), GetComponents(), and ~G4CollisionComposite().

const G4int G4CollisionComposite::nPoints = 32
staticprivate

Definition at line 123 of file G4CollisionComposite.hh.

View newest version in sPHENIX GitHub at line 123 of file G4CollisionComposite.hh

Referenced by BufferCrossSection().

std::vector<G4CrossSectionBuffer> G4CollisionComposite::theBuffer
private

Definition at line 121 of file G4CollisionComposite.hh.

View newest version in sPHENIX GitHub at line 121 of file G4CollisionComposite.hh

Referenced by BufferCrossSection(), and BufferedCrossSection().

const G4double G4CollisionComposite::theT
staticprivate
Initial value:
=
{.01, .03, .05, .1, .15, .2, .3, .4, .5, .6, .7, .8, .9, 1.0, 1.2, 1.4, 1.6, 1.8, 2.0, 2.2, 2.5, 3.0, 3.5, 4.0, 5.0, 6.0, 8.0, 10., 15, 20, 50, 100}

Definition at line 124 of file G4CollisionComposite.hh.

View newest version in sPHENIX GitHub at line 124 of file G4CollisionComposite.hh

Referenced by BufferCrossSection().


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