]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Use explicit instantiations instead of forward declarations 9057/head
authorDaniel Arndt <arndtd@ornl.gov>
Tue, 19 Nov 2019 16:47:12 +0000 (11:47 -0500)
committerDaniel Arndt <arndtd@ornl.gov>
Tue, 19 Nov 2019 16:47:40 +0000 (11:47 -0500)
source/base/symmetric_tensor.cc

index e0995d383eb84b5c3fb46fb6ccb06d5a928af49b..aa608a269776f61b4835aaffaca497e7395a8635 100644 (file)
@@ -112,7 +112,9 @@ eigenvectors(const SymmetricTensor<2, 3, adouble> & /*T*/,
   AssertThrow(false, ExcADOLCAdvancedBranching());
   return std::array<std::pair<adouble, Tensor<1, 3, adouble>>, 3>();
 }
+
 #  else
+
 template std::array<adouble, 1>
 eigenvalues(const SymmetricTensor<2, 1, adouble> &);
 
@@ -122,18 +124,15 @@ eigenvalues(const SymmetricTensor<2, 2, adouble> &);
 template std::array<adouble, 3>
 eigenvalues(const SymmetricTensor<2, 3, adouble> &);
 
-template <>
-std::array<std::pair<adouble, Tensor<1, 1, adouble>>, 1>
+template std::array<std::pair<adouble, Tensor<1, 1, adouble>>, 1>
 eigenvectors(const SymmetricTensor<2, 1, adouble> &,
              const SymmetricTensorEigenvectorMethod);
 
-template <>
-std::array<std::pair<adouble, Tensor<1, 2, adouble>>, 2>
+template std::array<std::pair<adouble, Tensor<1, 2, adouble>>, 2>
 eigenvectors(const SymmetricTensor<2, 2, adouble> &,
              const SymmetricTensorEigenvectorMethod);
 
-template <>
-std::array<std::pair<adouble, Tensor<1, 3, adouble>>, 3>
+template std::array<std::pair<adouble, Tensor<1, 3, adouble>>, 3>
 eigenvectors(const SymmetricTensor<2, 3, adouble> &,
              const SymmetricTensorEigenvectorMethod);
 #  endif
@@ -147,18 +146,15 @@ eigenvalues(const SymmetricTensor<2, 2, adtl::adouble> &);
 template std::array<adtl::adouble, 3>
 eigenvalues(const SymmetricTensor<2, 3, adtl::adouble> &);
 
-template <>
-std::array<std::pair<adtl::adouble, Tensor<1, 1, adtl::adouble>>, 1>
+template std::array<std::pair<adtl::adouble, Tensor<1, 1, adtl::adouble>>, 1>
 eigenvectors(const SymmetricTensor<2, 1, adtl::adouble> &,
              const SymmetricTensorEigenvectorMethod);
 
-template <>
-std::array<std::pair<adtl::adouble, Tensor<1, 2, adtl::adouble>>, 2>
+template std::array<std::pair<adtl::adouble, Tensor<1, 2, adtl::adouble>>, 2>
 eigenvectors(const SymmetricTensor<2, 2, adtl::adouble> &,
              const SymmetricTensorEigenvectorMethod);
 
-template <>
-std::array<std::pair<adtl::adouble, Tensor<1, 3, adtl::adouble>>, 3>
+template std::array<std::pair<adtl::adouble, Tensor<1, 3, adtl::adouble>>, 3>
 eigenvectors(const SymmetricTensor<2, 3, adtl::adouble> &,
              const SymmetricTensorEigenvectorMethod);
 #endif

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.