51 template<
typename dtype>
60 auto sum = std::accumulate(inArray.
cbegin(), inArray.
cend(), 0.0);
70 auto sum = std::accumulate(inArray.
cbegin(row), inArray.
cend(row), 0.0);
71 returnArray(0, row) =
sum /
static_cast<double>(inArray.
numCols());
82 auto sum =
static_cast<double>(std::accumulate(transposedArray.
cbegin(row), transposedArray.
cend(row), 0.0));
83 returnArray(0, row) =
sum /
static_cast<double>(transposedArray.
numCols());
107 template<
typename dtype>
116 auto sum = std::accumulate(inArray.cbegin(), inArray.cend(), std::complex<double>(0.0));
124 for (
uint32 row = 0; row < inArray.numRows(); ++row)
126 auto sum = std::accumulate(inArray.cbegin(row), inArray.cend(row), std::complex<double>(0.0));
127 returnArray(0, row) =
sum / std::complex<double>(inArray.numCols());
138 auto sum = std::accumulate(transposedArray.
cbegin(row), transposedArray.
cend(row),
139 std::complex<double>(0.0));
140 returnArray(0, row) =
sum / std::complex<double>(transposedArray.
numCols());
#define THROW_INVALID_ARGUMENT_ERROR(msg)
Definition: Error.hpp:36
#define STATIC_ASSERT_ARITHMETIC(dtype)
Definition: StaticAsserts.hpp:37
uint32 numCols() const noexcept
Definition: NdArrayCore.hpp:3418
size_type size() const noexcept
Definition: NdArrayCore.hpp:4296
const_iterator cbegin() const noexcept
Definition: NdArrayCore.hpp:1216
uint32 numRows() const noexcept
Definition: NdArrayCore.hpp:3430
NdArray< dtype > transpose() const
Definition: NdArrayCore.hpp:4629
const_iterator cend() const noexcept
Definition: NdArrayCore.hpp:1524
Definition: Coordinate.hpp:45
Axis
Enum To describe an axis.
Definition: Types.hpp:46
NdArray< dtype > sum(const NdArray< dtype > &inArray, Axis inAxis=Axis::NONE)
Definition: sum.hpp:46
NdArray< double > mean(const NdArray< dtype > &inArray, Axis inAxis=Axis::NONE)
Definition: mean.hpp:52
std::uint32_t uint32
Definition: Types.hpp:40