continuous.H
Go to the documentation of this file.
1 /*---------------------------------------------------------------------------*\
2  ========= |
3  \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4  \\ / O peration | Website: https://openfoam.org
5  \\ / A nd | Copyright (C) 2014-2022 OpenFOAM Foundation
6  \\/ M anipulation |
7 -------------------------------------------------------------------------------
8 License
9  This file is part of OpenFOAM.
10 
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.
15 
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.
20 
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/>.
23 
24 Class
25  Foam::blendingMethods::continuous
26 
27 Description
28  Blending method for the case in which the continuous phase is always the
29  same. E.g., for an air-particles flow, the air phase is always continuous.
30 
31  This method requires the continuous phase to be specified.
32 
33 SourceFiles
34  continuous.C
35 
36 \*---------------------------------------------------------------------------*/
37 
38 #ifndef continuous_H
39 #define continuous_H
40 
41 #include "blendingMethod.H"
42 
43 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
44 
45 namespace Foam
46 {
47 namespace blendingMethods
48 {
49 
50 /*---------------------------------------------------------------------------*\
51  Class continuous Declaration
52 \*---------------------------------------------------------------------------*/
53 
54 class continuous
55 :
56  public blendingMethod
57 {
58  // Private Data
59 
60  //- The continuous phase
61  const phaseModel& phase_;
62 
63 
64 protected:
65 
66  // Protected Member Functions
67 
68  //- Evaluate the blending function
70  (
71  const UPtrList<const volScalarField>& alphas,
72  const label phaseSet,
73  const label systemSet
74  ) const;
75 
76 
77 public:
78 
79  //- Runtime type information
80  TypeName("continuous");
81 
82 
83  // Constructors
84 
85  //- Construct from a dictionary and an interface
87  (
88  const dictionary& dict,
89  const phaseInterface& interface
90  );
91 
92 
93  //- Destructor
94  ~continuous();
95 
96 
97  // Member Functions
98 
99  //- Return whether or not a phase can be considered continuous
100  virtual bool canBeContinuous(const label index) const;
101 
102  //- Return whether or not this interface can segregate
103  virtual bool canSegregate() const;
104 };
105 
106 
107 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
108 
109 } // End namespace blendingMethods
110 } // End namespace Foam
111 
112 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
113 
114 #endif
115 
116 // ************************************************************************* //
dictionary dict
continuous(const dictionary &dict, const phaseInterface &interface)
Construct from a dictionary and an interface.
A list of keyword definitions, which are a keyword followed by any number of values (e...
Definition: dictionary.H:156
virtual tmp< volScalarField > fContinuous(const UPtrList< const volScalarField > &alphas, const label phaseSet, const label systemSet) const
Evaluate the blending function.
Blending method for the case in which the continuous phase is always the same. E.g., for an air-particles flow, the air phase is always continuous.
Definition: continuous.H:53
virtual bool canBeContinuous(const label index) const
Return whether or not a phase can be considered continuous.
Class to represent an interface between phases. Derivations can further specify the configuration of ...
Abstract base class for functions that are used to combine interfacial sub-models according to the vo...
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
Definition: UPtrList.H:54
TypeName("continuous")
Runtime type information.
virtual bool canSegregate() const
Return whether or not this interface can segregate.
A class for managing temporary objects.
Definition: PtrList.H:53
Single incompressible phase derived from the phase-fraction. Used as part of the multiPhaseMixture fo...
Definition: phaseModel.H:53
Namespace for OpenFOAM.