phaseSystem.H
Go to the documentation of this file.
1 /*---------------------------------------------------------------------------*\
2  ========= |
3  \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4  \\ / O peration |
5  \\ / A nd | www.openfoam.com
6  \\/ M anipulation |
7 -------------------------------------------------------------------------------
8  Copyright (C) 2015-2019 OpenFOAM Foundation
9 -------------------------------------------------------------------------------
10 License
11  This file is part of OpenFOAM.
12 
13  OpenFOAM is free software: you can redistribute it and/or modify it
14  under the terms of the GNU General Public License as published by
15  the Free Software Foundation, either version 3 of the License, or
16  (at your option) any later version.
17 
18  OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
19  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20  FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21  for more details.
22 
23  You should have received a copy of the GNU General Public License
24  along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
25 
26 Class
27  Foam::phaseSystem
28 
29 Description
30  Class to represent a system of phases and model interfacial transfers
31  between them.
32 
33 SourceFiles
34  phaseSystem.C
35 
36 \*---------------------------------------------------------------------------*/
37 
38 #ifndef phaseSystem_H
39 #define phaseSystem_H
40 
41 #include "IOdictionary.H"
42 
43 #include "phaseModel.H"
44 #include "phasePair.H"
45 #include "orderedPhasePair.H"
46 #include "HashPtrTable.H"
47 #include "PtrListDictionary.H"
48 
49 #include "IOMRFZoneList.H"
50 #include "fvOptions.H"
51 
52 #include "volFields.H"
53 #include "surfaceFields.H"
54 #include "fvMatricesFwd.H"
55 
56 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
57 
58 namespace Foam
59 {
60 
61 class blendingMethod;
62 template<class modelType> class BlendedInterfacialModel;
63 class surfaceTensionModel;
64 class aspectRatioModel;
65 
66 /*---------------------------------------------------------------------------*\
67  Class phaseSystem Declaration
68 \*---------------------------------------------------------------------------*/
69 
70 class phaseSystem
71 :
72  public IOdictionary
73 {
74 public:
75 
76  // Public typedefs
77 
79 
81 
83 
85 
87 
88  typedef
91 
92 
93 protected:
94 
95  // Protected typedefs
96 
97  typedef
99  dictTable;
100 
101  typedef
104 
105  typedef
106  HashTable
107  <
109  phasePairKey,
111  >
113 
114  typedef
115  HashTable
116  <
118  phasePairKey,
120  >
122 
123 
124  // Protected data
125 
126  //- Reference to the mesh
127  const fvMesh& mesh_;
128 
129  //- Phase models
131 
132  //- Moving phase models
134 
135  //- Stationary phase models
137 
138  //- Anisothermal phase models
140 
141  //- Multi-component phase models
143 
144  //- Phase pairs
146 
147  //- Total volumetric flux
149 
150  //- Rate of change of pressure
152 
153  //- Optional MRF zones
155 
156  //- Blending methods
158 
159 
160  // Sub Models
161 
162  //- Surface tension models
164 
165  //- Aspect ratio models
167 
168 
169  // Protected member functions
170 
171  //- Calculate and return the mixture flux
173  (
174  const phaseModelList& phaseModels
175  ) const;
176 
177  //- Generate pairs
178  void generatePairs
179  (
180  const dictTable& modelDicts
181  );
182 
183  //- Generate pairs and sub-model tables
184  template<class modelType>
185  void createSubModels
186  (
187  const dictTable& modelDicts,
188  HashTable
189  <
191  phasePairKey,
193  >& models
194  );
195 
196  //- Generate pairs and sub-model tables
197  template<class modelType>
199  (
200  const word& modelName,
201  HashTable
202  <
204  phasePairKey,
206  >& models
207  );
208 
209  //- Generate pairs and blended sub-model tables
210  template<class modelType>
212  (
213  const word& modelName,
214  HashTable
215  <
217  phasePairKey,
219  >& models,
220  const bool correctFixedFluxBCs = true
221  );
222 
223  //- Generate pairs and two-sided sub-model tables
224  template<class modelType>
226  (
227  const word& modelName,
228  HashTable
229  <
231  phasePairKey,
233  >& models,
234  const bool correctFixedFluxBCs = true
235  );
236 
237  //- Add the field to a phase-indexed list, with the given name,
238  // constructing if necessary
239  template<class GeoField>
240  void addField
241  (
242  const phaseModel& phase,
243  const word& fieldName,
245  PtrList<GeoField>& fieldList
246  ) const;
247 
248  //- Add the field to a phase-indexed list, with the given name,
249  // constructing if necessary
250  template<class GeoField>
251  void addField
252  (
253  const phaseModel& phase,
254  const word& fieldName,
255  const GeoField& field,
256  PtrList<GeoField>& fieldList
257  ) const;
258 
259  //- Add the field to a phase-indexed table, with the given name,
260  // constructing if necessary
261  template<class GeoField>
262  void addField
263  (
264  const phaseModel& phase,
265  const word& fieldName,
267  HashPtrTable<GeoField>& fieldTable
268  ) const;
269 
270  //- Add the field to a phase-indexed table, with the given name,
271  // constructing if necessary
272  template<class GeoField>
273  void addField
274  (
275  const phaseModel& phase,
276  const word& fieldName,
277  const GeoField& field,
278  HashPtrTable<GeoField>& fieldTable
279  ) const;
280 
281 
282 public:
283 
284  //- Runtime type information
285  TypeName("phaseSystem");
286 
287  //- Default name of the phase properties dictionary
288  static const word propertiesName;
289 
290 
291  // Constructors
292 
293  //- Construct from fvMesh
294  phaseSystem(const fvMesh& mesh);
295 
296 
297  //- Destructor
298  virtual ~phaseSystem();
299 
300 
301  // Member Functions
302 
303  // Access
304 
305  //- Return the mesh
306  inline const fvMesh& mesh() const;
307 
308  //- Return the phase models
309  inline const phaseModelList& phases() const;
310 
311  //- Access the phase models
312  inline phaseModelList& phases();
313 
314  //- Return the models for phases that are moving
315  inline const phaseModelPartialList& movingPhases() const;
316 
317  //- Access the models for phases that are moving
319 
320  //- Return the models for phases that are stationary
321  inline const phaseModelPartialList& stationaryPhases() const;
322 
323  //- Access the models for phases that are stationary
325 
326  //- Return the models for phases that have variable temperature
327  inline const phaseModelPartialList& anisothermalPhases() const;
328 
329  //- Access the models for phases that have variable temperature
331 
332  //- Return the models for phases that have multiple species
333  inline const phaseModelPartialList& multiComponentPhases() const;
334 
335  //- Access the models for phases that have multiple species
337 
338  //- Return the phase pairs
339  inline const phasePairTable& phasePairs() const;
340 
341  //- Return the mixture flux
342  inline const surfaceScalarField& phi() const;
343 
344  //- Access the mixture flux
345  inline surfaceScalarField& phi();
346 
347  //- Return the rate of change of the pressure
348  inline const volScalarField& dpdt() const;
349 
350  //- Access the rate of change of the pressure
351  inline volScalarField& dpdt();
352 
353  //- Return MRF zones
354  inline const IOMRFZoneList& MRF() const;
355 
356  //- Access the fvOptions
357  inline fv::options& fvOptions() const;
358 
359 
360  // Sub-model lookup
361 
362  //- Check availability of a sub model for a given phase pair
363  template<class modelType>
364  bool foundSubModel(const phasePair& key) const;
365 
366  //- Return a sub model between a phase pair
367  template<class modelType>
368  const modelType& lookupSubModel(const phasePair& key) const;
369 
370  //- Check availability of a sub model between two phases
371  template<class modelType>
372  bool foundSubModel
373  (
374  const phaseModel& dispersed,
375  const phaseModel& continuous
376  ) const;
377 
378  //- Return a sub model between two phases
379  template<class modelType>
380  const modelType& lookupSubModel
381  (
382  const phaseModel& dispersed,
383  const phaseModel& continuous
384  ) const;
385 
386  //- Check availability of a blended sub model for a given phase pair
387  template<class modelType>
388  bool foundBlendedSubModel(const phasePair& key) const;
389 
390  //- Return a blended sub model between a phase pair
391  template<class modelType>
393  lookupBlendedSubModel(const phasePair& key) const;
394 
395 
396  // Field construction
397 
398  //- Fill up gaps in a phase-indexed list of fields with zeros
399  template
400  <
401  class Type,
402  template<class> class PatchField,
403  class GeoMesh
404  >
405  void fillFields
406  (
407  const word& name,
408  const dimensionSet& dims,
410  ) const;
411 
412  //- Fill up gaps in a phase-indexed table of fields with zeros
413  template
414  <
415  class Type,
416  template<class> class PatchField,
417  class GeoMesh
418  >
419  void fillFields
420  (
421  const word& name,
422  const dimensionSet& dims,
424  fieldTable
425  ) const;
426 
427 
428  // Properties
429 
430  //- Return the mixture density
431  tmp<volScalarField> rho() const;
432 
433  //- Return the mixture velocity
434  tmp<volVectorField> U() const;
435 
436  //- Return the aspect-ratio for a pair
437  tmp<volScalarField> E(const phasePairKey& key) const;
438 
439  //- Return the surface tension coefficient for a pair
440  tmp<volScalarField> sigma(const phasePairKey& key) const;
441 
442  //- Return the mass transfer rate for a pair
443  virtual tmp<volScalarField> dmdt(const phasePairKey& key) const;
444 
445  //- Return the mass transfer rates for each phase
446  virtual PtrList<volScalarField> dmdts() const;
447 
448 
449  // Transfers
450 
451  //- Return the momentum transfer matrices for the cell-based
452  // algorithm
454 
455  //- Return the momentum transfer matrices for the face-based
456  // algorithm
458 
459  //- Return the implicit force coefficients for the face-based
460  // algorithm
461  virtual PtrList<surfaceScalarField> AFfs() const = 0;
462 
463  //- Return the force fluxes for the cell-based algorithm
465  (
467  ) = 0;
468 
469  //- Return the force fluxes for the face-based algorithm
471  (
473  ) = 0;
474 
475  //- Return the force fluxes for the cell-based algorithm
477  (
479  ) const = 0;
480 
481  //- Return the force fluxes for the face-based algorithm
483  (
485  ) const = 0;
486 
487  //- Return the explicit part of the drag force
489  (
491  ) const = 0;
492 
493  //- Solve the drag system for the new velocities and fluxes
494  virtual void partialElimination
495  (
497  ) = 0;
498 
499  //- Solve the drag system for the new fluxes
500  virtual void partialEliminationf
501  (
503  ) = 0;
504 
505  //- Return the flux corrections for the cell-based algorithm
507  (
509  const bool includeVirtualMass = false
510  ) const = 0;
511 
512  //- Return the phase diffusivities divided by the momentum
513  // coefficients
514  virtual const HashPtrTable<surfaceScalarField>& DByAfs() const = 0;
515 
516  //- Return the heat transfer matrices
517  virtual autoPtr<heatTransferTable> heatTransfer() const = 0;
518 
519  //- Return the mass transfer matrices
520  virtual autoPtr<massTransferTable> massTransfer() const = 0;
521 
522 
523  // Evolution
524 
525  //- Solve for the phase fractions
526  virtual void solve();
527 
528  //- Correct the fluid properties other than those listed below
529  virtual void correct();
530 
531  //- Correct the kinematics
532  virtual void correctKinematics();
533 
534  //- Correct the thermodynamics
535  virtual void correctThermo();
536 
537  //- Correct the turbulence
538  virtual void correctTurbulence();
539 
540  //- Correct the energy transport e.g. alphat
541  virtual void correctEnergyTransport();
542 
543 
544  // IO
545 
546  //- Read base phaseProperties dictionary
547  virtual bool read();
548 };
549 
550 
551 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
552 
555 
556 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
557 
558 } // End namespace Foam
559 
560 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
561 
562 #include "phaseSystemI.H"
563 
564 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
565 
566 #ifdef NoRepository
567  #include "phaseSystemTemplates.C"
568 #endif
569 
570 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
571 
572 #endif
573 
574 // ************************************************************************* //
Foam::phaseSystem::stationaryPhaseModels_
phaseModelPartialList stationaryPhaseModels_
Stationary phase models.
Definition: phaseSystem.H:135
Foam::phaseSystem::phaseModels_
phaseModelList phaseModels_
Phase models.
Definition: phaseSystem.H:129
volFields.H
Foam::phaseModel
Single incompressible phase derived from the phase-fraction. Used as part of the multiPhaseMixture fo...
Definition: phaseModel.H:54
Foam::phasePair
Description for mass transfer between a pair of phases. The direction of the mass transfer is from th...
Definition: phasePair.H:53
Foam::phaseSystem::momentumTransfer
virtual autoPtr< momentumTransferTable > momentumTransfer()=0
Return the momentum transfer matrices for the cell-based.
PtrListDictionary.H
Foam::phaseSystem::phaseModelPartialList
UPtrList< phaseModel > phaseModelPartialList
Definition: phaseSystem.H:85
Foam::phaseSystem::phasePairTable
HashTable< autoPtr< phasePair >, phasePairKey, phasePairKey::hash > phasePairTable
Definition: phaseSystem.H:89
rAUs
PtrList< volScalarField > rAUs
Definition: pEqn.H:4
Foam::phaseSystem::anisothermalPhases
const phaseModelPartialList & anisothermalPhases() const
Return the models for phases that have variable temperature.
Definition: phaseSystemI.H:79
Foam::phaseSystem::calcPhi
tmp< surfaceScalarField > calcPhi(const phaseModelList &phaseModels) const
Calculate and return the mixture flux.
Definition: phaseSystem.C:52
fvOptions.H
Foam::word
A class for handling words, derived from Foam::string.
Definition: word.H:62
Foam::phaseSystem::MRF_
IOMRFZoneList MRF_
Optional MRF zones.
Definition: phaseSystem.H:153
Foam::phaseSystem::phiFs
virtual PtrList< surfaceScalarField > phiFs(const PtrList< volScalarField > &rAUs)=0
Return the force fluxes for the cell-based algorithm.
Foam::phaseSystem::massTransfer
virtual autoPtr< massTransferTable > massTransfer() const =0
Return the mass transfer matrices.
Foam::phaseSystem::surfaceTensionModels_
surfaceTensionModelTable surfaceTensionModels_
Surface tension models.
Definition: phaseSystem.H:148
Foam::phase
Single incompressible phase derived from the phase-fraction. Used as part of the multiPhaseMixture fo...
Definition: phase.H:54
Foam::phaseSystem::phiKdPhifs
virtual PtrList< surfaceScalarField > phiKdPhifs(const PtrList< surfaceScalarField > &rAUfs) const =0
Return the force fluxes for the face-based algorithm.
Foam::phaseSystem::partialEliminationf
virtual void partialEliminationf(const PtrList< surfaceScalarField > &rAUfs)=0
Solve the drag system for the new fluxes.
Foam::tmp
A class for managing temporary objects.
Definition: PtrList.H:61
Foam::phaseSystem::phiKdPhis
virtual PtrList< surfaceScalarField > phiKdPhis(const PtrList< volScalarField > &rAUs) const =0
Return the force fluxes for the cell-based algorithm.
Foam::phaseSystem::sigma
tmp< volScalarField > sigma(const phasePairKey &key) const
Return the surface tension coefficient for a pair.
Definition: phaseSystem.C:319
Foam::phaseSystem::phasePairTable
HashTable< autoPtr< phasePair >, phasePairKey, phasePairKey::hash > phasePairTable
Definition: phaseSystem.H:77
Foam::phaseSystem::KdUByAs
virtual PtrList< volVectorField > KdUByAs(const PtrList< volScalarField > &rAUs) const =0
Return the explicit part of the drag force.
Foam::phaseSystem::movingPhaseModels_
phaseModelPartialList movingPhaseModels_
Moving phase models.
Definition: phaseSystem.H:132
Foam::phaseSystem::momentumTransferf
virtual autoPtr< momentumTransferTable > momentumTransferf()=0
Return the momentum transfer matrices for the face-based.
Foam::phaseSystem::fillFields
void fillFields(const word &name, const dimensionSet &dims, PtrList< GeometricField< Type, PatchField, GeoMesh >> &fieldList) const
Fill up gaps in a phase-indexed list of fields with zeros.
Definition: phaseSystemTemplates.C:307
phaseSystemI.H
Foam::phaseSystem::phaseSystem
phaseSystem(const fvMesh &mesh)
Construct from fvMesh.
Definition: phaseSystem.C:205
Foam::phaseSystem::dpdt
const volScalarField & dpdt() const
Return the rate of change of the pressure.
Definition: phaseSystemI.H:125
Foam::phaseSystem::createSubModels
void createSubModels(const dictTable &modelDicts, HashTable< autoPtr< modelType >, phasePairKey, phasePairKey::hash > &models)
Generate pairs and sub-model tables using pair keys.
Definition: phaseSystemTemplates.H:32
Foam::phaseSystem::blendingMethods_
blendingMethodTable blendingMethods_
Blending methods.
Definition: phaseSystem.H:156
Foam::phaseSystem::phi
const surfaceScalarField & phi() const
Constant access to the total flux.
Definition: phaseSystem.C:876
Foam::phaseSystem::addField
void addField(const phaseModel &phase, const word &fieldName, tmp< GeoField > field, PtrList< GeoField > &fieldList) const
Add the field to a phase-indexed list, with the given name,.
Definition: phaseSystemTemplates.C:223
fvMatricesFwd.H
Forward declarations of fvMatrix specializations.
Foam::phaseSystem::DByAfs
virtual const HashPtrTable< surfaceScalarField > & DByAfs() const =0
Return the phase diffusivities divided by the momentum.
surfaceFields.H
Foam::surfaceFields.
Foam::phaseSystem::U
tmp< volVectorField > U() const
Mixture U.
Definition: phaseSystem.C:1036
Foam::phaseSystem::lookupSubModel
const modelType & lookupSubModel(const phasePair &key) const
Access a sub model between a phase pair.
Definition: phaseSystemTemplates.H:179
Foam::dimensionSet
Dimension set for the base types.
Definition: dimensionSet.H:65
Foam::phaseSystem::~phaseSystem
virtual ~phaseSystem()
Destructor.
Definition: phaseSystem.C:292
Foam::phaseSystem::aspectRatioModelTable
HashTable< autoPtr< aspectRatioModel >, phasePairKey, phasePairKey::hash > aspectRatioModelTable
Definition: phaseSystem.H:120
Foam::phaseSystem::dictTable
HashTable< dictionary, phasePairKey, phasePairKey::hash > dictTable
Definition: phaseSystem.H:98
Foam::phaseSystem::dmdt
virtual tmp< volScalarField > dmdt(const phasePairKey &key) const =0
Return interfacial source mass rate per phase pair.
Definition: phaseSystem.C:338
Foam::baseIOdictionary::name
const word & name() const
Definition: baseIOdictionary.C:82
Foam::phaseSystem::dmdts
virtual PtrList< volScalarField > dmdts() const
Return the mass transfer rates for each phase.
Definition: phaseSystem.C:351
Foam::phaseSystem::foundSubModel
bool foundSubModel(const phasePair &key) const
Check availability of a sub model for a given phase pair.
Definition: phaseSystemTemplates.C:378
Foam::phaseSystem::heatTransferTable
HashPtrTable< fvScalarMatrix > heatTransferTable
Definition: phaseSystem.H:79
Foam::phasePairKey::hash
Ordered or unordered hashing of word pair.
Definition: phasePairKey.H:70
Foam::phaseSystem::multiComponentPhases
const phaseModelPartialList & multiComponentPhases() const
Return the models for phases that have multiple species.
Definition: phaseSystemI.H:93
Foam::PtrListDictionary< phaseModel >
Foam::phaseSystem::phi_
surfaceScalarField phi_
Mixture total volumetric flux.
Definition: phaseSystem.H:127
Foam::phaseSystem::generatePairsAndSubModels
void generatePairsAndSubModels(const word &modelName, HashTable< autoPtr< modelType >, phasePairKey, phasePairKey::hash > &models)
Generate pairs and sub-model tables.
Definition: phaseSystemTemplates.H:91
Foam::phaseSystem::heatTransfer
virtual autoPtr< heatTransferTable > heatTransfer() const =0
Return the heat transfer matrices.
Foam::phaseSystem::correctKinematics
virtual void correctKinematics()
Correct the kinematics.
Definition: phaseSystem.C:372
Foam::string::hash
Hashing function for string and derived string classes.
Definition: string.H:151
Foam::UPtrList< phaseModel >
Foam::phaseSystem::correct
virtual void correct()
Correct the mixture thermos.
Definition: phaseSystem.C:900
Foam::phaseSystem::mesh_
const fvMesh & mesh_
Reference to the mesh.
Definition: phaseSystem.H:118
Foam::phaseSystem::anisothermalPhaseModels_
phaseModelPartialList anisothermalPhaseModels_
Anisothermal phase models.
Definition: phaseSystem.H:138
Foam::phaseSystem::blendingMethodTable
HashTable< autoPtr< blendingMethod >, word, word::hash > blendingMethodTable
Definition: phaseSystem.H:102
field
rDeltaTY field()
Foam::PtrList
A list of pointers to objects of type <T>, with allocation/deallocation management of the pointers....
Definition: List.H:62
Foam::phaseSystem::ddtCorrByAs
virtual PtrList< surfaceScalarField > ddtCorrByAs(const PtrList< volScalarField > &rAUs, const bool includeVirtualMass=false) const =0
Return the flux corrections for the cell-based algorithm.
Foam::phaseSystem::fvOptions
fv::options & fvOptions() const
Access the fvOptions.
Definition: phaseSystemI.H:143
Foam::phasePairKey
Definition: phasePairKey.H:57
Foam::phaseSystem::partialElimination
virtual void partialElimination(const PtrList< volScalarField > &rAUs)=0
Solve the drag system for the new velocities and fluxes.
Foam::phaseSystem::lookupBlendedSubModel
const BlendedInterfacialModel< modelType > & lookupBlendedSubModel(const phasePair &key) const
Return a blended sub model between a phase pair.
Foam::fv::options
Finite-volume options.
Definition: fvOptions.H:55
Foam::phaseSystem::correctEnergyTransport
virtual void correctEnergyTransport()
Correct the energy transport e.g. alphat.
Definition: phaseSystem.C:409
Foam::phaseSystem::surfaceTensionModelTable
HashTable< autoPtr< surfaceTensionModel >, phasePairKey, phasePairKey::hash > surfaceTensionModelTable
Definition: phaseSystem.H:111
Foam::phaseSystem::movingPhases
const phaseModelPartialList & movingPhases() const
Return the models for phases that are moving.
Definition: phaseSystemI.H:51
Foam::phaseSystem::propertiesName
static const word propertiesName
Default name of the phase properties dictionary.
Definition: phaseSystem.H:287
Foam::phaseSystem::phiFfs
virtual PtrList< surfaceScalarField > phiFfs(const PtrList< surfaceScalarField > &rAUfs)=0
Return the force fluxes for the face-based algorithm.
Foam::GeoMesh
Generic mesh wrapper used by volMesh, surfaceMesh, pointMesh etc.
Definition: GeoMesh.H:48
Foam::fvMesh
Mesh data needed to do the Finite Volume discretisation.
Definition: fvMesh.H:83
phaseSystemTemplates.C
Foam
Namespace for OpenFOAM.
Definition: atmBoundaryLayer.C:33
Foam::phaseSystem::mesh
const fvMesh & mesh() const
Return mesh.
Definition: phaseSystem.C:979
IOMRFZoneList.H
Foam::phaseSystem::solve
virtual void solve()=0
Solve for the phase transport equations.
Definition: phaseSystem.C:359
Foam::HashTable
A HashTable similar to std::unordered_map.
Definition: HashTable.H:105
Foam::phaseSystem::massTransferTable
HashPtrTable< fvScalarMatrix > massTransferTable
Definition: phaseSystem.H:81
Foam::phaseSystem::phasePairs
const phasePairTable & phasePairs() const
Return the phase pairs.
Definition: phaseSystemI.H:107
Foam::phaseSystem::TypeName
TypeName("phaseSystem")
Runtime type information.
IOdictionary.H
Foam::phaseSystem::dpdt_
volScalarField dpdt_
Rate of change of pressure.
Definition: phaseSystem.H:150
Foam::phaseSystem::AFfs
virtual PtrList< surfaceScalarField > AFfs() const =0
Return the implicit force coefficients for the face-based.
Foam::autoPtr< surfaceTensionModel >
Foam::phaseSystem::correctTurbulence
virtual void correctTurbulence()
Correct the turbulence.
Definition: phaseSystem.C:911
Foam::phaseSystem::aspectRatioModels_
aspectRatioModelTable aspectRatioModels_
Aspect ratio models.
Definition: phaseSystem.H:165
Foam::phaseSystem::phaseModels_
phaseModelTable phaseModels_
Phase models.
Definition: phaseSystem.H:133
Foam::Pair
An ordered pair of two objects of type <T> with first() and second() elements.
Definition: Pair.H:54
Foam::HashPtrTable
A HashTable of pointers to objects of type <T>, with deallocation management of the pointers.
Definition: HashPtrTable.H:54
Foam::BlendedInterfacialModel
Definition: BlendedInterfacialModel.H:68
Foam::phaseSystem::phaseModelList
PtrListDictionary< phaseModel > phaseModelList
Definition: phaseSystem.H:83
HashPtrTable.H
Foam::IOMRFZoneList
List of MRF zones with IO functionality. MRF zones are specified by a list of dictionary entries,...
Definition: IOMRFZoneList.H:71
rAUfs
PtrList< surfaceScalarField > rAUfs
Definition: pEqn.H:30
Foam::phaseSystem::correctThermo
virtual void correctThermo()
Correct the thermodynamics.
Definition: phaseSystem.C:391
Foam::phaseSystem::phasePairs_
phasePairTable phasePairs_
Phase pairs.
Definition: phaseSystem.H:136
Foam::phaseSystem::foundBlendedSubModel
bool foundBlendedSubModel(const phasePair &key) const
Check availability of a blended sub model for a given phase pair.
Definition: phaseSystemTemplates.C:458
Foam::phaseSystem::phases
const phaseModelTable & phases() const
Constant access the phases.
Definition: phaseSystem.C:920
Foam::phaseSystem::momentumTransferTable
HashPtrTable< fvVectorMatrix > momentumTransferTable
Definition: phaseSystem.H:77
Foam::byDt
tmp< volScalarField > byDt(const volScalarField &vf)
Definition: phaseSystem.C:438
Foam::GeometricField< scalar, fvsPatchField, surfaceMesh >
Foam::phaseSystem::rho
virtual tmp< volScalarField > rho() const
Return the mixture density.
Definition: phaseSystem.C:377
Foam::phaseSystem::multiComponentPhaseModels_
phaseModelPartialList multiComponentPhaseModels_
Multi-component phase models.
Definition: phaseSystem.H:141
Foam::phaseSystem::stationaryPhases
const phaseModelPartialList & stationaryPhases() const
Return the models for phases that are stationary.
Definition: phaseSystemI.H:65
Foam::phaseSystem::read
virtual bool read()
Read base phaseProperties dictionary.
Definition: phaseSystem.C:1215
Foam::phaseSystem::E
tmp< volScalarField > E(const phasePairKey &key) const
Return the aspect-ratio for a pair.
Definition: phaseSystem.C:300
Foam::phaseSystem::generatePairs
void generatePairs(const dictTable &modelDicts)
Generate pairs.
Definition: phaseSystem.C:108
Foam::phaseSystem::MRF
const IOMRFZoneList & MRF() const
Return MRF zones.
Definition: phaseSystemI.H:137