#pragma once #include "core/omp_config.h" #include "utils/matrix.h" namespace utils{ template void inplace_veccast(const utils::Vector& a, utils::Vector& b) { if (a.size() != b.size()){ throw std::runtime_error("inplace_veccast: dimension mismatch"); } uint64_t n = a.size(); for (uint64_t i = 0; i < n; ++i){ b[i] = static_cast(a[i]); } } template utils::Vector veccast(const utils::Vector& a) { utils::Vector b(a.size(), To{0}); inplace_veccast(a,b); return b; } } // end namespace utils