Giter Club home page Giter Club logo

Comments (10)

A-A-Abdelhamid avatar A-A-Abdelhamid commented on August 22, 2024

Now checking the entire decay chain recursively for every particle (not only muons and neutrinos) by changing the code for "get_decay_products" function to:

def get_decay_products(particle, event_num):
    """
    Get the decay products of a given particle.

    """
    proper_decay_products = []
    other_particles = []

    # Check if the particle itself is a final state muon or neutrino
    if particle.status == 1 and abs(particle.pid) in [13, 12, -13, -12]:
        proper_decay_products.append((particle.pid, particle.id))
    elif particle.status == 1:
        other_particles.append((particle.pid, particle.id, event_num))
    # If the particle has an end vertex, check its descendants recursively
    if particle.end_vertex:
        for p in particle.end_vertex.particles_out:
            proper, other = get_decay_products(p, event_num)
            proper_decay_products.extend(proper)
            other_particles.extend(other)
    return proper_decay_products, other_particles

We get this output:

Proper decay products: Counter({13: 134849, -13: 134840, -12: 134688, 12: 134679})
Other particles: Counter({22: 190298, -211: 956, 211: 929, 11: 535, -11: 533, 321: 132, 
2212: 111, -2212: 111, 
130: 92, -321: 87, -14: 19, -2112: 10, 2112: 10, -16: 5, 16: 5, 14: 3})

Please notice that this code overcounts particles, I'm looking into it, but I looked at one of the desired events. I already verified that such particles only appear when children particles of photons are considered.

from llp_sleptons_rpv_susy.

A-A-Abdelhamid avatar A-A-Abdelhamid commented on August 22, 2024

Currently looking at the events of those unexpected particles

from llp_sleptons_rpv_susy.

A-A-Abdelhamid avatar A-A-Abdelhamid commented on August 22, 2024
# Find the first non photon PID in other_particles, which is the first particle that is out of a photon end_vertix
   first_non_22 = next((pid, id, event_num) for pid, id, event_num in other_particles if pid != 22)

Output:

First non-22 PID in 'other_particles': PID = 11, ID = 1399, Event number = 11

from llp_sleptons_rpv_susy.

A-A-Abdelhamid avatar A-A-Abdelhamid commented on August 22, 2024

Event 11
event11

from llp_sleptons_rpv_susy.

A-A-Abdelhamid avatar A-A-Abdelhamid commented on August 22, 2024

Here is what is happening:
Screenshot 2023-07-18 11 34 27 AM

The photon created a pair of e- e+ with different energies.

from llp_sleptons_rpv_susy.

A-A-Abdelhamid avatar A-A-Abdelhamid commented on August 22, 2024

This is the code used to print the event diagram with the particle of interest and its vertex position

import pyhepmc
from pyhepmc.view import savefig

filename = "tag_1_pythia8_events.hepmc"
# pyhepmc.open can read most HepMC formats using auto-detection
with pyhepmc.open(filename) as f:
    # Loop over events in the file
    for i, event in enumerate(f):
        # Save a plot of the event
        if event.event_number == 11:
          savefig(event, f"event{i}.svg")
          savefig(event, f"event{i}.png")
          savefig(event, f"event{i}.pdf")
          for particle in event.particles:
            if particle.id ==1399 and particle.pid==11:
              ver=particle.production_vertex
              print(ver)

However, it creates diagrams for every single event with "11" in its event number, but that is not a concern at the moment.

from llp_sleptons_rpv_susy.

A-A-Abdelhamid avatar A-A-Abdelhamid commented on August 22, 2024

I checked one of the events where we get unexpected particles, this particular one was an electron coming from an e- e+ pair production by a photon. All unexpected particles in the chain come from a vertex with a photon coming in. The process is detailed above for your reference. Thanks!
@trholmes

from llp_sleptons_rpv_susy.

trholmes avatar trholmes commented on August 22, 2024

I don't totally understand from looking at your diagram. Yes the one of your muons radiates two photons, and the photons create e+e- pairs, but I don't see any other particles coming from those chains. Can you clarify?

from llp_sleptons_rpv_susy.

A-A-Abdelhamid avatar A-A-Abdelhamid commented on August 22, 2024

This is an event where unexpected particles appear, the e+ e- themselves are not expected particles from our decay chain (smuon ---> mu + neutrino). It just happened that the photon in this event was creating two final status electrons, but if I pick another event, I could for example see a photon creating pi+ pi-
I hope this clarifies what I meant.

from llp_sleptons_rpv_susy.

A-A-Abdelhamid avatar A-A-Abdelhamid commented on August 22, 2024

e-e+ was not the best example. Here is another example, the most observed unexpected particle in our chain is -211 (pi-)

Here is a pi- in a photon chain (where the photon itself is from a muon coming from smuon)
PID = -211, ID = 552, Event number = 868
production vertex: (FourVector(-10.8, -21.9, 22.9, 46.4))
Event #868

event868

Here is the decay chain:

Screenshot 2023-07-19 at 5 48 28 PM

The same picture but clearer (the chain of the photon with 58 GeV)
Screenshot 2023-07-19 6 07 53 PM

This one has a lot of unexpected particles compared to photon -----> e- e+
e-e+ are also not expected from our smuon decay chain and I should have mentioned that.

I hope this clarifies everything.

from llp_sleptons_rpv_susy.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.