fixed writing out entries in advective bc
[OpenFOAM-1.6-ext.git] / src / VectorN / OpenFOAM / Fields / DiagTensorNFields.C
blob88bda99a2fb5df6c0c43feb4b8fdf3e0de416042
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 \*---------------------------------------------------------------------------*/
27 #include "DiagTensorNFields.H"
28 #include "transformField.H"
30 #define TEMPLATE
31 #include "FieldFunctionsM.C"
33 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
35 #define DiagTensorN_FieldFunctions(tensorType, diagTensorType, sphericalTensorType, \
36     vectorType, CmptType, args...)                                                  \
37                                                                                     \
38 UNARY_FUNCTION(diagTensorType, diagTensorType, inv)                                 \
39 UNARY_FUNCTION(diagTensorType, diagTensorType, diag)                                \
40                                                                                     \
41 BINARY_OPERATOR(diagTensorType, CmptType, diagTensorType, /, divide)                \
42 BINARY_TYPE_OPERATOR(diagTensorType, CmptType, diagTensorType, /, divide)           \
43                                                                                     \
44 BINARY_OPERATOR(vectorType, vectorType, diagTensorType, /, divide)                  \
45 BINARY_TYPE_OPERATOR(vectorType, vectorType, diagTensorType, /, divide)             \
46                                                                                     \
47 BINARY_OPERATOR(diagTensorType, diagTensorType, diagTensorType, /, divide)          \
48 BINARY_TYPE_OPERATOR(diagTensorType, diagTensorType, diagTensorType, /, divide)     \
49                                                                                     \
50 BINARY_OPERATOR(diagTensorType, sphericalTensorType, diagTensorType, /, divide)     \
51 BINARY_TYPE_OPERATOR(diagTensorType, sphericalTensorType, diagTensorType, /, divide)\
52                                                                                     \
53 BINARY_OPERATOR(diagTensorType, diagTensorType, sphericalTensorType, /, divide)     \
54 BINARY_TYPE_OPERATOR(diagTensorType, diagTensorType, sphericalTensorType, /, divide)\
55                                                                                     \
56 BINARY_OPERATOR(diagTensorType, diagTensorType, diagTensorType, +, add)             \
57 BINARY_OPERATOR(diagTensorType, diagTensorType, diagTensorType, -, subtract)        \
58                                                                                     \
59 BINARY_TYPE_OPERATOR(diagTensorType, diagTensorType, diagTensorType, +, add)        \
60 BINARY_TYPE_OPERATOR(diagTensorType, diagTensorType, diagTensorType, -, subtract)   \
61                                                                                     \
62 BINARY_OPERATOR(diagTensorType, sphericalTensorType, diagTensorType, +, add)        \
63 BINARY_OPERATOR(diagTensorType, sphericalTensorType, diagTensorType, -, subtract)   \
64                                                                                     \
65 BINARY_TYPE_OPERATOR(diagTensorType, sphericalTensorType, diagTensorType, +, add)   \
66 BINARY_TYPE_OPERATOR(diagTensorType, sphericalTensorType, diagTensorType, -, subtract)  \
67                                                                                     \
68 BINARY_OPERATOR(diagTensorType, diagTensorType, sphericalTensorType, +, add)        \
69 BINARY_OPERATOR(diagTensorType, diagTensorType, sphericalTensorType, -, subtract)   \
70                                                                                     \
71 BINARY_TYPE_OPERATOR(diagTensorType, diagTensorType, sphericalTensorType, +, add)   \
72 BINARY_TYPE_OPERATOR(diagTensorType, diagTensorType, sphericalTensorType, -, subtract)  \
73                                                                                     \
74 template<>                                                                          \
75 tmp<Field<diagTensorType> > transformFieldMask<diagTensorType>                      \
76 (                                                                                   \
77     const Field<sphericalTensorType>& stf                                           \
78 )                                                                                   \
79 {                                                                                   \
80     tmp<Field<diagTensorType> > tRes( new Field<diagTensorType>(stf.size()) );      \
81     Field<diagTensorType>& res = tRes();                                            \
82     TFOR_ALL_F_OP_F(diagTensorType, res, =, sphericalTensorType, stf)               \
83     return tRes;                                                                    \
87 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
89 namespace Foam
92 forAllVectorTensorNTypes(DiagTensorN_FieldFunctions)
96 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
98 #undef DiagTensorN_FieldFunctions
100 #include "undefFieldFunctionsM.H"
102 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
104 // ************************************************************************* //