ENH: autoLayerDriver: better layering information message
[OpenFOAM-2.0.x.git] / src / thermophysicalModels / radiationModels / submodels / absorptionEmissionModel / constantAbsorptionEmission / constantAbsorptionEmission.C
blob25c7cb156f16c67ffb9b29c6144bbe160ec93f04
1 /*---------------------------------------------------------------------------*\
2   =========                 |
3   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
4    \\    /   O peration     |
5     \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
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
13     the Free Software Foundation, either version 3 of the License, or
14     (at your 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, see <http://www.gnu.org/licenses/>.
24 \*---------------------------------------------------------------------------*/
26 #include "constantAbsorptionEmission.H"
27 #include "addToRunTimeSelectionTable.H"
29 // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
31 namespace Foam
33     namespace radiation
34     {
35         defineTypeNameAndDebug(constantAbsorptionEmission, 0);
37         addToRunTimeSelectionTable
38         (
39             absorptionEmissionModel,
40             constantAbsorptionEmission,
41             dictionary
42         );
43     }
47 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
49 Foam::radiation::constantAbsorptionEmission::constantAbsorptionEmission
51     const dictionary& dict,
52     const fvMesh& mesh
55     absorptionEmissionModel(dict, mesh),
56     coeffsDict_(dict.subDict(typeName + "Coeffs")),
57     a_(coeffsDict_.lookup("a")),
58     e_(coeffsDict_.lookup("e")),
59     E_(coeffsDict_.lookup("E"))
63 // * * * * * * * * * * * * * * * * Destructor  * * * * * * * * * * * * * * * //
65 Foam::radiation::constantAbsorptionEmission::~constantAbsorptionEmission()
69 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
71 Foam::tmp<Foam::volScalarField>
72 Foam::radiation::constantAbsorptionEmission::aCont(const label bandI) const
74     tmp<volScalarField> ta
75     (
76         new volScalarField
77         (
78             IOobject
79             (
80                 "a",
81                 mesh_.time().timeName(),
82                 mesh_,
83                 IOobject::NO_READ,
84                 IOobject::NO_WRITE,
85                 false
86             ),
87             mesh_,
88             a_
89         )
90     );
92     return ta;
96 Foam::tmp<Foam::volScalarField>
97 Foam::radiation::constantAbsorptionEmission::eCont(const label bandI) const
99     tmp<volScalarField> te
100     (
101         new volScalarField
102         (
103             IOobject
104             (
105                 "e",
106                 mesh_.time().timeName(),
107                 mesh_,
108                 IOobject::NO_READ,
109                 IOobject::NO_WRITE,
110                 false
111             ),
112             mesh_,
113             e_
114         )
115     );
117     return te;
121 Foam::tmp<Foam::volScalarField>
122 Foam::radiation::constantAbsorptionEmission::ECont(const label bandI) const
124     tmp<volScalarField> tE
125     (
126         new volScalarField
127         (
128             IOobject
129             (
130                 "E",
131                 mesh_.time().timeName(),
132                 mesh_,
133                 IOobject::NO_READ,
134                 IOobject::NO_WRITE,
135                 false
136             ),
137             mesh_,
138             E_
139         )
140     );
142     return tE;
146 // ************************************************************************* //