一个用于读取LHE文件的Python模块。
项目描述
lhereader
一个用于读取LHE文件的Python模块。最初由diptaparna编写,经过我大幅修改。不依赖于ROOT,需要Python版本>= 3.6。
使用示例
import numpy as np
from lhereader import LHEReader
reader = LHEReader('path/to/file.lhe')
# Mediator mass in each event
mmed = []
counter = 0
for iev, event in enumerate(reader):
# Find DM particles
dm = filter(lambda x: abs(x.pdgid)== 52, event.particles)
# Sum over all DM four-momenta in the event
combined_p4 = None
for p4 in map(lambda x: x.p4(), dm):
if combined_p4:
combined_p4 += p4
else:
combined_p4 = p4
mmed.append(combined_p4.mass)
print(f'Mean mediator mass: {np.mean(mmed)}')
print(f'Median mediator mass: {np.median(mmed)}')
权重处理
解析器假设每个权重XML元素都有一个名为 id
的属性,该属性唯一地标识每个事件中的权重。在实践中,每个条目应该大致如下所示
<wgt id='some string'> 123456.7 </wgt>
权重以两种模式之一读取:list
或 dict
,这可以通过将 weight_mode
参数传递给 LHEReader
构造函数来设置。在第一种情况下,权重以出现的顺序作为未标记的列表返回。在第二种情况下,每个事件返回一个字典,其中 id
属性作为键,权重作为值。
可以使用 weight_regex
参数轻松过滤权重。只有匹配此正则表达式的 id
的权重才会返回。
如果找不到 id
属性,则不支持 dict
模式以及过滤。
项目详情
下载文件
下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分发
lhereader-1.0.11.tar.gz (3.7 kB 查看哈希值)
构建版本
lhereader-1.0.11-py3-none-any.whl (15.8 kB 查看哈希值)
关闭
lhereader-1.0.11.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 25e871ffad365a89605721642117c21b47e106bc3b079fb337419b1c668510af |
|
MD5 | 9f579f7bb1834b7d30cb384e3667b56b |
|
BLAKE2b-256 | c9b5bde59547feed5f1241227b0f0ed66e1418bfb8193223abc103bb6e058e19 |
关闭
lhereader-1.0.11-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | fece3c62d2d21c7a1f17c4d1925943d8b418b90cb9f7d3579bfe4ace9d574d78 |
|
MD5 | 636a7b4a6fd0a3506905a1bfa3119137 |
|
BLAKE2b-256 | 3b1087a7238ddf5b5f070cfd72bc187993ce3db3ea3ed6f52386d83e6973c3d0 |