consistency update for kappa
[OpenFOAM-1.6.x.git] / applications / solvers / multiphase / settlingFoam / createFields.H
blobcd40e207763e7a67de999032258ba70cf391c3d5
1     Info<< "Reading field p\n" << endl;
2     volScalarField p
3     (
4         IOobject
5         (
6             "p",
7             runTime.timeName(),
8             mesh,
9             IOobject::MUST_READ,
10             IOobject::AUTO_WRITE
11         ),
12         mesh
13     );
15     Info<< "Reading field alpha\n" << endl;
16     volScalarField alpha
17     (
18         IOobject
19         (
20             "alpha",
21             runTime.timeName(),
22             mesh,
23             IOobject::MUST_READ,
24             IOobject::AUTO_WRITE
25         ),
26         mesh
27     );
29     Info<< "Reading field U\n" << endl;
30     volVectorField U
31     (
32         IOobject
33         (
34             "U",
35             runTime.timeName(),
36             mesh,
37             IOobject::MUST_READ,
38             IOobject::AUTO_WRITE
39         ),
40         mesh
41     );
44     Info<< "Reading transportProperties\n" << endl;
46     IOdictionary transportProperties
47     (
48         IOobject
49         (
50             "transportProperties",
51             runTime.constant(),
52             mesh,
53             IOobject::MUST_READ,
54             IOobject::NO_WRITE
55         )
56     );
59     dimensionedScalar rhoc
60     (
61         transportProperties.lookup("rhoc")
62     );
64     dimensionedScalar rhod
65     (
66         transportProperties.lookup("rhod")
67     );
69     dimensionedScalar muc
70     (
71         transportProperties.lookup("muc")
72     );
74     dimensionedScalar plasticViscosityCoeff
75     (
76         transportProperties.lookup("plasticViscosityCoeff")
77     );
79     dimensionedScalar plasticViscosityExponent
80     (
81         transportProperties.lookup("plasticViscosityExponent")
82     );
84     dimensionedScalar yieldStressCoeff
85     (
86         transportProperties.lookup("yieldStressCoeff")
87     );
89     dimensionedScalar yieldStressExponent
90     (
91         transportProperties.lookup("yieldStressExponent")
92     );
94     dimensionedScalar yieldStressOffset
95     (
96         transportProperties.lookup("yieldStressOffset")
97     );
99     Switch BinghamPlastic
100     (
101         transportProperties.lookup("BinghamPlastic")
102     );
104     volScalarField rho
105     (
106         IOobject
107         (
108             "rho",
109             runTime.timeName(),
110             mesh,
111             IOobject::NO_READ,
112             IOobject::NO_WRITE
113         ),
114         (scalar(1) - alpha)*rhoc + alpha*rhod
115     );
117     volScalarField Alpha
118     (
119         IOobject
120         (
121             "Alpha",
122             runTime.timeName(),
123             mesh,
124             IOobject::NO_READ,
125             IOobject::AUTO_WRITE
126         ),
127         alpha*rhod/rho,
128         alpha.boundaryField().types()
129     );
131     #include "compressibleCreatePhi.H"
134     label pRefCell = 0;
135     scalar pRefValue = 0.0;
136     setRefCell(p, mesh.solutionDict().subDict("PISO"), pRefCell, pRefValue);
139     Info<< "Calculating field mul\n" << endl;
140     volScalarField mul
141     (
142         IOobject
143         (
144             "mul",
145             runTime.timeName(),
146             mesh,
147             IOobject::NO_READ,
148             IOobject::AUTO_WRITE
149         ),
150         muc +
151         plasticViscosity
152         (
153             plasticViscosityCoeff,
154             plasticViscosityExponent,
155             Alpha
156         )
157     );
160     Info<< "Initialising field Vdj\n" << endl;
161     volVectorField Vdj
162     (
163         IOobject
164         (
165             "Vdj",
166             runTime.timeName(),
167             mesh,
168             IOobject::NO_READ,
169             IOobject::AUTO_WRITE
170         ),
171         mesh,
172         dimensionedVector("0.0", U.dimensions(), vector::zero),
173         U.boundaryField().types()
174     );
177     Info<< "Selecting Drift-Flux model " << endl;
179     word VdjModel
180     (
181         transportProperties.lookup("VdjModel")
182     );
184     Info<< tab << VdjModel << " selected\n" << endl;
186     const dictionary& VdjModelCoeffs
187     (
188         transportProperties.subDict(VdjModel + "Coeffs")
189     );
191     dimensionedVector V0
192     (
193         VdjModelCoeffs.lookup("V0")
194     );
196     dimensionedScalar a
197     (
198         VdjModelCoeffs.lookup("a")
199     );
201     dimensionedScalar a1
202     (
203         VdjModelCoeffs.lookup("a1")
204     );
206     dimensionedScalar alphaMin
207     (
208         VdjModelCoeffs.lookup("alphaMin")
209     );
213     IOdictionary RASProperties
214     (
215         IOobject
216         (
217             "RASProperties",
218             runTime.constant(),
219             mesh,
220             IOobject::MUST_READ,
221             IOobject::NO_WRITE
222         )
223     );
226     Switch turbulence
227     (
228         RASProperties.lookup("turbulence")
229     );
231     dictionary kEpsilonDict
232     (
233         RASProperties.subDictPtr("kEpsilonCoeffs")
234     );
236     dimensionedScalar Cmu
237     (
238         dimensionedScalar::lookupOrAddToDict
239         (
240             "Cmu",
241             kEpsilonDict,
242             0.09
243         )
244     );
246     dimensionedScalar C1
247     (
248         dimensionedScalar::lookupOrAddToDict
249         (
250             "C1",
251             kEpsilonDict,
252             1.44
253         )
254     );
256     dimensionedScalar C2
257     (
258         dimensionedScalar::lookupOrAddToDict
259         (
260             "C2",
261             kEpsilonDict,
262             1.92
263         )
264     );
266     dimensionedScalar C3
267     (
268         dimensionedScalar::lookupOrAddToDict
269         (
270             "C3",
271             kEpsilonDict,
272             0.85
273         )
274     );
276     dimensionedScalar alphak
277     (
278         dimensionedScalar::lookupOrAddToDict
279         (
280             "alphaEps",
281             kEpsilonDict,
282             1.0
283         )
284     );
286     dimensionedScalar alphaEps
287     (
288         dimensionedScalar::lookupOrAddToDict
289         (
290             "alphaEps",
291             kEpsilonDict,
292             0.76923
293         )
294     );
296     dictionary wallFunctionDict
297     (
298         RASProperties.subDictPtr("wallFunctionCoeffs")
299     );
301     dimensionedScalar kappa
302     (
303         dimensionedScalar::lookupOrAddToDict
304         (
305             "kappa",
306             wallFunctionDict,
307             0.41
308         )
309     );
311     dimensionedScalar E
312     (
313         dimensionedScalar::lookupOrAddToDict
314         (
315             "E",
316             wallFunctionDict,
317             9.0
318         )
319     );
321     if (RASProperties.lookupOrDefault<Switch>("printCoeffs", false))
322     {
323         Info<< "kEpsilonCoeffs" << kEpsilonDict << nl
324             << "wallFunctionCoeffs" << wallFunctionDict << endl;
325     }
328     nearWallDist y(mesh);
330     Info<< "Reading field k\n" << endl;
331     volScalarField k
332     (
333         IOobject
334         (
335             "k",
336             runTime.timeName(),
337             mesh,
338             IOobject::MUST_READ,
339             IOobject::AUTO_WRITE
340         ),
341         mesh
342     );
344     Info<< "Reading field epsilon\n" << endl;
345     volScalarField epsilon
346     (
347         IOobject
348         (
349             "epsilon",
350             runTime.timeName(),
351             mesh,
352             IOobject::MUST_READ,
353             IOobject::AUTO_WRITE
354         ),
355         mesh
356     );
358     Info<< "Calculating field mut\n" << endl;
359     volScalarField mut
360     (
361         IOobject
362         (
363             "mut",
364             runTime.timeName(),
365             mesh,
366             IOobject::NO_READ,
367             IOobject::AUTO_WRITE
368         ),
369         Cmu*rho*sqr(k)/epsilon
370     );
373     Info<< "Calculating field mu\n" << endl;
374     volScalarField mu
375     (
376         IOobject
377         (
378             "mu",
379             runTime.timeName(),
380             mesh,
381             IOobject::NO_READ,
382             IOobject::AUTO_WRITE
383         ),
384         mut + mul
385     );