zeros

zeros#

Generate an operator of zeros

zeros() has both a shapeless and a shaped version. The shapeless version is preferred in contexts where the shape can be deduced by the expression, thus simplifying the code. If the shape cannot be deducded, the explicit shape version is used to specify the shape directly.

template<typename T = int>
inline auto matx::zeros()#

Return zeros for all elements

zeros is used as an operator that always returns a 0 type for all elements. It can be used in place of memset to set all values to 0. This version of zeros() is shapeless and can be used in contexts where the shape can be deduced.

Template Parameters:

T – Data type

template<typename T = int, typename ShapeType, std::enable_if_t<!std::is_array_v<typename remove_cvref<ShapeType>::type>, bool> = true>
inline auto matx::zeros(ShapeType &&s)#

Return zero for all elements

Zeros is used as an operator that always returns a 0 type for all elements. It can be used in place of memset to zero a block of memory.

Template Parameters:

T – Data type

Parameters:

s – Shape of tensor

template<typename T = int, int RANK>
inline auto matx::zeros(const index_t (&s)[RANK])#

Return zero for all elements

Zeros is used as an operator that always returns a 0 type for all elements. It can be used in place of memset to zero a block of memory.

Template Parameters:

T – Data type

Parameters:

s – Shape of tensor

Examples#

index_t count = 100;

cuda::std::array<index_t, 1> s({count});
auto t1 = make_tensor<TestType>(s);

(t1 = zeros()).run(exec);