PYTHIA  8.311
Public Member Functions | List of all members
HVStringFlav Class Reference

The HVStringFlav class is used to select HV-quark and HV-hadron flavours. More...

#include <HiddenValleyFragmentation.h>

Inheritance diagram for HVStringFlav:
StringFlav PhysicsBase

Public Member Functions

 HVStringFlav ()
 Constructor.
 
 ~HVStringFlav ()
 Destructor.
 
void init () override
 Initialize data members. More...
 
FlavContainer pick (FlavContainer &flavOld, double, double, bool) override
 Pick a new flavour (including diquarks) given an incoming one. More...
 
int combine (FlavContainer &flav1, FlavContainer &flav2) override
 Combine two flavours (including diquarks) to produce a hadron. More...
 
int idLightestNeutralMeson () override
 Lightest flavour-neutral meson.
 
- Public Member Functions inherited from StringFlav
 StringFlav ()
 Constructor.
 
virtual ~StringFlav ()
 Destructor.
 
virtual void init (double kappaRatio, double strangeFac, double probQQmod)
 Initialise parameters when using close packing. More...
 
int pickLightQ ()
 Pick a light d, u or s quark according to fixed ratios.
 
virtual FlavContainer pickGauss (FlavContainer &flavOld, bool allowPop=true)
 
virtual FlavContainer pickThermal (FlavContainer &flavOld, double pT, double kappaRatio)
 
virtual int combineId (int id1, int id2, bool keepTrying=true)
 Ditto, simplified input argument for simple configurations.
 
virtual pair< int, int > combineDiquarkJunction (int id1, int id2, int id3)
 Combine three (di-) quark flavours into two hadrons. More...
 
virtual int combineToLightest (int id1, int id2)
 Combine two flavours to produce a hadron with lowest possible mass. More...
 
virtual int getHadronIDwin ()
 Return chosen hadron in case of thermal model.
 
virtual int combineLastThermal (FlavContainer &flav1, FlavContainer &flav2, double pT, double kappaRatio)
 
virtual int getHadronID (FlavContainer &flav1, FlavContainer &flav2, double pT=-1.0, double kappaRatio=0, bool finalTwo=false)
 
virtual double getHadronMassWin (int idHad)
 Return hadron mass. Used one if present, pick otherwise.
 
void assignPopQ (FlavContainer &flav)
 Assign popcorn quark inside an original (= rank 0) diquark. More...
 
int makeDiquark (int id1, int id2, int idHad=0)
 Combine two quarks to produce a diquark. More...
 
void addQuarkDiquark (vector< pair< int, int > > &quarkCombis, int qID, int diqID, int hadronID)
 Check if quark-diquark combination should be added. If so add.
 
int getMesonSpinCounter (int hadronID)
 Get spin counter for mesons.
 
double getFlavourSpinRatios (int i, int j)
 
void variations (int idIn, bool early, bool noChoice)
 Calculate the flavor variations. More...
 
- Public Member Functions inherited from PhysicsBase
void initInfoPtr (Info &infoPtrIn)
 This function is called from above for physics objects used in a run. More...
 
virtual ~PhysicsBase ()
 Empty virtual destructor.
 
bool flag (string key) const
 Shorthand to read settings values.
 
int mode (string key) const
 
double parm (string key) const
 
string word (string key) const
 
vector< bool > fvec (string key) const
 
vector< int > mvec (string key) const
 
vector< double > pvec (string key) const
 
vector< string > wvec (string key) const
 

Additional Inherited Members

- Public Types inherited from PhysicsBase
enum  Status {
  INCOMPLETE = -1, COMPLETE = 0, CONSTRUCTOR_FAILED, INIT_FAILED,
  LHEF_END, LOWENERGY_FAILED, PROCESSLEVEL_FAILED, PROCESSLEVEL_USERVETO,
  MERGING_FAILED, PARTONLEVEL_FAILED, PARTONLEVEL_USERVETO, HADRONLEVEL_FAILED,
  CHECK_FAILED, OTHER_UNPHYSICAL, HEAVYION_FAILED, HADRONLEVEL_USERVETO
}
 Enumerate the different status codes the event generation can have.
 
- Protected Member Functions inherited from StringFlav
virtual void initDerived ()
 Initialise derived parameters. More...
 
- Protected Member Functions inherited from PhysicsBase
 PhysicsBase ()
 Default constructor.
 
virtual void onInitInfoPtr ()
 
virtual void onBeginEvent ()
 This function is called in the very beginning of each Pythia::next call.
 
virtual void onEndEvent (Status)
 
virtual void onStat ()
 This function is called from the Pythia::stat() call.
 
void registerSubObject (PhysicsBase &pb)
 Register a sub object that should have its information in sync with this.
 
- Protected Attributes inherited from StringFlav
bool suppressLeadingB
 Settings for Gaussian model.
 
bool mT2suppression
 
bool useWidthPre
 
double probQQtoQ
 
double probStoUD
 
double probSQtoQQ
 
double probQQ1toQQ0
 
double probQandQQ
 
double probQandS
 
double probQandSinQQ
 
double probQQ1corr
 
double probQQ1corrInv
 
double probQQ1norm
 
double probQQ1join [4]
 
double mesonRate [4][6]
 
double mesonRateSum [4]
 
double mesonMix1 [2][6]
 
double mesonMix2 [2][6]
 
double etaSup
 
double etaPrimeSup
 
double decupletSup
 
double baryonCGSum [6]
 
double baryonCGMax [6]
 
double popcornRate
 
double popcornSpair
 
double popcornSmeson
 
double barCGMax [8]
 
double scbBM [3]
 
double popFrac
 
double popS [3]
 
double dWT [3][7]
 
double lightLeadingBSup
 
double heavyLeadingBSup
 
bool qqKappa
 
double closePackingFacPT2
 
double closePackingFacQQ2
 
double probStoUDSav
 
double probQQtoQSav
 
double probSQtoQQSav
 
double probQQ1toQQ0Sav
 
double alphaQQSav
 
double sigmaHad
 
double widthPreStrange
 
double widthPreDiquark
 
bool thermalModel
 Settings for thermal model.
 
bool mesonNonetL1
 
double temperature
 
double tempPreFactor
 
int nNewQuark
 
double mesMixRate1 [2][6]
 
double mesMixRate2 [2][6]
 
double mesMixRate3 [2][6]
 
double baryonOctWeight [6][6][6][2]
 
double baryonDecWeight [6][6][6][2]
 
bool closePacking
 Settings used by both models.
 
double exponentMPI
 
double exponentNSP
 
map< int, vector< pair< int, int > > > hadronConstIDs
 Key = hadron id, value = list of constituent ids.
 
map< int, vector< pair< int, int > > > possibleHadrons
 
map< int, vector< double > > possibleRatePrefacs
 Key = initial (di)quark id, value = prefactor to multiply rate.
 
map< pair< int, int >, vector< pair< int, int > > > possibleHadronsLast
 Similar, but for combining the last two (di)quarks. Key = (di)quark pair.
 
map< pair< int, int >, vector< double > > possibleRatePrefacsLast
 
int hadronIDwin
 Selection in thermal model.
 
int idNewWin
 
double hadronMassWin
 
- Protected Attributes inherited from PhysicsBase
InfoinfoPtr = {}
 
SettingssettingsPtr = {}
 Pointer to the settings database.
 
ParticleDataparticleDataPtr = {}
 Pointer to the particle data table.
 
LoggerloggerPtr = {}
 Pointer to logger.
 
HadronWidthshadronWidthsPtr = {}
 Pointer to the hadron widths data table.
 
RndmrndmPtr = {}
 Pointer to the random number generator.
 
CoupSMcoupSMPtr = {}
 Pointers to SM and SUSY couplings.
 
CoupSUSYcoupSUSYPtr = {}
 
BeamSetupbeamSetupPtr = {}
 
BeamParticlebeamAPtr = {}
 
BeamParticlebeamBPtr = {}
 
BeamParticlebeamPomAPtr = {}
 
BeamParticlebeamPomBPtr = {}
 
BeamParticlebeamGamAPtr = {}
 
BeamParticlebeamGamBPtr = {}
 
BeamParticlebeamVMDAPtr = {}
 
BeamParticlebeamVMDBPtr = {}
 
PartonSystemspartonSystemsPtr = {}
 Pointer to information on subcollision parton locations.
 
SigmaTotalsigmaTotPtr = {}
 Pointers to the total/elastic/diffractive cross sections.
 
SigmaCombinedsigmaCmbPtr = {}
 
set< PhysicsBase * > subObjects
 
UserHooksPtr userHooksPtr
 
- Static Protected Attributes inherited from StringFlav
static const int mesonMultipletCode [6] = { 1, 3, 10003, 10001, 20003, 5}
 Constants: could only be changed in the code itself. More...
 
static const double baryonCGOct [6] = { 0.75, 0.5, 0., 0.1667, 0.0833, 0.1667}
 
static const double baryonCGDec [6] = { 0., 0., 1., 0.3333, 0.6667, 0.3333}
 

Detailed Description

The HVStringFlav class is used to select HV-quark and HV-hadron flavours.

Member Function Documentation

int combine ( FlavContainer flav1,
FlavContainer flav2 
)
overridevirtual

Combine two flavours (including diquarks) to produce a hadron.

Combine two HV-flavours to produce an HV-hadron.

Check whether incoming diquarks. No solution for diquark-antidiquark.

HV-baryon from diquark plus quark.

Positive and negative flavour. Note that with kinetic mixing the Fv are really intended to represent qv, so remap.

Pick HV-meson code: full spectrum of codes or simplified option.

Pick spin either 0 or 1. Include suppression of eta_1 pseudoscalar.

Done.

Reimplemented from StringFlav.

void init ( )
overridevirtual

Initialize data members.

The HVStringFlav class is used to select HV-quark and HV-hadron flavours.

Initialize data members of the flavour generation.

Read in data from Settings.

Sum of flavour suppression factors. Auxiliaries for eta1 suppression.

Some settings not allowed for this scenario. (Plus several more?)

Overwrite some HV-hadron names when simplified displayed flavours.

Also overwrite hv-quark masses to agree in internal fragmentation.

Switch off Zv decays to qv's above the nFlav number.

Reimplemented from StringFlav.

FlavContainer pick ( FlavContainer flavOld,
double  ,
double  ,
bool   
)
overridevirtual

Pick a new flavour (including diquarks) given an incoming one.

Pick a new HV-flavour given an incoming one.

Initial values for old and new flavour.

HV-diquark selection, leading to HV-baryon production.

Pick new HV-flavour according to suppression factors; keep track of sign. Prepare for suppression of eta_1 pseudoscalar, the highest-numbered state.

Done.

Reimplemented from StringFlav.


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