问题标签 [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.
c++ - 将 900 MB .csv 转换为 ROOT (CERN) TTree
我是编程和 ROOT (CERN) 的新手,所以请放轻松。简单地说,我想将一个 ~900 MB(11M 行 x 10 列)的 .csv 文件转换成一个组织良好的 .root TTree。有人可以提供最好的方法吗?
这是带有标题的示例数据行(它是 2010 年美国人口普查区人口和人口密度数据):
"人口普查县代码","人口普查区域代码","人口普查街区代码","县/州","街区质心纬度 (度)","街区质心 W 经度 (度)","街区土地面积 (sq mi )","街区土地面积(平方公里)","街区人口","街区人口密度(人/平方公里)"
1001,201,1000,Autauga AL,32.469683,-86.480959,0.186343,0.482626154,61,126.3918241
我已经粘贴了我到目前为止所写的内容。
运行时我特别无法弄清楚这个错误:“C:41:1:错误:未知类型名称'UScsvToRoot'”。
这可能真的很愚蠢,但是您如何在 ROOT 中读取字符串(用于读取县/州名称)?比如数据类型是什么?我只需要使用char吗?我在发呆。
c++ - 无法读取从文件生成的向量的正确值
我正在尝试逐行读取文本文件,然后将每一列作为向量读取,但是当我尝试计算第一列时,它显示为零,即未正确读取文件。
c++ - CERN ROOT:是否可以绘制成对的 xy 数据点?
我想使用 CERN ROOT 来绘制一对 xy 数据点的二维图,也可能使用 y-errorbars。但是我只知道如何绘制直方图。
CERN ROOT 可以做到这一点吗?如果有怎么办?
我也意识到可能有更好的库可以做到这一点。我一直在使用 GNUPlot,但不幸的是,我似乎无法将它与我的 C++ 代码很好地集成,因为我找不到涵盖所有功能并允许我以双向方式发送数据的 C/C++ GNUPlot 接口 -即:往返 GNUPlot。
如果您有更好的替代建议,那将是最受欢迎的。
c++ - 如何从用户输入修改 C++ 代码
我目前正在编写一个位于 C++ 解释器之上的程序。用户在运行时输入 C++ 命令,然后将其传递给解释器。对于某些模式,我想用修改后的形式替换给出的命令,以便我可以提供额外的功能。
我想替换任何形式的东西
和
我的第一个想法是正则表达式,但这很容易出错,因为任何A
, B1
, 或B2
可能是任意 C++ 表达式。由于这些表达式本身可能包含带引号的字符串或括号,因此很难用正则表达式匹配所有情况。此外,此表达式可能有多种嵌套形式
我的下一个想法是将 clang 作为子进程调用,使用“-dump-ast”来获取抽象语法树,对其进行修改,然后将其重建为要传递给 C++ 解释器的命令。但是,这需要跟踪任何环境更改,例如包含文件和前向声明,以便为 clang 提供足够的信息来解析表达式。由于解释器不公开此信息,因此这似乎也不可行。
第三个想法是使用 C++ 解释器自己的内部解析来转换为抽象语法树,然后从那里构建。然而,这个解释器并没有以我能找到的任何方式暴露 ast。
是否有任何关于如何进行的建议,无论是沿着规定的路线之一,还是完全沿着不同的路线?
c++ - 对 `TRandom3::Rndm(int)` 和 `_gfortran_...` 符号的未定义引用
我正在尝试编译一个示例程序以了解 garfield++ 的工作原理(我想用它来模拟漂移管)。我刚刚安装了 garfield++ 并在此页面底部下载了示例程序http://garfieldpp.web.cern.ch/garfieldpp/examples/tube/然后我完成了make
命令但我收到了以下错误:
riferimento non definito
意大利语在哪里undefined reference to
。我无法理解这个问题,因为在 Makefile 中有一个指向 gfortran 的链接。如果我做:
python - 优化函数评估缓存部分结果
假设我有一个带有许多输入参数的复杂数学函数P = [p1, ..., pn]
。假设我可以将函数分解为块,例如:
有可能
假设我必须评估f
的许多值P
,例如我想找到 的最小值f
。假设我已经计算f(P)
并且我需要计算f(P')
where P'
is equal to P
except p1
。在这种情况下,我不必重新计算f2, f3, f4
,而只需f1
.
是否有一个库可以帮助我实现这种缓存系统?我知道RooFit,但它面向统计模型,由块组成。我正在寻找更一般的东西。首选 scipy / scikits 和类似的,但 c++ 库也可以。这种技术有名字吗?
root-framework - TMinuit 的问题
我正在尝试最小化 ROOT 中的卡方函数,这是 FCN 代码:
运行的结果是参数都没有改变,就像我的函数不依赖任何一个一样。您是否看到 FCN 逻辑有问题,或者我必须在其他地方寻找错误?
谢谢,路易吉
c++ - ROOT(cern) FILE reading+TGraph 工作正常,但 TGraphErrors 不想要
下一个问题是:我已将数据从文件读取到数组中。绘图工作没有任何问题。但是 TGraphErrors 不想做任何事情。根 说
错误:无法在当前范围 plot2 中调用 TGraphErrors::SetPoint(i,Data[0][i],Data[1][i],Data[2][i],Data[2][i])。 C:85: 可能的候选人是......(在 TGraphErrors 中)(在 TGraph 中)/usr/local/Cellar/root/5.34.26/lib/root/libHist.so -1:-1 0 public: virtual void TGraph: :SetPoint(Int_t i,Double_t x,Double_t y); * 解释器错误恢复 * "
代码如下:
我是root用户的新手。可能我做了一些愚蠢的事情并且没有注意到它。那么我做错了什么?提前谢谢你
奥尔卡
python - ROOTpy 绘图示例不起作用
我正在尝试运行有关如何通过rootpy 文档中的 matplotlib 绘制根直方图的示例。
这会导致一个相当模糊的错误:
我在带有 ROOT6 的 OS X 10.10 上运行。对我来说似乎有点奇怪的一件事是/usr/local/Cellar/
堆栈跟踪的最后一行中的引用,而前几行引用的是/usr/local/lib/
.
但是,我在运行 pyROOT 时没有遇到任何其他问题,因此对我来说这看起来不像是错误库的问题。
c++ - 读取根cern图形的数据文件
我创建了一个脚本来从文本文件中获取数据并在 Root (CERN) 中绘制它,但大约一年没有使用 root,更新到当前版本的 Root,现在它收到错误“错误:函数 readprn()未在当前范围内定义 :0: * 解释器错误已恢复 * " 当我尝试将它与 Root 一起使用时。
它运行一个我保存为 txt 文件的 excel 数据文件。第一列是后续 768 列中每个 y 值对应的 x 值。最后,它绘制图形并拟合并循环几张图。
我主要想知道新版本中是否有任何内容会导致 root 无法读取它。