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

Generate momenta using the Kopylov method. More...

#include <geant4/tree/geant4-10.6-release/source/processes/hadronic/models/inclxx/incl_physics/include/G4INCLPhaseSpaceKopylov.hh>

+ Inheritance diagram for G4INCL::PhaseSpaceKopylov:
+ Collaboration diagram for G4INCL::PhaseSpaceKopylov:

Public Member Functions

void generate (const G4double sqrtS, ParticleList &particles)
 Generate momenta according to a uniform, non-Lorentz-invariant phase-space model.
 
- Public Member Functions inherited from G4INCL::IPhaseSpaceGenerator
 IPhaseSpaceGenerator ()
 
virtual ~IPhaseSpaceGenerator ()
 

Private Member Functions

G4double betaKopylov (G4int K) const
 Internal function used by the Kopylov algorithm.
 

Private Attributes

std::vector< G4doublemasses
 
std::vector< G4doublesumMasses
 
ThreeVector PFragCM
 
ThreeVector PRestCM
 
ThreeVector boostV
 

Detailed Description

Generate momenta using the Kopylov method.

Definition at line 48 of file G4INCLPhaseSpaceKopylov.hh.

View newest version in sPHENIX GitHub at line 48 of file G4INCLPhaseSpaceKopylov.hh

Member Function Documentation

G4double G4INCL::PhaseSpaceKopylov::betaKopylov ( G4int  K) const
private

Internal function used by the Kopylov algorithm.

Definition at line 47 of file G4INCLPhaseSpaceKopylov.cc.

View newest version in sPHENIX GitHub at line 47 of file G4INCLPhaseSpaceKopylov.cc

References F, N, and G4INCL::Random::shoot().

Referenced by generate().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4INCL::PhaseSpaceKopylov::generate ( const G4double  sqrtS,
ParticleList particles 
)
virtual

Generate momenta according to a uniform, non-Lorentz-invariant phase-space model.

This function will assign momenta to the particles in the list that is passed as an argument. The event is generated in the CM frame.

Parameters
sqrtStotal centre-of-mass energy of the system
particleslist of particles

Implements G4INCL::IPhaseSpaceGenerator.

Definition at line 63 of file G4INCLPhaseSpaceKopylov.cc.

View newest version in sPHENIX GitHub at line 63 of file G4INCLPhaseSpaceKopylov.cc

References G4INCL::Particle::adjustEnergyFromMomentum(), betaKopylov(), G4INCL::Particle::boost(), boostV, G4INCL::Particle::boostVector(), G4INCL::Particle::getMass(), k, masses, G4INCL::KinematicsUtils::momentumInCM(), N, G4INCL::Random::normVector(), PFragCM, G4INCL::Particle::setMass(), G4INCL::Particle::setMomentum(), G4INCL::ThreeVector::setX(), G4INCL::ThreeVector::setY(), G4INCL::ThreeVector::setZ(), sumMasses, T, and Acts::Test::transform.

+ Here is the call graph for this function:

Member Data Documentation

ThreeVector G4INCL::PhaseSpaceKopylov::boostV
private

Definition at line 68 of file G4INCLPhaseSpaceKopylov.hh.

View newest version in sPHENIX GitHub at line 68 of file G4INCLPhaseSpaceKopylov.hh

Referenced by generate().

std::vector<G4double> G4INCL::PhaseSpaceKopylov::masses
private

Definition at line 65 of file G4INCLPhaseSpaceKopylov.hh.

View newest version in sPHENIX GitHub at line 65 of file G4INCLPhaseSpaceKopylov.hh

Referenced by generate().

ThreeVector G4INCL::PhaseSpaceKopylov::PFragCM
private

Definition at line 67 of file G4INCLPhaseSpaceKopylov.hh.

View newest version in sPHENIX GitHub at line 67 of file G4INCLPhaseSpaceKopylov.hh

Referenced by generate().

ThreeVector G4INCL::PhaseSpaceKopylov::PRestCM
private

Definition at line 67 of file G4INCLPhaseSpaceKopylov.hh.

View newest version in sPHENIX GitHub at line 67 of file G4INCLPhaseSpaceKopylov.hh

std::vector<G4double> G4INCL::PhaseSpaceKopylov::sumMasses
private

Definition at line 66 of file G4INCLPhaseSpaceKopylov.hh.

View newest version in sPHENIX GitHub at line 66 of file G4INCLPhaseSpaceKopylov.hh

Referenced by generate().


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