Fork me on GitHub

Opened 4 years ago

Last modified 4 years ago

#1469 new Bug

Possible bug in handling of mothers from Pythia

Reported by: tmadlener Owned by:
Priority: minor Milestone:
Component: Delphes code Version: Delphes 3
Keywords: Pythia Cc:

Description

Dear Developers,

Using the DelphesPythia8 reader we have come upon cases, where a GenParticle points to the same mother via M1 and M2. We have had a look into the documentation of pythia [1] and it seems that there are a few cases that are possible depending on the values of mother1 and mother2. From this documentation we interpret this as: if the values of mother1 and mother2 are identical but > 0, then there should only be one mother particle. Additionally, it seems that in certain cases it would also be necessary to additionally check the status from pythia and potentially set more than two mothers in the Delphes output. In the current implementation of the Pythia reader [2] it seems that these checks are not done and the values of mother1 and mother2 are set as M1 and M2 without further checks.

The main question we have is: Are you aware of this, and if yes do you consider these cases as something that we, as users, should check when using the output, or is this something that you would consider a bug and hence would consider fixing in the Pythia reader?

If necessary we can also provide some sample output exhibiting this problem and also some inputs that can be used to reproduce this special case of the same mother twice.

Cheers,
Thomas

[1]
http://home.thep.lu.se/~torbjorn/pythia81html/ParticleProperties.html
[2]
https://github.com/delphes/delphes/blob/86109dd988fe186222fe3cb8fb7e8744a5663ddd/readers/DelphesPythia8.cpp#L117-L118

Change History (3)

comment:1 by Pavel Demin, 4 years ago

I know that mother/daughter related information is tricky and that different programs generate this information differently. So I agree that it's important to read the Pythia8 documentation to correctly interpret this information.

In my understanding M1 and M2 are copied from the Pythia8 output and with the status contain all the information needed to find all mothers.

Do you see any cases that don't correspond to the six cases described in the Pythia8 documentation?

comment:2 by tmadlener, 4 years ago

Thanks for clarifying this.

Do you see any cases that don't correspond to the six cases described in the Pythia8 documentation?

As far as I can tell, all cases should be covered.

One thing I am wondering is whether it would be possible to make this information a bit easier to use across all possible input formats. E.g. by instead of offering just two indices, offering an array/vector of indices to the mothers/daughters. In that way all the handling of the different cases could be done in the beginning and code that analyzes the outputs could be more independent of the used generator input. However, I am not sure whether that is just a rather simple change to the Candidate and GenParticle classes and the readers and the TreeWriter, or if other modules in between also would need to be touched. I wouldn't really expect that intermediate modules have much use for mother/daughter relations of the generated particles, but maybe you know better than me.

comment:3 by Pavel Demin, 4 years ago

If this new format is only needed in the output ROOT file, then it would be enough to create a new class similar to GenParticle and add the corresponding code to TreeWriter.

Note: See TracTickets for help on using tickets.