如何有效地检索连根拔起的痕迹?

2024-06-01 06:35:44 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我得到了一个包含两个TTree对象的TFile,其中包含track/tower pT,eta和phi,除以事件。我的目标是提取事件中的每个轨道和塔,然后使用FastJet包对整个事件进行聚类。现在,如果我使用纯根目录执行此任务,我的分析最多需要30分钟(使用~100gbtfile)。在此期间,根除将只处理10000个事件在这个时间限制。。。你知道吗

很明显,我做了一些错误的事情,所以我想问,什么是访问逐轨信息以获得与ROOT相同的速度的正确方法?你知道吗


Tags: 对象pt目标时间事件聚类track根目录
1条回答
网友
1楼 · 发布于 2024-06-01 06:35:44

upoot通过对每个Python函数调用的许多事件进行操作来获得它的效率。我上次检查的FastJet接口一次只接受一个粒子:每个事件中的每个粒子都有一个Python函数调用。即使没有分析,我也会怀疑这是瓶颈。你知道吗

另一个名为pyjet的库通过一次为FastJet提供一个完整的事件来改进这个库。一个事件中的所有粒子都被放入一个大的、连续的NumPy数组中。然后,至少每个事件只有一个Python函数调用。你知道吗

要对每个数组执行多个事件,需要锯齿状数组(以指示一个事件在何处停止,下一个事件在何处开始)。有一些计划将笨拙的数组链接到FastJet以提供此功能,但目前,pyjet是您能做的最好的。如果每个事件有很多粒子,比如几百个,这可能没问题。你知道吗

相关问题 更多 >