This avoids potential hidden run-time errors caused by solvers running with boundary conditions which are not fully specified. Note that "null-constructor" here means the constructor from patch and internal field only, no data is provided. Constraint and simple BCs such as 'calculated', 'zeroGradient' and others which do not require user input to fully specify their operation remain on the null-constructor table for the construction of fields with for example all 'calculated' or all 'zeroGradient' BCs. A special version of the 'inletOutlet' fvPatchField named 'zeroInletOutlet' has been added in which the inlet value is hard-coded to zero which allows this BC to be included on the null-constructor table. This is useful for the 'age' functionObject to avoid the need to provide the 'age' volScalarField at time 0 unless special inlet or outlet BCs are required. Also for isothermalFilm in which the 'alpha' field is created automatically from the 'delta' field if it is not present and can inherit 'zeroInletOutlet' from 'delta' if appropriate. If a specific 'inletValue' is require or other more complex BCs then the 'alpha' field file must be provided to specify these BCs as before. Following this improvement it will now be possible to remove the null-constructors from all fvPatchFields not added to the null-constructor table, which is most of them, thus reducing the amount of code and maintenance overhead and making easier and more obvious to write new fvPatchField types.
40 lines
1.7 KiB
Bash
Executable File
40 lines
1.7 KiB
Bash
Executable File
#!/bin/sh
|
|
#------------------------------------------------------------------------------
|
|
# ========= |
|
|
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
# \\ / O peration | Website: https://openfoam.org
|
|
# \\ / A nd | Copyright (C) 2020-2023 OpenFOAM Foundation
|
|
# \\/ M anipulation |
|
|
#------------------------------------------------------------------------------
|
|
# License
|
|
# This file is part of OpenFOAM.
|
|
#
|
|
# OpenFOAM is free software: you can redistribute it and/or modify it
|
|
# under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation, either version 3 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
|
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
|
# for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
|
#
|
|
# Script
|
|
# reactingMultiphaseEulerFoam
|
|
#
|
|
# Description
|
|
# Script to inform the user that the reactingMultiphaseEulerFoam solver has
|
|
# been renamed and replaces the original multiphaseEulerFoam, providing
|
|
# much more general and extensible functionality.
|
|
#
|
|
#------------------------------------------------------------------------------
|
|
|
|
echo "The reactingMultiphaseEulerFoam solver has been renamed" \
|
|
"and replaces the original multiphaseEulerFoam,"
|
|
echo "providing much more general and extensible functionality."
|
|
|
|
#------------------------------------------------------------------------------
|