Closed gaudu closed 10 months ago
I am now trying to figure out what is the variable behind the -nan
in Fitting parameters for -nan GeV
. This lead me to the HISubCollisionModel.cc file and to the eCM
variable in the SubCollisionModel::evolve(int nGenerations, double eCM)
function.
From HISubCollisionModel.hh:
// Use a simplified genetic algorithm to fit the parameters.
virtual bool evolve(int nGenerations, double eCM);
I tried to play around with the energy settings in main1009.cc since this is linked to the eCM
input into a SubCollisionModel
function. I therefore only initialized Pythia by setting the Beams:idA
and Beams:idB
, leaving out the Beams:frameType
, Beams:eA
and Beams:eB
(expecting the energy to be set as the default 14 TeV):
pythia.readString("Beams:idA = -211");
pythia.readString("Beams:idB = 1000060120");
It indeed ran as expected:
*---------------------- Initializing Angantyr ----------------------*
| We collide: pi- on 12C |
| |
| Below follows initialization |
| of sub-collisions. |
| |
| //>________________________________ |
| [########[]_________________________________> |
| \\> |
| |
*------ HeavyIon fitting of SubCollisionModel to cross sections ------*
| |
| Fitting parameters for 14000.0 GeV |
There must be something that Pythia does not appreciate when the previous combination of settings:
pythia.readString("Beams:frameType = 2");
pythia.readString("Beams:eA = 158.");
pythia.readString("Beams:eB = 0.93149");
Following this track and modifying the values of Beams:eB : |
Beams:eB | eCM in SubCollisionModel |
---|---|---|
0.9 | -nan | |
pythia.particleData.m0(1000060120)/12 ~ 0.931 | -nan | |
pythia.particleData.m0(2212) ~ 0.938 | 17.2 | |
1 | 20.6 |
Now I found a fix, where I can use the proton mass instead of the carbon mass divided by 12. Question remains, why is this happening? Is this a feature with a scientific purpose or a bug?
(Temporary?) bug fix implemented in https://github.com/gaudu/pythia8310/commit/38c1215ae1a8969cda1ada6dec35b9db3ffffe38.
I am currently working on an interface between Pythia 8.3.10 and Apprentice. This interface is meant to generate collision events using Pythia 8.3.10 with parameter values for
MultipartonInteractions:pT0Ref
,StringZ:aLund
andStringZ:bLund
such as dictated by Apprentice. Doing so will allow the Apprentice framework to determine the best fitted parameter values to finalize the tune of Pythia 8.3.10 against NA61/SHINE experimental dataset.In a first attempt of this Pythia 8 + Apprentice interface, I created a branch
apprentice_tune
and the example program main1009.cc alongside few bash scripts enabling the reading of the parameter values from local Apprentice installation for Pythia 8 to properly initialize with the various parameter iterations.Current status is that everything seems to be correctly implemented and all input values (
MultipartonInteractions:pT0Ref
,StringZ:aLund
,StringZ:bLund
andBeams:eB
) are read correctly by the Pythia example program; or so I am confident after printing away and checking logfiles:and
I am nonetheless facing an issue as of now, where further in the Pythia 8 "Multiparton Interactions" initialization the program gets stuck in an infinite loop awaiting an acceptable value for
sigmaInteraction
. This seems to never come since an input value somewhere is-nan
(not a number). This-nan
appears in the very beginning of the Pythia 8 initialization:and later on during the "Multiparton Interactions" initialization: