diff options
author | Benoit Steiner <benoit.steiner.goog@gmail.com> | 2016-05-05 08:37:47 -0700 |
---|---|---|
committer | Benoit Steiner <benoit.steiner.goog@gmail.com> | 2016-05-05 08:37:47 -0700 |
commit | 06d774bf5865cbecfde868b2554c177d95988552 (patch) | |
tree | a44f07223de04796cfa47dd5b3b4b2e98737c5f0 /unsupported/test/cxx11_tensor_contraction.cpp | |
parent | b300a84989cd13a779ead980c3197c2599b15f14 (diff) |
Updated the contraction code to ensure that full contraction return a tensor of rank 0
Diffstat (limited to 'unsupported/test/cxx11_tensor_contraction.cpp')
-rw-r--r-- | unsupported/test/cxx11_tensor_contraction.cpp | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/unsupported/test/cxx11_tensor_contraction.cpp b/unsupported/test/cxx11_tensor_contraction.cpp index 0e16308a2..73623b2ed 100644 --- a/unsupported/test/cxx11_tensor_contraction.cpp +++ b/unsupported/test/cxx11_tensor_contraction.cpp @@ -87,19 +87,14 @@ static void test_scalar() vec1.setRandom(); vec2.setRandom(); - Tensor<float, 1, DataLayout> scalar(1); - scalar.setZero(); Eigen::array<DimPair, 1> dims = {{DimPair(0, 0)}}; - typedef TensorEvaluator<decltype(vec1.contract(vec2, dims)), DefaultDevice> Evaluator; - Evaluator eval(vec1.contract(vec2, dims), DefaultDevice()); - eval.evalTo(scalar.data()); - EIGEN_STATIC_ASSERT(Evaluator::NumDims==1ul, YOU_MADE_A_PROGRAMMING_MISTAKE); + Tensor<float, 0, DataLayout> scalar = vec1.contract(vec2, dims); float expected = 0.0f; for (int i = 0; i < 6; ++i) { expected += vec1(i) * vec2(i); } - VERIFY_IS_APPROX(scalar(0), expected); + VERIFY_IS_APPROX(scalar(), expected); } template<int DataLayout> |