本文整理汇总了C++中nt2::copysign方法的典型用法代码示例。如果您正苦于以下问题:C++ nt2::copysign方法的具体用法?C++ nt2::copysign怎么用?C++ nt2::copysign使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类nt2
的用法示例。
在下文中一共展示了nt2::copysign方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: NT2_TEST_CASE_TPL
NT2_TEST_CASE_TPL ( copysign_real, NT2_SIMD_REAL_TYPES)
{
using nt2::copysign;
using nt2::tag::copysign_;
typedef typename std::complex<T> cT;
using boost::simd::native;
typedef BOOST_SIMD_DEFAULT_EXTENSION ext_t;
typedef native<cT,ext_t> vcT;
typedef typename nt2::meta::call<copysign_(vcT, vcT)>::type r_t;
// return type conformity test
NT2_TEST_TYPE_IS(r_t, vcT);
// specific values tests
#ifndef BOOST_SIMD_NO_INVALIDS
NT2_TEST_EQUAL(copysign(nt2::Inf<vcT>(), nt2::One<vcT>()), nt2::Inf<r_t>());
NT2_TEST_EQUAL(copysign(nt2::Inf<vcT>(), nt2::Mone<vcT>()), nt2::Minf<r_t>());
NT2_TEST_EQUAL(copysign(nt2::Nan<vcT>(), nt2::One<vcT>()), nt2::Nan<r_t>());
#endif
NT2_TEST_EQUAL(copysign(nt2::One<vcT>(), nt2::Mone<vcT>()), nt2::Mone<r_t>());
NT2_TEST_EQUAL(copysign(nt2::One<vcT>(), nt2::One<vcT>()), nt2::One<r_t>());
NT2_TEST_EQUAL(copysign(nt2::One<vcT>(), nt2::Zero<vcT>()), nt2::Zero<r_t>());
NT2_TEST_EQUAL(copysign(nt2::One<vcT>(), nt2::Mzero<vcT>()), nt2::Zero<r_t>());
NT2_TEST_EQUAL(copysign(nt2::I<vcT>(), nt2::Mone<vcT>()), nt2::Mone<r_t>());
NT2_TEST_ULP_EQUAL(copysign(nt2::Sqrt_2<vcT>(), nt2::splat<vcT>(cT(2, 2))), nt2::splat<vcT>(cT(1, 1)), 0.5);
}
示例2: NT2_TEST_CASE_TPL
NT2_TEST_CASE_TPL ( copysign_real__2_0, NT2_REAL_TYPES)
{
using nt2::copysign;
using nt2::tag::copysign_;
typedef typename nt2::meta::call<copysign_(T,T)>::type r_t;
typedef T wished_r_t;
// return type conformity test
NT2_TEST( (boost::is_same < r_t, wished_r_t >::value) );
std::cout << std::endl;
// specific values tests
NT2_TEST_EQUAL(copysign(nt2::Inf<T>(), nt2::Inf<T>()), nt2::Inf<r_t>());
NT2_TEST_EQUAL(copysign(nt2::Minf<T>(), nt2::Minf<T>()), nt2::Minf<r_t>());
NT2_TEST_EQUAL(copysign(nt2::Mone<T>(), nt2::Mone<T>()), nt2::Mone<r_t>());
NT2_TEST_EQUAL(copysign(nt2::Nan<T>(), nt2::Nan<T>()), nt2::Nan<r_t>());
NT2_TEST_EQUAL(copysign(nt2::One<T>(), nt2::One<T>()), nt2::One<r_t>());
NT2_TEST_EQUAL(copysign(nt2::One<T>(), -nt2::Zero<T>()), -nt2::One<r_t>());
NT2_TEST_EQUAL(copysign(nt2::One<T>(), nt2::Zero<T>()), nt2::One<r_t>());
NT2_TEST_EQUAL(copysign(nt2::Zero<T>(), nt2::Zero<T>()), nt2::Zero<r_t>());
} // end of test for floating_