Awkward Example
import hist
import pylhe
# Use an example LHE file from package scikit-hep-testdata
from skhep_testdata import data_path
lhe_file = data_path("pylhe-drell-yan-ll-lhe.gz")
arr = pylhe.to_awkward(pylhe.LHEFile.fromfile(lhe_file, with_attributes=True).events)
arr
[{eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},
{eventinfo: {nparticles: 5, pid: 1, ...}, weights: {...}, particles: ..., ...},
{eventinfo: {nparticles: 5, pid: 1, ...}, weights: {...}, particles: ..., ...},
{eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},
{eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},
{eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},
{eventinfo: {nparticles: 5, pid: 1, ...}, weights: {...}, particles: ..., ...},
{eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},
{eventinfo: {nparticles: 5, pid: 1, ...}, weights: {...}, particles: ..., ...},
{eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},
...,
{eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},
{eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},
{eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},
{eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},
{eventinfo: {nparticles: 5, pid: 1, ...}, weights: {...}, particles: ..., ...},
{eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},
{eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},
{eventinfo: {nparticles: 4, pid: 1, ...}, weights: {...}, particles: ..., ...},
{eventinfo: {nparticles: 5, pid: 1, ...}, weights: {...}, particles: ..., ...}]
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
backend: cpu
nbytes: 16.7 MB
type: 10000 * Event[
eventinfo: EventInfo[
nparticles: float64,
pid: float64,
weight: float64,
scale: float64,
aqed: float64,
aqcd: float64
],
weights: Weights[
"1": float64,
"2": float64,
"3": float64,
"4": float64,
"5": float64,
"6": float64,
"7": float64,
"8": float64,
"9": float64,
"10": float64,
"11": float64,
"12": float64,
"13": float64,
"14": float64,
"15": float64,
"16": float64,
"17": float64,
"18": float64,
"19": float64,
"20": float64,
"21": float64,
"22": float64,
"23": float64,
"24": float64,
"25": float64,
"26": float64,
"27": float64,
"28": float64,
"29": float64,
"30": float64,
"31": float64,
"32": float64,
"33": float64,
"34": float64,
"35": float64,
"36": float64,
"37": float64,
"38": float64,
"39": float64,
"40": float64,
"41": float64,
"42": float64,
"43": float64,
"44": float64,
"45": float64,
"46": float64,
"47": float64,
"48": float64,
"49": float64,
"50": float64,
"51": float64,
"52": float64,
"53": float64,
"54": float64,
"55": float64,
"56": float64,
"57": float64,
"58": float64,
"59": float64,
"60": float64,
"61": float64,
"62": float64,
"63": float64,
"64": float64,
"65": float64,
"66": float64,
"67": float64,
"68": float64,
"69": float64,
"70": float64,
"71": float64,
"72": float64,
"73": float64,
"74": float64,
"75": float64,
"76": float64,
"77": float64,
"78": float64,
"79": float64,
"80": float64,
"81": float64,
"82": float64,
"83": float64,
"84": float64,
"85": float64,
"86": float64,
"87": float64,
"88": float64,
"89": float64,
"90": float64,
"91": float64,
"92": float64,
"93": float64,
"94": float64,
"95": float64,
"96": float64,
"97": float64,
"98": float64,
"99": float64,
"100": float64,
"101": float64,
"102": float64,
"103": float64,
"104": float64,
"105": float64,
"106": float64,
"107": float64,
"108": float64,
"109": float64,
"110": float64,
"111": float64,
"112": float64,
"113": float64,
"114": float64,
"115": float64,
"116": float64,
"117": float64,
"118": float64,
"119": float64,
"120": float64,
"121": float64,
"122": float64,
"123": float64,
"124": float64,
"125": float64,
"126": float64,
"127": float64,
"128": float64,
"129": float64,
"130": float64,
"131": float64,
"132": float64,
"133": float64,
"134": float64,
"135": float64,
"136": float64,
"137": float64,
"138": float64,
"139": float64,
"140": float64,
"141": float64,
"142": float64,
"143": float64,
"144": float64,
"145": float64
],
particles: var * Particle[
vector: Momentum4D[
px: float64,
py: float64,
pz: float64,
e: float64
],
id: float64,
status: float64,
mother1: float64,
mother2: float64,
color1: float64,
color2: float64,
m: float64,
lifetime: float64,
spin: float64
]
]print(f"Number of events: {pylhe.read_num_events(lhe_file)}")
Number of events: 10000
hist1 = hist.Hist.new.Reg(100, 50, 150).Int64()
hist1.fill((arr.particles.vector[:, -1] + arr.particles.vector[:, -2]).mass)
Regular(100, 50, 150, label='Axis 0')
Int64() Σ=7860.0 (10000.0 with flow)
Int64() Σ=7860.0 (10000.0 with flow)
artists = hist1.plot1d()
ax = artists[0].stairs.axes
ax.set_yscale("log")
ax.set_xlabel("Mass [GeV]")
ax.set_ylabel("Count");