2009-02-09 69 views
3

我是一位高能粒子物理系的研究生。由于对C/C++毫无根据的反感和对python的热爱,我为了我的数据分析到目前为止只使用python(只是简单的东西),并且试图针对ROOT库支持python脚本,特别是使用MINUIT for一些参数最小化。Python,ROOT和MINUIT集成?

除了询问是否有人有任何安装和使用这些技巧的提示,我想知道是否值得它甚至尝试它,或只是陷入使用C/C++的“规范”,或者如果事情像pyminuit可用。或者您认为我可以将整个C/C++脚本封装到Python代码中,以利用我现有的自写分析方法(至今还没有封装体验)。抱歉,模糊不清;我正在走向一个伟大的未知领域,这远远超过我目前的经验。

回答

5

您是否知道pyROOT,对不对?

从来没有尝试过,所以我不知道它会如何堆积起来以满足您的需求。

+1

都给花了将近一年,但我最终得到pyroot工作,并发现它是最好的解决方案。 – physicsmichael 2010-06-07 19:47:00

3

这可能值得检查rootpy。也许还没有完全成熟,但这是朝着正确方向迈出的一步。

是,rootpy是建立在PyROOT顶部,但也有一些额外的功能:

  • 它强调一个Python的接口,并隐藏了一些根丑陋的;
  • 它集成了matlibplot,它具有更大的开发社区,并且在SO上有更大的存在,更不用说更好看的地块;
  • 它允许转换为HDF5文件,这将允许您与无法花时间安装单片ROOT软件包的人共享数据。

不幸的是,只要你与建立在CINT顶事的工作(这是PyROOT),你仍然必须处理ugliest parts of ROOT之一。


另一种选择,如果你生病与PyROOT摸索的,就是用的packages that converts ROOT directly to HDF5

+0

谢谢@Shep。由于我更新了ROOT和Python(现在使用virtualenv),所以我破坏了PyROOT。当我修复它时,rootpy将首先在我要测试的事物清单上。 – physicsmichael 2012-04-16 17:20:09