【问题标题】:Name of a transversal reduction operation?横向归约操作的名称?
【发布时间】:2012-12-14 07:22:14
【问题描述】:

我目前正在为矢量化操作编写一个高度模板化的 C++ 帮助类,我需要一个特定操作的名称。

我已经有 2 个函数,它们的名字非常常见,取自矢量语言:

  • apply() 将函数应用于向量的每个元素
  • reduce() 对向量应用归约运算并返回一个标量

现在我想实现另一个函数,它是这两者的混合:它需要几个向量作为输入,并对每一行应用归约操作,然后返回一个向量。

为了说明这一点,我们有:

  • apply(func, vec) -> 返回{func(vec[0]), func(vec[1]), ..., func(vec[n])}
  • reduce(func, vec) -> 返回func(vec[0], vec[1], ..., vec[n])

和:

  • something(func, vec1, vec2, ..., vecn) -> 返回{func(vec0[0], vec1[0], ..., vecn[0]), func(vec0[1], vec1[1], ..., vecn[1]), ..., func(vec0[n], vec1[n], ..., vecn[n])}

这个函数的通用名称是什么(一个简单的动词,如 apply 或 reduce)(如果存在这样的函数,则与其他矢量语言兼容)?

【问题讨论】:

标签: c++ function naming


【解决方案1】:

也许是我在 Haskell 中看到的 zip_with ?

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-23
  • 1970-01-01
  • 1970-01-01
  • 2011-05-29
  • 2010-10-31
  • 1970-01-01
相关资源
最近更新 更多