fixed writing out entries in advective bc
[OpenFOAM-1.6-ext.git] / src / OpenFOAM / coordinateSystems / coordinateRotation / axisCoordinateRotation.H
blobcac5fc930614c7a55c51e6ebbf13036b4154b54b
1 /*---------------------------------------------------------------------------*\
2   =========                 |
3   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
4    \\    /   O peration     |
5     \\  /    A nd           | Copyright held by original author
6      \\/     M anipulation  |
7 -------------------------------------------------------------------------------
8 License
9     This file is part of OpenFOAM.
11     OpenFOAM is free software; you can redistribute it and/or modify it
12     under the terms of the GNU General Public License as published by the
13     Free Software Foundation; either version 2 of the License, or (at your
14     option) any later version.
16     OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17     ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18     FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
19     for more details.
21     You should have received a copy of the GNU General Public License
22     along with OpenFOAM; if not, write to the Free Software Foundation,
23     Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
25 Class
26     axisCoordinateRotation
28 Description
29     The 3 rotations are defined in the axis convention
30     (around X, around Y and around Z).
31     For reference and illustration, see
32     http://mathworld.wolfram.com/RotationMatrix.html
34 AUTHOR
35     Hrvoje Jasak, Wikki Ltd.  All rights reserved
37 \*---------------------------------------------------------------------------*/
39 #ifndef axisCoordinateRotation_H
40 #define axisCoordinateRotation_H
42 #include "coordinateRotation.H"
44 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
46 namespace Foam
49 /*---------------------------------------------------------------------------*\
50                    Class axisCoordinateRotation Declaration
51 \*---------------------------------------------------------------------------*/
53 class axisCoordinateRotation
55     public coordinateRotation
57     // Private member functions
59         //- Calculate transformation tensor
60         void calcTransform
61         (
62             const scalar phiAngle,
63             const scalar thetaAngle,
64             const scalar psiAngle,
65             const bool inDegrees = true
66         );
69 public:
71     //- Runtime type information
72     TypeName("axisRotation");
75     // Constructors
77         //- Construct null
78         axisCoordinateRotation();
80         //- Construct from components of rotation vector
81         axisCoordinateRotation
82         (
83             const scalar phiAngle,
84             const scalar thetaAngle,
85             const scalar psiAngle,
86             const bool inDegrees = true
87         );
89         //- Construct from dictionary
90         axisCoordinateRotation(const dictionary&);
94 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
96 } // End namespace Foam
98 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
100 #endif
102 // ************************************************************************* //