我正在使用一个内置函数
double TH1::IntegralAndError(int binx1, int binx2, double& err, const char* option = "")
这样
Double_t error;
Double_t integral = Hist->IntegralAndError(10, 70, error, ""); // "" ... or ... "width"
std::cout << "Hist integral = " << integral <<" +- " << error << std::endl;
c ++中的方式。
除了python外,我的代码完全相同。
我正在尝试像这样在python脚本中使用IntegralAndError函数
error=0.
IntError=h16w.IntegralAndError(1,h16w.GetNbinsX(),error,"")
上面写着
TypeError: double TH1::IntegralAndError(int binx1, int binx2, double& err, const char* option = "") =>
could not convert argument 3 (use ROOT.Double for pass-by-ref of doubles)
这似乎是因为我没有在python脚本中使用Double reference初始化变量错误。
如何通过启动该变量来在Python脚本中仍然使用IntegralAndError函数?
谢谢。