问题标签 [root-framework]

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.

0 投票
3 回答
1851 浏览

python - Python、ROOT 和 MINIT 集成?

我是高能粒子物理系的一名谦虚的研究生。由于对 C/C++ 毫无根据的厌恶和对 python 的热爱,到目前为止,我已经求助于 python 进行数据分析(只是简单的东西),并且即将尝试支持针对 ROOT 库的 python 脚本,特别是使用 MINUIT 进行一些参数最小化。

除了询问是否有人对这些安装和使用有任何提示之外,我想知道是否值得尝试一下,或者只是进入使用 C/C++ 的“规范”,或者像 pyminuit 这样的东西是否可用. 或者你认为我可以将整个 C/C++ 脚本包装成 python 代码,以利用我现有的自写分析方法(我还没有包装经验)。抱歉含糊不清;我正走向一个远远超过我目前经历的未知数。

0 投票
3 回答
297 浏览

emacs - 在 emacs 中为文件系统以外的东西实现一个 dired 接口?

高能物理中常用的ROOT数据分析框架使用二进制文件格式,其内部结构类似于真实的文件系统(即文件夹和文件)。程序的 ls() 方法输出如下所示:

其中“TH1D”和“TH2D”等只是对象类型。在 emacs 中类似 dired 的界面中浏览文件真是太好了。我当然没有精力/时间从头开始为此编写一个 dired 接口(即使在 dired.el 源的帮助下)。我的问题是:如果可能的话,我怎样才能通过重新实现一些函数来为上面的输出制作一个类似于 dired 的界面来将其带入 dired 界面?

我当然不期望这里有完整的解决方案,而是指向示例、教程和其他有用信息的指针。

0 投票
9 回答
543 浏览

java - 使用 Java 中的大量 C++ 代码的快速(以开发人员的方式)方式

背景:我们正在设计一个物理应用程序,它将进行大量数据分析,但我们的重点是集成物理电子设备。

基本上我希望能够从 Java 调用用 C++ 库编写的root (它是 CERN 用 C++ 编写的大数据分析库)库。基本上能够从 Java 中使用 ROOT 类(并且在不浪费太多时间编写 JNI 包装器的情况下这样做)对我们来说是一个很好的展示(如果这很难,我们很可能会使用 Qt)。

我可以想到以下方法

  • JNI - 正如我所说 - 我们不想为每个类编写包装器。. .
  • JNA - JNA 不提供 C++ 映射,而仅提供 C.
  • SWIG - 我没用过,但听说很难用。

其他可能相关的事情:我们可以访问根源代码,但我们不想更改它。我们希望结果是可移植的。我们想坚持免费图书馆。正如我所说 - 我们可以从一开始就使用大部分 ROOT 代码,而无需大惊小怪。

0 投票
1 回答
102 浏览

mysql - 从 PHP 获取内容:POST 和查询的问题

为我有史以来最长的问题道歉。我正在尝试与 ROOT(用于高能物理分析的 C++ 中的 CERN 框架)中的 mysql 数据库的 php 前端接口。首先,我试图让这个 php 界面很好地使用wgetcurl首先是因为我更熟悉它们。以下命令有效:

结果是:

那挺好的。如果我省略了,--post-data那么我会得到结果:

我可以访问 php 脚本(只读),但错误本身并不太重要。重要的是使用 ROOT,我使用了一个名为 as socket.SendRaw(message, message.Length())(socket is a ) 的函数,如果我的“消息”是,这给了我与没有发布数据开关TSocket相同的“错误”wget

这可能是徒劳的,但是有人知道我应该格式化包含与--post-data开关等效的内容的“消息”的方式。或者,是否有一种标准方法可以在一行中格式化 POST 请求(我见过多行的东西。对吗?)对不起,我一无所知!

PS。mysql 查询是show databases,但空格已被替换为_spazio_, Italian for space。db 和 php 接口的作者需要它(以及符号的各种替换),但是以前有人见过吗?试图排除故障是可怕的!

0 投票
4 回答
2948 浏览

c++ - 在循环中将字符串和运行索引连接到字符串中

要使用给定的图形包,我需要定义、预订和填充直方图。我怎样才能得到直方图的名称,它是一个字符串,在 3 for 循环中与 2 个整数作为字符串 ( hts_i_j ) 连接。这必须在 C++ 中完成 请参见下面的示例

界定

预订

填写

相反,我想定义、预订和填写 3 个 for 循环。例如。

如何在定义、预订和填充 3 for 循环时以简单的方式将字符串 hts 与索引 (i,j) 连接起来

0 投票
1 回答
581 浏览

c++ - 任何有将 CINT 嵌入 C++ 应用程序的经验的人?

我说的是ROOT 的 CINT

我一直在用 C++ 开发一个游戏,它使用 Python 对 AI 进行编程。尽管我很喜欢 Python,以及它让 AI 编程变得多么容易(生成器和 FP 真的很性感),但它让非平凡的算法运行得如此缓慢。

然后我记得我在某处读过有关 CINT 以及它是如何嵌入的。现在我需要你的帮助来决定是否将 CINT 实现为备用脚本系统。在 python 中,我使用 Boost::Python,一旦你习惯了它,暴露类和对象几乎是无痛的。CINT有这么容易吗?

0 投票
4 回答
4126 浏览

c++ - 使用 IDE 设置 CERN ROOT

我有兴趣为使用 C++ 和ROOT的项目设置一个 IDE(最好是 Eclipse 或 Netbeans),并让它能够为我编译。这可能吗?

源代码可用于 ROOT,因此应该有一些方法可以将这些东西连接在一起......

0 投票
1 回答
414 浏览

pointers - 将 void * 指针绑定到基本类型的 C++/Cli 指针

我使用 C++ cli 对从非托管世界到托管世界的一些科学库 (http://root.cern.ch) 做了一些薄包装。

读取特殊文件格式(这是主要目标)是通过以下方式实现的:
1)一生调用一次SetBranchAddress(const char name, void* outputVariable)让它知道你的变量的地址
2)比你 N 次调用GetEntry(ulong numberOfRow)用适当的值填充这个 void* outputVariable

我放了这个用法示例:

因此,在 C++/CLI 代码中,问题在于将托管基本类型绑定到此 void * 指针;

我尝试了 3 种方法:

所有 3 个变体都编译时没有错误,没有例外......但是用一些垃圾值填充它的 (void *) 值,如 5,12331E-305。在非托管代码中一切正常。

这种 void* 到 C++/CLI 基本类型绑定可能会出现什么错误?

0 投票
3 回答
5949 浏览

c++ - 使用 Cern ROOT 绘图

我正在尝试创建一个图表并将其保存为图像。我需要使用ROOT。我创建了图表

但现在我被困在如何将其保存为 png (或其他图像格式)。如果这有所作为,我正在使用 linux 机器。另外,如果有人知道描述将图形写入图像文件的方法的文档的链接,我可以从那里自己弄清楚,但到目前为止我在文档中没有成功找到它。

0 投票
3 回答
3194 浏览

c++ - CERN ROOT 从 TNtuple 中提取数据

我正在使用 CERN 的 ROOT 框架(必需),我想从 TNtuple 中获取数据并绘制图表。我可以在创建 TNtuple 时绘制数据,也可以在将其写入 .root 文件后绘制数据。一些支持文档建议我创建一个 TTree,但这似乎有点矫枉过正/迂回,因为我不会将它用于其他任何事情(并且 TNtuple 满足我的所有其他要求)。有没有人对如何从 TNtuple 中提取数据并绘制图表有更好的建议?