mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
Merge branch 'master' of ssh://noisy/home/noisy3/OpenFOAM/OpenFOAM-dev
This commit is contained in:
7
Allwmake
7
Allwmake
@ -12,7 +12,12 @@ wmakeCheckPwd "$WM_PROJECT_DIR" || {
|
|||||||
( cd wmake/src && make )
|
( cd wmake/src && make )
|
||||||
|
|
||||||
# build ThirdParty sources
|
# build ThirdParty sources
|
||||||
$WM_THIRD_PARTY_DIR/Allwmake
|
if [ -d "$WM_THIRD_PARTY_DIR" ]
|
||||||
|
then
|
||||||
|
$WM_THIRD_PARTY_DIR/Allwmake
|
||||||
|
else
|
||||||
|
echo "no ThirdParty sources found - skipping"
|
||||||
|
fi
|
||||||
|
|
||||||
# build OpenFOAM libraries and applications
|
# build OpenFOAM libraries and applications
|
||||||
src/Allwmake
|
src/Allwmake
|
||||||
|
|||||||
@ -20,6 +20,7 @@ EXE_INC = \
|
|||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-lengine \
|
-lengine \
|
||||||
-lmeshTools \
|
-lmeshTools \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lbasicThermophysicalModels \
|
-lbasicThermophysicalModels \
|
||||||
-lreactionThermophysicalModels \
|
-lreactionThermophysicalModels \
|
||||||
|
|||||||
@ -10,6 +10,7 @@ EXE_INC = \
|
|||||||
|
|
||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-lengine \
|
-lengine \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lcompressibleLESModels \
|
-lcompressibleLESModels \
|
||||||
-lbasicThermophysicalModels \
|
-lbasicThermophysicalModels \
|
||||||
|
|||||||
@ -10,6 +10,7 @@ EXE_INC = \
|
|||||||
|
|
||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-lengine \
|
-lengine \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lcompressibleLESModels \
|
-lcompressibleLESModels \
|
||||||
-lbasicThermophysicalModels \
|
-lbasicThermophysicalModels \
|
||||||
|
|||||||
@ -18,6 +18,7 @@ EXE_INC = \
|
|||||||
|
|
||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-lengine \
|
-lengine \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lcompressibleLESModels \
|
-lcompressibleLESModels \
|
||||||
-lreactionThermophysicalModels \
|
-lreactionThermophysicalModels \
|
||||||
|
|||||||
@ -16,6 +16,7 @@ EXE_INC = \
|
|||||||
-I$(LIB_SRC)/ODE/lnInclude
|
-I$(LIB_SRC)/ODE/lnInclude
|
||||||
|
|
||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lcompressibleLESModels \
|
-lcompressibleLESModels \
|
||||||
-lreactionThermophysicalModels \
|
-lreactionThermophysicalModels \
|
||||||
|
|||||||
@ -10,6 +10,7 @@ EXE_INC = \
|
|||||||
|
|
||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-lengine \
|
-lengine \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lcompressibleLESModels \
|
-lcompressibleLESModels \
|
||||||
-lbasicThermophysicalModels \
|
-lbasicThermophysicalModels \
|
||||||
|
|||||||
@ -14,6 +14,7 @@ EXE_LIBS = \
|
|||||||
-lreactionThermophysicalModels \
|
-lreactionThermophysicalModels \
|
||||||
-lbasicThermophysicalModels \
|
-lbasicThermophysicalModels \
|
||||||
-lfiniteVolume \
|
-lfiniteVolume \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleLESModels \
|
-lcompressibleLESModels \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lradiation
|
-lradiation
|
||||||
|
|||||||
@ -8,6 +8,7 @@ EXE_INC = \
|
|||||||
-I$(LIB_SRC)/finiteVolume/lnInclude
|
-I$(LIB_SRC)/finiteVolume/lnInclude
|
||||||
|
|
||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lcompressibleLESModels \
|
-lcompressibleLESModels \
|
||||||
-lreactionThermophysicalModels \
|
-lreactionThermophysicalModels \
|
||||||
|
|||||||
@ -8,6 +8,7 @@ EXE_INC = \
|
|||||||
-I$(LIB_SRC)/finiteVolume/lnInclude
|
-I$(LIB_SRC)/finiteVolume/lnInclude
|
||||||
|
|
||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lcompressibleLESModels \
|
-lcompressibleLESModels \
|
||||||
-lreactionThermophysicalModels \
|
-lreactionThermophysicalModels \
|
||||||
|
|||||||
@ -7,6 +7,7 @@ EXE_INC = \
|
|||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-lbasicThermophysicalModels \
|
-lbasicThermophysicalModels \
|
||||||
-lspecie \
|
-lspecie \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lcompressibleLESModels \
|
-lcompressibleLESModels \
|
||||||
-lfiniteVolume \
|
-lfiniteVolume \
|
||||||
|
|||||||
@ -9,6 +9,7 @@ EXE_INC = \
|
|||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-lbasicThermophysicalModels \
|
-lbasicThermophysicalModels \
|
||||||
-lspecie \
|
-lspecie \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lcompressibleLESModels \
|
-lcompressibleLESModels \
|
||||||
-lfiniteVolume \
|
-lfiniteVolume \
|
||||||
|
|||||||
@ -11,6 +11,7 @@ EXE_LIBS = \
|
|||||||
-lbasicThermophysicalModels \
|
-lbasicThermophysicalModels \
|
||||||
-lthermalPorousZone \
|
-lthermalPorousZone \
|
||||||
-lspecie \
|
-lspecie \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lfiniteVolume \
|
-lfiniteVolume \
|
||||||
-lmeshTools
|
-lmeshTools
|
||||||
|
|||||||
@ -8,6 +8,7 @@ EXE_INC = \
|
|||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-lbasicThermophysicalModels \
|
-lbasicThermophysicalModels \
|
||||||
-lspecie \
|
-lspecie \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lfiniteVolume \
|
-lfiniteVolume \
|
||||||
-lmeshTools
|
-lmeshTools
|
||||||
|
|||||||
@ -9,6 +9,7 @@ EXE_INC = \
|
|||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-lbasicThermophysicalModels \
|
-lbasicThermophysicalModels \
|
||||||
-lspecie \
|
-lspecie \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lcompressibleLESModels \
|
-lcompressibleLESModels \
|
||||||
-lfiniteVolume \
|
-lfiniteVolume \
|
||||||
|
|||||||
@ -6,6 +6,7 @@ EXE_INC = \
|
|||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-lbasicThermophysicalModels \
|
-lbasicThermophysicalModels \
|
||||||
-lspecie \
|
-lspecie \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lcompressibleLESModels \
|
-lcompressibleLESModels \
|
||||||
-lfiniteVolume \
|
-lfiniteVolume \
|
||||||
|
|||||||
@ -9,5 +9,6 @@ EXE_INC = \
|
|||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-lfiniteVolume \
|
-lfiniteVolume \
|
||||||
-lmeshTools \
|
-lmeshTools \
|
||||||
|
-lincompressibleTurbulenceModel \
|
||||||
-lincompressibleRASModels \
|
-lincompressibleRASModels \
|
||||||
-lincompressibleTransportModels
|
-lincompressibleTransportModels
|
||||||
|
|||||||
@ -8,5 +8,6 @@ EXE_INC = \
|
|||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-lfiniteVolume \
|
-lfiniteVolume \
|
||||||
-lmeshTools \
|
-lmeshTools \
|
||||||
|
-lincompressibleTurbulenceModel \
|
||||||
-lincompressibleRASModels \
|
-lincompressibleRASModels \
|
||||||
-lincompressibleTransportModels
|
-lincompressibleTransportModels
|
||||||
|
|||||||
@ -7,6 +7,7 @@ EXE_LIBS = \
|
|||||||
-lmeshTools \
|
-lmeshTools \
|
||||||
-lbasicThermophysicalModels \
|
-lbasicThermophysicalModels \
|
||||||
-lspecie \
|
-lspecie \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lcompressibleLESModels \
|
-lcompressibleLESModels \
|
||||||
-lfiniteVolume
|
-lfiniteVolume
|
||||||
|
|||||||
@ -9,5 +9,6 @@ EXE_LIBS = \
|
|||||||
-lmeshTools \
|
-lmeshTools \
|
||||||
-lbasicThermophysicalModels \
|
-lbasicThermophysicalModels \
|
||||||
-lspecie \
|
-lspecie \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lfiniteVolume
|
-lfiniteVolume
|
||||||
|
|||||||
@ -12,6 +12,7 @@ EXE_LIBS = \
|
|||||||
-lbasicThermophysicalModels \
|
-lbasicThermophysicalModels \
|
||||||
-lspecie \
|
-lspecie \
|
||||||
-lradiation \
|
-lradiation \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lfiniteVolume \
|
-lfiniteVolume \
|
||||||
-lmeshTools
|
-lmeshTools
|
||||||
|
|||||||
@ -13,6 +13,8 @@ EXE_LIBS = \
|
|||||||
-lbasicThermophysicalModels \
|
-lbasicThermophysicalModels \
|
||||||
-lbasicSolidThermo \
|
-lbasicSolidThermo \
|
||||||
-lspecie \
|
-lspecie \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lcompressibleLESModels \
|
-lcompressibleLESModels \
|
||||||
|
-lmeshTools \
|
||||||
-lfiniteVolume
|
-lfiniteVolume
|
||||||
|
|||||||
@ -17,4 +17,6 @@ EXE_LIBS = \
|
|||||||
-lbasicThermophysicalModels \
|
-lbasicThermophysicalModels \
|
||||||
-lbasicSolidThermo \
|
-lbasicSolidThermo \
|
||||||
-lspecie \
|
-lspecie \
|
||||||
-lcompressibleRASModels
|
-lcompressibleTurbulenceModel \
|
||||||
|
-lcompressibleRASModels \
|
||||||
|
-lcompressibleLESModels
|
||||||
|
|||||||
@ -33,13 +33,12 @@ if (adjustTimeStep)
|
|||||||
{
|
{
|
||||||
if ((runTime.timeIndex() == 0) && ((CoNum > SMALL) || (DiNum > SMALL)))
|
if ((runTime.timeIndex() == 0) && ((CoNum > SMALL) || (DiNum > SMALL)))
|
||||||
{
|
{
|
||||||
|
if (CoNum < SMALL)
|
||||||
if (CoNum == -GREAT)
|
|
||||||
{
|
{
|
||||||
CoNum = SMALL;
|
CoNum = SMALL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (DiNum == -GREAT)
|
if (DiNum < SMALL)
|
||||||
{
|
{
|
||||||
DiNum = SMALL;
|
DiNum = SMALL;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,6 +7,7 @@ EXE_INC = \
|
|||||||
-I$(LIB_SRC)/sampling/lnInclude
|
-I$(LIB_SRC)/sampling/lnInclude
|
||||||
|
|
||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
|
-lincompressibleTurbulenceModel \
|
||||||
-lincompressibleRASModels \
|
-lincompressibleRASModels \
|
||||||
-lincompressibleTransportModels \
|
-lincompressibleTransportModels \
|
||||||
-lfiniteVolume \
|
-lfiniteVolume \
|
||||||
|
|||||||
@ -6,6 +6,7 @@ EXE_INC = \
|
|||||||
|
|
||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-lincompressibleTransportModels \
|
-lincompressibleTransportModels \
|
||||||
|
-lincompressibleTurbulenceModel \
|
||||||
-lincompressibleRASModels \
|
-lincompressibleRASModels \
|
||||||
-lincompressibleLESModels \
|
-lincompressibleLESModels \
|
||||||
-lfiniteVolume \
|
-lfiniteVolume \
|
||||||
|
|||||||
@ -5,6 +5,7 @@ EXE_INC = \
|
|||||||
-I$(LIB_SRC)/finiteVolume/lnInclude
|
-I$(LIB_SRC)/finiteVolume/lnInclude
|
||||||
|
|
||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
|
-lincompressibleTurbulenceModel \
|
||||||
-lincompressibleRASModels \
|
-lincompressibleRASModels \
|
||||||
-lincompressibleLESModels \
|
-lincompressibleLESModels \
|
||||||
-lincompressibleTransportModels \
|
-lincompressibleTransportModels \
|
||||||
|
|||||||
@ -8,6 +8,7 @@ EXE_INC = \
|
|||||||
-I$(LIB_SRC)/meshTools/lnInclude
|
-I$(LIB_SRC)/meshTools/lnInclude
|
||||||
|
|
||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
|
-lincompressibleTurbulenceModel \
|
||||||
-lincompressibleRASModels \
|
-lincompressibleRASModels \
|
||||||
-lincompressibleTransportModels \
|
-lincompressibleTransportModels \
|
||||||
-lfiniteVolume \
|
-lfiniteVolume \
|
||||||
|
|||||||
@ -6,6 +6,7 @@ EXE_INC = \
|
|||||||
-I$(LIB_SRC)/finiteVolume/lnInclude
|
-I$(LIB_SRC)/finiteVolume/lnInclude
|
||||||
|
|
||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
|
-lincompressibleTurbulenceModel \
|
||||||
-lincompressibleRASModels \
|
-lincompressibleRASModels \
|
||||||
-lincompressibleTransportModels \
|
-lincompressibleTransportModels \
|
||||||
-lfiniteVolume
|
-lfiniteVolume
|
||||||
|
|||||||
@ -22,6 +22,7 @@ EXE_INC = \
|
|||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-lfiniteVolume \
|
-lfiniteVolume \
|
||||||
-lmeshTools \
|
-lmeshTools \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lcompressibleLESModels \
|
-lcompressibleLESModels \
|
||||||
-llagrangian \
|
-llagrangian \
|
||||||
|
|||||||
@ -22,6 +22,7 @@ EXE_INC = \
|
|||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-lfiniteVolume \
|
-lfiniteVolume \
|
||||||
-lmeshTools \
|
-lmeshTools \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lcompressibleLESModels \
|
-lcompressibleLESModels \
|
||||||
-llagrangian \
|
-llagrangian \
|
||||||
|
|||||||
@ -21,6 +21,7 @@ EXE_INC = \
|
|||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-lfiniteVolume \
|
-lfiniteVolume \
|
||||||
-lmeshTools \
|
-lmeshTools \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lcompressibleLESModels \
|
-lcompressibleLESModels \
|
||||||
-llagrangian \
|
-llagrangian \
|
||||||
|
|||||||
@ -17,6 +17,7 @@ EXE_LIBS = \
|
|||||||
-lbasicThermophysicalModels \
|
-lbasicThermophysicalModels \
|
||||||
-lspecie \
|
-lspecie \
|
||||||
-lradiation \
|
-lradiation \
|
||||||
|
-lcompressibleTurbulenceModel \
|
||||||
-lcompressibleRASModels \
|
-lcompressibleRASModels \
|
||||||
-lcompressibleLESModels \
|
-lcompressibleLESModels \
|
||||||
-lfiniteVolume \
|
-lfiniteVolume \
|
||||||
|
|||||||
@ -7,6 +7,7 @@ EXE_INC = \
|
|||||||
-I$(LIB_SRC)/thermophysicalModels/barotropicCompressibilityModel/lnInclude
|
-I$(LIB_SRC)/thermophysicalModels/barotropicCompressibilityModel/lnInclude
|
||||||
|
|
||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
|
-lincompressibleTurbulenceModel \
|
||||||
-lincompressibleTransportModels \
|
-lincompressibleTransportModels \
|
||||||
-lincompressibleRASModels \
|
-lincompressibleRASModels \
|
||||||
-lincompressibleLESModels \
|
-lincompressibleLESModels \
|
||||||
|
|||||||
@ -11,6 +11,7 @@ EXE_INC = \
|
|||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-linterfaceProperties \
|
-linterfaceProperties \
|
||||||
-lincompressibleTransportModels \
|
-lincompressibleTransportModels \
|
||||||
|
-lincompressibleTurbulenceModel \
|
||||||
-lincompressibleRASModels \
|
-lincompressibleRASModels \
|
||||||
-lincompressibleLESModels \
|
-lincompressibleLESModels \
|
||||||
-lfiniteVolume \
|
-lfiniteVolume \
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
EXE_INC = -ggdb3 \
|
EXE_INC = \
|
||||||
-I$(LIB_SRC)/transportModels \
|
-I$(LIB_SRC)/transportModels \
|
||||||
-I$(LIB_SRC)/transportModels/incompressible/lnInclude \
|
-I$(LIB_SRC)/transportModels/incompressible/lnInclude \
|
||||||
-I$(LIB_SRC)/transportModels/interfaceProperties/lnInclude \
|
-I$(LIB_SRC)/transportModels/interfaceProperties/lnInclude \
|
||||||
@ -8,6 +8,7 @@ EXE_INC = -ggdb3 \
|
|||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-linterfaceProperties \
|
-linterfaceProperties \
|
||||||
-lincompressibleTransportModels \
|
-lincompressibleTransportModels \
|
||||||
|
-lincompressibleTurbulenceModel \
|
||||||
-lincompressibleRASModels \
|
-lincompressibleRASModels \
|
||||||
-lincompressibleLESModels \
|
-lincompressibleLESModels \
|
||||||
-lfiniteVolume
|
-lfiniteVolume
|
||||||
|
|||||||
@ -12,6 +12,7 @@ EXE_INC = \
|
|||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-linterfaceProperties \
|
-linterfaceProperties \
|
||||||
-lincompressibleTransportModels \
|
-lincompressibleTransportModels \
|
||||||
|
-lincompressibleTurbulenceModel \
|
||||||
-lincompressibleRASModels \
|
-lincompressibleRASModels \
|
||||||
-lincompressibleLESModels \
|
-lincompressibleLESModels \
|
||||||
-lfiniteVolume \
|
-lfiniteVolume \
|
||||||
|
|||||||
@ -8,6 +8,7 @@ EXE_INC = \
|
|||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-linterfaceProperties \
|
-linterfaceProperties \
|
||||||
-lincompressibleTransportModels \
|
-lincompressibleTransportModels \
|
||||||
|
-lincompressibleTurbulenceModel \
|
||||||
-lincompressibleRASModels \
|
-lincompressibleRASModels \
|
||||||
-lincompressibleLESModels \
|
-lincompressibleLESModels \
|
||||||
-lfiniteVolume
|
-lfiniteVolume
|
||||||
|
|||||||
@ -12,6 +12,7 @@ EXE_INC = \
|
|||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-linterfaceProperties \
|
-linterfaceProperties \
|
||||||
-lincompressibleTransportModels \
|
-lincompressibleTransportModels \
|
||||||
|
-lincompressibleTurbulenceModel \
|
||||||
-lincompressibleRASModels \
|
-lincompressibleRASModels \
|
||||||
-lincompressibleLESModels \
|
-lincompressibleLESModels \
|
||||||
-lfiniteVolume
|
-lfiniteVolume
|
||||||
|
|||||||
@ -9,6 +9,7 @@ EXE_INC = \
|
|||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-linterfaceProperties \
|
-linterfaceProperties \
|
||||||
-lincompressibleTransportModels \
|
-lincompressibleTransportModels \
|
||||||
|
-lincompressibleTurbulenceModel \
|
||||||
-lincompressibleRASModels \
|
-lincompressibleRASModels \
|
||||||
-lincompressibleLESModels \
|
-lincompressibleLESModels \
|
||||||
-lfiniteVolume
|
-lfiniteVolume
|
||||||
|
|||||||
@ -11,6 +11,7 @@ EXE_INC = \
|
|||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-linterfaceProperties \
|
-linterfaceProperties \
|
||||||
-lincompressibleTransportModels \
|
-lincompressibleTransportModels \
|
||||||
|
-lincompressibleTurbulenceModel \
|
||||||
-lincompressibleRASModels \
|
-lincompressibleRASModels \
|
||||||
-lincompressibleLESModels \
|
-lincompressibleLESModels \
|
||||||
-lfiniteVolume
|
-lfiniteVolume
|
||||||
@ -8,6 +8,7 @@ EXE_INC = \
|
|||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-linterfaceProperties \
|
-linterfaceProperties \
|
||||||
-lincompressibleTransportModels \
|
-lincompressibleTransportModels \
|
||||||
|
-lincompressibleTurbulenceModel \
|
||||||
-lincompressibleRASModels \
|
-lincompressibleRASModels \
|
||||||
-lincompressibleLESModels \
|
-lincompressibleLESModels \
|
||||||
-lfiniteVolume
|
-lfiniteVolume
|
||||||
|
|||||||
@ -3,7 +3,6 @@ EXE_INC = \
|
|||||||
-I$(LIB_SRC)/errorEstimation/lnInclude
|
-I$(LIB_SRC)/errorEstimation/lnInclude
|
||||||
|
|
||||||
EXE_LIBS = \
|
EXE_LIBS = \
|
||||||
-lerrorEstimation \
|
|
||||||
-lmeshTools \
|
-lmeshTools \
|
||||||
-ldynamicMesh \
|
-ldynamicMesh \
|
||||||
-lfiniteVolume
|
-lfiniteVolume
|
||||||
|
|||||||
@ -430,6 +430,59 @@ int main(int argc, char *argv[])
|
|||||||
<< "Band before renumbering: "
|
<< "Band before renumbering: "
|
||||||
<< returnReduce(band, maxOp<label>()) << nl << endl;
|
<< returnReduce(band, maxOp<label>()) << nl << endl;
|
||||||
|
|
||||||
|
|
||||||
|
// Read parallel reconstruct maps
|
||||||
|
labelIOList cellProcAddressing
|
||||||
|
(
|
||||||
|
IOobject
|
||||||
|
(
|
||||||
|
"cellProcAddressing",
|
||||||
|
mesh.facesInstance(),
|
||||||
|
polyMesh::meshSubDir,
|
||||||
|
mesh,
|
||||||
|
IOobject::READ_IF_PRESENT
|
||||||
|
),
|
||||||
|
labelList(0)
|
||||||
|
);
|
||||||
|
|
||||||
|
labelIOList faceProcAddressing
|
||||||
|
(
|
||||||
|
IOobject
|
||||||
|
(
|
||||||
|
"faceProcAddressing",
|
||||||
|
mesh.facesInstance(),
|
||||||
|
polyMesh::meshSubDir,
|
||||||
|
mesh,
|
||||||
|
IOobject::READ_IF_PRESENT
|
||||||
|
),
|
||||||
|
labelList(0)
|
||||||
|
);
|
||||||
|
labelIOList pointProcAddressing
|
||||||
|
(
|
||||||
|
IOobject
|
||||||
|
(
|
||||||
|
"pointProcAddressing",
|
||||||
|
mesh.pointsInstance(),
|
||||||
|
polyMesh::meshSubDir,
|
||||||
|
mesh,
|
||||||
|
IOobject::READ_IF_PRESENT
|
||||||
|
),
|
||||||
|
labelList(0)
|
||||||
|
);
|
||||||
|
labelIOList boundaryProcAddressing
|
||||||
|
(
|
||||||
|
IOobject
|
||||||
|
(
|
||||||
|
"boundaryProcAddressing",
|
||||||
|
mesh.pointsInstance(),
|
||||||
|
polyMesh::meshSubDir,
|
||||||
|
mesh,
|
||||||
|
IOobject::READ_IF_PRESENT
|
||||||
|
),
|
||||||
|
labelList(0)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
// Read objects in time directory
|
// Read objects in time directory
|
||||||
IOobjectList objects(mesh, runTime.timeName());
|
IOobjectList objects(mesh, runTime.timeName());
|
||||||
|
|
||||||
@ -579,6 +632,39 @@ int main(int argc, char *argv[])
|
|||||||
// Update fields
|
// Update fields
|
||||||
mesh.updateMesh(map);
|
mesh.updateMesh(map);
|
||||||
|
|
||||||
|
// Update proc maps
|
||||||
|
if (cellProcAddressing.headerOk())
|
||||||
|
{
|
||||||
|
Info<< "Renumbering processor cell decomposition map "
|
||||||
|
<< cellProcAddressing.name() << endl;
|
||||||
|
|
||||||
|
cellProcAddressing = labelList
|
||||||
|
(
|
||||||
|
UIndirectList<label>(cellProcAddressing, map().cellMap())
|
||||||
|
);
|
||||||
|
}
|
||||||
|
if (faceProcAddressing.headerOk())
|
||||||
|
{
|
||||||
|
Info<< "Renumbering processor face decomposition map "
|
||||||
|
<< faceProcAddressing.name() << endl;
|
||||||
|
|
||||||
|
faceProcAddressing = labelList
|
||||||
|
(
|
||||||
|
UIndirectList<label>(faceProcAddressing, map().faceMap())
|
||||||
|
);
|
||||||
|
}
|
||||||
|
if (pointProcAddressing.headerOk())
|
||||||
|
{
|
||||||
|
Info<< "Renumbering processor point decomposition map "
|
||||||
|
<< pointProcAddressing.name() << endl;
|
||||||
|
|
||||||
|
pointProcAddressing = labelList
|
||||||
|
(
|
||||||
|
UIndirectList<label>(pointProcAddressing, map().pointMap())
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// Move mesh (since morphing might not do this)
|
// Move mesh (since morphing might not do this)
|
||||||
if (map().hasMotionPoints())
|
if (map().hasMotionPoints())
|
||||||
{
|
{
|
||||||
@ -652,9 +738,31 @@ int main(int argc, char *argv[])
|
|||||||
{
|
{
|
||||||
mesh.setInstance(oldInstance);
|
mesh.setInstance(oldInstance);
|
||||||
}
|
}
|
||||||
Info<< "Writing mesh to " << runTime.timeName() << endl;
|
|
||||||
|
Info<< "Writing mesh to " << mesh.facesInstance() << endl;
|
||||||
|
|
||||||
mesh.write();
|
mesh.write();
|
||||||
|
if (cellProcAddressing.headerOk())
|
||||||
|
{
|
||||||
|
cellProcAddressing.instance() = mesh.facesInstance();
|
||||||
|
cellProcAddressing.write();
|
||||||
|
}
|
||||||
|
if (faceProcAddressing.headerOk())
|
||||||
|
{
|
||||||
|
faceProcAddressing.instance() = mesh.facesInstance();
|
||||||
|
faceProcAddressing.write();
|
||||||
|
}
|
||||||
|
if (pointProcAddressing.headerOk())
|
||||||
|
{
|
||||||
|
pointProcAddressing.instance() = mesh.facesInstance();
|
||||||
|
pointProcAddressing.write();
|
||||||
|
}
|
||||||
|
if (boundaryProcAddressing.headerOk())
|
||||||
|
{
|
||||||
|
boundaryProcAddressing.instance() = mesh.facesInstance();
|
||||||
|
boundaryProcAddressing.write();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
if (writeMaps)
|
if (writeMaps)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
\\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -42,6 +42,9 @@ Usage
|
|||||||
@param -copyUniform \n
|
@param -copyUniform \n
|
||||||
Copy any @a uniform directories too.
|
Copy any @a uniform directories too.
|
||||||
|
|
||||||
|
@param -constant \n
|
||||||
|
Override controlDict settings and use constant directory.
|
||||||
|
|
||||||
@param -fields \n
|
@param -fields \n
|
||||||
Use existing geometry decomposition and convert fields only.
|
Use existing geometry decomposition and convert fields only.
|
||||||
|
|
||||||
@ -119,6 +122,11 @@ int main(int argc, char *argv[])
|
|||||||
"ifRequired",
|
"ifRequired",
|
||||||
"only decompose geometry if the number of domains has changed"
|
"only decompose geometry if the number of domains has changed"
|
||||||
);
|
);
|
||||||
|
argList::addBoolOption
|
||||||
|
(
|
||||||
|
"constant",
|
||||||
|
"include the 'constant/' dir in the times list"
|
||||||
|
);
|
||||||
|
|
||||||
#include "setRootCase.H"
|
#include "setRootCase.H"
|
||||||
|
|
||||||
@ -139,6 +147,20 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
#include "createTime.H"
|
#include "createTime.H"
|
||||||
|
|
||||||
|
// Allow -constant to override controlDict settings.
|
||||||
|
if (args.optionFound("constant"))
|
||||||
|
{
|
||||||
|
instantList timeDirs = timeSelector::select0(runTime, args);
|
||||||
|
if (runTime.timeName() != runTime.constant())
|
||||||
|
{
|
||||||
|
FatalErrorIn(args.executable())
|
||||||
|
<< "No '" << runTime.constant() << "' time present." << endl
|
||||||
|
<< "Valid times are " << runTime.times()
|
||||||
|
<< exit(FatalError);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
Info<< "Time = " << runTime.timeName() << endl;
|
Info<< "Time = " << runTime.timeName() << endl;
|
||||||
|
|
||||||
// determine the existing processor count directly
|
// determine the existing processor count directly
|
||||||
|
|||||||
@ -31,6 +31,7 @@ License
|
|||||||
#include "cellModeller.H"
|
#include "cellModeller.H"
|
||||||
#include "vtkOpenFOAMPoints.H"
|
#include "vtkOpenFOAMPoints.H"
|
||||||
#include "Swap.H"
|
#include "Swap.H"
|
||||||
|
#include "longLong.H"
|
||||||
|
|
||||||
// VTK includes
|
// VTK includes
|
||||||
#include "vtkCellArray.h"
|
#include "vtkCellArray.h"
|
||||||
|
|||||||
@ -195,7 +195,15 @@ void Foam::vtkPV3Foam::convertPointField
|
|||||||
|
|
||||||
// Note: using the name of the original volField
|
// Note: using the name of the original volField
|
||||||
// not the name generated by the interpolation "volPointInterpolate(<name>)"
|
// not the name generated by the interpolation "volPointInterpolate(<name>)"
|
||||||
pointData->SetName(tf.name().c_str());
|
|
||||||
|
if (&tf != &GeometricField<Type, fvPatchField, volMesh>::null())
|
||||||
|
{
|
||||||
|
pointData->SetName(tf.name().c_str());
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
pointData->SetName(ptf.name().c_str());
|
||||||
|
}
|
||||||
|
|
||||||
if (debug)
|
if (debug)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -360,7 +360,7 @@ int main(int argc, char *argv[])
|
|||||||
if (m < 0)
|
if (m < 0)
|
||||||
{
|
{
|
||||||
WarningIn(args.executable() + "::main")
|
WarningIn(args.executable() + "::main")
|
||||||
<< "Negative mass detected" << endl;
|
<< "Negative mass detected, the surface may be inside-out." << endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
vector eVal = eigenValues(J);
|
vector eVal = eigenValues(J);
|
||||||
|
|||||||
@ -1,11 +1,11 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
#------------------------------------------------------------------------------
|
#---------------------------------*- sh -*-------------------------------------
|
||||||
# ========= |
|
# ========= |
|
||||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
# \\ / O peration |
|
# \\ / O peration |
|
||||||
# \\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
# \\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
# \\/ M anipulation |
|
# \\/ M anipulation |
|
||||||
#-------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
# License
|
# License
|
||||||
# This file is part of OpenFOAM.
|
# This file is part of OpenFOAM.
|
||||||
#
|
#
|
||||||
@ -23,47 +23,38 @@
|
|||||||
# along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
# along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||||
#
|
#
|
||||||
# Script
|
# Script
|
||||||
# foamPackGeneral [outputDir]
|
# foamBinDirs <packDir> <arch>
|
||||||
#
|
#
|
||||||
# Description
|
# Description
|
||||||
# Packs and compresses the OpenFOAM directory for release
|
# Returns all directories containing binary files of OpenFOAM
|
||||||
#
|
#
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
|
|
||||||
timeStamp=$(date +%Y-%m-%d)
|
if [ $# -ne 2 ]
|
||||||
packDir=$WM_PROJECT-$WM_PROJECT_VERSION
|
|
||||||
packFile=${packDir}.General_${timeStamp}.gtgz
|
|
||||||
|
|
||||||
if [ ! -d $packDir ]
|
|
||||||
then
|
then
|
||||||
echo "Error: directory $packDir does not exist"
|
echo "Error: architecture type expected, exiting"
|
||||||
|
echo
|
||||||
|
echo "Usage : ${0##*/} <packDir> <arch>"
|
||||||
|
echo
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
packDir=$1
|
||||||
|
arch=$2
|
||||||
|
|
||||||
# add optional output directory
|
# base arch (w/o precision, optimization, etc)
|
||||||
if [ -d "$1" ]
|
baseArch=$(echo "$arch" | sed -e 's@[DS]P.*$@@')
|
||||||
then
|
|
||||||
packFile="$1/$packFile"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -f $packFile ]
|
# get list of directories
|
||||||
then
|
(
|
||||||
echo "Error: $packFile already exists"
|
for dir in \
|
||||||
exit 1
|
$packDir/lib/$arch \
|
||||||
fi
|
$packDir/applications/bin/$arch \
|
||||||
|
$packDir/wmake/rules \
|
||||||
# Create time stamp file
|
$packDir/wmake/bin/$baseArch \
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~
|
;
|
||||||
|
do
|
||||||
echo $timeStamp 2>/dev/null > $packDir/.timeStamp
|
[ -d $dir ] && echo $dir
|
||||||
|
done
|
||||||
# Pack and compress the packFile
|
)
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
echo
|
|
||||||
echo "Packing $packDir source files into $packFile"
|
|
||||||
echo
|
|
||||||
|
|
||||||
foamPackSource $packDir $packFile
|
|
||||||
|
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
112
bin/foamEtcFile
112
bin/foamEtcFile
@ -39,8 +39,6 @@
|
|||||||
# @endverbatim
|
# @endverbatim
|
||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
unset listOpt quietOpt
|
|
||||||
|
|
||||||
usage() {
|
usage() {
|
||||||
[ "$quietOpt" = true ] && exit 1
|
[ "$quietOpt" = true ] && exit 1
|
||||||
|
|
||||||
@ -53,7 +51,10 @@ Usage: ${0##*/} [OPTION] fileName
|
|||||||
options:
|
options:
|
||||||
-list list the directories to be searched
|
-list list the directories to be searched
|
||||||
-mode <mode> any combination of u(user), g(group), o(other)
|
-mode <mode> any combination of u(user), g(group), o(other)
|
||||||
|
-prefix <dir> specify an alternative installation prefix
|
||||||
-quiet suppress all normal output
|
-quiet suppress all normal output
|
||||||
|
-version <ver> specify an alternative OpenFOAM version
|
||||||
|
in the form Maj.Min.Rev (eg, 1.7.0)
|
||||||
-help print the usage
|
-help print the usage
|
||||||
|
|
||||||
Locate user/group/shipped file with semantics similar to the
|
Locate user/group/shipped file with semantics similar to the
|
||||||
@ -71,9 +72,63 @@ USAGE
|
|||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#
|
||||||
|
# This script must exist in <foamInstall>/OpenFOAM-<VERSION>/bin/
|
||||||
|
# or <foamInstall>/openfoam<VERSION>/bin/ (for the debian version)
|
||||||
|
#
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
# the bindir:
|
||||||
|
binDir="${0%/*}"
|
||||||
|
|
||||||
|
# the project dir:
|
||||||
|
projectDir="${binDir%/bin}"
|
||||||
|
|
||||||
|
# the prefix dir (same as foamInstall):
|
||||||
|
prefixDir="${projectDir%/*}"
|
||||||
|
|
||||||
|
# the name used for the project directory
|
||||||
|
projectDirName="${projectDir##*/}"
|
||||||
|
|
||||||
|
# version number used for debian packaging
|
||||||
|
unset versionNum
|
||||||
|
|
||||||
|
#
|
||||||
|
# handle standard and debian naming convention
|
||||||
|
#
|
||||||
|
case "$projectDirName" in
|
||||||
|
OpenFOAM-*) # standard naming convention OpenFOAM-<VERSION>
|
||||||
|
version="${projectDirName##OpenFOAM-}"
|
||||||
|
;;
|
||||||
|
|
||||||
|
openfoam[0-9]*) # debian naming convention 'openfoam<VERSION>'
|
||||||
|
versionNum="${projectDirName##openfoam}"
|
||||||
|
case "$versionNum" in
|
||||||
|
??) # convert 2 digit version number to decimal delineated
|
||||||
|
version=$(echo "$versionNum" | sed -e 's@\(.\)\(.\)@\1.\2@')
|
||||||
|
;;
|
||||||
|
???) # convert 3 digit version number to decimal delineated
|
||||||
|
version=$(echo "$versionNum" | sed -e 's@\(.\)\(.\)\(.\)@\1.\2.\3@')
|
||||||
|
;;
|
||||||
|
????) # convert 4 digit version number to decimal delineated
|
||||||
|
version=$(echo "$versionNum" | sed -e 's@\(.\)\(.\)\(.\)\(.\)@\1.\2.\3.\4@')
|
||||||
|
;;
|
||||||
|
*) # failback - use current environment setting
|
||||||
|
version="$WM_PROJECT_VERSION"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
echo "Error : unknown/unsupported naming convention"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
|
||||||
# default mode is 'ugo'
|
# default mode is 'ugo'
|
||||||
mode=ugo
|
mode=ugo
|
||||||
|
unset listOpt quietOpt
|
||||||
|
|
||||||
# parse options
|
# parse options
|
||||||
while [ "$#" -gt 0 ]
|
while [ "$#" -gt 0 ]
|
||||||
@ -84,7 +139,6 @@ do
|
|||||||
;;
|
;;
|
||||||
-l | -list)
|
-l | -list)
|
||||||
listOpt=true
|
listOpt=true
|
||||||
shift
|
|
||||||
;;
|
;;
|
||||||
-m | -mode)
|
-m | -mode)
|
||||||
[ "$#" -ge 2 ] || usage "'$1' option requires an argument"
|
[ "$#" -ge 2 ] || usage "'$1' option requires an argument"
|
||||||
@ -98,12 +152,30 @@ do
|
|||||||
usage "'$1' option with invalid mode '$mode'"
|
usage "'$1' option with invalid mode '$mode'"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
shift 2
|
shift
|
||||||
|
;;
|
||||||
|
-p | -prefix)
|
||||||
|
[ "$#" -ge 2 ] || usage "'$1' option requires an argument"
|
||||||
|
prefixDir="$2"
|
||||||
|
shift
|
||||||
;;
|
;;
|
||||||
-q | -quiet)
|
-q | -quiet)
|
||||||
quietOpt=true
|
quietOpt=true
|
||||||
|
;;
|
||||||
|
-v | -version)
|
||||||
|
[ "$#" -ge 2 ] || usage "'$1' option requires an argument"
|
||||||
|
version="$2"
|
||||||
|
# convert x.y.z -> xyz version (if installation looked like debian)
|
||||||
|
if [ -n "$versionNum" ]
|
||||||
|
then
|
||||||
|
versionNum=$(echo "$version" | sed -e 's@\.@@g')
|
||||||
|
fi
|
||||||
shift
|
shift
|
||||||
;;
|
;;
|
||||||
|
--)
|
||||||
|
shift
|
||||||
|
break
|
||||||
|
;;
|
||||||
-*)
|
-*)
|
||||||
usage "unknown option: '$*'"
|
usage "unknown option: '$*'"
|
||||||
;;
|
;;
|
||||||
@ -111,31 +183,49 @@ do
|
|||||||
break
|
break
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
shift
|
||||||
done
|
done
|
||||||
|
|
||||||
# Save the essential bits of information:
|
|
||||||
|
# debugging:
|
||||||
|
# echo "Installed locations:"
|
||||||
|
# for i in projectDir prefixDir projectDirName version versionNum
|
||||||
|
# do
|
||||||
|
# eval echo "$i=\$$i"
|
||||||
|
# done
|
||||||
|
|
||||||
|
|
||||||
|
# Save the essential bits of information
|
||||||
|
# silently remove leading ~OpenFOAM/ (used in Foam::findEtcFile)
|
||||||
nArgs=$#
|
nArgs=$#
|
||||||
fileName="$1"
|
fileName="${1#~OpenFOAM/}"
|
||||||
|
|
||||||
# Define the various places to be searched:
|
# Define the various places to be searched:
|
||||||
unset dirList
|
unset dirList
|
||||||
case "$mode" in
|
case "$mode" in
|
||||||
*u*) # user
|
*u*) # user
|
||||||
dirList="$dirList $HOME/.${WM_PROJECT:-OpenFOAM}/$WM_PROJECT_VERSION"
|
dirList="$dirList $HOME/.${WM_PROJECT:-OpenFOAM}/$version"
|
||||||
dirList="$dirList $HOME/.${WM_PROJECT:-OpenFOAM}"
|
dirList="$dirList $HOME/.${WM_PROJECT:-OpenFOAM}"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
case "$mode" in
|
case "$mode" in
|
||||||
*g*) # group
|
*g*) # group
|
||||||
dirList="$dirList $WM_PROJECT_INST_DIR/site/$WM_PROJECT_VERSION"
|
dirList="$dirList $prefixDir/site/$version"
|
||||||
dirList="$dirList $WM_PROJECT_INST_DIR/site"
|
dirList="$dirList $prefixDir/site"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
case "$mode" in
|
case "$mode" in
|
||||||
*o*) # other
|
*o*) # other (shipped)
|
||||||
dirList="$dirList $WM_PROJECT_DIR/etc"
|
if [ -n "$versionNum" ]
|
||||||
|
then
|
||||||
|
# debian packaging
|
||||||
|
dirList="$dirList $prefixDir/openfoam$versionNum/etc"
|
||||||
|
else
|
||||||
|
# standard packaging
|
||||||
|
dirList="$dirList $prefixDir/${WM_PROJECT:-OpenFOAM}-$version/etc"
|
||||||
|
fi
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
set -- $dirList
|
set -- $dirList
|
||||||
|
|||||||
74
bin/foamExec
74
bin/foamExec
@ -35,6 +35,8 @@
|
|||||||
# mpirun -np <nProcs> \
|
# mpirun -np <nProcs> \
|
||||||
# foamExec -v <foamVersion> <foamCommand> ... -parallel
|
# foamExec -v <foamVersion> <foamCommand> ... -parallel
|
||||||
#
|
#
|
||||||
|
# SeeAlso
|
||||||
|
# foamEtcFile
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
usage() {
|
usage() {
|
||||||
while [ "$#" -ge 1 ]; do echo "$1"; shift; done
|
while [ "$#" -ge 1 ]; do echo "$1"; shift; done
|
||||||
@ -43,8 +45,9 @@ usage() {
|
|||||||
Usage: ${0##*/} [OPTION] <application> ...
|
Usage: ${0##*/} [OPTION] <application> ...
|
||||||
|
|
||||||
options:
|
options:
|
||||||
-v ver specify OpenFOAM version
|
-version <ver> specify an alternative OpenFOAM version
|
||||||
-help this usage
|
pass through to foamEtcFile
|
||||||
|
-help this usage
|
||||||
|
|
||||||
* run a particular OpenFOAM version of <application>
|
* run a particular OpenFOAM version of <application>
|
||||||
|
|
||||||
@ -52,18 +55,14 @@ USAGE
|
|||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#
|
||||||
|
# This script must exist in <foamInstall>/OpenFOAM-<VERSION>/bin/
|
||||||
|
# or <foamInstall>/openfoam<VERSION>/bin/ (for the debian version)
|
||||||
|
#
|
||||||
|
# foamEtcFile is found in the same directory
|
||||||
|
#-------------------------------------------------------------------------------
|
||||||
|
|
||||||
# This script should exist in <foamInstall>/OpenFOAM-<VERSION>/bin/
|
unset etcOpts
|
||||||
# extract the <foamInstall> and <version> elements
|
|
||||||
# using a function preserves the command args
|
|
||||||
getDefaults() {
|
|
||||||
set -- $(echo $0 | sed -e 's@/OpenFOAM-\([^/]*\)/bin/[^/]*$@ \1@')
|
|
||||||
foamInstall=$1
|
|
||||||
version=$2
|
|
||||||
}
|
|
||||||
|
|
||||||
getDefaults
|
|
||||||
|
|
||||||
# parse options
|
# parse options
|
||||||
while [ "$#" -gt 0 ]
|
while [ "$#" -gt 0 ]
|
||||||
do
|
do
|
||||||
@ -71,9 +70,9 @@ do
|
|||||||
-h | -help)
|
-h | -help)
|
||||||
usage
|
usage
|
||||||
;;
|
;;
|
||||||
-v)
|
-v | -version)
|
||||||
shift
|
[ "$#" -ge 2 ] || usage "'$1' option requires an argument"
|
||||||
version=$1
|
etcOpts="-version $2"
|
||||||
shift
|
shift
|
||||||
;;
|
;;
|
||||||
--)
|
--)
|
||||||
@ -87,43 +86,22 @@ do
|
|||||||
break
|
break
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
shift
|
||||||
done
|
done
|
||||||
|
|
||||||
if [ "$#" -lt 1 ]
|
[ "$#" -ge 1 ] || usage "no application specified"
|
||||||
then
|
|
||||||
usage "no application specified"
|
|
||||||
fi
|
|
||||||
|
|
||||||
unset foamDotFile
|
# find OpenFOAM settings (bashrc)
|
||||||
|
foamDotFile="$(${0%/*}/foamEtcFile $etcOpts bashrc)" || {
|
||||||
# Check user-specific OpenFOAM bashrc file
|
|
||||||
foamDotFile="$HOME/.OpenFOAM/$version/bashrc"
|
|
||||||
if [ -f $foamDotFile ]
|
|
||||||
then
|
|
||||||
. $foamDotFile
|
|
||||||
foamDotFile=okay
|
|
||||||
else
|
|
||||||
# Use the FOAM_INST_DIR variable for locating the installed version
|
|
||||||
for FOAM_INST_DIR in $foamInstall $WM_PROJECT_INST_DIR
|
|
||||||
do
|
|
||||||
foamDotFile="$FOAM_INST_DIR/OpenFOAM-$version/etc/bashrc"
|
|
||||||
if [ -f $foamDotFile ]
|
|
||||||
then
|
|
||||||
. $foamDotFile
|
|
||||||
foamDotFile=okay
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
if [ "$foamDotFile" != okay ]
|
|
||||||
then
|
|
||||||
echo "Error : bashrc file could not be found for OpenFOAM-$version" 1>&2
|
echo "Error : bashrc file could not be found for OpenFOAM-$version" 1>&2
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
}
|
||||||
|
|
||||||
# Pass on the rest of the arguments
|
# preserve arguments (can otherwise get lost when sourcing the foamDotFile)
|
||||||
exec $*
|
args="$*"
|
||||||
|
. $foamDotFile
|
||||||
|
|
||||||
|
# execute
|
||||||
|
exec $args
|
||||||
|
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
|
|||||||
58
bin/foamPack
58
bin/foamPack
@ -1,11 +1,11 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
#------------------------------------------------------------------------------
|
#---------------------------------*- sh -*-------------------------------------
|
||||||
# ========= |
|
# ========= |
|
||||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
# \\ / O peration |
|
# \\ / O peration |
|
||||||
# \\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
# \\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
# \\/ M anipulation |
|
# \\/ M anipulation |
|
||||||
#-------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
# License
|
# License
|
||||||
# This file is part of OpenFOAM.
|
# This file is part of OpenFOAM.
|
||||||
#
|
#
|
||||||
@ -29,7 +29,6 @@
|
|||||||
# Packs and compresses the OpenFOAM directory for release
|
# Packs and compresses the OpenFOAM directory for release
|
||||||
#
|
#
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
tmpFile=${TMPDIR:-/tmp}/foamPackFiles.$$
|
|
||||||
|
|
||||||
timeStamp=$(date +%Y-%m-%d)
|
timeStamp=$(date +%Y-%m-%d)
|
||||||
packDir=$WM_PROJECT-$WM_PROJECT_VERSION
|
packDir=$WM_PROJECT-$WM_PROJECT_VERSION
|
||||||
@ -37,7 +36,7 @@ packFile=${packDir}_${timeStamp}.gtgz
|
|||||||
|
|
||||||
if [ ! -d $packDir ]
|
if [ ! -d $packDir ]
|
||||||
then
|
then
|
||||||
echo "Error: directory $packDir does not exist" 1>&2
|
echo "Error: directory $packDir does not exist"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -49,7 +48,7 @@ fi
|
|||||||
|
|
||||||
if [ -f $packFile ]
|
if [ -f $packFile ]
|
||||||
then
|
then
|
||||||
echo "Error: $packFile already exists" 1>&2
|
echo "Error: $packFile already exists"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -58,54 +57,13 @@ fi
|
|||||||
|
|
||||||
echo $timeStamp 2>/dev/null > $packDir/.timeStamp
|
echo $timeStamp 2>/dev/null > $packDir/.timeStamp
|
||||||
|
|
||||||
# Clean up on termination and on Ctrl-C
|
# Pack and compress the packFile
|
||||||
trap 'rm -f $tmpFile 2>/dev/null; exit 0' EXIT TERM INT
|
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
|
||||||
# Pack and compress the packFile using GNU tar
|
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
echo
|
echo
|
||||||
echo "Packing foam version $packDir into $packFile"
|
echo "Packing $packDir source files into $packFile"
|
||||||
echo
|
echo
|
||||||
echo "finding and packing"
|
|
||||||
|
|
||||||
find -H $packDir \
|
foamPackSource $packDir $packFile
|
||||||
! -type d -type f \
|
|
||||||
! -name "*~" \
|
|
||||||
-a ! -name ".*~" \
|
|
||||||
-a ! -name "*.orig" \
|
|
||||||
-a ! -name "*.dep" \
|
|
||||||
-a ! -name "*.o" \
|
|
||||||
-a ! -name "*.so" \
|
|
||||||
-a ! -name "*.a" \
|
|
||||||
-a ! -name "core" \
|
|
||||||
-a ! -name "core.[1-9]*" \
|
|
||||||
-a ! -name "pvml.[1-9]*" \
|
|
||||||
-a ! -name "log[0-9]*" \
|
|
||||||
-a ! -name "so_locations" \
|
|
||||||
| sed \
|
|
||||||
-e "\@$packDir/lib/@d" \
|
|
||||||
-e '\@/\.git/@d' \
|
|
||||||
-e '\@applications/bin/@d' \
|
|
||||||
-e '\@wmake/bin/@d' \
|
|
||||||
-e '\@/t/@d' \
|
|
||||||
-e '\@Make[.A-Za-z]*/[^/]*/@d' \
|
|
||||||
-e '\@doc/[Dd]oxygen/html@d' \
|
|
||||||
-e '\@doc/[Dd]oxygen/latex@d' \
|
|
||||||
-e '\@doc/[Dd]oxygen/man@d' \
|
|
||||||
-e '\@/lnInclude@d' \
|
|
||||||
-e '\@/ii_files@d' \
|
|
||||||
| tee $tmpFile
|
|
||||||
|
|
||||||
tar czpf $packFile --files-from $tmpFile
|
|
||||||
|
|
||||||
if [ $? -eq 0 ]
|
|
||||||
then
|
|
||||||
echo "Finished packing and compressing $packDir into file $packFile"
|
|
||||||
else
|
|
||||||
echo "Error: failure packing $packDir into file $packFile" 1>&2
|
|
||||||
rm -f $packFile 2>/dev/null
|
|
||||||
fi
|
|
||||||
|
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
|
|||||||
@ -70,17 +70,7 @@ do
|
|||||||
done
|
done
|
||||||
|
|
||||||
# get list of directories
|
# get list of directories
|
||||||
dirList=$(
|
dirList=`foamBinDirs $packDir $arch`
|
||||||
for dir in \
|
|
||||||
$packDir/lib/$arch \
|
|
||||||
$packDir/applications/bin/$arch \
|
|
||||||
$packDir/wmake/rules \
|
|
||||||
$packDir/wmake/bin/$baseArch \
|
|
||||||
;
|
|
||||||
do
|
|
||||||
[ -d $dir ] && echo $dir
|
|
||||||
done
|
|
||||||
)
|
|
||||||
|
|
||||||
echo
|
echo
|
||||||
echo "Packing $arch ($baseArch) port of $packDir into $packFile"
|
echo "Packing $arch ($baseArch) port of $packDir into $packFile"
|
||||||
|
|||||||
@ -61,34 +61,7 @@ fi
|
|||||||
# Clean up on termination and on Ctrl-C
|
# Clean up on termination and on Ctrl-C
|
||||||
trap 'rm -f $tmpFile 2>/dev/null; exit 0' EXIT TERM INT
|
trap 'rm -f $tmpFile 2>/dev/null; exit 0' EXIT TERM INT
|
||||||
|
|
||||||
find -H $packDir \
|
foamSourceFiles $packDir > $tmpFile
|
||||||
! -type d \
|
|
||||||
\( -type f -o -type l \) \
|
|
||||||
! -name "*~" \
|
|
||||||
-a ! -name ".*~" \
|
|
||||||
-a ! -name "*.orig" \
|
|
||||||
-a ! -name "*.dep" \
|
|
||||||
-a ! -name "*.o" \
|
|
||||||
-a ! -name "*.so" \
|
|
||||||
-a ! -name "*.a" \
|
|
||||||
-a ! -name "*.tgz" \
|
|
||||||
-a ! -name "core" \
|
|
||||||
-a ! -name "core.[1-9]*" \
|
|
||||||
-a ! -name "libccmio*" \
|
|
||||||
| sed \
|
|
||||||
-e "\@$packDir/lib/@d" \
|
|
||||||
-e '\@/\.git/@d' \
|
|
||||||
-e '\@/\.tags/@d' \
|
|
||||||
-e '\@/\README\.org@d' \
|
|
||||||
-e '\@applications/bin/@d' \
|
|
||||||
-e '\@wmake/bin/@d' \
|
|
||||||
-e '\@/t/@d' \
|
|
||||||
-e '\@/Make[.A-Za-z]*/[^/]*/@d'\
|
|
||||||
-e '\@/platforms/@d' \
|
|
||||||
-e '\@/download/@d' \
|
|
||||||
-e '\@/libccmio-.*/@d' \
|
|
||||||
-e '\@/debian/@d'
|
|
||||||
> $tmpFile
|
|
||||||
|
|
||||||
|
|
||||||
# provide some feedback
|
# provide some feedback
|
||||||
|
|||||||
@ -1,11 +1,11 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
#------------------------------------------------------------------------------
|
#---------------------------------*- sh -*-------------------------------------
|
||||||
# ========= |
|
# ========= |
|
||||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
# \\ / O peration |
|
# \\ / O peration |
|
||||||
# \\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
# \\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
# \\/ M anipulation |
|
# \\/ M anipulation |
|
||||||
#-------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
# License
|
# License
|
||||||
# This file is part of OpenFOAM.
|
# This file is part of OpenFOAM.
|
||||||
#
|
#
|
||||||
@ -23,7 +23,7 @@
|
|||||||
# along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
# along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||||
#
|
#
|
||||||
# Script
|
# Script
|
||||||
# foamPackThirdPartyGeneral [outputDir]
|
# foamPackThirdParty [outputDir]
|
||||||
#
|
#
|
||||||
# Description
|
# Description
|
||||||
# Packs and compresses the OpenFOAM ThirdParty directory for release
|
# Packs and compresses the OpenFOAM ThirdParty directory for release
|
||||||
@ -33,7 +33,7 @@
|
|||||||
timeStamp=$(date +%Y-%m-%d)
|
timeStamp=$(date +%Y-%m-%d)
|
||||||
packDir=${WM_THIRD_PARTY_DIR:-ThirdParty}
|
packDir=${WM_THIRD_PARTY_DIR:-ThirdParty}
|
||||||
packDir=${packDir##*/}
|
packDir=${packDir##*/}
|
||||||
packFile=${packDir}.General_${timeStamp}.gtgz
|
packFile=${packDir}_${timeStamp}.gtgz
|
||||||
|
|
||||||
if [ ! -d $packDir ]
|
if [ ! -d $packDir ]
|
||||||
then
|
then
|
||||||
81
bin/foamSourceFiles
Executable file
81
bin/foamSourceFiles
Executable file
@ -0,0 +1,81 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#---------------------------------*- sh -*-------------------------------------
|
||||||
|
# ========= |
|
||||||
|
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
# \\ / O peration |
|
||||||
|
# \\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
|
# \\/ M anipulation |
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
|
# License
|
||||||
|
# This file is part of OpenFOAM.
|
||||||
|
#
|
||||||
|
# OpenFOAM is free software: you can redistribute it and/or modify it
|
||||||
|
# under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
# for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
# Script
|
||||||
|
# foamSourceFiles <directory>
|
||||||
|
#
|
||||||
|
# Description
|
||||||
|
# Returns all the .C and .H files and Make/options
|
||||||
|
# and Make/files in a given directory.
|
||||||
|
#
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
if [ $# -ne 1 ]
|
||||||
|
then
|
||||||
|
echo "Usage : ${0##*/} directory"
|
||||||
|
echo ""
|
||||||
|
echo "Returns all .C and .H files and Make/options and Make/files."
|
||||||
|
echo ""
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# canonical form (no double and no trailing dashes)
|
||||||
|
packDir=$(echo "$1" | sed -e 's@//*@/@g' -e 's@/$@@')
|
||||||
|
|
||||||
|
if [ ! -d $packDir ]
|
||||||
|
then
|
||||||
|
echo "Error: directory $packDir does not exist"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
find -H $packDir \
|
||||||
|
! -type d \
|
||||||
|
\( -type f -o -type l \) \
|
||||||
|
! -name "*~" \
|
||||||
|
-a ! -name ".*~" \
|
||||||
|
-a ! -name "*.orig" \
|
||||||
|
-a ! -name "*.dep" \
|
||||||
|
-a ! -name "*.o" \
|
||||||
|
-a ! -name "*.so" \
|
||||||
|
-a ! -name "*.a" \
|
||||||
|
-a ! -name "*.tgz" \
|
||||||
|
-a ! -name "core" \
|
||||||
|
-a ! -name "core.[1-9]*" \
|
||||||
|
-a ! -name "libccmio*" \
|
||||||
|
| sed \
|
||||||
|
-e "\@$packDir/lib/@d" \
|
||||||
|
-e '\@/\.git/@d' \
|
||||||
|
-e '\@/\.gitignore@d' \
|
||||||
|
-e '\@/\.tags/@d' \
|
||||||
|
-e '\@/\README\.org@d' \
|
||||||
|
-e '\@applications/bin/@d' \
|
||||||
|
-e '\@wmake/bin/@d' \
|
||||||
|
-e '\@/t/@d' \
|
||||||
|
-e '\@/Make[.A-Za-z]*/[^/]*/@d'\
|
||||||
|
-e '\@/platforms/@d' \
|
||||||
|
-e '\@/download/@d' \
|
||||||
|
-e '\@/libccmio-.*/@d' \
|
||||||
|
-e '\@/debian/@d'
|
||||||
|
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
288
bin/mpigammarun
288
bin/mpigammarun
@ -1,288 +0,0 @@
|
|||||||
#! /bin/sh
|
|
||||||
#
|
|
||||||
# Giuseppe Ciaccio 15 November 2000
|
|
||||||
# This script is derived from the mpirun.args original script of MPICH .
|
|
||||||
#
|
|
||||||
hasprinthelp=1
|
|
||||||
progname=
|
|
||||||
cmdLineArgs=
|
|
||||||
machineFile=
|
|
||||||
machineFileArg=
|
|
||||||
fake_progname=
|
|
||||||
np=1
|
|
||||||
mpirun_verbose=0
|
|
||||||
just_testing=0
|
|
||||||
machineFileArg=
|
|
||||||
machineFile=
|
|
||||||
Show=eval
|
|
||||||
#
|
|
||||||
PrintHelp() {
|
|
||||||
#
|
|
||||||
# If you change this, make the corresponding changes in README so that
|
|
||||||
# the man pages are updated.
|
|
||||||
#
|
|
||||||
cat <<EOF
|
|
||||||
mpirun [mpirun_options...] <progname> [options...]
|
|
||||||
|
|
||||||
mpirun_options:
|
|
||||||
-h This help
|
|
||||||
-machinefile <machine-file name>
|
|
||||||
The file is a list of machines to be involved in the job run.
|
|
||||||
Local machine is always involved (and hosts instance #0).
|
|
||||||
Default machine file is /etc/gamma.conf
|
|
||||||
-np <np>
|
|
||||||
specify the number of process instances to be generated.
|
|
||||||
-t Testing - do not actually run, just print what would be
|
|
||||||
executed
|
|
||||||
-v Verbose - throw in some comments
|
|
||||||
|
|
||||||
Multiple architectures as well as multiple pathnames for the executables
|
|
||||||
cannot be handled yet.
|
|
||||||
|
|
||||||
EOF
|
|
||||||
}
|
|
||||||
|
|
||||||
while [ 1 -le $# ] ; do
|
|
||||||
arg=$1
|
|
||||||
#echo $arg
|
|
||||||
#echo $#
|
|
||||||
shift
|
|
||||||
case $arg in
|
|
||||||
-arch)
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-np)
|
|
||||||
np="$1"
|
|
||||||
nodigits=`echo $np | sed 's/^[0-9]*$//'`
|
|
||||||
if [ "$nodigits" != "" -o $np -lt 1 ] ; then
|
|
||||||
echo np: $np is an invalid number of processors. Exiting.
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-machine)
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-machinefile)
|
|
||||||
machineFileArg="-machinefile"
|
|
||||||
machineFile="$1"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-device)
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-stdin)
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-stdout)
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-stderr)
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-nolocal)
|
|
||||||
;;
|
|
||||||
-h)
|
|
||||||
if [ "$hasprinthelp" = 1 ] ; then
|
|
||||||
PrintHelp
|
|
||||||
fi
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
-e)
|
|
||||||
;;
|
|
||||||
-pg)
|
|
||||||
;;
|
|
||||||
-leave_pg|-keep_pg)
|
|
||||||
;;
|
|
||||||
-batch)
|
|
||||||
;;
|
|
||||||
-jid)
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-globusrsl)
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-globusdb)
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-globusargs)
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-p4pg)
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-p4wd)
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-tcppg)
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-p4ssport)
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-paragontype)
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-paragonname)
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-paragonpn)
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v)
|
|
||||||
mpirun_verbose=1
|
|
||||||
;;
|
|
||||||
-t)
|
|
||||||
just_testing=1
|
|
||||||
Show=echo
|
|
||||||
;;
|
|
||||||
-tv|-totalview)
|
|
||||||
;;
|
|
||||||
-ksq)
|
|
||||||
;;
|
|
||||||
-dbx)
|
|
||||||
;;
|
|
||||||
-gdb)
|
|
||||||
;;
|
|
||||||
-xxgdb)
|
|
||||||
;;
|
|
||||||
-ddd)
|
|
||||||
;;
|
|
||||||
-pedb)
|
|
||||||
;;
|
|
||||||
-nopoll)
|
|
||||||
;;
|
|
||||||
-maxtime|-cpu)
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-mem)
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-mvhome)
|
|
||||||
;;
|
|
||||||
-mvback)
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-cac)
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-echo)
|
|
||||||
;;
|
|
||||||
-usage|-help|-\?)
|
|
||||||
# Accept these for help until the program name is provided.
|
|
||||||
if [ "$progname" = "" ] ; then
|
|
||||||
if [ "$hasprinthelp" = "1" ] ; then
|
|
||||||
PrintHelp
|
|
||||||
fi
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
# The first unrecognized argument is assumed to be the name of
|
|
||||||
# the program, but only if it is executable
|
|
||||||
proginstance=`echo $arg | sed "s/%a/$arch/g"`
|
|
||||||
if [ "$progname" = "" -a "$fake_progname" = "" -a \
|
|
||||||
! -x "$proginstance" ] ; then
|
|
||||||
fake_progname="$arg"
|
|
||||||
elif [ "$progname" = "" -a -x "$proginstance" ] ; then
|
|
||||||
progname="$arg"
|
|
||||||
# any following unrecognized arguments are assumed to be arguments
|
|
||||||
# to be passed to the program, as well as all future args
|
|
||||||
while [ 1 -le $# ] ; do
|
|
||||||
cmdLineArgs="$cmdLineArgs $1"
|
|
||||||
shift
|
|
||||||
done
|
|
||||||
else
|
|
||||||
echo "Warning: Command line arguments for program should be given"
|
|
||||||
echo "after the program name. Assuming that $arg is a"
|
|
||||||
echo "command line argument for the program."
|
|
||||||
cmdLineArgsExecer="$cmdLineArgsExecer -arg=$arg"
|
|
||||||
cmdLineArgs="$cmdLineArgs $arg"
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
# We need at least the program name
|
|
||||||
|
|
||||||
if [ "$progname" = "" ] ; then
|
|
||||||
echo "Missing: program name"
|
|
||||||
if [ "$fake_progname" != "" ] ; then
|
|
||||||
echo "Program $fake_progname either does not exist, is not "
|
|
||||||
echo "executable, or is an erroneous argument to mpirun."
|
|
||||||
fi
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
#
|
|
||||||
# Fill out relative program pathnames
|
|
||||||
#
|
|
||||||
# Get the current directory
|
|
||||||
# Note that PWD may NOT be `pwd` if an explicit "cd", outside of the csh
|
|
||||||
# shell, is used. A downside of this is that PWD may have a more reasonable
|
|
||||||
# version of the path. To try and fix this, we create a test file and see
|
|
||||||
# if it is accessible from PWD and pwd; if so, we take the PWD value
|
|
||||||
#
|
|
||||||
# Why can't automounters work!???!!
|
|
||||||
#
|
|
||||||
# For those unfamiliar with the problem, the automounter creates
|
|
||||||
# paths like /tmp_mnt/.... . But if you try to open a file with that path,
|
|
||||||
# and the ACTUAL path has not been accessed before, the automounter fails
|
|
||||||
# to mount the partition. In otherwords, the automounter is so mind-bogglingly
|
|
||||||
# stupid as to not recognize its OWN MOUNTS. Network computing indeed.
|
|
||||||
#
|
|
||||||
# Note that PWD may ALSO be damaged, so we need to sed PWD as well...
|
|
||||||
#
|
|
||||||
# We should move this to the point in the code where it needs to know a
|
|
||||||
# particular filename, since this will fail if the directory is not
|
|
||||||
# writable by the user.
|
|
||||||
#
|
|
||||||
if [ -n "sed -e s@/tmp_mnt/@/@g" ] ; then
|
|
||||||
PWDtest=`pwd | sed -e s@/tmp_mnt/@/@g`
|
|
||||||
if [ ! -d $PWDtest ] ; then
|
|
||||||
PWDtest=`pwd`
|
|
||||||
fi
|
|
||||||
if [ -n "$PWD" ] ; then
|
|
||||||
# Use a process-specific filename
|
|
||||||
PWDtest2=`echo $PWD | sed -e s@/tmp_mnt/@/@g`
|
|
||||||
/bin/rm -f $PWDtest/.mpirtmp$$ $PWDtest2/.mpirtmp$$
|
|
||||||
if `eval "echo test > $PWDtest2/.mpirtmp$$" 2>/dev/null` ; then
|
|
||||||
if [ ! -s $PWDtest/.mpirtmp$$ ] ; then
|
|
||||||
/bin/rm -f $PWDtest2/.mpirtmp$$
|
|
||||||
PWD=$PWDtest
|
|
||||||
else
|
|
||||||
PWD=$PWDtest2
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
# Current directory is not writable. Hope for the best
|
|
||||||
PWD=$PWDtest
|
|
||||||
fi
|
|
||||||
/bin/rm -f $PWDtest/.mpirtmp$$ $PWDtest2/.mpirtmp$$
|
|
||||||
else
|
|
||||||
PWD=$PWDtest
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
PWD=`pwd`
|
|
||||||
fi
|
|
||||||
#
|
|
||||||
if [ -n "$PWD" ] ; then
|
|
||||||
PWD_TRIAL=$PWD
|
|
||||||
else
|
|
||||||
PWD_TRIAL=$PWDtest
|
|
||||||
fi
|
|
||||||
# The test for PWD_TRIAL usable is within the p4/execer/tcp test (since that
|
|
||||||
# is where it matters)
|
|
||||||
#
|
|
||||||
tail=`echo $progname | sed 's/\/.*//'`
|
|
||||||
if [ "$tail" = "" ] ; then
|
|
||||||
#echo Absolute path, don't need to change anything
|
|
||||||
true
|
|
||||||
else
|
|
||||||
#echo Relative path
|
|
||||||
progname="$PWD_TRIAL/$progname"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $mpirun_verbose = 1 ] ; then
|
|
||||||
echo "running $progname on $np $arch $machine processors"
|
|
||||||
fi
|
|
||||||
|
|
||||||
$Show $progname $cmdLineArgs $machineFileArg $machineFile -GAMMANP $np
|
|
||||||
107
bin/tools/foamConfigurePaths
Executable file
107
bin/tools/foamConfigurePaths
Executable file
@ -0,0 +1,107 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#---------------------------------*- sh -*-------------------------------------
|
||||||
|
# ========= |
|
||||||
|
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
# \\ / O peration |
|
||||||
|
# \\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
|
# \\/ M anipulation |
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
|
# License
|
||||||
|
# This file is part of OpenFOAM.
|
||||||
|
#
|
||||||
|
# OpenFOAM is free software: you can redistribute it and/or modify it
|
||||||
|
# under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
# for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
# Script
|
||||||
|
# foamConfigurePaths
|
||||||
|
#
|
||||||
|
# Description
|
||||||
|
# hardcode installation directory
|
||||||
|
#
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
|
usage() {
|
||||||
|
while [ "$#" -ge 1 ]; do echo "$1"; shift; done
|
||||||
|
cat<<USAGE
|
||||||
|
|
||||||
|
usage: ${0##*/}
|
||||||
|
--foamInstall dir specify installation directory (e.g. /opt)
|
||||||
|
--projectName name specify project name (e.g. openfoam170)
|
||||||
|
--archOption arch specify architecture option (only 32 or 64 applicable)
|
||||||
|
--paraviewInstall dir specify ParaView_DIR (e.g. /opt/paraviewopenfoam380)
|
||||||
|
|
||||||
|
* hardcode paths to installation
|
||||||
|
|
||||||
|
USAGE
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
[ -f etc/bashrc -a -f etc/settings.sh ] || usage "Please run from top-level directory of installation"
|
||||||
|
|
||||||
|
unset foamInstall projectName archOption paraviewInstall
|
||||||
|
|
||||||
|
# parse options
|
||||||
|
while [ "$#" -gt 0 ]
|
||||||
|
do
|
||||||
|
case "$1" in
|
||||||
|
-h | --help)
|
||||||
|
usage
|
||||||
|
;;
|
||||||
|
--foamInstall)
|
||||||
|
[ "$#" -ge 2 ] || usage "'$1' option requires an argument"
|
||||||
|
foamInstall="$2"
|
||||||
|
echo "Replacing foamInstall setting by $foamInstall"
|
||||||
|
sed -i -e '/^[^#]/s@foamInstall=.*@foamInstall='"$foamInstall@" etc/bashrc
|
||||||
|
shift 2
|
||||||
|
;;
|
||||||
|
--projectName)
|
||||||
|
[ "$#" -ge 2 ] || usage "'$1' option requires an argument"
|
||||||
|
projectName="$2"
|
||||||
|
echo "Replacing WM_PROJECT_DIR setting by $projectName"
|
||||||
|
sed -i -e '/^[^#]/s@WM_PROJECT_DIR=.*@WM_PROJECT_DIR=$WM_PROJECT_INST_DIR/'"$projectName@" etc/bashrc
|
||||||
|
shift 2
|
||||||
|
;;
|
||||||
|
--archOption)
|
||||||
|
[ "$#" -ge 2 ] || usage "'$1' option requires an argument"
|
||||||
|
archOption="$2"
|
||||||
|
echo "Replacing WM_ARCH_OPTION setting by $archOption"
|
||||||
|
sed -i -e '/^[^#]/s@: ${WM_ARCH_OPTION:=64}@WM_ARCH_OPTION='"$archOption@" etc/bashrc
|
||||||
|
shift 2
|
||||||
|
;;
|
||||||
|
--paraviewInstall)
|
||||||
|
[ "$#" -ge 2 ] || usage "'$1' option requires an argument"
|
||||||
|
paraviewInstall="$2"
|
||||||
|
echo "Replacing ParaView_DIR setting by $paraviewInstall"
|
||||||
|
sed -i -e '/^[^#]/s@ParaView_DIR=.*@ParaView_DIR='"$paraviewInstall@" etc/apps/paraview3/bashrc
|
||||||
|
shift 2
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
usage "unknown option/argument: '$*'"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
[ -n "$foamInstall" -o -n "$projectName" -o -n "$archOption" -o -n "$paraviewInstall" ] || usage "Please specify at least one configure option"
|
||||||
|
|
||||||
|
#echo "Replacing WM_PROJECT setting by $projectName"
|
||||||
|
#sed -i -e 's@WM_PROJECT=.*@WM_PROJECT='"$projectName@" etc/bashrc
|
||||||
|
|
||||||
|
# Replace the WM_MPLIB always
|
||||||
|
echo "Replacing WM_MPLIB setting by SYSTEMOPENMPI"
|
||||||
|
sed -i -e '/^[^#]/s@: ${WM_MPLIB:=.*}@WM_MPLIB=SYSTEMOPENMPI@' etc/bashrc
|
||||||
|
|
||||||
|
# Replace the compilerInstall always
|
||||||
|
echo "Replacing compilerInstall setting by system"
|
||||||
|
sed -i -e '/^[^#]/s@: ${compilerInstall:=.*}@compilerInstall=system@' etc/settings.sh
|
||||||
|
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
223
bin/tools/pre-commit-hook
Executable file
223
bin/tools/pre-commit-hook
Executable file
@ -0,0 +1,223 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#---------------------------------*- sh -*-------------------------------------
|
||||||
|
# ========= |
|
||||||
|
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
# \\ / O peration |
|
||||||
|
# \\ / A nd | Copyright (C) 2010-2010 OpenCFD Ltd.
|
||||||
|
# \\/ M anipulation |
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
|
# License
|
||||||
|
# This file is part of OpenFOAM.
|
||||||
|
#
|
||||||
|
# OpenFOAM is free software: you can redistribute it and/or modify it
|
||||||
|
# under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
# for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
# Script
|
||||||
|
# pre-commit-hook
|
||||||
|
#
|
||||||
|
# Description
|
||||||
|
# pre-commit hook for git.
|
||||||
|
# Copy or link this file as ".git/hooks/pre-commit"
|
||||||
|
#
|
||||||
|
# Eg,
|
||||||
|
# (
|
||||||
|
# cd $WM_PROJECT_DIR/.git/hooks &&
|
||||||
|
# ln -sf ../../bin/tools/pre-commit-hook pre-commit
|
||||||
|
# )
|
||||||
|
#
|
||||||
|
# Hook receives: empty
|
||||||
|
#
|
||||||
|
# Checks for
|
||||||
|
# - illegal code, e.g. <TAB>
|
||||||
|
# - copyright is current, e.g. if present, contains XXX-<current-year>
|
||||||
|
# - columns greater than 80 for *.[CH] files
|
||||||
|
#
|
||||||
|
# Note
|
||||||
|
# Using "git commit --no-verify" it is possible to override the hook.
|
||||||
|
#
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
|
die()
|
||||||
|
{
|
||||||
|
echo 'pre-commit hook failure' 1>&2
|
||||||
|
echo '-----------------------' 1>&2
|
||||||
|
echo '' 1>&2
|
||||||
|
echo "$@" 1>&2
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
#-----------------------------------------------------------------------------
|
||||||
|
# Check content that will be added by this commit.
|
||||||
|
|
||||||
|
if git rev-parse --verify -q HEAD > /dev/null
|
||||||
|
then
|
||||||
|
against=HEAD
|
||||||
|
else
|
||||||
|
# Initial commit: diff against an empty tree object
|
||||||
|
against=4b825dc642cb6eb9a060e54bf8d69288fbee4904
|
||||||
|
fi
|
||||||
|
|
||||||
|
# list of all files
|
||||||
|
fileList=$(git diff-index --name-only $against --)
|
||||||
|
unset badFiles
|
||||||
|
|
||||||
|
# join list of files with this amount of space
|
||||||
|
Indent=" "
|
||||||
|
|
||||||
|
#
|
||||||
|
# report bad files and die if there are any
|
||||||
|
#
|
||||||
|
dieOnBadFiles()
|
||||||
|
{
|
||||||
|
if [ -n "$badFiles" ]
|
||||||
|
then
|
||||||
|
echo 'pre-commit hook failure' 1>&2
|
||||||
|
echo '-----------------------' 1>&2
|
||||||
|
echo "$@" 1>&2
|
||||||
|
echo '' 1>&2
|
||||||
|
echo "File(s):" 1>&2
|
||||||
|
echo "$badFiles" 1>&2
|
||||||
|
echo '' 1>&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# check for bad strings, characters, etc
|
||||||
|
#
|
||||||
|
checkIllegalCode()
|
||||||
|
{
|
||||||
|
reBad="(N""abla|"$'\t'"|"$'\r\n'")"
|
||||||
|
msgBad="N""abla, <TAB>, or DOS-style line ending"
|
||||||
|
|
||||||
|
badFiles=$(
|
||||||
|
for f in $fileList
|
||||||
|
do
|
||||||
|
# parse line numbers from this:
|
||||||
|
# path/fileName:<lineNr>: contents
|
||||||
|
lines=$(git grep --cached -n -E -e "$reBad" -- "$f" |
|
||||||
|
sed -e 's@^[^:]*:\([0-9]*\):.*@\1@' |
|
||||||
|
tr '\n' ' '
|
||||||
|
)
|
||||||
|
[ -n "$lines" ] && echo "$Indent$f -- lines: $lines"
|
||||||
|
done
|
||||||
|
)
|
||||||
|
|
||||||
|
dieOnBadFiles "Remove/correct bad '$msgBad' references"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# check that OpenCFD copyright is current
|
||||||
|
#
|
||||||
|
checkCopyright()
|
||||||
|
{
|
||||||
|
year=$(date +%Y)
|
||||||
|
|
||||||
|
badFiles=$(
|
||||||
|
for f in $fileList
|
||||||
|
do
|
||||||
|
# parse line numbers from this:
|
||||||
|
# path/fileName:<lineNr>: contents
|
||||||
|
# for Copyright lines without the current year
|
||||||
|
lines=$(git grep --cached -n -e Copyright -- "$f" |
|
||||||
|
sed -n \
|
||||||
|
-e '/OpenCFD/{ ' \
|
||||||
|
-e "/$year/b" \
|
||||||
|
-e 's@^[^:]*:\([0-9]*\):.*@\1@p }' |
|
||||||
|
tr '\n' ' '
|
||||||
|
)
|
||||||
|
[ -n "$lines" ] && echo "$Indent$f -- lines: $lines"
|
||||||
|
done
|
||||||
|
)
|
||||||
|
|
||||||
|
dieOnBadFiles "Update copyright year, e.g. XXXX-$year"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# limit line length to 80-columns
|
||||||
|
#
|
||||||
|
checkLineLength()
|
||||||
|
{
|
||||||
|
badFiles=$(
|
||||||
|
for f in $fileList
|
||||||
|
do
|
||||||
|
# limit to *.[CH] files
|
||||||
|
case "$f" in
|
||||||
|
(*.[CH])
|
||||||
|
# parse line numbers from this:
|
||||||
|
# path/fileName:<lineNr>: contents
|
||||||
|
lines=$(git grep --cached -n -e ".\{81,\}" -- "$f" |
|
||||||
|
sed -e 's@^[^:]*:\([0-9]*\):.*@\1@' |
|
||||||
|
tr '\n' ' '
|
||||||
|
)
|
||||||
|
[ -n "$lines" ] && echo "$Indent$f -- lines: $lines"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
)
|
||||||
|
|
||||||
|
dieOnBadFiles "Limit code to 80 columns before pushing"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# limit line length to 80-columns, except C++ comment lines
|
||||||
|
#
|
||||||
|
checkLineLengthNonComments()
|
||||||
|
{
|
||||||
|
badFiles=$(
|
||||||
|
for f in $fileList
|
||||||
|
do
|
||||||
|
# limit to *.[CH] files
|
||||||
|
case "$f" in
|
||||||
|
(*.[CH])
|
||||||
|
# parse line numbers from this (strip comment lines):
|
||||||
|
# path/fileName:<lineNr>: contents
|
||||||
|
lines=$(git grep --cached -n -e ".\{81,\}" -- "$f" |
|
||||||
|
sed -n \
|
||||||
|
-e '\@^[^:]*:[^:]*: *//.*@b' \
|
||||||
|
-e 's@^[^:]*:\([0-9]*\):.*@\1@p' |
|
||||||
|
tr '\n' ' '
|
||||||
|
)
|
||||||
|
[ -n "$lines" ] && echo "$Indent$f -- lines: $lines"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
)
|
||||||
|
|
||||||
|
dieOnBadFiles "Limit code to 80 columns before pushing"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# do all checks
|
||||||
|
# ~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
# builtin whitespace check to avoid trailing space, including CR-LF endings
|
||||||
|
bad=$(git diff-index --cached --check $against --) || die "$bad"
|
||||||
|
|
||||||
|
# check for illegal code, e.g. <TAB>, etc
|
||||||
|
checkIllegalCode
|
||||||
|
|
||||||
|
# ensure OpenCFD copyright contains correct year
|
||||||
|
checkCopyright
|
||||||
|
|
||||||
|
# ensure code conforms to 80 columns max
|
||||||
|
checkLineLength
|
||||||
|
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
5
debian/changelog
vendored
Normal file
5
debian/changelog
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
openfoamdev (0-1) unstable; urgency=low
|
||||||
|
|
||||||
|
* Initial release
|
||||||
|
|
||||||
|
-- OpenCFD Ltd. <patches@opencfd.co.uk> Mon, 14 Jun 2010 16:50:46 +0100
|
||||||
1
debian/compat
vendored
Normal file
1
debian/compat
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
7
|
||||||
19
debian/control
vendored
Normal file
19
debian/control
vendored
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
Source: openfoamdev
|
||||||
|
Section: optional
|
||||||
|
Priority: optional
|
||||||
|
Maintainer: OpenCFD Ltd. <patches@opencfd.co.uk>
|
||||||
|
Build-Depends: debhelper (>= 7), quilt
|
||||||
|
Standards-Version: 3.8.4
|
||||||
|
Homepage: http://www.openfoam.com
|
||||||
|
|
||||||
|
Package: openfoamdev
|
||||||
|
Architecture: any
|
||||||
|
Depends: csh,g++,${shlibs:Depends}, ${misc:Depends},binutils-dev,flex,libscotch-dev,libopenmpi-dev,libxt-dev,openmpi-bin
|
||||||
|
Description: OpenFOAM
|
||||||
|
OpenFOAM is a free, open source CFD software package produced by a
|
||||||
|
commercial company, OpenCFD Ltd. It has a large user base across
|
||||||
|
most areas of engineering and science, from both commercial and academic
|
||||||
|
organisations. OpenFOAM has an extensive range of features to solve
|
||||||
|
anything from complex fluid flows involving chemical reactions, turbulence
|
||||||
|
and heat transfer, to solid dynamics and electromagnetics.
|
||||||
|
|
||||||
30
debian/copyright
vendored
Normal file
30
debian/copyright
vendored
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
This work was packaged for Debian by:
|
||||||
|
|
||||||
|
OpenCFD Ltd. <patches@opencfd.co.uk> on Mon, 14 Jun 2010 16:50:46 +0100
|
||||||
|
|
||||||
|
Copyright:
|
||||||
|
|
||||||
|
Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
|
|
||||||
|
License:
|
||||||
|
|
||||||
|
This file is part of OpenFOAM.
|
||||||
|
|
||||||
|
OpenFOAM is free software: you can redistribute it and/or modify it
|
||||||
|
under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation, either version 3 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
The Debian packaging is:
|
||||||
|
|
||||||
|
Copyright (C) 2010 OpenCFD Ltd. <patches@opencfd.co.uk>
|
||||||
|
|
||||||
|
and is licensed under the GPL version 3
|
||||||
0
debian/docs
vendored
Normal file
0
debian/docs
vendored
Normal file
48
debian/postinst
vendored
Executable file
48
debian/postinst
vendored
Executable file
@ -0,0 +1,48 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
# postinst script for OpenFOAM
|
||||||
|
#
|
||||||
|
# see: dh_installdeb(1)
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# summary of how this script can be called:
|
||||||
|
# * <postinst> `configure' <most-recently-configured-version>
|
||||||
|
# * <old-postinst> `abort-upgrade' <new version>
|
||||||
|
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
|
||||||
|
# <new-version>
|
||||||
|
# * <postinst> `abort-remove'
|
||||||
|
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
|
||||||
|
# <failed-install-package> <version> `removing'
|
||||||
|
# <conflicting-package> <version>
|
||||||
|
# for details, see http://www.debian.org/doc/debian-policy/ or
|
||||||
|
# the debian-policy package
|
||||||
|
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
configure)
|
||||||
|
#echo "** postinst called with $*"
|
||||||
|
echo ""
|
||||||
|
echo "** To use OpenFOAM please add"
|
||||||
|
echo "**"
|
||||||
|
echo "** . /opt/openfoamdev/etc/bashrc"
|
||||||
|
echo "**"
|
||||||
|
echo "** To your ~/.bashrc"
|
||||||
|
echo ""
|
||||||
|
;;
|
||||||
|
|
||||||
|
abort-upgrade|abort-remove|abort-deconfigure)
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
echo "postinst called with unknown argument \`$1'" >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# dh_installdeb will replace this with shell code automatically
|
||||||
|
# generated by other debhelper scripts.
|
||||||
|
|
||||||
|
#DEBHELPER#
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
|
||||||
109
debian/rules
vendored
Executable file
109
debian/rules
vendored
Executable file
@ -0,0 +1,109 @@
|
|||||||
|
#!/usr/bin/make -f
|
||||||
|
#-*- makefile -*-
|
||||||
|
# After debian/rules from less package
|
||||||
|
|
||||||
|
include /usr/share/quilt/quilt.make
|
||||||
|
|
||||||
|
# Uncomment this to turn on verbose mode.
|
||||||
|
export DH_VERBOSE=1
|
||||||
|
|
||||||
|
# This is the debhelper compatibility version to use.
|
||||||
|
|
||||||
|
#DEB_BUILD_GNU_TYPE = $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
|
||||||
|
#DEB_HOST_GNU_TYPE = $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
|
||||||
|
#ifneq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE))
|
||||||
|
#CONFARGS= --host=$(DEB_HOST_GNU_TYPE)
|
||||||
|
#endif
|
||||||
|
#
|
||||||
|
#CFLAGS = -Wall -g #-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
|
||||||
|
#
|
||||||
|
#ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
|
||||||
|
#CFLAGS += -O0
|
||||||
|
#else
|
||||||
|
#CFLAGS += -O2
|
||||||
|
#endif
|
||||||
|
|
||||||
|
DEB_BUILD_ARCH_BITS = $(shell dpkg-architecture -qDEB_BUILD_ARCH_BITS)
|
||||||
|
foamArch=
|
||||||
|
ifeq ($(DEB_BUILD_ARCH_BITS),64)
|
||||||
|
foamArch=linux64GccDPOpt
|
||||||
|
else
|
||||||
|
foamArch=linuxGccDPOpt
|
||||||
|
endif
|
||||||
|
|
||||||
|
packageName = $(shell dh_listpackages)
|
||||||
|
installDir = debian/$(packageName)/opt/$(packageName)
|
||||||
|
paraviewInstallDir = /opt/paraviewopenfoam380
|
||||||
|
|
||||||
|
DEB_DH_SHLIBDEPS_ARGS=-L$(installDir)/lib/$(foamArch)
|
||||||
|
|
||||||
|
build: patch build-stamp
|
||||||
|
build-stamp:
|
||||||
|
dh_testdir
|
||||||
|
|
||||||
|
# Add here commands to compile the package.
|
||||||
|
#./Allwmake
|
||||||
|
|
||||||
|
touch build-stamp
|
||||||
|
|
||||||
|
clean: unpatch
|
||||||
|
dh_testdir
|
||||||
|
dh_testroot
|
||||||
|
rm -f build-stamp
|
||||||
|
|
||||||
|
# Add here commands to clean up after the build process.
|
||||||
|
#./Allwclean
|
||||||
|
#set
|
||||||
|
|
||||||
|
dh_clean
|
||||||
|
|
||||||
|
install: build
|
||||||
|
dh_testdir
|
||||||
|
dh_testroot
|
||||||
|
dh_prep
|
||||||
|
dh_installdirs
|
||||||
|
|
||||||
|
# Install source files into debian/.
|
||||||
|
install -d $(installDir)
|
||||||
|
tar cf - `bin/foamSourceFiles .` | (cd $(installDir); tar xfp -)
|
||||||
|
(cd $(installDir); bin/tools/foamConfigurePaths --foamInstall /opt --projectName $(packageName) --paraviewInstall $(paraviewInstallDir) )
|
||||||
|
|
||||||
|
# Install binary files into debian/.
|
||||||
|
tar cf - `bin/foamBinDirs . $(foamArch)` | (cd $(installDir); tar xfp -)
|
||||||
|
|
||||||
|
# Build architecture-independent files here.
|
||||||
|
binary-indep: build install
|
||||||
|
# We have nothing to do by default.
|
||||||
|
|
||||||
|
# Build architecture-dependent files here.
|
||||||
|
binary-arch: build install
|
||||||
|
dh_testdir
|
||||||
|
dh_testroot
|
||||||
|
dh_installdebconf
|
||||||
|
dh_installdocs
|
||||||
|
dh_installexamples
|
||||||
|
dh_installmenu
|
||||||
|
# dh_installemacsen
|
||||||
|
# dh_installinit
|
||||||
|
dh_installmime
|
||||||
|
dh_installcron
|
||||||
|
#dh_installman debian/lesspipe.1
|
||||||
|
#dh_undocumented
|
||||||
|
dh_installchangelogs
|
||||||
|
#dh_link
|
||||||
|
#dh_strip
|
||||||
|
dh_compress
|
||||||
|
dh_fixperms
|
||||||
|
dh_makeshlibs
|
||||||
|
dh_installdeb
|
||||||
|
# dh_perl
|
||||||
|
dh_shlibdeps -- --ignore-missing-info #We depend on vtk libs without info
|
||||||
|
dh_gencontrol
|
||||||
|
dh_md5sums
|
||||||
|
dh_builddeb
|
||||||
|
|
||||||
|
source diff:
|
||||||
|
@echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
|
||||||
|
|
||||||
|
binary: binary-indep binary-arch
|
||||||
|
.PHONY: build clean binary-indep binary-arch binary
|
||||||
@ -51,7 +51,7 @@ done
|
|||||||
|
|
||||||
|
|
||||||
# set VERSION and MAJOR (version) variables if not already set
|
# set VERSION and MAJOR (version) variables if not already set
|
||||||
[ -n "$ParaView_VERSION" ] || ParaView_VERSION=3.6.1
|
[ -n "$ParaView_VERSION" ] || ParaView_VERSION=3.8.0
|
||||||
[ -n "$ParaView_MAJOR" ] || ParaView_MAJOR=unknown
|
[ -n "$ParaView_MAJOR" ] || ParaView_MAJOR=unknown
|
||||||
|
|
||||||
# if needed, set MAJOR version to correspond to VERSION
|
# if needed, set MAJOR version to correspond to VERSION
|
||||||
@ -75,6 +75,7 @@ export ParaView_DIR=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/paraview-
|
|||||||
if [ -r $ParaView_DIR -o -r $paraviewInstDir ]
|
if [ -r $ParaView_DIR -o -r $paraviewInstDir ]
|
||||||
then
|
then
|
||||||
export PATH=$ParaView_DIR/bin:$PATH
|
export PATH=$ParaView_DIR/bin:$PATH
|
||||||
|
export LD_LIBRARY_PATH=$ParaView_DIR/lib/paraview-$ParaView_MAJOR:$LD_LIBRARY_PATH
|
||||||
export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview-$ParaView_MAJOR
|
export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview-$ParaView_MAJOR
|
||||||
|
|
||||||
# add in python libraries if required
|
# add in python libraries if required
|
||||||
|
|||||||
@ -49,7 +49,7 @@ foreach cmake ( cmake-2.8.1 cmake-2.8.0 cmake-2.6.4 )
|
|||||||
end
|
end
|
||||||
|
|
||||||
# set VERSION and MAJOR (version) variables if not already set
|
# set VERSION and MAJOR (version) variables if not already set
|
||||||
if ( ! $?ParaView_VERSION ) setenv ParaView_VERSION 3.6.1
|
if ( ! $?ParaView_VERSION ) setenv ParaView_VERSION 3.8.0
|
||||||
if ( ! $?ParaView_MAJOR ) setenv ParaView_MAJOR unknown
|
if ( ! $?ParaView_MAJOR ) setenv ParaView_MAJOR unknown
|
||||||
|
|
||||||
# if needed, set MAJOR version to correspond to VERSION
|
# if needed, set MAJOR version to correspond to VERSION
|
||||||
@ -73,6 +73,7 @@ setenv ParaView_DIR $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/paraview-
|
|||||||
# set paths if binaries or source are present
|
# set paths if binaries or source are present
|
||||||
if ( -r $ParaView_DIR || -r $paraviewInstDir ) then
|
if ( -r $ParaView_DIR || -r $paraviewInstDir ) then
|
||||||
setenv PATH ${ParaView_DIR}/bin:${PATH}
|
setenv PATH ${ParaView_DIR}/bin:${PATH}
|
||||||
|
setenv LD_LIBRARY_PATH "${ParaView_DIR}/lib/paraview-${ParaView_MAJOR}:${LD_LIBRARY_PATH}"
|
||||||
setenv PV_PLUGIN_PATH $FOAM_LIBBIN/paraview-${ParaView_MAJOR}
|
setenv PV_PLUGIN_PATH $FOAM_LIBBIN/paraview-${ParaView_MAJOR}
|
||||||
|
|
||||||
# add in python libraries if required
|
# add in python libraries if required
|
||||||
|
|||||||
@ -32,7 +32,7 @@
|
|||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
|
|
||||||
export WM_PROJECT=OpenFOAM
|
export WM_PROJECT=OpenFOAM
|
||||||
[ -z "$WM_PROJECT_VERSION" ] && export WM_PROJECT_VERSION=1.6
|
[ -z "$WM_PROJECT_VERSION" ] && export WM_PROJECT_VERSION=dev
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
# USER EDITABLE PART. Note changes made here may be lost with the next upgrade
|
# USER EDITABLE PART. Note changes made here may be lost with the next upgrade
|
||||||
@ -131,7 +131,7 @@ unset WM_COMPILER_ARCH WM_COMPILER_LIB_ARCH
|
|||||||
# WM_COMPILE_OPTION = Opt | Debug | Prof
|
# WM_COMPILE_OPTION = Opt | Debug | Prof
|
||||||
: ${WM_COMPILE_OPTION:=Opt}; export WM_COMPILE_OPTION
|
: ${WM_COMPILE_OPTION:=Opt}; export WM_COMPILE_OPTION
|
||||||
|
|
||||||
# WM_MPLIB = | OPENMPI | MPICH | MPICH-GM | HPMPI | GAMMA | MPI | QSMPI
|
# WM_MPLIB = SYSTEMOPENMPI | OPENMPI | MPICH | MPICH-GM | HPMPI | GAMMA | MPI | QSMPI
|
||||||
: ${WM_MPLIB:=OPENMPI}; export WM_MPLIB
|
: ${WM_MPLIB:=OPENMPI}; export WM_MPLIB
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -31,7 +31,7 @@
|
|||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
|
|
||||||
setenv WM_PROJECT OpenFOAM
|
setenv WM_PROJECT OpenFOAM
|
||||||
if ( ! $?WM_PROJECT_VERSION ) setenv WM_PROJECT_VERSION 1.6
|
if ( ! $?WM_PROJECT_VERSION ) setenv WM_PROJECT_VERSION dev
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
# USER EDITABLE PART. Note changes made here may be lost with the next upgrade
|
# USER EDITABLE PART. Note changes made here may be lost with the next upgrade
|
||||||
@ -119,7 +119,7 @@ if ( ! $?WM_PRECISION_OPTION ) setenv WM_PRECISION_OPTION DP
|
|||||||
# WM_COMPILE_OPTION = Opt | Debug | Prof
|
# WM_COMPILE_OPTION = Opt | Debug | Prof
|
||||||
if ( ! $?WM_COMPILE_OPTION ) setenv WM_COMPILE_OPTION Opt
|
if ( ! $?WM_COMPILE_OPTION ) setenv WM_COMPILE_OPTION Opt
|
||||||
|
|
||||||
# WM_MPLIB = | OPENMPI | MPICH | MPICH-GM | HPMPI | GAMMA | MPI | QSMPI
|
# WM_MPLIB = SYSTEMOPENMPI | OPENMPI | MPICH | MPICH-GM | HPMPI | GAMMA | MPI | QSMPI
|
||||||
if ( ! $?WM_MPLIB ) setenv WM_MPLIB OPENMPI
|
if ( ! $?WM_MPLIB ) setenv WM_MPLIB OPENMPI
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -82,7 +82,7 @@ unsetenv MPFR_ARCH_PATH
|
|||||||
# Select compiler installation
|
# Select compiler installation
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
# compilerInstall = OpenFOAM | system
|
# compilerInstall = OpenFOAM | system
|
||||||
if ( ! $?compilerInstall ) set compilerInstall=OpenFOAM
|
if ( ! $?compilerInstall ) set compilerInstall=system
|
||||||
|
|
||||||
switch ("$compilerInstall")
|
switch ("$compilerInstall")
|
||||||
case OpenFOAM:
|
case OpenFOAM:
|
||||||
@ -209,14 +209,20 @@ case OPENMPI:
|
|||||||
breaksw
|
breaksw
|
||||||
|
|
||||||
case SYSTEMOPENMPI:
|
case SYSTEMOPENMPI:
|
||||||
# use the system installed openmpi, get library directory via mpicc
|
|
||||||
|
# This uses the installed openmpi. It needs mpicc installed!
|
||||||
|
|
||||||
set mpi_version=openmpi-system
|
set mpi_version=openmpi-system
|
||||||
set libDir=`mpicc --showme:link | sed -e 's/.*-L\([^ ]*\).*/\1/'`
|
|
||||||
|
# Set compilation flags here instead of in wmake/rules/../mplibSYSTEMOPENMPI
|
||||||
|
setenv PINC "`mpicc --showme:compile`"
|
||||||
|
setenv PLIBS "`mpicc --showme:link`"
|
||||||
|
set libDir=`echo "$PLIBS" | sed -e 's/.*-L\([^ ]*\).*/\1/'`
|
||||||
|
|
||||||
if ($?FOAM_VERBOSE && $?prompt) then
|
if ($?FOAM_VERBOSE && $?prompt) then
|
||||||
echo "Using system installed OpenMPI:"
|
echo "Using system installed MPI:"
|
||||||
echo " compile flags : `mpicc --showme:compile`"
|
echo " compile flags : $PINC"
|
||||||
echo " link flags : `mpicc --showme:link`"
|
echo " link flags : $PLIBS"
|
||||||
echo " libmpi dir : $libDir"
|
echo " libmpi dir : $libDir"
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|||||||
@ -105,7 +105,7 @@ unset MPFR_ARCH_PATH
|
|||||||
# Select compiler installation
|
# Select compiler installation
|
||||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
# compilerInstall = OpenFOAM | system
|
# compilerInstall = OpenFOAM | system
|
||||||
: ${compilerInstall:=OpenFOAM}
|
: ${compilerInstall:=system}
|
||||||
|
|
||||||
case "${compilerInstall:-OpenFOAM}" in
|
case "${compilerInstall:-OpenFOAM}" in
|
||||||
OpenFOAM)
|
OpenFOAM)
|
||||||
@ -237,13 +237,17 @@ OPENMPI)
|
|||||||
SYSTEMOPENMPI)
|
SYSTEMOPENMPI)
|
||||||
# use the system installed openmpi, get library directory via mpicc
|
# use the system installed openmpi, get library directory via mpicc
|
||||||
mpi_version=openmpi-system
|
mpi_version=openmpi-system
|
||||||
libDir=`mpicc --showme:link | sed -e 's/.*-L\([^ ]*\).*/\1/'`
|
|
||||||
|
# Set compilation flags here instead of in wmake/rules/../mplibSYSTEMOPENMPI
|
||||||
|
export PINC="`mpicc --showme:compile`"
|
||||||
|
export PLIBS="`mpicc --showme:link`"
|
||||||
|
libDir=`echo "$PLIBS" | sed -e 's/.*-L\([^ ]*\).*/\1/'`
|
||||||
|
|
||||||
if [ "$FOAM_VERBOSE" -a "$PS1" ]
|
if [ "$FOAM_VERBOSE" -a "$PS1" ]
|
||||||
then
|
then
|
||||||
echo "Using system installed OpenMPI:"
|
echo "Using system installed MPI:"
|
||||||
echo " compile flags : `mpicc --showme:compile`"
|
echo " compile flags : $PINC"
|
||||||
echo " link flags : `mpicc --showme:link`"
|
echo " link flags : $PLIBS"
|
||||||
echo " libmpi dir : $libDir"
|
echo " libmpi dir : $libDir"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
@ -257,24 +257,21 @@ void Foam::fileMonitor::checkFiles() const
|
|||||||
// << "watchFd:" << inotifyEvent.wd << nl
|
// << "watchFd:" << inotifyEvent.wd << nl
|
||||||
// << "watchName:" << watchFile_[inotifyEvent.wd] << endl;
|
// << "watchName:" << watchFile_[inotifyEvent.wd] << endl;
|
||||||
|
|
||||||
switch (inotifyEvent.mask)
|
if (inotifyEvent.mask % IN_DELETE_SELF)
|
||||||
{
|
{
|
||||||
case IN_DELETE_SELF:
|
Map<fileState>::iterator iter =
|
||||||
{
|
state_.find(label(inotifyEvent.wd));
|
||||||
Map<fileState>::iterator iter =
|
iter() = DELETED;
|
||||||
state_.find(label(inotifyEvent.wd));
|
}
|
||||||
iter() = DELETED;
|
else if
|
||||||
}
|
(
|
||||||
break;
|
(inotifyEvent.mask % IN_MODIFY)
|
||||||
|
|| (inotifyEvent.mask % IN_CLOSE_WRITE)
|
||||||
case IN_MODIFY:
|
)
|
||||||
case IN_CLOSE_WRITE:
|
{
|
||||||
{
|
Map<fileState>::iterator iter =
|
||||||
Map<fileState>::iterator iter =
|
state_.find(label(inotifyEvent.wd));
|
||||||
state_.find(label(inotifyEvent.wd));
|
iter() = MODIFIED;
|
||||||
iter() = MODIFIED;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
\\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -25,6 +25,12 @@ License
|
|||||||
|
|
||||||
#include "ListOps.H"
|
#include "ListOps.H"
|
||||||
|
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
const Foam::labelList Foam::emptyLabelList = Foam::labelList(0);
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * Global Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Global Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::labelList Foam::invert
|
Foam::labelList Foam::invert
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
\\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -43,6 +43,16 @@ SourceFiles
|
|||||||
namespace Foam
|
namespace Foam
|
||||||
{
|
{
|
||||||
|
|
||||||
|
extern const labelList emptyLabelList;
|
||||||
|
|
||||||
|
//- Return reference to zero-sized list. Compare to List::null() which returns
|
||||||
|
// null pointer cast as list reference.
|
||||||
|
template<class Type>
|
||||||
|
static const List<Type>& emptyList()
|
||||||
|
{
|
||||||
|
return *reinterpret_cast<const List<Type>* >(&emptyLabelList);
|
||||||
|
}
|
||||||
|
|
||||||
//- Renumber the values (not the indices) of a list.
|
//- Renumber the values (not the indices) of a list.
|
||||||
// Negative ListType elements are left as is.
|
// Negative ListType elements are left as is.
|
||||||
template<class ListType>
|
template<class ListType>
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
\\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -42,59 +42,62 @@ namespace Foam
|
|||||||
|
|
||||||
void Foam::wedgePolyPatch::initTransforms()
|
void Foam::wedgePolyPatch::initTransforms()
|
||||||
{
|
{
|
||||||
const pointField& points = this->points();
|
if (size() > 0)
|
||||||
|
|
||||||
patchNormal_ = operator[](0).normal(points);
|
|
||||||
patchNormal_ /= mag(patchNormal_);
|
|
||||||
|
|
||||||
centreNormal_ =
|
|
||||||
vector
|
|
||||||
(
|
|
||||||
sign(patchNormal_.x())*(max(mag(patchNormal_.x()), 0.5) - 0.5),
|
|
||||||
sign(patchNormal_.y())*(max(mag(patchNormal_.y()), 0.5) - 0.5),
|
|
||||||
sign(patchNormal_.z())*(max(mag(patchNormal_.z()), 0.5) - 0.5)
|
|
||||||
);
|
|
||||||
centreNormal_ /= mag(centreNormal_);
|
|
||||||
|
|
||||||
if
|
|
||||||
(
|
|
||||||
mag(centreNormal_.x() + centreNormal_.y() + centreNormal_.z())
|
|
||||||
< (1 - SMALL)
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
FatalErrorIn
|
const pointField& points = this->points();
|
||||||
|
|
||||||
|
patchNormal_ = operator[](0).normal(points);
|
||||||
|
patchNormal_ /= mag(patchNormal_);
|
||||||
|
|
||||||
|
centreNormal_ =
|
||||||
|
vector
|
||||||
|
(
|
||||||
|
sign(patchNormal_.x())*(max(mag(patchNormal_.x()), 0.5) - 0.5),
|
||||||
|
sign(patchNormal_.y())*(max(mag(patchNormal_.y()), 0.5) - 0.5),
|
||||||
|
sign(patchNormal_.z())*(max(mag(patchNormal_.z()), 0.5) - 0.5)
|
||||||
|
);
|
||||||
|
centreNormal_ /= mag(centreNormal_);
|
||||||
|
|
||||||
|
if
|
||||||
(
|
(
|
||||||
"wedgePolyPatch::wedgePolyPatch(const polyPatch&, "
|
mag(centreNormal_.x() + centreNormal_.y() + centreNormal_.z())
|
||||||
"const fvBoundaryMesh&)"
|
< (1 - SMALL)
|
||||||
) << "wedge " << name()
|
)
|
||||||
<< " centre plane does not align with a coordinate plane by "
|
{
|
||||||
<< 1
|
FatalErrorIn
|
||||||
- mag(centreNormal_.x() + centreNormal_.y() + centreNormal_.z())
|
(
|
||||||
<< exit(FatalError);
|
"wedgePolyPatch::wedgePolyPatch(const polyPatch&, "
|
||||||
|
"const fvBoundaryMesh&)"
|
||||||
|
) << "wedge " << name()
|
||||||
|
<< " centre plane does not align with a coordinate plane by "
|
||||||
|
<< 1
|
||||||
|
- mag(centreNormal_.x()+centreNormal_.y()+centreNormal_.z())
|
||||||
|
<< exit(FatalError);
|
||||||
|
}
|
||||||
|
|
||||||
|
axis_ = centreNormal_ ^ patchNormal_;
|
||||||
|
scalar magAxis = mag(axis_);
|
||||||
|
axis_ /= magAxis;
|
||||||
|
|
||||||
|
if (magAxis < SMALL)
|
||||||
|
{
|
||||||
|
FatalErrorIn
|
||||||
|
(
|
||||||
|
"wedgePolyPatch::initTransforms()"
|
||||||
|
) << "wedge " << name()
|
||||||
|
<< " plane aligns with a coordinate plane." << nl
|
||||||
|
<< " The wedge plane should make a small angle (~2.5deg)"
|
||||||
|
" with the coordinate plane" << nl
|
||||||
|
<< " and the the pair of wedge planes should be symmetric"
|
||||||
|
<< " about the coordinate plane." << nl
|
||||||
|
<< " Normal of face " << 0 << " is " << patchNormal_
|
||||||
|
<< " , implied coordinate plane direction is " << centreNormal_
|
||||||
|
<< exit(FatalError);
|
||||||
|
}
|
||||||
|
|
||||||
|
faceT_ = rotationTensor(centreNormal_, patchNormal_);
|
||||||
|
cellT_ = faceT_ & faceT_;
|
||||||
}
|
}
|
||||||
|
|
||||||
axis_ = centreNormal_ ^ patchNormal_;
|
|
||||||
scalar magAxis = mag(axis_);
|
|
||||||
axis_ /= magAxis;
|
|
||||||
|
|
||||||
if (magAxis < SMALL)
|
|
||||||
{
|
|
||||||
FatalErrorIn
|
|
||||||
(
|
|
||||||
"wedgePolyPatch::initTransforms()"
|
|
||||||
) << "wedge " << name()
|
|
||||||
<< " plane aligns with a coordinate plane." << nl
|
|
||||||
<< " The wedge plane should make a small angle (~2.5deg)"
|
|
||||||
" with the coordinate plane" << nl
|
|
||||||
<< " and the the pair of wedge planes should be symmetric"
|
|
||||||
<< " about the coordinate plane." << nl
|
|
||||||
<< " Normal of face " << 0 << " is " << patchNormal_
|
|
||||||
<< " , implied coordinate plane direction is " << centreNormal_
|
|
||||||
<< exit(FatalError);
|
|
||||||
}
|
|
||||||
|
|
||||||
faceT_ = rotationTensor(centreNormal_, patchNormal_);
|
|
||||||
cellT_ = faceT_ & faceT_;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
\\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -440,6 +440,19 @@ Foam::point Foam::plane::planePlaneIntersect
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void Foam::plane::writeDict(Ostream& os) const
|
||||||
|
{
|
||||||
|
os.writeKeyword("planeType") << "pointAndNormal"
|
||||||
|
<< token::END_STATEMENT << nl;
|
||||||
|
os << indent << "pointAndNormalDict" << nl
|
||||||
|
<< indent << token::BEGIN_BLOCK << incrIndent << nl;
|
||||||
|
os.writeKeyword("basePoint") << basePoint_ << token::END_STATEMENT << nl;
|
||||||
|
os.writeKeyword("normalVector") << unitVector_ << token::END_STATEMENT
|
||||||
|
<< nl;
|
||||||
|
os << decrIndent << indent << token::END_BLOCK << endl;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * Friend Operators * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Friend Operators * * * * * * * * * * * * * //
|
||||||
|
|
||||||
bool Foam::operator==(const plane& a, const plane& b)
|
bool Foam::operator==(const plane& a, const plane& b)
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
\\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -182,6 +182,9 @@ public:
|
|||||||
//- Return the cutting point between this plane and two other planes
|
//- Return the cutting point between this plane and two other planes
|
||||||
point planePlaneIntersect(const plane&, const plane&) const;
|
point planePlaneIntersect(const plane&, const plane&) const;
|
||||||
|
|
||||||
|
//- Write to dictionary
|
||||||
|
void writeDict(Ostream&) const;
|
||||||
|
|
||||||
|
|
||||||
// friend Operators
|
// friend Operators
|
||||||
|
|
||||||
|
|||||||
46
src/dummyThirdParty/metisDecomp/metis.h
vendored
Normal file
46
src/dummyThirdParty/metisDecomp/metis.h
vendored
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
#ifndef METIS_H
|
||||||
|
#define METIS_H 1
|
||||||
|
|
||||||
|
/* *** DUMMY VERSION of metis.h - this file should not be included if you have metis
|
||||||
|
* installed in the correct position in $WM_THIRD_PARTY_DIR - see
|
||||||
|
* decompositionMethods/metisDecomp/Make/options
|
||||||
|
*/
|
||||||
|
|
||||||
|
#warning "Dummy metis.h - gets included since it cannot find metis installation."
|
||||||
|
|
||||||
|
#define IDXTYPEWIDTH 32
|
||||||
|
|
||||||
|
/*------------------------------------------------------------------------
|
||||||
|
* Undefine the following #define in order to use short idxtype as the idxtype
|
||||||
|
*-------------------------------------------------------------------------*/
|
||||||
|
#if IDXTYPEWIDTH == 32
|
||||||
|
#define SCNIDX SCNd32
|
||||||
|
#define PRIIDX PRId32
|
||||||
|
|
||||||
|
typedef int32_t idxtype;
|
||||||
|
#elif IDXTYPEWIDTH == 64
|
||||||
|
#define SCNIDX SCNd64
|
||||||
|
#define PRIIDX PRId64
|
||||||
|
|
||||||
|
typedef int64_t idxtype;
|
||||||
|
#else
|
||||||
|
#error "Incorrect user-supplied value fo IDXTYPEWIDTH"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
void METIS_WPartGraphRecursive(idxtype *nvtxs, idxtype *xadj, idxtype *adjncy, idxtype *vwgt,
|
||||||
|
idxtype *adjwgt, idxtype *wgtflag, idxtype *numflag, idxtype *nparts, float *tpwgts,
|
||||||
|
idxtype *options, idxtype *edgecut, idxtype *part);
|
||||||
|
void METIS_PartGraphRecursive(idxtype *nvtxs, idxtype *xadj, idxtype *adjncy, idxtype *vwgt,
|
||||||
|
idxtype *adjwgt, idxtype *wgtflag, idxtype *numflag, idxtype *nparts, idxtype *options,
|
||||||
|
idxtype *edgecut, idxtype *part);
|
||||||
|
void METIS_WPartGraphKway(idxtype *nvtxs, idxtype *xadj, idxtype *adjncy, idxtype *vwgt,
|
||||||
|
idxtype *adjwgt, idxtype *wgtflag, idxtype *numflag, idxtype *nparts, float *tpwgts,
|
||||||
|
idxtype *options, idxtype *edgecut, idxtype *part);
|
||||||
|
void METIS_PartGraphKway(idxtype *nvtxs, idxtype *xadj, idxtype *adjncy, idxtype *vwgt,
|
||||||
|
idxtype *adjwgt, idxtype *wgtflag, idxtype *numflag, idxtype *nparts, idxtype *options,
|
||||||
|
idxtype *edgecut, idxtype *part);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
\\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -27,6 +27,7 @@ License
|
|||||||
#include "fvMesh.H"
|
#include "fvMesh.H"
|
||||||
#include "fvMatrices.H"
|
#include "fvMatrices.H"
|
||||||
#include "geometricOneField.H"
|
#include "geometricOneField.H"
|
||||||
|
#include "stringListOps.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
@ -62,15 +63,15 @@ void Foam::porousZone::adjustNegativeResistance(dimensionedVector& resist)
|
|||||||
|
|
||||||
Foam::porousZone::porousZone
|
Foam::porousZone::porousZone
|
||||||
(
|
(
|
||||||
const word& name,
|
const keyType& key,
|
||||||
const fvMesh& mesh,
|
const fvMesh& mesh,
|
||||||
const dictionary& dict
|
const dictionary& dict
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
name_(name),
|
key_(key),
|
||||||
mesh_(mesh),
|
mesh_(mesh),
|
||||||
dict_(dict),
|
dict_(dict),
|
||||||
cellZoneID_(mesh_.cellZones().findZoneID(name)),
|
cellZoneIds_(0),
|
||||||
coordSys_(dict, mesh),
|
coordSys_(dict, mesh),
|
||||||
porosity_(1),
|
porosity_(1),
|
||||||
intensity_(0),
|
intensity_(0),
|
||||||
@ -80,9 +81,27 @@ Foam::porousZone::porousZone
|
|||||||
D_("D", dimensionSet(0, -2, 0, 0, 0), tensor::zero),
|
D_("D", dimensionSet(0, -2, 0, 0, 0), tensor::zero),
|
||||||
F_("F", dimensionSet(0, -1, 0, 0, 0), tensor::zero)
|
F_("F", dimensionSet(0, -1, 0, 0, 0), tensor::zero)
|
||||||
{
|
{
|
||||||
Info<< "Creating porous zone: " << name_ << endl;
|
Info<< "Creating porous zone: " << key_ << endl;
|
||||||
|
|
||||||
bool foundZone = (cellZoneID_ != -1);
|
if (key_.isPattern())
|
||||||
|
{
|
||||||
|
cellZoneIds_ = findStrings
|
||||||
|
(
|
||||||
|
key_,
|
||||||
|
mesh_.cellZones().names()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
const label zoneId = mesh_.cellZones().findZoneID(key_);
|
||||||
|
if (zoneId != -1)
|
||||||
|
{
|
||||||
|
cellZoneIds_.setSize(1);
|
||||||
|
cellZoneIds_[0] = zoneId;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool foundZone = !cellZoneIds_.empty();
|
||||||
reduce(foundZone, orOp<bool>());
|
reduce(foundZone, orOp<bool>());
|
||||||
|
|
||||||
if (!foundZone && Pstream::master())
|
if (!foundZone && Pstream::master())
|
||||||
@ -90,8 +109,8 @@ Foam::porousZone::porousZone
|
|||||||
FatalErrorIn
|
FatalErrorIn
|
||||||
(
|
(
|
||||||
"Foam::porousZone::porousZone"
|
"Foam::porousZone::porousZone"
|
||||||
"(const fvMesh&, const word&, const dictionary&)"
|
"(const keyType&, const fvMesh&, const dictionary&)"
|
||||||
) << "cannot find porous cellZone " << name_
|
) << "cannot find porous cellZone " << key_
|
||||||
<< exit(FatalError);
|
<< exit(FatalError);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -106,7 +125,7 @@ Foam::porousZone::porousZone
|
|||||||
FatalIOErrorIn
|
FatalIOErrorIn
|
||||||
(
|
(
|
||||||
"Foam::porousZone::porousZone"
|
"Foam::porousZone::porousZone"
|
||||||
"(const fvMesh&, const word&, const dictionary&)",
|
"(const keyType&, const fvMesh&, const dictionary&)",
|
||||||
dict_
|
dict_
|
||||||
)
|
)
|
||||||
<< "out-of-range porosity value " << porosity_
|
<< "out-of-range porosity value " << porosity_
|
||||||
@ -123,7 +142,7 @@ Foam::porousZone::porousZone
|
|||||||
FatalIOErrorIn
|
FatalIOErrorIn
|
||||||
(
|
(
|
||||||
"Foam::porousZone::porousZone"
|
"Foam::porousZone::porousZone"
|
||||||
"(const fvMesh&, const word&, const dictionary&)",
|
"(const keyType&, const fvMesh&, const dictionary&)",
|
||||||
dict_
|
dict_
|
||||||
)
|
)
|
||||||
<< "out-of-range turbulent intensity value " << intensity_
|
<< "out-of-range turbulent intensity value " << intensity_
|
||||||
@ -140,7 +159,7 @@ Foam::porousZone::porousZone
|
|||||||
FatalIOErrorIn
|
FatalIOErrorIn
|
||||||
(
|
(
|
||||||
"Foam::porousZone::porousZone"
|
"Foam::porousZone::porousZone"
|
||||||
"(const fvMesh&, const word&, const dictionary&)",
|
"(const keyType&, const fvMesh&, const dictionary&)",
|
||||||
dict_
|
dict_
|
||||||
)
|
)
|
||||||
<< "out-of-range turbulent length scale " << mixingLength_
|
<< "out-of-range turbulent length scale " << mixingLength_
|
||||||
@ -169,7 +188,7 @@ Foam::porousZone::porousZone
|
|||||||
FatalIOErrorIn
|
FatalIOErrorIn
|
||||||
(
|
(
|
||||||
"Foam::porousZone::porousZone"
|
"Foam::porousZone::porousZone"
|
||||||
"(const fvMesh&, const word&, const dictionary&)",
|
"(const keyType&, const fvMesh&, const dictionary&)",
|
||||||
dict_
|
dict_
|
||||||
) << "incorrect dimensions for d: " << d.dimensions()
|
) << "incorrect dimensions for d: " << d.dimensions()
|
||||||
<< " should be " << D_.dimensions()
|
<< " should be " << D_.dimensions()
|
||||||
@ -192,7 +211,7 @@ Foam::porousZone::porousZone
|
|||||||
FatalIOErrorIn
|
FatalIOErrorIn
|
||||||
(
|
(
|
||||||
"Foam::porousZone::porousZone"
|
"Foam::porousZone::porousZone"
|
||||||
"(const fvMesh&, const word&, const dictionary&)",
|
"(const keyType&, const fvMesh&, const dictionary&)",
|
||||||
dict_
|
dict_
|
||||||
) << "incorrect dimensions for f: " << f.dimensions()
|
) << "incorrect dimensions for f: " << f.dimensions()
|
||||||
<< " should be " << F_.dimensions()
|
<< " should be " << F_.dimensions()
|
||||||
@ -220,7 +239,7 @@ Foam::porousZone::porousZone
|
|||||||
FatalIOErrorIn
|
FatalIOErrorIn
|
||||||
(
|
(
|
||||||
"Foam::porousZone::porousZone"
|
"Foam::porousZone::porousZone"
|
||||||
"(const fvMesh&, const word&, const dictionary&)",
|
"(const keyType&, const fvMesh&, const dictionary&)",
|
||||||
dict_
|
dict_
|
||||||
) << "neither powerLaw (C0/C1) "
|
) << "neither powerLaw (C0/C1) "
|
||||||
"nor Darcy-Forchheimer law (d/f) specified"
|
"nor Darcy-Forchheimer law (d/f) specified"
|
||||||
@ -239,7 +258,7 @@ Foam::porousZone::porousZone
|
|||||||
|
|
||||||
void Foam::porousZone::addResistance(fvVectorMatrix& UEqn) const
|
void Foam::porousZone::addResistance(fvVectorMatrix& UEqn) const
|
||||||
{
|
{
|
||||||
if (cellZoneID_ == -1)
|
if (cellZoneIds_.empty())
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -250,7 +269,6 @@ void Foam::porousZone::addResistance(fvVectorMatrix& UEqn) const
|
|||||||
compressible = true;
|
compressible = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
const labelList& cells = mesh_.cellZones()[cellZoneID_];
|
|
||||||
const scalarField& V = mesh_.V();
|
const scalarField& V = mesh_.V();
|
||||||
scalarField& Udiag = UEqn.diag();
|
scalarField& Udiag = UEqn.diag();
|
||||||
vectorField& Usource = UEqn.source();
|
vectorField& Usource = UEqn.source();
|
||||||
@ -263,7 +281,6 @@ void Foam::porousZone::addResistance(fvVectorMatrix& UEqn) const
|
|||||||
addPowerLawResistance
|
addPowerLawResistance
|
||||||
(
|
(
|
||||||
Udiag,
|
Udiag,
|
||||||
cells,
|
|
||||||
V,
|
V,
|
||||||
mesh_.lookupObject<volScalarField>("rho"),
|
mesh_.lookupObject<volScalarField>("rho"),
|
||||||
U
|
U
|
||||||
@ -274,7 +291,6 @@ void Foam::porousZone::addResistance(fvVectorMatrix& UEqn) const
|
|||||||
addPowerLawResistance
|
addPowerLawResistance
|
||||||
(
|
(
|
||||||
Udiag,
|
Udiag,
|
||||||
cells,
|
|
||||||
V,
|
V,
|
||||||
geometricOneField(),
|
geometricOneField(),
|
||||||
U
|
U
|
||||||
@ -293,7 +309,6 @@ void Foam::porousZone::addResistance(fvVectorMatrix& UEqn) const
|
|||||||
(
|
(
|
||||||
Udiag,
|
Udiag,
|
||||||
Usource,
|
Usource,
|
||||||
cells,
|
|
||||||
V,
|
V,
|
||||||
mesh_.lookupObject<volScalarField>("rho"),
|
mesh_.lookupObject<volScalarField>("rho"),
|
||||||
mesh_.lookupObject<volScalarField>("mu"),
|
mesh_.lookupObject<volScalarField>("mu"),
|
||||||
@ -306,7 +321,6 @@ void Foam::porousZone::addResistance(fvVectorMatrix& UEqn) const
|
|||||||
(
|
(
|
||||||
Udiag,
|
Udiag,
|
||||||
Usource,
|
Usource,
|
||||||
cells,
|
|
||||||
V,
|
V,
|
||||||
geometricOneField(),
|
geometricOneField(),
|
||||||
mesh_.lookupObject<volScalarField>("nu"),
|
mesh_.lookupObject<volScalarField>("nu"),
|
||||||
@ -324,7 +338,7 @@ void Foam::porousZone::addResistance
|
|||||||
bool correctAUprocBC
|
bool correctAUprocBC
|
||||||
) const
|
) const
|
||||||
{
|
{
|
||||||
if (cellZoneID_ == -1)
|
if (cellZoneIds_.empty())
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -335,7 +349,6 @@ void Foam::porousZone::addResistance
|
|||||||
compressible = true;
|
compressible = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
const labelList& cells = mesh_.cellZones()[cellZoneID_];
|
|
||||||
const vectorField& U = UEqn.psi();
|
const vectorField& U = UEqn.psi();
|
||||||
|
|
||||||
if (C0_ > VSMALL)
|
if (C0_ > VSMALL)
|
||||||
@ -345,7 +358,6 @@ void Foam::porousZone::addResistance
|
|||||||
addPowerLawResistance
|
addPowerLawResistance
|
||||||
(
|
(
|
||||||
AU,
|
AU,
|
||||||
cells,
|
|
||||||
mesh_.lookupObject<volScalarField>("rho"),
|
mesh_.lookupObject<volScalarField>("rho"),
|
||||||
U
|
U
|
||||||
);
|
);
|
||||||
@ -355,7 +367,6 @@ void Foam::porousZone::addResistance
|
|||||||
addPowerLawResistance
|
addPowerLawResistance
|
||||||
(
|
(
|
||||||
AU,
|
AU,
|
||||||
cells,
|
|
||||||
geometricOneField(),
|
geometricOneField(),
|
||||||
U
|
U
|
||||||
);
|
);
|
||||||
@ -372,7 +383,6 @@ void Foam::porousZone::addResistance
|
|||||||
addViscousInertialResistance
|
addViscousInertialResistance
|
||||||
(
|
(
|
||||||
AU,
|
AU,
|
||||||
cells,
|
|
||||||
mesh_.lookupObject<volScalarField>("rho"),
|
mesh_.lookupObject<volScalarField>("rho"),
|
||||||
mesh_.lookupObject<volScalarField>("mu"),
|
mesh_.lookupObject<volScalarField>("mu"),
|
||||||
U
|
U
|
||||||
@ -383,7 +393,6 @@ void Foam::porousZone::addResistance
|
|||||||
addViscousInertialResistance
|
addViscousInertialResistance
|
||||||
(
|
(
|
||||||
AU,
|
AU,
|
||||||
cells,
|
|
||||||
geometricOneField(),
|
geometricOneField(),
|
||||||
mesh_.lookupObject<volScalarField>("nu"),
|
mesh_.lookupObject<volScalarField>("nu"),
|
||||||
U
|
U
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
\\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -110,8 +110,8 @@ class porousZone
|
|||||||
{
|
{
|
||||||
// Private data
|
// Private data
|
||||||
|
|
||||||
//- Name of this zone
|
//- Name of this zone, or a regular expression
|
||||||
word name_;
|
keyType key_;
|
||||||
|
|
||||||
//- Reference to the finite volume mesh this zone is part of
|
//- Reference to the finite volume mesh this zone is part of
|
||||||
const fvMesh& mesh_;
|
const fvMesh& mesh_;
|
||||||
@ -119,8 +119,8 @@ class porousZone
|
|||||||
//- Dictionary containing the parameters
|
//- Dictionary containing the parameters
|
||||||
dictionary dict_;
|
dictionary dict_;
|
||||||
|
|
||||||
//- Cell zone ID
|
//- Cell zone Ids
|
||||||
label cellZoneID_;
|
labelList cellZoneIds_;
|
||||||
|
|
||||||
//- Coordinate system used for the zone (Cartesian)
|
//- Coordinate system used for the zone (Cartesian)
|
||||||
coordinateSystem coordSys_;
|
coordinateSystem coordSys_;
|
||||||
@ -159,7 +159,6 @@ class porousZone
|
|||||||
void addPowerLawResistance
|
void addPowerLawResistance
|
||||||
(
|
(
|
||||||
scalarField& Udiag,
|
scalarField& Udiag,
|
||||||
const labelList& cells,
|
|
||||||
const scalarField& V,
|
const scalarField& V,
|
||||||
const RhoFieldType& rho,
|
const RhoFieldType& rho,
|
||||||
const vectorField& U
|
const vectorField& U
|
||||||
@ -171,7 +170,6 @@ class porousZone
|
|||||||
(
|
(
|
||||||
scalarField& Udiag,
|
scalarField& Udiag,
|
||||||
vectorField& Usource,
|
vectorField& Usource,
|
||||||
const labelList& cells,
|
|
||||||
const scalarField& V,
|
const scalarField& V,
|
||||||
const RhoFieldType& rho,
|
const RhoFieldType& rho,
|
||||||
const scalarField& mu,
|
const scalarField& mu,
|
||||||
@ -184,7 +182,6 @@ class porousZone
|
|||||||
void addPowerLawResistance
|
void addPowerLawResistance
|
||||||
(
|
(
|
||||||
tensorField& AU,
|
tensorField& AU,
|
||||||
const labelList& cells,
|
|
||||||
const RhoFieldType& rho,
|
const RhoFieldType& rho,
|
||||||
const vectorField& U
|
const vectorField& U
|
||||||
) const;
|
) const;
|
||||||
@ -194,7 +191,6 @@ class porousZone
|
|||||||
void addViscousInertialResistance
|
void addViscousInertialResistance
|
||||||
(
|
(
|
||||||
tensorField& AU,
|
tensorField& AU,
|
||||||
const labelList& cells,
|
|
||||||
const RhoFieldType& rho,
|
const RhoFieldType& rho,
|
||||||
const scalarField& mu,
|
const scalarField& mu,
|
||||||
const vectorField& U
|
const vectorField& U
|
||||||
@ -213,7 +209,7 @@ public:
|
|||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct from components
|
//- Construct from components
|
||||||
porousZone(const word& name, const fvMesh&, const dictionary&);
|
porousZone(const keyType& key, const fvMesh&, const dictionary&);
|
||||||
|
|
||||||
//- Return clone
|
//- Return clone
|
||||||
autoPtr<porousZone> clone() const
|
autoPtr<porousZone> clone() const
|
||||||
@ -237,10 +233,10 @@ public:
|
|||||||
|
|
||||||
autoPtr<porousZone> operator()(Istream& is) const
|
autoPtr<porousZone> operator()(Istream& is) const
|
||||||
{
|
{
|
||||||
word name(is);
|
keyType key(is);
|
||||||
dictionary dict(is);
|
dictionary dict(is);
|
||||||
|
|
||||||
return autoPtr<porousZone>(new porousZone(name, mesh_, dict));
|
return autoPtr<porousZone>(new porousZone(key, mesh_, dict));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -255,9 +251,9 @@ public:
|
|||||||
// Access
|
// Access
|
||||||
|
|
||||||
//- cellZone name
|
//- cellZone name
|
||||||
const word& zoneName() const
|
const keyType& zoneName() const
|
||||||
{
|
{
|
||||||
return name_;
|
return key_;
|
||||||
}
|
}
|
||||||
|
|
||||||
//- Return mesh
|
//- Return mesh
|
||||||
@ -266,10 +262,10 @@ public:
|
|||||||
return mesh_;
|
return mesh_;
|
||||||
}
|
}
|
||||||
|
|
||||||
//- cellZone number
|
//- cellZone numbers
|
||||||
label zoneId() const
|
const labelList& zoneIds() const
|
||||||
{
|
{
|
||||||
return cellZoneID_;
|
return cellZoneIds_;
|
||||||
}
|
}
|
||||||
|
|
||||||
//- dictionary values used for the porousZone
|
//- dictionary values used for the porousZone
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
\\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -33,12 +33,15 @@ void Foam::porousZone::modifyDdt(fvMatrix<Type>& m) const
|
|||||||
{
|
{
|
||||||
if (porosity_ < 1)
|
if (porosity_ < 1)
|
||||||
{
|
{
|
||||||
const labelList& cells = mesh_.cellZones()[cellZoneID_];
|
forAll(cellZoneIds_, zoneI)
|
||||||
|
|
||||||
forAll(cells, i)
|
|
||||||
{
|
{
|
||||||
m.diag()[cells[i]] *= porosity_;
|
const labelList& cells = mesh_.cellZones()[cellZoneIds_[zoneI]];
|
||||||
m.source()[cells[i]] *= porosity_;
|
|
||||||
|
forAll(cells, i)
|
||||||
|
{
|
||||||
|
m.diag()[cells[i]] *= porosity_;
|
||||||
|
m.source()[cells[i]] *= porosity_;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -48,7 +51,6 @@ template<class RhoFieldType>
|
|||||||
void Foam::porousZone::addPowerLawResistance
|
void Foam::porousZone::addPowerLawResistance
|
||||||
(
|
(
|
||||||
scalarField& Udiag,
|
scalarField& Udiag,
|
||||||
const labelList& cells,
|
|
||||||
const scalarField& V,
|
const scalarField& V,
|
||||||
const RhoFieldType& rho,
|
const RhoFieldType& rho,
|
||||||
const vectorField& U
|
const vectorField& U
|
||||||
@ -57,10 +59,15 @@ void Foam::porousZone::addPowerLawResistance
|
|||||||
const scalar C0 = C0_;
|
const scalar C0 = C0_;
|
||||||
const scalar C1m1b2 = (C1_ - 1.0)/2.0;
|
const scalar C1m1b2 = (C1_ - 1.0)/2.0;
|
||||||
|
|
||||||
forAll(cells, i)
|
forAll(cellZoneIds_, zoneI)
|
||||||
{
|
{
|
||||||
Udiag[cells[i]] +=
|
const labelList& cells = mesh_.cellZones()[cellZoneIds_[zoneI]];
|
||||||
|
|
||||||
|
forAll(cells, i)
|
||||||
|
{
|
||||||
|
Udiag[cells[i]] +=
|
||||||
V[cells[i]]*rho[cells[i]]*C0*pow(magSqr(U[cells[i]]), C1m1b2);
|
V[cells[i]]*rho[cells[i]]*C0*pow(magSqr(U[cells[i]]), C1m1b2);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -70,7 +77,6 @@ void Foam::porousZone::addViscousInertialResistance
|
|||||||
(
|
(
|
||||||
scalarField& Udiag,
|
scalarField& Udiag,
|
||||||
vectorField& Usource,
|
vectorField& Usource,
|
||||||
const labelList& cells,
|
|
||||||
const scalarField& V,
|
const scalarField& V,
|
||||||
const RhoFieldType& rho,
|
const RhoFieldType& rho,
|
||||||
const scalarField& mu,
|
const scalarField& mu,
|
||||||
@ -80,14 +86,21 @@ void Foam::porousZone::addViscousInertialResistance
|
|||||||
const tensor& D = D_.value();
|
const tensor& D = D_.value();
|
||||||
const tensor& F = F_.value();
|
const tensor& F = F_.value();
|
||||||
|
|
||||||
forAll(cells, i)
|
forAll(cellZoneIds_, zoneI)
|
||||||
{
|
{
|
||||||
tensor dragCoeff = mu[cells[i]]*D + (rho[cells[i]]*mag(U[cells[i]]))*F;
|
const labelList& cells = mesh_.cellZones()[cellZoneIds_[zoneI]];
|
||||||
scalar isoDragCoeff = tr(dragCoeff);
|
|
||||||
|
|
||||||
Udiag[cells[i]] += V[cells[i]]*isoDragCoeff;
|
forAll(cells, i)
|
||||||
Usource[cells[i]] -=
|
{
|
||||||
V[cells[i]]*((dragCoeff - I*isoDragCoeff) & U[cells[i]]);
|
const tensor dragCoeff = mu[cells[i]]*D
|
||||||
|
+ (rho[cells[i]]*mag(U[cells[i]]))*F;
|
||||||
|
|
||||||
|
const scalar isoDragCoeff = tr(dragCoeff);
|
||||||
|
|
||||||
|
Udiag[cells[i]] += V[cells[i]]*isoDragCoeff;
|
||||||
|
Usource[cells[i]] -=
|
||||||
|
V[cells[i]]*((dragCoeff - I*isoDragCoeff) & U[cells[i]]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -96,7 +109,6 @@ template<class RhoFieldType>
|
|||||||
void Foam::porousZone::addPowerLawResistance
|
void Foam::porousZone::addPowerLawResistance
|
||||||
(
|
(
|
||||||
tensorField& AU,
|
tensorField& AU,
|
||||||
const labelList& cells,
|
|
||||||
const RhoFieldType& rho,
|
const RhoFieldType& rho,
|
||||||
const vectorField& U
|
const vectorField& U
|
||||||
) const
|
) const
|
||||||
@ -104,10 +116,15 @@ void Foam::porousZone::addPowerLawResistance
|
|||||||
const scalar C0 = C0_;
|
const scalar C0 = C0_;
|
||||||
const scalar C1m1b2 = (C1_ - 1.0)/2.0;
|
const scalar C1m1b2 = (C1_ - 1.0)/2.0;
|
||||||
|
|
||||||
forAll(cells, i)
|
forAll(cellZoneIds_, zoneI)
|
||||||
{
|
{
|
||||||
AU[cells[i]] = AU[cells[i]]
|
const labelList& cells = mesh_.cellZones()[cellZoneIds_[zoneI]];
|
||||||
+ I*(rho[cells[i]]*C0*pow(magSqr(U[cells[i]]), C1m1b2));
|
|
||||||
|
forAll(cells, i)
|
||||||
|
{
|
||||||
|
AU[cells[i]] = AU[cells[i]]
|
||||||
|
+ I*(rho[cells[i]]*C0*pow(magSqr(U[cells[i]]), C1m1b2));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -116,7 +133,6 @@ template<class RhoFieldType>
|
|||||||
void Foam::porousZone::addViscousInertialResistance
|
void Foam::porousZone::addViscousInertialResistance
|
||||||
(
|
(
|
||||||
tensorField& AU,
|
tensorField& AU,
|
||||||
const labelList& cells,
|
|
||||||
const RhoFieldType& rho,
|
const RhoFieldType& rho,
|
||||||
const scalarField& mu,
|
const scalarField& mu,
|
||||||
const vectorField& U
|
const vectorField& U
|
||||||
@ -125,9 +141,14 @@ void Foam::porousZone::addViscousInertialResistance
|
|||||||
const tensor& D = D_.value();
|
const tensor& D = D_.value();
|
||||||
const tensor& F = F_.value();
|
const tensor& F = F_.value();
|
||||||
|
|
||||||
forAll(cells, i)
|
forAll(cellZoneIds_, zoneI)
|
||||||
{
|
{
|
||||||
AU[cells[i]] += mu[cells[i]]*D + (rho[cells[i]]*mag(U[cells[i]]))*F;
|
const labelList& cells = mesh_.cellZones()[cellZoneIds_[zoneI]];
|
||||||
|
|
||||||
|
forAll(cells, i)
|
||||||
|
{
|
||||||
|
AU[cells[i]] += mu[cells[i]]*D + (rho[cells[i]]*mag(U[cells[i]]))*F;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,74 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
|
||||||
\\/ M anipulation |
|
|
||||||
-------------------------------------------------------------------------------
|
|
||||||
License
|
|
||||||
This file is part of OpenFOAM.
|
|
||||||
|
|
||||||
OpenFOAM is free software: you can redistribute it and/or modify it
|
|
||||||
under the terms of the GNU General Public License as published by
|
|
||||||
the Free Software Foundation, either version 3 of the License, or
|
|
||||||
(at your option) any later version.
|
|
||||||
|
|
||||||
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
|
||||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
||||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
|
||||||
for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
|
||||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "error.H"
|
|
||||||
#include "atomizationModel.H"
|
|
||||||
#include "LISA.H"
|
|
||||||
#include "noAtomization.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
autoPtr<atomizationModel> atomizationModel::New
|
|
||||||
(
|
|
||||||
const dictionary& dict,
|
|
||||||
spray& sm
|
|
||||||
)
|
|
||||||
{
|
|
||||||
word atomizationModelType
|
|
||||||
(
|
|
||||||
dict.lookup("atomizationModel")
|
|
||||||
);
|
|
||||||
|
|
||||||
Info<< "Selecting atomizationModel "
|
|
||||||
<< atomizationModelType << endl;
|
|
||||||
|
|
||||||
dictionaryConstructorTable::iterator cstrIter =
|
|
||||||
dictionaryConstructorTablePtr_->find(atomizationModelType);
|
|
||||||
|
|
||||||
if (cstrIter == dictionaryConstructorTablePtr_->end())
|
|
||||||
{
|
|
||||||
FatalError
|
|
||||||
<< "atomizationModel::New(const dictionary&, const spray&) : " << endl
|
|
||||||
<< " unknown atomizationModelType type "
|
|
||||||
<< atomizationModelType
|
|
||||||
<< ", constructor not in hash table" << endl << endl
|
|
||||||
<< " Valid atomizationModel types are :" << endl;
|
|
||||||
Info<< dictionaryConstructorTablePtr_->sortedToc() << abort(FatalError);
|
|
||||||
}
|
|
||||||
|
|
||||||
return autoPtr<atomizationModel>(cstrIter()(dict, sm));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
} // End namespace Foam
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -59,6 +59,6 @@ Foam::CollisionModel<CloudType>::~CollisionModel()
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
#include "NewCollisionModel.C"
|
#include "CollisionModelNew.C"
|
||||||
|
|
||||||
// ************************************************************************* //
|
// ************************************************************************* //
|
||||||
|
|||||||
@ -29,7 +29,7 @@ Description
|
|||||||
|
|
||||||
SourceFiles
|
SourceFiles
|
||||||
CollisionModel.C
|
CollisionModel.C
|
||||||
NewCollisionModel.C
|
CollisionModelNew.C
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
|||||||
@ -75,6 +75,6 @@ Foam::PairModel<CloudType>::coeffDict() const
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
#include "NewPairModel.C"
|
#include "PairModelNew.C"
|
||||||
|
|
||||||
// ************************************************************************* //
|
// ************************************************************************* //
|
||||||
|
|||||||
@ -29,7 +29,7 @@ Description
|
|||||||
|
|
||||||
SourceFiles
|
SourceFiles
|
||||||
PairModel.C
|
PairModel.C
|
||||||
NewPairModel.C
|
PairModelNew.C
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
|||||||
@ -83,6 +83,6 @@ Foam::WallModel<CloudType>::coeffDict() const
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
#include "NewWallModel.C"
|
#include "WallModelNew.C"
|
||||||
|
|
||||||
// ************************************************************************* //
|
// ************************************************************************* //
|
||||||
|
|||||||
@ -29,7 +29,7 @@ Description
|
|||||||
|
|
||||||
SourceFiles
|
SourceFiles
|
||||||
WallModel.C
|
WallModel.C
|
||||||
NewWallModel.C
|
WallModelNew.C
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
\\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -208,6 +208,13 @@ bool Foam::blockMesh::readBoundary
|
|||||||
{
|
{
|
||||||
const entry& patchInfo = patchesInfo[patchI];
|
const entry& patchInfo = patchesInfo[patchI];
|
||||||
|
|
||||||
|
if (!patchInfo.isDict())
|
||||||
|
{
|
||||||
|
FatalIOErrorIn("blockMesh::readBoundary(..)", meshDescription)
|
||||||
|
<< "Entry " << patchInfo << " in boundary section is not a"
|
||||||
|
<< " valid dictionary." << exit(FatalIOError);
|
||||||
|
}
|
||||||
|
|
||||||
// Construct dictionary and add name
|
// Construct dictionary and add name
|
||||||
patchDicts.set(patchI, new dictionary(patchInfo.dict()));
|
patchDicts.set(patchI, new dictionary(patchInfo.dict()));
|
||||||
patchDicts[patchI].set("name", patchInfo.keyword());
|
patchDicts[patchI].set("name", patchInfo.keyword());
|
||||||
|
|||||||
@ -125,7 +125,7 @@ class PointEdgeWave
|
|||||||
label nChangedEdges_;
|
label nChangedEdges_;
|
||||||
|
|
||||||
//- Number of cyclic patches
|
//- Number of cyclic patches
|
||||||
bool nCyclicPatches_;
|
label nCyclicPatches_;
|
||||||
|
|
||||||
//- For every cyclic patch two primitivePatches
|
//- For every cyclic patch two primitivePatches
|
||||||
PtrList<primitivePatch> cycHalves_;
|
PtrList<primitivePatch> cycHalves_;
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
\\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -33,6 +33,8 @@ License
|
|||||||
#include "MeshWave.H"
|
#include "MeshWave.H"
|
||||||
#include "ListOps.H"
|
#include "ListOps.H"
|
||||||
#include "meshTools.H"
|
#include "meshTools.H"
|
||||||
|
#include "cpuTime.H"
|
||||||
|
#include "globalMeshData.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
\\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -136,37 +136,36 @@ Foam::coordinateSystem::coordinateSystem
|
|||||||
{
|
{
|
||||||
const entry* entryPtr = dict.lookupEntryPtr(typeName_(), false, false);
|
const entry* entryPtr = dict.lookupEntryPtr(typeName_(), false, false);
|
||||||
|
|
||||||
// a simple entry is a lookup into global coordinateSystems
|
// non-dictionary entry is a lookup into global coordinateSystems
|
||||||
if (entryPtr && !entryPtr->isDict())
|
if (entryPtr && !entryPtr->isDict())
|
||||||
{
|
{
|
||||||
word csName;
|
keyType key(entryPtr->stream());
|
||||||
entryPtr->stream() >> csName;
|
|
||||||
|
|
||||||
const coordinateSystems& csLst = coordinateSystems::New(obr);
|
const coordinateSystems& lst = coordinateSystems::New(obr);
|
||||||
|
const label id = lst.find(key);
|
||||||
|
|
||||||
label csId = csLst.find(csName);
|
|
||||||
if (debug)
|
if (debug)
|
||||||
{
|
{
|
||||||
Info<< "coordinateSystem::coordinateSystem"
|
Info<< "coordinateSystem::coordinateSystem"
|
||||||
"(const dictionary&, const objectRegistry&):"
|
"(const dictionary&, const objectRegistry&):"
|
||||||
<< nl << "using global coordinate system: "
|
<< nl << "using global coordinate system: "
|
||||||
<< csName << "=" << csId << endl;
|
<< key << "=" << id << endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (csId < 0)
|
if (id < 0)
|
||||||
{
|
{
|
||||||
FatalErrorIn
|
FatalErrorIn
|
||||||
(
|
(
|
||||||
"coordinateSystem::coordinateSystem"
|
"coordinateSystem::coordinateSystem"
|
||||||
"(const dictionary&, const objectRegistry&)"
|
"(const dictionary&, const objectRegistry&)"
|
||||||
) << "could not find coordinate system: " << csName << nl
|
) << "could not find coordinate system: " << key << nl
|
||||||
<< "available coordinate systems: " << csLst.toc() << nl << nl
|
<< "available coordinate systems: " << lst.toc() << nl << nl
|
||||||
<< exit(FatalError);
|
<< exit(FatalError);
|
||||||
}
|
}
|
||||||
|
|
||||||
// copy coordinateSystem, but assign the name as the typeName
|
// copy coordinateSystem, but assign the name as the typeName
|
||||||
// to avoid strange things in writeDict()
|
// to avoid strange things in writeDict()
|
||||||
operator=(csLst[csId]);
|
operator=(lst[id]);
|
||||||
name_ = typeName_();
|
name_ = typeName_();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
\\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
\\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -26,6 +26,7 @@ License
|
|||||||
#include "coordinateSystems.H"
|
#include "coordinateSystems.H"
|
||||||
#include "IOPtrList.H"
|
#include "IOPtrList.H"
|
||||||
#include "Time.H"
|
#include "Time.H"
|
||||||
|
#include "stringListOps.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
|
||||||
|
|
||||||
@ -97,13 +98,25 @@ const Foam::coordinateSystems& Foam::coordinateSystems::New
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::label Foam::coordinateSystems::find(const word& keyword) const
|
Foam::label Foam::coordinateSystems::find(const keyType& key) const
|
||||||
{
|
{
|
||||||
forAll(*this, i)
|
if (key.isPattern())
|
||||||
{
|
{
|
||||||
if (keyword == operator[](i).name())
|
labelList allFound = findAll(key);
|
||||||
|
// return first element
|
||||||
|
if (!allFound.empty())
|
||||||
{
|
{
|
||||||
return i;
|
return allFound[0];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
forAll(*this, i)
|
||||||
|
{
|
||||||
|
if (key == operator[](i).name())
|
||||||
|
{
|
||||||
|
return i;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -111,9 +124,34 @@ Foam::label Foam::coordinateSystems::find(const word& keyword) const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
bool Foam::coordinateSystems::found(const word& keyword) const
|
Foam::labelList Foam::coordinateSystems::findAll(const keyType& key) const
|
||||||
{
|
{
|
||||||
return find(keyword) >= 0;
|
labelList allFound;
|
||||||
|
if (key.isPattern())
|
||||||
|
{
|
||||||
|
allFound = findStrings(key, toc());
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
allFound.setSize(size());
|
||||||
|
label nFound = 0;
|
||||||
|
forAll(*this, i)
|
||||||
|
{
|
||||||
|
if (key == operator[](i).name())
|
||||||
|
{
|
||||||
|
allFound[nFound++] = i;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
allFound.setSize(nFound);
|
||||||
|
}
|
||||||
|
|
||||||
|
return allFound;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool Foam::coordinateSystems::found(const keyType& key) const
|
||||||
|
{
|
||||||
|
return find(key) >= 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
\\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -97,11 +97,14 @@ public:
|
|||||||
|
|
||||||
// Member Functions
|
// Member Functions
|
||||||
|
|
||||||
//- Find and return index for a given keyword, returns -1 if not found
|
//- Find and return index for the first match, returns -1 if not found
|
||||||
label find(const word& key) const;
|
label find(const keyType& key) const;
|
||||||
|
|
||||||
//- Search for given keyword
|
//- Find and return indices for all matches
|
||||||
bool found(const word& keyword) const;
|
labelList findAll(const keyType& key) const;
|
||||||
|
|
||||||
|
//- Search for given key
|
||||||
|
bool found(const keyType& key) const;
|
||||||
|
|
||||||
//- Return the table of contents (list of all keywords)
|
//- Return the table of contents (list of all keywords)
|
||||||
wordList toc() const;
|
wordList toc() const;
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
\\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -32,6 +32,9 @@ License
|
|||||||
#include "Random.H"
|
#include "Random.H"
|
||||||
#include "treeDataFace.H"
|
#include "treeDataFace.H"
|
||||||
#include "indexedOctree.H"
|
#include "indexedOctree.H"
|
||||||
|
#include "polyMesh.H"
|
||||||
|
#include "polyPatch.H"
|
||||||
|
#include "Time.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
@ -362,7 +365,7 @@ void Foam::directMappedPatchBase::findSamples
|
|||||||
"(const pointField&, labelList&"
|
"(const pointField&, labelList&"
|
||||||
", labelList&, pointField&)"
|
", labelList&, pointField&)"
|
||||||
) << "Did not find sample " << samples[sampleI]
|
) << "Did not find sample " << samples[sampleI]
|
||||||
<< " on any processor of region" << sampleRegion_
|
<< " on any processor of region " << sampleRegion_
|
||||||
<< exit(FatalError);
|
<< exit(FatalError);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user