Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ gsl_直方图:值等于两个箱子之间的边,该值将分配给哪个箱子?_C++_C_Gsl - Fatal编程技术网

C++ gsl_直方图:值等于两个箱子之间的边,该值将分配给哪个箱子?

C++ gsl_直方图:值等于两个箱子之间的边,该值将分配给哪个箱子?,c++,c,gsl,C++,C,Gsl,gsl_柱状图的哪个箱子的值恰好位于两个箱子之间的边缘? 例如,当我调用gsl_直方图_增量h,x时,x正好为0,而箱边为-0.2,0,0.2,0.4等。我会得到正范围0,0.2或负范围-0.2,0的增量吗 编辑:是的,我的范围是统一的。如果您的仓位分布是线性的,如您的示例所示,则这是从gsl-1.15/histogram/find.c执行的代码: /* optimize for linear case */ #ifdef LINEAR_OPT { double u = (x

gsl_柱状图的哪个箱子的值恰好位于两个箱子之间的边缘? 例如,当我调用gsl_直方图_增量h,x时,x正好为0,而箱边为-0.2,0,0.2,0.4等。我会得到正范围0,0.2或负范围-0.2,0的增量吗


编辑:是的,我的范围是统一的。

如果您的仓位分布是线性的,如您的示例所示,则这是从gsl-1.15/histogram/find.c执行的代码:

  /* optimize for linear case */

#ifdef LINEAR_OPT
  {
    double u =  (x - range[0]) / (range[n] - range[0]);
    i_linear = (size_t) (u * n);
  }

  if (x >= range[i_linear] && x < range[i_linear + 1])
    {
      *i = i_linear;
      return 0;
    }
#endif
注>=的用法意味着落在料仓边缘的值将包含在两个料仓的“上部”料仓中,与线性情况相同


可以通过运行示例并观察值添加到哪个bin来进行双重检查

如果您的bin分布与示例中一样呈线性,则这是从gsl-1.15/histogram/find.c执行的代码:

  /* optimize for linear case */

#ifdef LINEAR_OPT
  {
    double u =  (x - range[0]) / (range[n] - range[0]);
    i_linear = (size_t) (u * n);
  }

  if (x >= range[i_linear] && x < range[i_linear + 1])
    {
      *i = i_linear;
      return 0;
    }
#endif
注>=的用法意味着落在料仓边缘的值将包含在两个料仓的“上部”料仓中,与线性情况相同


可能通过运行示例并观察值添加到哪个bin来进行双重检查。增加条件Lgsl\u直方图。增加条件L注意0.2不能精确表示。注意0.2不能精确表示。+1用于查找实际源,哪个比谷歌搜索更权威:+1用于查找实际来源,哪个比谷歌搜索更权威: