VollerPrakash.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) 2017 OpenCFD Ltd.
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::porousModels::VollerPrakash
28 
29 Description
30  Porous model to apply a porous media on a solid phase.
31 
32  Based on the references:
33  -# V.R. Voller and C. Prakash, A fixed grid numerical modelling
34  methodology for convection-diffusion mushy phase-change problems,
35  Int. J. Heat Mass Transfer 30(8):17091719, 1987.
36  -# C.R. Swaminathan. and V.R. Voller, A general enthalpy model for
37  modeling solidification processes, Metallurgical Transactions
38  23B:651664, 1992.
39 Usage
40  Example usage:
41  \verbatim
42  interfacePorous
43  (
44  (solid and liquid)
45  {
46  type VollerPrakash;
47  solidPhase alpha.solid;
48  Cu 1e7;
49  }
50  );
51  \endverbatim
52 
53  Where:
54 
55  \table
56  Property | Description | Required | Default value
57  solidPhase | Solid phase name | yes
58  Cu | Model constant | yes
59  \endtable
60 
61 SourceFiles
62  VollerPrakash.C
63 
64 \*---------------------------------------------------------------------------*/
65 
66 #ifndef porousModels_VollerPrakash_H
67 #define porousModels_VollerPrakash_H
68 
69 #include "porousModel.H"
70 
71 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
72 
73 namespace Foam
74 {
75 namespace porousModels
76 {
77 
78 /*---------------------------------------------------------------------------*\
79  Class VollerPrakash Declaration
80 \*---------------------------------------------------------------------------*/
81 
82 class VollerPrakash
83 :
84  public porousModel
85 {
86  // Private data
87 
88  //- Constant surface tension value
89  const scalar Cu_;
90 
91  //- Solid phase name
92  word solidPhase_;
93 
94 
95 public:
96 
97  //- Runtime type information
98  TypeName("VollerPrakash");
99 
100 
101  // Constructors
102 
103  //- Construct from a dictionary and a phase pair
105  (
106  const dictionary& dict,
107  const fvMesh& mesh
108  );
109 
110 
111  //- Destructor
112  virtual ~VollerPrakash() = default;
113 
114 
115  // Member Functions
116 
117  //- Aspect ratio
118  virtual tmp<volScalarField> S() const;
119 };
120 
121 
122 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
123 
124 } // End namespace porousModels
125 } // End namespace Foam
126 
127 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
128 
129 #endif
130 
131 // ************************************************************************* //
Foam::word
A class for handling words, derived from Foam::string.
Definition: word.H:65
Foam::tmp
A class for managing temporary objects.
Definition: PtrList.H:61
Foam::porousModels::VollerPrakash::VollerPrakash
VollerPrakash(const dictionary &dict, const fvMesh &mesh)
Construct from a dictionary and a phase pair.
Definition: VollerPrakash.C:52
Foam::porousModels::VollerPrakash
Porous model to apply a porous media on a solid phase.
Definition: VollerPrakash.H:94
Foam::porousModels::VollerPrakash::TypeName
TypeName("VollerPrakash")
Runtime type information.
Foam::porousModels::VollerPrakash::~VollerPrakash
virtual ~VollerPrakash()=default
Destructor.
porousModel.H
dict
dictionary dict
Definition: searchingEngine.H:14
Foam::dictionary
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Definition: dictionary.H:123
mesh
dynamicFvMesh & mesh
Definition: createDynamicFvMesh.H:6
Foam::fvMesh
Mesh data needed to do the Finite Volume discretisation.
Definition: fvMesh.H:85
Foam
Namespace for OpenFOAM.
Definition: atmBoundaryLayer.C:33
Foam::porousModel
Definition: porousModel.H:54
Foam::porousModels::VollerPrakash::S
virtual tmp< volScalarField > S() const
Aspect ratio.
Definition: VollerPrakash.C:66