diff --git a/src/OpenFOAM/primitives/transform/transform.H b/src/OpenFOAM/primitives/transform/transform.H index 70e68216127c621051eb8c7c2064533b4caf6a1c..c880e058880fab8970578053352a2f15ca6a8c61 100644 --- a/src/OpenFOAM/primitives/transform/transform.H +++ b/src/OpenFOAM/primitives/transform/transform.H @@ -48,9 +48,11 @@ inline tensor rotationTensor const vector& n2 ) { + const scalar s = n1 & n2; + const vector n3 = n1 ^ n2; return - (n1 & n2)*I - + (1 - (n1 & n2))*sqr(n1 ^ n2)/(magSqr(n1 ^ n2) + VSMALL) + s*I + + (1 - s)*sqr(n3)/(magSqr(n3) + VSMALL) + (n2*n1 - n1*n2); }