Template Function sequant::detail::broadcast_copy

Function Documentation

template<typename T>
void sequant::detail::broadcast_copy(T *out, container::svector<std::size_t> const &extents, container::svector<std::size_t> const &out_strides, T const *in, container::svector<std::size_t> const &in_strides)

The per-element kernel of Result::broadcast: copy a strided operand into a strided result of extents, where a zero operand stride repeats the operand along that mode.

out[sum_p r_p out_strides[p]] = in[sum_p r_p in_strides[p]] for every multi-index r within extents.