Changes between Version 2 and Version 3 of pSPSS


Ignore:
Timestamp:
Oct 11, 2022, 8:42:02 PM (2 years ago)
Author:
Jan Hajer
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • pSPSS

    v2 v3  
    11= pSPSS: Phenomenological symmetry protected seesaw =
    22
    3 == SPSS: Symmetry protected seesaw
     3The pSPSS describes the interactions of a pseudo-Dirac pair of two Majorana degrees of freedom generically appearing in low-scale seesaw models.
     4[[Image()]]
     5
     6== SPSS: Symmetry protected seesaw ==
     7
     8== !MadGraph patch ==
     9
     10In order to generate events with heavy neutrino-antineutrino oscillations it is necessary to patch the `./bin/internal/common_run_interface.py` file with
     11
     12
     13{{{
     14for event in lhe:
     15    leptonnumber = 0
     16    write_event = True
     17    for particle in event:
     18        if particle.status == 1:
     19            if particle.pid in [11, 13, 15]:
     20                leptonnumber += 1
     21            elif particle.pid in [-11, -13, -15]:
     22                leptonnumber -= 1
     23    for particle in event:
     24        id = particle.pid
     25        width = param_card['decay'].get((abs(id),)).value
     26        mass splitting = param_card.get_value('FRBLOCK', 1)
     27        if width:
     28            if id in [8000011, 8000012]:
     29                tau0 = random.expovariate(width / cst)|\label{ln:tau0}|
     30                if 0.5 * (1 + math.cos(mass splitting * tau0 / cst)) >= random.random():
     31                    write_event = (leptonnumber == 0)
     32                else:
     33                    write_event = (leptonnumber != 0)
     34                vtim = tau0 * c|\label{ln:convert_tau0}|
     35            else:
     36                vtim = c * random.expovariate(width / cst)
     37            if vtim > threshold:
     38                particle.vtim = vtim
     39    # write this modify event
     40    if write_event:
     41        output.write(str(event))
     42output.write('</LesHouchesEvents>\n')
     43output.close()
     44}}}
     45
     46