Merge branch 'master' of github.com:OpenCFD/OpenFOAM-1.7.x
[OpenFOAM-1.7.x.git] / src / engine / ignition / ignitionSiteIO.C
blob9f1bf679083a494dada8531583eacfb87c8c65d5
1 /*---------------------------------------------------------------------------*\
2   =========                 |
3   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
4    \\    /   O peration     |
5     \\  /    A nd           | Copyright (C) 1991-2010 OpenCFD Ltd.
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 "ignitionSite.H"
27 #include "engineTime.H"
29 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
31 namespace Foam
34 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
36 ignitionSite::ignitionSite(Istream& is, const Time& db, const fvMesh& mesh)
38     db_(db),
39     mesh_(mesh),
40     ignitionSiteDict_(is),
41     location_(ignitionSiteDict_.lookup("location")),
42     diameter_(readScalar(ignitionSiteDict_.lookup("diameter"))),
43     time_
44     (
45         db_.userTimeToTime
46         (
47             readScalar(ignitionSiteDict_.lookup("start"))
48         )
49     ),
50     duration_
51     (
52         db_.userTimeToTime
53         (
54             readScalar(ignitionSiteDict_.lookup("duration"))
55         )
56     ),
57     strength_(readScalar(ignitionSiteDict_.lookup("strength"))),
58     timeIndex_(db_.timeIndex())
60     // Check state of Istream
61     is.check("ignitionSite::ignitionSite(Istream&)");
63     findIgnitionCells(mesh_);
67 ignitionSite::ignitionSite
69     Istream& is,
70     const engineTime& edb,
71     const fvMesh& mesh
74     db_(edb),
75     mesh_(mesh),
76     ignitionSiteDict_(is),
77     location_(ignitionSiteDict_.lookup("location")),
78     diameter_(readScalar(ignitionSiteDict_.lookup("diameter"))),
79     time_
80     (
81         db_.userTimeToTime
82         (
83             edb.degToTime(readScalar(ignitionSiteDict_.lookup("start")))
84         )
85     ),
86     duration_
87     (
88         db_.userTimeToTime
89         (
90             edb.degToTime(readScalar(ignitionSiteDict_.lookup("duration")))
91         )
92     ),
93     strength_(readScalar(ignitionSiteDict_.lookup("strength"))),
94     timeIndex_(db_.timeIndex())
96     // Check state of Istream
97     is.check("ignitionSite::ignitionSite(Istream&)");
99     findIgnitionCells(mesh_);
103 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
105 } // End namespace Foam
107 // ************************************************************************* //