diff --git a/src/OpenFOAM/primitives/spatialVectorAlgebra/spatialTransform/spatialTransform.H b/src/OpenFOAM/primitives/spatialVectorAlgebra/spatialTransform/spatialTransform.H index 77f4946c8e..42eec8fcb8 100644 --- a/src/OpenFOAM/primitives/spatialVectorAlgebra/spatialTransform/spatialTransform.H +++ b/src/OpenFOAM/primitives/spatialVectorAlgebra/spatialTransform/spatialTransform.H @@ -178,6 +178,10 @@ public: // X.v = (E . vw, E . (vl - r^vw)) inline spatialVector operator&(const spatialVector& v) const; + //- Transform position p + // X:p = (E . pw, E . (vl - r)) + inline spatialVector operator&&(const spatialVector& v) const; + // IOstream Operators diff --git a/src/OpenFOAM/primitives/spatialVectorAlgebra/spatialTransform/spatialTransformI.H b/src/OpenFOAM/primitives/spatialVectorAlgebra/spatialTransform/spatialTransformI.H index c245fde390..83f40bb4a8 100644 --- a/src/OpenFOAM/primitives/spatialVectorAlgebra/spatialTransform/spatialTransformI.H +++ b/src/OpenFOAM/primitives/spatialVectorAlgebra/spatialTransform/spatialTransformI.H @@ -154,6 +154,19 @@ inline Foam::spatialVector Foam::spatialTransform::operator& } +inline Foam::spatialVector Foam::spatialTransform::operator&& +( + const spatialVector& v +) const +{ + return spatialVector + ( + E_ & v.w(), + E_ & (v.l() - r_) + ); +} + + inline Foam::spatialTransform::transpose::operator spatialTensor() const { return spatialTensor