Commit 46052334 authored by Thibault Hallouin's avatar Thibault Hallouin
Browse files

enforce container ranks for evald and evalp

1 merge request!3release v0.1.0
Pipeline #42705 passed with stage
in 2 minutes and 13 seconds
Showing with 8 additions and 2 deletions
+8 -2
......@@ -3,6 +3,7 @@
#include <unordered_map>
#include <vector>
#include <type_traits>
#include <xtensor/xexpression.hpp>
#include <xtensor/xtensor.hpp>
......@@ -144,7 +145,9 @@ namespace evalhyd
/// evalhyd::evald(obs, prd, {"NSE"}, "none", 1, -9, msk);
///
/// \endrst
template <class D2, class B2>
template <class D2, class B2,
std::enable_if_t<xt::has_rank_t<D2, 2>::value, int> = 0,
std::enable_if_t<xt::has_rank_t<B2, 2>::value, int> = 0>
std::vector<xt::xarray<double>> evald(
const xt::xexpression<D2>& q_obs,
const xt::xexpression<D2>& q_prd,
......
......@@ -122,7 +122,10 @@ namespace evalhyd
/// evalhyd::evalp(obs, prd, {"CRPS"});
///
/// \endrst
template <class D2, class D4, class B4>
template <class D2, class D4, class B4,
std::enable_if_t<xt::has_rank_t<D2, 2>::value, int> = 0,
std::enable_if_t<xt::has_rank_t<D4, 4>::value, int> = 0,
std::enable_if_t<xt::has_rank_t<B4, 4>::value, int> = 0>
std::vector<xt::xarray<double>> evalp(
const xt::xexpression<D2>& q_obs,
const xt::xexpression<D4>& q_prd,
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment