|
[Sponsors] |
SurfaceTransformPoints rotate suggestion for improvement |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
January 9, 2009, 03:28 |
Hello All,
We found it very
|
#1 |
Senior Member
Mark Couwenberg
Join Date: Mar 2009
Location: Netherlands
Posts: 130
Rep Power: 17 |
Hello All,
We found it very hard to understand the necessary input definition for rotating some surface object using the utility surfaceTransformPoints. One needs to supply 2 vectors which are used to construct a rotation matrix. We finally found how this matrix is constructed from these two vectors but were not able to find out how to relate the vectors to some kind of desired rotation. Therefore I modified the utility such that you only need to supply three angles of rotation (rotX, rotY, rotZ), which seems much more intuitively. The code now reads: argList::validOptions.insert("rotate", "'(degrX degrY degrZ)'"); ... ... if (args.options().found("rotate")) { using namespace mathematicalConstant; vector angles = (IStringStream(args.options()["rotate"])()); scalar phiX = pi*angles[0]/180; scalar phiY = pi*angles[1]/180; scalar phiZ = pi*angles[2]/180; tensor Rx (1, 0, 0, 0, Foam::cos(phiX), Foam::sin(phiX), 0, -Foam::sin(phiX), Foam::cos(phiX)); tensor Ry (Foam::cos(phiY), 0, -Foam::sin(phiY), 0, 1, 0, Foam::sin(phiY), 0, Foam::cos(phiY)); tensor Rz (Foam::cos(phiZ), Foam::sin(phiZ), 0, -Foam::sin(phiZ), Foam::cos(phiZ), 0, 0, 0, 1); tensor T (Rz & Ry & Rx); Info<< "Rotating points by " << T << endl; points = transform(T, points); } Attached the complete code. Hopefully it is usefull for people. Brgds, Mark |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
SurfaceTransformPoints rotate suggestion for improvement | markc | OpenFOAM Pre-Processing | 1 | August 13, 2011 09:47 |
Improvement to the update of T_ et al in hMixtureThermoC and hhuMixtureThermoC | richpaj | OpenFOAM Bugs | 2 | October 9, 2008 23:14 |
Jet Impingement (results improvement) ... | Sri | FLUENT | 6 | July 16, 2007 07:33 |
Improvement in makeDeltaCoeffs | rolando | OpenFOAM Bugs | 3 | May 15, 2007 13:49 |
sponsership-research-innovative improvement-wind | amit | Main CFD Forum | 0 | February 9, 2006 08:51 |