PYTHIA
8.312
|
#include <HISubCollisionModel.h>
Public Member Functions | |
BlackSubCollisionModel () | |
The default constructor simply lists the nucleon-nucleon cross sections. | |
virtual | ~BlackSubCollisionModel () override |
Virtual destructor. | |
vector< double > | minParm () const override |
Get the minimum and maximum allowed parameter values for this model. | |
vector< double > | defParm () const override |
Get the default parameter values for this model. | |
vector< double > | maxParm () const override |
Get the maximum allowed parameter values for this model. | |
virtual SigEst | getSig () const override |
Get cross sections used by this model. | |
virtual SubCollisionSet | getCollisions (Nucleus &proj, Nucleus &targ) override |
Take two nuclei and return the corresponding sub-collisions. More... | |
Public Member Functions inherited from SubCollisionModel | |
SubCollisionModel (int nParm) | |
The default constructor is empty. | |
virtual | ~SubCollisionModel () |
Virtual destructor. | |
virtual bool | init (int idAIn, int idBIn, double eCMIn) |
Virtual init method. More... | |
void | initPtr (NucleusModel &projIn, NucleusModel &targIn, SigmaTotal &sigTotIn, Settings &settingsIn, Info &infoIn, Rndm &rndmIn) |
Initialize the pointers. | |
double | sigTot () const |
The target total nucleon-nucleon cross section. More... | |
double | sigEl () const |
The target elastic cross section. | |
double | sigCDE () const |
The target central diffractive excitation cross section. | |
double | sigSDE () const |
The target single diffractive excitation cross section (both sides). | |
double | sigSDEP () const |
The target single diffractive excitation cross section (projectile). | |
double | sigSDET () const |
The target single diffractive excitation cross section (target). | |
double | sigDDE () const |
The target double diffractive excitation cross section. | |
double | sigND () const |
The target non-diffractive (absorptive) cross section. | |
double | bSlope () const |
The target elastic b-slope parameter. | |
double | avNDB () const |
Return the average non-diffractive impact parameter. | |
void | updateSig () |
Update internally stored cross sections. More... | |
double | Chi2 (const SigEst &sigs, int npar) const |
Calculate the Chi2 for the given cross section estimates. More... | |
void | setKinematics (double eCMIn) |
Set beam kinematics. More... | |
void | setIDA (int idA) |
Set projectile particle. | |
bool | evolve (int nGenerations, double eCM) |
Use a genetic algorithm to fit the parameters. More... | |
int | nParms () const |
Get the number of free parameters for the model. | |
void | setParm (const vector< double > &parmIn) |
Set the parameters of this model. | |
vector< double > | getParm () const |
Get the current parameters of this model. | |
Additional Inherited Members | |
Static Public Member Functions inherited from SubCollisionModel | |
static shared_ptr< SubCollisionModel > | create (int model) |
Create a new SubCollisionModel of the given model. More... | |
Protected Attributes inherited from SubCollisionModel | |
vector< double > | parmSave |
Saved parameters. | |
int | NInt |
int | NPop |
double | sigFuzz |
double | impactFudge |
bool | fitPrint |
double | avNDb |
NucleusModel * | projPtr |
Info from the controlling HeavyIons object. | |
NucleusModel * | targPtr |
SigmaTotal * | sigTotPtr |
Settings * | settingsPtr |
Info * | infoPtr |
Rndm * | rndmPtr |
Logger * | loggerPtr |
int | idASave |
For variable energies. | |
int | idBSave |
bool | doVarECM |
bool | doVarBeams |
double | eMin |
double | eMax |
double | eSave |
int | eCMPts |
vector< int > | idAList |
The list of particles that have been fitted. | |
vector< LogInterpolator > * | subCollParms |
map< int, vector< LogInterpolator > > | subCollParmsMap |
Mapping id -> interpolator, one entry for each particle. | |
The most naive sub-collision model, assuming static nucleons and an absorptive cross section equal to the total inelastic. No fluctuations, meaning no diffraction.
|
overridevirtual |
Take two nuclei and return the corresponding sub-collisions.
The BlackSubCollisionModel uses fixed size, black-disk nucleon-nucleon cross section, equal to the total inelastic pp cross section. Everything else is elastic – Diffraction not included.
Go through all pairs of nucleons
Implements SubCollisionModel.