PYTHIA  8.303
Public Member Functions | List of all members
NaiveSubCollisionModel Class Reference

#include <HIUserHooks.h>

Inheritance diagram for NaiveSubCollisionModel:
SubCollisionModel

Public Member Functions

 NaiveSubCollisionModel ()
 
virtual ~NaiveSubCollisionModel ()
 Virtual destructor,.
 
virtual multiset< SubCollisiongetCollisions (vector< Nucleon > &proj, vector< Nucleon > &targ, const Vec4 &bvec, double &T)
 
- Public Member Functions inherited from SubCollisionModel
 SubCollisionModel ()
 The default constructor is empty.
 
virtual ~SubCollisionModel ()
 Virtual destructor,.
 
virtual bool init ()
 Virtual init method. More...
 
void initPtr (NucleusModel &projIn, NucleusModel &targIn, SigmaTotal &sigTotIn, Settings &settingsIn, Info &infoIn, Rndm &rndIn)
 
double sigTot () const
 The total cross section. More...
 
double sigEl () const
 The total cross section.
 
double sigCDE () const
 The central diffractive excitation cross section.
 
double sigSDE () const
 The single diffractive excitation cross section (both sides summed).
 
double sigSDEP () const
 The single diffractive excitation cross section (excited projectile).
 
double sigSDET () const
 The single diffractive excitation cross section (excited target).
 
double sigDDE () const
 The double diffractive excitation cross section.
 
double sigND () const
 The non-diffractive (absorptive) cross section.
 
double bSlope () const
 The elastic b-slope parameter.
 
virtual SigEst getSig () const
 Calculate the cross sections for the given set of parameters.
 
double avNDB () const
 Return the average non-diffractive impact parameter.
 
double Chi2 (const SigEst &sigs, int npar) const
 Calculate the Chi2 for the given cross section estimates. More...
 
virtual bool evolve ()
 Use a simlified genetic algorithm to fit the parameters. More...
 
virtual void setParm (const vector< double > &)
 Set the parameters of this model.
 
virtual vector< double > getParm () const
 
virtual vector< double > minParm () const
 
virtual vector< double > maxParm () const
 

Additional Inherited Members

- Protected Attributes inherited from SubCollisionModel
int NInt
 
int NGen
 
int NPop
 
double sigFuzz
 
bool fitPrint
 
double avNDb
 
NucleusModelprojPtr
 Info from the controlling HeavyIons object.
 
NucleusModeltargPtr
 
SigmaTotalsigTotPtr
 
SettingssettingsPtr
 
InfoinfoPtr
 
RndmrndPtr
 

Detailed Description

A very simple sub-collision model, asuming static nucleons and just assuring that the individual nucleon-nucleon cross sections are preserved.

Constructor & Destructor Documentation

The default constructor simply lists the nucleon-nucleon cross sections.

Member Function Documentation

multiset< SubCollision > getCollisions ( vector< Nucleon > &  proj,
vector< Nucleon > &  targ,
const Vec4 bvec,
double &  T 
)
virtual

Take two vectors of Nucleons and an impact parameter vector and produce the corrsponding sub-collisions. Note that states of the nucleons may be changed.

The NaiveSubCollisionModel uses a fixed size, black-disk-like nucleon-nucleon cross section where. Central collisions will always be absorptive, less central will be doubly diffractive, more peripheral will be single diffractive and the most peripheral will be elastic.

Always call base class to reset nucleons and shift them into position.

Go through all pairs of nucleons

The naive cross section only gets the total xsec correct.

Implements SubCollisionModel.


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