From 9c79939745b9a310f9f0502d0e4a0cc36f4a51dd Mon Sep 17 00:00:00 2001 From: Henry <Henry> Date: Fri, 16 May 2014 13:18:04 +0100 Subject: [PATCH] DiagTensor: add conversion from SymmTensor --- src/OpenFOAM/primitives/DiagTensor/DiagTensorI.H | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/OpenFOAM/primitives/DiagTensor/DiagTensorI.H b/src/OpenFOAM/primitives/DiagTensor/DiagTensorI.H index 4fd082897ae..63497e7a246 100644 --- a/src/OpenFOAM/primitives/DiagTensor/DiagTensorI.H +++ b/src/OpenFOAM/primitives/DiagTensor/DiagTensorI.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -24,6 +24,7 @@ License \*---------------------------------------------------------------------------*/ #include "SphericalTensor.H" +#include "SymmTensor.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -291,7 +292,7 @@ inline Cmpt det(const DiagTensor<Cmpt>& t) } -//- Return the inverse of a symmetric tensor +//- Return the inverse of a diagonal tensor template<class Cmpt> inline DiagTensor<Cmpt> inv(const DiagTensor<Cmpt>& dt) { @@ -299,6 +300,14 @@ inline DiagTensor<Cmpt> inv(const DiagTensor<Cmpt>& dt) } +//- Return the diagonal of a symmetric tensor as a diagonal tensor +template<class Cmpt> +inline DiagTensor<Cmpt> diag(const SymmTensor<Cmpt>& t) +{ + return DiagTensor<Cmpt>(t.xx(), t.yy(), t.zz()); +} + + //- Return the diagonal of a tensor as a diagonal tensor template<class Cmpt> inline DiagTensor<Cmpt> diag(const Tensor<Cmpt>& t) -- GitLab