From 46a7daceb7a92774d6abcb91e3d439ee653b0abb Mon Sep 17 00:00:00 2001 From: Daniel Arndt Date: Thu, 21 Nov 2019 10:19:33 -0500 Subject: [PATCH] Forward declare SymmetricTensor specializations --- .../deal.II/base/symmetric_tensor.templates.h | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/include/deal.II/base/symmetric_tensor.templates.h b/include/deal.II/base/symmetric_tensor.templates.h index 8658673329..7735c3c470 100644 --- a/include/deal.II/base/symmetric_tensor.templates.h +++ b/include/deal.II/base/symmetric_tensor.templates.h @@ -1001,6 +1001,44 @@ eigenvectors(const SymmetricTensor<2, dim, Number> &T, +#ifdef DEAL_II_ADOLC_WITH_ADVANCED_BRANCHING +namespace internal +{ + namespace SymmetricTensorImplementation + { + template <> + struct Inverse<4, 3, adouble>; + } // namespace SymmetricTensorImplementation +} // namespace internal + +template <> +std::array +eigenvalues(const SymmetricTensor<2, 1, adouble> & /*T*/); + +template <> +std::array +eigenvalues(const SymmetricTensor<2, 2, adouble> & /*T*/); + +template <> +std::array +eigenvalues(const SymmetricTensor<2, 3, adouble> & /*T*/); + +template <> +std::array>, 1> +eigenvectors(const SymmetricTensor<2, 1, adouble> & /*T*/, + const SymmetricTensorEigenvectorMethod /*method*/); + +template <> +std::array>, 2> +eigenvectors(const SymmetricTensor<2, 2, adouble> & /*T*/, + const SymmetricTensorEigenvectorMethod /*method*/); + +template <> +std::array>, 3> +eigenvectors(const SymmetricTensor<2, 3, adouble> & /*T*/, + const SymmetricTensorEigenvectorMethod /*method*/); +#endif + DEAL_II_NAMESPACE_CLOSE #endif -- 2.39.5