Merge branch 'upstream/OpenFOAM' into master
[freefoam.git] / src / engine / ignition / ignitionSiteIO.C
blobe7b67f87e75a2ccbc13d2a7f0ee4a8d13bee8c2a
1 /*---------------------------------------------------------------------------*\
2   =========                 |
3   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
4    \\    /   O peration     |
5     \\  /    A nd           | Copyright (C) 1991-2009 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 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 "ignitionSite.H"
28 #include <engine/engineTime.H>
30 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
32 namespace Foam
35 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
37 ignitionSite::ignitionSite(Istream& is, const Time& db, const fvMesh& mesh)
39     db_(db),
40     mesh_(mesh),
41     ignitionSiteDict_(is),
42     location_(ignitionSiteDict_.lookup("location")),
43     diameter_(readScalar(ignitionSiteDict_.lookup("diameter"))),
44     time_
45     (
46         db_.userTimeToTime
47         (
48             readScalar(ignitionSiteDict_.lookup("start"))
49         )
50     ),
51     duration_
52     (
53         db_.userTimeToTime
54         (
55             readScalar(ignitionSiteDict_.lookup("duration"))
56         )
57     ),
58     strength_(readScalar(ignitionSiteDict_.lookup("strength"))),
59     timeIndex_(db_.timeIndex())
61     // Check state of Istream
62     is.check("ignitionSite::ignitionSite(Istream&)");
64     findIgnitionCells(mesh_);
68 ignitionSite::ignitionSite
70     Istream& is,
71     const engineTime& edb,
72     const fvMesh& mesh
75     db_(edb),
76     mesh_(mesh),
77     ignitionSiteDict_(is),
78     location_(ignitionSiteDict_.lookup("location")),
79     diameter_(readScalar(ignitionSiteDict_.lookup("diameter"))),
80     time_
81     (
82         db_.userTimeToTime
83         (
84             edb.degToTime(readScalar(ignitionSiteDict_.lookup("start")))
85         )
86     ),
87     duration_
88     (
89         db_.userTimeToTime
90         (
91             edb.degToTime(readScalar(ignitionSiteDict_.lookup("duration")))
92         )
93     ),
94     strength_(readScalar(ignitionSiteDict_.lookup("strength"))),
95     timeIndex_(db_.timeIndex())
97     // Check state of Istream
98     is.check("ignitionSite::ignitionSite(Istream&)");
100     findIgnitionCells(mesh_);
104 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
106 } // End namespace Foam
108 // ************************ vim: set sw=4 sts=4 et: ************************ //