Compare commits
1 Commits
develop.me
...
wip-meson-
| Author | SHA1 | Date | |
|---|---|---|---|
| ff25013ad5 |
@ -49,10 +49,10 @@
|
||||
|
||||
<!--
|
||||
Providing details of your set-up can help us identify any issues, e.g.
|
||||
OpenFOAM version : v2412|v2406|v2312|v2306|v2212 etc
|
||||
Operating system : ubuntu|openSUSE|RedHat etc
|
||||
OpenFOAM version : v2306|v2212|v2206|v2112|v2106 etc
|
||||
Operating system : ubuntu|openSUSE|centos etc
|
||||
Hardware info : any info that may help?
|
||||
Compiler : gcc|clang etc
|
||||
Compiler : gcc|intel|clang etc
|
||||
-->
|
||||
|
||||
- OpenFOAM version :
|
||||
|
||||
10
.gitmodules
vendored
10
.gitmodules
vendored
@ -1,8 +1,8 @@
|
||||
[submodule "cfmesh"]
|
||||
path = plugins/cfmesh
|
||||
path = modules/cfmesh
|
||||
url = https://develop.openfoam.com/Community/integration-cfmesh.git
|
||||
[submodule "avalanche"]
|
||||
path = plugins/avalanche
|
||||
path = modules/avalanche
|
||||
url = https://develop.openfoam.com/Community/avalanche.git
|
||||
[submodule "adios"]
|
||||
path = modules/adios
|
||||
@ -17,9 +17,3 @@
|
||||
[submodule "external-solver"]
|
||||
path = modules/external-solver
|
||||
url = https://develop.openfoam.com/Modules/external-solver.git
|
||||
[submodule "turbulence-community"]
|
||||
path = plugins/turbulence-community
|
||||
url = https://gitlab.com/openfoam/community/tc-turbulence/turbulence-community.git
|
||||
[submodule "plugins/data-community"]
|
||||
path = plugins/data-community
|
||||
url = https://gitlab.com/openfoam/community/sig-data-modelling/data-community.git
|
||||
|
||||
17
Allwmake
17
Allwmake
@ -68,34 +68,19 @@ src/Allwmake $targetType $*
|
||||
# OpenFOAM applications
|
||||
applications/Allwmake $targetType $*
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Additional components
|
||||
|
||||
# Additional components/modules
|
||||
case "$FOAM_MODULE_PREFIX" in
|
||||
(false | none)
|
||||
echo ========================================
|
||||
echo "OpenFOAM modules disabled (prefix=${FOAM_MODULE_PREFIX})"
|
||||
echo "Can be built separately:"
|
||||
echo
|
||||
echo " ./Allwmake-modules -prefix=..."
|
||||
echo
|
||||
echo ========================================
|
||||
echo
|
||||
;;
|
||||
(*)
|
||||
# Use wmake -all instead of Allwmake to allow for overrides
|
||||
( cd "$WM_PROJECT_DIR/modules" 2>/dev/null && wmake -all )
|
||||
|
||||
echo ========================================
|
||||
echo "The optional plugins can be built separately:"
|
||||
echo
|
||||
echo " ./Allwmake-plugins -prefix=..."
|
||||
echo
|
||||
echo ========================================
|
||||
echo
|
||||
esac
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Count files in given directory. Ignore "Test-*" binaries.
|
||||
_foamCountDirEntries()
|
||||
{
|
||||
|
||||
@ -1,37 +0,0 @@
|
||||
#!/bin/sh
|
||||
# Run from OPENFOAM top-level directory only
|
||||
cd "${0%/*}" || exit
|
||||
wmake -check-dir "$WM_PROJECT_DIR" 2>/dev/null || {
|
||||
echo "Error (${0##*/}) : not located in \$WM_PROJECT_DIR"
|
||||
echo " Check your OpenFOAM environment and installation"
|
||||
exit 1
|
||||
}
|
||||
if [ -f "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments ]
|
||||
then . "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments -no-recursion "$@" || \
|
||||
echo "Argument parse error"
|
||||
else
|
||||
echo "Error (${0##*/}) : WM_PROJECT_DIR appears to be incorrect"
|
||||
echo " Check your OpenFOAM environment and installation"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Additional components
|
||||
|
||||
case "$FOAM_MODULE_PREFIX" in
|
||||
(false | none)
|
||||
echo ========================================
|
||||
echo "OpenFOAM modules disabled (prefix=${FOAM_MODULE_PREFIX})"
|
||||
echo "Can be built separately:"
|
||||
echo
|
||||
echo " ./Allwmake-modules -prefix=..."
|
||||
echo
|
||||
echo ========================================
|
||||
echo
|
||||
;;
|
||||
(*)
|
||||
# Use wmake -all instead of Allwmake to allow for overrides
|
||||
( cd "$WM_PROJECT_DIR/modules" 2>/dev/null && wmake -all )
|
||||
esac
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
@ -1,37 +0,0 @@
|
||||
#!/bin/sh
|
||||
# Run from OPENFOAM top-level directory only
|
||||
cd "${0%/*}" || exit
|
||||
wmake -check-dir "$WM_PROJECT_DIR" 2>/dev/null || {
|
||||
echo "Error (${0##*/}) : not located in \$WM_PROJECT_DIR"
|
||||
echo " Check your OpenFOAM environment and installation"
|
||||
exit 1
|
||||
}
|
||||
if [ -f "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments ]
|
||||
then . "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments -no-recursion "$@" || \
|
||||
echo "Argument parse error"
|
||||
else
|
||||
echo "Error (${0##*/}) : WM_PROJECT_DIR appears to be incorrect"
|
||||
echo " Check your OpenFOAM environment and installation"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Additional components
|
||||
|
||||
case "$FOAM_MODULE_PREFIX" in
|
||||
(false | none)
|
||||
echo ========================================
|
||||
echo "OpenFOAM plugins disabled (prefix=${FOAM_MODULE_PREFIX})"
|
||||
echo "Can be built separately:"
|
||||
echo
|
||||
echo " ./Allwmake-plugins -prefix=..."
|
||||
echo
|
||||
echo ========================================
|
||||
echo
|
||||
;;
|
||||
(*)
|
||||
# Use wmake -all instead of Allwmake to allow for overrides
|
||||
( cd "$WM_PROJECT_DIR/plugins" 2>/dev/null && wmake -all )
|
||||
esac
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
@ -9,7 +9,6 @@ It is likely incomplete...
|
||||
- Yu Ankun
|
||||
- Tetsuo Aoyagi
|
||||
- Akira Azami
|
||||
- Pete Bachant
|
||||
- William Bainbridge
|
||||
- Gabriel Barajas
|
||||
- Kutalmis Bercin
|
||||
@ -27,7 +26,6 @@ It is likely incomplete...
|
||||
- Bernhard Gschaider
|
||||
- Andrew Heather
|
||||
- David Hill
|
||||
- Crist<73>bal Ib<49><62>ez
|
||||
- Yoshiaki Inoue
|
||||
- Mattijs Janssens
|
||||
- Andrew Jackson
|
||||
@ -35,7 +33,6 @@ It is likely incomplete...
|
||||
- Alexander Kabat vel Job
|
||||
- Thilo Knacke
|
||||
- Shannon Leakey
|
||||
- Sergey Lesnik
|
||||
- Tommaso Lucchini
|
||||
- Graham Macpherson
|
||||
- Alexey Matveichev
|
||||
@ -48,7 +45,6 @@ It is likely incomplete...
|
||||
- Victor Olesen
|
||||
- Evangelos Papoutsis-Kiachagias
|
||||
- Juho Peltola
|
||||
- Josep Pocurull
|
||||
- Johan Roenby
|
||||
- Henrik Rusche
|
||||
- Bruno Santos
|
||||
@ -63,7 +59,6 @@ It is likely incomplete...
|
||||
- Vuko Vukcevic
|
||||
- Yi Wang
|
||||
- Norbert Weber
|
||||
- Gregor Weiss
|
||||
- Volker Weissmann
|
||||
- Henry Weller
|
||||
- Niklas Wikstrom
|
||||
|
||||
@ -1,2 +1,2 @@
|
||||
api=2502
|
||||
api=2306
|
||||
patch=0
|
||||
|
||||
16
README.md
16
README.md
@ -40,9 +40,9 @@ Violations of the Trademark are monitored, and will be duly prosecuted.
|
||||
|
||||
If OpenFOAM has already been compiled on your system, simply source
|
||||
the appropriate `etc/bashrc` or `etc/cshrc` file and get started.
|
||||
For example, for the OpenFOAM-v2412 version:
|
||||
For example, for the OpenFOAM-v2306 version:
|
||||
```
|
||||
source /installation/path/OpenFOAM-v2412/etc/bashrc
|
||||
source /installation/path/OpenFOAM-v2306/etc/bashrc
|
||||
```
|
||||
|
||||
## Compiling OpenFOAM
|
||||
@ -127,8 +127,8 @@ These 3rd-party sources are normally located in a directory parallel
|
||||
to the OpenFOAM directory. For example,
|
||||
```
|
||||
/path/parent
|
||||
|-- OpenFOAM-v2412
|
||||
\-- ThirdParty-v2412
|
||||
|-- OpenFOAM-v2306
|
||||
\-- ThirdParty-v2306
|
||||
```
|
||||
There are, however, many cases where this simple convention is inadequate:
|
||||
|
||||
@ -136,7 +136,7 @@ There are, however, many cases where this simple convention is inadequate:
|
||||
operating system or cluster installation provides it)
|
||||
|
||||
* When we have changed the OpenFOAM directory name to some arbitrary
|
||||
directory name, e.g. openfoam-sandbox2412, etc..
|
||||
directory name, e.g. openfoam-sandbox2306, etc..
|
||||
|
||||
* When we would like any additional 3rd party software to be located
|
||||
inside of the OpenFOAM directory to ensure that the installation is
|
||||
@ -156,9 +156,9 @@ when locating the ThirdParty directory with the following precedence:
|
||||
2. PREFIX/ThirdParty-VERSION
|
||||
* this corresponds to the traditional approach
|
||||
3. PREFIX/ThirdParty-vAPI
|
||||
* allows for an updated value of VERSION, *eg*, `v2412-myCustom`,
|
||||
* allows for an updated value of VERSION, *eg*, `v2306-myCustom`,
|
||||
without requiring a renamed ThirdParty. The API value would still
|
||||
be `2412` and the original `ThirdParty-v2412/` would be found.
|
||||
be `2306` and the original `ThirdParty-v2306/` would be found.
|
||||
4. PREFIX/ThirdParty-API
|
||||
* same as the previous example, but using an unadorned API value.
|
||||
5. PREFIX/ThirdParty-common
|
||||
@ -213,4 +213,4 @@ ThirdParty directory will contain either an `Allwmake` file or a
|
||||
- [Governance](http://www.openfoam.com/governance/), [Governance Projects](https://www.openfoam.com/governance/projects)
|
||||
- [Contacting OpenCFD](http://www.openfoam.com/contact/)
|
||||
|
||||
Copyright 2016-2024 OpenCFD Ltd
|
||||
Copyright 2016-2022 OpenCFD Ltd
|
||||
|
||||
4
applications/meson.build
Normal file
4
applications/meson.build
Normal file
@ -0,0 +1,4 @@
|
||||
subdir('solvers')
|
||||
subdir('test')
|
||||
subdir('tools')
|
||||
subdir('utilities')
|
||||
@ -118,7 +118,7 @@ int main(int argc, char *argv[])
|
||||
fvm::laplacian(rAUf, p) == fvc::div(phiHbyA)
|
||||
);
|
||||
|
||||
pEqn.solve(p.select(piso.finalInnerIter()));
|
||||
pEqn.solve(mesh.solver(p.select(piso.finalInnerIter())));
|
||||
|
||||
phi = phiHbyA - pEqn.flux();
|
||||
|
||||
|
||||
32
applications/solvers/DNS/dnsFoam/meson.build
Normal file
32
applications/solvers/DNS/dnsFoam/meson.build
Normal file
@ -0,0 +1,32 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'dnsFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_meshTools,
|
||||
lib_randomProcesses,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/DNS/dnsFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/randomProcesses',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/DNS/dnsFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_dnsFoam = executable(
|
||||
'dnsFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
1
applications/solvers/DNS/meson.build
Normal file
1
applications/solvers/DNS/meson.build
Normal file
@ -0,0 +1 @@
|
||||
subdir('dnsFoam')
|
||||
37
applications/solvers/acoustic/acousticFoam/meson.build
Normal file
37
applications/solvers/acoustic/acousticFoam/meson.build
Normal file
@ -0,0 +1,37 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'acousticFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_fvOptions,
|
||||
lib_meshTools,
|
||||
lib_sampling,
|
||||
lib_regionFaModels,
|
||||
lib_finiteArea,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/acoustic/acousticFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/regionFaModels',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/sampling',
|
||||
'-I' + recursive_include_dirs / 'src/transportModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/acoustic/acousticFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_acousticFoam = executable(
|
||||
'acousticFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
1
applications/solvers/acoustic/meson.build
Normal file
1
applications/solvers/acoustic/meson.build
Normal file
@ -0,0 +1 @@
|
||||
subdir('acousticFoam')
|
||||
33
applications/solvers/basic/laplacianFoam/meson.build
Normal file
33
applications/solvers/basic/laplacianFoam/meson.build
Normal file
@ -0,0 +1,33 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'laplacianFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_fvOptions,
|
||||
lib_meshTools,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/basic/laplacianFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/basic/laplacianFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_laplacianFoam = executable(
|
||||
'laplacianFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
|
||||
subdir('overLaplacianDyMFoam')
|
||||
@ -0,0 +1,35 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'overLaplacianDyMFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_meshTools,
|
||||
lib_dynamicFvMesh,
|
||||
lib_overset,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/basic/laplacianFoam/overLaplacianDyMFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/dynamicFvMesh',
|
||||
'-I' + recursive_include_dirs / 'src/overset',
|
||||
'-I' + recursive_include_dirs / 'src/overset/include',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/basic/laplacianFoam/overLaplacianDyMFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_overLaplacianDyMFoam = executable(
|
||||
'overLaplacianDyMFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
3
applications/solvers/basic/meson.build
Normal file
3
applications/solvers/basic/meson.build
Normal file
@ -0,0 +1,3 @@
|
||||
subdir('laplacianFoam')
|
||||
subdir('potentialFoam')
|
||||
subdir('scalarTransportFoam')
|
||||
@ -13,14 +13,7 @@ volVectorField U
|
||||
);
|
||||
|
||||
// Initialise the velocity internal field to zero
|
||||
// Note: explicitly bypass evaluation of contraint patch overrides
|
||||
// (e.g. swirlFanVelocity might lookup phi,rho)
|
||||
//U = dimensionedVector(U.dimensions(), Zero);
|
||||
{
|
||||
const dimensionedVector dt(U.dimensions(), Zero);
|
||||
U.internalFieldRef() = dt;
|
||||
U.boundaryFieldRef() = dt.value();
|
||||
}
|
||||
U = dimensionedVector(U.dimensions(), Zero);
|
||||
|
||||
surfaceScalarField phi
|
||||
(
|
||||
|
||||
34
applications/solvers/basic/potentialFoam/meson.build
Normal file
34
applications/solvers/basic/potentialFoam/meson.build
Normal file
@ -0,0 +1,34 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'potentialFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_meshTools,
|
||||
lib_sampling,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/basic/potentialFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/sampling',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/basic/potentialFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_potentialFoam = executable(
|
||||
'potentialFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
|
||||
subdir('overPotentialFoam')
|
||||
@ -0,0 +1,36 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'overPotentialFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_meshTools,
|
||||
lib_dynamicFvMesh,
|
||||
lib_sampling,
|
||||
lib_overset,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/basic/potentialFoam/overPotentialFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/dynamicFvMesh',
|
||||
'-I' + recursive_include_dirs / 'src/sampling',
|
||||
'-I' + recursive_include_dirs / 'src/overset',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/basic/potentialFoam/overPotentialFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_overPotentialFoam = executable(
|
||||
'overPotentialFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
33
applications/solvers/basic/scalarTransportFoam/meson.build
Normal file
33
applications/solvers/basic/scalarTransportFoam/meson.build
Normal file
@ -0,0 +1,33 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'scalarTransportFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_fvOptions,
|
||||
lib_meshTools,
|
||||
lib_sampling,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/basic/scalarTransportFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/sampling',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/basic/scalarTransportFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_scalarTransportFoam = executable(
|
||||
'scalarTransportFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
@ -6,7 +6,6 @@
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
Copyright (C) 2023 OpenCFD Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of OpenFOAM.
|
||||
@ -94,14 +93,24 @@ Foam::PDRDragModels::basic::~basic()
|
||||
|
||||
Foam::tmp<Foam::volSymmTensorField> Foam::PDRDragModels::basic::Dcu() const
|
||||
{
|
||||
auto tDragDcu = volSymmTensorField::New
|
||||
tmp<volSymmTensorField> tDragDcu
|
||||
(
|
||||
"tDragDcu",
|
||||
IOobject::NO_REGISTER,
|
||||
U_.mesh(),
|
||||
dimensionedSymmTensor(dimMass/dimTime/dimVolume, Zero)
|
||||
new volSymmTensorField
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
"tDragDcu",
|
||||
U_.mesh().time().constant(),
|
||||
U_.mesh(),
|
||||
IOobject::NO_READ,
|
||||
IOobject::NO_WRITE
|
||||
),
|
||||
U_.mesh(),
|
||||
dimensionedSymmTensor(dimMass/dimTime/dimVolume, Zero)
|
||||
)
|
||||
);
|
||||
auto& DragDcu = tDragDcu.ref();
|
||||
|
||||
volSymmTensorField& DragDcu = tDragDcu.ref();
|
||||
|
||||
if (on_)
|
||||
{
|
||||
@ -118,14 +127,24 @@ Foam::tmp<Foam::volSymmTensorField> Foam::PDRDragModels::basic::Dcu() const
|
||||
|
||||
Foam::tmp<Foam::volScalarField> Foam::PDRDragModels::basic::Gk() const
|
||||
{
|
||||
auto tGk = volScalarField::New
|
||||
tmp<volScalarField> tGk
|
||||
(
|
||||
"tGk",
|
||||
IOobject::NO_REGISTER,
|
||||
U_.mesh(),
|
||||
dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero)
|
||||
new volScalarField
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
"tGk",
|
||||
U_.mesh().time().constant(),
|
||||
U_.mesh(),
|
||||
IOobject::NO_READ,
|
||||
IOobject::NO_WRITE
|
||||
),
|
||||
U_.mesh(),
|
||||
dimensionedScalar(dimMass/dimLength/pow3(dimTime), Zero)
|
||||
)
|
||||
);
|
||||
auto& Gk = tGk.ref();
|
||||
|
||||
volScalarField& Gk = tGk.ref();
|
||||
|
||||
if (on_)
|
||||
{
|
||||
|
||||
@ -69,8 +69,7 @@ Foam::XiEqModels::Gulder::~Gulder()
|
||||
Foam::tmp<Foam::volScalarField> Foam::XiEqModels::Gulder::XiEq() const
|
||||
{
|
||||
volScalarField up(sqrt((2.0/3.0)*turbulence_.k()));
|
||||
const tmp<volScalarField> tepsilon(turbulence_.epsilon());
|
||||
const volScalarField& epsilon = tepsilon();
|
||||
const volScalarField& epsilon = turbulence_.epsilon();
|
||||
|
||||
if (subGridSchelkin_)
|
||||
{
|
||||
|
||||
@ -6,7 +6,6 @@
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
Copyright (C) 2011-2016 OpenFOAM Foundation
|
||||
Copyright (C) 2023 OpenCFD Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of OpenFOAM.
|
||||
@ -76,10 +75,8 @@ Foam::XiEqModels::SCOPEXiEq::~SCOPEXiEq()
|
||||
|
||||
Foam::tmp<Foam::volScalarField> Foam::XiEqModels::SCOPEXiEq::XiEq() const
|
||||
{
|
||||
const tmp<volScalarField> tk(turbulence_.k());
|
||||
const volScalarField& k = tk();
|
||||
const tmp<volScalarField> tepsilon(turbulence_.epsilon());
|
||||
const volScalarField& epsilon = tepsilon();
|
||||
const volScalarField& k = turbulence_.k();
|
||||
const volScalarField& epsilon = turbulence_.epsilon();
|
||||
|
||||
volScalarField up(sqrt((2.0/3.0)*k));
|
||||
if (subGridSchelkin_)
|
||||
@ -94,14 +91,23 @@ Foam::tmp<Foam::volScalarField> Foam::XiEqModels::SCOPEXiEq::XiEq() const
|
||||
volScalarField K(0.157*upBySu/sqrt(Rl));
|
||||
volScalarField Ma(MaModel.Ma());
|
||||
|
||||
auto tXiEq = volScalarField::New
|
||||
tmp<volScalarField> tXiEq
|
||||
(
|
||||
"XiEq",
|
||||
IOobject::NO_REGISTER,
|
||||
epsilon.mesh(),
|
||||
dimensionedScalar(dimless, Zero)
|
||||
new volScalarField
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
"XiEq",
|
||||
epsilon.time().timeName(),
|
||||
epsilon.db(),
|
||||
IOobject::NO_READ,
|
||||
IOobject::NO_WRITE
|
||||
),
|
||||
epsilon.mesh(),
|
||||
dimensionedScalar(dimless, Zero)
|
||||
)
|
||||
);
|
||||
auto& xieq = tXiEq.ref();
|
||||
volScalarField& xieq = tXiEq.ref();
|
||||
|
||||
forAll(xieq, celli)
|
||||
{
|
||||
|
||||
@ -78,10 +78,11 @@ bool Foam::XiEqModel::read(const dictionary& XiEqProperties)
|
||||
void Foam::XiEqModel::writeFields() const
|
||||
{
|
||||
//***HGW It is not clear why B is written here
|
||||
const auto* B = Su_.mesh().cfindObject<volSymmTensorField>("B");
|
||||
if (B)
|
||||
if (Su_.mesh().foundObject<volSymmTensorField>("B"))
|
||||
{
|
||||
B->write();
|
||||
const volSymmTensorField& B =
|
||||
Su_.mesh().lookupObject<volSymmTensorField>("B");
|
||||
B.write();
|
||||
}
|
||||
}
|
||||
|
||||
@ -97,26 +98,39 @@ Foam::XiEqModel::calculateSchelkinEffect(const scalar uPrimeCoef) const
|
||||
const volSymmTensorField& nsv =
|
||||
mesh.lookupObject<volSymmTensorField>("nsv");
|
||||
|
||||
auto tN = volScalarField::New
|
||||
tmp<volScalarField> tN
|
||||
(
|
||||
"tN",
|
||||
IOobject::NO_REGISTER,
|
||||
mesh,
|
||||
dimensionedScalar(Nv.dimensions(), Zero)
|
||||
new volScalarField
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
"tN",
|
||||
mesh.time().timeName(),
|
||||
mesh,
|
||||
IOobject::NO_READ,
|
||||
IOobject::NO_WRITE,
|
||||
IOobject::NO_REGISTER
|
||||
),
|
||||
mesh,
|
||||
dimensionedScalar(Nv.dimensions(), Zero)
|
||||
)
|
||||
);
|
||||
auto& N = tN.ref();
|
||||
|
||||
volScalarField& N = tN.ref();
|
||||
N.primitiveFieldRef() = Nv.primitiveField()*pow(mesh.V(), 2.0/3.0);
|
||||
|
||||
auto tns = volSymmTensorField::New
|
||||
volSymmTensorField ns
|
||||
(
|
||||
"tns",
|
||||
IOobject::NO_REGISTER,
|
||||
IOobject
|
||||
(
|
||||
"tns",
|
||||
mesh.time().timeName(),
|
||||
mesh,
|
||||
IOobject::NO_READ,
|
||||
IOobject::NO_WRITE
|
||||
),
|
||||
mesh,
|
||||
dimensionedSymmTensor(nsv.dimensions(), Zero)
|
||||
);
|
||||
auto& ns = tns.ref();
|
||||
|
||||
ns.primitiveFieldRef() = nsv.primitiveField()*pow(mesh.V(), 2.0/3.0);
|
||||
|
||||
const volVectorField Uhat
|
||||
|
||||
@ -66,8 +66,7 @@ Foam::XiGModels::KTS::~KTS()
|
||||
Foam::tmp<Foam::volScalarField> Foam::XiGModels::KTS::G() const
|
||||
{
|
||||
volScalarField up(sqrt((2.0/3.0)*turbulence_.k()));
|
||||
const tmp<volScalarField> tepsilon(turbulence_.epsilon());
|
||||
const volScalarField& epsilon = tepsilon();
|
||||
const volScalarField& epsilon = turbulence_.epsilon();
|
||||
|
||||
volScalarField tauEta(sqrt(mag(thermo_.muu()/(thermo_.rhou()*epsilon))));
|
||||
|
||||
|
||||
@ -6,7 +6,6 @@
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
Copyright (C) 2011-2017 OpenFOAM Foundation
|
||||
Copyright (C) 2023 OpenCFD Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of OpenFOAM.
|
||||
@ -256,14 +255,24 @@ Foam::tmp<Foam::volScalarField> Foam::laminarFlameSpeedModels::SCOPE::Su0pTphi
|
||||
scalar phi
|
||||
) const
|
||||
{
|
||||
auto tSu0 = volScalarField::New
|
||||
tmp<volScalarField> tSu0
|
||||
(
|
||||
"Su0",
|
||||
IOobject::NO_REGISTER,
|
||||
p.mesh(),
|
||||
dimensionedScalar(dimVelocity, Zero)
|
||||
new volScalarField
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
"Su0",
|
||||
p.time().timeName(),
|
||||
p.db(),
|
||||
IOobject::NO_READ,
|
||||
IOobject::NO_WRITE
|
||||
),
|
||||
p.mesh(),
|
||||
dimensionedScalar(dimVelocity, Zero)
|
||||
)
|
||||
);
|
||||
auto& Su0 = tSu0.ref();
|
||||
|
||||
volScalarField& Su0 = tSu0.ref();
|
||||
|
||||
forAll(Su0, celli)
|
||||
{
|
||||
@ -295,14 +304,24 @@ Foam::tmp<Foam::volScalarField> Foam::laminarFlameSpeedModels::SCOPE::Su0pTphi
|
||||
const volScalarField& phi
|
||||
) const
|
||||
{
|
||||
auto tSu0 = volScalarField::New
|
||||
tmp<volScalarField> tSu0
|
||||
(
|
||||
"Su0",
|
||||
IOobject::NO_REGISTER,
|
||||
p.mesh(),
|
||||
dimensionedScalar(dimVelocity, Zero)
|
||||
new volScalarField
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
"Su0",
|
||||
p.time().timeName(),
|
||||
p.db(),
|
||||
IOobject::NO_READ,
|
||||
IOobject::NO_WRITE
|
||||
),
|
||||
p.mesh(),
|
||||
dimensionedScalar(dimVelocity, Zero)
|
||||
)
|
||||
);
|
||||
auto& Su0 = tSu0.ref();
|
||||
|
||||
volScalarField& Su0 = tSu0.ref();
|
||||
|
||||
forAll(Su0, celli)
|
||||
{
|
||||
@ -339,14 +358,24 @@ Foam::tmp<Foam::volScalarField> Foam::laminarFlameSpeedModels::SCOPE::Ma
|
||||
const volScalarField& phi
|
||||
) const
|
||||
{
|
||||
auto tMa = volScalarField::New
|
||||
tmp<volScalarField> tMa
|
||||
(
|
||||
"Ma",
|
||||
IOobject::NO_REGISTER,
|
||||
phi.mesh(),
|
||||
dimensionedScalar(dimless, Zero)
|
||||
new volScalarField
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
"Ma",
|
||||
phi.time().timeName(),
|
||||
phi.db(),
|
||||
IOobject::NO_READ,
|
||||
IOobject::NO_WRITE
|
||||
),
|
||||
phi.mesh(),
|
||||
dimensionedScalar(dimless, Zero)
|
||||
)
|
||||
);
|
||||
auto& ma = tMa.ref();
|
||||
|
||||
volScalarField& ma = tMa.ref();
|
||||
|
||||
forAll(ma, celli)
|
||||
{
|
||||
@ -389,12 +418,21 @@ Foam::laminarFlameSpeedModels::SCOPE::Ma() const
|
||||
{
|
||||
const fvMesh& mesh = psiuReactionThermo_.p().mesh();
|
||||
|
||||
return volScalarField::New
|
||||
return tmp<volScalarField>
|
||||
(
|
||||
"Ma",
|
||||
IOobject::NO_REGISTER,
|
||||
mesh,
|
||||
dimensionedScalar("Ma", dimless, Ma(equivalenceRatio_))
|
||||
new volScalarField
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
"Ma",
|
||||
mesh.time().timeName(),
|
||||
mesh,
|
||||
IOobject::NO_READ,
|
||||
IOobject::NO_WRITE
|
||||
),
|
||||
mesh,
|
||||
dimensionedScalar("Ma", dimless, Ma(equivalenceRatio_))
|
||||
)
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
79
applications/solvers/combustion/PDRFoam/meson.build
Normal file
79
applications/solvers/combustion/PDRFoam/meson.build
Normal file
@ -0,0 +1,79 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'XiModels/XiModel/XiModel.C',
|
||||
'XiModels/XiModel/XiModelNew.C',
|
||||
'XiModels/fixed/fixed.C',
|
||||
'XiModels/algebraic/algebraic.C',
|
||||
'XiModels/transport/transport.C',
|
||||
'XiModels/XiEqModels/XiEqModel/XiEqModel.C',
|
||||
'XiModels/XiEqModels/XiEqModel/XiEqModelNew.C',
|
||||
'XiModels/XiEqModels/Gulder/Gulder.C',
|
||||
'XiModels/XiEqModels/instabilityXiEq/instabilityXiEq.C',
|
||||
'XiModels/XiEqModels/SCOPEBlendXiEq/SCOPEBlendXiEq.C',
|
||||
'XiModels/XiEqModels/SCOPEXiEq/SCOPEXiEq.C',
|
||||
'XiModels/XiGModels/XiGModel/XiGModel.C',
|
||||
'XiModels/XiGModels/XiGModel/XiGModelNew.C',
|
||||
'XiModels/XiGModels/KTS/KTS.C',
|
||||
'XiModels/XiGModels/instabilityG/instabilityG.C',
|
||||
'PDRModels/turbulence/PDRkEpsilon/PDRkEpsilon.C',
|
||||
'PDRModels/dragModels/PDRDragModel/PDRDragModel.C',
|
||||
'PDRModels/dragModels/PDRDragModel/PDRDragModelNew.C',
|
||||
'PDRModels/dragModels/basic/basic.C',
|
||||
'PDRModels/XiEqModels/basicXiSubXiEq/basicXiSubXiEq.C',
|
||||
'PDRModels/XiGModels/basicXiSubG/basicXiSubG.C',
|
||||
'laminarFlameSpeed/SCOPE/SCOPELaminarFlameSpeed.C',
|
||||
'PDRFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_fvOptions,
|
||||
lib_meshTools,
|
||||
lib_engine,
|
||||
lib_turbulenceModels,
|
||||
lib_compressibleTurbulenceModels,
|
||||
lib_thermoTools,
|
||||
lib_compressibleTransportModels,
|
||||
lib_fluidThermophysicalModels,
|
||||
lib_reactionThermophysicalModels,
|
||||
lib_specie,
|
||||
lib_laminarFlameSpeedModels,
|
||||
lib_dynamicFvMesh,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/combustion/PDRFoam',
|
||||
'-I' + meson.source_root() / 'applications/solvers/combustion/PDRFoam/XiModels/XiModel',
|
||||
'-I' + meson.source_root() / 'applications/solvers/combustion/PDRFoam/XiModels/XiEqModels/XiEqModel',
|
||||
'-I' + meson.source_root() / 'applications/solvers/combustion/PDRFoam/XiModels/XiGModels/XiGModel',
|
||||
'-I' + meson.source_root() / 'applications/solvers/combustion/PDRFoam/PDRModels/dragModels/PDRDragModel',
|
||||
'-I' + meson.source_root() / 'applications/solvers/combustion/PDRFoam/laminarFlameSpeed/SCOPE',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/surfMesh',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/engine',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/specie',
|
||||
'-I' + recursive_include_dirs / 'src/transportModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/basic',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/reactionThermo',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/turbulenceModels',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/laminarFlameSpeed',
|
||||
'-I' + recursive_include_dirs / 'src/dynamicMesh',
|
||||
'-I' + recursive_include_dirs / 'src/dynamicFvMesh',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/combustion/PDRFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_PDRFoam = executable(
|
||||
'PDRFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
@ -27,7 +27,7 @@ if (pimple.transonic())
|
||||
betav*fvOptions(psi, p, rho.name())
|
||||
);
|
||||
|
||||
pEqn.solve(p.select(pimple.finalInnerIter()));
|
||||
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
|
||||
|
||||
if (pimple.finalNonOrthogonalIter())
|
||||
{
|
||||
@ -57,7 +57,7 @@ else
|
||||
betav*fvOptions(psi, p, rho.name())
|
||||
);
|
||||
|
||||
pEqn.solve(p.select(pimple.finalInnerIter()));
|
||||
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
|
||||
|
||||
if (pimple.finalNonOrthogonalIter())
|
||||
{
|
||||
|
||||
@ -36,13 +36,11 @@ Description
|
||||
if (adjustTimeStep)
|
||||
{
|
||||
scalar maxDeltaTFact = maxCo/(CoNum + StCoNum + SMALL);
|
||||
|
||||
const scalar deltaTFact =
|
||||
Foam::min(Foam::min(maxDeltaTFact, 1.0 + 0.1*maxDeltaTFact), 1.2);
|
||||
scalar deltaTFact = min(min(maxDeltaTFact, 1.0 + 0.1*maxDeltaTFact), 1.2);
|
||||
|
||||
runTime.setDeltaT
|
||||
(
|
||||
Foam::min
|
||||
min
|
||||
(
|
||||
deltaTFact*runTime.deltaTValue(),
|
||||
maxDeltaT
|
||||
|
||||
57
applications/solvers/combustion/XiFoam/XiDyMFoam/meson.build
Normal file
57
applications/solvers/combustion/XiFoam/XiDyMFoam/meson.build
Normal file
@ -0,0 +1,57 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'XiDyMFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_fvOptions,
|
||||
lib_meshTools,
|
||||
lib_dynamicMesh,
|
||||
lib_dynamicFvMesh,
|
||||
lib_topoChangerFvMesh,
|
||||
lib_sampling,
|
||||
lib_engine,
|
||||
lib_turbulenceModels,
|
||||
lib_compressibleTurbulenceModels,
|
||||
lib_thermoTools,
|
||||
lib_compressibleTransportModels,
|
||||
lib_fluidThermophysicalModels,
|
||||
lib_reactionThermophysicalModels,
|
||||
lib_specie,
|
||||
lib_laminarFlameSpeedModels,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/combustion/XiFoam/XiDyMFoam',
|
||||
'-I' + meson.source_root() / 'applications/solvers/combustion/XiFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/fvOptions',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/dynamicMesh',
|
||||
'-I' + recursive_include_dirs / 'src/dynamicFvMesh',
|
||||
'-I' + recursive_include_dirs / 'src/sampling',
|
||||
'-I' + recursive_include_dirs / 'src/engine',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/specie',
|
||||
'-I' + recursive_include_dirs / 'src/transportModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/basic',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/reactionThermo',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/turbulenceModels',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/laminarFlameSpeed',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/combustion/XiFoam/XiDyMFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_XiDyMFoam = executable(
|
||||
'XiDyMFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
@ -30,7 +30,7 @@ if (pimple.transonic())
|
||||
fvOptions(psi, p, rho.name())
|
||||
);
|
||||
|
||||
pEqn.solve(p.select(pimple.finalInnerIter()));
|
||||
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
|
||||
|
||||
if (pimple.finalNonOrthogonalIter())
|
||||
{
|
||||
@ -66,7 +66,7 @@ else
|
||||
fvOptions(psi, p, rho.name())
|
||||
);
|
||||
|
||||
pEqn.solve(p.select(pimple.finalInnerIter()));
|
||||
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
|
||||
|
||||
if (pimple.finalNonOrthogonalIter())
|
||||
{
|
||||
|
||||
@ -0,0 +1,51 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'XiEngineFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_fvOptions,
|
||||
lib_meshTools,
|
||||
lib_sampling,
|
||||
lib_engine,
|
||||
lib_turbulenceModels,
|
||||
lib_compressibleTurbulenceModels,
|
||||
lib_thermoTools,
|
||||
lib_compressibleTransportModels,
|
||||
lib_fluidThermophysicalModels,
|
||||
lib_reactionThermophysicalModels,
|
||||
lib_specie,
|
||||
lib_laminarFlameSpeedModels,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/combustion/XiFoam/XiEngineFoam',
|
||||
'-I' + meson.source_root() / 'applications/solvers/combustion/XiFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/sampling',
|
||||
'-I' + recursive_include_dirs / 'src/engine',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/specie',
|
||||
'-I' + recursive_include_dirs / 'src/transportModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/basic',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/reactionThermo',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/turbulenceModels',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/laminarFlameSpeed',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/combustion/XiFoam/XiEngineFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_XiEngineFoam = executable(
|
||||
'XiEngineFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
@ -35,7 +35,7 @@ if (pimple.transonic())
|
||||
fvOptions(psi, p, rho.name())
|
||||
);
|
||||
|
||||
pEqn.solve(p.select(pimple.finalInnerIter()));
|
||||
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
|
||||
|
||||
if (pimple.finalNonOrthogonalIter())
|
||||
{
|
||||
@ -71,7 +71,7 @@ else
|
||||
fvOptions(psi, p, rho.name())
|
||||
);
|
||||
|
||||
pEqn.solve(p.select(pimple.finalInnerIter()));
|
||||
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
|
||||
|
||||
if (pimple.finalNonOrthogonalIter())
|
||||
{
|
||||
|
||||
53
applications/solvers/combustion/XiFoam/meson.build
Normal file
53
applications/solvers/combustion/XiFoam/meson.build
Normal file
@ -0,0 +1,53 @@
|
||||
subdir('XiDyMFoam')
|
||||
subdir('XiEngineFoam')
|
||||
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'XiFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_fvOptions,
|
||||
lib_meshTools,
|
||||
lib_sampling,
|
||||
lib_engine,
|
||||
lib_turbulenceModels,
|
||||
lib_compressibleTurbulenceModels,
|
||||
lib_thermoTools,
|
||||
lib_compressibleTransportModels,
|
||||
lib_fluidThermophysicalModels,
|
||||
lib_reactionThermophysicalModels,
|
||||
lib_specie,
|
||||
lib_laminarFlameSpeedModels,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/combustion/XiFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/sampling',
|
||||
'-I' + recursive_include_dirs / 'src/engine',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/specie',
|
||||
'-I' + recursive_include_dirs / 'src/transportModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/basic',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/reactionThermo',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/turbulenceModels',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/laminarFlameSpeed',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/combustion/XiFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_XiFoam = executable(
|
||||
'XiFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
@ -29,7 +29,7 @@ if (pimple.transonic())
|
||||
fvOptions(psi, p, rho.name())
|
||||
);
|
||||
|
||||
pEqn.solve(p.select(pimple.finalInnerIter()));
|
||||
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
|
||||
|
||||
if (pimple.finalNonOrthogonalIter())
|
||||
{
|
||||
@ -64,7 +64,7 @@ else
|
||||
fvOptions(psi, p, rho.name())
|
||||
);
|
||||
|
||||
pEqn.solve(p.select(pimple.finalInnerIter()));
|
||||
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
|
||||
|
||||
if (pimple.finalNonOrthogonalIter())
|
||||
{
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
solve
|
||||
(
|
||||
fvm::ddt(rho, Yi) - chemistry.RR(specieI),
|
||||
"Yi"
|
||||
mesh.solver("Yi")
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
41
applications/solvers/combustion/chemFoam/meson.build
Normal file
41
applications/solvers/combustion/chemFoam/meson.build
Normal file
@ -0,0 +1,41 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'chemFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_meshTools,
|
||||
lib_fluidThermophysicalModels,
|
||||
lib_reactionThermophysicalModels,
|
||||
lib_chemistryModel,
|
||||
lib_thermophysicalProperties,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/combustion/chemFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/ODE',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/basic',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/specie',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/reactionThermo',
|
||||
'-I' + recursive_include_dirs / 'src/transportModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/chemistryModel',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/thermophysicalProperties',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/combustion/chemFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_chemFoam = executable(
|
||||
'chemFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
@ -1,6 +1,5 @@
|
||||
if (adjustTimeStep)
|
||||
{
|
||||
runTime.setDeltaT(Foam::min(dtChem, maxDeltaT));
|
||||
|
||||
runTime.setDeltaT(min(dtChem, maxDeltaT));
|
||||
Info<< "deltaT = " << runTime.deltaTValue() << endl;
|
||||
}
|
||||
|
||||
49
applications/solvers/combustion/coldEngineFoam/meson.build
Normal file
49
applications/solvers/combustion/coldEngineFoam/meson.build
Normal file
@ -0,0 +1,49 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'coldEngineFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_fvOptions,
|
||||
lib_meshTools,
|
||||
lib_engine,
|
||||
lib_turbulenceModels,
|
||||
lib_compressibleTurbulenceModels,
|
||||
lib_thermoTools,
|
||||
lib_compressibleTransportModels,
|
||||
lib_fluidThermophysicalModels,
|
||||
lib_specie,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/combustion/coldEngineFoam',
|
||||
'-I' + meson.source_root() / 'applications/solvers/combustion/XiFoam/XiEngineFoam',
|
||||
'-I' + meson.source_root() / 'applications/solvers/combustion/XiFoam',
|
||||
'-I' + meson.source_root() / 'applications/solvers/compressible/rhoPimpleFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/sampling',
|
||||
'-I' + recursive_include_dirs / 'src/engine',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/specie',
|
||||
'-I' + recursive_include_dirs / 'src/transportModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/basic',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/reactionThermo',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/turbulenceModels',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/combustion/coldEngineFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_coldEngineFoam = executable(
|
||||
'coldEngineFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
@ -35,7 +35,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
|
||||
|
||||
fvOptions.constrain(YiEqn);
|
||||
|
||||
YiEqn.solve("Yi");
|
||||
YiEqn.solve(mesh.solver("Yi"));
|
||||
|
||||
fvOptions.correct(Yi);
|
||||
|
||||
|
||||
81
applications/solvers/combustion/fireFoam/meson.build
Normal file
81
applications/solvers/combustion/fireFoam/meson.build
Normal file
@ -0,0 +1,81 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'fireFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_fvOptions,
|
||||
lib_meshTools,
|
||||
lib_sampling,
|
||||
lib_turbulenceModels,
|
||||
lib_compressibleTurbulenceModels,
|
||||
lib_thermoTools,
|
||||
lib_specie,
|
||||
lib_compressibleTransportModels,
|
||||
lib_fluidThermophysicalModels,
|
||||
lib_thermophysicalProperties,
|
||||
lib_reactionThermophysicalModels,
|
||||
lib_SLGThermo,
|
||||
lib_chemistryModel,
|
||||
lib_solidChemistryModel,
|
||||
lib_combustionModels,
|
||||
lib_regionModels,
|
||||
lib_radiationModels,
|
||||
lib_surfaceFilmModels,
|
||||
lib_surfaceFilmDerivedFvPatchFields,
|
||||
lib_pyrolysisModels,
|
||||
lib_regionCoupling,
|
||||
lib_lagrangian,
|
||||
lib_lagrangianIntermediate,
|
||||
lib_lagrangianTurbulence,
|
||||
lib_ODE,
|
||||
lib_regionFaModels,
|
||||
lib_finiteArea,
|
||||
lib_faOptions,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/combustion/fireFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/finiteArea',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/sampling',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/turbulenceModels',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/lagrangian/distributionModels',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/specie',
|
||||
'-I' + recursive_include_dirs / 'src/transportModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/basic',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/solidThermo',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/chemistryModel',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/solidChemistryModel',
|
||||
'-I' + recursive_include_dirs / 'src/combustionModels',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/thermophysicalProperties',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/reactionThermo',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/SLGThermo',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/radiation',
|
||||
'-I' + recursive_include_dirs / 'src/regionModels/regionModel',
|
||||
'-I' + recursive_include_dirs / 'src/regionModels/surfaceFilmModels',
|
||||
'-I' + recursive_include_dirs / 'src/regionModels/pyrolysisModels',
|
||||
'-I' + recursive_include_dirs / 'src/lagrangian/basic',
|
||||
'-I' + recursive_include_dirs / 'src/lagrangian/intermediate',
|
||||
'-I' + recursive_include_dirs / 'src/ODE',
|
||||
'-I' + recursive_include_dirs / 'src/regionFaModels',
|
||||
'-I' + recursive_include_dirs / 'src/faOptions',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/combustion/fireFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_fireFoam = executable(
|
||||
'fireFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
@ -36,7 +36,7 @@ while (pimple.correctNonOrthogonal())
|
||||
+ fvOptions(psi, p_rgh, rho.name())
|
||||
);
|
||||
|
||||
p_rghEqn.solve(p_rgh.select(pimple.finalInnerIter()));
|
||||
p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter())));
|
||||
|
||||
if (pimple.finalNonOrthogonalIter())
|
||||
{
|
||||
|
||||
@ -10,8 +10,7 @@ if (pimple.dict().getOrDefault("hydrostaticInitialization", false))
|
||||
"0",
|
||||
mesh,
|
||||
IOobject::MUST_READ,
|
||||
IOobject::NO_WRITE,
|
||||
IOobject::REGISTER
|
||||
IOobject::NO_WRITE
|
||||
),
|
||||
mesh
|
||||
)
|
||||
|
||||
@ -54,18 +54,9 @@ if (adjustTimeStep)
|
||||
|
||||
runTime.setDeltaT
|
||||
(
|
||||
Foam::min
|
||||
min
|
||||
(
|
||||
dt0
|
||||
* Foam::min
|
||||
(
|
||||
Foam::min
|
||||
(
|
||||
TFactorFluid,
|
||||
Foam::min(TFactorFilm, TFactorSolid)
|
||||
),
|
||||
1.2
|
||||
),
|
||||
dt0*min(min(TFactorFluid, min(TFactorFilm, TFactorSolid)), 1.2),
|
||||
maxDeltaT
|
||||
)
|
||||
);
|
||||
|
||||
6
applications/solvers/combustion/meson.build
Normal file
6
applications/solvers/combustion/meson.build
Normal file
@ -0,0 +1,6 @@
|
||||
subdir('PDRFoam')
|
||||
subdir('XiFoam')
|
||||
subdir('chemFoam')
|
||||
subdir('coldEngineFoam')
|
||||
subdir('fireFoam')
|
||||
subdir('reactingFoam')
|
||||
@ -21,11 +21,6 @@
|
||||
+ fvOptions(rho, he)
|
||||
);
|
||||
|
||||
if (MRF.active())
|
||||
{
|
||||
EEqn += fvc::div(MRF.phi(), p);
|
||||
}
|
||||
|
||||
EEqn.relax();
|
||||
|
||||
fvOptions.constrain(EEqn);
|
||||
|
||||
@ -34,7 +34,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
|
||||
|
||||
fvOptions.constrain(YiEqn);
|
||||
|
||||
YiEqn.solve("Yi");
|
||||
YiEqn.solve(mesh.solver("Yi"));
|
||||
|
||||
fvOptions.correct(Yi);
|
||||
|
||||
|
||||
55
applications/solvers/combustion/reactingFoam/meson.build
Normal file
55
applications/solvers/combustion/reactingFoam/meson.build
Normal file
@ -0,0 +1,55 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'reactingFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_fvOptions,
|
||||
lib_meshTools,
|
||||
lib_sampling,
|
||||
lib_turbulenceModels,
|
||||
lib_compressibleTurbulenceModels,
|
||||
lib_thermoTools,
|
||||
lib_reactionThermophysicalModels,
|
||||
lib_specie,
|
||||
lib_compressibleTransportModels,
|
||||
lib_fluidThermophysicalModels,
|
||||
lib_chemistryModel,
|
||||
lib_ODE,
|
||||
lib_combustionModels,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/combustion/reactingFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/sampling',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/turbulenceModels',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/specie',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/reactionThermo',
|
||||
'-I' + recursive_include_dirs / 'src/transportModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/basic',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/chemistryModel',
|
||||
'-I' + recursive_include_dirs / 'src/ODE',
|
||||
'-I' + recursive_include_dirs / 'src/combustionModels',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/combustion/reactingFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_reactingFoam = executable(
|
||||
'reactingFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
|
||||
subdir('rhoReactingBuoyantFoam')
|
||||
subdir('rhoReactingFoam')
|
||||
@ -37,7 +37,7 @@ if (pimple.transonic())
|
||||
fvOptions(psi, p, rho.name())
|
||||
);
|
||||
|
||||
pEqn.solve(p.select(pimple.finalInnerIter()));
|
||||
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
|
||||
|
||||
if (pimple.finalNonOrthogonalIter())
|
||||
{
|
||||
@ -72,7 +72,7 @@ else
|
||||
fvOptions(psi, p, rho.name())
|
||||
);
|
||||
|
||||
pEqn.solve(p.select(pimple.finalInnerIter()));
|
||||
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
|
||||
|
||||
if (pimple.finalNonOrthogonalIter())
|
||||
{
|
||||
|
||||
@ -49,7 +49,7 @@ if (pimple.transonic())
|
||||
fvOptions(psi, p, rho.name())
|
||||
);
|
||||
|
||||
pEqn.solve(p.select(pimple.finalInnerIter()));
|
||||
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
|
||||
|
||||
if (pimple.finalNonOrthogonalIter())
|
||||
{
|
||||
@ -89,7 +89,7 @@ else
|
||||
fvOptions(psi, p, rho.name())
|
||||
);
|
||||
|
||||
pEqn.solve(p.select(pimple.finalInnerIter()));
|
||||
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
|
||||
|
||||
if (pimple.finalNonOrthogonalIter())
|
||||
{
|
||||
|
||||
@ -0,0 +1,53 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'rhoReactingBuoyantFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_fvOptions,
|
||||
lib_meshTools,
|
||||
lib_sampling,
|
||||
lib_turbulenceModels,
|
||||
lib_compressibleTurbulenceModels,
|
||||
lib_thermoTools,
|
||||
lib_reactionThermophysicalModels,
|
||||
lib_specie,
|
||||
lib_compressibleTransportModels,
|
||||
lib_fluidThermophysicalModels,
|
||||
lib_chemistryModel,
|
||||
lib_ODE,
|
||||
lib_combustionModels,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/combustion/reactingFoam/rhoReactingBuoyantFoam',
|
||||
'-I' + meson.source_root() / 'applications/solvers/combustion/reactingFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/sampling',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/turbulenceModels',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/specie',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/reactionThermo',
|
||||
'-I' + recursive_include_dirs / 'src/transportModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/basic',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/chemistryModel',
|
||||
'-I' + recursive_include_dirs / 'src/ODE',
|
||||
'-I' + recursive_include_dirs / 'src/combustionModels',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/combustion/reactingFoam/rhoReactingBuoyantFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_rhoReactingBuoyantFoam = executable(
|
||||
'rhoReactingBuoyantFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
@ -41,7 +41,7 @@ while (pimple.correctNonOrthogonal())
|
||||
- fvm::laplacian(rhorAUf, p_rgh)
|
||||
);
|
||||
|
||||
p_rghEqn.solve(p_rgh.select(pimple.finalInnerIter()));
|
||||
p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter())));
|
||||
|
||||
if (pimple.finalNonOrthogonalIter())
|
||||
{
|
||||
|
||||
@ -0,0 +1,53 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'rhoReactingFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_fvOptions,
|
||||
lib_meshTools,
|
||||
lib_sampling,
|
||||
lib_turbulenceModels,
|
||||
lib_compressibleTurbulenceModels,
|
||||
lib_thermoTools,
|
||||
lib_reactionThermophysicalModels,
|
||||
lib_specie,
|
||||
lib_compressibleTransportModels,
|
||||
lib_fluidThermophysicalModels,
|
||||
lib_chemistryModel,
|
||||
lib_ODE,
|
||||
lib_combustionModels,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/combustion/reactingFoam/rhoReactingFoam',
|
||||
'-I' + meson.source_root() / 'applications/solvers/combustion/reactingFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/sampling',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/turbulenceModels',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/specie',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/reactionThermo',
|
||||
'-I' + recursive_include_dirs / 'src/transportModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/basic',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/chemistryModel',
|
||||
'-I' + recursive_include_dirs / 'src/ODE',
|
||||
'-I' + recursive_include_dirs / 'src/combustionModels',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/combustion/reactingFoam/rhoReactingFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_rhoReactingFoam = executable(
|
||||
'rhoReactingFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
@ -6,7 +6,7 @@
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
Copyright (C) 2013-2016 OpenFOAM Foundation
|
||||
Copyright (C) 2020,2025 OpenCFD Ltd.
|
||||
Copyright (C) 2020 OpenCFD Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of OpenFOAM.
|
||||
@ -57,23 +57,11 @@ License
|
||||
// (relative to reference value)
|
||||
scalar alphaY(pimpleDict.getOrDefault<scalar>("alphaY", 1.0));
|
||||
|
||||
|
||||
// The old reciprocal time scale field, with any damping factor
|
||||
tmp<volScalarField> rDeltaT0_damped;
|
||||
|
||||
// Calculate damped value before applying any other changes
|
||||
if
|
||||
(
|
||||
rDeltaTDampingCoeff < 1
|
||||
&& runTime.timeIndex() > runTime.startTimeIndex() + 1
|
||||
)
|
||||
{
|
||||
rDeltaT0_damped = (scalar(1) - rDeltaTDampingCoeff)*(rDeltaT);
|
||||
}
|
||||
|
||||
|
||||
Info<< "Time scales min/max:" << endl;
|
||||
|
||||
// Cache old reciprocal time scale field
|
||||
volScalarField rDeltaT0("rDeltaT0", rDeltaT);
|
||||
|
||||
// Flow time scale
|
||||
{
|
||||
rDeltaT.ref() =
|
||||
@ -82,14 +70,12 @@ License
|
||||
/((2*maxCo)*mesh.V()*rho())
|
||||
);
|
||||
|
||||
// Limit the largest time scale (=> smallest reciprocal time)
|
||||
rDeltaT.clamp_min(1/maxDeltaT);
|
||||
|
||||
auto limits = gMinMax(rDeltaT.primitiveField());
|
||||
limits.reset(1/(limits.max()+VSMALL), 1/(limits.min()+VSMALL));
|
||||
// Limit the largest time scale
|
||||
rDeltaT.max(1/maxDeltaT);
|
||||
|
||||
Info<< " Flow = "
|
||||
<< limits.min() << ", " << limits.max() << endl;
|
||||
<< 1/gMax(rDeltaT.primitiveField()) << ", "
|
||||
<< 1/gMin(rDeltaT.primitiveField()) << endl;
|
||||
}
|
||||
|
||||
// Heat release rate time scale
|
||||
@ -100,13 +86,11 @@ License
|
||||
mag(Qdot)/(alphaTemp*rho*thermo.Cp()*T)
|
||||
);
|
||||
|
||||
rDeltaT.primitiveFieldRef().clamp_min(rDeltaTT);
|
||||
|
||||
auto limits = gMinMax(rDeltaTT.field());
|
||||
limits.reset(1/(limits.max()+VSMALL), 1/(limits.min()+VSMALL));
|
||||
|
||||
Info<< " Temperature = "
|
||||
<< limits.min() << ", " << limits.max() << endl;
|
||||
<< 1/(gMax(rDeltaTT.field()) + VSMALL) << ", "
|
||||
<< 1/(gMin(rDeltaTT.field()) + VSMALL) << endl;
|
||||
|
||||
rDeltaT.ref() = max(rDeltaT(), rDeltaTT);
|
||||
}
|
||||
|
||||
// Reaction rate time scale
|
||||
@ -154,13 +138,11 @@ License
|
||||
|
||||
if (foundY)
|
||||
{
|
||||
rDeltaT.primitiveFieldRef().clamp_min(rDeltaTY);
|
||||
|
||||
auto limits = gMinMax(rDeltaTY.field());
|
||||
limits.reset(1/(limits.max()+VSMALL), 1/(limits.min()+VSMALL));
|
||||
|
||||
Info<< " Composition = "
|
||||
<< limits.min() << ", " << limits.max() << endl;
|
||||
<< 1/(gMax(rDeltaTY.field()) + VSMALL) << ", "
|
||||
<< 1/(gMin(rDeltaTY.field()) + VSMALL) << endl;
|
||||
|
||||
rDeltaT.ref() = max(rDeltaT(), rDeltaTY);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -179,22 +161,28 @@ License
|
||||
fvc::smooth(rDeltaT, rDeltaTSmoothingCoeff);
|
||||
}
|
||||
|
||||
// Limit rate of change of time scale (=> smallest reciprocal time)
|
||||
// Limit rate of change of time scale
|
||||
// - reduce as much as required
|
||||
// - only increase at a fraction of old time scale
|
||||
if (rDeltaT0_damped)
|
||||
if
|
||||
(
|
||||
rDeltaTDampingCoeff < 1
|
||||
&& runTime.timeIndex() > runTime.startTimeIndex() + 1
|
||||
)
|
||||
{
|
||||
rDeltaT.clamp_min(rDeltaT0_damped());
|
||||
rDeltaT = max
|
||||
(
|
||||
rDeltaT,
|
||||
(scalar(1) - rDeltaTDampingCoeff)*rDeltaT0
|
||||
);
|
||||
}
|
||||
|
||||
// Update tho boundary values of the reciprocal time-step
|
||||
rDeltaT.correctBoundaryConditions();
|
||||
|
||||
auto limits = gMinMax(rDeltaT.field());
|
||||
limits.reset(1/(limits.max()+VSMALL), 1/(limits.min()+VSMALL));
|
||||
|
||||
Info<< " Overall = "
|
||||
<< limits.min() << ", " << limits.max() << endl;
|
||||
<< 1/gMax(rDeltaT.primitiveField())
|
||||
<< ", " << 1/gMin(rDeltaT.primitiveField()) << endl;
|
||||
}
|
||||
|
||||
|
||||
|
||||
5
applications/solvers/compressible/meson.build
Normal file
5
applications/solvers/compressible/meson.build
Normal file
@ -0,0 +1,5 @@
|
||||
subdir('rhoCentralFoam')
|
||||
subdir('rhoPimpleAdiabaticFoam')
|
||||
subdir('rhoPimpleFoam')
|
||||
subdir('rhoSimpleFoam')
|
||||
subdir('sonicFoam')
|
||||
@ -6,7 +6,7 @@
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
Copyright (C) 2011-2015 OpenFOAM Foundation
|
||||
Copyright (C) 2020,2025 OpenCFD Ltd.
|
||||
Copyright (C) 2020 OpenCFD Ltd.
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
This file is part of OpenFOAM.
|
||||
@ -106,7 +106,7 @@ Foam::smoluchowskiJumpTFvPatchScalarField::smoluchowskiJumpTFvPatchScalarField
|
||||
if (!this->readValueEntry(dict))
|
||||
{
|
||||
// Fallback: set to the internal field
|
||||
this->extrapolateInternal();
|
||||
fvPatchField<scalar>::patchInternalField(*this);
|
||||
}
|
||||
|
||||
refValue() = *this;
|
||||
|
||||
@ -110,6 +110,15 @@ public:
|
||||
const fvPatchFieldMapper&
|
||||
);
|
||||
|
||||
//- Construct and return a clone
|
||||
virtual tmp<fvPatchScalarField> clone() const
|
||||
{
|
||||
return tmp<fvPatchScalarField>
|
||||
(
|
||||
new smoluchowskiJumpTFvPatchScalarField(*this)
|
||||
);
|
||||
}
|
||||
|
||||
//- Construct as copy setting internal field reference
|
||||
smoluchowskiJumpTFvPatchScalarField
|
||||
(
|
||||
@ -117,22 +126,18 @@ public:
|
||||
const DimensionedField<scalar, volMesh>&
|
||||
);
|
||||
|
||||
//- Return a clone
|
||||
virtual tmp<fvPatchField<scalar>> clone() const
|
||||
{
|
||||
return fvPatchField<scalar>::Clone(*this);
|
||||
}
|
||||
|
||||
//- Clone with an internal field reference
|
||||
virtual tmp<fvPatchField<scalar>> clone
|
||||
//- Construct and return a clone setting internal field reference
|
||||
virtual tmp<fvPatchScalarField> clone
|
||||
(
|
||||
const DimensionedField<scalar, volMesh>& iF
|
||||
) const
|
||||
{
|
||||
return fvPatchField<scalar>::Clone(*this, iF);
|
||||
return tmp<fvPatchScalarField>
|
||||
(
|
||||
new smoluchowskiJumpTFvPatchScalarField(*this, iF)
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
// Mapping functions
|
||||
|
||||
//- Map (and resize as needed) from self given a mapping object
|
||||
|
||||
@ -118,6 +118,15 @@ public:
|
||||
const fvPatchFieldMapper&
|
||||
);
|
||||
|
||||
//- Construct and return a clone
|
||||
virtual tmp<fvPatchVectorField> clone() const
|
||||
{
|
||||
return tmp<fvPatchVectorField>
|
||||
(
|
||||
new maxwellSlipUFvPatchVectorField(*this)
|
||||
);
|
||||
}
|
||||
|
||||
//- Construct as copy setting internal field reference
|
||||
maxwellSlipUFvPatchVectorField
|
||||
(
|
||||
@ -125,19 +134,16 @@ public:
|
||||
const DimensionedField<vector, volMesh>&
|
||||
);
|
||||
|
||||
//- Return a clone
|
||||
virtual tmp<fvPatchField<vector>> clone() const
|
||||
{
|
||||
return fvPatchField<vector>::Clone(*this);
|
||||
}
|
||||
|
||||
//- Clone with an internal field reference
|
||||
virtual tmp<fvPatchField<vector>> clone
|
||||
//- Construct and return a clone setting internal field reference
|
||||
virtual tmp<fvPatchVectorField> clone
|
||||
(
|
||||
const DimensionedField<vector, volMesh>& iF
|
||||
) const
|
||||
{
|
||||
return fvPatchField<vector>::Clone(*this, iF);
|
||||
return tmp<fvPatchVectorField>
|
||||
(
|
||||
new maxwellSlipUFvPatchVectorField(*this, iF)
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -0,0 +1,33 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'U/maxwellSlipUFvPatchVectorField.C',
|
||||
'T/smoluchowskiJumpTFvPatchScalarField.C',
|
||||
'rho/fixedRhoFvPatchScalarField.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_finiteVolume,
|
||||
lib_compressibleTransportModels,
|
||||
lib_fluidThermophysicalModels,
|
||||
lib_specie,
|
||||
]
|
||||
dependencies = []
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/compressible/rhoCentralFoam/BCs',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/transportModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/basic',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/specie',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/compressible/rhoCentralFoam/BCs',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
lib_rhoCentralFoam = library(
|
||||
'rhoCentralFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
pkg.generate(lib_rhoCentralFoam)
|
||||
@ -135,6 +135,15 @@ public:
|
||||
const fixedRhoFvPatchScalarField&
|
||||
);
|
||||
|
||||
//- Construct and return a clone
|
||||
virtual tmp<fvPatchScalarField> clone() const
|
||||
{
|
||||
return tmp<fvPatchScalarField>
|
||||
(
|
||||
new fixedRhoFvPatchScalarField(*this)
|
||||
);
|
||||
}
|
||||
|
||||
//- Construct as copy setting internal field reference
|
||||
fixedRhoFvPatchScalarField
|
||||
(
|
||||
@ -142,19 +151,16 @@ public:
|
||||
const DimensionedField<scalar, volMesh>&
|
||||
);
|
||||
|
||||
//- Return a clone
|
||||
virtual tmp<fvPatchField<scalar>> clone() const
|
||||
{
|
||||
return fvPatchField<scalar>::Clone(*this);
|
||||
}
|
||||
|
||||
//- Clone with an internal field reference
|
||||
virtual tmp<fvPatchField<scalar>> clone
|
||||
//- Construct and return a clone setting internal field reference
|
||||
virtual tmp<fvPatchScalarField> clone
|
||||
(
|
||||
const DimensionedField<scalar, volMesh>& iF
|
||||
) const
|
||||
{
|
||||
return fvPatchField<scalar>::Clone(*this, iF);
|
||||
return tmp<fvPatchScalarField>
|
||||
(
|
||||
new fixedRhoFvPatchScalarField(*this, iF)
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -1,9 +1,10 @@
|
||||
volScalarField& p = thermo.p();
|
||||
const volScalarField& T = thermo.T();
|
||||
const volScalarField& psi = thermo.psi();
|
||||
const volScalarField& mu = thermo.mu();
|
||||
|
||||
bool inviscid(true);
|
||||
if (max(thermo.mu().cref().primitiveField()) > 0.0)
|
||||
if (max(mu.primitiveField()) > 0.0)
|
||||
{
|
||||
inviscid = false;
|
||||
}
|
||||
|
||||
49
applications/solvers/compressible/rhoCentralFoam/meson.build
Normal file
49
applications/solvers/compressible/rhoCentralFoam/meson.build
Normal file
@ -0,0 +1,49 @@
|
||||
subdir('BCs')
|
||||
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'rhoCentralFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_fvOptions,
|
||||
lib_meshTools,
|
||||
lib_compressibleTransportModels,
|
||||
lib_fluidThermophysicalModels,
|
||||
lib_specie,
|
||||
lib_rhoCentralFoam,
|
||||
lib_turbulenceModels,
|
||||
lib_compressibleTurbulenceModels,
|
||||
lib_thermoTools,
|
||||
lib_dynamicFvMesh,
|
||||
lib_topoChangerFvMesh,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/compressible/rhoCentralFoam',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/compressible/rhoCentralFoam/BCs',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/transportModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/basic',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/specie',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/turbulenceModels',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/dynamicFvMesh',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/compressible/rhoCentralFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_rhoCentralFoam = executable(
|
||||
'rhoCentralFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
@ -23,11 +23,7 @@
|
||||
|
||||
fvc::smooth(rDeltaT, rDeltaTSmoothingCoeff);
|
||||
|
||||
{
|
||||
auto limits = gMinMax(rDeltaT.primitiveField());
|
||||
limits.reset(1/(limits.max()+VSMALL), 1/(limits.min()+VSMALL));
|
||||
|
||||
Info<< "Flow time scale min/max = "
|
||||
<< limits.min() << ", " << limits.max() << endl;
|
||||
}
|
||||
Info<< "Flow time scale min/max = "
|
||||
<< gMin(1/rDeltaT.primitiveField())
|
||||
<< ", " << gMax(1/rDeltaT.primitiveField()) << endl;
|
||||
}
|
||||
|
||||
@ -0,0 +1,44 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'rhoPimpleAdiabaticFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_fvOptions,
|
||||
lib_meshTools,
|
||||
lib_sampling,
|
||||
lib_compressibleTransportModels,
|
||||
lib_fluidThermophysicalModels,
|
||||
lib_specie,
|
||||
lib_turbulenceModels,
|
||||
lib_compressibleTurbulenceModels,
|
||||
lib_thermoTools,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/compressible/rhoPimpleAdiabaticFoam',
|
||||
'-I' + meson.source_root() / 'src/finiteVolume/cfdTools',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/sampling',
|
||||
'-I' + recursive_include_dirs / 'src/transportModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/basic',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/turbulenceModels',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/compressible/rhoPimpleAdiabaticFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_rhoPimpleAdiabaticFoam = executable(
|
||||
'rhoPimpleAdiabaticFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
@ -63,7 +63,7 @@
|
||||
fvOptions(psi, p, rho.name())
|
||||
);
|
||||
|
||||
pEqn.solve(p.select(pimple.finalInnerIter()));
|
||||
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
|
||||
|
||||
// Rhie & Chow interpolation (part 2)
|
||||
if (pimple.finalNonOrthogonalIter())
|
||||
|
||||
@ -20,11 +20,6 @@
|
||||
fvOptions(rho, he)
|
||||
);
|
||||
|
||||
if (MRF.active())
|
||||
{
|
||||
EEqn += fvc::div(MRF.phi(), p);
|
||||
}
|
||||
|
||||
EEqn.relax();
|
||||
|
||||
fvOptions.constrain(EEqn);
|
||||
|
||||
55
applications/solvers/compressible/rhoPimpleFoam/meson.build
Normal file
55
applications/solvers/compressible/rhoPimpleFoam/meson.build
Normal file
@ -0,0 +1,55 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'rhoPimpleFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_fvOptions,
|
||||
lib_meshTools,
|
||||
lib_compressibleTransportModels,
|
||||
lib_fluidThermophysicalModels,
|
||||
lib_specie,
|
||||
lib_turbulenceModels,
|
||||
lib_compressibleTurbulenceModels,
|
||||
lib_thermoTools,
|
||||
lib_dynamicMesh,
|
||||
lib_dynamicFvMesh,
|
||||
lib_topoChangerFvMesh,
|
||||
lib_sampling,
|
||||
lib_atmosphericModels,
|
||||
lib_regionFaModels,
|
||||
lib_finiteArea,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/compressible/rhoPimpleFoam',
|
||||
'-I' + meson.source_root() / 'src/finiteVolume/cfdTools',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/dynamicMesh',
|
||||
'-I' + recursive_include_dirs / 'src/dynamicFvMesh',
|
||||
'-I' + recursive_include_dirs / 'src/sampling',
|
||||
'-I' + recursive_include_dirs / 'src/transportModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/basic',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/turbulenceModels',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/regionFaModels',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/compressible/rhoPimpleFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_rhoPimpleFoam = executable(
|
||||
'rhoPimpleFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
|
||||
subdir('overRhoPimpleDyMFoam')
|
||||
@ -72,7 +72,7 @@ if (mesh.changing())
|
||||
divrhoU()
|
||||
);
|
||||
|
||||
pcorrEqn.solve(pcorr.select(pimple.finalInnerIter()));
|
||||
pcorrEqn.solve(mesh.solver(pcorr.select(pimple.finalInnerIter())));
|
||||
//Bypass virtual layer
|
||||
//mesh.fvMesh::solve(pcorrEqn, d);
|
||||
|
||||
|
||||
@ -0,0 +1,50 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'overRhoPimpleDyMFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_fvOptions,
|
||||
lib_meshTools,
|
||||
lib_compressibleTransportModels,
|
||||
lib_fluidThermophysicalModels,
|
||||
lib_specie,
|
||||
lib_turbulenceModels,
|
||||
lib_compressibleTurbulenceModels,
|
||||
lib_thermoTools,
|
||||
lib_dynamicFvMesh,
|
||||
lib_topoChangerFvMesh,
|
||||
lib_overset,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/compressible/rhoPimpleFoam/overRhoPimpleDyMFoam',
|
||||
'-I' + meson.source_root() / 'applications/solvers/compressible/rhoPimpleFoam',
|
||||
'-I' + meson.source_root() / 'src/finiteVolume/cfdTools',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/transportModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/basic',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/turbulenceModels',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/dynamicMesh',
|
||||
'-I' + recursive_include_dirs / 'src/dynamicFvMesh',
|
||||
'-I' + recursive_include_dirs / 'src/sampling',
|
||||
'-I' + recursive_include_dirs / 'src/overset',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/compressible/rhoPimpleFoam/overRhoPimpleDyMFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_overRhoPimpleDyMFoam = executable(
|
||||
'overRhoPimpleDyMFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
@ -56,7 +56,7 @@ if (pimple.transonic())
|
||||
// Relax the pressure equation to ensure diagonal-dominance
|
||||
pEqn.relax();
|
||||
|
||||
pEqn.solve(p.select(pimple.finalInnerIter()));
|
||||
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
|
||||
|
||||
if (pimple.finalNonOrthogonalIter())
|
||||
{
|
||||
@ -78,7 +78,7 @@ else
|
||||
{
|
||||
fvScalarMatrix pEqn(pDDtEqn - fvm::laplacian(rhorAUf, p));
|
||||
|
||||
pEqn.solve(p.select(pimple.finalInnerIter()));
|
||||
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
|
||||
|
||||
if (pimple.finalNonOrthogonalIter())
|
||||
{
|
||||
|
||||
@ -54,7 +54,7 @@ if (pimple.transonic())
|
||||
// Relax the pressure equation to ensure diagonal-dominance
|
||||
pEqn.relax();
|
||||
|
||||
pEqn.solve(p.select(pimple.finalInnerIter()));
|
||||
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
|
||||
|
||||
if (pimple.finalNonOrthogonalIter())
|
||||
{
|
||||
@ -76,7 +76,7 @@ else
|
||||
{
|
||||
fvScalarMatrix pEqn(pDDtEqn - fvm::laplacian(rhorAUf, p));
|
||||
|
||||
pEqn.solve(p.select(pimple.finalInnerIter()));
|
||||
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
|
||||
|
||||
if (pimple.finalNonOrthogonalIter())
|
||||
{
|
||||
|
||||
@ -65,7 +65,7 @@ if (pimple.transonic())
|
||||
// Relax the pressure equation to ensure diagonal-dominance
|
||||
pEqn.relax();
|
||||
|
||||
pEqn.solve(p.select(pimple.finalInnerIter()));
|
||||
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
|
||||
|
||||
if (pimple.finalNonOrthogonalIter())
|
||||
{
|
||||
@ -90,7 +90,7 @@ else
|
||||
{
|
||||
fvScalarMatrix pEqn(pDDtEqn - fvm::laplacian(rhorAtU, p));
|
||||
|
||||
pEqn.solve(p.select(pimple.finalInnerIter()));
|
||||
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
|
||||
|
||||
if (pimple.finalNonOrthogonalIter())
|
||||
{
|
||||
|
||||
@ -52,26 +52,18 @@
|
||||
// Update the boundary values of the reciprocal time-step
|
||||
rDeltaT.correctBoundaryConditions();
|
||||
|
||||
{
|
||||
auto limits = gMinMax(rDeltaT.primitiveField());
|
||||
limits.reset(1/(limits.max()+VSMALL), 1/(limits.min()+VSMALL));
|
||||
|
||||
Info<< "Flow time scale min/max = "
|
||||
<< limits.min() << ", " << limits.max() << endl;
|
||||
}
|
||||
Info<< "Flow time scale min/max = "
|
||||
<< gMin(1/rDeltaT.primitiveField())
|
||||
<< ", " << gMax(1/rDeltaT.primitiveField()) << endl;
|
||||
|
||||
if (rDeltaTSmoothingCoeff < 1.0)
|
||||
{
|
||||
fvc::smooth(rDeltaT, rDeltaTSmoothingCoeff);
|
||||
}
|
||||
|
||||
{
|
||||
auto limits = gMinMax(rDeltaT.primitiveField());
|
||||
limits.reset(1/(limits.max()+VSMALL), 1/(limits.min()+VSMALL));
|
||||
|
||||
Info<< "Smoothed flow time scale min/max = "
|
||||
<< limits.min() << ", " << limits.max() << endl;
|
||||
}
|
||||
Info<< "Smoothed flow time scale min/max = "
|
||||
<< gMin(1/rDeltaT.primitiveField())
|
||||
<< ", " << gMax(1/rDeltaT.primitiveField()) << endl;
|
||||
|
||||
// Limit rate of change of time scale
|
||||
// - reduce as much as required
|
||||
@ -86,10 +78,8 @@
|
||||
rDeltaT0
|
||||
*max(rDeltaT/rDeltaT0, scalar(1) - rDeltaTDampingCoeff);
|
||||
|
||||
auto limits = gMinMax(rDeltaT.primitiveField());
|
||||
limits.reset(1/(limits.max()+VSMALL), 1/(limits.min()+VSMALL));
|
||||
|
||||
Info<< "Damped flow time scale min/max = "
|
||||
<< limits.min() << ", " << limits.max() << endl;
|
||||
<< gMin(1/rDeltaT.primitiveField())
|
||||
<< ", " << gMax(1/rDeltaT.primitiveField()) << endl;
|
||||
}
|
||||
}
|
||||
|
||||
@ -14,11 +14,6 @@
|
||||
fvOptions(rho, he)
|
||||
);
|
||||
|
||||
if (MRF.active())
|
||||
{
|
||||
EEqn += fvc::div(MRF.phi(), p);
|
||||
}
|
||||
|
||||
EEqn.relax();
|
||||
|
||||
fvOptions.constrain(EEqn);
|
||||
|
||||
51
applications/solvers/compressible/rhoSimpleFoam/meson.build
Normal file
51
applications/solvers/compressible/rhoSimpleFoam/meson.build
Normal file
@ -0,0 +1,51 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'rhoSimpleFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_fvOptions,
|
||||
lib_meshTools,
|
||||
lib_sampling,
|
||||
lib_compressibleTransportModels,
|
||||
lib_fluidThermophysicalModels,
|
||||
lib_specie,
|
||||
lib_turbulenceModels,
|
||||
lib_compressibleTurbulenceModels,
|
||||
lib_thermoTools,
|
||||
lib_atmosphericModels,
|
||||
lib_regionFaModels,
|
||||
lib_finiteArea,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/compressible/rhoSimpleFoam',
|
||||
'-I' + meson.source_root() / 'src/finiteVolume/cfdTools',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/sampling',
|
||||
'-I' + recursive_include_dirs / 'src/transportModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/basic',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/turbulenceModels',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/regionFaModels',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/compressible/rhoSimpleFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_rhoSimpleFoam = executable(
|
||||
'rhoSimpleFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
|
||||
subdir('overRhoSimpleFoam')
|
||||
subdir('rhoPorousSimpleFoam')
|
||||
@ -0,0 +1,51 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'overRhoSimpleFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_fvOptions,
|
||||
lib_meshTools,
|
||||
lib_compressibleTransportModels,
|
||||
lib_fluidThermophysicalModels,
|
||||
lib_specie,
|
||||
lib_turbulenceModels,
|
||||
lib_compressibleTurbulenceModels,
|
||||
lib_thermoTools,
|
||||
lib_dynamicFvMesh,
|
||||
lib_topoChangerFvMesh,
|
||||
lib_sampling,
|
||||
lib_overset,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/compressible/rhoSimpleFoam/overRhoSimpleFoam',
|
||||
'-I' + meson.source_root() / 'applications/solvers/compressible/rhoSimpleFoam',
|
||||
'-I' + meson.source_root() / 'src/finiteVolume/cfdTools',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/transportModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/basic',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/turbulenceModels',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/dynamicMesh',
|
||||
'-I' + recursive_include_dirs / 'src/dynamicFvMesh',
|
||||
'-I' + recursive_include_dirs / 'src/sampling',
|
||||
'-I' + recursive_include_dirs / 'src/overset',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/compressible/rhoSimpleFoam/overRhoSimpleFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_overRhoSimpleFoam = executable(
|
||||
'overRhoSimpleFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
@ -0,0 +1,45 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'rhoPorousSimpleFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_fvOptions,
|
||||
lib_meshTools,
|
||||
lib_sampling,
|
||||
lib_compressibleTransportModels,
|
||||
lib_fluidThermophysicalModels,
|
||||
lib_specie,
|
||||
lib_turbulenceModels,
|
||||
lib_compressibleTurbulenceModels,
|
||||
lib_thermoTools,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam',
|
||||
'-I' + meson.source_root() / 'applications/solvers/compressible/rhoSimpleFoam',
|
||||
'-I' + meson.source_root() / 'src/finiteVolume/cfdTools',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/sampling',
|
||||
'-I' + recursive_include_dirs / 'src/transportModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/basic',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/turbulenceModels',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/compressible/rhoSimpleFoam/rhoPorousSimpleFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_rhoPorousSimpleFoam = executable(
|
||||
'rhoPorousSimpleFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
@ -9,11 +9,6 @@
|
||||
fvOptions(rho, e)
|
||||
);
|
||||
|
||||
if (MRF.active())
|
||||
{
|
||||
EEqn += fvc::div(MRF.phi(), p);
|
||||
}
|
||||
|
||||
EEqn.relax();
|
||||
|
||||
fvOptions.constrain(EEqn);
|
||||
|
||||
46
applications/solvers/compressible/sonicFoam/meson.build
Normal file
46
applications/solvers/compressible/sonicFoam/meson.build
Normal file
@ -0,0 +1,46 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'sonicFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_fvOptions,
|
||||
lib_meshTools,
|
||||
lib_sampling,
|
||||
lib_compressibleTransportModels,
|
||||
lib_fluidThermophysicalModels,
|
||||
lib_specie,
|
||||
lib_turbulenceModels,
|
||||
lib_compressibleTurbulenceModels,
|
||||
lib_thermoTools,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/compressible/sonicFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/sampling',
|
||||
'-I' + recursive_include_dirs / 'src/transportModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/basic',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/turbulenceModels',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/compressible/sonicFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_sonicFoam = executable(
|
||||
'sonicFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
|
||||
subdir('sonicDyMFoam')
|
||||
subdir('sonicLiquidFoam')
|
||||
@ -0,0 +1,51 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'sonicDyMFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_fvOptions,
|
||||
lib_meshTools,
|
||||
lib_compressibleTransportModels,
|
||||
lib_fluidThermophysicalModels,
|
||||
lib_specie,
|
||||
lib_turbulenceModels,
|
||||
lib_compressibleTurbulenceModels,
|
||||
lib_thermoTools,
|
||||
lib_dynamicMesh,
|
||||
lib_dynamicFvMesh,
|
||||
lib_topoChangerFvMesh,
|
||||
lib_sampling,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/compressible/sonicFoam/sonicDyMFoam',
|
||||
'-I' + meson.source_root() / 'applications/solvers/compressible/sonicFoam',
|
||||
'-I' + meson.source_root() / 'applications/solvers/compressible/rhoPimpleFoam',
|
||||
'-I' + meson.source_root() / 'src/finiteVolume/cfdTools',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/transportModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/thermophysicalModels/basic',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/turbulenceModels',
|
||||
'-I' + recursive_include_dirs / 'src/TurbulenceModels/compressible',
|
||||
'-I' + recursive_include_dirs / 'src/dynamicMesh',
|
||||
'-I' + recursive_include_dirs / 'src/dynamicFvMesh',
|
||||
'-I' + recursive_include_dirs / 'src/sampling',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/compressible/sonicFoam/sonicDyMFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_sonicDyMFoam = executable(
|
||||
'sonicDyMFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
@ -0,0 +1,30 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'sonicLiquidFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_meshTools,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/compressible/sonicFoam/sonicLiquidFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/compressible/sonicFoam/sonicLiquidFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_sonicLiquidFoam = executable(
|
||||
'sonicLiquidFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
@ -0,0 +1,34 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'dsmcFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_meshTools,
|
||||
lib_finiteVolume,
|
||||
lib_lagrangian,
|
||||
lib_DSMC,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/discreteMethods/dsmc/dsmcFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/lagrangian/basic',
|
||||
'-I' + recursive_include_dirs / 'src/lagrangian/DSMC',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/discreteMethods/dsmc/dsmcFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_dsmcFoam = executable(
|
||||
'dsmcFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
1
applications/solvers/discreteMethods/dsmc/meson.build
Normal file
1
applications/solvers/discreteMethods/dsmc/meson.build
Normal file
@ -0,0 +1 @@
|
||||
subdir('dsmcFoam')
|
||||
2
applications/solvers/discreteMethods/meson.build
Normal file
2
applications/solvers/discreteMethods/meson.build
Normal file
@ -0,0 +1,2 @@
|
||||
subdir('dsmc')
|
||||
subdir('molecularDynamics')
|
||||
@ -0,0 +1,38 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'mdEquilibrationFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_meshTools,
|
||||
lib_finiteVolume,
|
||||
lib_lagrangian,
|
||||
lib_molecule,
|
||||
lib_potential,
|
||||
lib_molecularMeasurements,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/discreteMethods/molecularDynamics/mdEquilibrationFoam',
|
||||
'-I' + recursive_include_dirs / 'src/lagrangian/molecularDynamics/molecule',
|
||||
'-I' + recursive_include_dirs / 'src/lagrangian/molecularDynamics/potential',
|
||||
'-I' + recursive_include_dirs / 'src/lagrangian/molecularDynamics/molecularMeasurements',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/lagrangian/basic',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/discreteMethods/molecularDynamics/mdEquilibrationFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_mdEquilibrationFoam = executable(
|
||||
'mdEquilibrationFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
@ -0,0 +1,38 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'mdFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_meshTools,
|
||||
lib_finiteVolume,
|
||||
lib_lagrangian,
|
||||
lib_molecule,
|
||||
lib_potential,
|
||||
lib_molecularMeasurements,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/discreteMethods/molecularDynamics/mdFoam',
|
||||
'-I' + recursive_include_dirs / 'src/lagrangian/molecularDynamics/molecule',
|
||||
'-I' + recursive_include_dirs / 'src/lagrangian/molecularDynamics/potential',
|
||||
'-I' + recursive_include_dirs / 'src/lagrangian/molecularDynamics/molecularMeasurements',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/lagrangian/basic',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/discreteMethods/molecularDynamics/mdFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_mdFoam = executable(
|
||||
'mdFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
@ -0,0 +1,2 @@
|
||||
subdir('mdEquilibrationFoam')
|
||||
subdir('mdFoam')
|
||||
@ -0,0 +1,30 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'electrostaticFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_meshTools,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/electromagnetics/electrostaticFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/electromagnetics/electrostaticFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_electrostaticFoam = executable(
|
||||
'electrostaticFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
@ -0,0 +1,30 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'magneticFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_meshTools,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/electromagnetics/magneticFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/electromagnetics/magneticFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_magneticFoam = executable(
|
||||
'magneticFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
3
applications/solvers/electromagnetics/meson.build
Normal file
3
applications/solvers/electromagnetics/meson.build
Normal file
@ -0,0 +1,3 @@
|
||||
subdir('electrostaticFoam')
|
||||
subdir('magneticFoam')
|
||||
subdir('mhdFoam')
|
||||
30
applications/solvers/electromagnetics/mhdFoam/meson.build
Normal file
30
applications/solvers/electromagnetics/mhdFoam/meson.build
Normal file
@ -0,0 +1,30 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'mhdFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_meshTools,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/electromagnetics/mhdFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/electromagnetics/mhdFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_mhdFoam = executable(
|
||||
'mhdFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
@ -127,7 +127,7 @@ int main(int argc, char *argv[])
|
||||
);
|
||||
|
||||
pEqn.setReference(pRefCell, pRefValue);
|
||||
pEqn.solve(p.select(piso.finalInnerIter()));
|
||||
pEqn.solve(mesh.solver(p.select(piso.finalInnerIter())));
|
||||
|
||||
if (piso.finalNonOrthogonalIter())
|
||||
{
|
||||
@ -167,7 +167,7 @@ int main(int argc, char *argv[])
|
||||
fvm::laplacian(rABf, pB) == fvc::div(phiB)
|
||||
);
|
||||
|
||||
pBEqn.solve(pB.select(bpiso.finalInnerIter()));
|
||||
pBEqn.solve(mesh.solver(pB.select(bpiso.finalInnerIter())));
|
||||
|
||||
if (bpiso.finalNonOrthogonalIter())
|
||||
{
|
||||
|
||||
32
applications/solvers/financial/financialFoam/meson.build
Normal file
32
applications/solvers/financial/financialFoam/meson.build
Normal file
@ -0,0 +1,32 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'financialFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteVolume,
|
||||
lib_meshTools,
|
||||
lib_sampling,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/financial/financialFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'src/sampling',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/financial/financialFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_financialFoam = executable(
|
||||
'financialFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
1
applications/solvers/financial/meson.build
Normal file
1
applications/solvers/financial/meson.build
Normal file
@ -0,0 +1 @@
|
||||
subdir('financialFoam')
|
||||
@ -5,7 +5,7 @@
|
||||
(
|
||||
"h",
|
||||
runTime.timeName(),
|
||||
aMesh.thisDb(),
|
||||
mesh,
|
||||
IOobject::MUST_READ,
|
||||
IOobject::AUTO_WRITE
|
||||
),
|
||||
@ -20,7 +20,7 @@
|
||||
(
|
||||
"Us",
|
||||
runTime.timeName(),
|
||||
aMesh.thisDb(),
|
||||
mesh,
|
||||
IOobject::MUST_READ,
|
||||
IOobject::AUTO_WRITE
|
||||
),
|
||||
@ -34,7 +34,7 @@
|
||||
(
|
||||
"phis",
|
||||
runTime.timeName(),
|
||||
aMesh.thisDb(),
|
||||
mesh,
|
||||
IOobject::READ_IF_PRESENT,
|
||||
IOobject::AUTO_WRITE
|
||||
),
|
||||
@ -48,7 +48,7 @@
|
||||
(
|
||||
"phi2s",
|
||||
runTime.timeName(),
|
||||
aMesh.thisDb(),
|
||||
mesh,
|
||||
IOobject::READ_IF_PRESENT,
|
||||
IOobject::AUTO_WRITE
|
||||
),
|
||||
@ -67,7 +67,7 @@
|
||||
(
|
||||
"Sm",
|
||||
runTime.timeName(),
|
||||
aMesh.thisDb(),
|
||||
mesh,
|
||||
IOobject::NO_READ,
|
||||
IOobject::NO_WRITE
|
||||
),
|
||||
@ -82,7 +82,7 @@
|
||||
(
|
||||
"Sd",
|
||||
runTime.timeName(),
|
||||
aMesh.thisDb(),
|
||||
mesh,
|
||||
IOobject::NO_READ,
|
||||
IOobject::NO_WRITE
|
||||
),
|
||||
@ -96,7 +96,7 @@
|
||||
(
|
||||
"Sg",
|
||||
runTime.timeName(),
|
||||
aMesh.thisDb(),
|
||||
mesh,
|
||||
IOobject::NO_READ,
|
||||
IOobject::NO_WRITE
|
||||
),
|
||||
@ -112,7 +112,7 @@
|
||||
(
|
||||
"ps",
|
||||
runTime.timeName(),
|
||||
aMesh.thisDb(),
|
||||
mesh,
|
||||
IOobject::NO_READ,
|
||||
IOobject::AUTO_WRITE
|
||||
),
|
||||
@ -134,7 +134,7 @@
|
||||
(
|
||||
"manningField",
|
||||
runTime.timeName(),
|
||||
aMesh.thisDb(),
|
||||
mesh,
|
||||
IOobject::MUST_READ,
|
||||
IOobject::AUTO_WRITE
|
||||
),
|
||||
@ -147,7 +147,7 @@
|
||||
(
|
||||
"frictionFactor",
|
||||
runTime.timeName(),
|
||||
aMesh.thisDb(),
|
||||
mesh,
|
||||
IOobject::NO_READ,
|
||||
IOobject::NO_WRITE
|
||||
),
|
||||
|
||||
@ -7,7 +7,7 @@ volVectorField U
|
||||
(
|
||||
"U",
|
||||
runTime.timeName(),
|
||||
mesh.thisDb(),
|
||||
mesh,
|
||||
IOobject::NO_READ,
|
||||
IOobject::AUTO_WRITE
|
||||
),
|
||||
@ -22,7 +22,7 @@ volScalarField H
|
||||
(
|
||||
"H",
|
||||
runTime.timeName(),
|
||||
mesh.thisDb(),
|
||||
mesh,
|
||||
IOobject::NO_READ,
|
||||
IOobject::AUTO_WRITE
|
||||
),
|
||||
|
||||
32
applications/solvers/finiteArea/liquidFilmFoam/meson.build
Normal file
32
applications/solvers/finiteArea/liquidFilmFoam/meson.build
Normal file
@ -0,0 +1,32 @@
|
||||
srcfiles = [
|
||||
lnInclude_hack,
|
||||
'liquidFilmFoam.C',
|
||||
]
|
||||
link_with = [
|
||||
lib_OpenFOAM,
|
||||
lib_finiteArea,
|
||||
lib_finiteVolume,
|
||||
lib_meshTools,
|
||||
]
|
||||
dependencies = [
|
||||
m_dep,
|
||||
dl_dep,
|
||||
]
|
||||
cpp_args = [
|
||||
'-I' + meson.source_root() / 'applications/solvers/finiteArea/liquidFilmFoam',
|
||||
'-I' + recursive_include_dirs / 'src/finiteArea',
|
||||
'-I' + recursive_include_dirs / 'src/finiteVolume',
|
||||
'-I' + recursive_include_dirs / 'src/meshTools',
|
||||
'-I' + recursive_include_dirs / 'applications/solvers/finiteArea/liquidFilmFoam',
|
||||
'-I' + recursive_include_dirs / 'src/OpenFOAM',
|
||||
'-I' + recursive_include_dirs / 'src/OSspecific/POSIX',
|
||||
]
|
||||
exe_liquidFilmFoam = executable(
|
||||
'liquidFilmFoam',
|
||||
srcfiles,
|
||||
link_with: link_with,
|
||||
dependencies: dependencies,
|
||||
cpp_args: cpp_args,
|
||||
implicit_include_directories: false,
|
||||
install: true,
|
||||
)
|
||||
3
applications/solvers/finiteArea/meson.build
Normal file
3
applications/solvers/finiteArea/meson.build
Normal file
@ -0,0 +1,3 @@
|
||||
subdir('liquidFilmFoam')
|
||||
subdir('sphereSurfactantFoam')
|
||||
subdir('surfactantFoam')
|
||||
@ -5,7 +5,7 @@ areaScalarField Cs
|
||||
(
|
||||
"Cs",
|
||||
runTime.timeName(),
|
||||
aMesh.thisDb(),
|
||||
mesh,
|
||||
IOobject::MUST_READ,
|
||||
IOobject::AUTO_WRITE
|
||||
),
|
||||
@ -26,7 +26,7 @@ areaVectorField Us
|
||||
(
|
||||
"Us",
|
||||
runTime.timeName(),
|
||||
aMesh.thisDb(),
|
||||
mesh,
|
||||
IOobject::NO_READ,
|
||||
IOobject::NO_WRITE
|
||||
),
|
||||
@ -58,7 +58,7 @@ edgeScalarField phis
|
||||
(
|
||||
"phis",
|
||||
runTime.timeName(),
|
||||
aMesh.thisDb(),
|
||||
mesh,
|
||||
IOobject::NO_READ,
|
||||
IOobject::NO_WRITE
|
||||
),
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user