1 /*---------------------------------------------------------------------------*\
3 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
5 \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
7 -------------------------------------------------------------------------------
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
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 "readFields.H"
27 #include "dictionary.H"
29 // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
31 defineTypeNameAndDebug(Foam::readFields, 0);
34 // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
36 Foam::readFields::readFields
39 const objectRegistry& obr,
40 const dictionary& dict,
41 const bool loadFromFiles
49 // Check if the available mesh is an fvMesh otherise deactivate
50 if (!isA<fvMesh>(obr_))
55 "readFields::readFields"
58 "const objectRegistry&, "
62 ) << "No fvMesh available, deactivating."
70 // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
72 Foam::readFields::~readFields()
76 // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
78 void Foam::readFields::read(const dictionary& dict)
82 dict.lookup("fields") >> fieldSet_;
87 void Foam::readFields::execute()
89 //Info<< type() << " " << name_ << ":" << nl;
91 // Clear out any previously loaded fields
104 forAll(fieldSet_, fieldI)
106 // If necessary load field
107 loadField<scalar>(fieldSet_[fieldI], vsf_, ssf_);
108 loadField<vector>(fieldSet_[fieldI], vvf_, svf_);
109 loadField<sphericalTensor>(fieldSet_[fieldI], vSpheretf_, sSpheretf_);
110 loadField<symmTensor>(fieldSet_[fieldI], vSymmtf_, sSymmtf_);
111 loadField<tensor>(fieldSet_[fieldI], vtf_, stf_);
116 void Foam::readFields::end()
122 void Foam::readFields::write()
128 // ************************************************************************* //