deep_copy
#
Header: <pressio/ops.hpp>
API#
namespace pressio { namespace ops{
template<typename T1, typename T2>
void deep_copy(T2 & dest, const T1 & src);
template<typename T>
void deep_copy(T & dest, const T & src);
}} // end namespace pressio::ops
Description#
Copies all elements from
src
intodst
, so thatdst
is fully independent ofsrc
.T1
andT2
must have the same rank, and must be:Two Eigen-based containers (either a native Eigen container or a Pressio expression based on an Eigen container)
Two Kokkos-based containers (either a native Kokkos view or a Pressio expression based on a Kokkos container)
T
must be:a Tpetra vector or multi-vector
a Tpetra block vector or multi-vector
Notes#
See the ops homepage for a table of booleans to use when checking that
T
,T1
, andT2
have the correct types.