gpt4 book ai didi

c++ - 如何在 C++ 中选择数组中的不同数字?

转载 作者:行者123 更新时间:2023-11-30 04:40:31 25 4
gpt4 key购买 nike

我正在使用 C++ 为某些任务编写 ROOT 脚本。在某些时候,我有一个 double 数组,其中许多非常相似,而一两个不同。我想对除那些酸痛的拇指之外的所有数字进行平均。我应该如何处理它?例如,让我们考虑:

x = [2.3, 2.4, 2.11, 10.5, 1.9, 2.2, 11.2, 2.1]

我想以某种方式对除 10.511.2 之外的所有数字进行平均,这两个数字是不同的。该算法将重复数千次并且 double 组有 2000 个条目,因此需要优化(同时保持可读性)。非常感谢!

查看: http://tinypic.com/r/111p0ya/3脉冲 y 值的“不同”数。

这一点决定了波形的接地值。我正在将最负值与地面进行比较,并希望获得比平均样本中前 N 个点更好的接地方法。

最佳答案

鉴于您正在使用 ROOT,您可能会考虑查看 TSpectrum 类,它支持从未指定数量的峰值下提取背景...

我从来没有在如此多的基线噪音下使用它们,但它们应该很稳健。

顺便说一句:这个数据的来源是什么。峰值看起来像粒子检测器脉冲,但高水平的背景抖动表明您可以通过对 DAQ 硬件进行一些相当小的调整来真正改善事情,这可能比尝试解决一个困难的软件问题要好。

最后,除非您受限于一些非常原始的硬件(在这种情况下,您为什么以及如何运行 ROOT?),如果您只有几千个这样的光谱,您可以负担得起一个非常慢的算法。或者是每个事件 2000 个光谱和高事件率?

关于c++ - 如何在 C++ 中选择数组中的不同数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1210072/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com