From 13f46fd8896bf40ce4a6b5ec49b3bdf160eee1b0 Mon Sep 17 00:00:00 2001 From: Henry Date: Fri, 13 Jul 2012 10:24:47 +0100 Subject: [PATCH] quaternion: Added new "normalized" function which returns the normalized form of the argument --- src/OpenFOAM/primitives/quaternion/quaternion.H | 2 ++ src/OpenFOAM/primitives/quaternion/quaternionI.H | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/src/OpenFOAM/primitives/quaternion/quaternion.H b/src/OpenFOAM/primitives/quaternion/quaternion.H index 5a5e3fd697..730e86d68d 100644 --- a/src/OpenFOAM/primitives/quaternion/quaternion.H +++ b/src/OpenFOAM/primitives/quaternion/quaternion.H @@ -140,6 +140,8 @@ public: //- The rotation tensor corresponding the quaternion inline tensor R() const; + inline quaternion normalized() const; + // Edit diff --git a/src/OpenFOAM/primitives/quaternion/quaternionI.H b/src/OpenFOAM/primitives/quaternion/quaternionI.H index 8f3c12fb06..709ee52b6d 100644 --- a/src/OpenFOAM/primitives/quaternion/quaternionI.H +++ b/src/OpenFOAM/primitives/quaternion/quaternionI.H @@ -166,6 +166,12 @@ inline Foam::vector& Foam::quaternion::v() } +inline Foam::quaternion Foam::quaternion::normalized() const +{ + return *this/mag(*this); +} + + inline void Foam::quaternion::normalize() { operator/=(mag(*this));