]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Remove DEAL_II_CONSTEXPR for linfty and l1 8474/head
authorDaniel Arndt <arndtd@ornl.gov>
Wed, 14 Aug 2019 03:12:13 +0000 (23:12 -0400)
committerDaniel Arndt <arndtd@ornl.gov>
Wed, 14 Aug 2019 23:05:02 +0000 (19:05 -0400)
include/deal.II/base/tensor.h
tests/tensors/constexpr_tensor.cc

index 441411e9c24a4a36f9d94b8a56cee83b617b5956..a44eaca11923c2a59c7cc401be2b23f19d423756 100644 (file)
@@ -2491,8 +2491,8 @@ cofactor(const Tensor<2, dim, Number> &t)
  * @author Wolfgang Bangerth, 2012
  */
 template <int dim, typename Number>
-inline DEAL_II_CONSTEXPR Number
-                         l1_norm(const Tensor<2, dim, Number> &t)
+inline Number
+l1_norm(const Tensor<2, dim, Number> &t)
 {
   Number max = internal::NumberType<Number>::value(0.0);
   for (unsigned int j = 0; j < dim; ++j)
@@ -2517,8 +2517,8 @@ inline DEAL_II_CONSTEXPR Number
  * @author Wolfgang Bangerth, 2012
  */
 template <int dim, typename Number>
-inline DEAL_II_CONSTEXPR Number
-                         linfty_norm(const Tensor<2, dim, Number> &t)
+inline Number
+linfty_norm(const Tensor<2, dim, Number> &t)
 {
   Number max = internal::NumberType<Number>::value(0.0);
   for (unsigned int i = 0; i < dim; ++i)
index fc8c59fdac2c129b613e367fb536d513e1118930..49748c3ae780d042c475e8c481b4592df01b0cec 100644 (file)
@@ -168,17 +168,25 @@ main()
     constexpr double ref_init[3][3] = {{1., 2., 3.}, {0., 1., 2.}, {0., 0., 1}};
     constexpr Tensor<2, 3> ref{ref_init};
     Assert(transposed == ref, ExcInternalError());
-    DEAL_II_CONSTEXPR const auto dummy    = scalar_product(a, ref);
-    DEAL_II_CONSTEXPR const auto dummy_2  = contract<0, 0>(a, ref);
-    DEAL_II_CONSTEXPR const auto dummy_3  = double_contract<0, 0, 1, 1>(a, ref);
-    DEAL_II_CONSTEXPR const auto dummy_4  = schur_product(a, ref);
-    DEAL_II_CONSTEXPR const auto dummy_5  = a * ref;
-    DEAL_II_CONSTEXPR const auto middle   = outer_product(a, a);
-    DEAL_II_CONSTEXPR const auto dummy_6  = contract3(a, middle, a);
-    DEAL_II_CONSTEXPR const auto dummy_7  = adjugate(a);
-    DEAL_II_CONSTEXPR const auto dummy_8  = cofactor(a);
-    DEAL_II_CONSTEXPR const auto dummy_9  = l1_norm(a);
-    DEAL_II_CONSTEXPR const auto dummy_10 = linfty_norm(a);
+    DEAL_II_CONSTEXPR const auto dummy   = scalar_product(a, ref);
+    DEAL_II_CONSTEXPR const auto dummy_2 = contract<0, 0>(a, ref);
+    DEAL_II_CONSTEXPR const auto dummy_3 = double_contract<0, 0, 1, 1>(a, ref);
+    DEAL_II_CONSTEXPR const auto dummy_4 = schur_product(a, ref);
+    DEAL_II_CONSTEXPR const auto dummy_5 = a * ref;
+    DEAL_II_CONSTEXPR const auto middle  = outer_product(a, a);
+    DEAL_II_CONSTEXPR const auto dummy_6 = contract3(a, middle, a);
+    DEAL_II_CONSTEXPR const auto dummy_7 = adjugate(a);
+    DEAL_II_CONSTEXPR const auto dummy_8 = cofactor(a);
+  }
+
+  {
+    constexpr Tensor<1, 3> dummy_1;
+    constexpr Tensor<0, 3> dummy_0;
+    DEAL_II_CONSTEXPR auto product_result = dummy_1 * dummy_1;
+    DEAL_II_CONSTEXPR auto constraction_result =
+      contract<0, 0>(dummy_1, dummy_1);
+    DEAL_II_CONSTEXPR auto outer_product_result =
+      outer_product(dummy_0, dummy_0);
   }
 
   deallog << "OK" << std::endl;

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.