问题标签 [pyroot]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 在 PyRoot 中声明 TTree 分支
我正在尝试使用 python 简单地定义一个 Root TTree 并给它一个 Tbranch。听起来很合理,对吧?我试过了:
这会因错误而崩溃:
我怀疑 AddressOf() 的参数可能需要像 Int_t 这样的 Root 类型,但我不认为 python 数据类型需要明确 - 而且我不知道如何强制数据类型int 为 Int_t。最后,如果您执行相同的操作,只是将 'int' 替换为 'TString' 并将 '/I' 替换为 '/S',则不会崩溃。任何建议表示赞赏。
python - 从 rootpy 访问数学函数
我目前正在尝试从 rootpy 访问数学函数,例如 DeltaR,但我不确定这是如何完成的。我在文档或任何示例中都没有看到任何内容。C++ 等价物类似于:
double dR = ROOT::Math::VectorUtil::DeltaR((jets)[i],(partons)[i]);
但是我找不到可以工作的 rootpy 甚至 pyroot 等效项。如果我尝试使用 pyroot
我得到错误:
AttributeError: type object 'ROOT::Math' has no attribute 'VectorUtil'
当它很清楚应该时,除非我不正确理解“属性”的含义。无论如何,我不想在这里问 pyroot 问题 :) 我只是把它归结为 pyroot 处理此类事情的方式的一个怪癖,这就是为什么我想我会尝试 rootpy。但是,我不确定这是否可能。
干杯,约瑟夫
python - 在 pycharm 中使用 pyROOT
我想在 pycharm IDE 下的软件中使用 pyROOT 模块。我的问题是 IDE 无法识别任何根模块。你能告诉我我应该怎么做才能解决这个问题吗?
python - pyroot Ntuple 处理程序
我想创建类来处理 TTree:
但是调用函数 getEntry i 发生错误:
如何强制 python 记住 NtupleHandler.tree 的类型?
python - Python C API:省略变量赋值导致意外行为
在将 python 与 pyroot(一个名为ROOT的 CERN 数据分析包的 python 接口)一起使用时,我遇到了以下奇怪的行为:
输出None
,而看似语义等价的代码
输出预期的<ROOT.THashList object ("THashList") at 0x13f0fa0>
.
虽然这不是我在使用 ROOT 时遇到的第一个错误,但这次我很困惑 python 允许这个错误发生。
我认为不知何故,TFile 对象的引用计数在第一个示例中出错了,并且在实际调用 GetListOfKeys 之前它被删除了。(设置ROOT.TFile.__del__
为一些打印命令后,确实会发生这种情况。)
我看到它的方式,在 ROOT.TFile(fname) 被执行之后,但在 GetListOfKeys() 被调用之前,指向 TFile 对象的指针在堆栈上。因此,引用计数不应为零,并且在 GetListOfKeys() 返回之前不应调用析构函数。
任何人都可以解释为什么会这样吗?
在相关的说明中,有没有办法del
仅仅因为引用计数变为零就禁止 python 隐式地访问我的对象?我尝试了 gc.disable(),并没有改变结果。有没有比将对象附加到一些全局定义的只写列表更优雅的解决方案?
python - 如何腌制从 TLorentzVector 继承的类?
这里使用 PyROOT (ROOT) 和酸洗。下面是一个非常简单的例子。我尝试使用如何腌制从 A 继承的 B 类(具有许多变量)的对象,该对象定义了 __setstate__ 和 __getstate__作为示例。
这输出
知道如何正确腌制我的对象吗?特别是,我不介意不从 TLorentzVector 继承并自己重载我正在使用的一些属性。但是我仍然不清楚为什么我根本不能让它工作,因为它不保留对象属性。
python - 如何在 PyROOT 中使用 TTreeReader
我正在尝试使用 TTreeReader 方法启动并运行以在 PyROOT 中读取 TTree。作为指导,我正在使用 ROOT 6 Analysis Workshop ( http://root.cern.ch/drupal/content/7-using-ttreereader ) 及其相关的 ROOT 文件 ( http://root.cern.ch/root /files/tutorials/mockupx.root)。
在这之后,我有点失落。我尝试使用 TTreeReader 对象访问变量信息,但它不太有效:
我在哪里错了?
python - 如何读取 pyroot 中的分支并制作绘图?
我对 Python 和 pyroot 完全陌生,我想在 pyroot 中编写一个小脚本作为练习。我的根文件有一个子目录,您可以在其中找到一些树,其中一些包含一些分支。我想要做的是绘制变量图。假设分支是 tree1 中的 x、y、z,并且想要绘制 x 与 z 的图。example.root-->sub_dir-->tree3,tree2,tree1-->x,y,z 等
这是我到目前为止但不起作用的内容:
希望我能够澄清。
python - 导入 (py)ROOT 时,Py.Test 中止
我有一个问题单元测试 Python 代码,它使用 (py)ROOT 包。import ROOT
当其中一个脚本中有一行时,它只是中止收集测试。
有人知道发生了什么吗?
python - 启用 PyROOT Ubuntu 14.04
我下载了 madpgraph5,但是当我运行它时,出现以下错误:
当我尝试locate ROOT.py
andlocate ROOT.pyc
时,我什么也没得到。
我安装了root 5.34,它运行顺利。我还安装了python 2.7.6。
我下载了 rootpy,但不知道如何包含和启用PyROOT。我进行了搜索,我想我必须编辑一些与bashrc中的路径有关的东西,但在我这样做之前,我需要确定我在做什么。
任何人都可以帮忙吗?