23 # include <vcl_msvc_warnings.h> 26 #include "vnl/vnl_export.h" 31 #define type_macro(T) \ 32 inline bool isnan(std::complex<T >const& z) { return isnan(std::real(z)) || isnan(std::imag(z)); } \ 33 inline bool isfinite(std::complex<T >const& z) { return isfinite(std::real(z)) && isfinite(std::imag(z)); } \ 34 inline T abs(std::complex<T > const& z) { return std::abs(z); } \ 35 inline std::complex<T > sqr(std::complex<T > const& z) { return z*z; } \ 36 inline T squared_magnitude(std::complex<T > const& z) { return std::norm(z); } 44 #endif // vnl_complex_h_
Namespace with standard math functions.
real numerical constants.