8 #ifndef SIG_UTIL_CANBERRA_DISTANCE_HPP
9 #define SIG_UTIL_CANBERRA_DISTANCE_HPP
11 #include "../functional/high_order.hpp"
20 template <
class C1,
class C2>
26 auto tmp =
sig::zipWith([](T val1, T val2){
return static_cast<T
>(std::abs(val1 - val2)) / (std::abs(val1) + std::abs(val2)); }, vec1, vec2);
const CanberraDistance canberra_distance
キャンベラ距離を求める関数(関数オブジェクト)
auto end(C &&c) -> std::move_iterator< typename RC::iterator >
bool is_comparable(C1 const &v1, C2 const &v2, impl::NumericVectorTag)
2つのベクトルが比較可能か確認
auto zipWith(F &&func, C1 &&list1, C2 &&list2)
2引数高階関数
double operator()(C1 const &vec1, C2 const &vec2) const
auto begin(C &&c) -> std::move_iterator< typename RC::iterator >