Files
Flux/include/numerics/min.h
T

40 lines
900 B
C++

#pragma once
#include "core/omp_config.h"
#include "detail/min_serial.h"
namespace numerics{
// ---------------- (Scalar, Scalar) -> Scalar ----------------
template <typename T>
inline T min(const T a, const T b) {
return detail::min_serial(a, b);
}
// ---------------- Vector -> Scalar ----------------
template <typename T>
inline T min(const utils::Vector<T>& v) {
return detail::min_serial(v);
}
// ---------------- Matrix -> Scalar ----------------
template <typename T>
inline T min(const utils::Matrix<T>& A) {
return detail::min_serial(A);
}
// ---------------- Matrix -> Vector ----------------
template <typename T>
inline utils::Vector<T> min_rowwise(const utils::Matrix<T>& A) {
return detail::min_rowwise_serial(A);
}
template <typename T>
inline utils::Vector<T> min_colwise(const utils::Matrix<T>& A) {
return detail::min_colwise_serial(A);
}
}