From acc80135bcfa403a82098eda1b855302d731ffb6 Mon Sep 17 00:00:00 2001 From: Paul Fleming Date: Tue, 1 May 2018 16:27:19 -0600 Subject: [PATCH 01/65] Added two example cases, ssc and ssc.base, which will be used to test the new ssc functionality and check backward compatability --- .../example.ADM.ssc.base/0.original/Rwall | 65 +++ .../example.ADM.ssc.base/0.original/T | 55 ++ .../example.ADM.ssc.base/0.original/U | 58 ++ .../example.ADM.ssc.base/0.original/k | 54 ++ .../example.ADM.ssc.base/0.original/kappat | 60 +++ .../example.ADM.ssc.base/0.original/nuSgs | 60 +++ .../example.ADM.ssc.base/0.original/p_rgh | 54 ++ .../example.ADM.ssc.base/0.original/qwall | 59 ++ .../constant/ABLProperties | 55 ++ .../constant/LESProperties | 118 ++++ .../constant/airfoilProperties/Cylinder1 | 23 + .../constant/airfoilProperties/Cylinder2 | 23 + .../constant/airfoilProperties/DU21_A17 | 162 ++++++ .../constant/airfoilProperties/DU25_A17 | 161 ++++++ .../constant/airfoilProperties/DU30_A17 | 163 ++++++ .../constant/airfoilProperties/DU35_A17 | 155 ++++++ .../constant/airfoilProperties/DU40_A17 | 156 ++++++ .../constant/airfoilProperties/NACA64_A17 | 147 +++++ exampleCases/example.ADM.ssc.base/constant/g | 22 + .../constant/polyMesh/blockMeshDict | 105 ++++ .../constant/transportProperties | 39 ++ .../constant/turbineArrayProperties | 67 +++ .../constant/turbineProperties/NREL5MWRef | 122 +++++ .../constant/turbulenceProperties | 22 + .../example.ADM.ssc.base/runscript.preprocess | 170 ++++++ .../example.ADM.ssc.base/runscript.solve.1 | 40 ++ exampleCases/example.ADM.ssc.base/setUp | 103 ++++ .../changeDictionaryDict.updateBCs.cyclic | 261 +++++++++ .../changeDictionaryDict.updateBCs.east | 306 +++++++++++ .../changeDictionaryDict.updateBCs.north | 217 ++++++++ .../changeDictionaryDict.updateBCs.northeast | 313 +++++++++++ .../changeDictionaryDict.updateBCs.northwest | 313 +++++++++++ .../changeDictionaryDict.updateBCs.south | 215 ++++++++ .../changeDictionaryDict.updateBCs.southeast | 314 +++++++++++ .../changeDictionaryDict.updateBCs.southwest | 313 +++++++++++ .../changeDictionaryDict.updateBCs.west | 215 ++++++++ .../example.ADM.ssc.base/system/controlDict | 61 +++ .../example.ADM.ssc.base/system/controlDict.1 | 61 +++ .../system/decomposeParDict | 76 +++ .../example.ADM.ssc.base/system/fvSchemes | 111 ++++ .../example.ADM.ssc.base/system/fvSolution | 102 ++++ .../system/refineMeshDict.local | 48 ++ .../system/sampling/boundaryDataPre | 25 + .../system/sampling/fieldAverages | 17 + .../system/sampling/probeData1 | 223 ++++++++ .../system/sampling/probeData1S | 18 + .../system/sampling/probeData2 | 223 ++++++++ .../system/sampling/probeData2S | 18 + .../system/sampling/probeData3 | 223 ++++++++ .../system/sampling/probeData3S | 18 + .../system/sampling/probeData4 | 223 ++++++++ .../system/sampling/probeData4S | 18 + .../system/sampling/probeData5 | 223 ++++++++ .../system/sampling/probeData5S | 18 + .../system/sampling/sliceDataInstantaneous | 53 ++ .../system/setFieldsABLDict | 504 ++++++++++++++++++ .../system/topoSetDict.local.1 | 36 ++ .../system/topoSetDict.local.2 | 36 ++ exampleCases/example.ADM.ssc/0.original/Rwall | 65 +++ exampleCases/example.ADM.ssc/0.original/T | 55 ++ exampleCases/example.ADM.ssc/0.original/U | 58 ++ exampleCases/example.ADM.ssc/0.original/k | 54 ++ .../example.ADM.ssc/0.original/kappat | 60 +++ exampleCases/example.ADM.ssc/0.original/nuSgs | 60 +++ exampleCases/example.ADM.ssc/0.original/p_rgh | 54 ++ exampleCases/example.ADM.ssc/0.original/qwall | 59 ++ .../example.ADM.ssc/constant/ABLProperties | 55 ++ .../example.ADM.ssc/constant/LESProperties | 118 ++++ .../constant/airfoilProperties/Cylinder1 | 23 + .../constant/airfoilProperties/Cylinder2 | 23 + .../constant/airfoilProperties/DU21_A17 | 162 ++++++ .../constant/airfoilProperties/DU25_A17 | 161 ++++++ .../constant/airfoilProperties/DU30_A17 | 163 ++++++ .../constant/airfoilProperties/DU35_A17 | 155 ++++++ .../constant/airfoilProperties/DU40_A17 | 156 ++++++ .../constant/airfoilProperties/NACA64_A17 | 147 +++++ exampleCases/example.ADM.ssc/constant/g | 22 + .../constant/polyMesh/blockMeshDict | 105 ++++ .../constant/transportProperties | 39 ++ .../constant/turbineArrayProperties | 67 +++ .../constant/turbineProperties/NREL5MWRef | 122 +++++ .../constant/turbulenceProperties | 22 + .../example.ADM.ssc/runscript.preprocess | 170 ++++++ .../example.ADM.ssc/runscript.solve.1 | 40 ++ exampleCases/example.ADM.ssc/setUp | 103 ++++ .../changeDictionaryDict.updateBCs.cyclic | 261 +++++++++ .../changeDictionaryDict.updateBCs.east | 306 +++++++++++ .../changeDictionaryDict.updateBCs.north | 217 ++++++++ .../changeDictionaryDict.updateBCs.northeast | 313 +++++++++++ .../changeDictionaryDict.updateBCs.northwest | 313 +++++++++++ .../changeDictionaryDict.updateBCs.south | 215 ++++++++ .../changeDictionaryDict.updateBCs.southeast | 314 +++++++++++ .../changeDictionaryDict.updateBCs.southwest | 313 +++++++++++ .../changeDictionaryDict.updateBCs.west | 215 ++++++++ .../example.ADM.ssc/system/controlDict | 61 +++ .../example.ADM.ssc/system/controlDict.1 | 61 +++ .../example.ADM.ssc/system/decomposeParDict | 76 +++ exampleCases/example.ADM.ssc/system/fvSchemes | 111 ++++ .../example.ADM.ssc/system/fvSolution | 102 ++++ .../system/refineMeshDict.local | 48 ++ .../system/sampling/boundaryDataPre | 25 + .../system/sampling/fieldAverages | 17 + .../system/sampling/probeData1 | 223 ++++++++ .../system/sampling/probeData1S | 18 + .../system/sampling/probeData2 | 223 ++++++++ .../system/sampling/probeData2S | 18 + .../system/sampling/probeData3 | 223 ++++++++ .../system/sampling/probeData3S | 18 + .../system/sampling/probeData4 | 223 ++++++++ .../system/sampling/probeData4S | 18 + .../system/sampling/probeData5 | 223 ++++++++ .../system/sampling/probeData5S | 18 + .../system/sampling/sliceDataInstantaneous | 53 ++ .../example.ADM.ssc/system/setFieldsABLDict | 504 ++++++++++++++++++ .../system/topoSetDict.local.1 | 36 ++ .../system/topoSetDict.local.2 | 36 ++ 116 files changed, 14240 insertions(+) create mode 100755 exampleCases/example.ADM.ssc.base/0.original/Rwall create mode 100755 exampleCases/example.ADM.ssc.base/0.original/T create mode 100755 exampleCases/example.ADM.ssc.base/0.original/U create mode 100755 exampleCases/example.ADM.ssc.base/0.original/k create mode 100755 exampleCases/example.ADM.ssc.base/0.original/kappat create mode 100755 exampleCases/example.ADM.ssc.base/0.original/nuSgs create mode 100755 exampleCases/example.ADM.ssc.base/0.original/p_rgh create mode 100755 exampleCases/example.ADM.ssc.base/0.original/qwall create mode 100755 exampleCases/example.ADM.ssc.base/constant/ABLProperties create mode 100755 exampleCases/example.ADM.ssc.base/constant/LESProperties create mode 100755 exampleCases/example.ADM.ssc.base/constant/airfoilProperties/Cylinder1 create mode 100755 exampleCases/example.ADM.ssc.base/constant/airfoilProperties/Cylinder2 create mode 100755 exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU21_A17 create mode 100755 exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU25_A17 create mode 100755 exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU30_A17 create mode 100755 exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU35_A17 create mode 100755 exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU40_A17 create mode 100755 exampleCases/example.ADM.ssc.base/constant/airfoilProperties/NACA64_A17 create mode 100755 exampleCases/example.ADM.ssc.base/constant/g create mode 100755 exampleCases/example.ADM.ssc.base/constant/polyMesh/blockMeshDict create mode 100755 exampleCases/example.ADM.ssc.base/constant/transportProperties create mode 100755 exampleCases/example.ADM.ssc.base/constant/turbineArrayProperties create mode 100755 exampleCases/example.ADM.ssc.base/constant/turbineProperties/NREL5MWRef create mode 100755 exampleCases/example.ADM.ssc.base/constant/turbulenceProperties create mode 100755 exampleCases/example.ADM.ssc.base/runscript.preprocess create mode 100755 exampleCases/example.ADM.ssc.base/runscript.solve.1 create mode 100755 exampleCases/example.ADM.ssc.base/setUp create mode 100755 exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.cyclic create mode 100755 exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.east create mode 100755 exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.north create mode 100755 exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.northeast create mode 100755 exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.northwest create mode 100755 exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.south create mode 100755 exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.southeast create mode 100755 exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.southwest create mode 100755 exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.west create mode 100755 exampleCases/example.ADM.ssc.base/system/controlDict create mode 100755 exampleCases/example.ADM.ssc.base/system/controlDict.1 create mode 100755 exampleCases/example.ADM.ssc.base/system/decomposeParDict create mode 100755 exampleCases/example.ADM.ssc.base/system/fvSchemes create mode 100755 exampleCases/example.ADM.ssc.base/system/fvSolution create mode 100755 exampleCases/example.ADM.ssc.base/system/refineMeshDict.local create mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/boundaryDataPre create mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/fieldAverages create mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/probeData1 create mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/probeData1S create mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/probeData2 create mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/probeData2S create mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/probeData3 create mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/probeData3S create mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/probeData4 create mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/probeData4S create mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/probeData5 create mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/probeData5S create mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/sliceDataInstantaneous create mode 100755 exampleCases/example.ADM.ssc.base/system/setFieldsABLDict create mode 100755 exampleCases/example.ADM.ssc.base/system/topoSetDict.local.1 create mode 100755 exampleCases/example.ADM.ssc.base/system/topoSetDict.local.2 create mode 100755 exampleCases/example.ADM.ssc/0.original/Rwall create mode 100755 exampleCases/example.ADM.ssc/0.original/T create mode 100755 exampleCases/example.ADM.ssc/0.original/U create mode 100755 exampleCases/example.ADM.ssc/0.original/k create mode 100755 exampleCases/example.ADM.ssc/0.original/kappat create mode 100755 exampleCases/example.ADM.ssc/0.original/nuSgs create mode 100755 exampleCases/example.ADM.ssc/0.original/p_rgh create mode 100755 exampleCases/example.ADM.ssc/0.original/qwall create mode 100755 exampleCases/example.ADM.ssc/constant/ABLProperties create mode 100755 exampleCases/example.ADM.ssc/constant/LESProperties create mode 100755 exampleCases/example.ADM.ssc/constant/airfoilProperties/Cylinder1 create mode 100755 exampleCases/example.ADM.ssc/constant/airfoilProperties/Cylinder2 create mode 100755 exampleCases/example.ADM.ssc/constant/airfoilProperties/DU21_A17 create mode 100755 exampleCases/example.ADM.ssc/constant/airfoilProperties/DU25_A17 create mode 100755 exampleCases/example.ADM.ssc/constant/airfoilProperties/DU30_A17 create mode 100755 exampleCases/example.ADM.ssc/constant/airfoilProperties/DU35_A17 create mode 100755 exampleCases/example.ADM.ssc/constant/airfoilProperties/DU40_A17 create mode 100755 exampleCases/example.ADM.ssc/constant/airfoilProperties/NACA64_A17 create mode 100755 exampleCases/example.ADM.ssc/constant/g create mode 100755 exampleCases/example.ADM.ssc/constant/polyMesh/blockMeshDict create mode 100755 exampleCases/example.ADM.ssc/constant/transportProperties create mode 100755 exampleCases/example.ADM.ssc/constant/turbineArrayProperties create mode 100755 exampleCases/example.ADM.ssc/constant/turbineProperties/NREL5MWRef create mode 100755 exampleCases/example.ADM.ssc/constant/turbulenceProperties create mode 100755 exampleCases/example.ADM.ssc/runscript.preprocess create mode 100755 exampleCases/example.ADM.ssc/runscript.solve.1 create mode 100755 exampleCases/example.ADM.ssc/setUp create mode 100755 exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.cyclic create mode 100755 exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.east create mode 100755 exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.north create mode 100755 exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.northeast create mode 100755 exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.northwest create mode 100755 exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.south create mode 100755 exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.southeast create mode 100755 exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.southwest create mode 100755 exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.west create mode 100755 exampleCases/example.ADM.ssc/system/controlDict create mode 100755 exampleCases/example.ADM.ssc/system/controlDict.1 create mode 100755 exampleCases/example.ADM.ssc/system/decomposeParDict create mode 100755 exampleCases/example.ADM.ssc/system/fvSchemes create mode 100755 exampleCases/example.ADM.ssc/system/fvSolution create mode 100755 exampleCases/example.ADM.ssc/system/refineMeshDict.local create mode 100755 exampleCases/example.ADM.ssc/system/sampling/boundaryDataPre create mode 100755 exampleCases/example.ADM.ssc/system/sampling/fieldAverages create mode 100755 exampleCases/example.ADM.ssc/system/sampling/probeData1 create mode 100755 exampleCases/example.ADM.ssc/system/sampling/probeData1S create mode 100755 exampleCases/example.ADM.ssc/system/sampling/probeData2 create mode 100755 exampleCases/example.ADM.ssc/system/sampling/probeData2S create mode 100755 exampleCases/example.ADM.ssc/system/sampling/probeData3 create mode 100755 exampleCases/example.ADM.ssc/system/sampling/probeData3S create mode 100755 exampleCases/example.ADM.ssc/system/sampling/probeData4 create mode 100755 exampleCases/example.ADM.ssc/system/sampling/probeData4S create mode 100755 exampleCases/example.ADM.ssc/system/sampling/probeData5 create mode 100755 exampleCases/example.ADM.ssc/system/sampling/probeData5S create mode 100755 exampleCases/example.ADM.ssc/system/sampling/sliceDataInstantaneous create mode 100755 exampleCases/example.ADM.ssc/system/setFieldsABLDict create mode 100755 exampleCases/example.ADM.ssc/system/topoSetDict.local.1 create mode 100755 exampleCases/example.ADM.ssc/system/topoSetDict.local.2 diff --git a/exampleCases/example.ADM.ssc.base/0.original/Rwall b/exampleCases/example.ADM.ssc.base/0.original/Rwall new file mode 100755 index 000000000..9f0a3a19c --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/0.original/Rwall @@ -0,0 +1,65 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volSymmTensorField; + location "0"; + object Rwall; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + +dimensions [ 0 2 -2 0 0 0 0 ]; + +internalField uniform (0.0 0.0 0.0 0.0 0.0 0.0); + +boundaryField +{ + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + //averageType "local"; + averageType "planarAverage"; + value uniform $Rwall; + } + upper + { + type fixedValue; + value $internalField; + } + west + { + type cyclic; + value $internalField; + } + east + { + type cyclic; + value $internalField; + } + north + { + type cyclic; + value $internalField; + } + south + { + type cyclic; + value $internalField; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/0.original/T b/exampleCases/example.ADM.ssc.base/0.original/T new file mode 100755 index 000000000..8fce50ca7 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/0.original/T @@ -0,0 +1,55 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object T ; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 0 0 1 0 0 0]; + +internalField uniform $TBottom; + +boundaryField +{ + lower + { + type zeroGradient; + } + upper + { + type fixedGradient; + gradient uniform $TGradUpper; + } + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/0.original/U b/exampleCases/example.ADM.ssc.base/0.original/U new file mode 100755 index 000000000..a73faa4e0 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/0.original/U @@ -0,0 +1,58 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volVectorField; + location "0"; + object U; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 1 -1 0 0 0 0]; + +internalField uniform (0 0 0); + +boundaryField +{ + lower + { + type velocityABLWallFunction; + print true; + U U; + value $internalField; + } + upper + { + type slip; + } + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } +} + + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/0.original/k b/exampleCases/example.ADM.ssc.base/0.original/k new file mode 100755 index 000000000..b85959d30 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/0.original/k @@ -0,0 +1,54 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object k ; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -2 0 0 0 0]; + +internalField uniform $k0; + +boundaryField +{ + lower + { + type zeroGradient; + } + upper + { + type zeroGradient; + } + east + { + type cyclic; + } + west + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/0.original/kappat b/exampleCases/example.ADM.ssc.base/0.original/kappat new file mode 100755 index 000000000..05706742f --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/0.original/kappat @@ -0,0 +1,60 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.1.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object kappat; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -1 0 0 0 0]; + +internalField uniform $kappat0; + +boundaryField +{ + lower + { + type fixedValue; + value uniform 0.0; + } + upper + { + type fixedValue; + value uniform 0.0; + } + west + { + type cyclic; + value $internalField; + } + east + { + type cyclic; + value $internalField; + } + north + { + type cyclic; + value $internalField; + } + south + { + type cyclic; + value $internalField; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/0.original/nuSgs b/exampleCases/example.ADM.ssc.base/0.original/nuSgs new file mode 100755 index 000000000..e6f1da758 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/0.original/nuSgs @@ -0,0 +1,60 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.1.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object nuSgs; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -1 0 0 0 0]; + +internalField uniform $nuSgs0; + +boundaryField +{ + lower + { + type fixedValue; + value uniform 0.0; + } + upper + { + type fixedValue; + value uniform 0.0; + } + west + { + type cyclic; + value $internalField; + } + east + { + type cyclic; + value $internalField; + } + north + { + type cyclic; + value $internalField; + } + south + { + type cyclic; + value $internalField; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/0.original/p_rgh b/exampleCases/example.ADM.ssc.base/0.original/p_rgh new file mode 100755 index 000000000..b40b9978c --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/0.original/p_rgh @@ -0,0 +1,54 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0000"; + object p_rgh ; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -2 0 0 0 0]; + +internalField uniform $p_rgh0; + +boundaryField +{ + lower + { + type fixedFluxPressure; + } + upper + { + type fixedFluxPressure; + } + east + { + type cyclic; + } + west + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/0.original/qwall b/exampleCases/example.ADM.ssc.base/0.original/qwall new file mode 100755 index 000000000..c695d7577 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/0.original/qwall @@ -0,0 +1,59 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volVectorField; + location "0"; + object qwall; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + +dimensions [ 0 1 -1 1 0 0 0 ]; + +internalField uniform (0.0 0.0 0.0); + +boundaryField +{ + lower + { + type fixedValue; + value uniform $qwall; + } + upper + { + type fixedValue; + value $internalField; + } + west + { + type cyclic; + value $internalField; + } + east + { + type cyclic; + value $internalField; + } + north + { + type cyclic; + value $internalField; + } + south + { + type cyclic; + value $internalField; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/constant/ABLProperties b/exampleCases/example.ADM.ssc.base/constant/ABLProperties new file mode 100755 index 000000000..d25c3dbee --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/constant/ABLProperties @@ -0,0 +1,55 @@ +/*---------------------------------------------------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.openfoam.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + + root ""; + case ""; + instance ""; + local ""; + + class dictionary; + object ABLProperties; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + + +// Properties of the mesoscale source terms +momentumSourceType "given"; +temperatureSourceType "given"; + + +velocityInputType "speedAndDirection"; + + +#include "../constant/sources" + + +// Relaxation factors applied when computing sources given desired +// velocity and temperature. +alphaMomentum 0.7; +alphaTemperature 0.7; + + +// Properties of the Coriolis force +planetaryRotationPeriod $EarthPeriod; +latitude $latitude; + + +// Statistics gathering input +avgStartTime $avgStartTime; +corrStartTime $corrStartTime; + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/constant/LESProperties b/exampleCases/example.ADM.ssc.base/constant/LESProperties new file mode 100755 index 000000000..2043039a5 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/constant/LESProperties @@ -0,0 +1,118 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object LESProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +#include "../setUp" + + +LESModel $LESModel; +//LESModel SmagorinskyABL; +//LESModel Smagorinsky; +//LESModel dynLagrangianCsBound; + +delta smooth; + +SmagorinskyCoeffs +{ + ce $ce; + ck $ck; +} + +SmagorinskyABLCoeffs +{ + ce $ce; + ck $ck; + TName "T"; + kappatName "kappat"; +} + +oneEqEddyABLCoeffs +{ + ce $ce; + ck $ck; + TName "T"; + kappatName "kappat"; +} + +printCoeffs on; + +dynLagrangianCsBoundCoeffs +{ + filter simple; +} + +cubeRootVolCoeffs +{ + deltaCoeff 1; +} + +PrandtlCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + smoothCoeffs + { + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + maxDeltaRatio 1.1; + } + + Cdelta 0.158; +} + +vanDriestCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + smoothCoeffs + { + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + maxDeltaRatio 1.1; + } + + Aplus 26; + Cdelta 0.158; +} + +smoothCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + maxDeltaRatio 1.1; +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/Cylinder1 b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/Cylinder1 new file mode 100755 index 000000000..7106c17d0 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/Cylinder1 @@ -0,0 +1,23 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.5000) + ( 0.00 0.000 0.5000) + ( 180.00 0.000 0.5000) +); diff --git a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/Cylinder2 b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/Cylinder2 new file mode 100755 index 000000000..b2e7923f1 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/Cylinder2 @@ -0,0 +1,23 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.3500) + ( 0.00 0.000 0.3500) + ( 180.00 0.000 0.3500) +); diff --git a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU21_A17 b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU21_A17 new file mode 100755 index 000000000..17eb9de96 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU21_A17 @@ -0,0 +1,162 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180 0 0.0185) + (-175 0.394 0.0332) + (-170 0.788 0.0945) + (-160 0.67 0.2809) + (-155 0.749 0.3932) + (-150 0.797 0.5112) + (-145 0.818 0.6309) + (-140 0.813 0.7485) + (-135 0.786 0.8612) + (-130 0.739 0.9665) + (-125 0.675 1.0625) + (-120 0.596 1.1476) + (-115 0.505 1.2206) + (-110 0.403 1.2805) + (-105 0.294 1.3265) + (-100 0.179 1.3582) + (-95 0.06 1.3752) + (-90 -0.06 1.3774) + (-85 -0.179 1.3648) + (-80 -0.295 1.3376) + (-75 -0.407 1.2962) + (-70 -0.512 1.2409) + (-65 -0.608 1.1725) + (-60 -0.693 1.0919) + (-55 -0.764 1.0002) + (-50 -0.82 0.899 ) + (-45 -0.857 0.79 ) + (-40 -0.875 0.6754) + (-35 -0.869 0.5579) + (-30 -0.838 0.4405) + (-25 -0.791 0.3256) + (-24 -0.794 0.3013) + (-23 -0.805 0.2762) + (-22 -0.821 0.2506) + (-21 -0.843 0.2246) + (-20 -0.869 0.1983) + (-19 -0.899 0.172 ) + (-18 -0.931 0.1457) + (-17 -0.964 0.1197) + (-16 -0.999 0.094 ) + (-15 -1.033 0.0689) + (-14.5 -1.05 0.0567) + (-12.01 -0.953 0.0271) + (-11 -0.9 0.0303) + (-9.98 -0.827 0.0287) + (-8.12 -0.536 0.0124) + (-7.62 -0.467 0.0109) + (-7.11 -0.393 0.0092) + (-6.6 -0.323 0.0083) + (-6.5 -0.311 0.0089) + (-6 -0.245 0.0082) + (-5.5 -0.178 0.0074) + (-5 -0.113 0.0069) + (-4.5 -0.048 0.0065) + (-4 0.016 0.0063) + (-3.5 0.08 0.0061) + (-3 0.145 0.0058) + (-2.5 0.208 0.0057) + (-2 0.27 0.0057) + (-1.5 0.333 0.0057) + (-1 0.396 0.0057) + (-0.5 0.458 0.0057) + ( 0 0.521 0.0057) + ( 0.5 0.583 0.0057) + ( 1 0.645 0.0058) + ( 1.5 0.706 0.0058) + ( 2 0.768 0.0059) + ( 2.5 0.828 0.0061) + ( 3 0.888 0.0063) + ( 3.5 0.948 0.0066) + ( 4 0.996 0.0071) + ( 4.5 1.046 0.0079) + ( 5 1.095 0.009 ) + ( 5.5 1.145 0.0103) + ( 6 1.192 0.0113) + ( 6.5 1.239 0.0122) + ( 7 1.283 0.0131) + ( 7.5 1.324 0.0139) + ( 8 1.358 0.0147) + ( 8.5 1.385 0.0158) + ( 9 1.403 0.0181) + ( 9.5 1.401 0.0211) + ( 10 1.358 0.0255) + ( 10.5 1.313 0.0301) + ( 11 1.287 0.0347) + ( 11.5 1.274 0.0401) + ( 12 1.272 0.0468) + ( 12.5 1.273 0.0545) + ( 13 1.273 0.0633) + ( 13.5 1.273 0.0722) + ( 14 1.272 0.0806) + ( 14.5 1.273 0.09 ) + ( 15 1.275 0.0987) + ( 15.5 1.281 0.1075) + ( 16 1.284 0.117 ) + ( 16.5 1.296 0.127 ) + ( 17 1.306 0.1368) + ( 17.5 1.308 0.1464) + ( 18 1.308 0.1562) + ( 18.5 1.308 0.1664) + ( 19 1.308 0.177 ) + ( 19.5 1.307 0.1878) + ( 20 1.311 0.1987) + ( 20.5 1.325 0.21 ) + ( 21 1.324 0.2214) + ( 22 1.277 0.2499) + ( 23 1.229 0.2786) + ( 24 1.182 0.3077) + ( 25 1.136 0.3371) + ( 26 1.093 0.3664) + ( 28 1.017 0.4246) + ( 30 0.962 0.4813) + ( 32 0.937 0.5356) + ( 35 0.947 0.6127) + ( 40 0.95 0.7396) + ( 45 0.928 0.8623) + ( 50 0.884 0.9781) + ( 55 0.821 1.0846) + ( 60 0.74 1.1796) + ( 65 0.646 1.2617) + ( 70 0.54 1.3297) + ( 75 0.425 1.3827) + ( 80 0.304 1.4202) + ( 85 0.179 1.4423) + ( 90 0.053 1.4512) + ( 95 -0.073 1.448 ) + ( 100 -0.198 1.4294) + ( 105 -0.319 1.3954) + ( 110 -0.434 1.3464) + ( 115 -0.541 1.2829) + ( 120 -0.637 1.2057) + ( 125 -0.72 1.1157) + ( 130 -0.787 1.0144) + ( 135 -0.836 0.9033) + ( 140 -0.864 0.7845) + ( 145 -0.869 0.6605) + ( 150 -0.847 0.5346) + ( 155 -0.795 0.4103) + ( 160 -0.711 0.2922) + ( 170 -0.788 0.0969) + ( 175 -0.394 0.0334) + ( 180 0 0.0185) +); diff --git a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU25_A17 b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU25_A17 new file mode 100755 index 000000000..56981e639 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU25_A17 @@ -0,0 +1,161 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0202) + (-175.00 0.368 0.0324) + (-170.00 0.735 0.0943) + (-160.00 0.695 0.2848) + (-155.00 0.777 0.4001) + (-150.00 0.828 0.5215) + (-145.00 0.850 0.6447) + (-140.00 0.846 0.7660) + (-135.00 0.818 0.8823) + (-130.00 0.771 0.9911) + (-125.00 0.705 1.0905) + (-120.00 0.624 1.1787) + (-115.00 0.530 1.2545) + (-110.00 0.426 1.3168) + (-105.00 0.314 1.3650) + (-100.00 0.195 1.3984) + ( -95.00 0.073 1.4169) + ( -90.00 -0.050 1.4201) + ( -85.00 -0.173 1.4081) + ( -80.00 -0.294 1.3811) + ( -75.00 -0.409 1.3394) + ( -70.00 -0.518 1.2833) + ( -65.00 -0.617 1.2138) + ( -60.00 -0.706 1.1315) + ( -55.00 -0.780 1.0378) + ( -50.00 -0.839 0.9341) + ( -45.00 -0.879 0.8221) + ( -40.00 -0.898 0.7042) + ( -35.00 -0.893 0.5829) + ( -30.00 -0.862 0.4616) + ( -25.00 -0.803 0.3441) + ( -24.00 -0.792 0.3209) + ( -23.00 -0.789 0.2972) + ( -22.00 -0.792 0.2730) + ( -21.00 -0.801 0.2485) + ( -20.00 -0.815 0.2237) + ( -19.00 -0.833 0.1990) + ( -18.00 -0.854 0.1743) + ( -17.00 -0.879 0.1498) + ( -16.00 -0.905 0.1256) + ( -15.00 -0.932 0.1020) + ( -14.00 -0.959 0.0789) + ( -13.00 -0.985 0.0567) + ( -13.00 -0.985 0.0567) + ( -12.01 -0.953 0.0271) + ( -11.00 -0.900 0.0303) + ( -9.98 -0.827 0.0287) + ( -8.98 -0.753 0.0271) + ( -8.47 -0.691 0.0264) + ( -7.45 -0.555 0.0114) + ( -6.42 -0.413 0.0094) + ( -5.40 -0.271 0.0086) + ( -5.00 -0.220 0.0073) + ( -4.50 -0.152 0.0071) + ( -4.00 -0.084 0.0070) + ( -3.50 -0.018 0.0069) + ( -3.00 0.049 0.0068) + ( -2.50 0.115 0.0068) + ( -2.00 0.181 0.0068) + ( -1.50 0.247 0.0067) + ( -1.00 0.312 0.0067) + ( -0.50 0.377 0.0067) + ( 0.00 0.444 0.0065) + ( 0.50 0.508 0.0065) + ( 1.00 0.573 0.0066) + ( 1.50 0.636 0.0067) + ( 2.00 0.701 0.0068) + ( 2.50 0.765 0.0069) + ( 3.00 0.827 0.0070) + ( 3.50 0.890 0.0071) + ( 4.00 0.952 0.0073) + ( 4.50 1.013 0.0076) + ( 5.00 1.062 0.0079) + ( 6.00 1.161 0.0099) + ( 6.50 1.208 0.0117) + ( 7.00 1.254 0.0132) + ( 7.50 1.301 0.0143) + ( 8.00 1.336 0.0153) + ( 8.50 1.369 0.0165) + ( 9.00 1.400 0.0181) + ( 9.50 1.428 0.0211) + ( 10.00 1.442 0.0262) + ( 10.50 1.427 0.0336) + ( 11.00 1.374 0.0420) + ( 11.50 1.316 0.0515) + ( 12.00 1.277 0.0601) + ( 12.50 1.250 0.0693) + ( 13.00 1.246 0.0785) + ( 13.50 1.247 0.0888) + ( 14.00 1.256 0.1000) + ( 14.50 1.260 0.1108) + ( 15.00 1.271 0.1219) + ( 15.50 1.281 0.1325) + ( 16.00 1.289 0.1433) + ( 16.50 1.294 0.1541) + ( 17.00 1.304 0.1649) + ( 17.50 1.309 0.1754) + ( 18.00 1.315 0.1845) + ( 18.50 1.320 0.1953) + ( 19.00 1.330 0.2061) + ( 19.50 1.343 0.2170) + ( 20.00 1.354 0.2280) + ( 20.50 1.359 0.2390) + ( 21.00 1.360 0.2536) + ( 22.00 1.325 0.2814) + ( 23.00 1.288 0.3098) + ( 24.00 1.251 0.3386) + ( 25.00 1.215 0.3678) + ( 26.00 1.181 0.3972) + ( 28.00 1.120 0.4563) + ( 30.00 1.076 0.5149) + ( 32.00 1.056 0.5720) + ( 35.00 1.066 0.6548) + ( 40.00 1.064 0.7901) + ( 45.00 1.035 0.9190) + ( 50.00 0.980 1.0378) + ( 55.00 0.904 1.1434) + ( 60.00 0.810 1.2333) + ( 65.00 0.702 1.3055) + ( 70.00 0.582 1.3587) + ( 75.00 0.456 1.3922) + ( 80.00 0.326 1.4063) + ( 85.00 0.197 1.4042) + ( 90.00 0.072 1.3985) + ( 95.00 -0.050 1.3973) + ( 100.00 -0.170 1.3810) + ( 105.00 -0.287 1.3498) + ( 110.00 -0.399 1.3041) + ( 115.00 -0.502 1.2442) + ( 120.00 -0.596 1.1709) + ( 125.00 -0.677 1.0852) + ( 130.00 -0.743 0.9883) + ( 135.00 -0.792 0.8818) + ( 140.00 -0.821 0.7676) + ( 145.00 -0.826 0.6481) + ( 150.00 -0.806 0.5264) + ( 155.00 -0.758 0.4060) + ( 160.00 -0.679 0.2912) + ( 170.00 -0.735 0.0995) + ( 175.00 -0.368 0.0356) + ( 180.00 0.000 0.0202) +); diff --git a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU30_A17 b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU30_A17 new file mode 100755 index 000000000..35fb11988 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU30_A17 @@ -0,0 +1,163 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0267) + (-175.00 0.274 0.0370) + (-170.00 0.547 0.0968) + (-160.00 0.685 0.2876) + (-155.00 0.766 0.4025) + (-150.00 0.816 0.5232) + (-145.00 0.836 0.6454) + (-140.00 0.832 0.7656) + (-135.00 0.804 0.8807) + (-130.00 0.756 0.9882) + (-125.00 0.690 1.0861) + (-120.00 0.609 1.1730) + (-115.00 0.515 1.2474) + (-110.00 0.411 1.3084) + (-105.00 0.300 1.3552) + (-100.00 0.182 1.3875) + ( -95.00 0.061 1.4048) + ( -90.00 -0.061 1.4070) + ( -85.00 -0.183 1.3941) + ( -80.00 -0.302 1.3664) + ( -75.00 -0.416 1.3240) + ( -70.00 -0.523 1.2676) + ( -65.00 -0.622 1.1978) + ( -60.00 -0.708 1.1156) + ( -55.00 -0.781 1.0220) + ( -50.00 -0.838 0.9187) + ( -45.00 -0.877 0.8074) + ( -40.00 -0.895 0.6904) + ( -35.00 -0.889 0.5703) + ( -30.00 -0.858 0.4503) + ( -25.00 -0.832 0.3357) + ( -24.00 -0.852 0.3147) + ( -23.00 -0.882 0.2946) + ( -22.00 -0.919 0.2752) + ( -21.00 -0.963 0.2566) + ( -20.00 -1.013 0.2388) + ( -19.00 -1.067 0.2218) + ( -18.00 -1.125 0.2056) + ( -17.00 -1.185 0.1901) + ( -16.00 -1.245 0.1754) + ( -15.25 -1.290 0.1649) + ( -14.24 -1.229 0.1461) + ( -13.24 -1.148 0.1263) + ( -12.22 -1.052 0.1051) + ( -11.22 -0.965 0.0886) + ( -10.19 -0.867 0.0740) + ( -9.70 -0.822 0.0684) + ( -9.18 -0.769 0.0605) + ( -8.18 -0.756 0.0270) + ( -7.19 -0.690 0.0180) + ( -6.65 -0.616 0.0166) + ( -6.13 -0.542 0.0152) + ( -6.00 -0.525 0.0117) + ( -5.50 -0.451 0.0105) + ( -5.00 -0.382 0.0097) + ( -4.50 -0.314 0.0092) + ( -4.00 -0.251 0.0091) + ( -3.50 -0.189 0.0089) + ( -3.00 -0.120 0.0089) + ( -2.50 -0.051 0.0088) + ( -2.00 0.017 0.0088) + ( -1.50 0.085 0.0088) + ( -1.00 0.152 0.0088) + ( -0.50 0.219 0.0088) + ( 0.00 0.288 0.0087) + ( 0.50 0.354 0.0087) + ( 1.00 0.421 0.0088) + ( 1.50 0.487 0.0089) + ( 2.00 0.554 0.0090) + ( 2.50 0.619 0.0091) + ( 3.00 0.685 0.0092) + ( 3.50 0.749 0.0093) + ( 4.00 0.815 0.0095) + ( 4.50 0.879 0.0096) + ( 5.00 0.944 0.0097) + ( 5.50 1.008 0.0099) + ( 6.00 1.072 0.0101) + ( 6.50 1.135 0.0103) + ( 7.00 1.197 0.0107) + ( 7.50 1.256 0.0112) + ( 8.00 1.305 0.0125) + ( 9.00 1.390 0.0155) + ( 9.50 1.424 0.0171) + ( 10.00 1.458 0.0192) + ( 10.50 1.488 0.0219) + ( 11.00 1.512 0.0255) + ( 11.50 1.533 0.0307) + ( 12.00 1.549 0.0370) + ( 12.50 1.558 0.0452) + ( 13.00 1.470 0.0630) + ( 13.50 1.398 0.0784) + ( 14.00 1.354 0.0931) + ( 14.50 1.336 0.1081) + ( 15.00 1.333 0.1239) + ( 15.50 1.326 0.1415) + ( 16.00 1.329 0.1592) + ( 16.50 1.326 0.1743) + ( 17.00 1.321 0.1903) + ( 17.50 1.331 0.2044) + ( 18.00 1.333 0.2186) + ( 18.50 1.340 0.2324) + ( 19.00 1.362 0.2455) + ( 19.50 1.382 0.2584) + ( 20.00 1.398 0.2689) + ( 20.50 1.426 0.2814) + ( 21.00 1.437 0.2943) + ( 22.00 1.418 0.3246) + ( 23.00 1.397 0.3557) + ( 24.00 1.376 0.3875) + ( 25.00 1.354 0.4198) + ( 26.00 1.332 0.4524) + ( 28.00 1.293 0.5183) + ( 30.00 1.265 0.5843) + ( 32.00 1.253 0.6492) + ( 35.00 1.264 0.7438) + ( 40.00 1.258 0.8970) + ( 45.00 1.217 1.0402) + ( 50.00 1.146 1.1686) + ( 55.00 1.049 1.2779) + ( 60.00 0.932 1.3647) + ( 65.00 0.799 1.4267) + ( 70.00 0.657 1.4621) + ( 75.00 0.509 1.4708) + ( 80.00 0.362 1.4544) + ( 85.00 0.221 1.4196) + ( 90.00 0.092 1.3938) + ( 95.00 -0.030 1.3943) + ( 100.00 -0.150 1.3798) + ( 105.00 -0.267 1.3504) + ( 110.00 -0.379 1.3063) + ( 115.00 -0.483 1.2481) + ( 120.00 -0.578 1.1763) + ( 125.00 -0.660 1.0919) + ( 130.00 -0.727 0.9962) + ( 135.00 -0.777 0.8906) + ( 140.00 -0.807 0.7771) + ( 145.00 -0.815 0.6581) + ( 150.00 -0.797 0.5364) + ( 155.00 -0.750 0.4157) + ( 160.00 -0.673 0.3000) + ( 170.00 -0.547 0.1051) + ( 175.00 -0.274 0.0388) + ( 180.00 0.000 0.0267) +); diff --git a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU35_A17 b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU35_A17 new file mode 100755 index 000000000..041013e24 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU35_A17 @@ -0,0 +1,155 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0407) + (-175.00 0.223 0.0507) + (-170.00 0.405 0.1055) + (-160.00 0.658 0.2982) + (-155.00 0.733 0.4121) + (-150.00 0.778 0.5308) + (-145.00 0.795 0.6503) + (-140.00 0.787 0.7672) + (-135.00 0.757 0.8785) + (-130.00 0.708 0.9819) + (-125.00 0.641 1.0756) + (-120.00 0.560 1.1580) + (-115.00 0.467 1.2280) + (-110.00 0.365 1.2847) + (-105.00 0.255 1.3274) + (-100.00 0.139 1.3557) + ( -95.00 0.021 1.3692) + ( -90.00 -0.098 1.3680) + ( -85.00 -0.216 1.3521) + ( -80.00 -0.331 1.3218) + ( -75.00 -0.441 1.2773) + ( -70.00 -0.544 1.2193) + ( -65.00 -0.638 1.1486) + ( -60.00 -0.720 1.0660) + ( -55.00 -0.788 0.9728) + ( -50.00 -0.840 0.8705) + ( -45.00 -0.875 0.7611) + ( -40.00 -0.889 0.6466) + ( -35.00 -0.880 0.5299) + ( -30.00 -0.846 0.4141) + ( -25.00 -0.784 0.3030) + ( -24.00 -0.768 0.2817) + ( -23.00 -0.751 0.2608) + ( -22.00 -0.733 0.2404) + ( -21.00 -0.714 0.2205) + ( -20.00 -0.693 0.2011) + ( -19.00 -0.671 0.1822) + ( -18.00 -0.648 0.1640) + ( -17.00 -0.624 0.1465) + ( -16.00 -0.601 0.1300) + ( -15.00 -0.579 0.1145) + ( -14.00 -0.559 0.1000) + ( -13.00 -0.539 0.0867) + ( -12.00 -0.519 0.0744) + ( -11.00 -0.499 0.0633) + ( -10.00 -0.480 0.0534) + ( -5.54 -0.385 0.0245) + ( -5.04 -0.359 0.0225) + ( -4.54 -0.360 0.0196) + ( -4.04 -0.355 0.0174) + ( -3.54 -0.307 0.0162) + ( -3.04 -0.246 0.0144) + ( -3.00 -0.240 0.0240) + ( -2.50 -0.163 0.0188) + ( -2.00 -0.091 0.0160) + ( -1.50 -0.019 0.0137) + ( -1.00 0.052 0.0118) + ( -0.50 0.121 0.0104) + ( 0.00 0.196 0.0094) + ( 0.50 0.265 0.0096) + ( 1.00 0.335 0.0098) + ( 1.50 0.404 0.0099) + ( 2.00 0.472 0.0100) + ( 2.50 0.540 0.0102) + ( 3.00 0.608 0.0103) + ( 3.50 0.674 0.0104) + ( 4.00 0.742 0.0105) + ( 4.50 0.809 0.0107) + ( 5.00 0.875 0.0108) + ( 5.50 0.941 0.0109) + ( 6.00 1.007 0.0110) + ( 6.50 1.071 0.0113) + ( 7.00 1.134 0.0115) + ( 7.50 1.198 0.0117) + ( 8.00 1.260 0.0120) + ( 8.50 1.318 0.0126) + ( 9.00 1.368 0.0133) + ( 9.50 1.422 0.0143) + ( 10.00 1.475 0.0156) + ( 10.50 1.523 0.0174) + ( 11.00 1.570 0.0194) + ( 11.50 1.609 0.0227) + ( 12.00 1.642 0.0269) + ( 12.50 1.675 0.0319) + ( 13.00 1.700 0.0398) + ( 13.50 1.717 0.0488) + ( 14.00 1.712 0.0614) + ( 14.50 1.703 0.0786) + ( 15.50 1.671 0.1173) + ( 16.00 1.649 0.1377) + ( 16.50 1.621 0.1600) + ( 17.00 1.598 0.1814) + ( 17.50 1.571 0.2042) + ( 18.00 1.549 0.2316) + ( 19.00 1.544 0.2719) + ( 19.50 1.549 0.2906) + ( 20.00 1.565 0.3085) + ( 21.00 1.565 0.3447) + ( 22.00 1.563 0.3820) + ( 23.00 1.558 0.4203) + ( 24.00 1.552 0.4593) + ( 25.00 1.546 0.4988) + ( 26.00 1.539 0.5387) + ( 28.00 1.527 0.6187) + ( 30.00 1.522 0.6978) + ( 32.00 1.529 0.7747) + ( 35.00 1.544 0.8869) + ( 40.00 1.529 1.0671) + ( 45.00 1.471 1.2319) + ( 50.00 1.376 1.3747) + ( 55.00 1.249 1.4899) + ( 60.00 1.097 1.5728) + ( 65.00 0.928 1.6202) + ( 70.00 0.750 1.6302) + ( 75.00 0.570 1.6031) + ( 80.00 0.396 1.5423) + ( 85.00 0.237 1.4598) + ( 90.00 0.101 1.4041) + ( 95.00 -0.022 1.4053) + ( 100.00 -0.143 1.3914) + ( 105.00 -0.261 1.3625) + ( 110.00 -0.374 1.3188) + ( 115.00 -0.480 1.2608) + ( 120.00 -0.575 1.1891) + ( 125.00 -0.659 1.1046) + ( 130.00 -0.727 1.0086) + ( 135.00 -0.778 0.9025) + ( 140.00 -0.809 0.7883) + ( 145.00 -0.818 0.6684) + ( 150.00 -0.800 0.5457) + ( 155.00 -0.754 0.4236) + ( 160.00 -0.677 0.3066) + ( 170.00 -0.417 0.1085) + ( 175.00 -0.229 0.0510) + ( 180.00 0.000 0.0407) +); diff --git a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU40_A17 b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU40_A17 new file mode 100755 index 000000000..6138a98dd --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU40_A17 @@ -0,0 +1,156 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0602) + (-175.00 0.218 0.0699) + (-170.00 0.397 0.1107) + (-160.00 0.642 0.3045) + (-155.00 0.715 0.4179) + (-150.00 0.757 0.5355) + (-145.00 0.772 0.6535) + (-140.00 0.762 0.7685) + (-135.00 0.731 0.8777) + (-130.00 0.680 0.9788) + (-125.00 0.613 1.0700) + (-120.00 0.532 1.1499) + (-115.00 0.439 1.2174) + (-110.00 0.337 1.2716) + (-105.00 0.228 1.3118) + (-100.00 0.114 1.3378) + ( -95.00 -0.002 1.3492) + ( -90.00 -0.120 1.3460) + ( -85.00 -0.236 1.3283) + ( -80.00 -0.349 1.2964) + ( -75.00 -0.456 1.2507) + ( -70.00 -0.557 1.1918) + ( -65.00 -0.647 1.1204) + ( -60.00 -0.727 1.0376) + ( -55.00 -0.792 0.9446) + ( -50.00 -0.842 0.8429) + ( -45.00 -0.874 0.7345) + ( -40.00 -0.886 0.6215) + ( -35.00 -0.875 0.5067) + ( -30.00 -0.839 0.3932) + ( -25.00 -0.777 0.2849) + ( -24.00 -0.761 0.2642) + ( -23.00 -0.744 0.2440) + ( -22.00 -0.725 0.2242) + ( -21.00 -0.706 0.2049) + ( -20.00 -0.685 0.1861) + ( -19.00 -0.662 0.1687) + ( -18.00 -0.635 0.1533) + ( -17.00 -0.605 0.1398) + ( -16.00 -0.571 0.1281) + ( -15.00 -0.534 0.1183) + ( -14.00 -0.494 0.1101) + ( -13.00 -0.452 0.1036) + ( -12.00 -0.407 0.0986) + ( -11.00 -0.360 0.0951) + ( -10.00 -0.311 0.0931) + ( -8.00 -0.208 0.0930) + ( -6.00 -0.111 0.0689) + ( -5.50 -0.090 0.0614) + ( -5.00 -0.072 0.0547) + ( -4.50 -0.065 0.0480) + ( -4.00 -0.054 0.0411) + ( -3.50 -0.017 0.0349) + ( -3.00 0.003 0.0299) + ( -2.50 0.014 0.0255) + ( -2.00 0.009 0.0198) + ( -1.50 0.004 0.0164) + ( -1.00 0.036 0.0147) + ( -0.50 0.073 0.0137) + ( 0.00 0.137 0.0113) + ( 0.50 0.213 0.0114) + ( 1.00 0.292 0.0118) + ( 1.50 0.369 0.0122) + ( 2.00 0.444 0.0124) + ( 2.50 0.514 0.0124) + ( 3.00 0.580 0.0123) + ( 3.50 0.645 0.0120) + ( 4.00 0.710 0.0119) + ( 4.50 0.776 0.0122) + ( 5.00 0.841 0.0125) + ( 5.50 0.904 0.0129) + ( 6.00 0.967 0.0135) + ( 6.50 1.027 0.0144) + ( 7.00 1.084 0.0158) + ( 7.50 1.140 0.0174) + ( 8.00 1.193 0.0198) + ( 8.50 1.242 0.0231) + ( 9.00 1.287 0.0275) + ( 9.50 1.333 0.0323) + ( 10.00 1.368 0.0393) + ( 10.50 1.400 0.0475) + ( 11.00 1.425 0.0580) + ( 11.50 1.449 0.0691) + ( 12.00 1.473 0.0816) + ( 12.50 1.494 0.0973) + ( 13.00 1.513 0.1129) + ( 13.50 1.538 0.1288) + ( 14.50 1.587 0.1650) + ( 15.00 1.614 0.1845) + ( 15.50 1.631 0.2052) + ( 16.00 1.649 0.2250) + ( 16.50 1.666 0.2467) + ( 17.00 1.681 0.2684) + ( 17.50 1.699 0.2900) + ( 18.00 1.719 0.3121) + ( 19.00 1.751 0.3554) + ( 19.50 1.767 0.3783) + ( 20.50 1.798 0.4212) + ( 21.00 1.810 0.4415) + ( 22.00 1.830 0.4830) + ( 23.00 1.847 0.5257) + ( 24.00 1.861 0.5694) + ( 25.00 1.872 0.6141) + ( 26.00 1.881 0.6593) + ( 28.00 1.894 0.7513) + ( 30.00 1.904 0.8441) + ( 32.00 1.915 0.9364) + ( 35.00 1.929 1.0722) + ( 40.00 1.903 1.2873) + ( 45.00 1.820 1.4796) + ( 50.00 1.690 1.6401) + ( 55.00 1.522 1.7609) + ( 60.00 1.323 1.8360) + ( 65.00 1.106 1.8614) + ( 70.00 0.880 1.8347) + ( 75.00 0.658 1.7567) + ( 80.00 0.449 1.6334) + ( 85.00 0.267 1.4847) + ( 90.00 0.124 1.3879) + ( 95.00 0.002 1.3912) + ( 100.00 -0.118 1.3795) + ( 105.00 -0.235 1.3528) + ( 110.00 -0.348 1.3114) + ( 115.00 -0.453 1.2557) + ( 120.00 -0.549 1.1864) + ( 125.00 -0.633 1.1041) + ( 130.00 -0.702 1.0102) + ( 135.00 -0.754 0.9060) + ( 140.00 -0.787 0.7935) + ( 145.00 -0.797 0.6750) + ( 150.00 -0.782 0.5532) + ( 155.00 -0.739 0.4318) + ( 160.00 -0.664 0.3147) + ( 170.00 -0.410 0.1144) + ( 175.00 -0.226 0.0702) + ( 180.00 0.000 0.0602) +); diff --git a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/NACA64_A17 b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/NACA64_A17 new file mode 100755 index 000000000..11fa618d0 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/NACA64_A17 @@ -0,0 +1,147 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0198) + (-175.00 0.374 0.0341) + (-170.00 0.749 0.0955) + (-160.00 0.659 0.2807) + (-155.00 0.736 0.3919) + (-150.00 0.783 0.5086) + (-145.00 0.803 0.6267) + (-140.00 0.798 0.7427) + (-135.00 0.771 0.8537) + (-130.00 0.724 0.9574) + (-125.00 0.660 1.0519) + (-120.00 0.581 1.1355) + (-115.00 0.491 1.2070) + (-110.00 0.390 1.2656) + (-105.00 0.282 1.3104) + (-100.00 0.169 1.3410) + ( -95.00 0.052 1.3572) + ( -90.00 -0.067 1.3587) + ( -85.00 -0.184 1.3456) + ( -80.00 -0.299 1.3181) + ( -75.00 -0.409 1.2765) + ( -70.00 -0.512 1.2212) + ( -65.00 -0.606 1.1532) + ( -60.00 -0.689 1.0731) + ( -55.00 -0.759 0.9822) + ( -50.00 -0.814 0.8820) + ( -45.00 -0.850 0.7742) + ( -40.00 -0.866 0.6610) + ( -35.00 -0.860 0.5451) + ( -30.00 -0.829 0.4295) + ( -25.00 -0.853 0.3071) + ( -24.00 -0.870 0.2814) + ( -23.00 -0.890 0.2556) + ( -22.00 -0.911 0.2297) + ( -21.00 -0.934 0.2040) + ( -20.00 -0.958 0.1785) + ( -19.00 -0.982 0.1534) + ( -18.00 -1.005 0.1288) + ( -17.00 -1.082 0.1037) + ( -16.00 -1.113 0.0786) + ( -15.00 -1.105 0.0535) + ( -14.00 -1.078 0.0283) + ( -13.50 -1.053 0.0158) + ( -13.00 -1.015 0.0151) + ( -12.00 -0.904 0.0134) + ( -11.00 -0.807 0.0121) + ( -10.00 -0.711 0.0111) + ( -9.00 -0.595 0.0099) + ( -8.00 -0.478 0.0091) + ( -7.00 -0.375 0.0086) + ( -6.00 -0.264 0.0082) + ( -5.00 -0.151 0.0079) + ( -4.00 -0.017 0.0072) + ( -3.00 0.088 0.0064) + ( -2.00 0.213 0.0054) + ( -1.00 0.328 0.0052) + ( 0.00 0.442 0.0052) + ( 1.00 0.556 0.0052) + ( 2.00 0.670 0.0053) + ( 3.00 0.784 0.0053) + ( 4.00 0.898 0.0054) + ( 5.00 1.011 0.0058) + ( 6.00 1.103 0.0091) + ( 7.00 1.181 0.0113) + ( 8.00 1.257 0.0124) + ( 8.50 1.293 0.0130) + ( 9.00 1.326 0.0136) + ( 9.50 1.356 0.0143) + ( 10.00 1.382 0.0150) + ( 10.50 1.400 0.0267) + ( 11.00 1.415 0.0383) + ( 11.50 1.425 0.0498) + ( 12.00 1.434 0.0613) + ( 12.50 1.443 0.0727) + ( 13.00 1.451 0.0841) + ( 13.50 1.453 0.0954) + ( 14.00 1.448 0.1065) + ( 14.50 1.444 0.1176) + ( 15.00 1.445 0.1287) + ( 15.50 1.447 0.1398) + ( 16.00 1.448 0.1509) + ( 16.50 1.444 0.1619) + ( 17.00 1.438 0.1728) + ( 17.50 1.439 0.1837) + ( 18.00 1.448 0.1947) + ( 18.50 1.452 0.2057) + ( 19.00 1.448 0.2165) + ( 19.50 1.438 0.2272) + ( 20.00 1.428 0.2379) + ( 21.00 1.401 0.2590) + ( 22.00 1.359 0.2799) + ( 23.00 1.300 0.3004) + ( 24.00 1.220 0.3204) + ( 25.00 1.168 0.3377) + ( 26.00 1.116 0.3554) + ( 28.00 1.015 0.3916) + ( 30.00 0.926 0.4294) + ( 32.00 0.855 0.4690) + ( 35.00 0.800 0.5324) + ( 40.00 0.804 0.6452) + ( 45.00 0.793 0.7573) + ( 50.00 0.763 0.8664) + ( 55.00 0.717 0.9708) + ( 60.00 0.656 1.0693) + ( 65.00 0.582 1.1606) + ( 70.00 0.495 1.2438) + ( 75.00 0.398 1.3178) + ( 80.00 0.291 1.3809) + ( 85.00 0.176 1.4304) + ( 90.00 0.053 1.4565) + ( 95.00 -0.074 1.4533) + ( 100.00 -0.199 1.4345) + ( 105.00 -0.321 1.4004) + ( 110.00 -0.436 1.3512) + ( 115.00 -0.543 1.2874) + ( 120.00 -0.640 1.2099) + ( 125.00 -0.723 1.1196) + ( 130.00 -0.790 1.0179) + ( 135.00 -0.840 0.9064) + ( 140.00 -0.868 0.7871) + ( 145.00 -0.872 0.6627) + ( 150.00 -0.850 0.5363) + ( 155.00 -0.798 0.4116) + ( 160.00 -0.714 0.2931) + ( 170.00 -0.749 0.0971) + ( 175.00 -0.374 0.0334) + ( 180.00 0.000 0.0198) +); diff --git a/exampleCases/example.ADM.ssc.base/constant/g b/exampleCases/example.ADM.ssc.base/constant/g new file mode 100755 index 000000000..74304427f --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/constant/g @@ -0,0 +1,22 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class uniformDimensionedVectorField; + location "constant"; + object g; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 1 -2 0 0 0 0]; +value ( 0.0 0.0 -9.81 ); + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/constant/polyMesh/blockMeshDict b/exampleCases/example.ADM.ssc.base/constant/polyMesh/blockMeshDict new file mode 100755 index 000000000..575f61147 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/constant/polyMesh/blockMeshDict @@ -0,0 +1,105 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object blockMeshDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../../setUp" + + + + +convertToMeters 1.0; + +vertices +( + ( $xMin $yMin $zMin) + ( $xMax $yMin $zMin) + ( $xMax $yMax $zMin) + ( $xMin $yMax $zMin) + ( $xMin $yMin $zMax) + ( $xMax $yMin $zMax) + ( $xMax $yMax $zMax) + ( $xMin $yMax $zMax) +); + +blocks +( + hex (0 1 2 3 4 5 6 7) ($nx $ny $nz) simpleGrading (1 1 1) +); + +edges +( +); + +boundary +( + lower + { + type wall; + faces + ( + (0 3 2 1) + ); + } + upper + { + type patch; + faces + ( + (4 5 6 7) + ); + } + west + { + type cyclic; + neighbourPatch east; + faces + ( + (0 4 7 3) + ); + } + east + { + type cyclic; + neighbourPatch west; + faces + ( + (1 2 6 5) + ); + } + north + { + type cyclic; + neighbourPatch south; + faces + ( + (3 7 6 2) + ); + } + south + { + type cyclic; + neighbourPatch north; + faces + ( + (0 1 5 4) + ); + } +); + +mergePatchPairs +( +); + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/constant/transportProperties b/exampleCases/example.ADM.ssc.base/constant/transportProperties new file mode 100755 index 000000000..3ee719c86 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/constant/transportProperties @@ -0,0 +1,39 @@ +/*---------------------------------------------------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.openfoam.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + + root ""; + case ""; + instance ""; + local ""; + + class dictionary; + object transportProperties; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +transportModel Newtonian; + +// Molecular viscosity +nu nu [0 2 -1 0 0 0 0] $nu; + +// Reference temperature +TRef TRef [0 0 0 1 0 0 0] $TRef; + +// Prandtl numbers +Pr Pr [0 0 0 0 0 0 0] $Pr; +Prt Prt [0 0 0 0 0 0 0] $Prt; +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/constant/turbineArrayProperties b/exampleCases/example.ADM.ssc.base/constant/turbineArrayProperties new file mode 100755 index 000000000..752cdbbee --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/constant/turbineArrayProperties @@ -0,0 +1,67 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object turbineProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +globalProperties +{ + outputControl "timeStep"; + outputInterval 1; +} + +turbine0 +{ + turbineType "NREL5MWRef"; + baseLocation (1000.0 1500.0 0.0); + nRadial 64; + azimuthMaxDis 2.0; + nAvgSector 1; + pointDistType "uniform"; + pointInterpType "linear"; + bladeUpdateType "oldPosition"; + epsilon 20.0; + forceScalar 1.0; + inflowVelocityScalar 0.94; + tipRootLossCorrType "Glauert"; + rotationDir "cw"; + Azimuth 0.0; + RotSpeed 9.15519863; + TorqueGen 0.0; + Pitch 0.0; + NacYaw 270.0; + fluidDensity 1.225; +} + +turbine1 +{ + turbineType "NREL5MWRef"; + baseLocation (1500.0 1500.0 0.0); + nRadial 64; + azimuthMaxDis 2.0; + nAvgSector 1; + pointDistType "uniform"; + pointInterpType "linear"; + bladeUpdateType "oldPosition"; + epsilon 20.0; + forceScalar 1.0; + inflowVelocityScalar 0.94; + tipRootLossCorrType "Glauert"; + rotationDir "cw"; + Azimuth 0.0; + RotSpeed 9.15519863; + TorqueGen 0.0; + Pitch 0.0; + NacYaw 270.0; + fluidDensity 1.225; +} diff --git a/exampleCases/example.ADM.ssc.base/constant/turbineProperties/NREL5MWRef b/exampleCases/example.ADM.ssc.base/constant/turbineProperties/NREL5MWRef new file mode 100755 index 000000000..c8b36798f --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/constant/turbineProperties/NREL5MWRef @@ -0,0 +1,122 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object turbineProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +NumBl 3; +TipRad 63.0; +HubRad 1.5; +UndSling 0.0; +OverHang -5.01910; +NacelleLength 8; +NacelleFrontalArea 2; +NacelleCd 0.5; +TowerHt 87.6; +Twr2Shft 1.96256; +ShftTilt -5.0; +PreCone (-2.5 -2.5 -2.5); +GBRatio 97.0; +GBEfficiency 1.0; +GenEfficiency 0.944; +RatedRotSpeed 12.1; +GenIner 534.116; +HubIner 115.926E3; +BladeIner 11.776047E6; +GenTorqueControllerType "fiveRegion"; +//GenTorqueControllerType "speedTorqueTable"; +//GenTorqueControllerType "none"; +BladePitchControllerType "PID"; +//BladePitchControllerType "none"; +NacYawControllerType "none"; +RotSpeedLimiter false; +GenTorqueRateLimiter true; +NacYawRateLimiter true; +BladePitchRateLimiter true; +SpeedFilterCornerFrequency 2.0; + + +GenTorqueControllerParams +{ + RateLimitGenTorque 15.0E3; + SpeedTorqueTable + ( + // gen speed (RPM) gen torque (N-m) + ( 670.00 0.0 ) + ( 871.00 20000.0 ) + ( 1161.96 32000.0 ) + ( 1173.70 43093.6 ) + ); + CutInGenSpeed 670.0; + Region2StartGenSpeed 871.0; + Region2EndGenSpeed 1161.963; + CutInGenTorque 0.0; + RatedGenTorque 43.09355E3; + KGen 2.55764E-2; +} + +BladePitchControllerParams +{ + RateLimitBladePitch 8.000; + PitchMin 0.000; + PitchMax 90.000; + PitchK 6.302336; + PitchControlKP 1.82620057; + PitchControlKI 0.78265750; + PitchControlKD 0.000; +} + +NacYawControllerParams +{ + RateLimitNacYaw 2.0; +} + + + + +Airfoils +( + "Cylinder1" + "Cylinder2" + "DU40_A17" + "DU35_A17" + "DU30_A17" + "DU25_A17" + "DU21_A17" + "NACA64_A17" +); + + + +BladeData +( +// radius(m) c(m) twist(deg) airfoil + (2.8667 3.542 13.308 0) + (5.6 3.854 13.308 0) + (8.3333 4.167 13.308 1) + (11.75 4.557 13.308 2) + (15.85 4.652 11.48 3) + (19.95 4.458 10.162 3) + (24.05 4.249 9.011 4) + (28.15 4.007 7.795 5) + (32.25 3.748 6.544 5) + (36.35 3.502 5.361 6) + (40.45 3.256 4.188 6) + (44.55 3.01 3.125 7) + (48.65 2.764 2.319 7) + (52.75 2.518 1.526 7) + (56.1667 2.313 0.863 7) + (58.9 2.086 0.37 7) + (61.6333 1.419 0.106 7) +); diff --git a/exampleCases/example.ADM.ssc.base/constant/turbulenceProperties b/exampleCases/example.ADM.ssc.base/constant/turbulenceProperties new file mode 100755 index 000000000..f8a545e0c --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/constant/turbulenceProperties @@ -0,0 +1,22 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object turbulenceProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +// simulationType RASModel; + simulationType LESModel; +// simulationType laminar; + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/runscript.preprocess b/exampleCases/example.ADM.ssc.base/runscript.preprocess new file mode 100755 index 000000000..8d2aa51f7 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/runscript.preprocess @@ -0,0 +1,170 @@ +#!/bin/bash +#PBS -l walltime=4:00:00 +#PBS -l procs=1 +#PBS -A ssc +#PBS -q short + + + + + +# User Input. +OpenFOAMversion=2.4.x # OpenFOAM version + +startTime=20000 # Start time +precursorDir=/projects/ssc/flowLibrary/neutral_3kmx3kmx1km + +updateBCType=1 # Boolean for whether or not the boundary condition types will be updated over + # what is in the initial conditions files. Leave it 0 for precursors. +inflowDir='west' # For inflow/outflow cases, specify the inflow direction. Choices are 'west', + # 'east', 'south', 'west', 'southWest', 'northWest', 'southEast', and + # 'northEast'. There is a 'cyclic' option too in case you need to change + # back to cyclic or simply update the number of boundary face entries. +localRefinementLevels=0 # Number of levels of local refinement (requires system/topoSetDict and + # system/refineHexMeshDict). +globalRefinementLevels=0 # Number of levels of global refinement. +cores=1 # Enter the number of cores you will preprocess on. + + + + + + +# Define some functions for mesh refinement. +# Local refinement performed on one core. +refineMeshLocal() +{ + i=$1 + while [ $i -ge 1 ] + do + echo " -Performing level $i local refinement with topoSet/refineHexMesh" + echo " *selecting cells to refine..." + topoSet -dict system/topoSetDict.local.$i > log.topoSet.local.$i 2>&1 + + echo " *refining cells..." + refineHexMesh local -overwrite > log.refineHexMesh.local.$i 2>&1 + + let i=i-1 + done +} + +# Global refinement performed in parallel. +refineMeshGlobal() +{ + i=1 + while [ $i -le $1 ] + do + echo " -Performing level $i global refinement with refineMesh" + echo " *refining cells..." + mpirun -np $cores refineMesh -parallel -overwrite > log.refineMesh.global.$i 2>&1 + + let i=i+1 + done +} + + +# If running in parallel, cd to job launch directory +if [ $cores -gt 1 ] + then + cd $PBS_O_WORKDIR +fi + + +# Source the bash profile and then call the appropriate OpenFOAM version function +# so that all the modules and environment variables get set. +echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." +source $HOME/.bash_profile +OpenFOAM-$OpenFOAMversion + + +# Copy the controlDict.1 (assuming this is the one the actual solver will start +# out with) to controlDict. OpenFOAM reads "controlDict", not the numbered ones. +echo "Getting the control dictionary ready..." +cp system/controlDict.1 system/controlDict + + +# Copy the "clean" .original initial fields to a working copy. OpenFOAM does not +# read the ".original" initial fields--that's why they remain clean. +echo "Getting the initial condition directory from the precursor..." +rm -rf $startTime +cp -rf $precursorDir/$startTime $startTime + + +# Build the mesh. +echo "Copy the the base mesh from the precursor..." +rm -rf constant/polyMesh +cp -rf $precursorDir/constant/polyMesh ./constant + + +# Get the inflow data linked up. +echo "Linking the inflow data with this directory..." +ln -s $precursorDir/drivingData/boundaryData ./constant + + +# Get the driving source terms linked up. +echo "Linking the driving source terms with this directory..." +ln -s $precursorDir/drivingData/sources ./constant + + +# The initial fields come from the precursor which is periodic on all sides. The turbine +# case has inflow and outflow. Call the changeDictionary utility to update for inflow/outflow.. +if [ $updateBCType -eq 1 ] + then + echo "Using changeDictionary to update boundary conditions..." + changeDictionary -dict system/changeDictionaryDict.updateBCs.$inflowDir -time $startTime -enableFunctionEntries > log.changeDictionary.updateBCs.$inflowDir.1 2>&1 +fi + + +# Do serial local refinement +echo "Using refineHexMesh to perform " $localRefinementLevels " of local refinement..." +refineMeshLocal $localRefinementLevels + + +# If running in paralle from this point forward, then do the following: +if [ $cores -gt 1 ] + then + # Decompose the mesh and solution files (serial) + echo "Using decomposePar to decompose the problem for parallel processing..." + decomposePar -cellDist -force -time $startTime > log.decomposePar 2>&1 + + # Check the mesh + echo "Running checkMesh to report mesh diagnostics..." + mpirun -np $cores checkMesh -parallel > log.checkMesh.1 2>&1 + + # Perform global refinement to desired resolution. + echo "Using refineMesh to perform " $globalRefinementLevels " of global refinement..." + refineMeshGlobal $globalRefinementLevels + + # The mesh got globally refined, but the solution file did not, so + # the boundary fields may not have the correct number of entries. + # Use the changeDictionary utility to overwrite the spatially varying + # boundary data to a uniform single value. + if [ $updateBCType -eq 1 ] + then + echo "Using changeDictionary to ensure that the boundaries have the correct number of faces..." + mpirun -np $cores changeDictionary -dict system/changeDictionaryDict.updateBCs.$inflowDir -time $startTime -enableFunctionEntries -parallel > log.changeDictionary.updateBCs.$inflowDir.1 2>&1 + fi + + # Renumber the mesh for better matrix solver performance. + echo "Using renumberMesh to renumber the mesh for better matrix conditioning..." + mpirun -np $cores renumberMesh -parallel -overwrite -time $startTime > log.renumberMesh 2>&1 + + # Do one last check on the mesh. + echo "Running checkMesh to report mesh diagnostics..." + mpirun -np $cores checkMesh -parallel > log.checkMesh.3 2>&1 + + +# Otherwise, run in serial as follows: +else + # Renumber the mesh. + echo "Using renumberMesh to renumber the mesh for better matrix conditioning..." + renumberMesh -overwrite -time $startTime > log.renumberMesh 2>&1 + + # Decompose the mesh and solution files (serial) + echo "Using decomposePar to decompose the problem for parallel processing..." + decomposePar -cellDist -force -time $startTime > log.decomposePar 2>&1 + + # Check the mesh. + echo "Running checkMesh to report mesh diagnostics..." + checkMesh > log.checkMesh.1 2>&1 +fi diff --git a/exampleCases/example.ADM.ssc.base/runscript.solve.1 b/exampleCases/example.ADM.ssc.base/runscript.solve.1 new file mode 100755 index 000000000..c8f167af9 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/runscript.solve.1 @@ -0,0 +1,40 @@ +#!/bin/bash +#PBS -l walltime=2:00:00 +#PBS -l procs=180 +#PBS -A ssc +#PBS -q short +#PBS -l qos=high + +cd $PBS_O_WORKDIR + + + + +# User Input. +OpenFOAMversion=2.4.x # OpenFOAM version +startTime=0 # Start time +cores=180 # Enter the number of cores you will preprocess on. +runNumber=1 # Enter the run number (useful for keeping track of restarts). +solver=windPlantSolver.ADM # Enter the name of the flow solver. + + + +echo "Starting OpenFOAM job at: " $(date) +echo "using " $cores " cores" + + +# Source the bash profile and then call the appropriate OpenFOAM version function +# so that all the modules and environment variables get set. +echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." +source $HOME/.bash_profile +OpenFOAM-2.4.develop + + +# Get the control dictionary for this particular run. +cp system/controlDict.$runNumber system/controlDict + + +# Run the solver. +mpirun -np $cores $solver -parallel > log.$runNumber.$solver 2>&1 + +echo "Ending OpenFOAM job at: " $(date) diff --git a/exampleCases/example.ADM.ssc.base/setUp b/exampleCases/example.ADM.ssc.base/setUp new file mode 100755 index 000000000..427ba153e --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/setUp @@ -0,0 +1,103 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.4.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +// Domain size and number of cells. +xMin 0.0; // Minimum x-extent of domain (m). +yMin 0.0; // Minimum y-extent of domain (m). +zMin 0.0; // Minimum z-extent of domain (m). +xMax 3000.0; // Maximum x-extent of domain (m). +yMax 3000.0; // Maximum y-extent of domain (m). +zMax 1000.0; // Maximum z-extent of domain (m). +nx 300; // Number of cells in x-direction. +ny 300; // Number of cells in y-direction. +nz 100; // Number of cells in z-direction. + + + + +// Number of cores and domain decomposition information. +nCores 180; // Number of cores on which to run this case. +decompType simple; // Decomposition algorithm. "simple" and "scotch" are good choices. +decompOrder (6 6 5); // Order of the decomposition number of partitions in (x y z)-directions. + + + + +// Planar averaging and source term statistics options. +statisticsOn true; // Gather planar-averaged flow statistics. +statisticsFrequency 5; // Frequency in time steps of statistics gathering. +avgStartTime 20200; // Time to begin accumulating the mean; +corrStartTime 20400; // Time to begin accumulating the correlations; + + + +// Initial values for the variables. +// Note that U and T get overwritten if setFieldsABL is called. +U0Mag 8.0; // Initial condition for wind speed (m/s). +dir 270.0; // Initial condition for wind direction (deg). +windHeight 99.27; // Height at which to drive mean wind to U0Mag/dir (m). +p_rgh0 0.0; // Initial pressure (minus the hydrostatic variation and normalized by density) (m^2/s^2). +nuSgs0 0.0; // Initial SGS viscosity (m^2/s). +k0 0.1; // Initial SGS turbulent kinetic energy (m^2/s^2). +kappat0 0.0; // Initial SGS temperature diffusivity (m^2/s). +TGradUpper 0.003; // Potential temperature gradient above the strong inversion (K/m). +zInversion 750.0; // Height of the middle of the initial strong capping inversion (m). +inversionWidth 100.0; // Vertical width of the intial strong capping inversion (m). +TBottom 300.0; // Initial potential temperature at bottom of strong capping inversion (K). +TTop 305.0; // Initial potential temperature at top of strong capping inversion (K). + + + + +// General conditions and parameters. +Pr 0.7; // Molecular Prandtl number. +Prt 0.33333333; // Turbulent Prandtl number. +nu 1.0E-5; // Molecular viscosity (m^2/s). +TRef 300.0; // Reference potential temperature (K). +latitude 41.3; // Latitude on the Earth of the site (deg). +EarthPeriod 24.0; // Earth's rotation period (hr). + + + + +// SGS model inputs. +LESModel oneEqEddyABL; // SGS model selection. +ce 0.93; // SGS model constant. +ck 0.0673; // SGS model constant. + + + + +// Surface conditions. +qwall (0.0 0.0 0.0); // Temperature flux at wall (modify the z-value). A negative value is flux into domain (K-m/s). +Rwall (0.0 0.0 0.0 0.0 0.0 0.0); // Initial wall shear stress (m^2/s^2). +kappa 0.4; // von Karman constant. +z0 0.15; // Surface roughness (m). +//STABLE CASES +//betaM 15.0; // Monin-Obukhov wall shear stress model constant. +//gammaM 4.9; // Monin-Obukhov wall shear stress model constant. +//betaH 9.0; // Monin-Obukhov wall temperature flux model constant. +//gammaH 7.8; // Monin-Obukhov wall temperature flux model constant. +//alphaH 1.0; // Monin-Obukhov wall temperature flux model constant. +//heatingRate 0.0; // Surface temperature change rate (when not directly setting temperature flux) (K/s). +//NEUTRAL and UNSTABLE +betaM 16.0; +gammaM 5.0; +betaH 9.0; +gammaH 7.8; +alphaH 1.0; + + + + + + +#inputMode merge + +// ************************************************************************* // + diff --git a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.cyclic b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.cyclic new file mode 100755 index 000000000..389d1c7e8 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.cyclic @@ -0,0 +1,261 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp"; + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + boundary + { + north + { + type cyclic; + } + south + { + type cyclic; + } + west + { + type cyclic; + } + east + { + type cyclic; + } + } + + + T + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + U + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + k + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + kappat + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + nuSgs + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + p_rgh + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "planarAverage"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.east b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.east new file mode 100755 index 000000000..3143cb1ab --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.east @@ -0,0 +1,306 @@ +/a*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp"; + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + boundary + { + west + { + type patch; + } + east + { + type patch; + } + } + + + + T + { + boundaryField + { + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.north b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.north new file mode 100755 index 000000000..6d390357b --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.north @@ -0,0 +1,217 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + + +#include "../setUp"; + + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + boundary + { + north + { + type patch; + } + south + { + type patch; + } + } + + T + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + south + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + south + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + south + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + north + { + type fixedFluxPressure; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.northeast b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.northeast new file mode 100755 index 000000000..8c5231d75 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.northeast @@ -0,0 +1,313 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp"; + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + boundary + { + north + { + type patch; + } + south + { + type patch; + } + west + { + type patch; + } + east + { + type patch; + } + } + + + T + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + south + { + type zeroGradient; + value uniform 300; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + south + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + south + { + type zeroGradient; + value uniform 0.1; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + north + { + type fixedFluxPressure; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.northwest b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.northwest new file mode 100755 index 000000000..46c74d091 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.northwest @@ -0,0 +1,313 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp"; + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + boundary + { + north + { + type patch; + } + south + { + type patch; + } + west + { + type patch; + } + east + { + type patch; + } + } + + + T + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + south + { + type zeroGradient; + value uniform 300; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + east + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + south + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + south + { + type zeroGradient; + value uniform 0.1; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + east + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + north + { + type fixedFluxPressure; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedFluxPressure; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.south b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.south new file mode 100755 index 000000000..c7b2263b6 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.south @@ -0,0 +1,215 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp"; + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + boundary + { + north + { + type patch; + } + south + { + type patch; + } + } + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.southeast b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.southeast new file mode 100755 index 000000000..685b7f941 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.southeast @@ -0,0 +1,314 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp"; + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + boundary + { + north + { + type patch; + } + south + { + type patch; + } + west + { + type patch; + } + east + { + type patch; + } + } + + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.southwest b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.southwest new file mode 100755 index 000000000..9ab9bc83f --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.southwest @@ -0,0 +1,313 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + boundary + { + north + { + type patch; + } + south + { + type patch; + } + west + { + type patch; + } + east + { + type patch; + } + } + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + east + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + east + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedFluxPressure; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.west b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.west new file mode 100755 index 000000000..34078e2b8 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.west @@ -0,0 +1,215 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp"; + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + boundary + { + west + { + type patch; + } + east + { + type patch; + } + } + + + T + { + boundaryField + { + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + east + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + east + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + west + { + type fixedFluxPressure; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/controlDict b/exampleCases/example.ADM.ssc.base/system/controlDict new file mode 100755 index 000000000..94f0bacaa --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/controlDict @@ -0,0 +1,61 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object controlDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + + application ABLSolver; + + libs ("libuserfiniteVolume.so" "libuserincompressibleLESModels.so"); + + startFrom startTime; + + startTime 20000.0; + + stopAt endTime; + + endTime 23600.0; + + deltaT 0.5; + + writeControl adjustableRunTime; + + writeInterval 1000.0; + + purgeWrite 0; + + writeFormat binary; + + writePrecision 12; + + writeCompression compressed; + + timeFormat general; + + timePrecision 12; + + runTimeModifiable yes; + + adjustTimeStep no; + + maxCo 0.75; + + maxDeltaT 25.0; + + functions + { + } + +// ************************************************************************* // + diff --git a/exampleCases/example.ADM.ssc.base/system/controlDict.1 b/exampleCases/example.ADM.ssc.base/system/controlDict.1 new file mode 100755 index 000000000..94f0bacaa --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/controlDict.1 @@ -0,0 +1,61 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object controlDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + + application ABLSolver; + + libs ("libuserfiniteVolume.so" "libuserincompressibleLESModels.so"); + + startFrom startTime; + + startTime 20000.0; + + stopAt endTime; + + endTime 23600.0; + + deltaT 0.5; + + writeControl adjustableRunTime; + + writeInterval 1000.0; + + purgeWrite 0; + + writeFormat binary; + + writePrecision 12; + + writeCompression compressed; + + timeFormat general; + + timePrecision 12; + + runTimeModifiable yes; + + adjustTimeStep no; + + maxCo 0.75; + + maxDeltaT 25.0; + + functions + { + } + +// ************************************************************************* // + diff --git a/exampleCases/example.ADM.ssc.base/system/decomposeParDict b/exampleCases/example.ADM.ssc.base/system/decomposeParDict new file mode 100755 index 000000000..565dd1343 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/decomposeParDict @@ -0,0 +1,76 @@ +/*-------------------------------*- C++ -*---------------------------------*\ +| ========= | +| \\ / OpenFOAM | +| \\ / | +| \\ / The Open Source CFD Toolbox | +| \\/ http://www.OpenFOAM.org | +\*-------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + note "mesh decomposition control dictionary"; + location "system"; + object decomposeParDict; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +numberOfSubdomains $nCores; +method $decompType; +preservePatches (north south east west); + +simpleCoeffs +{ + n $decompOrder; + delta 0.001; +} + +hierarchicalCoeffs +{ + n (1 1 3); + delta 0.001; + order xyz; +} + +metisCoeffs +{ + processorWeights + ( + ); +} + +scotchCoeffs +{ + //processorWeights + //( + // 1 + // 1 + // 1 + // 1 + //); + //writeGraph true; + //strategy "b"; +} + +manualCoeffs +{ + dataFile "decompositionData"; +} + + +//// Is the case distributed +distributed no; +//// Per slave (so nProcs-1 entries) the directory above the case. +//roots +//( +// "/tmp" +// "/tmp" +//); + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/fvSchemes b/exampleCases/example.ADM.ssc.base/system/fvSchemes new file mode 100755 index 000000000..12d01ece2 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/fvSchemes @@ -0,0 +1,111 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSchemes; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +ddtSchemes +{ + default backward; +// default CrankNicolson 1.0; +} + +gradSchemes +{ + default Gauss linear; + grad(U) Gauss linear; +} + +divSchemes +{ + default Gauss linear; + //div(phi,U) Gauss linear; + //div(phi,T) Gauss linear; + div(phi,U) Gauss localBlended linear upwind; + div(phi,T) Gauss localBlended linear upwind; + div(R) Gauss linear; + div(U) Gauss linear; + div((nuEff*dev(grad(U).T()))) Gauss linear; + div(B) Gauss linear; + div(phi,B) Gauss linear; + div(phi,k) Gauss linear; +} + +laplacianSchemes +{ + default Gauss linear corrected; + laplacian(rUA,p) Gauss linear corrected; + laplacian((1|A(U)),p) Gauss linear corrected; + laplacian(interpolate((1|A(U))),p) Gauss linear corrected; + laplacian(interpolate((1|A(U))),pd) Gauss linear corrected; + laplacian(nu,U) Gauss linear corrected; + laplacian(nuEff,U) Gauss linear corrected; + laplacian(kappaEff,T) Gauss linear corrected; + laplacian(DBEff,B) Gauss linear corrected; + laplacian(nuSgs,U) Gauss linear corrected; +} + +interpolationSchemes +{ + default linear; +} + +snGradSchemes +{ + default corrected; +} + +fluxRequired +{ + default no; + p_rgh ; +} + +schemeBlending +{ + + // Table of blending factors vs. cell face size. + faceSizeBlendingTable + ( + // area U T + (0.096 0.996 0.980 ) + (0.39 0.996 0.980 ) + (1.563 0.997 0.985 ) + (6.25 0.998 0.990 ) + (25 0.999 0.995 ) + (100 1.000 1.000 ) + (1E6 1.000 1.000 ) + ); + + + // Height above which blending factor begins to transition + // from heightBlendingFactor_z1 to heightBlendingFactor_z2. + heightBlending_z1 800.0; + + // Height above which blending factor is heightBlendingFactor_z2. + heightBlending_z2 1000.0; + + + heightBlendingFactorU_z1 1.0; + heightBlendingFactorU_z2 0.9; + + heightBlendingFactorT_z1 1.0; + heightBlendingFactorT_z2 0.9; + + + // In calculating height, use wall distance or absolute distance. + useWallDistZ false; +} + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/fvSolution b/exampleCases/example.ADM.ssc.base/system/fvSolution new file mode 100755 index 000000000..38224f9d0 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/fvSolution @@ -0,0 +1,102 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSolution; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +solvers +{ + p_rgh + { + solver PCG; + preconditioner + { + preconditioner GAMG; + tolerance 1e-05; + relTol 0.01; + smoother DICGaussSeidel; + nPreSweeps 0; + nPostSweeps 2; + nFinestSweeps 2; + cacheAgglomeration true; + nCellsInCoarsestLevel 100; + agglomerator faceAreaPair; + mergeLevels 2; + } + tolerance 1e-06; + relTol 0.01; + maxIter 1000; + } + + p_rghFinal + { + $p_rgh; + relTol 0.0; + } + + "(U|T|k|epsilon|R)" + { + solver PBiCG; + preconditioner DILU; + tolerance 1e-6; + relTol 0.1; + maxIter 1000; + } + + "(U|T|k|epsilon|R)Final" + { + $U; + relTol 0.0; + } + + "(flm|fmm)" + { + solver PBiCG; + preconditioner DILU; + tolerance 1e-6; + relTol 0.1; + } + + "(flm|fmm)Final" + { + $flm; + relTol 0.0; + } + + +} + +PIMPLE +{ + momentumPredictor yes; + nOuterCorrectors 1; + nCorrectors 3; + nNonOrthogonalCorrectors 0; + pRefCell 0; + pRefValue 0; +} + +relaxationFactors +{ + fields + { + } + equations + { + "(U|T|k|epsilon|R)" 1.0; + "(U|T|k|epsilon|R)Final" 1.0; + } +} + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/refineMeshDict.local b/exampleCases/example.ADM.ssc.base/system/refineMeshDict.local new file mode 100755 index 000000000..da82aa356 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/refineMeshDict.local @@ -0,0 +1,48 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.1.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object refineMeshDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +set local; + +coordinateSystem global; +//coordinateSystem patchLocal; + +globalCoeffs +{ + tan1 ( 1 0 0 ); + tan2 ( 0 1 0 ); + normal ( 0 0 1 ); +} + +patchLocalCoeffs +{ + patch top; + tan1 ( 1 0 0 ); + tan2 ( 0 1 0 ); + normal ( 0 0 1 ); +} + +directions ( tan1 tan2 normal ); + +useHexTopology yes; + +geometricCut no; + +writeMesh no; + + +// ************************************************************************* // + diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/boundaryDataPre b/exampleCases/example.ADM.ssc.base/system/sampling/boundaryDataPre new file mode 100755 index 000000000..e1ea28fd0 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/sampling/boundaryDataPre @@ -0,0 +1,25 @@ + boundaryDataPre + { + type surfaces; + functionObjectLibs ("libsampling.so"); + enabled true; + interpolationScheme isThisNeeded; + outputControl timeStep; + outputInterval 1; + surfaceFormat foamFile; + fields + ( + U + T + k + ); + surfaces + ( + south + { + type patch; + patches (south); + triangulate false; + } + ); + } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/fieldAverages b/exampleCases/example.ADM.ssc.base/system/sampling/fieldAverages new file mode 100755 index 000000000..84c10394f --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/sampling/fieldAverages @@ -0,0 +1,17 @@ + fieldAverages + { + type fieldAverage; + functionObjectLibs ("libfieldFunctionObjects.so"); + enabled true; + outputControl outputTime; + timeStart 17000.0; + fields + ( + Cs + { + mean on; + prime2Mean off; + base time; + } + ); + } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/probeData1 b/exampleCases/example.ADM.ssc.base/system/sampling/probeData1 new file mode 100755 index 000000000..12938cddb --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/sampling/probeData1 @@ -0,0 +1,223 @@ + probe1 + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + U + T + p + p_rgh + kSgs + nuSgs + RdevSgs + qSgs + ); + + probeLocations + ( + (2500.001 500.001 5.001) + (2500.001 500.001 15.001) + (2500.001 500.001 25.001) + (2500.001 500.001 35.001) + (2500.001 500.001 45.001) + (2500.001 500.001 55.001) + (2500.001 500.001 65.001) + (2500.001 500.001 75.001) + (2500.001 500.001 85.001) + (2500.001 500.001 95.001) + (2500.001 500.001 105.001) + (2500.001 500.001 115.001) + (2500.001 500.001 125.001) + (2500.001 500.001 135.001) + (2500.001 500.001 145.001) + (2500.001 500.001 155.001) + (2500.001 500.001 165.001) + (2500.001 500.001 175.001) + (2500.001 500.001 185.001) + (2500.001 500.001 195.001) + (2500.001 500.001 205.001) + (2500.001 500.001 215.001) + (2500.001 500.001 225.001) + (2500.001 500.001 235.001) + (2500.001 500.001 245.001) + (2500.001 500.001 255.001) + (2500.001 500.001 265.001) + (2500.001 500.001 275.001) + (2500.001 500.001 285.001) + (2500.001 500.001 295.001) + (2500.001 500.001 305.001) + (2500.001 500.001 315.001) + (2500.001 500.001 325.001) + (2500.001 500.001 335.001) + (2500.001 500.001 345.001) + (2500.001 500.001 355.001) + (2500.001 500.001 365.001) + (2500.001 500.001 375.001) + (2500.001 500.001 385.001) + (2500.001 500.001 395.001) + (2500.001 500.001 405.001) + (2500.001 500.001 415.001) + (2500.001 500.001 425.001) + (2500.001 500.001 435.001) + (2500.001 500.001 445.001) + (2500.001 500.001 455.001) + (2500.001 500.001 465.001) + (2500.001 500.001 475.001) + (2500.001 500.001 485.001) + (2500.001 500.001 495.001) + (2500.001 500.001 505.001) + (2500.001 500.001 515.001) + (2500.001 500.001 525.001) + (2500.001 500.001 535.001) + (2500.001 500.001 545.001) + (2500.001 500.001 555.001) + (2500.001 500.001 565.001) + (2500.001 500.001 575.001) + (2500.001 500.001 585.001) + (2500.001 500.001 595.001) + (2500.001 500.001 605.001) + (2500.001 500.001 615.001) + (2500.001 500.001 625.001) + (2500.001 500.001 635.001) + (2500.001 500.001 645.001) + (2500.001 500.001 655.001) + (2500.001 500.001 665.001) + (2500.001 500.001 675.001) + (2500.001 500.001 685.001) + (2500.001 500.001 695.001) + (2500.001 500.001 705.001) + (2500.001 500.001 715.001) + (2500.001 500.001 725.001) + (2500.001 500.001 735.001) + (2500.001 500.001 745.001) + (2500.001 500.001 755.001) + (2500.001 500.001 765.001) + (2500.001 500.001 775.001) + (2500.001 500.001 785.001) + (2500.001 500.001 795.001) + (2500.001 500.001 805.001) + (2500.001 500.001 815.001) + (2500.001 500.001 825.001) + (2500.001 500.001 835.001) + (2500.001 500.001 845.001) + (2500.001 500.001 855.001) + (2500.001 500.001 865.001) + (2500.001 500.001 875.001) + (2500.001 500.001 885.001) + (2500.001 500.001 895.001) + (2500.001 500.001 905.001) + (2500.001 500.001 915.001) + (2500.001 500.001 925.001) + (2500.001 500.001 935.001) + (2500.001 500.001 945.001) + (2500.001 500.001 955.001) + (2500.001 500.001 965.001) + (2500.001 500.001 975.001) + (2500.001 500.001 985.001) + (2500.001 500.001 995.001) + (2500.001 500.001 1005.001) + (2500.001 500.001 1015.001) + (2500.001 500.001 1025.001) + (2500.001 500.001 1035.001) + (2500.001 500.001 1045.001) + (2500.001 500.001 1055.001) + (2500.001 500.001 1065.001) + (2500.001 500.001 1075.001) + (2500.001 500.001 1085.001) + (2500.001 500.001 1095.001) + (2500.001 500.001 1105.001) + (2500.001 500.001 1115.001) + (2500.001 500.001 1125.001) + (2500.001 500.001 1135.001) + (2500.001 500.001 1145.001) + (2500.001 500.001 1155.001) + (2500.001 500.001 1165.001) + (2500.001 500.001 1175.001) + (2500.001 500.001 1185.001) + (2500.001 500.001 1195.001) + (2500.001 500.001 1205.001) + (2500.001 500.001 1215.001) + (2500.001 500.001 1225.001) + (2500.001 500.001 1235.001) + (2500.001 500.001 1245.001) + (2500.001 500.001 1255.001) + (2500.001 500.001 1265.001) + (2500.001 500.001 1275.001) + (2500.001 500.001 1285.001) + (2500.001 500.001 1295.001) + (2500.001 500.001 1305.001) + (2500.001 500.001 1315.001) + (2500.001 500.001 1325.001) + (2500.001 500.001 1335.001) + (2500.001 500.001 1345.001) + (2500.001 500.001 1355.001) + (2500.001 500.001 1365.001) + (2500.001 500.001 1375.001) + (2500.001 500.001 1385.001) + (2500.001 500.001 1395.001) + (2500.001 500.001 1405.001) + (2500.001 500.001 1415.001) + (2500.001 500.001 1425.001) + (2500.001 500.001 1435.001) + (2500.001 500.001 1445.001) + (2500.001 500.001 1455.001) + (2500.001 500.001 1465.001) + (2500.001 500.001 1475.001) + (2500.001 500.001 1485.001) + (2500.001 500.001 1495.001) + (2500.001 500.001 1505.001) + (2500.001 500.001 1515.001) + (2500.001 500.001 1525.001) + (2500.001 500.001 1535.001) + (2500.001 500.001 1545.001) + (2500.001 500.001 1555.001) + (2500.001 500.001 1565.001) + (2500.001 500.001 1575.001) + (2500.001 500.001 1585.001) + (2500.001 500.001 1595.001) + (2500.001 500.001 1605.001) + (2500.001 500.001 1615.001) + (2500.001 500.001 1625.001) + (2500.001 500.001 1635.001) + (2500.001 500.001 1645.001) + (2500.001 500.001 1655.001) + (2500.001 500.001 1665.001) + (2500.001 500.001 1675.001) + (2500.001 500.001 1685.001) + (2500.001 500.001 1695.001) + (2500.001 500.001 1705.001) + (2500.001 500.001 1715.001) + (2500.001 500.001 1725.001) + (2500.001 500.001 1735.001) + (2500.001 500.001 1745.001) + (2500.001 500.001 1755.001) + (2500.001 500.001 1765.001) + (2500.001 500.001 1775.001) + (2500.001 500.001 1785.001) + (2500.001 500.001 1795.001) + (2500.001 500.001 1805.001) + (2500.001 500.001 1815.001) + (2500.001 500.001 1825.001) + (2500.001 500.001 1835.001) + (2500.001 500.001 1845.001) + (2500.001 500.001 1855.001) + (2500.001 500.001 1865.001) + (2500.001 500.001 1875.001) + (2500.001 500.001 1885.001) + (2500.001 500.001 1895.001) + (2500.001 500.001 1905.001) + (2500.001 500.001 1915.001) + (2500.001 500.001 1925.001) + (2500.001 500.001 1935.001) + (2500.001 500.001 1945.001) + (2500.001 500.001 1955.001) + (2500.001 500.001 1965.001) + (2500.001 500.001 1975.001) + (2500.001 500.001 1985.001) + (2500.001 500.001 1995.001) + ); + } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/probeData1S b/exampleCases/example.ADM.ssc.base/system/sampling/probeData1S new file mode 100755 index 000000000..5b619fadc --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/sampling/probeData1S @@ -0,0 +1,18 @@ + probe1S + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + Rwall + qwall + ); + + probeLocations + ( + (2500.001 500.001 0.0) + ); + } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/probeData2 b/exampleCases/example.ADM.ssc.base/system/sampling/probeData2 new file mode 100755 index 000000000..01dc86420 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/sampling/probeData2 @@ -0,0 +1,223 @@ + probe2 + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + U + T + p + p_rgh + kSgs + nuSgs + RdevSgs + qSgs + ); + + probeLocations + ( + (2500.001 1500.001 5.001) + (2500.001 1500.001 15.001) + (2500.001 1500.001 25.001) + (2500.001 1500.001 35.001) + (2500.001 1500.001 45.001) + (2500.001 1500.001 55.001) + (2500.001 1500.001 65.001) + (2500.001 1500.001 75.001) + (2500.001 1500.001 85.001) + (2500.001 1500.001 95.001) + (2500.001 1500.001 105.001) + (2500.001 1500.001 115.001) + (2500.001 1500.001 125.001) + (2500.001 1500.001 135.001) + (2500.001 1500.001 145.001) + (2500.001 1500.001 155.001) + (2500.001 1500.001 165.001) + (2500.001 1500.001 175.001) + (2500.001 1500.001 185.001) + (2500.001 1500.001 195.001) + (2500.001 1500.001 205.001) + (2500.001 1500.001 215.001) + (2500.001 1500.001 225.001) + (2500.001 1500.001 235.001) + (2500.001 1500.001 245.001) + (2500.001 1500.001 255.001) + (2500.001 1500.001 265.001) + (2500.001 1500.001 275.001) + (2500.001 1500.001 285.001) + (2500.001 1500.001 295.001) + (2500.001 1500.001 305.001) + (2500.001 1500.001 315.001) + (2500.001 1500.001 325.001) + (2500.001 1500.001 335.001) + (2500.001 1500.001 345.001) + (2500.001 1500.001 355.001) + (2500.001 1500.001 365.001) + (2500.001 1500.001 375.001) + (2500.001 1500.001 385.001) + (2500.001 1500.001 395.001) + (2500.001 1500.001 405.001) + (2500.001 1500.001 415.001) + (2500.001 1500.001 425.001) + (2500.001 1500.001 435.001) + (2500.001 1500.001 445.001) + (2500.001 1500.001 455.001) + (2500.001 1500.001 465.001) + (2500.001 1500.001 475.001) + (2500.001 1500.001 485.001) + (2500.001 1500.001 495.001) + (2500.001 1500.001 505.001) + (2500.001 1500.001 515.001) + (2500.001 1500.001 525.001) + (2500.001 1500.001 535.001) + (2500.001 1500.001 545.001) + (2500.001 1500.001 555.001) + (2500.001 1500.001 565.001) + (2500.001 1500.001 575.001) + (2500.001 1500.001 585.001) + (2500.001 1500.001 595.001) + (2500.001 1500.001 605.001) + (2500.001 1500.001 615.001) + (2500.001 1500.001 625.001) + (2500.001 1500.001 635.001) + (2500.001 1500.001 645.001) + (2500.001 1500.001 655.001) + (2500.001 1500.001 665.001) + (2500.001 1500.001 675.001) + (2500.001 1500.001 685.001) + (2500.001 1500.001 695.001) + (2500.001 1500.001 705.001) + (2500.001 1500.001 715.001) + (2500.001 1500.001 725.001) + (2500.001 1500.001 735.001) + (2500.001 1500.001 745.001) + (2500.001 1500.001 755.001) + (2500.001 1500.001 765.001) + (2500.001 1500.001 775.001) + (2500.001 1500.001 785.001) + (2500.001 1500.001 795.001) + (2500.001 1500.001 805.001) + (2500.001 1500.001 815.001) + (2500.001 1500.001 825.001) + (2500.001 1500.001 835.001) + (2500.001 1500.001 845.001) + (2500.001 1500.001 855.001) + (2500.001 1500.001 865.001) + (2500.001 1500.001 875.001) + (2500.001 1500.001 885.001) + (2500.001 1500.001 895.001) + (2500.001 1500.001 905.001) + (2500.001 1500.001 915.001) + (2500.001 1500.001 925.001) + (2500.001 1500.001 935.001) + (2500.001 1500.001 945.001) + (2500.001 1500.001 955.001) + (2500.001 1500.001 965.001) + (2500.001 1500.001 975.001) + (2500.001 1500.001 985.001) + (2500.001 1500.001 995.001) + (2500.001 1500.001 1005.001) + (2500.001 1500.001 1015.001) + (2500.001 1500.001 1025.001) + (2500.001 1500.001 1035.001) + (2500.001 1500.001 1045.001) + (2500.001 1500.001 1055.001) + (2500.001 1500.001 1065.001) + (2500.001 1500.001 1075.001) + (2500.001 1500.001 1085.001) + (2500.001 1500.001 1095.001) + (2500.001 1500.001 1105.001) + (2500.001 1500.001 1115.001) + (2500.001 1500.001 1125.001) + (2500.001 1500.001 1135.001) + (2500.001 1500.001 1145.001) + (2500.001 1500.001 1155.001) + (2500.001 1500.001 1165.001) + (2500.001 1500.001 1175.001) + (2500.001 1500.001 1185.001) + (2500.001 1500.001 1195.001) + (2500.001 1500.001 1205.001) + (2500.001 1500.001 1215.001) + (2500.001 1500.001 1225.001) + (2500.001 1500.001 1235.001) + (2500.001 1500.001 1245.001) + (2500.001 1500.001 1255.001) + (2500.001 1500.001 1265.001) + (2500.001 1500.001 1275.001) + (2500.001 1500.001 1285.001) + (2500.001 1500.001 1295.001) + (2500.001 1500.001 1305.001) + (2500.001 1500.001 1315.001) + (2500.001 1500.001 1325.001) + (2500.001 1500.001 1335.001) + (2500.001 1500.001 1345.001) + (2500.001 1500.001 1355.001) + (2500.001 1500.001 1365.001) + (2500.001 1500.001 1375.001) + (2500.001 1500.001 1385.001) + (2500.001 1500.001 1395.001) + (2500.001 1500.001 1405.001) + (2500.001 1500.001 1415.001) + (2500.001 1500.001 1425.001) + (2500.001 1500.001 1435.001) + (2500.001 1500.001 1445.001) + (2500.001 1500.001 1455.001) + (2500.001 1500.001 1465.001) + (2500.001 1500.001 1475.001) + (2500.001 1500.001 1485.001) + (2500.001 1500.001 1495.001) + (2500.001 1500.001 1505.001) + (2500.001 1500.001 1515.001) + (2500.001 1500.001 1525.001) + (2500.001 1500.001 1535.001) + (2500.001 1500.001 1545.001) + (2500.001 1500.001 1555.001) + (2500.001 1500.001 1565.001) + (2500.001 1500.001 1575.001) + (2500.001 1500.001 1585.001) + (2500.001 1500.001 1595.001) + (2500.001 1500.001 1605.001) + (2500.001 1500.001 1615.001) + (2500.001 1500.001 1625.001) + (2500.001 1500.001 1635.001) + (2500.001 1500.001 1645.001) + (2500.001 1500.001 1655.001) + (2500.001 1500.001 1665.001) + (2500.001 1500.001 1675.001) + (2500.001 1500.001 1685.001) + (2500.001 1500.001 1695.001) + (2500.001 1500.001 1705.001) + (2500.001 1500.001 1715.001) + (2500.001 1500.001 1725.001) + (2500.001 1500.001 1735.001) + (2500.001 1500.001 1745.001) + (2500.001 1500.001 1755.001) + (2500.001 1500.001 1765.001) + (2500.001 1500.001 1775.001) + (2500.001 1500.001 1785.001) + (2500.001 1500.001 1795.001) + (2500.001 1500.001 1805.001) + (2500.001 1500.001 1815.001) + (2500.001 1500.001 1825.001) + (2500.001 1500.001 1835.001) + (2500.001 1500.001 1845.001) + (2500.001 1500.001 1855.001) + (2500.001 1500.001 1865.001) + (2500.001 1500.001 1875.001) + (2500.001 1500.001 1885.001) + (2500.001 1500.001 1895.001) + (2500.001 1500.001 1905.001) + (2500.001 1500.001 1915.001) + (2500.001 1500.001 1925.001) + (2500.001 1500.001 1935.001) + (2500.001 1500.001 1945.001) + (2500.001 1500.001 1955.001) + (2500.001 1500.001 1965.001) + (2500.001 1500.001 1975.001) + (2500.001 1500.001 1985.001) + (2500.001 1500.001 1995.001) + ); + } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/probeData2S b/exampleCases/example.ADM.ssc.base/system/sampling/probeData2S new file mode 100755 index 000000000..7e81799a0 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/sampling/probeData2S @@ -0,0 +1,18 @@ + probe2S + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + Rwall + qwall + ); + + probeLocations + ( + (2500.001 1500.001 0.0) + ); + } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/probeData3 b/exampleCases/example.ADM.ssc.base/system/sampling/probeData3 new file mode 100755 index 000000000..2a91805b2 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/sampling/probeData3 @@ -0,0 +1,223 @@ + probe3 + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + U + T + p + p_rgh + kSgs + nuSgs + RdevSgs + qSgs + ); + + probeLocations + ( + (2500.001 2500.001 5.001) + (2500.001 2500.001 15.001) + (2500.001 2500.001 25.001) + (2500.001 2500.001 35.001) + (2500.001 2500.001 45.001) + (2500.001 2500.001 55.001) + (2500.001 2500.001 65.001) + (2500.001 2500.001 75.001) + (2500.001 2500.001 85.001) + (2500.001 2500.001 95.001) + (2500.001 2500.001 105.001) + (2500.001 2500.001 115.001) + (2500.001 2500.001 125.001) + (2500.001 2500.001 135.001) + (2500.001 2500.001 145.001) + (2500.001 2500.001 155.001) + (2500.001 2500.001 165.001) + (2500.001 2500.001 175.001) + (2500.001 2500.001 185.001) + (2500.001 2500.001 195.001) + (2500.001 2500.001 205.001) + (2500.001 2500.001 215.001) + (2500.001 2500.001 225.001) + (2500.001 2500.001 235.001) + (2500.001 2500.001 245.001) + (2500.001 2500.001 255.001) + (2500.001 2500.001 265.001) + (2500.001 2500.001 275.001) + (2500.001 2500.001 285.001) + (2500.001 2500.001 295.001) + (2500.001 2500.001 305.001) + (2500.001 2500.001 315.001) + (2500.001 2500.001 325.001) + (2500.001 2500.001 335.001) + (2500.001 2500.001 345.001) + (2500.001 2500.001 355.001) + (2500.001 2500.001 365.001) + (2500.001 2500.001 375.001) + (2500.001 2500.001 385.001) + (2500.001 2500.001 395.001) + (2500.001 2500.001 405.001) + (2500.001 2500.001 415.001) + (2500.001 2500.001 425.001) + (2500.001 2500.001 435.001) + (2500.001 2500.001 445.001) + (2500.001 2500.001 455.001) + (2500.001 2500.001 465.001) + (2500.001 2500.001 475.001) + (2500.001 2500.001 485.001) + (2500.001 2500.001 495.001) + (2500.001 2500.001 505.001) + (2500.001 2500.001 515.001) + (2500.001 2500.001 525.001) + (2500.001 2500.001 535.001) + (2500.001 2500.001 545.001) + (2500.001 2500.001 555.001) + (2500.001 2500.001 565.001) + (2500.001 2500.001 575.001) + (2500.001 2500.001 585.001) + (2500.001 2500.001 595.001) + (2500.001 2500.001 605.001) + (2500.001 2500.001 615.001) + (2500.001 2500.001 625.001) + (2500.001 2500.001 635.001) + (2500.001 2500.001 645.001) + (2500.001 2500.001 655.001) + (2500.001 2500.001 665.001) + (2500.001 2500.001 675.001) + (2500.001 2500.001 685.001) + (2500.001 2500.001 695.001) + (2500.001 2500.001 705.001) + (2500.001 2500.001 715.001) + (2500.001 2500.001 725.001) + (2500.001 2500.001 735.001) + (2500.001 2500.001 745.001) + (2500.001 2500.001 755.001) + (2500.001 2500.001 765.001) + (2500.001 2500.001 775.001) + (2500.001 2500.001 785.001) + (2500.001 2500.001 795.001) + (2500.001 2500.001 805.001) + (2500.001 2500.001 815.001) + (2500.001 2500.001 825.001) + (2500.001 2500.001 835.001) + (2500.001 2500.001 845.001) + (2500.001 2500.001 855.001) + (2500.001 2500.001 865.001) + (2500.001 2500.001 875.001) + (2500.001 2500.001 885.001) + (2500.001 2500.001 895.001) + (2500.001 2500.001 905.001) + (2500.001 2500.001 915.001) + (2500.001 2500.001 925.001) + (2500.001 2500.001 935.001) + (2500.001 2500.001 945.001) + (2500.001 2500.001 955.001) + (2500.001 2500.001 965.001) + (2500.001 2500.001 975.001) + (2500.001 2500.001 985.001) + (2500.001 2500.001 995.001) + (2500.001 2500.001 1005.001) + (2500.001 2500.001 1015.001) + (2500.001 2500.001 1025.001) + (2500.001 2500.001 1035.001) + (2500.001 2500.001 1045.001) + (2500.001 2500.001 1055.001) + (2500.001 2500.001 1065.001) + (2500.001 2500.001 1075.001) + (2500.001 2500.001 1085.001) + (2500.001 2500.001 1095.001) + (2500.001 2500.001 1105.001) + (2500.001 2500.001 1115.001) + (2500.001 2500.001 1125.001) + (2500.001 2500.001 1135.001) + (2500.001 2500.001 1145.001) + (2500.001 2500.001 1155.001) + (2500.001 2500.001 1165.001) + (2500.001 2500.001 1175.001) + (2500.001 2500.001 1185.001) + (2500.001 2500.001 1195.001) + (2500.001 2500.001 1205.001) + (2500.001 2500.001 1215.001) + (2500.001 2500.001 1225.001) + (2500.001 2500.001 1235.001) + (2500.001 2500.001 1245.001) + (2500.001 2500.001 1255.001) + (2500.001 2500.001 1265.001) + (2500.001 2500.001 1275.001) + (2500.001 2500.001 1285.001) + (2500.001 2500.001 1295.001) + (2500.001 2500.001 1305.001) + (2500.001 2500.001 1315.001) + (2500.001 2500.001 1325.001) + (2500.001 2500.001 1335.001) + (2500.001 2500.001 1345.001) + (2500.001 2500.001 1355.001) + (2500.001 2500.001 1365.001) + (2500.001 2500.001 1375.001) + (2500.001 2500.001 1385.001) + (2500.001 2500.001 1395.001) + (2500.001 2500.001 1405.001) + (2500.001 2500.001 1415.001) + (2500.001 2500.001 1425.001) + (2500.001 2500.001 1435.001) + (2500.001 2500.001 1445.001) + (2500.001 2500.001 1455.001) + (2500.001 2500.001 1465.001) + (2500.001 2500.001 1475.001) + (2500.001 2500.001 1485.001) + (2500.001 2500.001 1495.001) + (2500.001 2500.001 1505.001) + (2500.001 2500.001 1515.001) + (2500.001 2500.001 1525.001) + (2500.001 2500.001 1535.001) + (2500.001 2500.001 1545.001) + (2500.001 2500.001 1555.001) + (2500.001 2500.001 1565.001) + (2500.001 2500.001 1575.001) + (2500.001 2500.001 1585.001) + (2500.001 2500.001 1595.001) + (2500.001 2500.001 1605.001) + (2500.001 2500.001 1615.001) + (2500.001 2500.001 1625.001) + (2500.001 2500.001 1635.001) + (2500.001 2500.001 1645.001) + (2500.001 2500.001 1655.001) + (2500.001 2500.001 1665.001) + (2500.001 2500.001 1675.001) + (2500.001 2500.001 1685.001) + (2500.001 2500.001 1695.001) + (2500.001 2500.001 1705.001) + (2500.001 2500.001 1715.001) + (2500.001 2500.001 1725.001) + (2500.001 2500.001 1735.001) + (2500.001 2500.001 1745.001) + (2500.001 2500.001 1755.001) + (2500.001 2500.001 1765.001) + (2500.001 2500.001 1775.001) + (2500.001 2500.001 1785.001) + (2500.001 2500.001 1795.001) + (2500.001 2500.001 1805.001) + (2500.001 2500.001 1815.001) + (2500.001 2500.001 1825.001) + (2500.001 2500.001 1835.001) + (2500.001 2500.001 1845.001) + (2500.001 2500.001 1855.001) + (2500.001 2500.001 1865.001) + (2500.001 2500.001 1875.001) + (2500.001 2500.001 1885.001) + (2500.001 2500.001 1895.001) + (2500.001 2500.001 1905.001) + (2500.001 2500.001 1915.001) + (2500.001 2500.001 1925.001) + (2500.001 2500.001 1935.001) + (2500.001 2500.001 1945.001) + (2500.001 2500.001 1955.001) + (2500.001 2500.001 1965.001) + (2500.001 2500.001 1975.001) + (2500.001 2500.001 1985.001) + (2500.001 2500.001 1995.001) + ); + } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/probeData3S b/exampleCases/example.ADM.ssc.base/system/sampling/probeData3S new file mode 100755 index 000000000..f1da35cd9 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/sampling/probeData3S @@ -0,0 +1,18 @@ + probe3S + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + Rwall + qwall + ); + + probeLocations + ( + (2500.001 2500.001 0.0) + ); + } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/probeData4 b/exampleCases/example.ADM.ssc.base/system/sampling/probeData4 new file mode 100755 index 000000000..0bfd6b3fb --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/sampling/probeData4 @@ -0,0 +1,223 @@ + probe4 + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + U + T + p + p_rgh + kSgs + nuSgs + RdevSgs + qSgs + ); + + probeLocations + ( + (2500.001 3500.001 5.001) + (2500.001 3500.001 15.001) + (2500.001 3500.001 25.001) + (2500.001 3500.001 35.001) + (2500.001 3500.001 45.001) + (2500.001 3500.001 55.001) + (2500.001 3500.001 65.001) + (2500.001 3500.001 75.001) + (2500.001 3500.001 85.001) + (2500.001 3500.001 95.001) + (2500.001 3500.001 105.001) + (2500.001 3500.001 115.001) + (2500.001 3500.001 125.001) + (2500.001 3500.001 135.001) + (2500.001 3500.001 145.001) + (2500.001 3500.001 155.001) + (2500.001 3500.001 165.001) + (2500.001 3500.001 175.001) + (2500.001 3500.001 185.001) + (2500.001 3500.001 195.001) + (2500.001 3500.001 205.001) + (2500.001 3500.001 215.001) + (2500.001 3500.001 225.001) + (2500.001 3500.001 235.001) + (2500.001 3500.001 245.001) + (2500.001 3500.001 255.001) + (2500.001 3500.001 265.001) + (2500.001 3500.001 275.001) + (2500.001 3500.001 285.001) + (2500.001 3500.001 295.001) + (2500.001 3500.001 305.001) + (2500.001 3500.001 315.001) + (2500.001 3500.001 325.001) + (2500.001 3500.001 335.001) + (2500.001 3500.001 345.001) + (2500.001 3500.001 355.001) + (2500.001 3500.001 365.001) + (2500.001 3500.001 375.001) + (2500.001 3500.001 385.001) + (2500.001 3500.001 395.001) + (2500.001 3500.001 405.001) + (2500.001 3500.001 415.001) + (2500.001 3500.001 425.001) + (2500.001 3500.001 435.001) + (2500.001 3500.001 445.001) + (2500.001 3500.001 455.001) + (2500.001 3500.001 465.001) + (2500.001 3500.001 475.001) + (2500.001 3500.001 485.001) + (2500.001 3500.001 495.001) + (2500.001 3500.001 505.001) + (2500.001 3500.001 515.001) + (2500.001 3500.001 525.001) + (2500.001 3500.001 535.001) + (2500.001 3500.001 545.001) + (2500.001 3500.001 555.001) + (2500.001 3500.001 565.001) + (2500.001 3500.001 575.001) + (2500.001 3500.001 585.001) + (2500.001 3500.001 595.001) + (2500.001 3500.001 605.001) + (2500.001 3500.001 615.001) + (2500.001 3500.001 625.001) + (2500.001 3500.001 635.001) + (2500.001 3500.001 645.001) + (2500.001 3500.001 655.001) + (2500.001 3500.001 665.001) + (2500.001 3500.001 675.001) + (2500.001 3500.001 685.001) + (2500.001 3500.001 695.001) + (2500.001 3500.001 705.001) + (2500.001 3500.001 715.001) + (2500.001 3500.001 725.001) + (2500.001 3500.001 735.001) + (2500.001 3500.001 745.001) + (2500.001 3500.001 755.001) + (2500.001 3500.001 765.001) + (2500.001 3500.001 775.001) + (2500.001 3500.001 785.001) + (2500.001 3500.001 795.001) + (2500.001 3500.001 805.001) + (2500.001 3500.001 815.001) + (2500.001 3500.001 825.001) + (2500.001 3500.001 835.001) + (2500.001 3500.001 845.001) + (2500.001 3500.001 855.001) + (2500.001 3500.001 865.001) + (2500.001 3500.001 875.001) + (2500.001 3500.001 885.001) + (2500.001 3500.001 895.001) + (2500.001 3500.001 905.001) + (2500.001 3500.001 915.001) + (2500.001 3500.001 925.001) + (2500.001 3500.001 935.001) + (2500.001 3500.001 945.001) + (2500.001 3500.001 955.001) + (2500.001 3500.001 965.001) + (2500.001 3500.001 975.001) + (2500.001 3500.001 985.001) + (2500.001 3500.001 995.001) + (2500.001 3500.001 1005.001) + (2500.001 3500.001 1015.001) + (2500.001 3500.001 1025.001) + (2500.001 3500.001 1035.001) + (2500.001 3500.001 1045.001) + (2500.001 3500.001 1055.001) + (2500.001 3500.001 1065.001) + (2500.001 3500.001 1075.001) + (2500.001 3500.001 1085.001) + (2500.001 3500.001 1095.001) + (2500.001 3500.001 1105.001) + (2500.001 3500.001 1115.001) + (2500.001 3500.001 1125.001) + (2500.001 3500.001 1135.001) + (2500.001 3500.001 1145.001) + (2500.001 3500.001 1155.001) + (2500.001 3500.001 1165.001) + (2500.001 3500.001 1175.001) + (2500.001 3500.001 1185.001) + (2500.001 3500.001 1195.001) + (2500.001 3500.001 1205.001) + (2500.001 3500.001 1215.001) + (2500.001 3500.001 1225.001) + (2500.001 3500.001 1235.001) + (2500.001 3500.001 1245.001) + (2500.001 3500.001 1255.001) + (2500.001 3500.001 1265.001) + (2500.001 3500.001 1275.001) + (2500.001 3500.001 1285.001) + (2500.001 3500.001 1295.001) + (2500.001 3500.001 1305.001) + (2500.001 3500.001 1315.001) + (2500.001 3500.001 1325.001) + (2500.001 3500.001 1335.001) + (2500.001 3500.001 1345.001) + (2500.001 3500.001 1355.001) + (2500.001 3500.001 1365.001) + (2500.001 3500.001 1375.001) + (2500.001 3500.001 1385.001) + (2500.001 3500.001 1395.001) + (2500.001 3500.001 1405.001) + (2500.001 3500.001 1415.001) + (2500.001 3500.001 1425.001) + (2500.001 3500.001 1435.001) + (2500.001 3500.001 1445.001) + (2500.001 3500.001 1455.001) + (2500.001 3500.001 1465.001) + (2500.001 3500.001 1475.001) + (2500.001 3500.001 1485.001) + (2500.001 3500.001 1495.001) + (2500.001 3500.001 1505.001) + (2500.001 3500.001 1515.001) + (2500.001 3500.001 1525.001) + (2500.001 3500.001 1535.001) + (2500.001 3500.001 1545.001) + (2500.001 3500.001 1555.001) + (2500.001 3500.001 1565.001) + (2500.001 3500.001 1575.001) + (2500.001 3500.001 1585.001) + (2500.001 3500.001 1595.001) + (2500.001 3500.001 1605.001) + (2500.001 3500.001 1615.001) + (2500.001 3500.001 1625.001) + (2500.001 3500.001 1635.001) + (2500.001 3500.001 1645.001) + (2500.001 3500.001 1655.001) + (2500.001 3500.001 1665.001) + (2500.001 3500.001 1675.001) + (2500.001 3500.001 1685.001) + (2500.001 3500.001 1695.001) + (2500.001 3500.001 1705.001) + (2500.001 3500.001 1715.001) + (2500.001 3500.001 1725.001) + (2500.001 3500.001 1735.001) + (2500.001 3500.001 1745.001) + (2500.001 3500.001 1755.001) + (2500.001 3500.001 1765.001) + (2500.001 3500.001 1775.001) + (2500.001 3500.001 1785.001) + (2500.001 3500.001 1795.001) + (2500.001 3500.001 1805.001) + (2500.001 3500.001 1815.001) + (2500.001 3500.001 1825.001) + (2500.001 3500.001 1835.001) + (2500.001 3500.001 1845.001) + (2500.001 3500.001 1855.001) + (2500.001 3500.001 1865.001) + (2500.001 3500.001 1875.001) + (2500.001 3500.001 1885.001) + (2500.001 3500.001 1895.001) + (2500.001 3500.001 1905.001) + (2500.001 3500.001 1915.001) + (2500.001 3500.001 1925.001) + (2500.001 3500.001 1935.001) + (2500.001 3500.001 1945.001) + (2500.001 3500.001 1955.001) + (2500.001 3500.001 1965.001) + (2500.001 3500.001 1975.001) + (2500.001 3500.001 1985.001) + (2500.001 3500.001 1995.001) + ); + } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/probeData4S b/exampleCases/example.ADM.ssc.base/system/sampling/probeData4S new file mode 100755 index 000000000..470fc9f28 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/sampling/probeData4S @@ -0,0 +1,18 @@ + probe4S + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + Rwall + qwall + ); + + probeLocations + ( + (2500.001 3500.001 0.0) + ); + } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/probeData5 b/exampleCases/example.ADM.ssc.base/system/sampling/probeData5 new file mode 100755 index 000000000..eac0bc00c --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/sampling/probeData5 @@ -0,0 +1,223 @@ + probe5 + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + U + T + p + p_rgh + kSgs + nuSgs + RdevSgs + qSgs + ); + + probeLocations + ( + (2500.001 4500.001 5.001) + (2500.001 4500.001 15.001) + (2500.001 4500.001 25.001) + (2500.001 4500.001 35.001) + (2500.001 4500.001 45.001) + (2500.001 4500.001 55.001) + (2500.001 4500.001 65.001) + (2500.001 4500.001 75.001) + (2500.001 4500.001 85.001) + (2500.001 4500.001 95.001) + (2500.001 4500.001 105.001) + (2500.001 4500.001 115.001) + (2500.001 4500.001 125.001) + (2500.001 4500.001 135.001) + (2500.001 4500.001 145.001) + (2500.001 4500.001 155.001) + (2500.001 4500.001 165.001) + (2500.001 4500.001 175.001) + (2500.001 4500.001 185.001) + (2500.001 4500.001 195.001) + (2500.001 4500.001 205.001) + (2500.001 4500.001 215.001) + (2500.001 4500.001 225.001) + (2500.001 4500.001 235.001) + (2500.001 4500.001 245.001) + (2500.001 4500.001 255.001) + (2500.001 4500.001 265.001) + (2500.001 4500.001 275.001) + (2500.001 4500.001 285.001) + (2500.001 4500.001 295.001) + (2500.001 4500.001 305.001) + (2500.001 4500.001 315.001) + (2500.001 4500.001 325.001) + (2500.001 4500.001 335.001) + (2500.001 4500.001 345.001) + (2500.001 4500.001 355.001) + (2500.001 4500.001 365.001) + (2500.001 4500.001 375.001) + (2500.001 4500.001 385.001) + (2500.001 4500.001 395.001) + (2500.001 4500.001 405.001) + (2500.001 4500.001 415.001) + (2500.001 4500.001 425.001) + (2500.001 4500.001 435.001) + (2500.001 4500.001 445.001) + (2500.001 4500.001 455.001) + (2500.001 4500.001 465.001) + (2500.001 4500.001 475.001) + (2500.001 4500.001 485.001) + (2500.001 4500.001 495.001) + (2500.001 4500.001 505.001) + (2500.001 4500.001 515.001) + (2500.001 4500.001 525.001) + (2500.001 4500.001 535.001) + (2500.001 4500.001 545.001) + (2500.001 4500.001 555.001) + (2500.001 4500.001 565.001) + (2500.001 4500.001 575.001) + (2500.001 4500.001 585.001) + (2500.001 4500.001 595.001) + (2500.001 4500.001 605.001) + (2500.001 4500.001 615.001) + (2500.001 4500.001 625.001) + (2500.001 4500.001 635.001) + (2500.001 4500.001 645.001) + (2500.001 4500.001 655.001) + (2500.001 4500.001 665.001) + (2500.001 4500.001 675.001) + (2500.001 4500.001 685.001) + (2500.001 4500.001 695.001) + (2500.001 4500.001 705.001) + (2500.001 4500.001 715.001) + (2500.001 4500.001 725.001) + (2500.001 4500.001 735.001) + (2500.001 4500.001 745.001) + (2500.001 4500.001 755.001) + (2500.001 4500.001 765.001) + (2500.001 4500.001 775.001) + (2500.001 4500.001 785.001) + (2500.001 4500.001 795.001) + (2500.001 4500.001 805.001) + (2500.001 4500.001 815.001) + (2500.001 4500.001 825.001) + (2500.001 4500.001 835.001) + (2500.001 4500.001 845.001) + (2500.001 4500.001 855.001) + (2500.001 4500.001 865.001) + (2500.001 4500.001 875.001) + (2500.001 4500.001 885.001) + (2500.001 4500.001 895.001) + (2500.001 4500.001 905.001) + (2500.001 4500.001 915.001) + (2500.001 4500.001 925.001) + (2500.001 4500.001 935.001) + (2500.001 4500.001 945.001) + (2500.001 4500.001 955.001) + (2500.001 4500.001 965.001) + (2500.001 4500.001 975.001) + (2500.001 4500.001 985.001) + (2500.001 4500.001 995.001) + (2500.001 4500.001 1005.001) + (2500.001 4500.001 1015.001) + (2500.001 4500.001 1025.001) + (2500.001 4500.001 1035.001) + (2500.001 4500.001 1045.001) + (2500.001 4500.001 1055.001) + (2500.001 4500.001 1065.001) + (2500.001 4500.001 1075.001) + (2500.001 4500.001 1085.001) + (2500.001 4500.001 1095.001) + (2500.001 4500.001 1105.001) + (2500.001 4500.001 1115.001) + (2500.001 4500.001 1125.001) + (2500.001 4500.001 1135.001) + (2500.001 4500.001 1145.001) + (2500.001 4500.001 1155.001) + (2500.001 4500.001 1165.001) + (2500.001 4500.001 1175.001) + (2500.001 4500.001 1185.001) + (2500.001 4500.001 1195.001) + (2500.001 4500.001 1205.001) + (2500.001 4500.001 1215.001) + (2500.001 4500.001 1225.001) + (2500.001 4500.001 1235.001) + (2500.001 4500.001 1245.001) + (2500.001 4500.001 1255.001) + (2500.001 4500.001 1265.001) + (2500.001 4500.001 1275.001) + (2500.001 4500.001 1285.001) + (2500.001 4500.001 1295.001) + (2500.001 4500.001 1305.001) + (2500.001 4500.001 1315.001) + (2500.001 4500.001 1325.001) + (2500.001 4500.001 1335.001) + (2500.001 4500.001 1345.001) + (2500.001 4500.001 1355.001) + (2500.001 4500.001 1365.001) + (2500.001 4500.001 1375.001) + (2500.001 4500.001 1385.001) + (2500.001 4500.001 1395.001) + (2500.001 4500.001 1405.001) + (2500.001 4500.001 1415.001) + (2500.001 4500.001 1425.001) + (2500.001 4500.001 1435.001) + (2500.001 4500.001 1445.001) + (2500.001 4500.001 1455.001) + (2500.001 4500.001 1465.001) + (2500.001 4500.001 1475.001) + (2500.001 4500.001 1485.001) + (2500.001 4500.001 1495.001) + (2500.001 4500.001 1505.001) + (2500.001 4500.001 1515.001) + (2500.001 4500.001 1525.001) + (2500.001 4500.001 1535.001) + (2500.001 4500.001 1545.001) + (2500.001 4500.001 1555.001) + (2500.001 4500.001 1565.001) + (2500.001 4500.001 1575.001) + (2500.001 4500.001 1585.001) + (2500.001 4500.001 1595.001) + (2500.001 4500.001 1605.001) + (2500.001 4500.001 1615.001) + (2500.001 4500.001 1625.001) + (2500.001 4500.001 1635.001) + (2500.001 4500.001 1645.001) + (2500.001 4500.001 1655.001) + (2500.001 4500.001 1665.001) + (2500.001 4500.001 1675.001) + (2500.001 4500.001 1685.001) + (2500.001 4500.001 1695.001) + (2500.001 4500.001 1705.001) + (2500.001 4500.001 1715.001) + (2500.001 4500.001 1725.001) + (2500.001 4500.001 1735.001) + (2500.001 4500.001 1745.001) + (2500.001 4500.001 1755.001) + (2500.001 4500.001 1765.001) + (2500.001 4500.001 1775.001) + (2500.001 4500.001 1785.001) + (2500.001 4500.001 1795.001) + (2500.001 4500.001 1805.001) + (2500.001 4500.001 1815.001) + (2500.001 4500.001 1825.001) + (2500.001 4500.001 1835.001) + (2500.001 4500.001 1845.001) + (2500.001 4500.001 1855.001) + (2500.001 4500.001 1865.001) + (2500.001 4500.001 1875.001) + (2500.001 4500.001 1885.001) + (2500.001 4500.001 1895.001) + (2500.001 4500.001 1905.001) + (2500.001 4500.001 1915.001) + (2500.001 4500.001 1925.001) + (2500.001 4500.001 1935.001) + (2500.001 4500.001 1945.001) + (2500.001 4500.001 1955.001) + (2500.001 4500.001 1965.001) + (2500.001 4500.001 1975.001) + (2500.001 4500.001 1985.001) + (2500.001 4500.001 1995.001) + ); + } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/probeData5S b/exampleCases/example.ADM.ssc.base/system/sampling/probeData5S new file mode 100755 index 000000000..5933c36f2 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/sampling/probeData5S @@ -0,0 +1,18 @@ + probe5S + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + Rwall + qwall + ); + + probeLocations + ( + (2500.001 4500.001 0.0) + ); + } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/sliceDataInstantaneous b/exampleCases/example.ADM.ssc.base/system/sampling/sliceDataInstantaneous new file mode 100755 index 000000000..59199fc39 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/sampling/sliceDataInstantaneous @@ -0,0 +1,53 @@ + sliceDataInstantaneous + { + type surfaces; + functionObjectLibs ("libsampling.so"); + enabled true; + interpolationScheme cell; + outputControl adjustableTime; + writeInterval 60; + surfaceFormat vtk; + fields + ( + U + T + ); + surfaces + ( + slice_horizontal_1 + { + type plane; + basePoint (1500.01 1500.01 20.01); + normalVector (0 0 1); + triangulate false; + } + slice_horizontal_2 + { + type plane; + basePoint (1500.01 1500.01 80.01); + normalVector (0 0 1); + triangulate false; + } + slice_horizontal_3 + { + type plane; + basePoint (1500.01 1500.01 200.01); + normalVector (0 0 1); + triangulate false; + } + slice_cross_stream + { + type plane; + basePoint (1500.01 1500.01 84.0); + normalVector (0 1 0); + triangulate false; + } + slice_streamwise + { + type plane; + basePoint (1500.01 1500.01 84.0); + normalVector (1 0 0); + triangulate false; + } + ); + } diff --git a/exampleCases/example.ADM.ssc.base/system/setFieldsABLDict b/exampleCases/example.ADM.ssc.base/system/setFieldsABLDict new file mode 100755 index 000000000..dacc350ce --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/setFieldsABLDict @@ -0,0 +1,504 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + + root ""; + case ""; + instance ""; + local ""; + + class dictionary; + object setFieldsABLDict; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +// Extents of the domain. +xMin $xMin; +yMin $yMin; +zMin $zMin; + +xMax $xMax; +yMax $yMax; +zMax $zMax; + +zRef $zMax; + +// Specify if distance from wall should be used as z. +useWallDistZ false; +scaleVelocityWithHeight false; + + +// Specify how to initialze the base velocity and temperature profile. +//velocityInitType "table"; +//velocityInitType "log"; +velocityInitType "geostrophic"; +//temperatureInitType "table"; +temperatureInitType "simple"; + +// Maximum perturbation of streamwise/spanwise flow near surface. +deltaU 0.25; +deltaV 0.25; + +// Total periods of perturbations in streamwise/spanwise in the domain. +Uperiods 12.0; +Vperiods 12.0; + +// Percentage of domain height (zMax) where peak in perturbation +// magnitude occurs. +zPeak 0.015; + +// Initial height of the center of the capping inversion. +zInversion $zInversion; + +// Width of the capping inversion. +widthInversion $inversionWidth; + +// Potential temperature at the bottom and top of the capping inversion. +Tbottom $TBottom; +Ttop $TTop; + +// Maximum temperature fluctuation size below capping inversion. +TPrimeScale 0.0; + +// Height rate of change of potential temperature above the inversion. +dTdz $TGradUpper; + +// Geostrophic wind speed magnitude. +Ug $U0Mag; + +// Geostrophic wind speed direction. +UgDir $dir; + +// Aerodynamic roughness height of surface. +z0 $z0; + +// von Karman constant. +kappa $kappa; + +// Vertical profile table. +profileTable +( +// z U V T + (0.0 0.0 0.0 273.121917725) + (5.0 1.82671529027 1.98969371553 282.524156211) + (10.0 2.52983624172 2.77228242751 283.156504284) + (15.0 3.01282071998 3.35521702288 283.64108812) + (20.0 3.35996148006 3.78823607698 284.090761147) + (25.0 3.8038057643 4.37960852586 284.554077196) + (30.0 4.03596125279 4.70538923119 284.966777157) + (35.0 4.38133296535 5.23253766126 285.360167677) + (40.0 4.56992779673 5.53523659867 285.747101612) + (45.0 4.80994398595 5.96180841679 286.095879197) + (50.0 5.00816921409 6.32774876853 286.444585293) + (55.0 5.14154903327 6.60160807137 286.787914506) + (60.0 5.36818530188 7.08896005703 287.063199891) + (65.0 5.44703987742 7.27484159809 287.379906732) + (70.0 5.57604433164 7.60608624795 287.638417176) + (75.0 5.72370142776 7.99632935101 287.863981004) + (80.0 5.77619905069 8.15139018101 288.127106742) + (85.0 5.87149793296 8.46369430537 288.331005696) + (90.0 5.98111916718 8.83268873958 288.509035882) + (95.0 6.01697152506 8.97407895539 288.724664101) + (100.0 6.06967854005 9.19927028309 288.909565287) + (105.0 6.1450628792 9.53721293929 289.053124377) + (110.0 6.19167607924 9.76288104253 289.198531813) + (115.0 6.22489630605 9.93628531022 289.344799656) + (120.0 6.27421288656 10.216282683 289.462005) + (125.0 6.32645248876 10.5156368594 289.57393273) + (130.0 6.34668810144 10.6457361726 289.712125634) + (135.0 6.36434613795 10.762203832 289.852433913) + (140.0 6.39842793739 11.0196195883 289.95191863) + (145.0 6.4342454375 11.2919310606 290.047089019) + (150.0 6.45180421766 11.4367005351 290.150649381) + (155.0 6.46406875681 11.544488333 290.256642472) + (160.0 6.48170756073 11.7056278368 290.348224267) + (165.0 6.50382814701 11.9112591447 290.427787992) + (170.0 6.52550956366 12.1127414485 290.506470121) + (175.0 6.54550549533 12.298300329 290.581768788) + (180.0 6.56550142701 12.4838592096 290.657067454) + (185.0 6.58511534034 12.6567515091 290.735008491) + (190.0 6.6045979288 12.8252894701 290.813857884) + (195.0 6.62432001649 12.9896812983 290.892328604) + (200.0 6.64532587961 13.1318488244 290.968769537) + (205.0 6.66633174272 13.2740163505 291.045210471) + (210.0 6.69104111181 13.4098514016 291.117435921) + (215.0 6.72036475996 13.5377966838 291.184409209) + (220.0 6.74968840812 13.6657419659 291.251382497) + (225.0 6.77805691412 13.7640369251 291.318657013) + (230.0 6.80578882059 13.8425700289 291.386132296) + (235.0 6.83352072706 13.9211031327 291.453607578) + (240.0 6.86307156947 13.9862481909 291.518273832) + (245.0 6.89380511232 14.0426881336 291.581113612) + (250.0 6.92453865516 14.0991280764 291.643953391) + (255.0 6.95361693104 14.1462680315 291.704700258) + (260.0 6.98077095142 14.1825967081 291.763014104) + (265.0 7.0079249718 14.2189253847 291.82132795) + (270.0 7.03507703408 14.2541299666 291.879606535) + (275.0 7.0622194383 14.283790106 291.937711201) + (280.0 7.08936184253 14.3134502454 291.995815867) + (285.0 7.11650424675 14.3431103848 292.053920533) + (290.0 7.1430391081 14.369131837 292.11328027) + (295.0 7.16932392788 14.3936557439 292.173156546) + (300.0 7.19560874767 14.4181796507 292.233032822) + (305.0 7.22180906756 14.4424461024 292.292838021) + (310.0 7.24680913749 14.4630556198 292.351633627) + (315.0 7.27180920741 14.4836651372 292.410429232) + (320.0 7.29680927734 14.5042746546 292.469224837) + (325.0 7.32153609499 14.5243042572 292.528664796) + (330.0 7.34543057757 14.5425674214 292.590067475) + (335.0 7.36932506015 14.5608305855 292.651470155) + (340.0 7.39321954273 14.5790937496 292.712872834) + (345.0 7.41696733387 14.597025575 292.773542958) + (350.0 7.44026003553 14.6139294685 292.831940429) + (355.0 7.46355273718 14.6308333621 292.890337899) + (360.0 7.48684543884 14.6477372556 292.94873537) + (365.0 7.51013186129 14.6646271523 293.007149353) + (370.0 7.53322339247 14.68108262 293.066075821) + (375.0 7.55631492366 14.6975380877 293.12500229) + (380.0 7.57940645484 14.7139935554 293.183928758) + (385.0 7.60249798603 14.7304490231 293.242855226) + (390.0 7.6257582057 14.7463924565 293.301506178) + (395.0 7.64912373233 14.7620162427 293.359985132) + (400.0 7.67248925896 14.7776400289 293.418464087) + (405.0 7.69585478559 14.7932638151 293.476943042) + (410.0 7.71922031222 14.8088876013 293.535421996) + (415.0 7.74300228036 14.8230663689 293.592791002) + (420.0 7.7667927399 14.8372156721 293.650137374) + (425.0 7.79058319945 14.8513649753 293.707483747) + (430.0 7.81437365899 14.8655142784 293.76483012) + (435.0 7.83815083397 14.8793492717 293.821767406) + (440.0 7.86181714661 14.8905612872 293.875290779) + (445.0 7.88548345926 14.9017733027 293.928814153) + (450.0 7.9091497719 14.9129853182 293.982337526) + (455.0 7.93281608455 14.9241973336 294.035860899) + (460.0 7.95648239719 14.9354093491 294.089384273) + (465.0 7.97905964048 14.9423301431 294.14128451) + (470.0 8.0016312311 14.9492286641 294.193176323) + (475.0 8.02420282171 14.956127185 294.245068135) + (480.0 8.04677441233 14.9630257059 294.296959948) + (485.0 8.06934600294 14.9699242269 294.34885176) + (490.0 8.0912068028 14.9742300558 294.40025773) + (495.0 8.11235909886 14.9759515346 294.45117942) + (500.0 8.13351139492 14.9776730134 294.502101111) + (505.0 8.15466369098 14.9793944922 294.553022801) + (510.0 8.17581598704 14.981115971 294.603944491) + (515.0 8.19696828309 14.9828374498 294.654866181) + (520.0 8.21724149816 14.9808198644 294.704354156) + (525.0 8.2364694612 14.9743564264 294.752137402) + (530.0 8.25569742424 14.9678929884 294.799920649) + (535.0 8.27492538727 14.9614295505 294.847703896) + (540.0 8.29415335031 14.9549661125 294.895487143) + (545.0 8.31338131334 14.9485026745 294.943270389) + (550.0 8.33260927638 14.9420392365 294.991053636) + (555.0 8.35050488468 14.9266129312 295.036341098) + (560.0 8.36808840645 14.9090871924 295.081043956) + (565.0 8.38567192822 14.8915614535 295.125746813) + (570.0 8.40325544999 14.8740357147 295.170449671) + (575.0 8.42083897176 14.8565099758 295.215152528) + (580.0 8.43842249352 14.838984237 295.259855386) + (585.0 8.45600601529 14.8214584982 295.304558243) + (590.0 8.47264685758 14.7968218302 295.348171206) + (595.0 8.48834031368 14.765038729 295.390688832) + (600.0 8.50403376979 14.7332556278 295.433206459) + (605.0 8.51972722589 14.7014725265 295.475724085) + (610.0 8.53542068199 14.6696894253 295.518241712) + (615.0 8.55111413809 14.6379063241 295.560759338) + (620.0 8.56680759419 14.6061232229 295.603276965) + (625.0 8.5825010503 14.5743401216 295.645794591) + (630.0 8.59715715424 14.5346556613 295.689519112) + (635.0 8.61058749747 14.4856347615 295.734669729) + (640.0 8.62401784069 14.4366138617 295.779820347) + (645.0 8.63744818391 14.3875929619 295.824970964) + (650.0 8.65087852713 14.338572062 295.870121581) + (655.0 8.66430887036 14.2895511622 295.915272198) + (660.0 8.67773921358 14.2405302624 295.960422815) + (665.0 8.6911695568 14.1915093626 296.005573433) + (670.0 8.70459990003 14.1424884628 296.05072405) + (675.0 8.71498597608 14.0837507537 296.096336227) + (680.0 8.72352399234 14.0191143362 296.142228601) + (685.0 8.7320620086 13.9544779188 296.188120975) + (690.0 8.74060002486 13.8898415013 296.234013348) + (695.0 8.74913804112 13.8252050838 296.279905722) + (700.0 8.75767605739 13.7605686663 296.325798096) + (705.0 8.76621407365 13.6959322489 296.371690469) + (710.0 8.77475208991 13.6312958314 296.417582843) + (715.0 8.78329010617 13.5666594139 296.463475217) + (720.0 8.79182812243 13.5020229965 296.50936759) + (725.0 8.79189547444 13.4277463368 296.562527014) + (730.0 8.79098910472 13.3523615098 296.616521801) + (735.0 8.79008273499 13.2769766828 296.670516587) + (740.0 8.78917636527 13.2015918559 296.724511374) + (745.0 8.78826999555 13.1262070289 296.778506161) + (750.0 8.78736362582 13.0508222019 296.832500948) + (755.0 8.7864572561 12.9754373749 296.886495735) + (760.0 8.78555088638 12.9000525479 296.940490522) + (765.0 8.78464451665 12.824667721 296.994485308) + (770.0 8.78373814693 12.749282894 297.048480095) + (775.0 8.78092431283 12.6731698157 297.101321687) + (780.0 8.77050848097 12.594154369 297.149567342) + (785.0 8.76009264911 12.5151389222 297.197812997) + (790.0 8.74967681725 12.4361234755 297.246058652) + (795.0 8.73926098539 12.3571080288 297.294304307) + (800.0 8.72884515353 12.278092582 297.342549962) + (805.0 8.71842932167 12.1990771353 297.390795617) + (810.0 8.70801348981 12.1200616885 297.439041272) + (815.0 8.69759765795 12.0410462418 297.487286927) + (820.0 8.68718182609 11.9620307951 297.535532582) + (825.0 8.67676599423 11.8830153483 297.583778237) + (830.0 8.66635016237 11.8039999016 297.632023892) + (835.0 8.65380285705 11.7267327361 297.688031136) + (840.0 8.63847548104 11.6517458454 297.754161782) + (845.0 8.62314810503 11.5767589547 297.820292429) + (850.0 8.60782072902 11.5017720641 297.886423076) + (855.0 8.59249335301 11.4267851734 297.952553722) + (860.0 8.57716597701 11.3517982828 298.018684369) + (865.0 8.561838601 11.2768113921 298.084815016) + (870.0 8.54651122499 11.2018245015 298.150945663) + (875.0 8.53118384898 11.1268376108 298.217076309) + (880.0 8.51585647297 11.0518507201 298.283206956) + (885.0 8.50052909696 10.9768638295 298.349337603) + (890.0 8.48520172096 10.9018769388 298.41546825) + (895.0 8.46987434495 10.8268900482 298.481598896) + (900.0 8.45883220551 10.7541011047 298.547345535) + (905.0 8.45238242046 10.6836676328 298.612680644) + (910.0 8.44593263542 10.6132341608 298.678015753) + (915.0 8.43948285037 10.5428006888 298.743350863) + (920.0 8.43303306533 10.4723672168 298.808685972) + (925.0 8.42658328028 10.4019337449 298.874021081) + (930.0 8.42013349524 10.3315002729 298.93935619) + (935.0 8.41368371019 10.2610668009 299.004691299) + (940.0 8.40723392515 10.190633329 299.070026409) + (945.0 8.4007841401 10.120199857 299.135361518) + (950.0 8.39433435506 10.049766385 299.200696627) + (955.0 8.38788457001 9.97933291304 299.266031736) + (960.0 8.38143478497 9.90889944107 299.331366845) + (965.0 8.37498499992 9.8384659691 299.396701955) + (970.0 8.37175628862 9.76984547069 299.458148741) + (975.0 8.3787220489 9.70696290595 299.507289259) + (980.0 8.38568780918 9.64408034121 299.556429777) + (985.0 8.39265356946 9.58119777647 299.605570296) + (990.0 8.39961932974 9.51831521173 299.654710814) + (995.0 8.40658509002 9.45543264699 299.703851332) + (1000.0 8.4135508503 9.39255008225 299.752991851) + (1005.0 8.42051661058 9.32966751751 299.802132369) + (1010.0 8.42748237086 9.26678495277 299.851272887) + (1015.0 8.43444813113 9.20390238803 299.900413405) + (1020.0 8.44141389141 9.14101982329 299.949553924) + (1025.0 8.44837965169 9.07813725854 299.998694442) + (1030.0 8.45534541197 9.0152546938 300.04783496) + (1035.0 8.46231117225 8.95237212906 300.096975478) + (1040.0 8.46927693253 8.88948956432 300.146115997) + (1045.0 8.47624269281 8.82660699958 300.195256515) + (1050.0 8.48495783258 8.77319458603 300.238852282) + (1055.0 8.49495774699 8.72673721576 300.278375887) + (1060.0 8.5049576614 8.6802798455 300.317899492) + (1065.0 8.51495757581 8.63382247523 300.357423097) + (1070.0 8.52495749023 8.58736510496 300.396946702) + (1075.0 8.53495740464 8.5409077347 300.436470307) + (1080.0 8.54495731905 8.49445036443 300.475993912) + (1085.0 8.55495723346 8.44799299416 300.515517517) + (1090.0 8.56495714787 8.4015356239 300.555041122) + (1095.0 8.57495706228 8.35507825363 300.594564727) + (1100.0 8.58495697669 8.30862088336 300.634088332) + (1105.0 8.5949568911 8.2621635131 300.673611937) + (1110.0 8.60495680552 8.21570614283 300.713135542) + (1115.0 8.61495671993 8.16924877256 300.752659147) + (1120.0 8.62495663434 8.1227914023 300.792182752) + (1125.0 8.63495654875 8.07633403203 300.831706357) + (1130.0 8.64495646316 8.02987666176 300.871229962) + (1135.0 8.65360052964 7.98996489564 300.907704255) + (1140.0 8.65972902324 7.96219751809 300.938521005) + (1145.0 8.66585751685 7.93443014055 300.969337756) + (1150.0 8.67198601045 7.906662763 301.000154506) + (1155.0 8.67811450406 7.87889538546 301.030971256) + (1160.0 8.68424299766 7.85112800791 301.061788006) + (1165.0 8.69037149126 7.82336063037 301.092604757) + (1170.0 8.69649998487 7.79559325282 301.123421507) + (1175.0 8.70262847847 7.76782587527 301.154238257) + (1180.0 8.70875697208 7.74005849773 301.185055007) + (1185.0 8.71488546568 7.71229112018 301.215871758) + (1190.0 8.72101395929 7.68452374264 301.246688508) + (1195.0 8.72714245289 7.65675636509 301.277505258) + (1200.0 8.7332709465 7.62898898755 301.308322009) + (1205.0 8.7393994401 7.60122161 301.339138759) + (1210.0 8.74552793371 7.57345423246 301.369955509) + (1215.0 8.75165642731 7.54568685491 301.400772259) + (1220.0 8.75778492092 7.51791947737 301.43158901) + (1225.0 8.76391341452 7.49015209982 301.46240576) + (1230.0 8.76818252215 7.46990516883 301.489568668) + (1235.0 8.76988179508 7.46005215541 301.511681645) + (1240.0 8.771581068 7.45019914198 301.533794623) + (1245.0 8.77328034093 7.44034612856 301.5559076) + (1250.0 8.77497961385 7.43049311513 301.578020578) + (1255.0 8.77667888677 7.42064010171 301.600133555) + (1260.0 8.7783781597 7.41078708828 301.622246532) + (1265.0 8.78007743262 7.40093407485 301.64435951) + (1270.0 8.78177670555 7.39108106143 301.666472487) + (1275.0 8.78347597847 7.381228048 301.688585464) + (1280.0 8.7851752514 7.37137503458 301.710698442) + (1285.0 8.78687452432 7.36152202115 301.732811419) + (1290.0 8.78857379725 7.35166900773 301.754924397) + (1295.0 8.79027307017 7.3418159943 301.777037374) + (1300.0 8.7919723431 7.33196298088 301.799150351) + (1305.0 8.79367161602 7.32210996745 301.821263329) + (1310.0 8.79537088895 7.31225695402 301.843376306) + (1315.0 8.79707016187 7.3024039406 301.865489283) + (1320.0 8.79876943479 7.29255092717 301.887602261) + (1325.0 8.80046870772 7.28269791375 301.909715238) + (1330.0 8.80216798064 7.27284490032 301.931828216) + (1335.0 8.80345002487 7.27037429336 301.950702634) + (1340.0 8.80449597234 7.27208116099 301.967744453) + (1345.0 8.8055419198 7.27378802862 301.984786271) + (1350.0 8.80658786727 7.27549489624 302.00182809) + (1355.0 8.80763381473 7.27720176387 302.018869908) + (1360.0 8.8086797622 7.2789086315 302.035911727) + (1365.0 8.80972570966 7.28061549913 302.052953545) + (1370.0 8.81077165713 7.28232236676 302.069995364) + (1375.0 8.81181760459 7.28402923439 302.087037182) + (1380.0 8.81286355206 7.28573610202 302.104079001) + (1385.0 8.81390949952 7.28744296965 302.121120819) + (1390.0 8.81495544699 7.28914983727 302.138162638) + (1395.0 8.81600139445 7.2908567049 302.155204456) + (1400.0 8.81704734192 7.29256357253 302.172246275) + (1405.0 8.81809328938 7.29427044016 302.189288094) + (1410.0 8.81913923685 7.29597730779 302.206329912) + (1415.0 8.82018518431 7.29768417542 302.223371731) + (1420.0 8.82123113178 7.29939104305 302.240413549) + (1425.0 8.82227707924 7.30109791068 302.257455368) + (1430.0 8.82332302671 7.30280477831 302.274497186) + (1435.0 8.82436897417 7.30451164593 302.291539005) + (1440.0 8.82541492164 7.30621851356 302.308580823) + (1445.0 8.8264608691 7.30792538119 302.325622642) + (1450.0 8.82980499965 7.31411337437 302.342200633) + (1455.0 8.83363827328 7.32125512601 302.358679903) + (1460.0 8.83747154691 7.32839687764 302.375159173) + (1465.0 8.84130482054 7.33553862927 302.391638443) + (1470.0 8.84513809417 7.34268038091 302.408117713) + (1475.0 8.8489713678 7.34982213254 302.424596984) + (1480.0 8.85280464143 7.35696388418 302.441076254) + (1485.0 8.85663791506 7.36410563581 302.457555524) + (1490.0 8.86047118869 7.37124738745 302.474034794) + (1495.0 8.86430446231 7.37838913908 302.490514064) + (1500.0 8.86813773594 7.38553089071 302.506993334) + (1505.0 8.87197100957 7.39267264235 302.523472605) + (1510.0 8.8758042832 7.39981439398 302.539951875) + (1515.0 8.87963755683 7.40695614562 302.556431145) + (1520.0 8.88347083046 7.41409789725 302.572910415) + (1525.0 8.88730410409 7.42123964888 302.589389685) + (1530.0 8.89113737772 7.42838140052 302.605868955) + (1535.0 8.89497065135 7.43552315215 302.622348226) + (1540.0 8.89880392498 7.44266490379 302.638827496) + (1545.0 8.90263719861 7.44980665542 302.655306766) + (1550.0 8.90647047224 7.45694840705 302.671786036) + (1555.0 8.91030374586 7.46409015869 302.688265306) + (1560.0 8.91413701949 7.47123191032 302.704744577) + (1565.0 8.91797029312 7.47837366196 302.721223847) + (1570.0 8.92180356675 7.48551541359 302.737703117) + (1575.0 8.92995697971 7.48958529161 302.756743245) + (1580.0 8.93926578965 7.49283361431 302.77646826) + (1585.0 8.94857459959 7.496081937 302.796193275) + (1590.0 8.95788340953 7.49933025969 302.81591829) + (1595.0 8.96719221947 7.50257858238 302.835643305) + (1600.0 8.97650102941 7.50582690508 302.85536832) + (1605.0 8.98580983935 7.50907522777 302.875093335) + (1610.0 8.9951186493 7.51232355046 302.89481835) + (1615.0 9.00442745924 7.51557187315 302.914543365) + (1620.0 9.01373626918 7.51882019585 302.93426838) + (1625.0 9.02304507912 7.52206851854 302.953993395) + (1630.0 9.03235388906 7.52531684123 302.973718411) + (1635.0 9.041662699 7.52856516392 302.993443426) + (1640.0 9.05097150894 7.53181348662 303.013168441) + (1645.0 9.06028031888 7.53506180931 303.032893456) + (1650.0 9.06958912882 7.538310132 303.052618471) + (1655.0 9.07889793876 7.5415584547 303.072343486) + (1660.0 9.0882067487 7.54480677739 303.092068501) + (1665.0 9.09751555864 7.54805510008 303.111793516) + (1670.0 9.10682436858 7.55130342277 303.131518531) + (1675.0 9.11613317852 7.55455174547 303.151243546) + (1680.0 9.12544198846 7.55780006816 303.170968561) + (1685.0 9.1347507984 7.56104839085 303.190693576) + (1690.0 9.14405960834 7.56429671354 303.210418591) + (1695.0 9.15336841829 7.56754503624 303.230143606) + (1700.0 9.16267722823 7.57079335893 303.249868621) + (1705.0 9.17198603817 7.57404168162 303.269593636) + (1710.0 9.18349377603 7.57239347669 303.290540127) + (1715.0 9.19922226437 7.56134659115 303.31383119) + (1720.0 9.2149507527 7.55029970561 303.337122252) + (1725.0 9.23067924103 7.53925282007 303.360413315) + (1730.0 9.24640772936 7.52820593453 303.383704377) + (1735.0 9.2621362177 7.51715904899 303.40699544) + (1740.0 9.27786470603 7.50611216345 303.430286502) + (1745.0 9.29359319436 7.49506527791 303.453577565) + (1750.0 9.3093216827 7.48401839237 303.476868627) + (1755.0 9.32505017103 7.47297150683 303.50015969) + (1760.0 9.34077865936 7.46192462129 303.523450752) + (1765.0 9.35650714769 7.45087773575 303.546741815) + (1770.0 9.37223563603 7.43983085021 303.570032877) + (1775.0 9.38796412436 7.42878396467 303.59332394) + (1780.0 9.40369261269 7.41773707912 303.616615003) + (1785.0 9.41942110102 7.40669019358 303.639906065) + (1790.0 9.43514958936 7.39564330804 303.663197128) + (1795.0 9.45087807769 7.3845964225 303.68648819) + (1800.0 9.46660656602 7.37354953696 303.709779253) + (1805.0 9.48233505436 7.36250265142 303.733070315) + (1810.0 9.49806354269 7.35145576588 303.756361378) + (1815.0 9.51379203102 7.34040888034 303.77965244) + (1820.0 9.52952051935 7.3293619948 303.802943503) + (1825.0 9.54524900769 7.31831510926 303.826234565) + (1830.0 9.56097749602 7.30726822372 303.849525628) + (1835.0 9.57670598435 7.29622133818 303.87281669) + (1840.0 9.59243447268 7.28517445264 303.896107753) + (1845.0 9.60816296102 7.2741275671 303.919398815) + (1850.0 9.62389144935 7.26308068156 303.942689878) + (1855.0 9.63961993768 7.25203379602 303.96598094) + (1860.0 9.65432709188 7.2376578099 303.988680381) + (1865.0 9.66596304977 7.21327107309 304.009600791) + (1870.0 9.67759900765 7.18888433629 304.0305212) + (1875.0 9.68923496554 7.16449759948 304.051441609) + (1880.0 9.70087092342 7.14011086267 304.072362018) + (1885.0 9.71250688131 7.11572412587 304.093282427) + (1890.0 9.72414283919 7.09133738906 304.114202836) + (1895.0 9.73577879708 7.06695065226 304.135123245) + (1900.0 9.74741475497 7.04256391545 304.156043654) + (1905.0 9.75905071285 7.01817717864 304.176964064) + (1910.0 9.77068667074 6.99379044184 304.197884473) + (1915.0 9.78232262862 6.96940370503 304.218804882) + (1920.0 9.79395858651 6.94501696822 304.239725291) + (1925.0 9.8055945444 6.92063023142 304.2606457) + (1930.0 9.81723050228 6.89624349461 304.281566109) + (1935.0 9.82886646017 6.8718567578 304.302486518) + (1940.0 9.84050241805 6.847470021 304.323406928) + (1945.0 9.85213837594 6.82308328419 304.344327337) + (1950.0 9.86377433382 6.79869654738 304.365247746) + (1955.0 9.87541029171 6.77430981058 304.386168155) + (1960.0 9.8870462496 6.74992307377 304.407088564) + (1965.0 9.89868220748 6.72553633696 304.428008973) + (1970.0 9.91031816537 6.70114960016 304.448929382) + (1975.0 9.92195412325 6.67676286335 304.469849792) + (1980.0 9.93359008114 6.65237612654 304.490770201) + (1985.0 9.94522603903 6.62798938974 304.51169061) + (1990.0 9.95686199691 6.60360265293 304.532611019) + (1995.0 9.9684979548 6.57921591612 304.553531428) + (2000.0 9.98013391268 6.55482917932 304.574451837) +); + +// Update internal field. +updateInternalFields true; + +// Update boundary field. +updateBoundaryFields false; + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/topoSetDict.local.1 b/exampleCases/example.ADM.ssc.base/system/topoSetDict.local.1 new file mode 100755 index 000000000..5ca695970 --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/topoSetDict.local.1 @@ -0,0 +1,36 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.local.2; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name local; + type cellSet; + action new; + source rotatedBoxToCell; + sourceInfo + { + origin ( 900.0 1325.0 0.0); + i ( 1950.0 0.0 0.0); + j ( 0.0 350.0 0.0); + k ( 0.0 0.0 230.0); + } + } + +); + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/topoSetDict.local.2 b/exampleCases/example.ADM.ssc.base/system/topoSetDict.local.2 new file mode 100755 index 000000000..eb488cf4f --- /dev/null +++ b/exampleCases/example.ADM.ssc.base/system/topoSetDict.local.2 @@ -0,0 +1,36 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.local.2; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name local; + type cellSet; + action new; + source rotatedBoxToCell; + sourceInfo + { + origin ( 1000.0 1375.0 0.0); + i ( 1800.0 0.0 0.0); + j ( 0.0 250.0 0.0); + k ( 0.0 0.0 200.0); + } + } + +); + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/0.original/Rwall b/exampleCases/example.ADM.ssc/0.original/Rwall new file mode 100755 index 000000000..9f0a3a19c --- /dev/null +++ b/exampleCases/example.ADM.ssc/0.original/Rwall @@ -0,0 +1,65 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volSymmTensorField; + location "0"; + object Rwall; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + +dimensions [ 0 2 -2 0 0 0 0 ]; + +internalField uniform (0.0 0.0 0.0 0.0 0.0 0.0); + +boundaryField +{ + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + //averageType "local"; + averageType "planarAverage"; + value uniform $Rwall; + } + upper + { + type fixedValue; + value $internalField; + } + west + { + type cyclic; + value $internalField; + } + east + { + type cyclic; + value $internalField; + } + north + { + type cyclic; + value $internalField; + } + south + { + type cyclic; + value $internalField; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/0.original/T b/exampleCases/example.ADM.ssc/0.original/T new file mode 100755 index 000000000..8fce50ca7 --- /dev/null +++ b/exampleCases/example.ADM.ssc/0.original/T @@ -0,0 +1,55 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object T ; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 0 0 1 0 0 0]; + +internalField uniform $TBottom; + +boundaryField +{ + lower + { + type zeroGradient; + } + upper + { + type fixedGradient; + gradient uniform $TGradUpper; + } + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/0.original/U b/exampleCases/example.ADM.ssc/0.original/U new file mode 100755 index 000000000..a73faa4e0 --- /dev/null +++ b/exampleCases/example.ADM.ssc/0.original/U @@ -0,0 +1,58 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volVectorField; + location "0"; + object U; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 1 -1 0 0 0 0]; + +internalField uniform (0 0 0); + +boundaryField +{ + lower + { + type velocityABLWallFunction; + print true; + U U; + value $internalField; + } + upper + { + type slip; + } + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } +} + + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/0.original/k b/exampleCases/example.ADM.ssc/0.original/k new file mode 100755 index 000000000..b85959d30 --- /dev/null +++ b/exampleCases/example.ADM.ssc/0.original/k @@ -0,0 +1,54 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object k ; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -2 0 0 0 0]; + +internalField uniform $k0; + +boundaryField +{ + lower + { + type zeroGradient; + } + upper + { + type zeroGradient; + } + east + { + type cyclic; + } + west + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/0.original/kappat b/exampleCases/example.ADM.ssc/0.original/kappat new file mode 100755 index 000000000..05706742f --- /dev/null +++ b/exampleCases/example.ADM.ssc/0.original/kappat @@ -0,0 +1,60 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.1.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object kappat; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -1 0 0 0 0]; + +internalField uniform $kappat0; + +boundaryField +{ + lower + { + type fixedValue; + value uniform 0.0; + } + upper + { + type fixedValue; + value uniform 0.0; + } + west + { + type cyclic; + value $internalField; + } + east + { + type cyclic; + value $internalField; + } + north + { + type cyclic; + value $internalField; + } + south + { + type cyclic; + value $internalField; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/0.original/nuSgs b/exampleCases/example.ADM.ssc/0.original/nuSgs new file mode 100755 index 000000000..e6f1da758 --- /dev/null +++ b/exampleCases/example.ADM.ssc/0.original/nuSgs @@ -0,0 +1,60 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.1.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object nuSgs; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -1 0 0 0 0]; + +internalField uniform $nuSgs0; + +boundaryField +{ + lower + { + type fixedValue; + value uniform 0.0; + } + upper + { + type fixedValue; + value uniform 0.0; + } + west + { + type cyclic; + value $internalField; + } + east + { + type cyclic; + value $internalField; + } + north + { + type cyclic; + value $internalField; + } + south + { + type cyclic; + value $internalField; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/0.original/p_rgh b/exampleCases/example.ADM.ssc/0.original/p_rgh new file mode 100755 index 000000000..b40b9978c --- /dev/null +++ b/exampleCases/example.ADM.ssc/0.original/p_rgh @@ -0,0 +1,54 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0000"; + object p_rgh ; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -2 0 0 0 0]; + +internalField uniform $p_rgh0; + +boundaryField +{ + lower + { + type fixedFluxPressure; + } + upper + { + type fixedFluxPressure; + } + east + { + type cyclic; + } + west + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/0.original/qwall b/exampleCases/example.ADM.ssc/0.original/qwall new file mode 100755 index 000000000..c695d7577 --- /dev/null +++ b/exampleCases/example.ADM.ssc/0.original/qwall @@ -0,0 +1,59 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volVectorField; + location "0"; + object qwall; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + +dimensions [ 0 1 -1 1 0 0 0 ]; + +internalField uniform (0.0 0.0 0.0); + +boundaryField +{ + lower + { + type fixedValue; + value uniform $qwall; + } + upper + { + type fixedValue; + value $internalField; + } + west + { + type cyclic; + value $internalField; + } + east + { + type cyclic; + value $internalField; + } + north + { + type cyclic; + value $internalField; + } + south + { + type cyclic; + value $internalField; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/constant/ABLProperties b/exampleCases/example.ADM.ssc/constant/ABLProperties new file mode 100755 index 000000000..d25c3dbee --- /dev/null +++ b/exampleCases/example.ADM.ssc/constant/ABLProperties @@ -0,0 +1,55 @@ +/*---------------------------------------------------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.openfoam.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + + root ""; + case ""; + instance ""; + local ""; + + class dictionary; + object ABLProperties; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + + +// Properties of the mesoscale source terms +momentumSourceType "given"; +temperatureSourceType "given"; + + +velocityInputType "speedAndDirection"; + + +#include "../constant/sources" + + +// Relaxation factors applied when computing sources given desired +// velocity and temperature. +alphaMomentum 0.7; +alphaTemperature 0.7; + + +// Properties of the Coriolis force +planetaryRotationPeriod $EarthPeriod; +latitude $latitude; + + +// Statistics gathering input +avgStartTime $avgStartTime; +corrStartTime $corrStartTime; + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/constant/LESProperties b/exampleCases/example.ADM.ssc/constant/LESProperties new file mode 100755 index 000000000..2043039a5 --- /dev/null +++ b/exampleCases/example.ADM.ssc/constant/LESProperties @@ -0,0 +1,118 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object LESProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +#include "../setUp" + + +LESModel $LESModel; +//LESModel SmagorinskyABL; +//LESModel Smagorinsky; +//LESModel dynLagrangianCsBound; + +delta smooth; + +SmagorinskyCoeffs +{ + ce $ce; + ck $ck; +} + +SmagorinskyABLCoeffs +{ + ce $ce; + ck $ck; + TName "T"; + kappatName "kappat"; +} + +oneEqEddyABLCoeffs +{ + ce $ce; + ck $ck; + TName "T"; + kappatName "kappat"; +} + +printCoeffs on; + +dynLagrangianCsBoundCoeffs +{ + filter simple; +} + +cubeRootVolCoeffs +{ + deltaCoeff 1; +} + +PrandtlCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + smoothCoeffs + { + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + maxDeltaRatio 1.1; + } + + Cdelta 0.158; +} + +vanDriestCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + smoothCoeffs + { + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + maxDeltaRatio 1.1; + } + + Aplus 26; + Cdelta 0.158; +} + +smoothCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + maxDeltaRatio 1.1; +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/constant/airfoilProperties/Cylinder1 b/exampleCases/example.ADM.ssc/constant/airfoilProperties/Cylinder1 new file mode 100755 index 000000000..7106c17d0 --- /dev/null +++ b/exampleCases/example.ADM.ssc/constant/airfoilProperties/Cylinder1 @@ -0,0 +1,23 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.5000) + ( 0.00 0.000 0.5000) + ( 180.00 0.000 0.5000) +); diff --git a/exampleCases/example.ADM.ssc/constant/airfoilProperties/Cylinder2 b/exampleCases/example.ADM.ssc/constant/airfoilProperties/Cylinder2 new file mode 100755 index 000000000..b2e7923f1 --- /dev/null +++ b/exampleCases/example.ADM.ssc/constant/airfoilProperties/Cylinder2 @@ -0,0 +1,23 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.3500) + ( 0.00 0.000 0.3500) + ( 180.00 0.000 0.3500) +); diff --git a/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU21_A17 b/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU21_A17 new file mode 100755 index 000000000..17eb9de96 --- /dev/null +++ b/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU21_A17 @@ -0,0 +1,162 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180 0 0.0185) + (-175 0.394 0.0332) + (-170 0.788 0.0945) + (-160 0.67 0.2809) + (-155 0.749 0.3932) + (-150 0.797 0.5112) + (-145 0.818 0.6309) + (-140 0.813 0.7485) + (-135 0.786 0.8612) + (-130 0.739 0.9665) + (-125 0.675 1.0625) + (-120 0.596 1.1476) + (-115 0.505 1.2206) + (-110 0.403 1.2805) + (-105 0.294 1.3265) + (-100 0.179 1.3582) + (-95 0.06 1.3752) + (-90 -0.06 1.3774) + (-85 -0.179 1.3648) + (-80 -0.295 1.3376) + (-75 -0.407 1.2962) + (-70 -0.512 1.2409) + (-65 -0.608 1.1725) + (-60 -0.693 1.0919) + (-55 -0.764 1.0002) + (-50 -0.82 0.899 ) + (-45 -0.857 0.79 ) + (-40 -0.875 0.6754) + (-35 -0.869 0.5579) + (-30 -0.838 0.4405) + (-25 -0.791 0.3256) + (-24 -0.794 0.3013) + (-23 -0.805 0.2762) + (-22 -0.821 0.2506) + (-21 -0.843 0.2246) + (-20 -0.869 0.1983) + (-19 -0.899 0.172 ) + (-18 -0.931 0.1457) + (-17 -0.964 0.1197) + (-16 -0.999 0.094 ) + (-15 -1.033 0.0689) + (-14.5 -1.05 0.0567) + (-12.01 -0.953 0.0271) + (-11 -0.9 0.0303) + (-9.98 -0.827 0.0287) + (-8.12 -0.536 0.0124) + (-7.62 -0.467 0.0109) + (-7.11 -0.393 0.0092) + (-6.6 -0.323 0.0083) + (-6.5 -0.311 0.0089) + (-6 -0.245 0.0082) + (-5.5 -0.178 0.0074) + (-5 -0.113 0.0069) + (-4.5 -0.048 0.0065) + (-4 0.016 0.0063) + (-3.5 0.08 0.0061) + (-3 0.145 0.0058) + (-2.5 0.208 0.0057) + (-2 0.27 0.0057) + (-1.5 0.333 0.0057) + (-1 0.396 0.0057) + (-0.5 0.458 0.0057) + ( 0 0.521 0.0057) + ( 0.5 0.583 0.0057) + ( 1 0.645 0.0058) + ( 1.5 0.706 0.0058) + ( 2 0.768 0.0059) + ( 2.5 0.828 0.0061) + ( 3 0.888 0.0063) + ( 3.5 0.948 0.0066) + ( 4 0.996 0.0071) + ( 4.5 1.046 0.0079) + ( 5 1.095 0.009 ) + ( 5.5 1.145 0.0103) + ( 6 1.192 0.0113) + ( 6.5 1.239 0.0122) + ( 7 1.283 0.0131) + ( 7.5 1.324 0.0139) + ( 8 1.358 0.0147) + ( 8.5 1.385 0.0158) + ( 9 1.403 0.0181) + ( 9.5 1.401 0.0211) + ( 10 1.358 0.0255) + ( 10.5 1.313 0.0301) + ( 11 1.287 0.0347) + ( 11.5 1.274 0.0401) + ( 12 1.272 0.0468) + ( 12.5 1.273 0.0545) + ( 13 1.273 0.0633) + ( 13.5 1.273 0.0722) + ( 14 1.272 0.0806) + ( 14.5 1.273 0.09 ) + ( 15 1.275 0.0987) + ( 15.5 1.281 0.1075) + ( 16 1.284 0.117 ) + ( 16.5 1.296 0.127 ) + ( 17 1.306 0.1368) + ( 17.5 1.308 0.1464) + ( 18 1.308 0.1562) + ( 18.5 1.308 0.1664) + ( 19 1.308 0.177 ) + ( 19.5 1.307 0.1878) + ( 20 1.311 0.1987) + ( 20.5 1.325 0.21 ) + ( 21 1.324 0.2214) + ( 22 1.277 0.2499) + ( 23 1.229 0.2786) + ( 24 1.182 0.3077) + ( 25 1.136 0.3371) + ( 26 1.093 0.3664) + ( 28 1.017 0.4246) + ( 30 0.962 0.4813) + ( 32 0.937 0.5356) + ( 35 0.947 0.6127) + ( 40 0.95 0.7396) + ( 45 0.928 0.8623) + ( 50 0.884 0.9781) + ( 55 0.821 1.0846) + ( 60 0.74 1.1796) + ( 65 0.646 1.2617) + ( 70 0.54 1.3297) + ( 75 0.425 1.3827) + ( 80 0.304 1.4202) + ( 85 0.179 1.4423) + ( 90 0.053 1.4512) + ( 95 -0.073 1.448 ) + ( 100 -0.198 1.4294) + ( 105 -0.319 1.3954) + ( 110 -0.434 1.3464) + ( 115 -0.541 1.2829) + ( 120 -0.637 1.2057) + ( 125 -0.72 1.1157) + ( 130 -0.787 1.0144) + ( 135 -0.836 0.9033) + ( 140 -0.864 0.7845) + ( 145 -0.869 0.6605) + ( 150 -0.847 0.5346) + ( 155 -0.795 0.4103) + ( 160 -0.711 0.2922) + ( 170 -0.788 0.0969) + ( 175 -0.394 0.0334) + ( 180 0 0.0185) +); diff --git a/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU25_A17 b/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU25_A17 new file mode 100755 index 000000000..56981e639 --- /dev/null +++ b/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU25_A17 @@ -0,0 +1,161 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0202) + (-175.00 0.368 0.0324) + (-170.00 0.735 0.0943) + (-160.00 0.695 0.2848) + (-155.00 0.777 0.4001) + (-150.00 0.828 0.5215) + (-145.00 0.850 0.6447) + (-140.00 0.846 0.7660) + (-135.00 0.818 0.8823) + (-130.00 0.771 0.9911) + (-125.00 0.705 1.0905) + (-120.00 0.624 1.1787) + (-115.00 0.530 1.2545) + (-110.00 0.426 1.3168) + (-105.00 0.314 1.3650) + (-100.00 0.195 1.3984) + ( -95.00 0.073 1.4169) + ( -90.00 -0.050 1.4201) + ( -85.00 -0.173 1.4081) + ( -80.00 -0.294 1.3811) + ( -75.00 -0.409 1.3394) + ( -70.00 -0.518 1.2833) + ( -65.00 -0.617 1.2138) + ( -60.00 -0.706 1.1315) + ( -55.00 -0.780 1.0378) + ( -50.00 -0.839 0.9341) + ( -45.00 -0.879 0.8221) + ( -40.00 -0.898 0.7042) + ( -35.00 -0.893 0.5829) + ( -30.00 -0.862 0.4616) + ( -25.00 -0.803 0.3441) + ( -24.00 -0.792 0.3209) + ( -23.00 -0.789 0.2972) + ( -22.00 -0.792 0.2730) + ( -21.00 -0.801 0.2485) + ( -20.00 -0.815 0.2237) + ( -19.00 -0.833 0.1990) + ( -18.00 -0.854 0.1743) + ( -17.00 -0.879 0.1498) + ( -16.00 -0.905 0.1256) + ( -15.00 -0.932 0.1020) + ( -14.00 -0.959 0.0789) + ( -13.00 -0.985 0.0567) + ( -13.00 -0.985 0.0567) + ( -12.01 -0.953 0.0271) + ( -11.00 -0.900 0.0303) + ( -9.98 -0.827 0.0287) + ( -8.98 -0.753 0.0271) + ( -8.47 -0.691 0.0264) + ( -7.45 -0.555 0.0114) + ( -6.42 -0.413 0.0094) + ( -5.40 -0.271 0.0086) + ( -5.00 -0.220 0.0073) + ( -4.50 -0.152 0.0071) + ( -4.00 -0.084 0.0070) + ( -3.50 -0.018 0.0069) + ( -3.00 0.049 0.0068) + ( -2.50 0.115 0.0068) + ( -2.00 0.181 0.0068) + ( -1.50 0.247 0.0067) + ( -1.00 0.312 0.0067) + ( -0.50 0.377 0.0067) + ( 0.00 0.444 0.0065) + ( 0.50 0.508 0.0065) + ( 1.00 0.573 0.0066) + ( 1.50 0.636 0.0067) + ( 2.00 0.701 0.0068) + ( 2.50 0.765 0.0069) + ( 3.00 0.827 0.0070) + ( 3.50 0.890 0.0071) + ( 4.00 0.952 0.0073) + ( 4.50 1.013 0.0076) + ( 5.00 1.062 0.0079) + ( 6.00 1.161 0.0099) + ( 6.50 1.208 0.0117) + ( 7.00 1.254 0.0132) + ( 7.50 1.301 0.0143) + ( 8.00 1.336 0.0153) + ( 8.50 1.369 0.0165) + ( 9.00 1.400 0.0181) + ( 9.50 1.428 0.0211) + ( 10.00 1.442 0.0262) + ( 10.50 1.427 0.0336) + ( 11.00 1.374 0.0420) + ( 11.50 1.316 0.0515) + ( 12.00 1.277 0.0601) + ( 12.50 1.250 0.0693) + ( 13.00 1.246 0.0785) + ( 13.50 1.247 0.0888) + ( 14.00 1.256 0.1000) + ( 14.50 1.260 0.1108) + ( 15.00 1.271 0.1219) + ( 15.50 1.281 0.1325) + ( 16.00 1.289 0.1433) + ( 16.50 1.294 0.1541) + ( 17.00 1.304 0.1649) + ( 17.50 1.309 0.1754) + ( 18.00 1.315 0.1845) + ( 18.50 1.320 0.1953) + ( 19.00 1.330 0.2061) + ( 19.50 1.343 0.2170) + ( 20.00 1.354 0.2280) + ( 20.50 1.359 0.2390) + ( 21.00 1.360 0.2536) + ( 22.00 1.325 0.2814) + ( 23.00 1.288 0.3098) + ( 24.00 1.251 0.3386) + ( 25.00 1.215 0.3678) + ( 26.00 1.181 0.3972) + ( 28.00 1.120 0.4563) + ( 30.00 1.076 0.5149) + ( 32.00 1.056 0.5720) + ( 35.00 1.066 0.6548) + ( 40.00 1.064 0.7901) + ( 45.00 1.035 0.9190) + ( 50.00 0.980 1.0378) + ( 55.00 0.904 1.1434) + ( 60.00 0.810 1.2333) + ( 65.00 0.702 1.3055) + ( 70.00 0.582 1.3587) + ( 75.00 0.456 1.3922) + ( 80.00 0.326 1.4063) + ( 85.00 0.197 1.4042) + ( 90.00 0.072 1.3985) + ( 95.00 -0.050 1.3973) + ( 100.00 -0.170 1.3810) + ( 105.00 -0.287 1.3498) + ( 110.00 -0.399 1.3041) + ( 115.00 -0.502 1.2442) + ( 120.00 -0.596 1.1709) + ( 125.00 -0.677 1.0852) + ( 130.00 -0.743 0.9883) + ( 135.00 -0.792 0.8818) + ( 140.00 -0.821 0.7676) + ( 145.00 -0.826 0.6481) + ( 150.00 -0.806 0.5264) + ( 155.00 -0.758 0.4060) + ( 160.00 -0.679 0.2912) + ( 170.00 -0.735 0.0995) + ( 175.00 -0.368 0.0356) + ( 180.00 0.000 0.0202) +); diff --git a/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU30_A17 b/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU30_A17 new file mode 100755 index 000000000..35fb11988 --- /dev/null +++ b/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU30_A17 @@ -0,0 +1,163 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0267) + (-175.00 0.274 0.0370) + (-170.00 0.547 0.0968) + (-160.00 0.685 0.2876) + (-155.00 0.766 0.4025) + (-150.00 0.816 0.5232) + (-145.00 0.836 0.6454) + (-140.00 0.832 0.7656) + (-135.00 0.804 0.8807) + (-130.00 0.756 0.9882) + (-125.00 0.690 1.0861) + (-120.00 0.609 1.1730) + (-115.00 0.515 1.2474) + (-110.00 0.411 1.3084) + (-105.00 0.300 1.3552) + (-100.00 0.182 1.3875) + ( -95.00 0.061 1.4048) + ( -90.00 -0.061 1.4070) + ( -85.00 -0.183 1.3941) + ( -80.00 -0.302 1.3664) + ( -75.00 -0.416 1.3240) + ( -70.00 -0.523 1.2676) + ( -65.00 -0.622 1.1978) + ( -60.00 -0.708 1.1156) + ( -55.00 -0.781 1.0220) + ( -50.00 -0.838 0.9187) + ( -45.00 -0.877 0.8074) + ( -40.00 -0.895 0.6904) + ( -35.00 -0.889 0.5703) + ( -30.00 -0.858 0.4503) + ( -25.00 -0.832 0.3357) + ( -24.00 -0.852 0.3147) + ( -23.00 -0.882 0.2946) + ( -22.00 -0.919 0.2752) + ( -21.00 -0.963 0.2566) + ( -20.00 -1.013 0.2388) + ( -19.00 -1.067 0.2218) + ( -18.00 -1.125 0.2056) + ( -17.00 -1.185 0.1901) + ( -16.00 -1.245 0.1754) + ( -15.25 -1.290 0.1649) + ( -14.24 -1.229 0.1461) + ( -13.24 -1.148 0.1263) + ( -12.22 -1.052 0.1051) + ( -11.22 -0.965 0.0886) + ( -10.19 -0.867 0.0740) + ( -9.70 -0.822 0.0684) + ( -9.18 -0.769 0.0605) + ( -8.18 -0.756 0.0270) + ( -7.19 -0.690 0.0180) + ( -6.65 -0.616 0.0166) + ( -6.13 -0.542 0.0152) + ( -6.00 -0.525 0.0117) + ( -5.50 -0.451 0.0105) + ( -5.00 -0.382 0.0097) + ( -4.50 -0.314 0.0092) + ( -4.00 -0.251 0.0091) + ( -3.50 -0.189 0.0089) + ( -3.00 -0.120 0.0089) + ( -2.50 -0.051 0.0088) + ( -2.00 0.017 0.0088) + ( -1.50 0.085 0.0088) + ( -1.00 0.152 0.0088) + ( -0.50 0.219 0.0088) + ( 0.00 0.288 0.0087) + ( 0.50 0.354 0.0087) + ( 1.00 0.421 0.0088) + ( 1.50 0.487 0.0089) + ( 2.00 0.554 0.0090) + ( 2.50 0.619 0.0091) + ( 3.00 0.685 0.0092) + ( 3.50 0.749 0.0093) + ( 4.00 0.815 0.0095) + ( 4.50 0.879 0.0096) + ( 5.00 0.944 0.0097) + ( 5.50 1.008 0.0099) + ( 6.00 1.072 0.0101) + ( 6.50 1.135 0.0103) + ( 7.00 1.197 0.0107) + ( 7.50 1.256 0.0112) + ( 8.00 1.305 0.0125) + ( 9.00 1.390 0.0155) + ( 9.50 1.424 0.0171) + ( 10.00 1.458 0.0192) + ( 10.50 1.488 0.0219) + ( 11.00 1.512 0.0255) + ( 11.50 1.533 0.0307) + ( 12.00 1.549 0.0370) + ( 12.50 1.558 0.0452) + ( 13.00 1.470 0.0630) + ( 13.50 1.398 0.0784) + ( 14.00 1.354 0.0931) + ( 14.50 1.336 0.1081) + ( 15.00 1.333 0.1239) + ( 15.50 1.326 0.1415) + ( 16.00 1.329 0.1592) + ( 16.50 1.326 0.1743) + ( 17.00 1.321 0.1903) + ( 17.50 1.331 0.2044) + ( 18.00 1.333 0.2186) + ( 18.50 1.340 0.2324) + ( 19.00 1.362 0.2455) + ( 19.50 1.382 0.2584) + ( 20.00 1.398 0.2689) + ( 20.50 1.426 0.2814) + ( 21.00 1.437 0.2943) + ( 22.00 1.418 0.3246) + ( 23.00 1.397 0.3557) + ( 24.00 1.376 0.3875) + ( 25.00 1.354 0.4198) + ( 26.00 1.332 0.4524) + ( 28.00 1.293 0.5183) + ( 30.00 1.265 0.5843) + ( 32.00 1.253 0.6492) + ( 35.00 1.264 0.7438) + ( 40.00 1.258 0.8970) + ( 45.00 1.217 1.0402) + ( 50.00 1.146 1.1686) + ( 55.00 1.049 1.2779) + ( 60.00 0.932 1.3647) + ( 65.00 0.799 1.4267) + ( 70.00 0.657 1.4621) + ( 75.00 0.509 1.4708) + ( 80.00 0.362 1.4544) + ( 85.00 0.221 1.4196) + ( 90.00 0.092 1.3938) + ( 95.00 -0.030 1.3943) + ( 100.00 -0.150 1.3798) + ( 105.00 -0.267 1.3504) + ( 110.00 -0.379 1.3063) + ( 115.00 -0.483 1.2481) + ( 120.00 -0.578 1.1763) + ( 125.00 -0.660 1.0919) + ( 130.00 -0.727 0.9962) + ( 135.00 -0.777 0.8906) + ( 140.00 -0.807 0.7771) + ( 145.00 -0.815 0.6581) + ( 150.00 -0.797 0.5364) + ( 155.00 -0.750 0.4157) + ( 160.00 -0.673 0.3000) + ( 170.00 -0.547 0.1051) + ( 175.00 -0.274 0.0388) + ( 180.00 0.000 0.0267) +); diff --git a/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU35_A17 b/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU35_A17 new file mode 100755 index 000000000..041013e24 --- /dev/null +++ b/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU35_A17 @@ -0,0 +1,155 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0407) + (-175.00 0.223 0.0507) + (-170.00 0.405 0.1055) + (-160.00 0.658 0.2982) + (-155.00 0.733 0.4121) + (-150.00 0.778 0.5308) + (-145.00 0.795 0.6503) + (-140.00 0.787 0.7672) + (-135.00 0.757 0.8785) + (-130.00 0.708 0.9819) + (-125.00 0.641 1.0756) + (-120.00 0.560 1.1580) + (-115.00 0.467 1.2280) + (-110.00 0.365 1.2847) + (-105.00 0.255 1.3274) + (-100.00 0.139 1.3557) + ( -95.00 0.021 1.3692) + ( -90.00 -0.098 1.3680) + ( -85.00 -0.216 1.3521) + ( -80.00 -0.331 1.3218) + ( -75.00 -0.441 1.2773) + ( -70.00 -0.544 1.2193) + ( -65.00 -0.638 1.1486) + ( -60.00 -0.720 1.0660) + ( -55.00 -0.788 0.9728) + ( -50.00 -0.840 0.8705) + ( -45.00 -0.875 0.7611) + ( -40.00 -0.889 0.6466) + ( -35.00 -0.880 0.5299) + ( -30.00 -0.846 0.4141) + ( -25.00 -0.784 0.3030) + ( -24.00 -0.768 0.2817) + ( -23.00 -0.751 0.2608) + ( -22.00 -0.733 0.2404) + ( -21.00 -0.714 0.2205) + ( -20.00 -0.693 0.2011) + ( -19.00 -0.671 0.1822) + ( -18.00 -0.648 0.1640) + ( -17.00 -0.624 0.1465) + ( -16.00 -0.601 0.1300) + ( -15.00 -0.579 0.1145) + ( -14.00 -0.559 0.1000) + ( -13.00 -0.539 0.0867) + ( -12.00 -0.519 0.0744) + ( -11.00 -0.499 0.0633) + ( -10.00 -0.480 0.0534) + ( -5.54 -0.385 0.0245) + ( -5.04 -0.359 0.0225) + ( -4.54 -0.360 0.0196) + ( -4.04 -0.355 0.0174) + ( -3.54 -0.307 0.0162) + ( -3.04 -0.246 0.0144) + ( -3.00 -0.240 0.0240) + ( -2.50 -0.163 0.0188) + ( -2.00 -0.091 0.0160) + ( -1.50 -0.019 0.0137) + ( -1.00 0.052 0.0118) + ( -0.50 0.121 0.0104) + ( 0.00 0.196 0.0094) + ( 0.50 0.265 0.0096) + ( 1.00 0.335 0.0098) + ( 1.50 0.404 0.0099) + ( 2.00 0.472 0.0100) + ( 2.50 0.540 0.0102) + ( 3.00 0.608 0.0103) + ( 3.50 0.674 0.0104) + ( 4.00 0.742 0.0105) + ( 4.50 0.809 0.0107) + ( 5.00 0.875 0.0108) + ( 5.50 0.941 0.0109) + ( 6.00 1.007 0.0110) + ( 6.50 1.071 0.0113) + ( 7.00 1.134 0.0115) + ( 7.50 1.198 0.0117) + ( 8.00 1.260 0.0120) + ( 8.50 1.318 0.0126) + ( 9.00 1.368 0.0133) + ( 9.50 1.422 0.0143) + ( 10.00 1.475 0.0156) + ( 10.50 1.523 0.0174) + ( 11.00 1.570 0.0194) + ( 11.50 1.609 0.0227) + ( 12.00 1.642 0.0269) + ( 12.50 1.675 0.0319) + ( 13.00 1.700 0.0398) + ( 13.50 1.717 0.0488) + ( 14.00 1.712 0.0614) + ( 14.50 1.703 0.0786) + ( 15.50 1.671 0.1173) + ( 16.00 1.649 0.1377) + ( 16.50 1.621 0.1600) + ( 17.00 1.598 0.1814) + ( 17.50 1.571 0.2042) + ( 18.00 1.549 0.2316) + ( 19.00 1.544 0.2719) + ( 19.50 1.549 0.2906) + ( 20.00 1.565 0.3085) + ( 21.00 1.565 0.3447) + ( 22.00 1.563 0.3820) + ( 23.00 1.558 0.4203) + ( 24.00 1.552 0.4593) + ( 25.00 1.546 0.4988) + ( 26.00 1.539 0.5387) + ( 28.00 1.527 0.6187) + ( 30.00 1.522 0.6978) + ( 32.00 1.529 0.7747) + ( 35.00 1.544 0.8869) + ( 40.00 1.529 1.0671) + ( 45.00 1.471 1.2319) + ( 50.00 1.376 1.3747) + ( 55.00 1.249 1.4899) + ( 60.00 1.097 1.5728) + ( 65.00 0.928 1.6202) + ( 70.00 0.750 1.6302) + ( 75.00 0.570 1.6031) + ( 80.00 0.396 1.5423) + ( 85.00 0.237 1.4598) + ( 90.00 0.101 1.4041) + ( 95.00 -0.022 1.4053) + ( 100.00 -0.143 1.3914) + ( 105.00 -0.261 1.3625) + ( 110.00 -0.374 1.3188) + ( 115.00 -0.480 1.2608) + ( 120.00 -0.575 1.1891) + ( 125.00 -0.659 1.1046) + ( 130.00 -0.727 1.0086) + ( 135.00 -0.778 0.9025) + ( 140.00 -0.809 0.7883) + ( 145.00 -0.818 0.6684) + ( 150.00 -0.800 0.5457) + ( 155.00 -0.754 0.4236) + ( 160.00 -0.677 0.3066) + ( 170.00 -0.417 0.1085) + ( 175.00 -0.229 0.0510) + ( 180.00 0.000 0.0407) +); diff --git a/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU40_A17 b/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU40_A17 new file mode 100755 index 000000000..6138a98dd --- /dev/null +++ b/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU40_A17 @@ -0,0 +1,156 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0602) + (-175.00 0.218 0.0699) + (-170.00 0.397 0.1107) + (-160.00 0.642 0.3045) + (-155.00 0.715 0.4179) + (-150.00 0.757 0.5355) + (-145.00 0.772 0.6535) + (-140.00 0.762 0.7685) + (-135.00 0.731 0.8777) + (-130.00 0.680 0.9788) + (-125.00 0.613 1.0700) + (-120.00 0.532 1.1499) + (-115.00 0.439 1.2174) + (-110.00 0.337 1.2716) + (-105.00 0.228 1.3118) + (-100.00 0.114 1.3378) + ( -95.00 -0.002 1.3492) + ( -90.00 -0.120 1.3460) + ( -85.00 -0.236 1.3283) + ( -80.00 -0.349 1.2964) + ( -75.00 -0.456 1.2507) + ( -70.00 -0.557 1.1918) + ( -65.00 -0.647 1.1204) + ( -60.00 -0.727 1.0376) + ( -55.00 -0.792 0.9446) + ( -50.00 -0.842 0.8429) + ( -45.00 -0.874 0.7345) + ( -40.00 -0.886 0.6215) + ( -35.00 -0.875 0.5067) + ( -30.00 -0.839 0.3932) + ( -25.00 -0.777 0.2849) + ( -24.00 -0.761 0.2642) + ( -23.00 -0.744 0.2440) + ( -22.00 -0.725 0.2242) + ( -21.00 -0.706 0.2049) + ( -20.00 -0.685 0.1861) + ( -19.00 -0.662 0.1687) + ( -18.00 -0.635 0.1533) + ( -17.00 -0.605 0.1398) + ( -16.00 -0.571 0.1281) + ( -15.00 -0.534 0.1183) + ( -14.00 -0.494 0.1101) + ( -13.00 -0.452 0.1036) + ( -12.00 -0.407 0.0986) + ( -11.00 -0.360 0.0951) + ( -10.00 -0.311 0.0931) + ( -8.00 -0.208 0.0930) + ( -6.00 -0.111 0.0689) + ( -5.50 -0.090 0.0614) + ( -5.00 -0.072 0.0547) + ( -4.50 -0.065 0.0480) + ( -4.00 -0.054 0.0411) + ( -3.50 -0.017 0.0349) + ( -3.00 0.003 0.0299) + ( -2.50 0.014 0.0255) + ( -2.00 0.009 0.0198) + ( -1.50 0.004 0.0164) + ( -1.00 0.036 0.0147) + ( -0.50 0.073 0.0137) + ( 0.00 0.137 0.0113) + ( 0.50 0.213 0.0114) + ( 1.00 0.292 0.0118) + ( 1.50 0.369 0.0122) + ( 2.00 0.444 0.0124) + ( 2.50 0.514 0.0124) + ( 3.00 0.580 0.0123) + ( 3.50 0.645 0.0120) + ( 4.00 0.710 0.0119) + ( 4.50 0.776 0.0122) + ( 5.00 0.841 0.0125) + ( 5.50 0.904 0.0129) + ( 6.00 0.967 0.0135) + ( 6.50 1.027 0.0144) + ( 7.00 1.084 0.0158) + ( 7.50 1.140 0.0174) + ( 8.00 1.193 0.0198) + ( 8.50 1.242 0.0231) + ( 9.00 1.287 0.0275) + ( 9.50 1.333 0.0323) + ( 10.00 1.368 0.0393) + ( 10.50 1.400 0.0475) + ( 11.00 1.425 0.0580) + ( 11.50 1.449 0.0691) + ( 12.00 1.473 0.0816) + ( 12.50 1.494 0.0973) + ( 13.00 1.513 0.1129) + ( 13.50 1.538 0.1288) + ( 14.50 1.587 0.1650) + ( 15.00 1.614 0.1845) + ( 15.50 1.631 0.2052) + ( 16.00 1.649 0.2250) + ( 16.50 1.666 0.2467) + ( 17.00 1.681 0.2684) + ( 17.50 1.699 0.2900) + ( 18.00 1.719 0.3121) + ( 19.00 1.751 0.3554) + ( 19.50 1.767 0.3783) + ( 20.50 1.798 0.4212) + ( 21.00 1.810 0.4415) + ( 22.00 1.830 0.4830) + ( 23.00 1.847 0.5257) + ( 24.00 1.861 0.5694) + ( 25.00 1.872 0.6141) + ( 26.00 1.881 0.6593) + ( 28.00 1.894 0.7513) + ( 30.00 1.904 0.8441) + ( 32.00 1.915 0.9364) + ( 35.00 1.929 1.0722) + ( 40.00 1.903 1.2873) + ( 45.00 1.820 1.4796) + ( 50.00 1.690 1.6401) + ( 55.00 1.522 1.7609) + ( 60.00 1.323 1.8360) + ( 65.00 1.106 1.8614) + ( 70.00 0.880 1.8347) + ( 75.00 0.658 1.7567) + ( 80.00 0.449 1.6334) + ( 85.00 0.267 1.4847) + ( 90.00 0.124 1.3879) + ( 95.00 0.002 1.3912) + ( 100.00 -0.118 1.3795) + ( 105.00 -0.235 1.3528) + ( 110.00 -0.348 1.3114) + ( 115.00 -0.453 1.2557) + ( 120.00 -0.549 1.1864) + ( 125.00 -0.633 1.1041) + ( 130.00 -0.702 1.0102) + ( 135.00 -0.754 0.9060) + ( 140.00 -0.787 0.7935) + ( 145.00 -0.797 0.6750) + ( 150.00 -0.782 0.5532) + ( 155.00 -0.739 0.4318) + ( 160.00 -0.664 0.3147) + ( 170.00 -0.410 0.1144) + ( 175.00 -0.226 0.0702) + ( 180.00 0.000 0.0602) +); diff --git a/exampleCases/example.ADM.ssc/constant/airfoilProperties/NACA64_A17 b/exampleCases/example.ADM.ssc/constant/airfoilProperties/NACA64_A17 new file mode 100755 index 000000000..11fa618d0 --- /dev/null +++ b/exampleCases/example.ADM.ssc/constant/airfoilProperties/NACA64_A17 @@ -0,0 +1,147 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0198) + (-175.00 0.374 0.0341) + (-170.00 0.749 0.0955) + (-160.00 0.659 0.2807) + (-155.00 0.736 0.3919) + (-150.00 0.783 0.5086) + (-145.00 0.803 0.6267) + (-140.00 0.798 0.7427) + (-135.00 0.771 0.8537) + (-130.00 0.724 0.9574) + (-125.00 0.660 1.0519) + (-120.00 0.581 1.1355) + (-115.00 0.491 1.2070) + (-110.00 0.390 1.2656) + (-105.00 0.282 1.3104) + (-100.00 0.169 1.3410) + ( -95.00 0.052 1.3572) + ( -90.00 -0.067 1.3587) + ( -85.00 -0.184 1.3456) + ( -80.00 -0.299 1.3181) + ( -75.00 -0.409 1.2765) + ( -70.00 -0.512 1.2212) + ( -65.00 -0.606 1.1532) + ( -60.00 -0.689 1.0731) + ( -55.00 -0.759 0.9822) + ( -50.00 -0.814 0.8820) + ( -45.00 -0.850 0.7742) + ( -40.00 -0.866 0.6610) + ( -35.00 -0.860 0.5451) + ( -30.00 -0.829 0.4295) + ( -25.00 -0.853 0.3071) + ( -24.00 -0.870 0.2814) + ( -23.00 -0.890 0.2556) + ( -22.00 -0.911 0.2297) + ( -21.00 -0.934 0.2040) + ( -20.00 -0.958 0.1785) + ( -19.00 -0.982 0.1534) + ( -18.00 -1.005 0.1288) + ( -17.00 -1.082 0.1037) + ( -16.00 -1.113 0.0786) + ( -15.00 -1.105 0.0535) + ( -14.00 -1.078 0.0283) + ( -13.50 -1.053 0.0158) + ( -13.00 -1.015 0.0151) + ( -12.00 -0.904 0.0134) + ( -11.00 -0.807 0.0121) + ( -10.00 -0.711 0.0111) + ( -9.00 -0.595 0.0099) + ( -8.00 -0.478 0.0091) + ( -7.00 -0.375 0.0086) + ( -6.00 -0.264 0.0082) + ( -5.00 -0.151 0.0079) + ( -4.00 -0.017 0.0072) + ( -3.00 0.088 0.0064) + ( -2.00 0.213 0.0054) + ( -1.00 0.328 0.0052) + ( 0.00 0.442 0.0052) + ( 1.00 0.556 0.0052) + ( 2.00 0.670 0.0053) + ( 3.00 0.784 0.0053) + ( 4.00 0.898 0.0054) + ( 5.00 1.011 0.0058) + ( 6.00 1.103 0.0091) + ( 7.00 1.181 0.0113) + ( 8.00 1.257 0.0124) + ( 8.50 1.293 0.0130) + ( 9.00 1.326 0.0136) + ( 9.50 1.356 0.0143) + ( 10.00 1.382 0.0150) + ( 10.50 1.400 0.0267) + ( 11.00 1.415 0.0383) + ( 11.50 1.425 0.0498) + ( 12.00 1.434 0.0613) + ( 12.50 1.443 0.0727) + ( 13.00 1.451 0.0841) + ( 13.50 1.453 0.0954) + ( 14.00 1.448 0.1065) + ( 14.50 1.444 0.1176) + ( 15.00 1.445 0.1287) + ( 15.50 1.447 0.1398) + ( 16.00 1.448 0.1509) + ( 16.50 1.444 0.1619) + ( 17.00 1.438 0.1728) + ( 17.50 1.439 0.1837) + ( 18.00 1.448 0.1947) + ( 18.50 1.452 0.2057) + ( 19.00 1.448 0.2165) + ( 19.50 1.438 0.2272) + ( 20.00 1.428 0.2379) + ( 21.00 1.401 0.2590) + ( 22.00 1.359 0.2799) + ( 23.00 1.300 0.3004) + ( 24.00 1.220 0.3204) + ( 25.00 1.168 0.3377) + ( 26.00 1.116 0.3554) + ( 28.00 1.015 0.3916) + ( 30.00 0.926 0.4294) + ( 32.00 0.855 0.4690) + ( 35.00 0.800 0.5324) + ( 40.00 0.804 0.6452) + ( 45.00 0.793 0.7573) + ( 50.00 0.763 0.8664) + ( 55.00 0.717 0.9708) + ( 60.00 0.656 1.0693) + ( 65.00 0.582 1.1606) + ( 70.00 0.495 1.2438) + ( 75.00 0.398 1.3178) + ( 80.00 0.291 1.3809) + ( 85.00 0.176 1.4304) + ( 90.00 0.053 1.4565) + ( 95.00 -0.074 1.4533) + ( 100.00 -0.199 1.4345) + ( 105.00 -0.321 1.4004) + ( 110.00 -0.436 1.3512) + ( 115.00 -0.543 1.2874) + ( 120.00 -0.640 1.2099) + ( 125.00 -0.723 1.1196) + ( 130.00 -0.790 1.0179) + ( 135.00 -0.840 0.9064) + ( 140.00 -0.868 0.7871) + ( 145.00 -0.872 0.6627) + ( 150.00 -0.850 0.5363) + ( 155.00 -0.798 0.4116) + ( 160.00 -0.714 0.2931) + ( 170.00 -0.749 0.0971) + ( 175.00 -0.374 0.0334) + ( 180.00 0.000 0.0198) +); diff --git a/exampleCases/example.ADM.ssc/constant/g b/exampleCases/example.ADM.ssc/constant/g new file mode 100755 index 000000000..74304427f --- /dev/null +++ b/exampleCases/example.ADM.ssc/constant/g @@ -0,0 +1,22 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class uniformDimensionedVectorField; + location "constant"; + object g; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 1 -2 0 0 0 0]; +value ( 0.0 0.0 -9.81 ); + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/constant/polyMesh/blockMeshDict b/exampleCases/example.ADM.ssc/constant/polyMesh/blockMeshDict new file mode 100755 index 000000000..575f61147 --- /dev/null +++ b/exampleCases/example.ADM.ssc/constant/polyMesh/blockMeshDict @@ -0,0 +1,105 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object blockMeshDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../../setUp" + + + + +convertToMeters 1.0; + +vertices +( + ( $xMin $yMin $zMin) + ( $xMax $yMin $zMin) + ( $xMax $yMax $zMin) + ( $xMin $yMax $zMin) + ( $xMin $yMin $zMax) + ( $xMax $yMin $zMax) + ( $xMax $yMax $zMax) + ( $xMin $yMax $zMax) +); + +blocks +( + hex (0 1 2 3 4 5 6 7) ($nx $ny $nz) simpleGrading (1 1 1) +); + +edges +( +); + +boundary +( + lower + { + type wall; + faces + ( + (0 3 2 1) + ); + } + upper + { + type patch; + faces + ( + (4 5 6 7) + ); + } + west + { + type cyclic; + neighbourPatch east; + faces + ( + (0 4 7 3) + ); + } + east + { + type cyclic; + neighbourPatch west; + faces + ( + (1 2 6 5) + ); + } + north + { + type cyclic; + neighbourPatch south; + faces + ( + (3 7 6 2) + ); + } + south + { + type cyclic; + neighbourPatch north; + faces + ( + (0 1 5 4) + ); + } +); + +mergePatchPairs +( +); + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/constant/transportProperties b/exampleCases/example.ADM.ssc/constant/transportProperties new file mode 100755 index 000000000..3ee719c86 --- /dev/null +++ b/exampleCases/example.ADM.ssc/constant/transportProperties @@ -0,0 +1,39 @@ +/*---------------------------------------------------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.openfoam.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + + root ""; + case ""; + instance ""; + local ""; + + class dictionary; + object transportProperties; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +transportModel Newtonian; + +// Molecular viscosity +nu nu [0 2 -1 0 0 0 0] $nu; + +// Reference temperature +TRef TRef [0 0 0 1 0 0 0] $TRef; + +// Prandtl numbers +Pr Pr [0 0 0 0 0 0 0] $Pr; +Prt Prt [0 0 0 0 0 0 0] $Prt; +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/constant/turbineArrayProperties b/exampleCases/example.ADM.ssc/constant/turbineArrayProperties new file mode 100755 index 000000000..752cdbbee --- /dev/null +++ b/exampleCases/example.ADM.ssc/constant/turbineArrayProperties @@ -0,0 +1,67 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object turbineProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +globalProperties +{ + outputControl "timeStep"; + outputInterval 1; +} + +turbine0 +{ + turbineType "NREL5MWRef"; + baseLocation (1000.0 1500.0 0.0); + nRadial 64; + azimuthMaxDis 2.0; + nAvgSector 1; + pointDistType "uniform"; + pointInterpType "linear"; + bladeUpdateType "oldPosition"; + epsilon 20.0; + forceScalar 1.0; + inflowVelocityScalar 0.94; + tipRootLossCorrType "Glauert"; + rotationDir "cw"; + Azimuth 0.0; + RotSpeed 9.15519863; + TorqueGen 0.0; + Pitch 0.0; + NacYaw 270.0; + fluidDensity 1.225; +} + +turbine1 +{ + turbineType "NREL5MWRef"; + baseLocation (1500.0 1500.0 0.0); + nRadial 64; + azimuthMaxDis 2.0; + nAvgSector 1; + pointDistType "uniform"; + pointInterpType "linear"; + bladeUpdateType "oldPosition"; + epsilon 20.0; + forceScalar 1.0; + inflowVelocityScalar 0.94; + tipRootLossCorrType "Glauert"; + rotationDir "cw"; + Azimuth 0.0; + RotSpeed 9.15519863; + TorqueGen 0.0; + Pitch 0.0; + NacYaw 270.0; + fluidDensity 1.225; +} diff --git a/exampleCases/example.ADM.ssc/constant/turbineProperties/NREL5MWRef b/exampleCases/example.ADM.ssc/constant/turbineProperties/NREL5MWRef new file mode 100755 index 000000000..c8b36798f --- /dev/null +++ b/exampleCases/example.ADM.ssc/constant/turbineProperties/NREL5MWRef @@ -0,0 +1,122 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object turbineProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +NumBl 3; +TipRad 63.0; +HubRad 1.5; +UndSling 0.0; +OverHang -5.01910; +NacelleLength 8; +NacelleFrontalArea 2; +NacelleCd 0.5; +TowerHt 87.6; +Twr2Shft 1.96256; +ShftTilt -5.0; +PreCone (-2.5 -2.5 -2.5); +GBRatio 97.0; +GBEfficiency 1.0; +GenEfficiency 0.944; +RatedRotSpeed 12.1; +GenIner 534.116; +HubIner 115.926E3; +BladeIner 11.776047E6; +GenTorqueControllerType "fiveRegion"; +//GenTorqueControllerType "speedTorqueTable"; +//GenTorqueControllerType "none"; +BladePitchControllerType "PID"; +//BladePitchControllerType "none"; +NacYawControllerType "none"; +RotSpeedLimiter false; +GenTorqueRateLimiter true; +NacYawRateLimiter true; +BladePitchRateLimiter true; +SpeedFilterCornerFrequency 2.0; + + +GenTorqueControllerParams +{ + RateLimitGenTorque 15.0E3; + SpeedTorqueTable + ( + // gen speed (RPM) gen torque (N-m) + ( 670.00 0.0 ) + ( 871.00 20000.0 ) + ( 1161.96 32000.0 ) + ( 1173.70 43093.6 ) + ); + CutInGenSpeed 670.0; + Region2StartGenSpeed 871.0; + Region2EndGenSpeed 1161.963; + CutInGenTorque 0.0; + RatedGenTorque 43.09355E3; + KGen 2.55764E-2; +} + +BladePitchControllerParams +{ + RateLimitBladePitch 8.000; + PitchMin 0.000; + PitchMax 90.000; + PitchK 6.302336; + PitchControlKP 1.82620057; + PitchControlKI 0.78265750; + PitchControlKD 0.000; +} + +NacYawControllerParams +{ + RateLimitNacYaw 2.0; +} + + + + +Airfoils +( + "Cylinder1" + "Cylinder2" + "DU40_A17" + "DU35_A17" + "DU30_A17" + "DU25_A17" + "DU21_A17" + "NACA64_A17" +); + + + +BladeData +( +// radius(m) c(m) twist(deg) airfoil + (2.8667 3.542 13.308 0) + (5.6 3.854 13.308 0) + (8.3333 4.167 13.308 1) + (11.75 4.557 13.308 2) + (15.85 4.652 11.48 3) + (19.95 4.458 10.162 3) + (24.05 4.249 9.011 4) + (28.15 4.007 7.795 5) + (32.25 3.748 6.544 5) + (36.35 3.502 5.361 6) + (40.45 3.256 4.188 6) + (44.55 3.01 3.125 7) + (48.65 2.764 2.319 7) + (52.75 2.518 1.526 7) + (56.1667 2.313 0.863 7) + (58.9 2.086 0.37 7) + (61.6333 1.419 0.106 7) +); diff --git a/exampleCases/example.ADM.ssc/constant/turbulenceProperties b/exampleCases/example.ADM.ssc/constant/turbulenceProperties new file mode 100755 index 000000000..f8a545e0c --- /dev/null +++ b/exampleCases/example.ADM.ssc/constant/turbulenceProperties @@ -0,0 +1,22 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object turbulenceProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +// simulationType RASModel; + simulationType LESModel; +// simulationType laminar; + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/runscript.preprocess b/exampleCases/example.ADM.ssc/runscript.preprocess new file mode 100755 index 000000000..8d2aa51f7 --- /dev/null +++ b/exampleCases/example.ADM.ssc/runscript.preprocess @@ -0,0 +1,170 @@ +#!/bin/bash +#PBS -l walltime=4:00:00 +#PBS -l procs=1 +#PBS -A ssc +#PBS -q short + + + + + +# User Input. +OpenFOAMversion=2.4.x # OpenFOAM version + +startTime=20000 # Start time +precursorDir=/projects/ssc/flowLibrary/neutral_3kmx3kmx1km + +updateBCType=1 # Boolean for whether or not the boundary condition types will be updated over + # what is in the initial conditions files. Leave it 0 for precursors. +inflowDir='west' # For inflow/outflow cases, specify the inflow direction. Choices are 'west', + # 'east', 'south', 'west', 'southWest', 'northWest', 'southEast', and + # 'northEast'. There is a 'cyclic' option too in case you need to change + # back to cyclic or simply update the number of boundary face entries. +localRefinementLevels=0 # Number of levels of local refinement (requires system/topoSetDict and + # system/refineHexMeshDict). +globalRefinementLevels=0 # Number of levels of global refinement. +cores=1 # Enter the number of cores you will preprocess on. + + + + + + +# Define some functions for mesh refinement. +# Local refinement performed on one core. +refineMeshLocal() +{ + i=$1 + while [ $i -ge 1 ] + do + echo " -Performing level $i local refinement with topoSet/refineHexMesh" + echo " *selecting cells to refine..." + topoSet -dict system/topoSetDict.local.$i > log.topoSet.local.$i 2>&1 + + echo " *refining cells..." + refineHexMesh local -overwrite > log.refineHexMesh.local.$i 2>&1 + + let i=i-1 + done +} + +# Global refinement performed in parallel. +refineMeshGlobal() +{ + i=1 + while [ $i -le $1 ] + do + echo " -Performing level $i global refinement with refineMesh" + echo " *refining cells..." + mpirun -np $cores refineMesh -parallel -overwrite > log.refineMesh.global.$i 2>&1 + + let i=i+1 + done +} + + +# If running in parallel, cd to job launch directory +if [ $cores -gt 1 ] + then + cd $PBS_O_WORKDIR +fi + + +# Source the bash profile and then call the appropriate OpenFOAM version function +# so that all the modules and environment variables get set. +echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." +source $HOME/.bash_profile +OpenFOAM-$OpenFOAMversion + + +# Copy the controlDict.1 (assuming this is the one the actual solver will start +# out with) to controlDict. OpenFOAM reads "controlDict", not the numbered ones. +echo "Getting the control dictionary ready..." +cp system/controlDict.1 system/controlDict + + +# Copy the "clean" .original initial fields to a working copy. OpenFOAM does not +# read the ".original" initial fields--that's why they remain clean. +echo "Getting the initial condition directory from the precursor..." +rm -rf $startTime +cp -rf $precursorDir/$startTime $startTime + + +# Build the mesh. +echo "Copy the the base mesh from the precursor..." +rm -rf constant/polyMesh +cp -rf $precursorDir/constant/polyMesh ./constant + + +# Get the inflow data linked up. +echo "Linking the inflow data with this directory..." +ln -s $precursorDir/drivingData/boundaryData ./constant + + +# Get the driving source terms linked up. +echo "Linking the driving source terms with this directory..." +ln -s $precursorDir/drivingData/sources ./constant + + +# The initial fields come from the precursor which is periodic on all sides. The turbine +# case has inflow and outflow. Call the changeDictionary utility to update for inflow/outflow.. +if [ $updateBCType -eq 1 ] + then + echo "Using changeDictionary to update boundary conditions..." + changeDictionary -dict system/changeDictionaryDict.updateBCs.$inflowDir -time $startTime -enableFunctionEntries > log.changeDictionary.updateBCs.$inflowDir.1 2>&1 +fi + + +# Do serial local refinement +echo "Using refineHexMesh to perform " $localRefinementLevels " of local refinement..." +refineMeshLocal $localRefinementLevels + + +# If running in paralle from this point forward, then do the following: +if [ $cores -gt 1 ] + then + # Decompose the mesh and solution files (serial) + echo "Using decomposePar to decompose the problem for parallel processing..." + decomposePar -cellDist -force -time $startTime > log.decomposePar 2>&1 + + # Check the mesh + echo "Running checkMesh to report mesh diagnostics..." + mpirun -np $cores checkMesh -parallel > log.checkMesh.1 2>&1 + + # Perform global refinement to desired resolution. + echo "Using refineMesh to perform " $globalRefinementLevels " of global refinement..." + refineMeshGlobal $globalRefinementLevels + + # The mesh got globally refined, but the solution file did not, so + # the boundary fields may not have the correct number of entries. + # Use the changeDictionary utility to overwrite the spatially varying + # boundary data to a uniform single value. + if [ $updateBCType -eq 1 ] + then + echo "Using changeDictionary to ensure that the boundaries have the correct number of faces..." + mpirun -np $cores changeDictionary -dict system/changeDictionaryDict.updateBCs.$inflowDir -time $startTime -enableFunctionEntries -parallel > log.changeDictionary.updateBCs.$inflowDir.1 2>&1 + fi + + # Renumber the mesh for better matrix solver performance. + echo "Using renumberMesh to renumber the mesh for better matrix conditioning..." + mpirun -np $cores renumberMesh -parallel -overwrite -time $startTime > log.renumberMesh 2>&1 + + # Do one last check on the mesh. + echo "Running checkMesh to report mesh diagnostics..." + mpirun -np $cores checkMesh -parallel > log.checkMesh.3 2>&1 + + +# Otherwise, run in serial as follows: +else + # Renumber the mesh. + echo "Using renumberMesh to renumber the mesh for better matrix conditioning..." + renumberMesh -overwrite -time $startTime > log.renumberMesh 2>&1 + + # Decompose the mesh and solution files (serial) + echo "Using decomposePar to decompose the problem for parallel processing..." + decomposePar -cellDist -force -time $startTime > log.decomposePar 2>&1 + + # Check the mesh. + echo "Running checkMesh to report mesh diagnostics..." + checkMesh > log.checkMesh.1 2>&1 +fi diff --git a/exampleCases/example.ADM.ssc/runscript.solve.1 b/exampleCases/example.ADM.ssc/runscript.solve.1 new file mode 100755 index 000000000..c8f167af9 --- /dev/null +++ b/exampleCases/example.ADM.ssc/runscript.solve.1 @@ -0,0 +1,40 @@ +#!/bin/bash +#PBS -l walltime=2:00:00 +#PBS -l procs=180 +#PBS -A ssc +#PBS -q short +#PBS -l qos=high + +cd $PBS_O_WORKDIR + + + + +# User Input. +OpenFOAMversion=2.4.x # OpenFOAM version +startTime=0 # Start time +cores=180 # Enter the number of cores you will preprocess on. +runNumber=1 # Enter the run number (useful for keeping track of restarts). +solver=windPlantSolver.ADM # Enter the name of the flow solver. + + + +echo "Starting OpenFOAM job at: " $(date) +echo "using " $cores " cores" + + +# Source the bash profile and then call the appropriate OpenFOAM version function +# so that all the modules and environment variables get set. +echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." +source $HOME/.bash_profile +OpenFOAM-2.4.develop + + +# Get the control dictionary for this particular run. +cp system/controlDict.$runNumber system/controlDict + + +# Run the solver. +mpirun -np $cores $solver -parallel > log.$runNumber.$solver 2>&1 + +echo "Ending OpenFOAM job at: " $(date) diff --git a/exampleCases/example.ADM.ssc/setUp b/exampleCases/example.ADM.ssc/setUp new file mode 100755 index 000000000..427ba153e --- /dev/null +++ b/exampleCases/example.ADM.ssc/setUp @@ -0,0 +1,103 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.4.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +// Domain size and number of cells. +xMin 0.0; // Minimum x-extent of domain (m). +yMin 0.0; // Minimum y-extent of domain (m). +zMin 0.0; // Minimum z-extent of domain (m). +xMax 3000.0; // Maximum x-extent of domain (m). +yMax 3000.0; // Maximum y-extent of domain (m). +zMax 1000.0; // Maximum z-extent of domain (m). +nx 300; // Number of cells in x-direction. +ny 300; // Number of cells in y-direction. +nz 100; // Number of cells in z-direction. + + + + +// Number of cores and domain decomposition information. +nCores 180; // Number of cores on which to run this case. +decompType simple; // Decomposition algorithm. "simple" and "scotch" are good choices. +decompOrder (6 6 5); // Order of the decomposition number of partitions in (x y z)-directions. + + + + +// Planar averaging and source term statistics options. +statisticsOn true; // Gather planar-averaged flow statistics. +statisticsFrequency 5; // Frequency in time steps of statistics gathering. +avgStartTime 20200; // Time to begin accumulating the mean; +corrStartTime 20400; // Time to begin accumulating the correlations; + + + +// Initial values for the variables. +// Note that U and T get overwritten if setFieldsABL is called. +U0Mag 8.0; // Initial condition for wind speed (m/s). +dir 270.0; // Initial condition for wind direction (deg). +windHeight 99.27; // Height at which to drive mean wind to U0Mag/dir (m). +p_rgh0 0.0; // Initial pressure (minus the hydrostatic variation and normalized by density) (m^2/s^2). +nuSgs0 0.0; // Initial SGS viscosity (m^2/s). +k0 0.1; // Initial SGS turbulent kinetic energy (m^2/s^2). +kappat0 0.0; // Initial SGS temperature diffusivity (m^2/s). +TGradUpper 0.003; // Potential temperature gradient above the strong inversion (K/m). +zInversion 750.0; // Height of the middle of the initial strong capping inversion (m). +inversionWidth 100.0; // Vertical width of the intial strong capping inversion (m). +TBottom 300.0; // Initial potential temperature at bottom of strong capping inversion (K). +TTop 305.0; // Initial potential temperature at top of strong capping inversion (K). + + + + +// General conditions and parameters. +Pr 0.7; // Molecular Prandtl number. +Prt 0.33333333; // Turbulent Prandtl number. +nu 1.0E-5; // Molecular viscosity (m^2/s). +TRef 300.0; // Reference potential temperature (K). +latitude 41.3; // Latitude on the Earth of the site (deg). +EarthPeriod 24.0; // Earth's rotation period (hr). + + + + +// SGS model inputs. +LESModel oneEqEddyABL; // SGS model selection. +ce 0.93; // SGS model constant. +ck 0.0673; // SGS model constant. + + + + +// Surface conditions. +qwall (0.0 0.0 0.0); // Temperature flux at wall (modify the z-value). A negative value is flux into domain (K-m/s). +Rwall (0.0 0.0 0.0 0.0 0.0 0.0); // Initial wall shear stress (m^2/s^2). +kappa 0.4; // von Karman constant. +z0 0.15; // Surface roughness (m). +//STABLE CASES +//betaM 15.0; // Monin-Obukhov wall shear stress model constant. +//gammaM 4.9; // Monin-Obukhov wall shear stress model constant. +//betaH 9.0; // Monin-Obukhov wall temperature flux model constant. +//gammaH 7.8; // Monin-Obukhov wall temperature flux model constant. +//alphaH 1.0; // Monin-Obukhov wall temperature flux model constant. +//heatingRate 0.0; // Surface temperature change rate (when not directly setting temperature flux) (K/s). +//NEUTRAL and UNSTABLE +betaM 16.0; +gammaM 5.0; +betaH 9.0; +gammaH 7.8; +alphaH 1.0; + + + + + + +#inputMode merge + +// ************************************************************************* // + diff --git a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.cyclic b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.cyclic new file mode 100755 index 000000000..389d1c7e8 --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.cyclic @@ -0,0 +1,261 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp"; + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + boundary + { + north + { + type cyclic; + } + south + { + type cyclic; + } + west + { + type cyclic; + } + east + { + type cyclic; + } + } + + + T + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + U + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + k + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + kappat + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + nuSgs + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + p_rgh + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "planarAverage"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.east b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.east new file mode 100755 index 000000000..3143cb1ab --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.east @@ -0,0 +1,306 @@ +/a*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp"; + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + boundary + { + west + { + type patch; + } + east + { + type patch; + } + } + + + + T + { + boundaryField + { + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.north b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.north new file mode 100755 index 000000000..6d390357b --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.north @@ -0,0 +1,217 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + + +#include "../setUp"; + + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + boundary + { + north + { + type patch; + } + south + { + type patch; + } + } + + T + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + south + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + south + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + south + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + north + { + type fixedFluxPressure; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.northeast b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.northeast new file mode 100755 index 000000000..8c5231d75 --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.northeast @@ -0,0 +1,313 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp"; + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + boundary + { + north + { + type patch; + } + south + { + type patch; + } + west + { + type patch; + } + east + { + type patch; + } + } + + + T + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + south + { + type zeroGradient; + value uniform 300; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + south + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + south + { + type zeroGradient; + value uniform 0.1; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + north + { + type fixedFluxPressure; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.northwest b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.northwest new file mode 100755 index 000000000..46c74d091 --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.northwest @@ -0,0 +1,313 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp"; + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + boundary + { + north + { + type patch; + } + south + { + type patch; + } + west + { + type patch; + } + east + { + type patch; + } + } + + + T + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + south + { + type zeroGradient; + value uniform 300; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + east + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + south + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + south + { + type zeroGradient; + value uniform 0.1; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + east + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + north + { + type fixedFluxPressure; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedFluxPressure; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.south b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.south new file mode 100755 index 000000000..c7b2263b6 --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.south @@ -0,0 +1,215 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp"; + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + boundary + { + north + { + type patch; + } + south + { + type patch; + } + } + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.southeast b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.southeast new file mode 100755 index 000000000..685b7f941 --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.southeast @@ -0,0 +1,314 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp"; + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + boundary + { + north + { + type patch; + } + south + { + type patch; + } + west + { + type patch; + } + east + { + type patch; + } + } + + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.southwest b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.southwest new file mode 100755 index 000000000..9ab9bc83f --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.southwest @@ -0,0 +1,313 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + boundary + { + north + { + type patch; + } + south + { + type patch; + } + west + { + type patch; + } + east + { + type patch; + } + } + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + east + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + east + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedFluxPressure; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.west b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.west new file mode 100755 index 000000000..34078e2b8 --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.west @@ -0,0 +1,215 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp"; + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + boundary + { + west + { + type patch; + } + east + { + type patch; + } + } + + + T + { + boundaryField + { + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + east + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + east + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + west + { + type fixedFluxPressure; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/controlDict b/exampleCases/example.ADM.ssc/system/controlDict new file mode 100755 index 000000000..94f0bacaa --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/controlDict @@ -0,0 +1,61 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object controlDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + + application ABLSolver; + + libs ("libuserfiniteVolume.so" "libuserincompressibleLESModels.so"); + + startFrom startTime; + + startTime 20000.0; + + stopAt endTime; + + endTime 23600.0; + + deltaT 0.5; + + writeControl adjustableRunTime; + + writeInterval 1000.0; + + purgeWrite 0; + + writeFormat binary; + + writePrecision 12; + + writeCompression compressed; + + timeFormat general; + + timePrecision 12; + + runTimeModifiable yes; + + adjustTimeStep no; + + maxCo 0.75; + + maxDeltaT 25.0; + + functions + { + } + +// ************************************************************************* // + diff --git a/exampleCases/example.ADM.ssc/system/controlDict.1 b/exampleCases/example.ADM.ssc/system/controlDict.1 new file mode 100755 index 000000000..94f0bacaa --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/controlDict.1 @@ -0,0 +1,61 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object controlDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + + application ABLSolver; + + libs ("libuserfiniteVolume.so" "libuserincompressibleLESModels.so"); + + startFrom startTime; + + startTime 20000.0; + + stopAt endTime; + + endTime 23600.0; + + deltaT 0.5; + + writeControl adjustableRunTime; + + writeInterval 1000.0; + + purgeWrite 0; + + writeFormat binary; + + writePrecision 12; + + writeCompression compressed; + + timeFormat general; + + timePrecision 12; + + runTimeModifiable yes; + + adjustTimeStep no; + + maxCo 0.75; + + maxDeltaT 25.0; + + functions + { + } + +// ************************************************************************* // + diff --git a/exampleCases/example.ADM.ssc/system/decomposeParDict b/exampleCases/example.ADM.ssc/system/decomposeParDict new file mode 100755 index 000000000..565dd1343 --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/decomposeParDict @@ -0,0 +1,76 @@ +/*-------------------------------*- C++ -*---------------------------------*\ +| ========= | +| \\ / OpenFOAM | +| \\ / | +| \\ / The Open Source CFD Toolbox | +| \\/ http://www.OpenFOAM.org | +\*-------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + note "mesh decomposition control dictionary"; + location "system"; + object decomposeParDict; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +numberOfSubdomains $nCores; +method $decompType; +preservePatches (north south east west); + +simpleCoeffs +{ + n $decompOrder; + delta 0.001; +} + +hierarchicalCoeffs +{ + n (1 1 3); + delta 0.001; + order xyz; +} + +metisCoeffs +{ + processorWeights + ( + ); +} + +scotchCoeffs +{ + //processorWeights + //( + // 1 + // 1 + // 1 + // 1 + //); + //writeGraph true; + //strategy "b"; +} + +manualCoeffs +{ + dataFile "decompositionData"; +} + + +//// Is the case distributed +distributed no; +//// Per slave (so nProcs-1 entries) the directory above the case. +//roots +//( +// "/tmp" +// "/tmp" +//); + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/fvSchemes b/exampleCases/example.ADM.ssc/system/fvSchemes new file mode 100755 index 000000000..12d01ece2 --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/fvSchemes @@ -0,0 +1,111 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSchemes; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +ddtSchemes +{ + default backward; +// default CrankNicolson 1.0; +} + +gradSchemes +{ + default Gauss linear; + grad(U) Gauss linear; +} + +divSchemes +{ + default Gauss linear; + //div(phi,U) Gauss linear; + //div(phi,T) Gauss linear; + div(phi,U) Gauss localBlended linear upwind; + div(phi,T) Gauss localBlended linear upwind; + div(R) Gauss linear; + div(U) Gauss linear; + div((nuEff*dev(grad(U).T()))) Gauss linear; + div(B) Gauss linear; + div(phi,B) Gauss linear; + div(phi,k) Gauss linear; +} + +laplacianSchemes +{ + default Gauss linear corrected; + laplacian(rUA,p) Gauss linear corrected; + laplacian((1|A(U)),p) Gauss linear corrected; + laplacian(interpolate((1|A(U))),p) Gauss linear corrected; + laplacian(interpolate((1|A(U))),pd) Gauss linear corrected; + laplacian(nu,U) Gauss linear corrected; + laplacian(nuEff,U) Gauss linear corrected; + laplacian(kappaEff,T) Gauss linear corrected; + laplacian(DBEff,B) Gauss linear corrected; + laplacian(nuSgs,U) Gauss linear corrected; +} + +interpolationSchemes +{ + default linear; +} + +snGradSchemes +{ + default corrected; +} + +fluxRequired +{ + default no; + p_rgh ; +} + +schemeBlending +{ + + // Table of blending factors vs. cell face size. + faceSizeBlendingTable + ( + // area U T + (0.096 0.996 0.980 ) + (0.39 0.996 0.980 ) + (1.563 0.997 0.985 ) + (6.25 0.998 0.990 ) + (25 0.999 0.995 ) + (100 1.000 1.000 ) + (1E6 1.000 1.000 ) + ); + + + // Height above which blending factor begins to transition + // from heightBlendingFactor_z1 to heightBlendingFactor_z2. + heightBlending_z1 800.0; + + // Height above which blending factor is heightBlendingFactor_z2. + heightBlending_z2 1000.0; + + + heightBlendingFactorU_z1 1.0; + heightBlendingFactorU_z2 0.9; + + heightBlendingFactorT_z1 1.0; + heightBlendingFactorT_z2 0.9; + + + // In calculating height, use wall distance or absolute distance. + useWallDistZ false; +} + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/fvSolution b/exampleCases/example.ADM.ssc/system/fvSolution new file mode 100755 index 000000000..38224f9d0 --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/fvSolution @@ -0,0 +1,102 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSolution; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +solvers +{ + p_rgh + { + solver PCG; + preconditioner + { + preconditioner GAMG; + tolerance 1e-05; + relTol 0.01; + smoother DICGaussSeidel; + nPreSweeps 0; + nPostSweeps 2; + nFinestSweeps 2; + cacheAgglomeration true; + nCellsInCoarsestLevel 100; + agglomerator faceAreaPair; + mergeLevels 2; + } + tolerance 1e-06; + relTol 0.01; + maxIter 1000; + } + + p_rghFinal + { + $p_rgh; + relTol 0.0; + } + + "(U|T|k|epsilon|R)" + { + solver PBiCG; + preconditioner DILU; + tolerance 1e-6; + relTol 0.1; + maxIter 1000; + } + + "(U|T|k|epsilon|R)Final" + { + $U; + relTol 0.0; + } + + "(flm|fmm)" + { + solver PBiCG; + preconditioner DILU; + tolerance 1e-6; + relTol 0.1; + } + + "(flm|fmm)Final" + { + $flm; + relTol 0.0; + } + + +} + +PIMPLE +{ + momentumPredictor yes; + nOuterCorrectors 1; + nCorrectors 3; + nNonOrthogonalCorrectors 0; + pRefCell 0; + pRefValue 0; +} + +relaxationFactors +{ + fields + { + } + equations + { + "(U|T|k|epsilon|R)" 1.0; + "(U|T|k|epsilon|R)Final" 1.0; + } +} + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/refineMeshDict.local b/exampleCases/example.ADM.ssc/system/refineMeshDict.local new file mode 100755 index 000000000..da82aa356 --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/refineMeshDict.local @@ -0,0 +1,48 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.1.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object refineMeshDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +set local; + +coordinateSystem global; +//coordinateSystem patchLocal; + +globalCoeffs +{ + tan1 ( 1 0 0 ); + tan2 ( 0 1 0 ); + normal ( 0 0 1 ); +} + +patchLocalCoeffs +{ + patch top; + tan1 ( 1 0 0 ); + tan2 ( 0 1 0 ); + normal ( 0 0 1 ); +} + +directions ( tan1 tan2 normal ); + +useHexTopology yes; + +geometricCut no; + +writeMesh no; + + +// ************************************************************************* // + diff --git a/exampleCases/example.ADM.ssc/system/sampling/boundaryDataPre b/exampleCases/example.ADM.ssc/system/sampling/boundaryDataPre new file mode 100755 index 000000000..e1ea28fd0 --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/sampling/boundaryDataPre @@ -0,0 +1,25 @@ + boundaryDataPre + { + type surfaces; + functionObjectLibs ("libsampling.so"); + enabled true; + interpolationScheme isThisNeeded; + outputControl timeStep; + outputInterval 1; + surfaceFormat foamFile; + fields + ( + U + T + k + ); + surfaces + ( + south + { + type patch; + patches (south); + triangulate false; + } + ); + } diff --git a/exampleCases/example.ADM.ssc/system/sampling/fieldAverages b/exampleCases/example.ADM.ssc/system/sampling/fieldAverages new file mode 100755 index 000000000..84c10394f --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/sampling/fieldAverages @@ -0,0 +1,17 @@ + fieldAverages + { + type fieldAverage; + functionObjectLibs ("libfieldFunctionObjects.so"); + enabled true; + outputControl outputTime; + timeStart 17000.0; + fields + ( + Cs + { + mean on; + prime2Mean off; + base time; + } + ); + } diff --git a/exampleCases/example.ADM.ssc/system/sampling/probeData1 b/exampleCases/example.ADM.ssc/system/sampling/probeData1 new file mode 100755 index 000000000..12938cddb --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/sampling/probeData1 @@ -0,0 +1,223 @@ + probe1 + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + U + T + p + p_rgh + kSgs + nuSgs + RdevSgs + qSgs + ); + + probeLocations + ( + (2500.001 500.001 5.001) + (2500.001 500.001 15.001) + (2500.001 500.001 25.001) + (2500.001 500.001 35.001) + (2500.001 500.001 45.001) + (2500.001 500.001 55.001) + (2500.001 500.001 65.001) + (2500.001 500.001 75.001) + (2500.001 500.001 85.001) + (2500.001 500.001 95.001) + (2500.001 500.001 105.001) + (2500.001 500.001 115.001) + (2500.001 500.001 125.001) + (2500.001 500.001 135.001) + (2500.001 500.001 145.001) + (2500.001 500.001 155.001) + (2500.001 500.001 165.001) + (2500.001 500.001 175.001) + (2500.001 500.001 185.001) + (2500.001 500.001 195.001) + (2500.001 500.001 205.001) + (2500.001 500.001 215.001) + (2500.001 500.001 225.001) + (2500.001 500.001 235.001) + (2500.001 500.001 245.001) + (2500.001 500.001 255.001) + (2500.001 500.001 265.001) + (2500.001 500.001 275.001) + (2500.001 500.001 285.001) + (2500.001 500.001 295.001) + (2500.001 500.001 305.001) + (2500.001 500.001 315.001) + (2500.001 500.001 325.001) + (2500.001 500.001 335.001) + (2500.001 500.001 345.001) + (2500.001 500.001 355.001) + (2500.001 500.001 365.001) + (2500.001 500.001 375.001) + (2500.001 500.001 385.001) + (2500.001 500.001 395.001) + (2500.001 500.001 405.001) + (2500.001 500.001 415.001) + (2500.001 500.001 425.001) + (2500.001 500.001 435.001) + (2500.001 500.001 445.001) + (2500.001 500.001 455.001) + (2500.001 500.001 465.001) + (2500.001 500.001 475.001) + (2500.001 500.001 485.001) + (2500.001 500.001 495.001) + (2500.001 500.001 505.001) + (2500.001 500.001 515.001) + (2500.001 500.001 525.001) + (2500.001 500.001 535.001) + (2500.001 500.001 545.001) + (2500.001 500.001 555.001) + (2500.001 500.001 565.001) + (2500.001 500.001 575.001) + (2500.001 500.001 585.001) + (2500.001 500.001 595.001) + (2500.001 500.001 605.001) + (2500.001 500.001 615.001) + (2500.001 500.001 625.001) + (2500.001 500.001 635.001) + (2500.001 500.001 645.001) + (2500.001 500.001 655.001) + (2500.001 500.001 665.001) + (2500.001 500.001 675.001) + (2500.001 500.001 685.001) + (2500.001 500.001 695.001) + (2500.001 500.001 705.001) + (2500.001 500.001 715.001) + (2500.001 500.001 725.001) + (2500.001 500.001 735.001) + (2500.001 500.001 745.001) + (2500.001 500.001 755.001) + (2500.001 500.001 765.001) + (2500.001 500.001 775.001) + (2500.001 500.001 785.001) + (2500.001 500.001 795.001) + (2500.001 500.001 805.001) + (2500.001 500.001 815.001) + (2500.001 500.001 825.001) + (2500.001 500.001 835.001) + (2500.001 500.001 845.001) + (2500.001 500.001 855.001) + (2500.001 500.001 865.001) + (2500.001 500.001 875.001) + (2500.001 500.001 885.001) + (2500.001 500.001 895.001) + (2500.001 500.001 905.001) + (2500.001 500.001 915.001) + (2500.001 500.001 925.001) + (2500.001 500.001 935.001) + (2500.001 500.001 945.001) + (2500.001 500.001 955.001) + (2500.001 500.001 965.001) + (2500.001 500.001 975.001) + (2500.001 500.001 985.001) + (2500.001 500.001 995.001) + (2500.001 500.001 1005.001) + (2500.001 500.001 1015.001) + (2500.001 500.001 1025.001) + (2500.001 500.001 1035.001) + (2500.001 500.001 1045.001) + (2500.001 500.001 1055.001) + (2500.001 500.001 1065.001) + (2500.001 500.001 1075.001) + (2500.001 500.001 1085.001) + (2500.001 500.001 1095.001) + (2500.001 500.001 1105.001) + (2500.001 500.001 1115.001) + (2500.001 500.001 1125.001) + (2500.001 500.001 1135.001) + (2500.001 500.001 1145.001) + (2500.001 500.001 1155.001) + (2500.001 500.001 1165.001) + (2500.001 500.001 1175.001) + (2500.001 500.001 1185.001) + (2500.001 500.001 1195.001) + (2500.001 500.001 1205.001) + (2500.001 500.001 1215.001) + (2500.001 500.001 1225.001) + (2500.001 500.001 1235.001) + (2500.001 500.001 1245.001) + (2500.001 500.001 1255.001) + (2500.001 500.001 1265.001) + (2500.001 500.001 1275.001) + (2500.001 500.001 1285.001) + (2500.001 500.001 1295.001) + (2500.001 500.001 1305.001) + (2500.001 500.001 1315.001) + (2500.001 500.001 1325.001) + (2500.001 500.001 1335.001) + (2500.001 500.001 1345.001) + (2500.001 500.001 1355.001) + (2500.001 500.001 1365.001) + (2500.001 500.001 1375.001) + (2500.001 500.001 1385.001) + (2500.001 500.001 1395.001) + (2500.001 500.001 1405.001) + (2500.001 500.001 1415.001) + (2500.001 500.001 1425.001) + (2500.001 500.001 1435.001) + (2500.001 500.001 1445.001) + (2500.001 500.001 1455.001) + (2500.001 500.001 1465.001) + (2500.001 500.001 1475.001) + (2500.001 500.001 1485.001) + (2500.001 500.001 1495.001) + (2500.001 500.001 1505.001) + (2500.001 500.001 1515.001) + (2500.001 500.001 1525.001) + (2500.001 500.001 1535.001) + (2500.001 500.001 1545.001) + (2500.001 500.001 1555.001) + (2500.001 500.001 1565.001) + (2500.001 500.001 1575.001) + (2500.001 500.001 1585.001) + (2500.001 500.001 1595.001) + (2500.001 500.001 1605.001) + (2500.001 500.001 1615.001) + (2500.001 500.001 1625.001) + (2500.001 500.001 1635.001) + (2500.001 500.001 1645.001) + (2500.001 500.001 1655.001) + (2500.001 500.001 1665.001) + (2500.001 500.001 1675.001) + (2500.001 500.001 1685.001) + (2500.001 500.001 1695.001) + (2500.001 500.001 1705.001) + (2500.001 500.001 1715.001) + (2500.001 500.001 1725.001) + (2500.001 500.001 1735.001) + (2500.001 500.001 1745.001) + (2500.001 500.001 1755.001) + (2500.001 500.001 1765.001) + (2500.001 500.001 1775.001) + (2500.001 500.001 1785.001) + (2500.001 500.001 1795.001) + (2500.001 500.001 1805.001) + (2500.001 500.001 1815.001) + (2500.001 500.001 1825.001) + (2500.001 500.001 1835.001) + (2500.001 500.001 1845.001) + (2500.001 500.001 1855.001) + (2500.001 500.001 1865.001) + (2500.001 500.001 1875.001) + (2500.001 500.001 1885.001) + (2500.001 500.001 1895.001) + (2500.001 500.001 1905.001) + (2500.001 500.001 1915.001) + (2500.001 500.001 1925.001) + (2500.001 500.001 1935.001) + (2500.001 500.001 1945.001) + (2500.001 500.001 1955.001) + (2500.001 500.001 1965.001) + (2500.001 500.001 1975.001) + (2500.001 500.001 1985.001) + (2500.001 500.001 1995.001) + ); + } diff --git a/exampleCases/example.ADM.ssc/system/sampling/probeData1S b/exampleCases/example.ADM.ssc/system/sampling/probeData1S new file mode 100755 index 000000000..5b619fadc --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/sampling/probeData1S @@ -0,0 +1,18 @@ + probe1S + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + Rwall + qwall + ); + + probeLocations + ( + (2500.001 500.001 0.0) + ); + } diff --git a/exampleCases/example.ADM.ssc/system/sampling/probeData2 b/exampleCases/example.ADM.ssc/system/sampling/probeData2 new file mode 100755 index 000000000..01dc86420 --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/sampling/probeData2 @@ -0,0 +1,223 @@ + probe2 + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + U + T + p + p_rgh + kSgs + nuSgs + RdevSgs + qSgs + ); + + probeLocations + ( + (2500.001 1500.001 5.001) + (2500.001 1500.001 15.001) + (2500.001 1500.001 25.001) + (2500.001 1500.001 35.001) + (2500.001 1500.001 45.001) + (2500.001 1500.001 55.001) + (2500.001 1500.001 65.001) + (2500.001 1500.001 75.001) + (2500.001 1500.001 85.001) + (2500.001 1500.001 95.001) + (2500.001 1500.001 105.001) + (2500.001 1500.001 115.001) + (2500.001 1500.001 125.001) + (2500.001 1500.001 135.001) + (2500.001 1500.001 145.001) + (2500.001 1500.001 155.001) + (2500.001 1500.001 165.001) + (2500.001 1500.001 175.001) + (2500.001 1500.001 185.001) + (2500.001 1500.001 195.001) + (2500.001 1500.001 205.001) + (2500.001 1500.001 215.001) + (2500.001 1500.001 225.001) + (2500.001 1500.001 235.001) + (2500.001 1500.001 245.001) + (2500.001 1500.001 255.001) + (2500.001 1500.001 265.001) + (2500.001 1500.001 275.001) + (2500.001 1500.001 285.001) + (2500.001 1500.001 295.001) + (2500.001 1500.001 305.001) + (2500.001 1500.001 315.001) + (2500.001 1500.001 325.001) + (2500.001 1500.001 335.001) + (2500.001 1500.001 345.001) + (2500.001 1500.001 355.001) + (2500.001 1500.001 365.001) + (2500.001 1500.001 375.001) + (2500.001 1500.001 385.001) + (2500.001 1500.001 395.001) + (2500.001 1500.001 405.001) + (2500.001 1500.001 415.001) + (2500.001 1500.001 425.001) + (2500.001 1500.001 435.001) + (2500.001 1500.001 445.001) + (2500.001 1500.001 455.001) + (2500.001 1500.001 465.001) + (2500.001 1500.001 475.001) + (2500.001 1500.001 485.001) + (2500.001 1500.001 495.001) + (2500.001 1500.001 505.001) + (2500.001 1500.001 515.001) + (2500.001 1500.001 525.001) + (2500.001 1500.001 535.001) + (2500.001 1500.001 545.001) + (2500.001 1500.001 555.001) + (2500.001 1500.001 565.001) + (2500.001 1500.001 575.001) + (2500.001 1500.001 585.001) + (2500.001 1500.001 595.001) + (2500.001 1500.001 605.001) + (2500.001 1500.001 615.001) + (2500.001 1500.001 625.001) + (2500.001 1500.001 635.001) + (2500.001 1500.001 645.001) + (2500.001 1500.001 655.001) + (2500.001 1500.001 665.001) + (2500.001 1500.001 675.001) + (2500.001 1500.001 685.001) + (2500.001 1500.001 695.001) + (2500.001 1500.001 705.001) + (2500.001 1500.001 715.001) + (2500.001 1500.001 725.001) + (2500.001 1500.001 735.001) + (2500.001 1500.001 745.001) + (2500.001 1500.001 755.001) + (2500.001 1500.001 765.001) + (2500.001 1500.001 775.001) + (2500.001 1500.001 785.001) + (2500.001 1500.001 795.001) + (2500.001 1500.001 805.001) + (2500.001 1500.001 815.001) + (2500.001 1500.001 825.001) + (2500.001 1500.001 835.001) + (2500.001 1500.001 845.001) + (2500.001 1500.001 855.001) + (2500.001 1500.001 865.001) + (2500.001 1500.001 875.001) + (2500.001 1500.001 885.001) + (2500.001 1500.001 895.001) + (2500.001 1500.001 905.001) + (2500.001 1500.001 915.001) + (2500.001 1500.001 925.001) + (2500.001 1500.001 935.001) + (2500.001 1500.001 945.001) + (2500.001 1500.001 955.001) + (2500.001 1500.001 965.001) + (2500.001 1500.001 975.001) + (2500.001 1500.001 985.001) + (2500.001 1500.001 995.001) + (2500.001 1500.001 1005.001) + (2500.001 1500.001 1015.001) + (2500.001 1500.001 1025.001) + (2500.001 1500.001 1035.001) + (2500.001 1500.001 1045.001) + (2500.001 1500.001 1055.001) + (2500.001 1500.001 1065.001) + (2500.001 1500.001 1075.001) + (2500.001 1500.001 1085.001) + (2500.001 1500.001 1095.001) + (2500.001 1500.001 1105.001) + (2500.001 1500.001 1115.001) + (2500.001 1500.001 1125.001) + (2500.001 1500.001 1135.001) + (2500.001 1500.001 1145.001) + (2500.001 1500.001 1155.001) + (2500.001 1500.001 1165.001) + (2500.001 1500.001 1175.001) + (2500.001 1500.001 1185.001) + (2500.001 1500.001 1195.001) + (2500.001 1500.001 1205.001) + (2500.001 1500.001 1215.001) + (2500.001 1500.001 1225.001) + (2500.001 1500.001 1235.001) + (2500.001 1500.001 1245.001) + (2500.001 1500.001 1255.001) + (2500.001 1500.001 1265.001) + (2500.001 1500.001 1275.001) + (2500.001 1500.001 1285.001) + (2500.001 1500.001 1295.001) + (2500.001 1500.001 1305.001) + (2500.001 1500.001 1315.001) + (2500.001 1500.001 1325.001) + (2500.001 1500.001 1335.001) + (2500.001 1500.001 1345.001) + (2500.001 1500.001 1355.001) + (2500.001 1500.001 1365.001) + (2500.001 1500.001 1375.001) + (2500.001 1500.001 1385.001) + (2500.001 1500.001 1395.001) + (2500.001 1500.001 1405.001) + (2500.001 1500.001 1415.001) + (2500.001 1500.001 1425.001) + (2500.001 1500.001 1435.001) + (2500.001 1500.001 1445.001) + (2500.001 1500.001 1455.001) + (2500.001 1500.001 1465.001) + (2500.001 1500.001 1475.001) + (2500.001 1500.001 1485.001) + (2500.001 1500.001 1495.001) + (2500.001 1500.001 1505.001) + (2500.001 1500.001 1515.001) + (2500.001 1500.001 1525.001) + (2500.001 1500.001 1535.001) + (2500.001 1500.001 1545.001) + (2500.001 1500.001 1555.001) + (2500.001 1500.001 1565.001) + (2500.001 1500.001 1575.001) + (2500.001 1500.001 1585.001) + (2500.001 1500.001 1595.001) + (2500.001 1500.001 1605.001) + (2500.001 1500.001 1615.001) + (2500.001 1500.001 1625.001) + (2500.001 1500.001 1635.001) + (2500.001 1500.001 1645.001) + (2500.001 1500.001 1655.001) + (2500.001 1500.001 1665.001) + (2500.001 1500.001 1675.001) + (2500.001 1500.001 1685.001) + (2500.001 1500.001 1695.001) + (2500.001 1500.001 1705.001) + (2500.001 1500.001 1715.001) + (2500.001 1500.001 1725.001) + (2500.001 1500.001 1735.001) + (2500.001 1500.001 1745.001) + (2500.001 1500.001 1755.001) + (2500.001 1500.001 1765.001) + (2500.001 1500.001 1775.001) + (2500.001 1500.001 1785.001) + (2500.001 1500.001 1795.001) + (2500.001 1500.001 1805.001) + (2500.001 1500.001 1815.001) + (2500.001 1500.001 1825.001) + (2500.001 1500.001 1835.001) + (2500.001 1500.001 1845.001) + (2500.001 1500.001 1855.001) + (2500.001 1500.001 1865.001) + (2500.001 1500.001 1875.001) + (2500.001 1500.001 1885.001) + (2500.001 1500.001 1895.001) + (2500.001 1500.001 1905.001) + (2500.001 1500.001 1915.001) + (2500.001 1500.001 1925.001) + (2500.001 1500.001 1935.001) + (2500.001 1500.001 1945.001) + (2500.001 1500.001 1955.001) + (2500.001 1500.001 1965.001) + (2500.001 1500.001 1975.001) + (2500.001 1500.001 1985.001) + (2500.001 1500.001 1995.001) + ); + } diff --git a/exampleCases/example.ADM.ssc/system/sampling/probeData2S b/exampleCases/example.ADM.ssc/system/sampling/probeData2S new file mode 100755 index 000000000..7e81799a0 --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/sampling/probeData2S @@ -0,0 +1,18 @@ + probe2S + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + Rwall + qwall + ); + + probeLocations + ( + (2500.001 1500.001 0.0) + ); + } diff --git a/exampleCases/example.ADM.ssc/system/sampling/probeData3 b/exampleCases/example.ADM.ssc/system/sampling/probeData3 new file mode 100755 index 000000000..2a91805b2 --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/sampling/probeData3 @@ -0,0 +1,223 @@ + probe3 + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + U + T + p + p_rgh + kSgs + nuSgs + RdevSgs + qSgs + ); + + probeLocations + ( + (2500.001 2500.001 5.001) + (2500.001 2500.001 15.001) + (2500.001 2500.001 25.001) + (2500.001 2500.001 35.001) + (2500.001 2500.001 45.001) + (2500.001 2500.001 55.001) + (2500.001 2500.001 65.001) + (2500.001 2500.001 75.001) + (2500.001 2500.001 85.001) + (2500.001 2500.001 95.001) + (2500.001 2500.001 105.001) + (2500.001 2500.001 115.001) + (2500.001 2500.001 125.001) + (2500.001 2500.001 135.001) + (2500.001 2500.001 145.001) + (2500.001 2500.001 155.001) + (2500.001 2500.001 165.001) + (2500.001 2500.001 175.001) + (2500.001 2500.001 185.001) + (2500.001 2500.001 195.001) + (2500.001 2500.001 205.001) + (2500.001 2500.001 215.001) + (2500.001 2500.001 225.001) + (2500.001 2500.001 235.001) + (2500.001 2500.001 245.001) + (2500.001 2500.001 255.001) + (2500.001 2500.001 265.001) + (2500.001 2500.001 275.001) + (2500.001 2500.001 285.001) + (2500.001 2500.001 295.001) + (2500.001 2500.001 305.001) + (2500.001 2500.001 315.001) + (2500.001 2500.001 325.001) + (2500.001 2500.001 335.001) + (2500.001 2500.001 345.001) + (2500.001 2500.001 355.001) + (2500.001 2500.001 365.001) + (2500.001 2500.001 375.001) + (2500.001 2500.001 385.001) + (2500.001 2500.001 395.001) + (2500.001 2500.001 405.001) + (2500.001 2500.001 415.001) + (2500.001 2500.001 425.001) + (2500.001 2500.001 435.001) + (2500.001 2500.001 445.001) + (2500.001 2500.001 455.001) + (2500.001 2500.001 465.001) + (2500.001 2500.001 475.001) + (2500.001 2500.001 485.001) + (2500.001 2500.001 495.001) + (2500.001 2500.001 505.001) + (2500.001 2500.001 515.001) + (2500.001 2500.001 525.001) + (2500.001 2500.001 535.001) + (2500.001 2500.001 545.001) + (2500.001 2500.001 555.001) + (2500.001 2500.001 565.001) + (2500.001 2500.001 575.001) + (2500.001 2500.001 585.001) + (2500.001 2500.001 595.001) + (2500.001 2500.001 605.001) + (2500.001 2500.001 615.001) + (2500.001 2500.001 625.001) + (2500.001 2500.001 635.001) + (2500.001 2500.001 645.001) + (2500.001 2500.001 655.001) + (2500.001 2500.001 665.001) + (2500.001 2500.001 675.001) + (2500.001 2500.001 685.001) + (2500.001 2500.001 695.001) + (2500.001 2500.001 705.001) + (2500.001 2500.001 715.001) + (2500.001 2500.001 725.001) + (2500.001 2500.001 735.001) + (2500.001 2500.001 745.001) + (2500.001 2500.001 755.001) + (2500.001 2500.001 765.001) + (2500.001 2500.001 775.001) + (2500.001 2500.001 785.001) + (2500.001 2500.001 795.001) + (2500.001 2500.001 805.001) + (2500.001 2500.001 815.001) + (2500.001 2500.001 825.001) + (2500.001 2500.001 835.001) + (2500.001 2500.001 845.001) + (2500.001 2500.001 855.001) + (2500.001 2500.001 865.001) + (2500.001 2500.001 875.001) + (2500.001 2500.001 885.001) + (2500.001 2500.001 895.001) + (2500.001 2500.001 905.001) + (2500.001 2500.001 915.001) + (2500.001 2500.001 925.001) + (2500.001 2500.001 935.001) + (2500.001 2500.001 945.001) + (2500.001 2500.001 955.001) + (2500.001 2500.001 965.001) + (2500.001 2500.001 975.001) + (2500.001 2500.001 985.001) + (2500.001 2500.001 995.001) + (2500.001 2500.001 1005.001) + (2500.001 2500.001 1015.001) + (2500.001 2500.001 1025.001) + (2500.001 2500.001 1035.001) + (2500.001 2500.001 1045.001) + (2500.001 2500.001 1055.001) + (2500.001 2500.001 1065.001) + (2500.001 2500.001 1075.001) + (2500.001 2500.001 1085.001) + (2500.001 2500.001 1095.001) + (2500.001 2500.001 1105.001) + (2500.001 2500.001 1115.001) + (2500.001 2500.001 1125.001) + (2500.001 2500.001 1135.001) + (2500.001 2500.001 1145.001) + (2500.001 2500.001 1155.001) + (2500.001 2500.001 1165.001) + (2500.001 2500.001 1175.001) + (2500.001 2500.001 1185.001) + (2500.001 2500.001 1195.001) + (2500.001 2500.001 1205.001) + (2500.001 2500.001 1215.001) + (2500.001 2500.001 1225.001) + (2500.001 2500.001 1235.001) + (2500.001 2500.001 1245.001) + (2500.001 2500.001 1255.001) + (2500.001 2500.001 1265.001) + (2500.001 2500.001 1275.001) + (2500.001 2500.001 1285.001) + (2500.001 2500.001 1295.001) + (2500.001 2500.001 1305.001) + (2500.001 2500.001 1315.001) + (2500.001 2500.001 1325.001) + (2500.001 2500.001 1335.001) + (2500.001 2500.001 1345.001) + (2500.001 2500.001 1355.001) + (2500.001 2500.001 1365.001) + (2500.001 2500.001 1375.001) + (2500.001 2500.001 1385.001) + (2500.001 2500.001 1395.001) + (2500.001 2500.001 1405.001) + (2500.001 2500.001 1415.001) + (2500.001 2500.001 1425.001) + (2500.001 2500.001 1435.001) + (2500.001 2500.001 1445.001) + (2500.001 2500.001 1455.001) + (2500.001 2500.001 1465.001) + (2500.001 2500.001 1475.001) + (2500.001 2500.001 1485.001) + (2500.001 2500.001 1495.001) + (2500.001 2500.001 1505.001) + (2500.001 2500.001 1515.001) + (2500.001 2500.001 1525.001) + (2500.001 2500.001 1535.001) + (2500.001 2500.001 1545.001) + (2500.001 2500.001 1555.001) + (2500.001 2500.001 1565.001) + (2500.001 2500.001 1575.001) + (2500.001 2500.001 1585.001) + (2500.001 2500.001 1595.001) + (2500.001 2500.001 1605.001) + (2500.001 2500.001 1615.001) + (2500.001 2500.001 1625.001) + (2500.001 2500.001 1635.001) + (2500.001 2500.001 1645.001) + (2500.001 2500.001 1655.001) + (2500.001 2500.001 1665.001) + (2500.001 2500.001 1675.001) + (2500.001 2500.001 1685.001) + (2500.001 2500.001 1695.001) + (2500.001 2500.001 1705.001) + (2500.001 2500.001 1715.001) + (2500.001 2500.001 1725.001) + (2500.001 2500.001 1735.001) + (2500.001 2500.001 1745.001) + (2500.001 2500.001 1755.001) + (2500.001 2500.001 1765.001) + (2500.001 2500.001 1775.001) + (2500.001 2500.001 1785.001) + (2500.001 2500.001 1795.001) + (2500.001 2500.001 1805.001) + (2500.001 2500.001 1815.001) + (2500.001 2500.001 1825.001) + (2500.001 2500.001 1835.001) + (2500.001 2500.001 1845.001) + (2500.001 2500.001 1855.001) + (2500.001 2500.001 1865.001) + (2500.001 2500.001 1875.001) + (2500.001 2500.001 1885.001) + (2500.001 2500.001 1895.001) + (2500.001 2500.001 1905.001) + (2500.001 2500.001 1915.001) + (2500.001 2500.001 1925.001) + (2500.001 2500.001 1935.001) + (2500.001 2500.001 1945.001) + (2500.001 2500.001 1955.001) + (2500.001 2500.001 1965.001) + (2500.001 2500.001 1975.001) + (2500.001 2500.001 1985.001) + (2500.001 2500.001 1995.001) + ); + } diff --git a/exampleCases/example.ADM.ssc/system/sampling/probeData3S b/exampleCases/example.ADM.ssc/system/sampling/probeData3S new file mode 100755 index 000000000..f1da35cd9 --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/sampling/probeData3S @@ -0,0 +1,18 @@ + probe3S + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + Rwall + qwall + ); + + probeLocations + ( + (2500.001 2500.001 0.0) + ); + } diff --git a/exampleCases/example.ADM.ssc/system/sampling/probeData4 b/exampleCases/example.ADM.ssc/system/sampling/probeData4 new file mode 100755 index 000000000..0bfd6b3fb --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/sampling/probeData4 @@ -0,0 +1,223 @@ + probe4 + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + U + T + p + p_rgh + kSgs + nuSgs + RdevSgs + qSgs + ); + + probeLocations + ( + (2500.001 3500.001 5.001) + (2500.001 3500.001 15.001) + (2500.001 3500.001 25.001) + (2500.001 3500.001 35.001) + (2500.001 3500.001 45.001) + (2500.001 3500.001 55.001) + (2500.001 3500.001 65.001) + (2500.001 3500.001 75.001) + (2500.001 3500.001 85.001) + (2500.001 3500.001 95.001) + (2500.001 3500.001 105.001) + (2500.001 3500.001 115.001) + (2500.001 3500.001 125.001) + (2500.001 3500.001 135.001) + (2500.001 3500.001 145.001) + (2500.001 3500.001 155.001) + (2500.001 3500.001 165.001) + (2500.001 3500.001 175.001) + (2500.001 3500.001 185.001) + (2500.001 3500.001 195.001) + (2500.001 3500.001 205.001) + (2500.001 3500.001 215.001) + (2500.001 3500.001 225.001) + (2500.001 3500.001 235.001) + (2500.001 3500.001 245.001) + (2500.001 3500.001 255.001) + (2500.001 3500.001 265.001) + (2500.001 3500.001 275.001) + (2500.001 3500.001 285.001) + (2500.001 3500.001 295.001) + (2500.001 3500.001 305.001) + (2500.001 3500.001 315.001) + (2500.001 3500.001 325.001) + (2500.001 3500.001 335.001) + (2500.001 3500.001 345.001) + (2500.001 3500.001 355.001) + (2500.001 3500.001 365.001) + (2500.001 3500.001 375.001) + (2500.001 3500.001 385.001) + (2500.001 3500.001 395.001) + (2500.001 3500.001 405.001) + (2500.001 3500.001 415.001) + (2500.001 3500.001 425.001) + (2500.001 3500.001 435.001) + (2500.001 3500.001 445.001) + (2500.001 3500.001 455.001) + (2500.001 3500.001 465.001) + (2500.001 3500.001 475.001) + (2500.001 3500.001 485.001) + (2500.001 3500.001 495.001) + (2500.001 3500.001 505.001) + (2500.001 3500.001 515.001) + (2500.001 3500.001 525.001) + (2500.001 3500.001 535.001) + (2500.001 3500.001 545.001) + (2500.001 3500.001 555.001) + (2500.001 3500.001 565.001) + (2500.001 3500.001 575.001) + (2500.001 3500.001 585.001) + (2500.001 3500.001 595.001) + (2500.001 3500.001 605.001) + (2500.001 3500.001 615.001) + (2500.001 3500.001 625.001) + (2500.001 3500.001 635.001) + (2500.001 3500.001 645.001) + (2500.001 3500.001 655.001) + (2500.001 3500.001 665.001) + (2500.001 3500.001 675.001) + (2500.001 3500.001 685.001) + (2500.001 3500.001 695.001) + (2500.001 3500.001 705.001) + (2500.001 3500.001 715.001) + (2500.001 3500.001 725.001) + (2500.001 3500.001 735.001) + (2500.001 3500.001 745.001) + (2500.001 3500.001 755.001) + (2500.001 3500.001 765.001) + (2500.001 3500.001 775.001) + (2500.001 3500.001 785.001) + (2500.001 3500.001 795.001) + (2500.001 3500.001 805.001) + (2500.001 3500.001 815.001) + (2500.001 3500.001 825.001) + (2500.001 3500.001 835.001) + (2500.001 3500.001 845.001) + (2500.001 3500.001 855.001) + (2500.001 3500.001 865.001) + (2500.001 3500.001 875.001) + (2500.001 3500.001 885.001) + (2500.001 3500.001 895.001) + (2500.001 3500.001 905.001) + (2500.001 3500.001 915.001) + (2500.001 3500.001 925.001) + (2500.001 3500.001 935.001) + (2500.001 3500.001 945.001) + (2500.001 3500.001 955.001) + (2500.001 3500.001 965.001) + (2500.001 3500.001 975.001) + (2500.001 3500.001 985.001) + (2500.001 3500.001 995.001) + (2500.001 3500.001 1005.001) + (2500.001 3500.001 1015.001) + (2500.001 3500.001 1025.001) + (2500.001 3500.001 1035.001) + (2500.001 3500.001 1045.001) + (2500.001 3500.001 1055.001) + (2500.001 3500.001 1065.001) + (2500.001 3500.001 1075.001) + (2500.001 3500.001 1085.001) + (2500.001 3500.001 1095.001) + (2500.001 3500.001 1105.001) + (2500.001 3500.001 1115.001) + (2500.001 3500.001 1125.001) + (2500.001 3500.001 1135.001) + (2500.001 3500.001 1145.001) + (2500.001 3500.001 1155.001) + (2500.001 3500.001 1165.001) + (2500.001 3500.001 1175.001) + (2500.001 3500.001 1185.001) + (2500.001 3500.001 1195.001) + (2500.001 3500.001 1205.001) + (2500.001 3500.001 1215.001) + (2500.001 3500.001 1225.001) + (2500.001 3500.001 1235.001) + (2500.001 3500.001 1245.001) + (2500.001 3500.001 1255.001) + (2500.001 3500.001 1265.001) + (2500.001 3500.001 1275.001) + (2500.001 3500.001 1285.001) + (2500.001 3500.001 1295.001) + (2500.001 3500.001 1305.001) + (2500.001 3500.001 1315.001) + (2500.001 3500.001 1325.001) + (2500.001 3500.001 1335.001) + (2500.001 3500.001 1345.001) + (2500.001 3500.001 1355.001) + (2500.001 3500.001 1365.001) + (2500.001 3500.001 1375.001) + (2500.001 3500.001 1385.001) + (2500.001 3500.001 1395.001) + (2500.001 3500.001 1405.001) + (2500.001 3500.001 1415.001) + (2500.001 3500.001 1425.001) + (2500.001 3500.001 1435.001) + (2500.001 3500.001 1445.001) + (2500.001 3500.001 1455.001) + (2500.001 3500.001 1465.001) + (2500.001 3500.001 1475.001) + (2500.001 3500.001 1485.001) + (2500.001 3500.001 1495.001) + (2500.001 3500.001 1505.001) + (2500.001 3500.001 1515.001) + (2500.001 3500.001 1525.001) + (2500.001 3500.001 1535.001) + (2500.001 3500.001 1545.001) + (2500.001 3500.001 1555.001) + (2500.001 3500.001 1565.001) + (2500.001 3500.001 1575.001) + (2500.001 3500.001 1585.001) + (2500.001 3500.001 1595.001) + (2500.001 3500.001 1605.001) + (2500.001 3500.001 1615.001) + (2500.001 3500.001 1625.001) + (2500.001 3500.001 1635.001) + (2500.001 3500.001 1645.001) + (2500.001 3500.001 1655.001) + (2500.001 3500.001 1665.001) + (2500.001 3500.001 1675.001) + (2500.001 3500.001 1685.001) + (2500.001 3500.001 1695.001) + (2500.001 3500.001 1705.001) + (2500.001 3500.001 1715.001) + (2500.001 3500.001 1725.001) + (2500.001 3500.001 1735.001) + (2500.001 3500.001 1745.001) + (2500.001 3500.001 1755.001) + (2500.001 3500.001 1765.001) + (2500.001 3500.001 1775.001) + (2500.001 3500.001 1785.001) + (2500.001 3500.001 1795.001) + (2500.001 3500.001 1805.001) + (2500.001 3500.001 1815.001) + (2500.001 3500.001 1825.001) + (2500.001 3500.001 1835.001) + (2500.001 3500.001 1845.001) + (2500.001 3500.001 1855.001) + (2500.001 3500.001 1865.001) + (2500.001 3500.001 1875.001) + (2500.001 3500.001 1885.001) + (2500.001 3500.001 1895.001) + (2500.001 3500.001 1905.001) + (2500.001 3500.001 1915.001) + (2500.001 3500.001 1925.001) + (2500.001 3500.001 1935.001) + (2500.001 3500.001 1945.001) + (2500.001 3500.001 1955.001) + (2500.001 3500.001 1965.001) + (2500.001 3500.001 1975.001) + (2500.001 3500.001 1985.001) + (2500.001 3500.001 1995.001) + ); + } diff --git a/exampleCases/example.ADM.ssc/system/sampling/probeData4S b/exampleCases/example.ADM.ssc/system/sampling/probeData4S new file mode 100755 index 000000000..470fc9f28 --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/sampling/probeData4S @@ -0,0 +1,18 @@ + probe4S + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + Rwall + qwall + ); + + probeLocations + ( + (2500.001 3500.001 0.0) + ); + } diff --git a/exampleCases/example.ADM.ssc/system/sampling/probeData5 b/exampleCases/example.ADM.ssc/system/sampling/probeData5 new file mode 100755 index 000000000..eac0bc00c --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/sampling/probeData5 @@ -0,0 +1,223 @@ + probe5 + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + U + T + p + p_rgh + kSgs + nuSgs + RdevSgs + qSgs + ); + + probeLocations + ( + (2500.001 4500.001 5.001) + (2500.001 4500.001 15.001) + (2500.001 4500.001 25.001) + (2500.001 4500.001 35.001) + (2500.001 4500.001 45.001) + (2500.001 4500.001 55.001) + (2500.001 4500.001 65.001) + (2500.001 4500.001 75.001) + (2500.001 4500.001 85.001) + (2500.001 4500.001 95.001) + (2500.001 4500.001 105.001) + (2500.001 4500.001 115.001) + (2500.001 4500.001 125.001) + (2500.001 4500.001 135.001) + (2500.001 4500.001 145.001) + (2500.001 4500.001 155.001) + (2500.001 4500.001 165.001) + (2500.001 4500.001 175.001) + (2500.001 4500.001 185.001) + (2500.001 4500.001 195.001) + (2500.001 4500.001 205.001) + (2500.001 4500.001 215.001) + (2500.001 4500.001 225.001) + (2500.001 4500.001 235.001) + (2500.001 4500.001 245.001) + (2500.001 4500.001 255.001) + (2500.001 4500.001 265.001) + (2500.001 4500.001 275.001) + (2500.001 4500.001 285.001) + (2500.001 4500.001 295.001) + (2500.001 4500.001 305.001) + (2500.001 4500.001 315.001) + (2500.001 4500.001 325.001) + (2500.001 4500.001 335.001) + (2500.001 4500.001 345.001) + (2500.001 4500.001 355.001) + (2500.001 4500.001 365.001) + (2500.001 4500.001 375.001) + (2500.001 4500.001 385.001) + (2500.001 4500.001 395.001) + (2500.001 4500.001 405.001) + (2500.001 4500.001 415.001) + (2500.001 4500.001 425.001) + (2500.001 4500.001 435.001) + (2500.001 4500.001 445.001) + (2500.001 4500.001 455.001) + (2500.001 4500.001 465.001) + (2500.001 4500.001 475.001) + (2500.001 4500.001 485.001) + (2500.001 4500.001 495.001) + (2500.001 4500.001 505.001) + (2500.001 4500.001 515.001) + (2500.001 4500.001 525.001) + (2500.001 4500.001 535.001) + (2500.001 4500.001 545.001) + (2500.001 4500.001 555.001) + (2500.001 4500.001 565.001) + (2500.001 4500.001 575.001) + (2500.001 4500.001 585.001) + (2500.001 4500.001 595.001) + (2500.001 4500.001 605.001) + (2500.001 4500.001 615.001) + (2500.001 4500.001 625.001) + (2500.001 4500.001 635.001) + (2500.001 4500.001 645.001) + (2500.001 4500.001 655.001) + (2500.001 4500.001 665.001) + (2500.001 4500.001 675.001) + (2500.001 4500.001 685.001) + (2500.001 4500.001 695.001) + (2500.001 4500.001 705.001) + (2500.001 4500.001 715.001) + (2500.001 4500.001 725.001) + (2500.001 4500.001 735.001) + (2500.001 4500.001 745.001) + (2500.001 4500.001 755.001) + (2500.001 4500.001 765.001) + (2500.001 4500.001 775.001) + (2500.001 4500.001 785.001) + (2500.001 4500.001 795.001) + (2500.001 4500.001 805.001) + (2500.001 4500.001 815.001) + (2500.001 4500.001 825.001) + (2500.001 4500.001 835.001) + (2500.001 4500.001 845.001) + (2500.001 4500.001 855.001) + (2500.001 4500.001 865.001) + (2500.001 4500.001 875.001) + (2500.001 4500.001 885.001) + (2500.001 4500.001 895.001) + (2500.001 4500.001 905.001) + (2500.001 4500.001 915.001) + (2500.001 4500.001 925.001) + (2500.001 4500.001 935.001) + (2500.001 4500.001 945.001) + (2500.001 4500.001 955.001) + (2500.001 4500.001 965.001) + (2500.001 4500.001 975.001) + (2500.001 4500.001 985.001) + (2500.001 4500.001 995.001) + (2500.001 4500.001 1005.001) + (2500.001 4500.001 1015.001) + (2500.001 4500.001 1025.001) + (2500.001 4500.001 1035.001) + (2500.001 4500.001 1045.001) + (2500.001 4500.001 1055.001) + (2500.001 4500.001 1065.001) + (2500.001 4500.001 1075.001) + (2500.001 4500.001 1085.001) + (2500.001 4500.001 1095.001) + (2500.001 4500.001 1105.001) + (2500.001 4500.001 1115.001) + (2500.001 4500.001 1125.001) + (2500.001 4500.001 1135.001) + (2500.001 4500.001 1145.001) + (2500.001 4500.001 1155.001) + (2500.001 4500.001 1165.001) + (2500.001 4500.001 1175.001) + (2500.001 4500.001 1185.001) + (2500.001 4500.001 1195.001) + (2500.001 4500.001 1205.001) + (2500.001 4500.001 1215.001) + (2500.001 4500.001 1225.001) + (2500.001 4500.001 1235.001) + (2500.001 4500.001 1245.001) + (2500.001 4500.001 1255.001) + (2500.001 4500.001 1265.001) + (2500.001 4500.001 1275.001) + (2500.001 4500.001 1285.001) + (2500.001 4500.001 1295.001) + (2500.001 4500.001 1305.001) + (2500.001 4500.001 1315.001) + (2500.001 4500.001 1325.001) + (2500.001 4500.001 1335.001) + (2500.001 4500.001 1345.001) + (2500.001 4500.001 1355.001) + (2500.001 4500.001 1365.001) + (2500.001 4500.001 1375.001) + (2500.001 4500.001 1385.001) + (2500.001 4500.001 1395.001) + (2500.001 4500.001 1405.001) + (2500.001 4500.001 1415.001) + (2500.001 4500.001 1425.001) + (2500.001 4500.001 1435.001) + (2500.001 4500.001 1445.001) + (2500.001 4500.001 1455.001) + (2500.001 4500.001 1465.001) + (2500.001 4500.001 1475.001) + (2500.001 4500.001 1485.001) + (2500.001 4500.001 1495.001) + (2500.001 4500.001 1505.001) + (2500.001 4500.001 1515.001) + (2500.001 4500.001 1525.001) + (2500.001 4500.001 1535.001) + (2500.001 4500.001 1545.001) + (2500.001 4500.001 1555.001) + (2500.001 4500.001 1565.001) + (2500.001 4500.001 1575.001) + (2500.001 4500.001 1585.001) + (2500.001 4500.001 1595.001) + (2500.001 4500.001 1605.001) + (2500.001 4500.001 1615.001) + (2500.001 4500.001 1625.001) + (2500.001 4500.001 1635.001) + (2500.001 4500.001 1645.001) + (2500.001 4500.001 1655.001) + (2500.001 4500.001 1665.001) + (2500.001 4500.001 1675.001) + (2500.001 4500.001 1685.001) + (2500.001 4500.001 1695.001) + (2500.001 4500.001 1705.001) + (2500.001 4500.001 1715.001) + (2500.001 4500.001 1725.001) + (2500.001 4500.001 1735.001) + (2500.001 4500.001 1745.001) + (2500.001 4500.001 1755.001) + (2500.001 4500.001 1765.001) + (2500.001 4500.001 1775.001) + (2500.001 4500.001 1785.001) + (2500.001 4500.001 1795.001) + (2500.001 4500.001 1805.001) + (2500.001 4500.001 1815.001) + (2500.001 4500.001 1825.001) + (2500.001 4500.001 1835.001) + (2500.001 4500.001 1845.001) + (2500.001 4500.001 1855.001) + (2500.001 4500.001 1865.001) + (2500.001 4500.001 1875.001) + (2500.001 4500.001 1885.001) + (2500.001 4500.001 1895.001) + (2500.001 4500.001 1905.001) + (2500.001 4500.001 1915.001) + (2500.001 4500.001 1925.001) + (2500.001 4500.001 1935.001) + (2500.001 4500.001 1945.001) + (2500.001 4500.001 1955.001) + (2500.001 4500.001 1965.001) + (2500.001 4500.001 1975.001) + (2500.001 4500.001 1985.001) + (2500.001 4500.001 1995.001) + ); + } diff --git a/exampleCases/example.ADM.ssc/system/sampling/probeData5S b/exampleCases/example.ADM.ssc/system/sampling/probeData5S new file mode 100755 index 000000000..5933c36f2 --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/sampling/probeData5S @@ -0,0 +1,18 @@ + probe5S + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + Rwall + qwall + ); + + probeLocations + ( + (2500.001 4500.001 0.0) + ); + } diff --git a/exampleCases/example.ADM.ssc/system/sampling/sliceDataInstantaneous b/exampleCases/example.ADM.ssc/system/sampling/sliceDataInstantaneous new file mode 100755 index 000000000..59199fc39 --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/sampling/sliceDataInstantaneous @@ -0,0 +1,53 @@ + sliceDataInstantaneous + { + type surfaces; + functionObjectLibs ("libsampling.so"); + enabled true; + interpolationScheme cell; + outputControl adjustableTime; + writeInterval 60; + surfaceFormat vtk; + fields + ( + U + T + ); + surfaces + ( + slice_horizontal_1 + { + type plane; + basePoint (1500.01 1500.01 20.01); + normalVector (0 0 1); + triangulate false; + } + slice_horizontal_2 + { + type plane; + basePoint (1500.01 1500.01 80.01); + normalVector (0 0 1); + triangulate false; + } + slice_horizontal_3 + { + type plane; + basePoint (1500.01 1500.01 200.01); + normalVector (0 0 1); + triangulate false; + } + slice_cross_stream + { + type plane; + basePoint (1500.01 1500.01 84.0); + normalVector (0 1 0); + triangulate false; + } + slice_streamwise + { + type plane; + basePoint (1500.01 1500.01 84.0); + normalVector (1 0 0); + triangulate false; + } + ); + } diff --git a/exampleCases/example.ADM.ssc/system/setFieldsABLDict b/exampleCases/example.ADM.ssc/system/setFieldsABLDict new file mode 100755 index 000000000..dacc350ce --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/setFieldsABLDict @@ -0,0 +1,504 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + + root ""; + case ""; + instance ""; + local ""; + + class dictionary; + object setFieldsABLDict; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +// Extents of the domain. +xMin $xMin; +yMin $yMin; +zMin $zMin; + +xMax $xMax; +yMax $yMax; +zMax $zMax; + +zRef $zMax; + +// Specify if distance from wall should be used as z. +useWallDistZ false; +scaleVelocityWithHeight false; + + +// Specify how to initialze the base velocity and temperature profile. +//velocityInitType "table"; +//velocityInitType "log"; +velocityInitType "geostrophic"; +//temperatureInitType "table"; +temperatureInitType "simple"; + +// Maximum perturbation of streamwise/spanwise flow near surface. +deltaU 0.25; +deltaV 0.25; + +// Total periods of perturbations in streamwise/spanwise in the domain. +Uperiods 12.0; +Vperiods 12.0; + +// Percentage of domain height (zMax) where peak in perturbation +// magnitude occurs. +zPeak 0.015; + +// Initial height of the center of the capping inversion. +zInversion $zInversion; + +// Width of the capping inversion. +widthInversion $inversionWidth; + +// Potential temperature at the bottom and top of the capping inversion. +Tbottom $TBottom; +Ttop $TTop; + +// Maximum temperature fluctuation size below capping inversion. +TPrimeScale 0.0; + +// Height rate of change of potential temperature above the inversion. +dTdz $TGradUpper; + +// Geostrophic wind speed magnitude. +Ug $U0Mag; + +// Geostrophic wind speed direction. +UgDir $dir; + +// Aerodynamic roughness height of surface. +z0 $z0; + +// von Karman constant. +kappa $kappa; + +// Vertical profile table. +profileTable +( +// z U V T + (0.0 0.0 0.0 273.121917725) + (5.0 1.82671529027 1.98969371553 282.524156211) + (10.0 2.52983624172 2.77228242751 283.156504284) + (15.0 3.01282071998 3.35521702288 283.64108812) + (20.0 3.35996148006 3.78823607698 284.090761147) + (25.0 3.8038057643 4.37960852586 284.554077196) + (30.0 4.03596125279 4.70538923119 284.966777157) + (35.0 4.38133296535 5.23253766126 285.360167677) + (40.0 4.56992779673 5.53523659867 285.747101612) + (45.0 4.80994398595 5.96180841679 286.095879197) + (50.0 5.00816921409 6.32774876853 286.444585293) + (55.0 5.14154903327 6.60160807137 286.787914506) + (60.0 5.36818530188 7.08896005703 287.063199891) + (65.0 5.44703987742 7.27484159809 287.379906732) + (70.0 5.57604433164 7.60608624795 287.638417176) + (75.0 5.72370142776 7.99632935101 287.863981004) + (80.0 5.77619905069 8.15139018101 288.127106742) + (85.0 5.87149793296 8.46369430537 288.331005696) + (90.0 5.98111916718 8.83268873958 288.509035882) + (95.0 6.01697152506 8.97407895539 288.724664101) + (100.0 6.06967854005 9.19927028309 288.909565287) + (105.0 6.1450628792 9.53721293929 289.053124377) + (110.0 6.19167607924 9.76288104253 289.198531813) + (115.0 6.22489630605 9.93628531022 289.344799656) + (120.0 6.27421288656 10.216282683 289.462005) + (125.0 6.32645248876 10.5156368594 289.57393273) + (130.0 6.34668810144 10.6457361726 289.712125634) + (135.0 6.36434613795 10.762203832 289.852433913) + (140.0 6.39842793739 11.0196195883 289.95191863) + (145.0 6.4342454375 11.2919310606 290.047089019) + (150.0 6.45180421766 11.4367005351 290.150649381) + (155.0 6.46406875681 11.544488333 290.256642472) + (160.0 6.48170756073 11.7056278368 290.348224267) + (165.0 6.50382814701 11.9112591447 290.427787992) + (170.0 6.52550956366 12.1127414485 290.506470121) + (175.0 6.54550549533 12.298300329 290.581768788) + (180.0 6.56550142701 12.4838592096 290.657067454) + (185.0 6.58511534034 12.6567515091 290.735008491) + (190.0 6.6045979288 12.8252894701 290.813857884) + (195.0 6.62432001649 12.9896812983 290.892328604) + (200.0 6.64532587961 13.1318488244 290.968769537) + (205.0 6.66633174272 13.2740163505 291.045210471) + (210.0 6.69104111181 13.4098514016 291.117435921) + (215.0 6.72036475996 13.5377966838 291.184409209) + (220.0 6.74968840812 13.6657419659 291.251382497) + (225.0 6.77805691412 13.7640369251 291.318657013) + (230.0 6.80578882059 13.8425700289 291.386132296) + (235.0 6.83352072706 13.9211031327 291.453607578) + (240.0 6.86307156947 13.9862481909 291.518273832) + (245.0 6.89380511232 14.0426881336 291.581113612) + (250.0 6.92453865516 14.0991280764 291.643953391) + (255.0 6.95361693104 14.1462680315 291.704700258) + (260.0 6.98077095142 14.1825967081 291.763014104) + (265.0 7.0079249718 14.2189253847 291.82132795) + (270.0 7.03507703408 14.2541299666 291.879606535) + (275.0 7.0622194383 14.283790106 291.937711201) + (280.0 7.08936184253 14.3134502454 291.995815867) + (285.0 7.11650424675 14.3431103848 292.053920533) + (290.0 7.1430391081 14.369131837 292.11328027) + (295.0 7.16932392788 14.3936557439 292.173156546) + (300.0 7.19560874767 14.4181796507 292.233032822) + (305.0 7.22180906756 14.4424461024 292.292838021) + (310.0 7.24680913749 14.4630556198 292.351633627) + (315.0 7.27180920741 14.4836651372 292.410429232) + (320.0 7.29680927734 14.5042746546 292.469224837) + (325.0 7.32153609499 14.5243042572 292.528664796) + (330.0 7.34543057757 14.5425674214 292.590067475) + (335.0 7.36932506015 14.5608305855 292.651470155) + (340.0 7.39321954273 14.5790937496 292.712872834) + (345.0 7.41696733387 14.597025575 292.773542958) + (350.0 7.44026003553 14.6139294685 292.831940429) + (355.0 7.46355273718 14.6308333621 292.890337899) + (360.0 7.48684543884 14.6477372556 292.94873537) + (365.0 7.51013186129 14.6646271523 293.007149353) + (370.0 7.53322339247 14.68108262 293.066075821) + (375.0 7.55631492366 14.6975380877 293.12500229) + (380.0 7.57940645484 14.7139935554 293.183928758) + (385.0 7.60249798603 14.7304490231 293.242855226) + (390.0 7.6257582057 14.7463924565 293.301506178) + (395.0 7.64912373233 14.7620162427 293.359985132) + (400.0 7.67248925896 14.7776400289 293.418464087) + (405.0 7.69585478559 14.7932638151 293.476943042) + (410.0 7.71922031222 14.8088876013 293.535421996) + (415.0 7.74300228036 14.8230663689 293.592791002) + (420.0 7.7667927399 14.8372156721 293.650137374) + (425.0 7.79058319945 14.8513649753 293.707483747) + (430.0 7.81437365899 14.8655142784 293.76483012) + (435.0 7.83815083397 14.8793492717 293.821767406) + (440.0 7.86181714661 14.8905612872 293.875290779) + (445.0 7.88548345926 14.9017733027 293.928814153) + (450.0 7.9091497719 14.9129853182 293.982337526) + (455.0 7.93281608455 14.9241973336 294.035860899) + (460.0 7.95648239719 14.9354093491 294.089384273) + (465.0 7.97905964048 14.9423301431 294.14128451) + (470.0 8.0016312311 14.9492286641 294.193176323) + (475.0 8.02420282171 14.956127185 294.245068135) + (480.0 8.04677441233 14.9630257059 294.296959948) + (485.0 8.06934600294 14.9699242269 294.34885176) + (490.0 8.0912068028 14.9742300558 294.40025773) + (495.0 8.11235909886 14.9759515346 294.45117942) + (500.0 8.13351139492 14.9776730134 294.502101111) + (505.0 8.15466369098 14.9793944922 294.553022801) + (510.0 8.17581598704 14.981115971 294.603944491) + (515.0 8.19696828309 14.9828374498 294.654866181) + (520.0 8.21724149816 14.9808198644 294.704354156) + (525.0 8.2364694612 14.9743564264 294.752137402) + (530.0 8.25569742424 14.9678929884 294.799920649) + (535.0 8.27492538727 14.9614295505 294.847703896) + (540.0 8.29415335031 14.9549661125 294.895487143) + (545.0 8.31338131334 14.9485026745 294.943270389) + (550.0 8.33260927638 14.9420392365 294.991053636) + (555.0 8.35050488468 14.9266129312 295.036341098) + (560.0 8.36808840645 14.9090871924 295.081043956) + (565.0 8.38567192822 14.8915614535 295.125746813) + (570.0 8.40325544999 14.8740357147 295.170449671) + (575.0 8.42083897176 14.8565099758 295.215152528) + (580.0 8.43842249352 14.838984237 295.259855386) + (585.0 8.45600601529 14.8214584982 295.304558243) + (590.0 8.47264685758 14.7968218302 295.348171206) + (595.0 8.48834031368 14.765038729 295.390688832) + (600.0 8.50403376979 14.7332556278 295.433206459) + (605.0 8.51972722589 14.7014725265 295.475724085) + (610.0 8.53542068199 14.6696894253 295.518241712) + (615.0 8.55111413809 14.6379063241 295.560759338) + (620.0 8.56680759419 14.6061232229 295.603276965) + (625.0 8.5825010503 14.5743401216 295.645794591) + (630.0 8.59715715424 14.5346556613 295.689519112) + (635.0 8.61058749747 14.4856347615 295.734669729) + (640.0 8.62401784069 14.4366138617 295.779820347) + (645.0 8.63744818391 14.3875929619 295.824970964) + (650.0 8.65087852713 14.338572062 295.870121581) + (655.0 8.66430887036 14.2895511622 295.915272198) + (660.0 8.67773921358 14.2405302624 295.960422815) + (665.0 8.6911695568 14.1915093626 296.005573433) + (670.0 8.70459990003 14.1424884628 296.05072405) + (675.0 8.71498597608 14.0837507537 296.096336227) + (680.0 8.72352399234 14.0191143362 296.142228601) + (685.0 8.7320620086 13.9544779188 296.188120975) + (690.0 8.74060002486 13.8898415013 296.234013348) + (695.0 8.74913804112 13.8252050838 296.279905722) + (700.0 8.75767605739 13.7605686663 296.325798096) + (705.0 8.76621407365 13.6959322489 296.371690469) + (710.0 8.77475208991 13.6312958314 296.417582843) + (715.0 8.78329010617 13.5666594139 296.463475217) + (720.0 8.79182812243 13.5020229965 296.50936759) + (725.0 8.79189547444 13.4277463368 296.562527014) + (730.0 8.79098910472 13.3523615098 296.616521801) + (735.0 8.79008273499 13.2769766828 296.670516587) + (740.0 8.78917636527 13.2015918559 296.724511374) + (745.0 8.78826999555 13.1262070289 296.778506161) + (750.0 8.78736362582 13.0508222019 296.832500948) + (755.0 8.7864572561 12.9754373749 296.886495735) + (760.0 8.78555088638 12.9000525479 296.940490522) + (765.0 8.78464451665 12.824667721 296.994485308) + (770.0 8.78373814693 12.749282894 297.048480095) + (775.0 8.78092431283 12.6731698157 297.101321687) + (780.0 8.77050848097 12.594154369 297.149567342) + (785.0 8.76009264911 12.5151389222 297.197812997) + (790.0 8.74967681725 12.4361234755 297.246058652) + (795.0 8.73926098539 12.3571080288 297.294304307) + (800.0 8.72884515353 12.278092582 297.342549962) + (805.0 8.71842932167 12.1990771353 297.390795617) + (810.0 8.70801348981 12.1200616885 297.439041272) + (815.0 8.69759765795 12.0410462418 297.487286927) + (820.0 8.68718182609 11.9620307951 297.535532582) + (825.0 8.67676599423 11.8830153483 297.583778237) + (830.0 8.66635016237 11.8039999016 297.632023892) + (835.0 8.65380285705 11.7267327361 297.688031136) + (840.0 8.63847548104 11.6517458454 297.754161782) + (845.0 8.62314810503 11.5767589547 297.820292429) + (850.0 8.60782072902 11.5017720641 297.886423076) + (855.0 8.59249335301 11.4267851734 297.952553722) + (860.0 8.57716597701 11.3517982828 298.018684369) + (865.0 8.561838601 11.2768113921 298.084815016) + (870.0 8.54651122499 11.2018245015 298.150945663) + (875.0 8.53118384898 11.1268376108 298.217076309) + (880.0 8.51585647297 11.0518507201 298.283206956) + (885.0 8.50052909696 10.9768638295 298.349337603) + (890.0 8.48520172096 10.9018769388 298.41546825) + (895.0 8.46987434495 10.8268900482 298.481598896) + (900.0 8.45883220551 10.7541011047 298.547345535) + (905.0 8.45238242046 10.6836676328 298.612680644) + (910.0 8.44593263542 10.6132341608 298.678015753) + (915.0 8.43948285037 10.5428006888 298.743350863) + (920.0 8.43303306533 10.4723672168 298.808685972) + (925.0 8.42658328028 10.4019337449 298.874021081) + (930.0 8.42013349524 10.3315002729 298.93935619) + (935.0 8.41368371019 10.2610668009 299.004691299) + (940.0 8.40723392515 10.190633329 299.070026409) + (945.0 8.4007841401 10.120199857 299.135361518) + (950.0 8.39433435506 10.049766385 299.200696627) + (955.0 8.38788457001 9.97933291304 299.266031736) + (960.0 8.38143478497 9.90889944107 299.331366845) + (965.0 8.37498499992 9.8384659691 299.396701955) + (970.0 8.37175628862 9.76984547069 299.458148741) + (975.0 8.3787220489 9.70696290595 299.507289259) + (980.0 8.38568780918 9.64408034121 299.556429777) + (985.0 8.39265356946 9.58119777647 299.605570296) + (990.0 8.39961932974 9.51831521173 299.654710814) + (995.0 8.40658509002 9.45543264699 299.703851332) + (1000.0 8.4135508503 9.39255008225 299.752991851) + (1005.0 8.42051661058 9.32966751751 299.802132369) + (1010.0 8.42748237086 9.26678495277 299.851272887) + (1015.0 8.43444813113 9.20390238803 299.900413405) + (1020.0 8.44141389141 9.14101982329 299.949553924) + (1025.0 8.44837965169 9.07813725854 299.998694442) + (1030.0 8.45534541197 9.0152546938 300.04783496) + (1035.0 8.46231117225 8.95237212906 300.096975478) + (1040.0 8.46927693253 8.88948956432 300.146115997) + (1045.0 8.47624269281 8.82660699958 300.195256515) + (1050.0 8.48495783258 8.77319458603 300.238852282) + (1055.0 8.49495774699 8.72673721576 300.278375887) + (1060.0 8.5049576614 8.6802798455 300.317899492) + (1065.0 8.51495757581 8.63382247523 300.357423097) + (1070.0 8.52495749023 8.58736510496 300.396946702) + (1075.0 8.53495740464 8.5409077347 300.436470307) + (1080.0 8.54495731905 8.49445036443 300.475993912) + (1085.0 8.55495723346 8.44799299416 300.515517517) + (1090.0 8.56495714787 8.4015356239 300.555041122) + (1095.0 8.57495706228 8.35507825363 300.594564727) + (1100.0 8.58495697669 8.30862088336 300.634088332) + (1105.0 8.5949568911 8.2621635131 300.673611937) + (1110.0 8.60495680552 8.21570614283 300.713135542) + (1115.0 8.61495671993 8.16924877256 300.752659147) + (1120.0 8.62495663434 8.1227914023 300.792182752) + (1125.0 8.63495654875 8.07633403203 300.831706357) + (1130.0 8.64495646316 8.02987666176 300.871229962) + (1135.0 8.65360052964 7.98996489564 300.907704255) + (1140.0 8.65972902324 7.96219751809 300.938521005) + (1145.0 8.66585751685 7.93443014055 300.969337756) + (1150.0 8.67198601045 7.906662763 301.000154506) + (1155.0 8.67811450406 7.87889538546 301.030971256) + (1160.0 8.68424299766 7.85112800791 301.061788006) + (1165.0 8.69037149126 7.82336063037 301.092604757) + (1170.0 8.69649998487 7.79559325282 301.123421507) + (1175.0 8.70262847847 7.76782587527 301.154238257) + (1180.0 8.70875697208 7.74005849773 301.185055007) + (1185.0 8.71488546568 7.71229112018 301.215871758) + (1190.0 8.72101395929 7.68452374264 301.246688508) + (1195.0 8.72714245289 7.65675636509 301.277505258) + (1200.0 8.7332709465 7.62898898755 301.308322009) + (1205.0 8.7393994401 7.60122161 301.339138759) + (1210.0 8.74552793371 7.57345423246 301.369955509) + (1215.0 8.75165642731 7.54568685491 301.400772259) + (1220.0 8.75778492092 7.51791947737 301.43158901) + (1225.0 8.76391341452 7.49015209982 301.46240576) + (1230.0 8.76818252215 7.46990516883 301.489568668) + (1235.0 8.76988179508 7.46005215541 301.511681645) + (1240.0 8.771581068 7.45019914198 301.533794623) + (1245.0 8.77328034093 7.44034612856 301.5559076) + (1250.0 8.77497961385 7.43049311513 301.578020578) + (1255.0 8.77667888677 7.42064010171 301.600133555) + (1260.0 8.7783781597 7.41078708828 301.622246532) + (1265.0 8.78007743262 7.40093407485 301.64435951) + (1270.0 8.78177670555 7.39108106143 301.666472487) + (1275.0 8.78347597847 7.381228048 301.688585464) + (1280.0 8.7851752514 7.37137503458 301.710698442) + (1285.0 8.78687452432 7.36152202115 301.732811419) + (1290.0 8.78857379725 7.35166900773 301.754924397) + (1295.0 8.79027307017 7.3418159943 301.777037374) + (1300.0 8.7919723431 7.33196298088 301.799150351) + (1305.0 8.79367161602 7.32210996745 301.821263329) + (1310.0 8.79537088895 7.31225695402 301.843376306) + (1315.0 8.79707016187 7.3024039406 301.865489283) + (1320.0 8.79876943479 7.29255092717 301.887602261) + (1325.0 8.80046870772 7.28269791375 301.909715238) + (1330.0 8.80216798064 7.27284490032 301.931828216) + (1335.0 8.80345002487 7.27037429336 301.950702634) + (1340.0 8.80449597234 7.27208116099 301.967744453) + (1345.0 8.8055419198 7.27378802862 301.984786271) + (1350.0 8.80658786727 7.27549489624 302.00182809) + (1355.0 8.80763381473 7.27720176387 302.018869908) + (1360.0 8.8086797622 7.2789086315 302.035911727) + (1365.0 8.80972570966 7.28061549913 302.052953545) + (1370.0 8.81077165713 7.28232236676 302.069995364) + (1375.0 8.81181760459 7.28402923439 302.087037182) + (1380.0 8.81286355206 7.28573610202 302.104079001) + (1385.0 8.81390949952 7.28744296965 302.121120819) + (1390.0 8.81495544699 7.28914983727 302.138162638) + (1395.0 8.81600139445 7.2908567049 302.155204456) + (1400.0 8.81704734192 7.29256357253 302.172246275) + (1405.0 8.81809328938 7.29427044016 302.189288094) + (1410.0 8.81913923685 7.29597730779 302.206329912) + (1415.0 8.82018518431 7.29768417542 302.223371731) + (1420.0 8.82123113178 7.29939104305 302.240413549) + (1425.0 8.82227707924 7.30109791068 302.257455368) + (1430.0 8.82332302671 7.30280477831 302.274497186) + (1435.0 8.82436897417 7.30451164593 302.291539005) + (1440.0 8.82541492164 7.30621851356 302.308580823) + (1445.0 8.8264608691 7.30792538119 302.325622642) + (1450.0 8.82980499965 7.31411337437 302.342200633) + (1455.0 8.83363827328 7.32125512601 302.358679903) + (1460.0 8.83747154691 7.32839687764 302.375159173) + (1465.0 8.84130482054 7.33553862927 302.391638443) + (1470.0 8.84513809417 7.34268038091 302.408117713) + (1475.0 8.8489713678 7.34982213254 302.424596984) + (1480.0 8.85280464143 7.35696388418 302.441076254) + (1485.0 8.85663791506 7.36410563581 302.457555524) + (1490.0 8.86047118869 7.37124738745 302.474034794) + (1495.0 8.86430446231 7.37838913908 302.490514064) + (1500.0 8.86813773594 7.38553089071 302.506993334) + (1505.0 8.87197100957 7.39267264235 302.523472605) + (1510.0 8.8758042832 7.39981439398 302.539951875) + (1515.0 8.87963755683 7.40695614562 302.556431145) + (1520.0 8.88347083046 7.41409789725 302.572910415) + (1525.0 8.88730410409 7.42123964888 302.589389685) + (1530.0 8.89113737772 7.42838140052 302.605868955) + (1535.0 8.89497065135 7.43552315215 302.622348226) + (1540.0 8.89880392498 7.44266490379 302.638827496) + (1545.0 8.90263719861 7.44980665542 302.655306766) + (1550.0 8.90647047224 7.45694840705 302.671786036) + (1555.0 8.91030374586 7.46409015869 302.688265306) + (1560.0 8.91413701949 7.47123191032 302.704744577) + (1565.0 8.91797029312 7.47837366196 302.721223847) + (1570.0 8.92180356675 7.48551541359 302.737703117) + (1575.0 8.92995697971 7.48958529161 302.756743245) + (1580.0 8.93926578965 7.49283361431 302.77646826) + (1585.0 8.94857459959 7.496081937 302.796193275) + (1590.0 8.95788340953 7.49933025969 302.81591829) + (1595.0 8.96719221947 7.50257858238 302.835643305) + (1600.0 8.97650102941 7.50582690508 302.85536832) + (1605.0 8.98580983935 7.50907522777 302.875093335) + (1610.0 8.9951186493 7.51232355046 302.89481835) + (1615.0 9.00442745924 7.51557187315 302.914543365) + (1620.0 9.01373626918 7.51882019585 302.93426838) + (1625.0 9.02304507912 7.52206851854 302.953993395) + (1630.0 9.03235388906 7.52531684123 302.973718411) + (1635.0 9.041662699 7.52856516392 302.993443426) + (1640.0 9.05097150894 7.53181348662 303.013168441) + (1645.0 9.06028031888 7.53506180931 303.032893456) + (1650.0 9.06958912882 7.538310132 303.052618471) + (1655.0 9.07889793876 7.5415584547 303.072343486) + (1660.0 9.0882067487 7.54480677739 303.092068501) + (1665.0 9.09751555864 7.54805510008 303.111793516) + (1670.0 9.10682436858 7.55130342277 303.131518531) + (1675.0 9.11613317852 7.55455174547 303.151243546) + (1680.0 9.12544198846 7.55780006816 303.170968561) + (1685.0 9.1347507984 7.56104839085 303.190693576) + (1690.0 9.14405960834 7.56429671354 303.210418591) + (1695.0 9.15336841829 7.56754503624 303.230143606) + (1700.0 9.16267722823 7.57079335893 303.249868621) + (1705.0 9.17198603817 7.57404168162 303.269593636) + (1710.0 9.18349377603 7.57239347669 303.290540127) + (1715.0 9.19922226437 7.56134659115 303.31383119) + (1720.0 9.2149507527 7.55029970561 303.337122252) + (1725.0 9.23067924103 7.53925282007 303.360413315) + (1730.0 9.24640772936 7.52820593453 303.383704377) + (1735.0 9.2621362177 7.51715904899 303.40699544) + (1740.0 9.27786470603 7.50611216345 303.430286502) + (1745.0 9.29359319436 7.49506527791 303.453577565) + (1750.0 9.3093216827 7.48401839237 303.476868627) + (1755.0 9.32505017103 7.47297150683 303.50015969) + (1760.0 9.34077865936 7.46192462129 303.523450752) + (1765.0 9.35650714769 7.45087773575 303.546741815) + (1770.0 9.37223563603 7.43983085021 303.570032877) + (1775.0 9.38796412436 7.42878396467 303.59332394) + (1780.0 9.40369261269 7.41773707912 303.616615003) + (1785.0 9.41942110102 7.40669019358 303.639906065) + (1790.0 9.43514958936 7.39564330804 303.663197128) + (1795.0 9.45087807769 7.3845964225 303.68648819) + (1800.0 9.46660656602 7.37354953696 303.709779253) + (1805.0 9.48233505436 7.36250265142 303.733070315) + (1810.0 9.49806354269 7.35145576588 303.756361378) + (1815.0 9.51379203102 7.34040888034 303.77965244) + (1820.0 9.52952051935 7.3293619948 303.802943503) + (1825.0 9.54524900769 7.31831510926 303.826234565) + (1830.0 9.56097749602 7.30726822372 303.849525628) + (1835.0 9.57670598435 7.29622133818 303.87281669) + (1840.0 9.59243447268 7.28517445264 303.896107753) + (1845.0 9.60816296102 7.2741275671 303.919398815) + (1850.0 9.62389144935 7.26308068156 303.942689878) + (1855.0 9.63961993768 7.25203379602 303.96598094) + (1860.0 9.65432709188 7.2376578099 303.988680381) + (1865.0 9.66596304977 7.21327107309 304.009600791) + (1870.0 9.67759900765 7.18888433629 304.0305212) + (1875.0 9.68923496554 7.16449759948 304.051441609) + (1880.0 9.70087092342 7.14011086267 304.072362018) + (1885.0 9.71250688131 7.11572412587 304.093282427) + (1890.0 9.72414283919 7.09133738906 304.114202836) + (1895.0 9.73577879708 7.06695065226 304.135123245) + (1900.0 9.74741475497 7.04256391545 304.156043654) + (1905.0 9.75905071285 7.01817717864 304.176964064) + (1910.0 9.77068667074 6.99379044184 304.197884473) + (1915.0 9.78232262862 6.96940370503 304.218804882) + (1920.0 9.79395858651 6.94501696822 304.239725291) + (1925.0 9.8055945444 6.92063023142 304.2606457) + (1930.0 9.81723050228 6.89624349461 304.281566109) + (1935.0 9.82886646017 6.8718567578 304.302486518) + (1940.0 9.84050241805 6.847470021 304.323406928) + (1945.0 9.85213837594 6.82308328419 304.344327337) + (1950.0 9.86377433382 6.79869654738 304.365247746) + (1955.0 9.87541029171 6.77430981058 304.386168155) + (1960.0 9.8870462496 6.74992307377 304.407088564) + (1965.0 9.89868220748 6.72553633696 304.428008973) + (1970.0 9.91031816537 6.70114960016 304.448929382) + (1975.0 9.92195412325 6.67676286335 304.469849792) + (1980.0 9.93359008114 6.65237612654 304.490770201) + (1985.0 9.94522603903 6.62798938974 304.51169061) + (1990.0 9.95686199691 6.60360265293 304.532611019) + (1995.0 9.9684979548 6.57921591612 304.553531428) + (2000.0 9.98013391268 6.55482917932 304.574451837) +); + +// Update internal field. +updateInternalFields true; + +// Update boundary field. +updateBoundaryFields false; + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/topoSetDict.local.1 b/exampleCases/example.ADM.ssc/system/topoSetDict.local.1 new file mode 100755 index 000000000..5ca695970 --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/topoSetDict.local.1 @@ -0,0 +1,36 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.local.2; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name local; + type cellSet; + action new; + source rotatedBoxToCell; + sourceInfo + { + origin ( 900.0 1325.0 0.0); + i ( 1950.0 0.0 0.0); + j ( 0.0 350.0 0.0); + k ( 0.0 0.0 230.0); + } + } + +); + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/topoSetDict.local.2 b/exampleCases/example.ADM.ssc/system/topoSetDict.local.2 new file mode 100755 index 000000000..eb488cf4f --- /dev/null +++ b/exampleCases/example.ADM.ssc/system/topoSetDict.local.2 @@ -0,0 +1,36 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.local.2; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name local; + type cellSet; + action new; + source rotatedBoxToCell; + sourceInfo + { + origin ( 1000.0 1375.0 0.0); + i ( 1800.0 0.0 0.0); + j ( 0.0 250.0 0.0); + k ( 0.0 0.0 200.0); + } + } + +); + +// ************************************************************************* // From 8c541a3d5c7fe6d0d48a03d5fbc119ee023e359c Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Wed, 2 May 2018 09:43:31 -0600 Subject: [PATCH 02/65] Implement option to enable/disable SSC. No real SSC implemented yet. --- .../horizontalAxisWindTurbinesADM.C | 11 ++++++++++- .../horizontalAxisWindTurbinesADM.H | 3 ++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C index 156e11899..1196335ce 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C @@ -131,7 +131,7 @@ horizontalAxisWindTurbinesADM::horizontalAxisWindTurbinesADM List listTemp = turbineArrayProperties.toc(); for (int i = 0; i < listTemp.size(); i++) { - if (listTemp[i] != "globalProperties") + if (listTemp[i] != "globalProperties" && listTemp[i] != "sscProperties") // Edit to ignore 'sscProperties' as a turbine { turbineName.append(listTemp[i]); } @@ -140,6 +140,15 @@ horizontalAxisWindTurbinesADM::horizontalAxisWindTurbinesADM numTurbines = turbineName.size(); + // SSC stuff goes here + sscEnabled = turbineArrayProperties.subDict("sscProperties").lookupOrDefault("sscEnabled",false); + if(sscEnabled) { + printf("The SSC is enabled.\n"); + } else { + printf("The SSC is disabled.\n"); + } + // + outputControl = turbineArrayProperties.subDict("globalProperties").lookupOrDefault("outputControl","timeStep"); outputInterval = turbineArrayProperties.subDict("globalProperties").lookupOrDefault("outputInterval",1); perturb = turbineArrayProperties.subDict("globalProperties").lookupOrDefault("perturb",1E-5); diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H index 9f1ee7042..5f2046f4c 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H @@ -97,7 +97,8 @@ private: //- Revolutions per minute to radians per second conversion factor. const scalar rpmRadSec; - + //- SSC enabled option. + bool sscEnabled; //- Current time step size. scalar dt; From c51204e4fb53dee5db85c734fcba4e8fec15e764 Mon Sep 17 00:00:00 2001 From: Paul Fleming Date: Wed, 2 May 2018 09:57:17 -0600 Subject: [PATCH 03/65] _SSC_ is the search term for new code --- .../horizontalAxisWindTurbinesADM.C | 3 ++- .../horizontalAxisWindTurbinesADM.H | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C index 1196335ce..9aaf7191b 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C @@ -124,6 +124,7 @@ horizontalAxisWindTurbinesADM::horizontalAxisWindTurbinesADM ) ); + // _SSC_ // Read in the turbine array properties dictionary. This is the uppermost level dictionary // that describes where the turbines are, what kind they are, their initial state, and // information about how the actuator line method is applied to each turbine. @@ -140,7 +141,7 @@ horizontalAxisWindTurbinesADM::horizontalAxisWindTurbinesADM numTurbines = turbineName.size(); - // SSC stuff goes here + // _SSC_ stuff goes here sscEnabled = turbineArrayProperties.subDict("sscProperties").lookupOrDefault("sscEnabled",false); if(sscEnabled) { printf("The SSC is enabled.\n"); diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H index 5f2046f4c..9fb6bd3c0 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H @@ -97,7 +97,7 @@ private: //- Revolutions per minute to radians per second conversion factor. const scalar rpmRadSec; - //- SSC enabled option. + //- _SSC_ enabled option. bool sscEnabled; //- Current time step size. From 487c50cb524fceacdf5207ebba55409f42554a09 Mon Sep 17 00:00:00 2001 From: Paul Fleming Date: Wed, 2 May 2018 10:16:16 -0600 Subject: [PATCH 04/65] Added sscProperties to turbineArrayProperties in ssc example case --- .../example.ADM.ssc/constant/turbineArrayProperties | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/exampleCases/example.ADM.ssc/constant/turbineArrayProperties b/exampleCases/example.ADM.ssc/constant/turbineArrayProperties index 752cdbbee..ea3a66f9e 100755 --- a/exampleCases/example.ADM.ssc/constant/turbineArrayProperties +++ b/exampleCases/example.ADM.ssc/constant/turbineArrayProperties @@ -20,6 +20,12 @@ globalProperties outputInterval 1; } +// _SSC_ +sscProperties +{ + sscEnabled true; //Enable/disable ssc, if not present defaults to False +} + turbine0 { turbineType "NREL5MWRef"; From d927475f4eddab0f68cf48fd959679dd6e379cd0 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Wed, 2 May 2018 11:19:44 -0600 Subject: [PATCH 05/65] Fix backwards compatibility for when sscProperties is not defined inside turbineArrayProperties. --- .../horizontalAxisWindTurbinesADM.C | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C index 9aaf7191b..d081e0f62 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C @@ -129,26 +129,33 @@ horizontalAxisWindTurbinesADM::horizontalAxisWindTurbinesADM // that describes where the turbines are, what kind they are, their initial state, and // information about how the actuator line method is applied to each turbine. { + sscEnabled = false; // _SSC_ Set default option to 'false' List listTemp = turbineArrayProperties.toc(); for (int i = 0; i < listTemp.size(); i++) { - if (listTemp[i] != "globalProperties" && listTemp[i] != "sscProperties") // Edit to ignore 'sscProperties' as a turbine + if (listTemp[i] != "globalProperties" && listTemp[i] != "sscProperties") // _SSC_ Edit to ignore 'sscProperties' as a turbine { turbineName.append(listTemp[i]); } + + // _SSC_ Check for sscProperties subDict. If exists, import the 'sscEnabled' setting (backwards compatibility) + if (listTemp[i] == "sscProperties") + { + sscEnabled = turbineArrayProperties.subDict("sscProperties").lookupOrDefault("sscEnabled",false); + } + // } } numTurbines = turbineName.size(); - // _SSC_ stuff goes here - sscEnabled = turbineArrayProperties.subDict("sscProperties").lookupOrDefault("sscEnabled",false); + // _SSC_ Report whether ssc has been enabled or disabled if(sscEnabled) { printf("The SSC is enabled.\n"); } else { printf("The SSC is disabled.\n"); } - // + // outputControl = turbineArrayProperties.subDict("globalProperties").lookupOrDefault("outputControl","timeStep"); outputInterval = turbineArrayProperties.subDict("globalProperties").lookupOrDefault("outputInterval",1); From 56928ce6b45baaebc9eb6e71dc9e45126c410ae8 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Wed, 2 May 2018 12:11:19 -0600 Subject: [PATCH 06/65] Only print SSC enabled/disabled message for processor0 to avoid clutter in the ADM log file. --- .../horizontalAxisWindTurbinesADM.C | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C index d081e0f62..1b93efdfd 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C @@ -124,7 +124,7 @@ horizontalAxisWindTurbinesADM::horizontalAxisWindTurbinesADM ) ); - // _SSC_ + // _SSC_ Import SSC setting from the turbineArrayProperties dictionary file // Read in the turbine array properties dictionary. This is the uppermost level dictionary // that describes where the turbines are, what kind they are, their initial state, and // information about how the actuator line method is applied to each turbine. @@ -150,10 +150,13 @@ horizontalAxisWindTurbinesADM::horizontalAxisWindTurbinesADM numTurbines = turbineName.size(); // _SSC_ Report whether ssc has been enabled or disabled - if(sscEnabled) { - printf("The SSC is enabled.\n"); - } else { - printf("The SSC is disabled.\n"); + if(Pstream::myProcNo() == 0) // Only print to log file for processor0, to avoid $nCores messages + { + if(sscEnabled) { + printf("The SSC is enabled.\n"); + } else { + printf("The SSC is disabled.\n"); + } } // From 516438ddb03c17b453d684ea90849666f0ce054e Mon Sep 17 00:00:00 2001 From: Paul Fleming Date: Wed, 2 May 2018 16:34:02 -0600 Subject: [PATCH 07/65] Adding the new variables and functions for SSC into the ADM.H file --- .../horizontalAxisWindTurbinesADM.H | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H index 9fb6bd3c0..dc7316a78 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H @@ -594,7 +594,16 @@ private: // - Power on the generator. DynamicList powerGenerator; + //- _SSC_ size of arrays passed to and from super controller + // + // Note must be below superInfoBufferSize + int nInputsToSSC; + int nOutputsFromSC; + //_SSC_ : Define a list for passing info between controllers and super controller + //List superInfo(1000,scalar::zero); + DynamicList superInfoFromSSC; // Array of data from the SSC + DynamicList superInfoToSSC; // Aray of data to the SSC //- Output Data File Information. @@ -661,7 +670,8 @@ private: //- List of output files for nacelle yaw angle. OFstream* nacYawFile_; - + //- _SSC_, List contents of superInfo + OFstream* superInfoFile_; @@ -686,6 +696,12 @@ private: //- Calculate the nacelle yaw position. void controlNacYaw(); + //- _SSC_: Define the super controller + void superController(); + + // _SSC_: Call the simple controller implementation + void callSCSimple(); + //- Calculate the blade pitch. void controlBladePitch(); From 100ec85b10f237acb058a7eb5c6673e1f5f81106 Mon Sep 17 00:00:00 2001 From: Paul Fleming Date: Wed, 2 May 2018 16:50:35 -0600 Subject: [PATCH 08/65] Including the number of inputs/outputs into the turbineArrayProperties --- .../example.ADM.ssc/constant/turbineArrayProperties | 2 ++ .../horizontalAxisWindTurbinesADM.C | 12 ++++++++++++ 2 files changed, 14 insertions(+) diff --git a/exampleCases/example.ADM.ssc/constant/turbineArrayProperties b/exampleCases/example.ADM.ssc/constant/turbineArrayProperties index ea3a66f9e..cd760bfa9 100755 --- a/exampleCases/example.ADM.ssc/constant/turbineArrayProperties +++ b/exampleCases/example.ADM.ssc/constant/turbineArrayProperties @@ -24,6 +24,8 @@ globalProperties sscProperties { sscEnabled true; //Enable/disable ssc, if not present defaults to False + nInputsToSSC 2; // Number of inputs EACH turbine passes to the super controller + nOutputsFromSC 3; // Number of outputs the super controller sends to EACH turbine } turbine0 diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C index 1b93efdfd..9e5410a83 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C @@ -149,16 +149,28 @@ horizontalAxisWindTurbinesADM::horizontalAxisWindTurbinesADM numTurbines = turbineName.size(); + //_SSC_ If SSC enabled, read the number of inputs and outputs, and + // set up the dynamic arrays which will pass the memory between super controller and turbine controllers + if (sscEnabled) { + nInputsToSSC = int(readScalar(turbineArrayProperties.subDict("sscProperties").lookup("nInputsToSSC"))); + nOutputsFromSC = int(readScalar(turbineArrayProperties.subDict("sscProperties").lookup("nOutputsFromSC"))); + + } + // _SSC_ Report whether ssc has been enabled or disabled if(Pstream::myProcNo() == 0) // Only print to log file for processor0, to avoid $nCores messages { if(sscEnabled) { printf("The SSC is enabled.\n"); + printf("Number of inputs %d\n",nInputsToSSC ); + printf("Number of outputs %d\n",nOutputsFromSC ); } else { printf("The SSC is disabled.\n"); } } // + + outputControl = turbineArrayProperties.subDict("globalProperties").lookupOrDefault("outputControl","timeStep"); outputInterval = turbineArrayProperties.subDict("globalProperties").lookupOrDefault("outputInterval",1); From 7f48e7a83ecd82e0cfaaa96139a043d36bb42edc Mon Sep 17 00:00:00 2001 From: Paul Fleming Date: Wed, 2 May 2018 16:52:39 -0600 Subject: [PATCH 09/65] Initializing the dynamic arrays used in message passing --- .../horizontalAxisWindTurbinesADM.C | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C index 9e5410a83..32680eda4 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C @@ -155,6 +155,16 @@ horizontalAxisWindTurbinesADM::horizontalAxisWindTurbinesADM nInputsToSSC = int(readScalar(turbineArrayProperties.subDict("sscProperties").lookup("nInputsToSSC"))); nOutputsFromSC = int(readScalar(turbineArrayProperties.subDict("sscProperties").lookup("nOutputsFromSC"))); + //Set up dynamic arrays + for (int si = 0; si < numTurbines * nInputsToSSC; si++) + { + superInfoToSC.append(0.0); + } + for (int si = 0; si < numTurbines * nOutputsFromSC; si++) + { + superInfoFromSC.append(0.0); + } + } // _SSC_ Report whether ssc has been enabled or disabled From ecc222795aa31af7b9394a62633ebbe32c153e81 Mon Sep 17 00:00:00 2001 From: Paul Fleming Date: Wed, 2 May 2018 16:56:11 -0600 Subject: [PATCH 10/65] Assume PIDSC (turbine pitch controller for ssc) uses same vars as PID --- .../horizontalAxisWindTurbinesADM.C | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C index 32680eda4..5796bef32 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C @@ -339,7 +339,7 @@ horizontalAxisWindTurbinesADM::horizontalAxisWindTurbinesADM { // Read nothing. } - else if (BladePitchControllerType[i] == "PID") + else if (BladePitchControllerType[i] == "PID" || BladePitchControllerType[i] == "PIDSC" ) //_SSC_ include PIDSC in init routine { PitchK.append(readScalar(turbineProperties.subDict("BladePitchControllerParams").lookup("PitchK"))); PitchMin.append(readScalar(turbineProperties.subDict("BladePitchControllerParams").lookup("PitchMin"))); From 9cbce60caaec894ad74da4d70501ceb32699f71a Mon Sep 17 00:00:00 2001 From: Paul Fleming Date: Thu, 3 May 2018 10:19:37 -0600 Subject: [PATCH 11/65] Added yaw super controller --- .../controllers/yawControllers/yawSC.H | 29 +++++++++++++++++++ .../horizontalAxisWindTurbinesADM.C | 11 +++++++ 2 files changed, 40 insertions(+) create mode 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/yawControllers/yawSC.H diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/yawControllers/yawSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/yawControllers/yawSC.H new file mode 100644 index 000000000..7250b19b0 --- /dev/null +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/yawControllers/yawSC.H @@ -0,0 +1,29 @@ +// _SSC_ +//For each turbine, yaw 1 deg/s in direction of error, +// if error is less than this increment do nothing + +//Compute the yaw error +yawError = superInfoFromSC[i * nOutputsFromSC] - nacYaw[i]; + + +//Wrap the yaw to be +/- 180 +if (yawError < -1.0 * Foam::constant::mathematical::pi ) + yawError = yawError + 2.0 * Foam::constant::mathematical::pi; +if (yawError > 1.0 * Foam::constant::mathematical::pi ) + yawError = yawError - 2.0 * Foam::constant::mathematical::pi; + +// Grab the absolute value +// Note, not using abs, because it rounds to int +if (yawError >= 0.0) + yawErrorAbs = yawError; +else + yawErrorAbs = -1 * yawError; + +// Decide if yawing, and set yaw delta at delta angle giving 1 Deg/s +if ( yawErrorAbs < Foam::constant::mathematical::pi / 180.0 * runTime_.deltaT().value() -.001) // small error + deltaNacYaw[i] = 0.0; // Do nothing +else if (yawError < 0) + deltaNacYaw[i] = -1 * Foam::constant::mathematical::pi / 180.0 * runTime_.deltaT().value(); // Yaw negative +else + deltaNacYaw[i] = Foam::constant::mathematical::pi / 180.0 * runTime_.deltaT().value(); // Yaw positive + diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C index 5796bef32..8b40b477d 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C @@ -990,6 +990,9 @@ void horizontalAxisWindTurbinesADM::controlGenTorque() void horizontalAxisWindTurbinesADM::controlNacYaw() { + //_SSC_, need a local yaw error variable + float yawError, yawErrorAbs; + // Proceed turbine by turbine. forAll(deltaNacYaw, i) { @@ -1014,6 +1017,14 @@ void horizontalAxisWindTurbinesADM::controlNacYaw() { } + // _SSC_, set a case for yawSC + // simple function assumes the first entry per turbine in + // superInfoFromSC is a yaw reference to seek + else if (NacYawControllerType[j] == "yawSC") + { + #include "controllers/yawControllers/yawSC.H" + } + // Limit the change in nacelle yaw angle. From 6f0895c80ffb06f955178b6b36cfb6a1a9bc54a6 Mon Sep 17 00:00:00 2001 From: Paul Fleming Date: Thu, 3 May 2018 11:24:20 -0600 Subject: [PATCH 12/65] Fixed name of superInfo array in yawSC --- .../controllers/yawControllers/yawSC.H | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/yawControllers/yawSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/yawControllers/yawSC.H index 7250b19b0..0e2208806 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/yawControllers/yawSC.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/yawControllers/yawSC.H @@ -3,7 +3,7 @@ // if error is less than this increment do nothing //Compute the yaw error -yawError = superInfoFromSC[i * nOutputsFromSC] - nacYaw[i]; +yawError = superInfoFromSSC[i * nOutputsFromSC] - nacYaw[i]; //Wrap the yaw to be +/- 180 From d375fec3b8832024b4ddb0e621dde6c1bc071d23 Mon Sep 17 00:00:00 2001 From: Paul Fleming Date: Thu, 3 May 2018 11:24:54 -0600 Subject: [PATCH 13/65] Added PIDSC.H file, turbine pitch controller for SSC --- .../controllers/bladePitchControllers/PIDSC.H | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/bladePitchControllers/PIDSC.H diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/bladePitchControllers/PIDSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/bladePitchControllers/PIDSC.H new file mode 100644 index 000000000..5a50231db --- /dev/null +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/bladePitchControllers/PIDSC.H @@ -0,0 +1,44 @@ + //_SSC_ version of PID where min pitch is set by super controller + + // If past first call to controller, apply control. + if (pastFirstTimeStep) + { + // Set the gain scheduling variable. + GK = 1.0 / (1.0 + (pitch[i]*degRad)/PitchK[j]); + + // Store the old value of speed error. + scalar speedErrorLast = speedError[i]; + + // Compute the low speed shaft speed error. + speedError[i] = rotSpeedF[i] - RatedRotSpeed[j]; + + // Numerically integrate the speed error over time. + intSpeedError[i] += speedError[i] * dt; + + // Numerically take the deriviative of speed error w.r.t time. + scalar derivSpeedError = (speedError[i] - speedErrorLast) / dt; + + // Saturate the integrated speed error based on pitch saturation. + intSpeedError[i] = min(max(intSpeedError[i], superInfoFromSSC[i*nOutputsFromSC+1]/(GK*PitchControlKI[j])), PitchMax[j]/(GK*PitchControlKI[j])); + + // Compute the pitch components from the proportional, integral, + // and derivative parts and sum them. + scalar pitchP = GK * PitchControlKP[j] * speedError[i]; + scalar pitchI = GK * PitchControlKI[j] * intSpeedError[i]; + scalar pitchD = GK * PitchControlKD[j] * derivSpeedError; + pitchCommanded = pitchP + pitchI + pitchD; + + // Saturate the pitch based on the pitch limits of the pitch + // actuator. + pitchCommanded = min(max(pitchCommanded, superInfoFromSSC[i*nOutputsFromSC+1]), PitchMax[j]); + } + // If first call to controller, initialize some values. + else + { + // set integrated speed error such that if there is no speed error + // on the first real control step (see the else section below), there + // will not be a change in pitch. + GK = 1.0 / (1.0 + (pitch[i]*degRad)/PitchK[j]); + intSpeedError[i] = (pitch[i]*degRad) / (GK * PitchControlKI[j]); + } + From 1557aacb55aed47c0f0ddbc93eecefd3d33f71c0 Mon Sep 17 00:00:00 2001 From: Paul Fleming Date: Thu, 3 May 2018 11:25:29 -0600 Subject: [PATCH 14/65] added sscControllerType and callSUperController to ADM.H --- .../horizontalAxisWindTurbinesADM.H | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H index dc7316a78..31d1f5b65 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H @@ -100,6 +100,7 @@ private: //- _SSC_ enabled option. bool sscEnabled; + //- Current time step size. scalar dt; @@ -339,6 +340,9 @@ private: // specified pitch). DynamicList BladePitchControllerType; + //_SSC_ Define the controller type + word sscControllerType; + //- Engage a rotor speed limiter (do not let rotor speed exceed rated // or become negative. DynamicList RotSpeedLimiter; @@ -700,7 +704,7 @@ private: void superController(); // _SSC_: Call the simple controller implementation - void callSCSimple(); + void callSuperController(); //- Calculate the blade pitch. void controlBladePitch(); From 9e5919c07ffeb578d90360bab0f824d41cb6f440 Mon Sep 17 00:00:00 2001 From: Paul Fleming Date: Thu, 3 May 2018 11:26:02 -0600 Subject: [PATCH 15/65] Added SCSimple.C/.H (simple super controller example files) --- .../controllers/superControllers/SCSimple.C | 88 +++++++++++++++++++ .../controllers/superControllers/SCSimple.H | 21 +++++ 2 files changed, 109 insertions(+) create mode 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/SCSimple.C create mode 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/SCSimple.H diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/SCSimple.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/SCSimple.C new file mode 100644 index 000000000..2344ddc80 --- /dev/null +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/SCSimple.C @@ -0,0 +1,88 @@ +//_SSC_ +// OVERALL IDEA: SIMPLE CONTROLLER DOES NOTHING WITH THE INPUTS EXCEPT EXTRACT THE TIME AND DETERMINE SETPOINTS FOR YAW AND PITCH + +// INPUT/OUTPUT +// inputArray, not used for now +// outputArray, for each turbine, yaw angle (compass deg) and minimum pitch (deg) +// simTime, needed to know what time it is +// numTurbines, number of turbines + + + +#include +#include // for malloc + +// The main function of the super controller +void SCSimpleADM(float * inputArray, float * outputArray, float simTime, int numTurbines) +{ + + //Define variables for handling SC_Struct + char buffer[500]; + + //Define firstTimecheck and file variables + static int isFirstCall = 1; + FILE *fp; //File ID + static int numRows = 0; + + //Declare reference vectors + static float timeVec[1000]; + static int turbineVec[1000]; + static float yawVec[1000]; + static float PitchMinVec[1000]; + float temp; + + //Initialize row and declare memory + if (isFirstCall == 1) + { + fprintf(stderr,"%s %d FIRST CALL \n",__FILE__,__LINE__); + + //Open file for writing + if((fp=fopen("SC_INPUT.txt", "r")) == NULL) { + fprintf(stderr,"Cannot open SC Input File.\n"); + } + + fgets(buffer,500,fp); + + //Now read the tables until END is found + //for (int i = 0; i < numRows; i++) + for (int i = 0; 1 > 0; i++) + { + if(fscanf (fp, "%f", &temp) < 1) + break; + timeVec[i] = temp; + fscanf (fp, "%f", &temp); + turbineVec[i] = temp; + fscanf (fp, "%f", &temp); + yawVec[i] = temp; + fscanf (fp, "%f", &temp); + PitchMinVec[i] = temp; + fprintf(stderr,"%s %d INPUTS %f %d %f %f \n",__FILE__,__LINE__,timeVec[i],turbineVec[i],yawVec[i],PitchMinVec[i]); + numRows++; + } + + //Close the file + fclose(fp); + + isFirstCall = 0; //Don't repeat + } + + //Now loop through the possible conditions and apply references + for (int i = 0; i < numRows; i++) + { + for (int turbineID = 0; turbineID < numTurbines; turbineID ++) + { + //fprintf(stderr,"%s %d tID %d turbVec %d localTime %f timeVec %f \n",__FILE__,__LINE__,turbineID,turbineVec[i],simTime,timeVec[i]); + + if (turbineID == turbineVec[i] && simTime >= timeVec[i]) // This condition applies to this turbine at this time + { + //fprintf(stderr,"%s %d UPDATING OUTPUT...........................................\n",__FILE__,__LINE__); + + // Set the yaw setpoint + outputArray[turbineID * 2] = yawVec[i]; + outputArray[turbineID * 2 + 1] = PitchMinVec[i]; + + } + } + } +} + diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/SCSimple.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/SCSimple.H new file mode 100644 index 000000000..f0e7cc754 --- /dev/null +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/SCSimple.H @@ -0,0 +1,21 @@ +//_SSC_ +const int MAX_ARRAY = 1000; +float inputArray[MAX_ARRAY]; +float outputArray[MAX_ARRAY]; + +SCSimpleADM(inputArray, outputArray, runTime_.value(), numTurbines ); + + +// Fix the units from compass deg to standard rad and place into the +// from SC dynamiclist, do this for each turbine +for(int i = 0; i < numTurbines; i++) +{ + // First collect the yaw target and correct + superInfoFromSSC[i*nOutputsFromSC] = outputArray[i*nOutputsFromSC]; + superInfoFromSSC[i*nOutputsFromSC] = compassToStandard(superInfoFromSSC[i*nOutputsFromSC]); + superInfoFromSSC[i*nOutputsFromSC] = superInfoFromSSC[i*nOutputsFromSC] * degRad; + + // Next collect the minimum pitch angle + superInfoFromSSC[i*nOutputsFromSC+1] = outputArray[i*nOutputsFromSC+1]; + superInfoFromSSC[i*nOutputsFromSC+1] = superInfoFromSSC[i*nOutputsFromSC+1] * degRad; +} From 219cfcbe6bec16847d06200344370ac2810b70eb Mon Sep 17 00:00:00 2001 From: Paul Fleming Date: Thu, 3 May 2018 11:26:40 -0600 Subject: [PATCH 16/65] Added sscControllerType to sscProperties in turbineArrayProperties --- exampleCases/example.ADM.ssc/constant/turbineArrayProperties | 1 + 1 file changed, 1 insertion(+) diff --git a/exampleCases/example.ADM.ssc/constant/turbineArrayProperties b/exampleCases/example.ADM.ssc/constant/turbineArrayProperties index cd760bfa9..1b1977e36 100755 --- a/exampleCases/example.ADM.ssc/constant/turbineArrayProperties +++ b/exampleCases/example.ADM.ssc/constant/turbineArrayProperties @@ -26,6 +26,7 @@ sscProperties sscEnabled true; //Enable/disable ssc, if not present defaults to False nInputsToSSC 2; // Number of inputs EACH turbine passes to the super controller nOutputsFromSC 3; // Number of outputs the super controller sends to EACH turbine + sscControllerType "simpleSSC"; // The type of SSC } turbine0 From f6fbf0a0a8dc0055115722ce137a228d80bcdec6 Mon Sep 17 00:00:00 2001 From: Paul Fleming Date: Thu, 3 May 2018 11:27:31 -0600 Subject: [PATCH 17/65] Implement super controller infrastructure and example call in ADM.C --- .../horizontalAxisWindTurbinesADM.C | 114 +++++++++++++++++- 1 file changed, 111 insertions(+), 3 deletions(-) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C index 8b40b477d..55c22594a 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C @@ -35,6 +35,7 @@ License #include "horizontalAxisWindTurbinesADM.H" #include "interpolateXY.H" +#include "controllers/superControllers/SCSimple.C" //_SSC_ inclusion namespace Foam { @@ -154,15 +155,16 @@ horizontalAxisWindTurbinesADM::horizontalAxisWindTurbinesADM if (sscEnabled) { nInputsToSSC = int(readScalar(turbineArrayProperties.subDict("sscProperties").lookup("nInputsToSSC"))); nOutputsFromSC = int(readScalar(turbineArrayProperties.subDict("sscProperties").lookup("nOutputsFromSC"))); + sscControllerType = word(turbineArrayProperties.lookup("sscControllerType")); //Set up dynamic arrays for (int si = 0; si < numTurbines * nInputsToSSC; si++) { - superInfoToSC.append(0.0); + superInfoToSSC.append(0.0); } for (int si = 0; si < numTurbines * nOutputsFromSC; si++) { - superInfoFromSC.append(0.0); + superInfoFromSSC.append(0.0); } } @@ -1019,7 +1021,7 @@ void horizontalAxisWindTurbinesADM::controlNacYaw() // _SSC_, set a case for yawSC // simple function assumes the first entry per turbine in - // superInfoFromSC is a yaw reference to seek + // superInfoFromSSC is a yaw reference to seek else if (NacYawControllerType[j] == "yawSC") { #include "controllers/yawControllers/yawSC.H" @@ -1035,6 +1037,81 @@ void horizontalAxisWindTurbinesADM::controlNacYaw() } } +//_SSC_: define the super controller function +// The super controller code facilitates the exchangess +void horizontalAxisWindTurbinesADM::superController() +{ + Info << "Entering SuperController" << endl; + + //Info << "(sc) superInfoLength = " << superInfoLength << endl; + + //As a first step spool up the "To" data from each of the turbines + List superInfoLocalIn(nInputsToSSC*numTurbines,0.0); + List superInfoLocalOut(nOutputsFromSC*numTurbines,0.0); + //superInfoLocal = List (superInfoLength*numTurbines,0.0); + + //Info << "(sc) superInfoLocal = " << superInfoLocal << endl; + + for(int si = 0; si < nInputsToSSC * numTurbines; si++) + { + superInfoLocalIn[si] = superInfoToSSC[si]; + } + + //Info << "(sc2) superInfoLocal = " << superInfoLocal << endl; + + //Gather and scatter across procs + Pstream::gather(superInfoLocalIn,sumOp >()); + Pstream::scatter(superInfoLocalIn); + + //Info << "(sc3) superInfoLocal = " << superInfoLocal << endl; + + // Send back out + for(int si = 0; si < nInputsToSSC *numTurbines; si++) + { + superInfoToSSC[si] = superInfoLocalIn[si]; + } + + //Info << "(sc4) superInfoLocal = " << superInfoLocal << endl; + //Info << "(sc4) superInfoToSSC = " << superInfoToSSC << endl; + + + // if this is the master, call + if (Pstream::master()) + { + callSuperController(); // Example super controller function + + // Send result local + for(int si = 0; si < nOutputsFromSC *numTurbines; si++) + { + superInfoLocalOut[si] = superInfoFromSSC[si]; + } + + } + + //Gather and scatter across procs + Pstream::gather(superInfoLocalOut,sumOp >()); + Pstream::scatter(superInfoLocalOut); + + // Now reassign out + // Send back out + for(int si = 0; si < nOutputsFromSC *numTurbines; si++) + { + superInfoFromSSC[si] = superInfoLocalOut[si]; + } + +} + +//_SSC_: define the call to the simple controller +// The super controller code facilitates the exchangess +void horizontalAxisWindTurbinesADM::callSuperController() +{ + // _SSC_, specific controller + if (sscControllerType == "simpleSSC") + { + #include "controllers/superControllers/SCSimple.H" + } +} + void horizontalAxisWindTurbinesADM::controlBladePitch() { @@ -1062,6 +1139,12 @@ void horizontalAxisWindTurbinesADM::controlBladePitch() { #include "controllers/bladePitchControllers/PID.H" } + //_SSC_: allow a pidSC controller where the minimum pitch is chosen by super controller + else if (BladePitchControllerType[j] == "PIDSC") + { + //Info << "PIDSC Turbine " << i << endl; + #include "controllers/bladePitchControllers/PIDSC.H" + } // Apply pitch rate limiter. if (BladePitchRateLimiter[j]) @@ -1684,6 +1767,10 @@ void horizontalAxisWindTurbinesADM::update() computeRotSpeed(); rotateBlades(); yawNacelle(); + //_SSC_ + if (sscEnabled){ + superController(); + } } else if(bladeUpdateType[0] == "newPosition") { @@ -1695,6 +1782,10 @@ void horizontalAxisWindTurbinesADM::update() computeRotSpeed(); rotateBlades(); yawNacelle(); + //_SSC_ + if (sscEnabled){ + superController(); + } // Find out which processor controls which actuator point, // and with that information sample the wind at the actuator @@ -1813,6 +1904,10 @@ void horizontalAxisWindTurbinesADM::openOutputFiles() nacYawFile_ = new OFstream(rootDir/time/"nacYaw"); *nacYawFile_ << "#Turbine Time(s) dt(s) nacelle yaw angle (degrees)" << endl; + // _SSC_: Create a superInfo file. + superInfoFile_ = new OFstream(rootDir/time/"superInfo"); + *superInfoFile_ << "#Turbine Sector Time(s) dt(s) superInfo(fromThento)" << endl; + // Create an angle of attack file. alphaFile_ = new OFstream(rootDir/time/"alpha"); *alphaFile_ << "#Turbine Sector Time(s) dt(s) angle-of-attack(degrees)" << endl; @@ -1878,6 +1973,7 @@ void horizontalAxisWindTurbinesADM::printOutputFiles() *azimuthFile_ << i << " " << time << " " << dt << " "; *pitchFile_ << i << " " << time << " " << dt << " "; *nacYawFile_ << i << " " << time << " " << dt << " "; + *superInfoFile_ << i << " " << time << " " << dt << " "; //_SSC_ // Write out information for each turbine. *torqueRotorFile_ << torqueRotor[i]*fluidDensity[i] << endl; @@ -1891,6 +1987,17 @@ void horizontalAxisWindTurbinesADM::printOutputFiles() *pitchFile_ << pitch[i] << endl; *nacYawFile_ << standardToCompass(nacYaw[i]/degRad) << endl; + // _SSC_, print out superInfo for this turbine + for(int si = 0; si < nOutputsFromSC; si++) + { + *superInfoFile_ << superInfoFromSSC[i * nOutputsFromSC + si] << " "; + } + for(int si = 0; si < nInputsToSSC; si++) + { + *superInfoFile_ << superInfoToSSC[i * nInputsToSSC + si] << " "; + } + *superInfoFile_ << endl; //_SSC_ + // Proceed sector by sector. forAll(alphaSecAvg[i], j) { @@ -1945,6 +2052,7 @@ void horizontalAxisWindTurbinesADM::printOutputFiles() *azimuthFile_ << endl; *pitchFile_ << endl; *nacYawFile_ << endl; + *superInfoFile_ << endl; //_SSC_ *alphaFile_ << endl; *VmagFile_ << endl; From a5698a8e0451658420cd8733748aa8168e306b0f Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Thu, 3 May 2018 11:39:37 -0600 Subject: [PATCH 18/65] Fix sscControllerType read function from the turbineArrayProperties file --- .../horizontalAxisWindTurbinesADM.C | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C index 55c22594a..4e628c189 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C @@ -155,7 +155,7 @@ horizontalAxisWindTurbinesADM::horizontalAxisWindTurbinesADM if (sscEnabled) { nInputsToSSC = int(readScalar(turbineArrayProperties.subDict("sscProperties").lookup("nInputsToSSC"))); nOutputsFromSC = int(readScalar(turbineArrayProperties.subDict("sscProperties").lookup("nOutputsFromSC"))); - sscControllerType = word(turbineArrayProperties.lookup("sscControllerType")); + sscControllerType = word(turbineArrayProperties.subDict("sscProperties").lookup("sscControllerType")); //Set up dynamic arrays for (int si = 0; si < numTurbines * nInputsToSSC; si++) From c4d36b57cd0f82378b9d80beb2eee58ba5bda9fd Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Thu, 3 May 2018 11:58:42 -0600 Subject: [PATCH 19/65] Add example SC_INPUT.txt file to the .ssc case, and update the NREL 5MW turbine controller settings to PIDSC and yawSC. --- exampleCases/example.ADM.ssc/SC_INPUT.txt | 7 +++++++ .../example.ADM.ssc/constant/turbineProperties/NREL5MWRef | 4 ++-- 2 files changed, 9 insertions(+), 2 deletions(-) create mode 100644 exampleCases/example.ADM.ssc/SC_INPUT.txt diff --git a/exampleCases/example.ADM.ssc/SC_INPUT.txt b/exampleCases/example.ADM.ssc/SC_INPUT.txt new file mode 100644 index 000000000..a584d7e04 --- /dev/null +++ b/exampleCases/example.ADM.ssc/SC_INPUT.txt @@ -0,0 +1,7 @@ +Time(s) Turbine Yaw(degCompass) Pitch(deg) +0 0 270 0.0 +10 0 260 0.0 +20 0 250 0.0 +30 0 240 0.0 +0 1 270 0.0 +10 1 280 0.0 \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc/constant/turbineProperties/NREL5MWRef b/exampleCases/example.ADM.ssc/constant/turbineProperties/NREL5MWRef index c8b36798f..c51e9a8fd 100755 --- a/exampleCases/example.ADM.ssc/constant/turbineProperties/NREL5MWRef +++ b/exampleCases/example.ADM.ssc/constant/turbineProperties/NREL5MWRef @@ -37,9 +37,9 @@ BladeIner 11.776047E6; GenTorqueControllerType "fiveRegion"; //GenTorqueControllerType "speedTorqueTable"; //GenTorqueControllerType "none"; -BladePitchControllerType "PID"; +BladePitchControllerType "PIDSC"; //BladePitchControllerType "none"; -NacYawControllerType "none"; +NacYawControllerType "yawSC"; RotSpeedLimiter false; GenTorqueRateLimiter true; NacYawRateLimiter true; From b997352f6595daaf6f752bdfe5df0a5410d81809 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Thu, 3 May 2018 13:09:24 -0600 Subject: [PATCH 20/65] Clarify some comments in the horizontalAxisWindTurbinesADM.C file --- .../horizontalAxisWindTurbinesADM.C | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C index 4e628c189..a5da9c5e1 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C @@ -174,8 +174,8 @@ horizontalAxisWindTurbinesADM::horizontalAxisWindTurbinesADM { if(sscEnabled) { printf("The SSC is enabled.\n"); - printf("Number of inputs %d\n",nInputsToSSC ); - printf("Number of outputs %d\n",nOutputsFromSC ); + printf(" The SSC is expecting %d inputs per turbine.\n",nInputsToSSC ); + printf(" The SSC is expecting %d outputs per turbine.\n",nOutputsFromSC ); } else { printf("The SSC is disabled.\n"); } @@ -1078,7 +1078,7 @@ void horizontalAxisWindTurbinesADM::superController() // if this is the master, call if (Pstream::master()) { - callSuperController(); // Example super controller function + callSuperController(); // Call the superController function // Send result local for(int si = 0; si < nOutputsFromSC *numTurbines; si++) From 19647b0001dba5356c506f3d343be95d429236ed Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Thu, 3 May 2018 22:38:20 -0600 Subject: [PATCH 21/65] Implement improved timeTableSSC look-up. More modular, more checks for correctness of inputs, more generic. --- .../superControllers/timeTableSSC.C | 179 ++++++++++++++++++ .../superControllers/timeTableSSC.H | 27 +++ .../horizontalAxisWindTurbinesADM.C | 6 + 3 files changed, 212 insertions(+) create mode 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.C create mode 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.H diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.C new file mode 100644 index 000000000..2d0cd4893 --- /dev/null +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.C @@ -0,0 +1,179 @@ +// _SSC_ +// file: timeTableSSC.C +// by Paul Fleming & Bart Doekemeijer +// Date: 05/03/2018 +// +// Info: A superController code that loads a table and applies the control settings +// at the relevant timesteps. +// +// this function will read an ascii text file defined by "char *inputFile", +// and apply the specified control settings at the specified time steps. This +// controller code is compatible with the "yawSC.H" and "PIDSC.H" turbine +// controller files, but can easily be extended or modified to one's needs. +// + +#include +#include +#include +#include + +// Read text file and format appropriately +void readInputSSC(char *inputFile, int nTurbs, int nControlVars, + std::vector &nTurbInputs, std::vector< std::vector >&timeArray, + std::vector< std::vector > > &controlArray) +{ + float controlTime; // Time at which the control action is applied + FILE *fp; // Input file handle + char buffer[500]; // Define variables for handling SC_Struct + int turbID; // Temporary turbine number + float temp; // Temporary variable for scanning over floats in the input file + + // Define temporary (multi-dimensional) vectors + std::vector tmpFloatVector; // Temporary float vector + std::vector< std::vector > tmpFloatMatrix; // Temporary float matrix + std::vector tmpControlVector(nControlVars, 0); // Temporary float vector + + //Open file for reading + if((fp=fopen(inputFile, "r")) == NULL) { + fprintf(stderr,"%s: line %d: Cannot find SSC Input File with path '%s'.\n",__FILE__,__LINE__,inputFile); + exit(1); + } + else { + fprintf(stderr,"Successfully opened SSC Input File '%s'.\n",inputFile); + } + + // Populate timeArray and controlArray for each turbine + for (int i = 0; i < nTurbs; i++){ + timeArray.push_back(tmpFloatVector); // Populate with nTurbs vectors + controlArray.push_back(tmpFloatMatrix); // Populate with nTurbs matrices + } + + //Read the tables until the file end is found + printf("SSC: Reading the input file line by line...\n"); + fgets(buffer,500,fp); //Advance past the first comment line + for (int i = 0; 1 > 0; i++) + { + if(fscanf (fp, "%f", &temp) < 1) + break; + controlTime = temp; // First entry should be the simulation time (s) + + fscanf (fp, "%f", &temp); + turbID = temp; // Second entry should be the turbine number + + // Check if turbID exceeds number of turbines defined + if (turbID > nTurbs-1) { + printf("SSC: ERROR. You have defined control inputs for undefined turbines (turbine[%d]). Ignoring this row of inputs.\n",turbID); + for (int cVar = 0; cVar < nControlVars; cVar++) { + fscanf (fp, "%f", &temp); + } + } + else { + // Process control settings for this row of text + timeArray[turbID].push_back(controlTime); // Append with controlTime + printf(" Turbine[%d], time: %f \n", turbID,timeArray[turbID][nTurbInputs[turbID]]); + for (int cVar = 0; cVar < nControlVars; cVar++) { + fscanf (fp, "%f", &temp); + tmpControlVector[cVar] = temp; + printf(" Control setting [%d]: %f \n", cVar,tmpControlVector[cVar]); + } + controlArray[turbID].push_back(tmpControlVector); // Append control vector to controlArray + nTurbInputs[turbID] = nTurbInputs[turbID]+1; // Add one to the nTurbInputs + } + + } + printf("Closing file...\n\n"); + fclose(fp); //Close the file +} + +// Function to determine next control setting +void lookupControlAction(float simTime, int nTurbs, int nControlVars, std::vector< std::vector >&timeArray, + std::vector< std::vector > > &controlArray, std::vector &nTurbInputs, + std::vector< std::vector >&nextControlAction) +{ + int controlIndex=0; + int controlSettingAvailable=0; + + // Determine next control setting for each turbine + for (int i = 0; i < nTurbs; i++){ + controlSettingAvailable=0; + + // Find most recent timestamp of control settings for turbine i + for (int j = 0; j < nTurbInputs[i]; j++){ + if(simTime >= timeArray[i][j]){ + controlIndex = j; + controlSettingAvailable=1; + } + } + + // Write control settings of most recent time instant to outputs for turbine i + if (controlSettingAvailable == 1){ + for (int cVar = 0; cVar < nControlVars; cVar++){ + nextControlAction[i][cVar] = controlArray[i][controlIndex][cVar]; + } + } else { + printf("SSC: WARNING: NO INITIAL CONDITIONS DEFINED FOR TURBINE %d. ASSUMING ZEROS.\n", i); + for (int cVar = 0; cVar < nControlVars; cVar++){ + nextControlAction[i][cVar] = 0.0; + } + } + } +} + +void SC_timeTable(int nTurbs,int nControlVars, std::vector< std::vector >&nextControlAction, float simTime) +{ + char *inputFile = "SC_INPUT.txt"; // Filename of input file/path address relative to main case folder + + static int isFirstCall = 1; + static std::vector nTurbInputs(nTurbs, 0); // Vector with number of input timestaps for each turbine + static std::vector< std::vector > timeArray; // Matrix with timestamps for each turbine + static std::vector< std::vector< std::vector > > controlArray; // Tensor (3D matrix) with control settings for each turbine at each timestamp + + // Read input SSC file if first time this function is called + if(isFirstCall == 1){ + readInputSSC(inputFile, nTurbs, nControlVars, nTurbInputs, timeArray, controlArray); + isFirstCall = 0; // disable for future calls + } + + // Retrieve control settings for time instant 'simTime' + lookupControlAction(simTime, nTurbs, nControlVars, timeArray,controlArray, nTurbInputs,nextControlAction); + + /* + // Print calculated control settings + for(int i=0; i < nTurbs; i++){ + for(int j=0; j tmpFloatVector(nControlVars, 0); // Vector with number of input timestaps for each turbine + std::vector< std::vector > nextControlAction(nTurbs,std::vector(nOutputsFromSC)); // Matrix with current control actions for each turbine + + printf("TIME = 5.0 SECONDS.\n"); + simTime = 5.0; + SC_timeTable(nTurbs,nOutputsFromSC,nextControlAction,simTime); + + printf("TIME = 11 SECONDS.\n"); + simTime = 11.0; + SC_timeTable(nTurbs,nOutputsFromSC,nextControlAction,simTime); + + printf("TIME = 15 SECONDS.\n"); + simTime = 15.0; + SC_timeTable(nTurbs,nOutputsFromSC,nextControlAction,simTime); + + printf("TIME = 21 SECONDS.\n"); + simTime = 21.0; + SC_timeTable(nTurbs,nOutputsFromSC,nextControlAction,simTime); + + return 0; +}*/ \ No newline at end of file diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.H new file mode 100644 index 000000000..8823c8ca7 --- /dev/null +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.H @@ -0,0 +1,27 @@ +//_SSC_ + +// Define variables: Matrix with current control actions for each turbine +std::vector< std::vector > nextControlAction(numTurbines,std::vector(nOutputsFromSC)); + +// Call the SC from external library +SC_timeTable(numTurbines,nOutputsFromSC,nextControlAction,runTime_.value()); + +// Print the applied control settings +for(int i=0; i < numTurbines; i++){ + for(int j=0; j Date: Fri, 4 May 2018 14:41:25 -0600 Subject: [PATCH 22/65] set makeNewWorkingDir and preprocess specific to peregrine 2018 --- exampleCases/example.ADM.ssc.base/runscript.preprocess | 4 ++-- makeNewWorkingDir | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/exampleCases/example.ADM.ssc.base/runscript.preprocess b/exampleCases/example.ADM.ssc.base/runscript.preprocess index 8d2aa51f7..8710dca06 100755 --- a/exampleCases/example.ADM.ssc.base/runscript.preprocess +++ b/exampleCases/example.ADM.ssc.base/runscript.preprocess @@ -1,8 +1,8 @@ #!/bin/bash -#PBS -l walltime=4:00:00 +#PBS -l walltime=1:00:00 #PBS -l procs=1 #PBS -A ssc -#PBS -q short +#PBS -q debug diff --git a/makeNewWorkingDir b/makeNewWorkingDir index 562fb69f3..afeece3c8 100755 --- a/makeNewWorkingDir +++ b/makeNewWorkingDir @@ -14,7 +14,8 @@ # Edit this as needed (paths may differ from system to system) -SOWFAdir=$HOME/OpenFOAM/SOWFA +# SET THIS BACK WHEN DONE DEVELOPING +SOWFAdir=$HOME/OpenFOAM_Develop/SOWFA # Do the recursive copy that symbolically links the files to the source. cp -rs $SOWFAdir $WM_PROJECT_USER_DIR From 974f22c8aa40c8b67ff76e7f1c0e67e971894a85 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Fri, 4 May 2018 15:33:19 -0600 Subject: [PATCH 23/65] Write turbine measurements to the superInfoToSSC variable in the YawSC turbine controller. (This could have also been done in PIDSC) --- .../controllers/yawControllers/yawSC.H | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/yawControllers/yawSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/yawControllers/yawSC.H index 0e2208806..3786cd6ea 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/yawControllers/yawSC.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/yawControllers/yawSC.H @@ -5,7 +5,6 @@ //Compute the yaw error yawError = superInfoFromSSC[i * nOutputsFromSC] - nacYaw[i]; - //Wrap the yaw to be +/- 180 if (yawError < -1.0 * Foam::constant::mathematical::pi ) yawError = yawError + 2.0 * Foam::constant::mathematical::pi; @@ -27,3 +26,10 @@ else if (yawError < 0) else deltaNacYaw[i] = Foam::constant::mathematical::pi / 180.0 * runTime_.deltaT().value(); // Yaw positive +// Write measurements for the superController +for(int i = 0; i < numTurbines; i++){ + // In our example case, we have nInputsToSSC = 3 + superInfoToSSC[i*nInputsToSSC+0] = powerGenerator[i]; // Generator power + superInfoToSSC[i*nInputsToSSC+1] = torqueRotor[i]; // Turbine rotor torque + superInfoToSSC[i*nInputsToSSC+2] = thrust[i]; // Turbine thrust force +} \ No newline at end of file From b3a747aa6893a4f22101a36533fbdc509e64bf4c Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Fri, 4 May 2018 15:45:00 -0600 Subject: [PATCH 24/65] Add zeromq to the required libraries and includes in preparation of the zeroMQ superController implementation. This is currently hardcoded for Peregrine, and works if you have loaded the module through: module load zeromq/4.2.2/gcc. --- src/turbineModels/turbineModelsStandard/Make/options | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/turbineModels/turbineModelsStandard/Make/options b/src/turbineModels/turbineModelsStandard/Make/options index 0f2f6d19d..10cea948c 100755 --- a/src/turbineModels/turbineModelsStandard/Make/options +++ b/src/turbineModels/turbineModelsStandard/Make/options @@ -5,7 +5,8 @@ EXE_INC = \ -I$(LIB_SRC)/turbulenceModels \ -I$(LIB_SRC)/turbulenceModels/LES/LESdeltas/lnInclude \ -I$(LIB_SRC)/turbulenceModels/LES/LESfilters/lnInclude \ - -I$(LIB_SRC)/transportModels + -I$(LIB_SRC)/transportModels \ + -I /nopt/nrel/apps/zeromq/gcc/4.2.2/include LIB_LIBS = \ -ltriSurface \ @@ -13,5 +14,6 @@ LIB_LIBS = \ -lmeshTools \ -lincompressibleTurbulenceModel \ -lLESdeltas \ - -lLESfilters - + -lLESfilters \ + -L /nopt/nrel/apps/zeromq/gcc/4.2.2/lib \ + -lzmq \ No newline at end of file From 506bef2c2b9c162b7d502b59860a1799ee67fb56 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Fri, 4 May 2018 15:48:43 -0600 Subject: [PATCH 25/65] Upload initial implementation of the zeroMQ superController. Currently still in development phase. --- .../controllers/superControllers/zeromqSSC.C | 65 +++++++++++++++++++ .../controllers/superControllers/zeromqSSC.H | 47 ++++++++++++++ .../horizontalAxisWindTurbinesADM.C | 6 ++ 3 files changed, 118 insertions(+) create mode 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C create mode 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C new file mode 100644 index 000000000..4f48166f8 --- /dev/null +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C @@ -0,0 +1,65 @@ +// _SSC_ timeTableSSC_CCP +#include // 0mq interface +#include +#include +#include +#include +#include +#include + +void SC_zeromq(float timeStep, std::vector infoToSC, std::vector &infoFromSC, int sizeInfoFromSSC ) +{ + static int isFirstCall = 1; + static void *context = zmq_ctx_new (); + static void *requester = zmq_socket (context, ZMQ_REQ); + std::string strToSSC; // String that gets sent to SSC + char charFromSSC [1000]; + + if (isFirstCall){ + printf ("0mq client: Connecting to 0mq server...\n"); + zmq_connect (requester, "tcp://localhost:5552"); + isFirstCall = 0; // disable for future calls + } + + // Format the to be transmitted data from std::vector to char + std::stringstream ssToSC; // stringStream used to construct strToSSC + ssToSC << timeStep; // First entry is always timestep + for(size_t i = 0; i < infoToSC.size(); ++i) { + ssToSC << " " << infoToSC[i]; + } + strToSSC = ssToSC.str(); + std::cout << "infoToSC: " << strToSSC << "\n"; + + // Send and receive from SSC + zmq_send (requester, strToSSC.c_str(), 1000, 0); + zmq_recv (requester, charFromSSC, 1000, 0); + + // Format received char/string to std::vector + std::cout << "Received string: [" << charFromSSC << "].\n"; + std::cout << "Reformatting string into std::vector...\n"; + std::stringstream ss(charFromSSC); + for(int i=0;i> infoFromSC[i]; + printf("infoFromSC[%d] = %f \n",i,infoFromSC[i]); + } +} + +/* +int main() +{ + float timeStep = 10.0; + static std::vector infoToSC; + static std::vector infoFromSC; + + const int numTurbines = 2; + const int nInputsToSSC = 2; + const int nOutputsFromSC = 2; + + for(int i = 0; i < 3; i++){ + printf("Call %d.\n",i); + #include "zeromqSSC.H" + } + + return 0; +} +*/ \ No newline at end of file diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H new file mode 100644 index 000000000..f1639aef0 --- /dev/null +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H @@ -0,0 +1,47 @@ +//_SSC_ +static std::vector zeromqInfoToSC; +static std::vector zeromqInfoFromSC; +static int isFirstCall = 1; +int sizeInfoFromSSC = nInputsToSSC*numTurbines; + +if (isFirstCall == 1){ + // Initialize std::vectors with appropriate dimensions + for (int i=0; i < numTurbines*nInputsToSSC; i++){ + zeromqInfoToSC.push_back(0.0); // Initialize with zero values + // + } + for (int i=0; i < sizeInfoFromSSC; i++){ + zeromqInfoFromSC.push_back(0.0); // Initialize with zero values + } + isFirstCall = -1; // disable for future calls +} + + +// Pass the inputs to the std::vector format +for(int i = 0; i < nInputsToSSC*numTurbines; i++){ + zeromqInfoToSC[i] = superInfoToSSC[i]; +} + +// Call the SC from external library +SC_zeromq(runTime_.value(), zeromqInfoToSC, zeromqInfoFromSC, sizeInfoFromSSC ); +//SC_zeromq(timeStep, zeromqInfoToSC, zeromqInfoFromSC, sizeInfoFromSSC ); + +// Print the applied control settings +for(int i=0; i < numTurbines; i++){ + for(int j=0; j Date: Fri, 4 May 2018 16:04:59 -0600 Subject: [PATCH 26/65] Increase buffer dimensions. Now allows messages of up to 9900 characters. This should facilitate for about 1k+ floats to be sent around. This should suffice for SC inputs and outputs. --- .../controllers/superControllers/zeromqSSC.C | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C index 4f48166f8..bf1866acd 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C @@ -1,4 +1,11 @@ -// _SSC_ timeTableSSC_CCP +// _SSC_ zeromqSSC.C +// +// This superController code serves as a zeroMQ client, which will communicate +// with a zeroMQ server. The zeroMQ server will be the remote controller, such as +// a MATLAB script, a Python script, or any other piece of software using the +// zeroMQ functionality. +// +// #include // 0mq interface #include #include @@ -13,7 +20,7 @@ void SC_zeromq(float timeStep, std::vector infoToSC, std::vector & static void *context = zmq_ctx_new (); static void *requester = zmq_socket (context, ZMQ_REQ); std::string strToSSC; // String that gets sent to SSC - char charFromSSC [1000]; + char charFromSSC [9900]; if (isFirstCall){ printf ("0mq client: Connecting to 0mq server...\n"); @@ -31,8 +38,8 @@ void SC_zeromq(float timeStep, std::vector infoToSC, std::vector & std::cout << "infoToSC: " << strToSSC << "\n"; // Send and receive from SSC - zmq_send (requester, strToSSC.c_str(), 1000, 0); - zmq_recv (requester, charFromSSC, 1000, 0); + zmq_send (requester, strToSSC.c_str(), 9900, 0); + zmq_recv (requester, charFromSSC, 9900, 0); // Format received char/string to std::vector std::cout << "Received string: [" << charFromSSC << "].\n"; From f03e653eefedf711d3b355c5a0815767b9ee9d6e Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Fri, 4 May 2018 16:26:12 -0600 Subject: [PATCH 27/65] Update nOutputsFromSC to nOutputsFromSSC for consistency. Also, add some comments to the zeroMQ superController. --- .../constant/turbineArrayProperties | 2 +- .../controllers/bladePitchControllers/PIDSC.H | 4 +-- .../controllers/superControllers/SCSimple.H | 10 +++---- .../superControllers/timeTableSSC.C | 14 +++++----- .../superControllers/timeTableSSC.H | 16 +++++------ .../controllers/superControllers/zeromqSSC.C | 8 +++--- .../controllers/superControllers/zeromqSSC.H | 27 ++++++++++++------- .../controllers/yawControllers/yawSC.H | 2 +- .../horizontalAxisWindTurbinesADM.C | 16 +++++------ .../horizontalAxisWindTurbinesADM.H | 2 +- 10 files changed, 55 insertions(+), 46 deletions(-) diff --git a/exampleCases/example.ADM.ssc/constant/turbineArrayProperties b/exampleCases/example.ADM.ssc/constant/turbineArrayProperties index 1b1977e36..906ff9c51 100755 --- a/exampleCases/example.ADM.ssc/constant/turbineArrayProperties +++ b/exampleCases/example.ADM.ssc/constant/turbineArrayProperties @@ -25,7 +25,7 @@ sscProperties { sscEnabled true; //Enable/disable ssc, if not present defaults to False nInputsToSSC 2; // Number of inputs EACH turbine passes to the super controller - nOutputsFromSC 3; // Number of outputs the super controller sends to EACH turbine + nOutputsFromSSC 3; // Number of outputs the super controller sends to EACH turbine sscControllerType "simpleSSC"; // The type of SSC } diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/bladePitchControllers/PIDSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/bladePitchControllers/PIDSC.H index 5a50231db..25b62b07e 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/bladePitchControllers/PIDSC.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/bladePitchControllers/PIDSC.H @@ -19,7 +19,7 @@ scalar derivSpeedError = (speedError[i] - speedErrorLast) / dt; // Saturate the integrated speed error based on pitch saturation. - intSpeedError[i] = min(max(intSpeedError[i], superInfoFromSSC[i*nOutputsFromSC+1]/(GK*PitchControlKI[j])), PitchMax[j]/(GK*PitchControlKI[j])); + intSpeedError[i] = min(max(intSpeedError[i], superInfoFromSSC[i*nOutputsFromSSC+1]/(GK*PitchControlKI[j])), PitchMax[j]/(GK*PitchControlKI[j])); // Compute the pitch components from the proportional, integral, // and derivative parts and sum them. @@ -30,7 +30,7 @@ // Saturate the pitch based on the pitch limits of the pitch // actuator. - pitchCommanded = min(max(pitchCommanded, superInfoFromSSC[i*nOutputsFromSC+1]), PitchMax[j]); + pitchCommanded = min(max(pitchCommanded, superInfoFromSSC[i*nOutputsFromSSC+1]), PitchMax[j]); } // If first call to controller, initialize some values. else diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/SCSimple.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/SCSimple.H index f0e7cc754..1459e7927 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/SCSimple.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/SCSimple.H @@ -11,11 +11,11 @@ SCSimpleADM(inputArray, outputArray, runTime_.value(), numTurbines ); for(int i = 0; i < numTurbines; i++) { // First collect the yaw target and correct - superInfoFromSSC[i*nOutputsFromSC] = outputArray[i*nOutputsFromSC]; - superInfoFromSSC[i*nOutputsFromSC] = compassToStandard(superInfoFromSSC[i*nOutputsFromSC]); - superInfoFromSSC[i*nOutputsFromSC] = superInfoFromSSC[i*nOutputsFromSC] * degRad; + superInfoFromSSC[i*nOutputsFromSSC] = outputArray[i*nOutputsFromSSC]; + superInfoFromSSC[i*nOutputsFromSSC] = compassToStandard(superInfoFromSSC[i*nOutputsFromSSC]); + superInfoFromSSC[i*nOutputsFromSSC] = superInfoFromSSC[i*nOutputsFromSSC] * degRad; // Next collect the minimum pitch angle - superInfoFromSSC[i*nOutputsFromSC+1] = outputArray[i*nOutputsFromSC+1]; - superInfoFromSSC[i*nOutputsFromSC+1] = superInfoFromSSC[i*nOutputsFromSC+1] * degRad; + superInfoFromSSC[i*nOutputsFromSSC+1] = outputArray[i*nOutputsFromSSC+1]; + superInfoFromSSC[i*nOutputsFromSSC+1] = superInfoFromSSC[i*nOutputsFromSSC+1] * degRad; } diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.C index 2d0cd4893..cecf67f75 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.C @@ -154,26 +154,26 @@ int main() // Define integers and arrays float simTime; int nTurbs = 5; - int nOutputsFromSC = 2; - int nControlVars = nOutputsFromSC; + int nOutputsFromSSC = 2; + int nControlVars = nOutputsFromSSC; std::vector tmpFloatVector(nControlVars, 0); // Vector with number of input timestaps for each turbine - std::vector< std::vector > nextControlAction(nTurbs,std::vector(nOutputsFromSC)); // Matrix with current control actions for each turbine + std::vector< std::vector > nextControlAction(nTurbs,std::vector(nOutputsFromSSC)); // Matrix with current control actions for each turbine printf("TIME = 5.0 SECONDS.\n"); simTime = 5.0; - SC_timeTable(nTurbs,nOutputsFromSC,nextControlAction,simTime); + SC_timeTable(nTurbs,nOutputsFromSSC,nextControlAction,simTime); printf("TIME = 11 SECONDS.\n"); simTime = 11.0; - SC_timeTable(nTurbs,nOutputsFromSC,nextControlAction,simTime); + SC_timeTable(nTurbs,nOutputsFromSSC,nextControlAction,simTime); printf("TIME = 15 SECONDS.\n"); simTime = 15.0; - SC_timeTable(nTurbs,nOutputsFromSC,nextControlAction,simTime); + SC_timeTable(nTurbs,nOutputsFromSSC,nextControlAction,simTime); printf("TIME = 21 SECONDS.\n"); simTime = 21.0; - SC_timeTable(nTurbs,nOutputsFromSC,nextControlAction,simTime); + SC_timeTable(nTurbs,nOutputsFromSSC,nextControlAction,simTime); return 0; }*/ \ No newline at end of file diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.H index 8823c8ca7..a7c992864 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.H @@ -1,14 +1,14 @@ //_SSC_ // Define variables: Matrix with current control actions for each turbine -std::vector< std::vector > nextControlAction(numTurbines,std::vector(nOutputsFromSC)); +std::vector< std::vector > nextControlAction(numTurbines,std::vector(nOutputsFromSSC)); // Call the SC from external library -SC_timeTable(numTurbines,nOutputsFromSC,nextControlAction,runTime_.value()); +SC_timeTable(numTurbines,nOutputsFromSSC,nextControlAction,runTime_.value()); // Print the applied control settings for(int i=0; i < numTurbines; i++){ - for(int j=0; j // 0mq interface +#include // zeroMQ interface #include #include #include @@ -22,6 +23,7 @@ void SC_zeromq(float timeStep, std::vector infoToSC, std::vector & std::string strToSSC; // String that gets sent to SSC char charFromSSC [9900]; + // Establish connection of this is the first call to the SC if (isFirstCall){ printf ("0mq client: Connecting to 0mq server...\n"); zmq_connect (requester, "tcp://localhost:5552"); @@ -37,7 +39,7 @@ void SC_zeromq(float timeStep, std::vector infoToSC, std::vector & strToSSC = ssToSC.str(); std::cout << "infoToSC: " << strToSSC << "\n"; - // Send and receive from SSC + // Send and receive from SSC through zeroMQ zmq_send (requester, strToSSC.c_str(), 9900, 0); zmq_recv (requester, charFromSSC, 9900, 0); @@ -60,7 +62,7 @@ int main() const int numTurbines = 2; const int nInputsToSSC = 2; - const int nOutputsFromSC = 2; + const int nOutputsFromSSC = 2; for(int i = 0; i < 3; i++){ printf("Call %d.\n",i); diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H index f1639aef0..f4c80e4f2 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H @@ -1,8 +1,16 @@ -//_SSC_ +// _SSC_ zeromqSSC.C +// +// This superController code serves as a zeroMQ client, which will communicate +// with a zeroMQ server. The zeroMQ server will be the remote controller, such as +// a MATLAB script, a Python script, or any other piece of software using the +// zeroMQ functionality. +// +// Authors: Bart Doekemeijer & Paul Fleming +// static std::vector zeromqInfoToSC; static std::vector zeromqInfoFromSC; static int isFirstCall = 1; -int sizeInfoFromSSC = nInputsToSSC*numTurbines; +int sizeInfoFromSSC = nOutputsFromSSC*numTurbines; if (isFirstCall == 1){ // Initialize std::vectors with appropriate dimensions @@ -17,18 +25,17 @@ if (isFirstCall == 1){ } -// Pass the inputs to the std::vector format +// Pass the SSC inputs to the local std::vector format for(int i = 0; i < nInputsToSSC*numTurbines; i++){ zeromqInfoToSC[i] = superInfoToSSC[i]; } // Call the SC from external library SC_zeromq(runTime_.value(), zeromqInfoToSC, zeromqInfoFromSC, sizeInfoFromSSC ); -//SC_zeromq(timeStep, zeromqInfoToSC, zeromqInfoFromSC, sizeInfoFromSSC ); // Print the applied control settings for(int i=0; i < numTurbines; i++){ - for(int j=0; j superInfoLocalIn(nInputsToSSC*numTurbines,0.0); - List superInfoLocalOut(nOutputsFromSC*numTurbines,0.0); + List superInfoLocalOut(nOutputsFromSSC*numTurbines,0.0); //superInfoLocal = List (superInfoLength*numTurbines,0.0); //Info << "(sc) superInfoLocal = " << superInfoLocal << endl; @@ -1083,7 +1083,7 @@ void horizontalAxisWindTurbinesADM::superController() callSuperController(); // Call the superController function // Send result local - for(int si = 0; si < nOutputsFromSC *numTurbines; si++) + for(int si = 0; si < nOutputsFromSSC *numTurbines; si++) { superInfoLocalOut[si] = superInfoFromSSC[si]; } @@ -1096,7 +1096,7 @@ void horizontalAxisWindTurbinesADM::superController() // Now reassign out // Send back out - for(int si = 0; si < nOutputsFromSC *numTurbines; si++) + for(int si = 0; si < nOutputsFromSSC *numTurbines; si++) { superInfoFromSSC[si] = superInfoLocalOut[si]; } @@ -2000,9 +2000,9 @@ void horizontalAxisWindTurbinesADM::printOutputFiles() *nacYawFile_ << standardToCompass(nacYaw[i]/degRad) << endl; // _SSC_, print out superInfo for this turbine - for(int si = 0; si < nOutputsFromSC; si++) + for(int si = 0; si < nOutputsFromSSC; si++) { - *superInfoFile_ << superInfoFromSSC[i * nOutputsFromSC + si] << " "; + *superInfoFile_ << superInfoFromSSC[i * nOutputsFromSSC + si] << " "; } for(int si = 0; si < nInputsToSSC; si++) { diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H index 31d1f5b65..33e54f473 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H @@ -602,7 +602,7 @@ private: // // Note must be below superInfoBufferSize int nInputsToSSC; - int nOutputsFromSC; + int nOutputsFromSSC; //_SSC_ : Define a list for passing info between controllers and super controller //List superInfo(1000,scalar::zero); From e8f6584876c3f334ac0ae7d1d290fa9329f85f6c Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Fri, 4 May 2018 17:49:25 -0600 Subject: [PATCH 28/65] Upload example SC files for Python, C and MATLAB. MATLAB still requires some debugging, but works well overall. --- .../zeromqExamplesSSC/.gitignore | 7 +++ .../example.ADM.ssc/zeromqExamplesSSC/cSSC.c | 45 ++++++++++++++ .../zeromqExamplesSSC/matlabSSC.m | 58 ++++++++++++++++++ .../zeromqExamplesSSC/pythonSSC.py | 27 ++++++++ .../zeromqExamplesSSC/readme.txt | 46 ++++++++++++++ .../zeromqExamplesSSC/workspace.mat | Bin 0 -> 7647 bytes 6 files changed, 183 insertions(+) create mode 100644 exampleCases/example.ADM.ssc/zeromqExamplesSSC/.gitignore create mode 100644 exampleCases/example.ADM.ssc/zeromqExamplesSSC/cSSC.c create mode 100644 exampleCases/example.ADM.ssc/zeromqExamplesSSC/matlabSSC.m create mode 100644 exampleCases/example.ADM.ssc/zeromqExamplesSSC/pythonSSC.py create mode 100644 exampleCases/example.ADM.ssc/zeromqExamplesSSC/readme.txt create mode 100644 exampleCases/example.ADM.ssc/zeromqExamplesSSC/workspace.mat diff --git a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/.gitignore b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/.gitignore new file mode 100644 index 000000000..5e5d223e5 --- /dev/null +++ b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/.gitignore @@ -0,0 +1,7 @@ +## Ignore any compiled functions +*.pyc +*.o +cSSC +*.dll +*.exe +*.so \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/cSSC.c b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/cSSC.c new file mode 100644 index 000000000..4669ec978 --- /dev/null +++ b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/cSSC.c @@ -0,0 +1,45 @@ +// COPIED AND MODIFIED FROM: http://zguide.zeromq.org/c:hwserver + +// Hello World server + +#include +#include +#include +#include +#include + +int main (void) +{ + printf("Setting up connection.\n"); + + + // Socket to talk to clients + void *context = zmq_ctx_new (); + void *responder = zmq_socket (context, ZMQ_REP); + int rc = zmq_bind (responder, "tcp://*:5552"); + + assert (rc == 0); + printf("Set up connection. Attempting to receive signals.\n"); + + while (1) { + char buffer [9900]; + + // Receive info from SOWFA + zmq_recv (responder, buffer, 9900, 0); + printf("Received signal [%s].\n", buffer); + + // Do your control stuff + // ... + // ... for this example case, just give constant output + char returnSignal [11] = "263.33 2.0"; // Make sure the dimensions are appropriate + // ... + // + + // Send back to SOWFA + printf ("Sending signal back to SOWFA [%s].\n",returnSignal); + zmq_send (responder, returnSignal, 9900, 0); + printf("Signal sent\n"); + + } + return 0; +} diff --git a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/matlabSSC.m b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/matlabSSC.m new file mode 100644 index 000000000..ce31af0f4 --- /dev/null +++ b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/matlabSSC.m @@ -0,0 +1,58 @@ +clear all; close all; clc; +% +% MATLAB can use zeroMQ, but it is not necessarily so straight-forward. The easiest solution found was +% using "jeroMQ", which can be downloaded from https://github.com/zeromq/jeromq. After installation, +% Update the path below and you should be all set. +% +% For more information, check out: +% https://mathworks.com/matlabcentral/answers/269061-how-do-i-integrate-zeromq-library-with-matlab-i-want-my-matlab-program-to-be-a-subscriber-of-zeromq +% +% Note: to install jeroMQ, you need to have 'maven' installed. When using Maven to install jeroMQ, +% you may run into an error about the unit testing. If so, disable them and run again using +% 'mvn install -DskipTests' +% +% Recommended Java JDK version: 1.8.0_171 (tested by excluding unit tests) +% +% +javaaddpath('/home/bartdoekemeijer/OpenFOAM_Develop/jeroMQ/jeromq/target/jeromq-0.4.4-SNAPSHOT.jar','-dpath'); + +import org.zeromq.* + + +disp(['Setting up the server...']); +context = zmq.Ctx(); +socket = context.createSocket(ZMQ.REP); +socket.bind('tcp://*:5553'); + +noMessagesReceived = 0; +disp(['Entering loop for collecting and sending data...']); +while 1 + + %% Receive information from SOWFA + % message = socket.recv(0); % Wait indefinitely until found a transmitter + message = socket.recv(1); % Do not wait for transmitter + if length(message) <= 0 + %disp([datestr(rem(now,1)) '__ no message received.']); + pause(0.05); % wait 50 ms + else + json_data = native2unicode(message.data)'; % Received message + disp([datestr(rem(now,1)) '__ message received: [' json_data '].']); + + messageRecv = message; + + % Do your control input stuff here + % ... + pause(1); % Do work: find control action + str_send = '263.35 2.0'; + % ... + % ... + + % Send a message (control action) back to SOWFA + noMessagesReceived = noMessagesReceived + 1; + message = zmq.Msg(length(str_send)); + message.put(unicode2native(str_send)); + socket.send(message, 0); + end +end +% Close connection +socket.close() \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/pythonSSC.py b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/pythonSSC.py new file mode 100644 index 000000000..5af9c5bc6 --- /dev/null +++ b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/pythonSSC.py @@ -0,0 +1,27 @@ +# COPIED AND MODIFIED FROM: http://zguide.zeromq.org/py:hwserver +# +# Hello World server in Python +# Binds REP socket to tcp://*:5555 +# Expects b"Hello" from client, replies with b"World" +# +# +# For peregrine: use 'module load python/2.7.6'. +# Otherwise: make sure you have pyzmq, through 'pip install pyzmq' +# +import time +import zmq + +context = zmq.Context() +socket = context.socket(zmq.REP) +socket.bind("tcp://*:5552") + +while True: + # Wait for next request from client + message = socket.recv() + print("Received request: %s" % message) + + # Do some 'work' + time.sleep(1) + + # Send reply back to client + socket.send(b"263.33 2.0") \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/readme.txt b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/readme.txt new file mode 100644 index 000000000..c53e52ffa --- /dev/null +++ b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/readme.txt @@ -0,0 +1,46 @@ +// +// _SSC_ readme.txt +// Author: Bart Doekemeijer +// Date: May 4, 2018 +// + +__Description: +This document is a short readme for using the zeromqSSC option for wind farm control. +Read it carefully and study the examples before applying your own controller to SOWFA. + + +__Guidelines: +The 'zeromqSSC' interface works using the zeroMQ tool (http://zeromq.org/). This is an +interfacing tool that allows the exchange of information between different programs and +even between different computers using a network communication protocol (e.g., tcp). +This communication typically is between two programs: a 'client' and a 'server'. + +In SOWFA, the 'server' is your controller implemented in the language of choice, and the +'client' is actually (the 'zeromqSSC' function included in) SOWFA. Note that information +is exchanged through a string of an array of numbers. The formatting from array to string, +and then the formatting from string back to array, should be done on both sides: the client +and the server. So, in your case, you will have to account for this in your supercontroller. + + +__ Usage: +1. Enable 'zeromqSSC' in the turbineArrayProperties, and set 'sscFunction' to 'zeromqSSC'. +2. Set the individual turbine yaw and blade pitch controller to "yawSC" and "PIDSC". +3. Start up your zeroMQ server (i.e., your wind farm controller code using zeroMQ). +4. Start up your SOWFA simulation. + + +__ Example cases: +Some examples cases are given in this folder for a wind farm controller in C, a wind farm +controller is Python, and a wind farm controller in MATLAB. These are just bare-bone +functions/placeholders for you to program your wind farm control solution in. + +Note: make sure to compile the C-example with -lzmq. E.g., for NRELs Peregrine HPC, use: +gcc -Wall -o cSSC -L /nopt/nrel/apps/zeromq/gcc/4.2.2/lib -lzmq \ + -I /nopt/nrel/apps/zeromq/gcc/4.2.2/include cSSC.c + + +__Debugging: +If there are any issues: check if this is an issue with SOWFA/zeromqSSC, or if this is a +problem with your controller. If the issue is on the SOWFA side, please submit an 'issue' +on the Github page (https://github.com/NREL/SOWFA). For zeromqSSC-related issues, contact +Bart Doekemeijer (TU Delft) or Paul Fleming (NREL). \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/workspace.mat b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/workspace.mat new file mode 100644 index 0000000000000000000000000000000000000000..5de313e930a3427e31dc6c780708691811c41d26 GIT binary patch literal 7647 zcma)=Q&=U8!^E@eR3}@TH`^!Mn{B(Tld;*@tPPv(Hn*K@+qK!&|GoL{zu(nd&pb01 zqXg1a1c_5{v#?Ppfi%Bb**aJZ$adRRHTISNq7C@SlKc(|A;B-|`bJuEFKoSg(H zq}^;OluW@C6kHVSyaHU@0-QV)9Bk}-6#q}4{tsw5CBT1Ln-mJlJ12GpUQ<*5mCZ#! zG7%eI3R6vz1~=3ji2($Mg#!Z7pmlsH#`#i=m6(hncf8KY*5u*UT1e%cG~2VZ^lE(C zb@aOUc;0L!e3avV=w-Du9Q)>abO;ZL{#oE;rUh@3z@DTXH!EO(gR@j27k6cB-{qF7`uG7W(A_G zd=`CND!=~`M)nEo9-W3`>V$3?2 z^Fxi7&&HSNxW^P`SbJHktu7<JDv=L62hWHVm`*>cqP)%uqnhUUnV;e2Z0u>{2Nm=9#6iY}br73o3AWY?X6$Q74^lg%U_ML=Bra<<BJ!Nywv&zBtdF=AdN)^j(Z_@m_A41st0UvF$St?mR&BU~#)^?EE# z2PNhUm~Ox5t8ifw7kD?vqS3X~*VdXA6L5VyKFDtDQcGJx_4z66JztYT@Z<&|+vDp- zQM>1=3Z7rnD9O2;Qv-%>c&}pePkMj9#A@U%5o@f{|97+<>gPB9+wa?$T9BbaN>e5^ zq}``quDrP(4`PgTHQbU`(DJb6#fi$`a?$wvFZkjB)9?J|g9Q}WRPe3knff1T7Mt?k zJhOMKt2bscVVHE|BOuLF8O;MoVEjMwM$&nyVfzp5TA7W5{Rop zAn_2PeKf!#V4efn01C%G5`zv8%@gRzSCb0vR;XTXQ`?4vSal7c`Tns2Sbm9SnEj8riaXkO`3*T56QZeCLas3mH@>( z#uAQ+!EAPR|Md&m4ko;WY&IZCIjKQ{9G z#3V&Hm)x;aGJT~dfV6EE*-XqQI}ra*cg^?GzXaD_;y7C>VLdvfYEFdgU4MGmVb-{STUK5JHa+TGeQM>P}l=ZsU&Gh$I~ zgrGSI1QPyHTmMt&-Y>dvD2luP;$FPEw}=;ua`}>7#UJ`>Inc1~B`Ld8-vzG=o7P{r z?FiOK_hB%tcM(bj?nGm&(@PqTR2pLM>2H#CS13<+!~)p?1bB3<)}zLEEm-)g^2cyd zOUpdQA@Li2s4)ST00LRpzuj3E*fE+z>h?CrS+@6`P^@)w zq}rmAz(Z?MiL0Gv?!$%9Bx(4XmM_X;vCL7#P95Y9<&fiajDF6gz@ za!ff=9a5gOVB|d$`MEYba1nIdW7QUepB)BHF$Z1+<$Hk%wnS=gS+HxKQr&}Uu_wqt zsoaq3i1{X=O7t+$4ZfmBgPh6QE=aKRyHq1d%{D0&DR2G;Vhbm5#EXo`ghYn=x?13r zh3~fQ9TVh%kmRrNeoD2(OK%*Y?H#L-mTecW3A* zx;?xJUmo@)>S=@FPV@Cj9Qu-Hy1H7Qu5KQ7r@t#2^NVrsx0ylQ&ExPjDo4ap_$oH# zzWMpb{VHV>?D)8qPe1H~i7>qNB1l z2lh!T1GfNX89MKtm1cf5?(nkJ8)g28WZ47OKrafh?t$=&& z>MnY~RuDDhS2QZ8HHKs8I03Km*V2HyOg1~3PDK`66AoexLp|8$R)R3u9C3<+(bLN_ zF7HIc&Cg7^N#wo1KN^%QW}0DSQm~?o9eL&RzKYyig^5?3Wc*QeV<$s8C+6~4r4$od zv~Kt6K(brY>5q5+Z%6btgNUt^za|FS`G!e%kSaw>gTujU@`g;jf;{Chp{)$sE`wbd9swGE-!cqx-u>lJa>Pd zDjQ=?KgV05pOqC^$Zb$}%Ih3mCk^0h{3SMhy`TZgaFVH!)f-!R7N=&_4)ZN~lw*$z zUvv;k!->7lhRN*|STs=;G2{OXJJv!ctR$^g0H9 zx<%Ulmu2)kImzkrWz`0&SPAfuVF5mY9V2wKT1ziYz$Lo}9CZk0?D*)_y658$o4;r2 zkB!h}Xo})SxEgy7va?9BfOUt5!O$k!cwKfSPwxPx<7%J=+bX9bE>_QgPFgIV**O?O zBl&mfG6xfD6y%pqx6vixB^Q|?-uu90mUQ0O+=#06sxZSNdoj@xp1wmpk}`o7xeaec zM$g?Yh>NHt7E)B0@(Vr~dPC}gibx73`BpiQ@2^#atHaN)KLGK&+v6MUJsB(qVhzY% zA&+qN^WllGEBHMy+st!D!aY;4Ws4`w5eg@24&bU!=?- z=EX610uhnL-%;WbMxwhzVNEkv71mi)KaBhr$~&;)N=XBi8AA*&Uqk73U*nj5xxWb9 z>Sm#2y!_`qI1q7JyHldG{AOoJpvNvg0akOO%U#52J(goL!*I}$ZGbQN!&jfzf2@zr z4AiWM-j_0KDo5LOX%aZ#Lz7O6A1@u~jpH(iaMp5IyPVowkUJB)13rCZSJvg&V*)Hf~6`=3=P^LTvcmz5+X?!7KJ1HNhGFI&KYy#Qmr?ZfyA) z5WaNGk7wQ;s;A*z5(q>S5kOtYS%zzGnm%ql>>~&Z5pR>c5Ecbgl!CRGfoq9nl33RO zYtz^w;rH3cK6y&b2tIBLy(W`-#gP?^9dvVH8qtM`s40wf!! z7+gxEpHUNNDb&5jm2&KX&7=7EY7@C_-|c(a6U>gWy_68$nyD(L+fEUM(_VzEB0^>c z;7z}TIFomzO(d;ax{>d_-ThlhtM7$ft0>kLGXm<^$FnpuJr>eAkYZo1z4e_T!w$W5 zY13<*SltfX8+jP9=6NK^^?% zsF!VKs;15J6MHaSHnje?tf+=(ABh{m=Umm|Un8&muj8L|QRBSGRRU}Xq_V@XZyv8f zSKIn$H#TZ8t3|H={3A>N>S^*P6Y~8R+UCx#`!#LA?V>A<-G5_9HiPBVVHZkN?d9=z zq&1i(7#3)IJF=kC*jHA;s_(yY(DnPOp&h#2RZ|Z^Lqh_xxF>3cC7;bA(}_NvXe50c%DRD&ZUk$by2rfq8@+6{Jn*g)y*(r$z&lV5~aPdlK# zjo7tdroOddb}99JaHnbe^Q0~r5EwBU=RZZ?O_ z_ZQXuV8QJfgtq|0KQ3o;5E%#<8TH6&{^)E*zt=)xoZ%hQJsQb3BCyuX@e3{NAgv*> z!o2NViY+XXAiP({S4&$^Q1^_4M|tiT9c(w#lrEUCUr7(O;uLj61m>BM)B;lbu|T=1 zZV>wzx;9ibQJ)6S1V7{?+cIYjxWBNrkF)o^LF)Szv`Hhi0R)9*5?sJ9d8Q=a3?{5h z6!7~gJPoeg<#2ECXP2^}O#npOwMIvf_EFr9_32l76&)x9wUiKZKjo^px zBD}&evu(4^_`{cZ1*9cKP4VmV-PK}eJ0OL1tYD5#~AB=8-cnwD&+)& z`_+i$)+LgCHN?E$Zloga^$CXZN6t4^^RNnP8Mge~4me*-c+1Agolyr^Sz7bBC!s!y zTCX(nSwd9?8AL{xG{mlFV+7!4%x`Pw{*3+_k}fctSfBNH1Y$2~Q>Ov`h9pVhTPFFL~S9{SJ)Aq!oMf)O&od-Yxfbw{2#|ARB0RjzX>8ZO;o>>dK1vJN4lWlk|#~U!ZvWq!`AWP zsrpTdkhbh27#hB~^{(?=fB2>$ml0$u#VA7#U9re*kEo@>`x?>caw0!Ia)K2O5LJi9?Wvp#a2!(r@- zTEoTExM2KFo)O1KNV{i77p;}El=tf2&~-%DFl^nfL{|nT%8N=w$jXStw9XU})MnL_rEmnH z$9T{>MBeISsr$$-Wy*m=_ApFCb&D|~xos`N+fjg$FH{^fJBYfM!)8&fj(&-_C^lw2 zkc9`1;fhj8ADurCP_$jMXv22>xcr-}JK!Ow1A)%IyaEww`HCFjQKg$)!_( z&sYdYSnPCH~X(@o>D(iGK=GLW9Rm?{t1j0xrO0 z=oB`zbLoe+pklgRer438)ZWyA#=F(wFFKK>@(ONj3yfQa9mFl@q2)~)?hk>#68u)f zoySq{LXXP19h565CA-Z-r>E7^zpCNY;(Ga!tO_ZR;yYok1tz9W0>E_@ZkwoqzX+8! z5(GY~@dN=1*dWc0yLc3C=F~Xl-M=Pi0g^7X`5AR?y zC+eT%>-jE35orkwS1U#vXAIQ#2CL zI&?;&({bu~N$dRDF%w%}dp@hi>5IV~W%@kjq|k>YgR@)napE=VPqQ^Dn9FDbzF3cN zsv=nLR8n1t^>Mc!^C-QC8_GNT$sXEBS7rWs9-K|ks>e>Pw)+%Mn#qi>#0b5pq8%ue zFE&pgg)Zzj`@p=lU5-yJtZY_a{uh=t_Jxo?)}yF|;fKbjIYH^)&fu@CJyc__5nFz? zwyVDy2b)?R5D`0)6KN!);}~%d@u}^mCxlHe^x{r+Bj;`4(c^X!JT(=khxmV6V)h z^M4BOCEc4MOfc=fQmQ z$OMR2B$TA_Uq+%=SFOqwlSmqC>E+})xGWhM_Z*lkNcD+03uWAz?F6j!!W|=|Z){t5ysVJ^CaAe&{pBww04Q&U8lD z1EaN~lVNtE)1uD49?&|ic5g~;G!uIXd~r&oMI5MdX3@}`NtCFK_9-;(uLw~hIe2p7CimKs}+^W&-l=#Uj;KKpP4Z=vq`4+xY6T#*Cvcb z1ywFnE#%tufU*t%?-t(Sb^E+lCUtVf9XJ;?<7yG|GYZ!0v>pLi! zr51%M;_qOkHc!z=Z!!|B58PQ{$1rf}TY*F@dQ9O~yg#TW?`)M5u9UU-!F%`xkDk$7 zu2WWMIMb{)^3y0NO+f(`eYo_OaITN`&Kp#F=Q9MlxU_A0Q?N_xmZT5NB`b{Ir3@9U z%nhxw`D(HlT=d``3q1RY zT+G+u(kYU*y>HPeD#hHNogHX6&YTeOv|80dR^$^4^bx#$;5JpOJGZ?Uk_>UDdvj-4 zY=Qo~A7zpV5iqE(ul1fjB%~b?$$oT@gNmqY*Dx>?NfT7|7UroM2-Oy?;x&TM@O^b4EX&f#u*z zAzW9vcXOOB$3HJySR9A)+6;Wgr_8GK=KV7?dZ7@7(R+60X@yLRepbx<3<|6G2;*Xz zxt=IY`mt%Yy~_Os;cYV%hPvh=#ECsm>7bPGI1f=*KX@st#>ygXC5Hr!2|-t{cUAy- zCTS_}YT0-WT4AzHw8^|n%)YvKoiG;z&6h@0D`39 zig}Qg74z#cUxwi7mqH{39MwId+3QY3YG-J0vkdg6$j_YnsLOs&zAHfym9RP! zDq{LRTxcxuT6zo|L8NC87AbBrpU-j3*}v24#$qZH`SInDqJ8EtBW@E1vR!4`wtiBFpR1a{KYH8m*{pfUZg;R{f1BEgg`DQIy#%Vcz@$vrY3N zQT$83h%D6*kYsTYuO(ksl%6o>w}k|}){*WQ2}9hIC4DHRa1y+A2{7f*w=xOWBS~QG zl>Fb5d5Ye(7|wOVpt8dT&oaP^*;5u?9ljeIY~W~U6xtV#Z6L@>oWqiKZj}DUE27<; zA<<3)YgDLTx+}-m7sW9e Date: Fri, 4 May 2018 18:56:46 -0600 Subject: [PATCH 29/65] Fix the matlabSSC code. Proper formatting from received message to an array of data. It appears that MATLAB does not properly filter the non-set message data, so it will come up as a bunch of random symbols. Added manual manipulations to fix it. Tested on one-turbine case successfully. --- .../example.ADM.ssc/zeromqExamplesSSC/matlabSSC.m | 13 ++++++++----- .../controllers/superControllers/zeromqSSC.C | 2 +- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/matlabSSC.m b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/matlabSSC.m index ce31af0f4..75ab25eda 100644 --- a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/matlabSSC.m +++ b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/matlabSSC.m @@ -36,16 +36,19 @@ pause(0.05); % wait 50 ms else json_data = native2unicode(message.data)'; % Received message - disp([datestr(rem(now,1)) '__ message received: [' json_data '].']); - messageRecv = message; - + % cut down json_data to remove all non-used bytes + sortedFloats = textscan( json_data, '%f', 'Delimiter',' ' ); + inputsToSSC = sortedFloats{1}'; % row vector with data + disp([datestr(rem(now,1)) '__ message received: [' num2str(inputsToSSC) '].']); + + % Do your control input stuff here % ... - pause(1); % Do work: find control action - str_send = '263.35 2.0'; % ... % ... + str_send = '263.35 2.0'; % This should be your next control inputs + % Send a message (control action) back to SOWFA noMessagesReceived = noMessagesReceived + 1; diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C index 91cdbf351..12314f915 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C @@ -26,7 +26,7 @@ void SC_zeromq(float timeStep, std::vector infoToSC, std::vector & // Establish connection of this is the first call to the SC if (isFirstCall){ printf ("0mq client: Connecting to 0mq server...\n"); - zmq_connect (requester, "tcp://localhost:5552"); + zmq_connect (requester, "tcp://localhost:5553"); isFirstCall = 0; // disable for future calls } From e458933f1deb2a36107177449540432b6b5c808e Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Fri, 4 May 2018 19:00:02 -0600 Subject: [PATCH 30/65] Remove the workspace.mat that was accidentally added during debugging --- .../zeromqExamplesSSC/workspace.mat | Bin 7647 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 exampleCases/example.ADM.ssc/zeromqExamplesSSC/workspace.mat diff --git a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/workspace.mat b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/workspace.mat deleted file mode 100644 index 5de313e930a3427e31dc6c780708691811c41d26..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7647 zcma)=Q&=U8!^E@eR3}@TH`^!Mn{B(Tld;*@tPPv(Hn*K@+qK!&|GoL{zu(nd&pb01 zqXg1a1c_5{v#?Ppfi%Bb**aJZ$adRRHTISNq7C@SlKc(|A;B-|`bJuEFKoSg(H zq}^;OluW@C6kHVSyaHU@0-QV)9Bk}-6#q}4{tsw5CBT1Ln-mJlJ12GpUQ<*5mCZ#! zG7%eI3R6vz1~=3ji2($Mg#!Z7pmlsH#`#i=m6(hncf8KY*5u*UT1e%cG~2VZ^lE(C zb@aOUc;0L!e3avV=w-Du9Q)>abO;ZL{#oE;rUh@3z@DTXH!EO(gR@j27k6cB-{qF7`uG7W(A_G zd=`CND!=~`M)nEo9-W3`>V$3?2 z^Fxi7&&HSNxW^P`SbJHktu7<JDv=L62hWHVm`*>cqP)%uqnhUUnV;e2Z0u>{2Nm=9#6iY}br73o3AWY?X6$Q74^lg%U_ML=Bra<<BJ!Nywv&zBtdF=AdN)^j(Z_@m_A41st0UvF$St?mR&BU~#)^?EE# z2PNhUm~Ox5t8ifw7kD?vqS3X~*VdXA6L5VyKFDtDQcGJx_4z66JztYT@Z<&|+vDp- zQM>1=3Z7rnD9O2;Qv-%>c&}pePkMj9#A@U%5o@f{|97+<>gPB9+wa?$T9BbaN>e5^ zq}``quDrP(4`PgTHQbU`(DJb6#fi$`a?$wvFZkjB)9?J|g9Q}WRPe3knff1T7Mt?k zJhOMKt2bscVVHE|BOuLF8O;MoVEjMwM$&nyVfzp5TA7W5{Rop zAn_2PeKf!#V4efn01C%G5`zv8%@gRzSCb0vR;XTXQ`?4vSal7c`Tns2Sbm9SnEj8riaXkO`3*T56QZeCLas3mH@>( z#uAQ+!EAPR|Md&m4ko;WY&IZCIjKQ{9G z#3V&Hm)x;aGJT~dfV6EE*-XqQI}ra*cg^?GzXaD_;y7C>VLdvfYEFdgU4MGmVb-{STUK5JHa+TGeQM>P}l=ZsU&Gh$I~ zgrGSI1QPyHTmMt&-Y>dvD2luP;$FPEw}=;ua`}>7#UJ`>Inc1~B`Ld8-vzG=o7P{r z?FiOK_hB%tcM(bj?nGm&(@PqTR2pLM>2H#CS13<+!~)p?1bB3<)}zLEEm-)g^2cyd zOUpdQA@Li2s4)ST00LRpzuj3E*fE+z>h?CrS+@6`P^@)w zq}rmAz(Z?MiL0Gv?!$%9Bx(4XmM_X;vCL7#P95Y9<&fiajDF6gz@ za!ff=9a5gOVB|d$`MEYba1nIdW7QUepB)BHF$Z1+<$Hk%wnS=gS+HxKQr&}Uu_wqt zsoaq3i1{X=O7t+$4ZfmBgPh6QE=aKRyHq1d%{D0&DR2G;Vhbm5#EXo`ghYn=x?13r zh3~fQ9TVh%kmRrNeoD2(OK%*Y?H#L-mTecW3A* zx;?xJUmo@)>S=@FPV@Cj9Qu-Hy1H7Qu5KQ7r@t#2^NVrsx0ylQ&ExPjDo4ap_$oH# zzWMpb{VHV>?D)8qPe1H~i7>qNB1l z2lh!T1GfNX89MKtm1cf5?(nkJ8)g28WZ47OKrafh?t$=&& z>MnY~RuDDhS2QZ8HHKs8I03Km*V2HyOg1~3PDK`66AoexLp|8$R)R3u9C3<+(bLN_ zF7HIc&Cg7^N#wo1KN^%QW}0DSQm~?o9eL&RzKYyig^5?3Wc*QeV<$s8C+6~4r4$od zv~Kt6K(brY>5q5+Z%6btgNUt^za|FS`G!e%kSaw>gTujU@`g;jf;{Chp{)$sE`wbd9swGE-!cqx-u>lJa>Pd zDjQ=?KgV05pOqC^$Zb$}%Ih3mCk^0h{3SMhy`TZgaFVH!)f-!R7N=&_4)ZN~lw*$z zUvv;k!->7lhRN*|STs=;G2{OXJJv!ctR$^g0H9 zx<%Ulmu2)kImzkrWz`0&SPAfuVF5mY9V2wKT1ziYz$Lo}9CZk0?D*)_y658$o4;r2 zkB!h}Xo})SxEgy7va?9BfOUt5!O$k!cwKfSPwxPx<7%J=+bX9bE>_QgPFgIV**O?O zBl&mfG6xfD6y%pqx6vixB^Q|?-uu90mUQ0O+=#06sxZSNdoj@xp1wmpk}`o7xeaec zM$g?Yh>NHt7E)B0@(Vr~dPC}gibx73`BpiQ@2^#atHaN)KLGK&+v6MUJsB(qVhzY% zA&+qN^WllGEBHMy+st!D!aY;4Ws4`w5eg@24&bU!=?- z=EX610uhnL-%;WbMxwhzVNEkv71mi)KaBhr$~&;)N=XBi8AA*&Uqk73U*nj5xxWb9 z>Sm#2y!_`qI1q7JyHldG{AOoJpvNvg0akOO%U#52J(goL!*I}$ZGbQN!&jfzf2@zr z4AiWM-j_0KDo5LOX%aZ#Lz7O6A1@u~jpH(iaMp5IyPVowkUJB)13rCZSJvg&V*)Hf~6`=3=P^LTvcmz5+X?!7KJ1HNhGFI&KYy#Qmr?ZfyA) z5WaNGk7wQ;s;A*z5(q>S5kOtYS%zzGnm%ql>>~&Z5pR>c5Ecbgl!CRGfoq9nl33RO zYtz^w;rH3cK6y&b2tIBLy(W`-#gP?^9dvVH8qtM`s40wf!! z7+gxEpHUNNDb&5jm2&KX&7=7EY7@C_-|c(a6U>gWy_68$nyD(L+fEUM(_VzEB0^>c z;7z}TIFomzO(d;ax{>d_-ThlhtM7$ft0>kLGXm<^$FnpuJr>eAkYZo1z4e_T!w$W5 zY13<*SltfX8+jP9=6NK^^?% zsF!VKs;15J6MHaSHnje?tf+=(ABh{m=Umm|Un8&muj8L|QRBSGRRU}Xq_V@XZyv8f zSKIn$H#TZ8t3|H={3A>N>S^*P6Y~8R+UCx#`!#LA?V>A<-G5_9HiPBVVHZkN?d9=z zq&1i(7#3)IJF=kC*jHA;s_(yY(DnPOp&h#2RZ|Z^Lqh_xxF>3cC7;bA(}_NvXe50c%DRD&ZUk$by2rfq8@+6{Jn*g)y*(r$z&lV5~aPdlK# zjo7tdroOddb}99JaHnbe^Q0~r5EwBU=RZZ?O_ z_ZQXuV8QJfgtq|0KQ3o;5E%#<8TH6&{^)E*zt=)xoZ%hQJsQb3BCyuX@e3{NAgv*> z!o2NViY+XXAiP({S4&$^Q1^_4M|tiT9c(w#lrEUCUr7(O;uLj61m>BM)B;lbu|T=1 zZV>wzx;9ibQJ)6S1V7{?+cIYjxWBNrkF)o^LF)Szv`Hhi0R)9*5?sJ9d8Q=a3?{5h z6!7~gJPoeg<#2ECXP2^}O#npOwMIvf_EFr9_32l76&)x9wUiKZKjo^px zBD}&evu(4^_`{cZ1*9cKP4VmV-PK}eJ0OL1tYD5#~AB=8-cnwD&+)& z`_+i$)+LgCHN?E$Zloga^$CXZN6t4^^RNnP8Mge~4me*-c+1Agolyr^Sz7bBC!s!y zTCX(nSwd9?8AL{xG{mlFV+7!4%x`Pw{*3+_k}fctSfBNH1Y$2~Q>Ov`h9pVhTPFFL~S9{SJ)Aq!oMf)O&od-Yxfbw{2#|ARB0RjzX>8ZO;o>>dK1vJN4lWlk|#~U!ZvWq!`AWP zsrpTdkhbh27#hB~^{(?=fB2>$ml0$u#VA7#U9re*kEo@>`x?>caw0!Ia)K2O5LJi9?Wvp#a2!(r@- zTEoTExM2KFo)O1KNV{i77p;}El=tf2&~-%DFl^nfL{|nT%8N=w$jXStw9XU})MnL_rEmnH z$9T{>MBeISsr$$-Wy*m=_ApFCb&D|~xos`N+fjg$FH{^fJBYfM!)8&fj(&-_C^lw2 zkc9`1;fhj8ADurCP_$jMXv22>xcr-}JK!Ow1A)%IyaEww`HCFjQKg$)!_( z&sYdYSnPCH~X(@o>D(iGK=GLW9Rm?{t1j0xrO0 z=oB`zbLoe+pklgRer438)ZWyA#=F(wFFKK>@(ONj3yfQa9mFl@q2)~)?hk>#68u)f zoySq{LXXP19h565CA-Z-r>E7^zpCNY;(Ga!tO_ZR;yYok1tz9W0>E_@ZkwoqzX+8! z5(GY~@dN=1*dWc0yLc3C=F~Xl-M=Pi0g^7X`5AR?y zC+eT%>-jE35orkwS1U#vXAIQ#2CL zI&?;&({bu~N$dRDF%w%}dp@hi>5IV~W%@kjq|k>YgR@)napE=VPqQ^Dn9FDbzF3cN zsv=nLR8n1t^>Mc!^C-QC8_GNT$sXEBS7rWs9-K|ks>e>Pw)+%Mn#qi>#0b5pq8%ue zFE&pgg)Zzj`@p=lU5-yJtZY_a{uh=t_Jxo?)}yF|;fKbjIYH^)&fu@CJyc__5nFz? zwyVDy2b)?R5D`0)6KN!);}~%d@u}^mCxlHe^x{r+Bj;`4(c^X!JT(=khxmV6V)h z^M4BOCEc4MOfc=fQmQ z$OMR2B$TA_Uq+%=SFOqwlSmqC>E+})xGWhM_Z*lkNcD+03uWAz?F6j!!W|=|Z){t5ysVJ^CaAe&{pBww04Q&U8lD z1EaN~lVNtE)1uD49?&|ic5g~;G!uIXd~r&oMI5MdX3@}`NtCFK_9-;(uLw~hIe2p7CimKs}+^W&-l=#Uj;KKpP4Z=vq`4+xY6T#*Cvcb z1ywFnE#%tufU*t%?-t(Sb^E+lCUtVf9XJ;?<7yG|GYZ!0v>pLi! zr51%M;_qOkHc!z=Z!!|B58PQ{$1rf}TY*F@dQ9O~yg#TW?`)M5u9UU-!F%`xkDk$7 zu2WWMIMb{)^3y0NO+f(`eYo_OaITN`&Kp#F=Q9MlxU_A0Q?N_xmZT5NB`b{Ir3@9U z%nhxw`D(HlT=d``3q1RY zT+G+u(kYU*y>HPeD#hHNogHX6&YTeOv|80dR^$^4^bx#$;5JpOJGZ?Uk_>UDdvj-4 zY=Qo~A7zpV5iqE(ul1fjB%~b?$$oT@gNmqY*Dx>?NfT7|7UroM2-Oy?;x&TM@O^b4EX&f#u*z zAzW9vcXOOB$3HJySR9A)+6;Wgr_8GK=KV7?dZ7@7(R+60X@yLRepbx<3<|6G2;*Xz zxt=IY`mt%Yy~_Os;cYV%hPvh=#ECsm>7bPGI1f=*KX@st#>ygXC5Hr!2|-t{cUAy- zCTS_}YT0-WT4AzHw8^|n%)YvKoiG;z&6h@0D`39 zig}Qg74z#cUxwi7mqH{39MwId+3QY3YG-J0vkdg6$j_YnsLOs&zAHfym9RP! zDq{LRTxcxuT6zo|L8NC87AbBrpU-j3*}v24#$qZH`SInDqJ8EtBW@E1vR!4`wtiBFpR1a{KYH8m*{pfUZg;R{f1BEgg`DQIy#%Vcz@$vrY3N zQT$83h%D6*kYsTYuO(ksl%6o>w}k|}){*WQ2}9hIC4DHRa1y+A2{7f*w=xOWBS~QG zl>Fb5d5Ye(7|wOVpt8dT&oaP^*;5u?9ljeIY~W~U6xtV#Z6L@>oWqiKZj}DUE27<; zA<<3)YgDLTx+}-m7sW9e Date: Fri, 4 May 2018 19:14:51 -0600 Subject: [PATCH 31/65] Update readme.txt --- exampleCases/example.ADM.ssc/zeromqExamplesSSC/readme.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/readme.txt b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/readme.txt index c53e52ffa..f2903f012 100644 --- a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/readme.txt +++ b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/readme.txt @@ -23,7 +23,7 @@ and the server. So, in your case, you will have to account for this in your supe __ Usage: -1. Enable 'zeromqSSC' in the turbineArrayProperties, and set 'sscFunction' to 'zeromqSSC'. +1. Enable the SSC in the turbineArrayProperties, and set 'sscFunction' to 'zeromqSSC'. 2. Set the individual turbine yaw and blade pitch controller to "yawSC" and "PIDSC". 3. Start up your zeroMQ server (i.e., your wind farm controller code using zeroMQ). 4. Start up your SOWFA simulation. @@ -43,4 +43,4 @@ __Debugging: If there are any issues: check if this is an issue with SOWFA/zeromqSSC, or if this is a problem with your controller. If the issue is on the SOWFA side, please submit an 'issue' on the Github page (https://github.com/NREL/SOWFA). For zeromqSSC-related issues, contact -Bart Doekemeijer (TU Delft) or Paul Fleming (NREL). \ No newline at end of file +Bart Doekemeijer (TU Delft) or Paul Fleming (NREL). From fa54638a81b8a024671c07c4736d60d0dfe1833c Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Mon, 7 May 2018 16:06:31 -0600 Subject: [PATCH 32/65] Update cSSC.c Match the TCP address with that of the SOWFA SSC code --- exampleCases/example.ADM.ssc/zeromqExamplesSSC/cSSC.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/cSSC.c b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/cSSC.c index 4669ec978..ecd671d1f 100644 --- a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/cSSC.c +++ b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/cSSC.c @@ -16,7 +16,7 @@ int main (void) // Socket to talk to clients void *context = zmq_ctx_new (); void *responder = zmq_socket (context, ZMQ_REP); - int rc = zmq_bind (responder, "tcp://*:5552"); + int rc = zmq_bind (responder, "tcp://*:5553"); assert (rc == 0); printf("Set up connection. Attempting to receive signals.\n"); From 0f9f343ae32cf7f11f9d02a9f7b321eb76e04914 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Mon, 7 May 2018 16:24:57 -0600 Subject: [PATCH 33/65] Update the ADM flags for compilation to be compatible with a generic zeroMQ installation, defined by variables ZEROMQ_INCLUDE and ZEROMQ_LIB --- src/turbineModels/turbineModelsStandard/Make/options | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/turbineModels/turbineModelsStandard/Make/options b/src/turbineModels/turbineModelsStandard/Make/options index 10cea948c..7a46156fe 100755 --- a/src/turbineModels/turbineModelsStandard/Make/options +++ b/src/turbineModels/turbineModelsStandard/Make/options @@ -6,7 +6,7 @@ EXE_INC = \ -I$(LIB_SRC)/turbulenceModels/LES/LESdeltas/lnInclude \ -I$(LIB_SRC)/turbulenceModels/LES/LESfilters/lnInclude \ -I$(LIB_SRC)/transportModels \ - -I /nopt/nrel/apps/zeromq/gcc/4.2.2/include + -I$(ZEROMQ_INCLUDE) LIB_LIBS = \ -ltriSurface \ @@ -15,5 +15,5 @@ LIB_LIBS = \ -lincompressibleTurbulenceModel \ -lLESdeltas \ -lLESfilters \ - -L /nopt/nrel/apps/zeromq/gcc/4.2.2/lib \ - -lzmq \ No newline at end of file + -L $(ZEROMQ_LIB) \ + -lzmq \ No newline at end of file From 353bbb56bddc8f6547c35327a9c6ecef59ee2b02 Mon Sep 17 00:00:00 2001 From: Paul Fleming Date: Mon, 7 May 2018 16:34:59 -0600 Subject: [PATCH 34/65] In ssc example, corrected turbineArrayProp to call timeTableSSC --- .../example.ADM.ssc/constant/turbineArrayProperties | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/exampleCases/example.ADM.ssc/constant/turbineArrayProperties b/exampleCases/example.ADM.ssc/constant/turbineArrayProperties index 906ff9c51..a416bcf8c 100755 --- a/exampleCases/example.ADM.ssc/constant/turbineArrayProperties +++ b/exampleCases/example.ADM.ssc/constant/turbineArrayProperties @@ -24,9 +24,9 @@ globalProperties sscProperties { sscEnabled true; //Enable/disable ssc, if not present defaults to False - nInputsToSSC 2; // Number of inputs EACH turbine passes to the super controller - nOutputsFromSSC 3; // Number of outputs the super controller sends to EACH turbine - sscControllerType "simpleSSC"; // The type of SSC + nInputsToSSC 3; // Number of inputs EACH turbine passes to the super controller + nOutputsFromSSC 2; // Number of outputs the super controller sends to EACH turbine + sscControllerType "timeTableSSC"; // The type of SSC } turbine0 From 66fe0f982e9ab92ae870c647519c060dfc0e3927 Mon Sep 17 00:00:00 2001 From: Paul Fleming Date: Mon, 7 May 2018 16:35:51 -0600 Subject: [PATCH 35/65] Splitting ssc example into timetable and zeromq --- .../example.ADM.ssc.zeromq/0.original/Rwall | 65 +++ .../example.ADM.ssc.zeromq/0.original/T | 55 ++ .../example.ADM.ssc.zeromq/0.original/U | 58 ++ .../example.ADM.ssc.zeromq/0.original/k | 54 ++ .../example.ADM.ssc.zeromq/0.original/kappat | 60 +++ .../example.ADM.ssc.zeromq/0.original/nuSgs | 60 +++ .../example.ADM.ssc.zeromq/0.original/p_rgh | 54 ++ .../example.ADM.ssc.zeromq/0.original/qwall | 59 ++ .../constant/ABLProperties | 55 ++ .../constant/LESProperties | 118 ++++ .../constant/airfoilProperties/Cylinder1 | 23 + .../constant/airfoilProperties/Cylinder2 | 23 + .../constant/airfoilProperties/DU21_A17 | 162 ++++++ .../constant/airfoilProperties/DU25_A17 | 161 ++++++ .../constant/airfoilProperties/DU30_A17 | 163 ++++++ .../constant/airfoilProperties/DU35_A17 | 155 ++++++ .../constant/airfoilProperties/DU40_A17 | 156 ++++++ .../constant/airfoilProperties/NACA64_A17 | 147 +++++ .../example.ADM.ssc.zeromq/constant/g | 22 + .../constant/polyMesh/blockMeshDict | 105 ++++ .../constant/transportProperties | 39 ++ .../constant/turbineArrayProperties | 76 +++ .../constant/turbineProperties/NREL5MWRef | 122 +++++ .../constant/turbulenceProperties | 22 + .../runscript.preprocess | 170 ++++++ .../example.ADM.ssc.zeromq/runscript.solve.1 | 40 ++ exampleCases/example.ADM.ssc.zeromq/setUp | 103 ++++ .../changeDictionaryDict.updateBCs.cyclic | 261 +++++++++ .../changeDictionaryDict.updateBCs.east | 306 +++++++++++ .../changeDictionaryDict.updateBCs.north | 217 ++++++++ .../changeDictionaryDict.updateBCs.northeast | 313 +++++++++++ .../changeDictionaryDict.updateBCs.northwest | 313 +++++++++++ .../changeDictionaryDict.updateBCs.south | 215 ++++++++ .../changeDictionaryDict.updateBCs.southeast | 314 +++++++++++ .../changeDictionaryDict.updateBCs.southwest | 313 +++++++++++ .../changeDictionaryDict.updateBCs.west | 215 ++++++++ .../example.ADM.ssc.zeromq/system/controlDict | 61 +++ .../system/controlDict.1 | 61 +++ .../system/decomposeParDict | 76 +++ .../example.ADM.ssc.zeromq/system/fvSchemes | 111 ++++ .../example.ADM.ssc.zeromq/system/fvSolution | 102 ++++ .../system/refineMeshDict.local | 48 ++ .../system/sampling/boundaryDataPre | 25 + .../system/sampling/fieldAverages | 17 + .../system/sampling/probeData1 | 223 ++++++++ .../system/sampling/probeData1S | 18 + .../system/sampling/probeData2 | 223 ++++++++ .../system/sampling/probeData2S | 18 + .../system/sampling/probeData3 | 223 ++++++++ .../system/sampling/probeData3S | 18 + .../system/sampling/probeData4 | 223 ++++++++ .../system/sampling/probeData4S | 18 + .../system/sampling/probeData5 | 223 ++++++++ .../system/sampling/probeData5S | 18 + .../system/sampling/sliceDataInstantaneous | 53 ++ .../system/setFieldsABLDict | 504 ++++++++++++++++++ .../system/topoSetDict.local.1 | 36 ++ .../system/topoSetDict.local.2 | 36 ++ .../zeromqExamplesSSC/.gitignore | 7 + .../zeromqExamplesSSC/cSSC.c | 45 ++ .../zeromqExamplesSSC/matlabSSC.m | 61 +++ .../zeromqExamplesSSC/pythonSSC.py | 27 + .../zeromqExamplesSSC/readme.txt | 46 ++ 63 files changed, 7315 insertions(+) create mode 100755 exampleCases/example.ADM.ssc.zeromq/0.original/Rwall create mode 100755 exampleCases/example.ADM.ssc.zeromq/0.original/T create mode 100755 exampleCases/example.ADM.ssc.zeromq/0.original/U create mode 100755 exampleCases/example.ADM.ssc.zeromq/0.original/k create mode 100755 exampleCases/example.ADM.ssc.zeromq/0.original/kappat create mode 100755 exampleCases/example.ADM.ssc.zeromq/0.original/nuSgs create mode 100755 exampleCases/example.ADM.ssc.zeromq/0.original/p_rgh create mode 100755 exampleCases/example.ADM.ssc.zeromq/0.original/qwall create mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/ABLProperties create mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/LESProperties create mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/Cylinder1 create mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/Cylinder2 create mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU21_A17 create mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU25_A17 create mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU30_A17 create mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU35_A17 create mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU40_A17 create mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/NACA64_A17 create mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/g create mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/polyMesh/blockMeshDict create mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/transportProperties create mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/turbineArrayProperties create mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/turbineProperties/NREL5MWRef create mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/turbulenceProperties create mode 100755 exampleCases/example.ADM.ssc.zeromq/runscript.preprocess create mode 100755 exampleCases/example.ADM.ssc.zeromq/runscript.solve.1 create mode 100755 exampleCases/example.ADM.ssc.zeromq/setUp create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.cyclic create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.east create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.north create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.northeast create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.northwest create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.south create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.southeast create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.southwest create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.west create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/controlDict create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/controlDict.1 create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/decomposeParDict create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/fvSchemes create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/fvSolution create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/refineMeshDict.local create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/boundaryDataPre create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/fieldAverages create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData1 create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData1S create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData2 create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData2S create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData3 create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData3S create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData4 create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData4S create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData5 create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData5S create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/sliceDataInstantaneous create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/setFieldsABLDict create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/topoSetDict.local.1 create mode 100755 exampleCases/example.ADM.ssc.zeromq/system/topoSetDict.local.2 create mode 100644 exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/.gitignore create mode 100644 exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/cSSC.c create mode 100644 exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/matlabSSC.m create mode 100644 exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/pythonSSC.py create mode 100644 exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/readme.txt diff --git a/exampleCases/example.ADM.ssc.zeromq/0.original/Rwall b/exampleCases/example.ADM.ssc.zeromq/0.original/Rwall new file mode 100755 index 000000000..9f0a3a19c --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/0.original/Rwall @@ -0,0 +1,65 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volSymmTensorField; + location "0"; + object Rwall; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + +dimensions [ 0 2 -2 0 0 0 0 ]; + +internalField uniform (0.0 0.0 0.0 0.0 0.0 0.0); + +boundaryField +{ + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + //averageType "local"; + averageType "planarAverage"; + value uniform $Rwall; + } + upper + { + type fixedValue; + value $internalField; + } + west + { + type cyclic; + value $internalField; + } + east + { + type cyclic; + value $internalField; + } + north + { + type cyclic; + value $internalField; + } + south + { + type cyclic; + value $internalField; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/0.original/T b/exampleCases/example.ADM.ssc.zeromq/0.original/T new file mode 100755 index 000000000..8fce50ca7 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/0.original/T @@ -0,0 +1,55 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object T ; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 0 0 1 0 0 0]; + +internalField uniform $TBottom; + +boundaryField +{ + lower + { + type zeroGradient; + } + upper + { + type fixedGradient; + gradient uniform $TGradUpper; + } + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/0.original/U b/exampleCases/example.ADM.ssc.zeromq/0.original/U new file mode 100755 index 000000000..a73faa4e0 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/0.original/U @@ -0,0 +1,58 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volVectorField; + location "0"; + object U; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 1 -1 0 0 0 0]; + +internalField uniform (0 0 0); + +boundaryField +{ + lower + { + type velocityABLWallFunction; + print true; + U U; + value $internalField; + } + upper + { + type slip; + } + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } +} + + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/0.original/k b/exampleCases/example.ADM.ssc.zeromq/0.original/k new file mode 100755 index 000000000..b85959d30 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/0.original/k @@ -0,0 +1,54 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object k ; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -2 0 0 0 0]; + +internalField uniform $k0; + +boundaryField +{ + lower + { + type zeroGradient; + } + upper + { + type zeroGradient; + } + east + { + type cyclic; + } + west + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/0.original/kappat b/exampleCases/example.ADM.ssc.zeromq/0.original/kappat new file mode 100755 index 000000000..05706742f --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/0.original/kappat @@ -0,0 +1,60 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.1.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object kappat; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -1 0 0 0 0]; + +internalField uniform $kappat0; + +boundaryField +{ + lower + { + type fixedValue; + value uniform 0.0; + } + upper + { + type fixedValue; + value uniform 0.0; + } + west + { + type cyclic; + value $internalField; + } + east + { + type cyclic; + value $internalField; + } + north + { + type cyclic; + value $internalField; + } + south + { + type cyclic; + value $internalField; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/0.original/nuSgs b/exampleCases/example.ADM.ssc.zeromq/0.original/nuSgs new file mode 100755 index 000000000..e6f1da758 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/0.original/nuSgs @@ -0,0 +1,60 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.1.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object nuSgs; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -1 0 0 0 0]; + +internalField uniform $nuSgs0; + +boundaryField +{ + lower + { + type fixedValue; + value uniform 0.0; + } + upper + { + type fixedValue; + value uniform 0.0; + } + west + { + type cyclic; + value $internalField; + } + east + { + type cyclic; + value $internalField; + } + north + { + type cyclic; + value $internalField; + } + south + { + type cyclic; + value $internalField; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/0.original/p_rgh b/exampleCases/example.ADM.ssc.zeromq/0.original/p_rgh new file mode 100755 index 000000000..b40b9978c --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/0.original/p_rgh @@ -0,0 +1,54 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0000"; + object p_rgh ; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -2 0 0 0 0]; + +internalField uniform $p_rgh0; + +boundaryField +{ + lower + { + type fixedFluxPressure; + } + upper + { + type fixedFluxPressure; + } + east + { + type cyclic; + } + west + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/0.original/qwall b/exampleCases/example.ADM.ssc.zeromq/0.original/qwall new file mode 100755 index 000000000..c695d7577 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/0.original/qwall @@ -0,0 +1,59 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volVectorField; + location "0"; + object qwall; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + +dimensions [ 0 1 -1 1 0 0 0 ]; + +internalField uniform (0.0 0.0 0.0); + +boundaryField +{ + lower + { + type fixedValue; + value uniform $qwall; + } + upper + { + type fixedValue; + value $internalField; + } + west + { + type cyclic; + value $internalField; + } + east + { + type cyclic; + value $internalField; + } + north + { + type cyclic; + value $internalField; + } + south + { + type cyclic; + value $internalField; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/ABLProperties b/exampleCases/example.ADM.ssc.zeromq/constant/ABLProperties new file mode 100755 index 000000000..d25c3dbee --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/constant/ABLProperties @@ -0,0 +1,55 @@ +/*---------------------------------------------------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.openfoam.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + + root ""; + case ""; + instance ""; + local ""; + + class dictionary; + object ABLProperties; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + + +// Properties of the mesoscale source terms +momentumSourceType "given"; +temperatureSourceType "given"; + + +velocityInputType "speedAndDirection"; + + +#include "../constant/sources" + + +// Relaxation factors applied when computing sources given desired +// velocity and temperature. +alphaMomentum 0.7; +alphaTemperature 0.7; + + +// Properties of the Coriolis force +planetaryRotationPeriod $EarthPeriod; +latitude $latitude; + + +// Statistics gathering input +avgStartTime $avgStartTime; +corrStartTime $corrStartTime; + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/LESProperties b/exampleCases/example.ADM.ssc.zeromq/constant/LESProperties new file mode 100755 index 000000000..2043039a5 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/constant/LESProperties @@ -0,0 +1,118 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object LESProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +#include "../setUp" + + +LESModel $LESModel; +//LESModel SmagorinskyABL; +//LESModel Smagorinsky; +//LESModel dynLagrangianCsBound; + +delta smooth; + +SmagorinskyCoeffs +{ + ce $ce; + ck $ck; +} + +SmagorinskyABLCoeffs +{ + ce $ce; + ck $ck; + TName "T"; + kappatName "kappat"; +} + +oneEqEddyABLCoeffs +{ + ce $ce; + ck $ck; + TName "T"; + kappatName "kappat"; +} + +printCoeffs on; + +dynLagrangianCsBoundCoeffs +{ + filter simple; +} + +cubeRootVolCoeffs +{ + deltaCoeff 1; +} + +PrandtlCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + smoothCoeffs + { + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + maxDeltaRatio 1.1; + } + + Cdelta 0.158; +} + +vanDriestCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + smoothCoeffs + { + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + maxDeltaRatio 1.1; + } + + Aplus 26; + Cdelta 0.158; +} + +smoothCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + maxDeltaRatio 1.1; +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/Cylinder1 b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/Cylinder1 new file mode 100755 index 000000000..7106c17d0 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/Cylinder1 @@ -0,0 +1,23 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.5000) + ( 0.00 0.000 0.5000) + ( 180.00 0.000 0.5000) +); diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/Cylinder2 b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/Cylinder2 new file mode 100755 index 000000000..b2e7923f1 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/Cylinder2 @@ -0,0 +1,23 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.3500) + ( 0.00 0.000 0.3500) + ( 180.00 0.000 0.3500) +); diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU21_A17 b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU21_A17 new file mode 100755 index 000000000..17eb9de96 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU21_A17 @@ -0,0 +1,162 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180 0 0.0185) + (-175 0.394 0.0332) + (-170 0.788 0.0945) + (-160 0.67 0.2809) + (-155 0.749 0.3932) + (-150 0.797 0.5112) + (-145 0.818 0.6309) + (-140 0.813 0.7485) + (-135 0.786 0.8612) + (-130 0.739 0.9665) + (-125 0.675 1.0625) + (-120 0.596 1.1476) + (-115 0.505 1.2206) + (-110 0.403 1.2805) + (-105 0.294 1.3265) + (-100 0.179 1.3582) + (-95 0.06 1.3752) + (-90 -0.06 1.3774) + (-85 -0.179 1.3648) + (-80 -0.295 1.3376) + (-75 -0.407 1.2962) + (-70 -0.512 1.2409) + (-65 -0.608 1.1725) + (-60 -0.693 1.0919) + (-55 -0.764 1.0002) + (-50 -0.82 0.899 ) + (-45 -0.857 0.79 ) + (-40 -0.875 0.6754) + (-35 -0.869 0.5579) + (-30 -0.838 0.4405) + (-25 -0.791 0.3256) + (-24 -0.794 0.3013) + (-23 -0.805 0.2762) + (-22 -0.821 0.2506) + (-21 -0.843 0.2246) + (-20 -0.869 0.1983) + (-19 -0.899 0.172 ) + (-18 -0.931 0.1457) + (-17 -0.964 0.1197) + (-16 -0.999 0.094 ) + (-15 -1.033 0.0689) + (-14.5 -1.05 0.0567) + (-12.01 -0.953 0.0271) + (-11 -0.9 0.0303) + (-9.98 -0.827 0.0287) + (-8.12 -0.536 0.0124) + (-7.62 -0.467 0.0109) + (-7.11 -0.393 0.0092) + (-6.6 -0.323 0.0083) + (-6.5 -0.311 0.0089) + (-6 -0.245 0.0082) + (-5.5 -0.178 0.0074) + (-5 -0.113 0.0069) + (-4.5 -0.048 0.0065) + (-4 0.016 0.0063) + (-3.5 0.08 0.0061) + (-3 0.145 0.0058) + (-2.5 0.208 0.0057) + (-2 0.27 0.0057) + (-1.5 0.333 0.0057) + (-1 0.396 0.0057) + (-0.5 0.458 0.0057) + ( 0 0.521 0.0057) + ( 0.5 0.583 0.0057) + ( 1 0.645 0.0058) + ( 1.5 0.706 0.0058) + ( 2 0.768 0.0059) + ( 2.5 0.828 0.0061) + ( 3 0.888 0.0063) + ( 3.5 0.948 0.0066) + ( 4 0.996 0.0071) + ( 4.5 1.046 0.0079) + ( 5 1.095 0.009 ) + ( 5.5 1.145 0.0103) + ( 6 1.192 0.0113) + ( 6.5 1.239 0.0122) + ( 7 1.283 0.0131) + ( 7.5 1.324 0.0139) + ( 8 1.358 0.0147) + ( 8.5 1.385 0.0158) + ( 9 1.403 0.0181) + ( 9.5 1.401 0.0211) + ( 10 1.358 0.0255) + ( 10.5 1.313 0.0301) + ( 11 1.287 0.0347) + ( 11.5 1.274 0.0401) + ( 12 1.272 0.0468) + ( 12.5 1.273 0.0545) + ( 13 1.273 0.0633) + ( 13.5 1.273 0.0722) + ( 14 1.272 0.0806) + ( 14.5 1.273 0.09 ) + ( 15 1.275 0.0987) + ( 15.5 1.281 0.1075) + ( 16 1.284 0.117 ) + ( 16.5 1.296 0.127 ) + ( 17 1.306 0.1368) + ( 17.5 1.308 0.1464) + ( 18 1.308 0.1562) + ( 18.5 1.308 0.1664) + ( 19 1.308 0.177 ) + ( 19.5 1.307 0.1878) + ( 20 1.311 0.1987) + ( 20.5 1.325 0.21 ) + ( 21 1.324 0.2214) + ( 22 1.277 0.2499) + ( 23 1.229 0.2786) + ( 24 1.182 0.3077) + ( 25 1.136 0.3371) + ( 26 1.093 0.3664) + ( 28 1.017 0.4246) + ( 30 0.962 0.4813) + ( 32 0.937 0.5356) + ( 35 0.947 0.6127) + ( 40 0.95 0.7396) + ( 45 0.928 0.8623) + ( 50 0.884 0.9781) + ( 55 0.821 1.0846) + ( 60 0.74 1.1796) + ( 65 0.646 1.2617) + ( 70 0.54 1.3297) + ( 75 0.425 1.3827) + ( 80 0.304 1.4202) + ( 85 0.179 1.4423) + ( 90 0.053 1.4512) + ( 95 -0.073 1.448 ) + ( 100 -0.198 1.4294) + ( 105 -0.319 1.3954) + ( 110 -0.434 1.3464) + ( 115 -0.541 1.2829) + ( 120 -0.637 1.2057) + ( 125 -0.72 1.1157) + ( 130 -0.787 1.0144) + ( 135 -0.836 0.9033) + ( 140 -0.864 0.7845) + ( 145 -0.869 0.6605) + ( 150 -0.847 0.5346) + ( 155 -0.795 0.4103) + ( 160 -0.711 0.2922) + ( 170 -0.788 0.0969) + ( 175 -0.394 0.0334) + ( 180 0 0.0185) +); diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU25_A17 b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU25_A17 new file mode 100755 index 000000000..56981e639 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU25_A17 @@ -0,0 +1,161 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0202) + (-175.00 0.368 0.0324) + (-170.00 0.735 0.0943) + (-160.00 0.695 0.2848) + (-155.00 0.777 0.4001) + (-150.00 0.828 0.5215) + (-145.00 0.850 0.6447) + (-140.00 0.846 0.7660) + (-135.00 0.818 0.8823) + (-130.00 0.771 0.9911) + (-125.00 0.705 1.0905) + (-120.00 0.624 1.1787) + (-115.00 0.530 1.2545) + (-110.00 0.426 1.3168) + (-105.00 0.314 1.3650) + (-100.00 0.195 1.3984) + ( -95.00 0.073 1.4169) + ( -90.00 -0.050 1.4201) + ( -85.00 -0.173 1.4081) + ( -80.00 -0.294 1.3811) + ( -75.00 -0.409 1.3394) + ( -70.00 -0.518 1.2833) + ( -65.00 -0.617 1.2138) + ( -60.00 -0.706 1.1315) + ( -55.00 -0.780 1.0378) + ( -50.00 -0.839 0.9341) + ( -45.00 -0.879 0.8221) + ( -40.00 -0.898 0.7042) + ( -35.00 -0.893 0.5829) + ( -30.00 -0.862 0.4616) + ( -25.00 -0.803 0.3441) + ( -24.00 -0.792 0.3209) + ( -23.00 -0.789 0.2972) + ( -22.00 -0.792 0.2730) + ( -21.00 -0.801 0.2485) + ( -20.00 -0.815 0.2237) + ( -19.00 -0.833 0.1990) + ( -18.00 -0.854 0.1743) + ( -17.00 -0.879 0.1498) + ( -16.00 -0.905 0.1256) + ( -15.00 -0.932 0.1020) + ( -14.00 -0.959 0.0789) + ( -13.00 -0.985 0.0567) + ( -13.00 -0.985 0.0567) + ( -12.01 -0.953 0.0271) + ( -11.00 -0.900 0.0303) + ( -9.98 -0.827 0.0287) + ( -8.98 -0.753 0.0271) + ( -8.47 -0.691 0.0264) + ( -7.45 -0.555 0.0114) + ( -6.42 -0.413 0.0094) + ( -5.40 -0.271 0.0086) + ( -5.00 -0.220 0.0073) + ( -4.50 -0.152 0.0071) + ( -4.00 -0.084 0.0070) + ( -3.50 -0.018 0.0069) + ( -3.00 0.049 0.0068) + ( -2.50 0.115 0.0068) + ( -2.00 0.181 0.0068) + ( -1.50 0.247 0.0067) + ( -1.00 0.312 0.0067) + ( -0.50 0.377 0.0067) + ( 0.00 0.444 0.0065) + ( 0.50 0.508 0.0065) + ( 1.00 0.573 0.0066) + ( 1.50 0.636 0.0067) + ( 2.00 0.701 0.0068) + ( 2.50 0.765 0.0069) + ( 3.00 0.827 0.0070) + ( 3.50 0.890 0.0071) + ( 4.00 0.952 0.0073) + ( 4.50 1.013 0.0076) + ( 5.00 1.062 0.0079) + ( 6.00 1.161 0.0099) + ( 6.50 1.208 0.0117) + ( 7.00 1.254 0.0132) + ( 7.50 1.301 0.0143) + ( 8.00 1.336 0.0153) + ( 8.50 1.369 0.0165) + ( 9.00 1.400 0.0181) + ( 9.50 1.428 0.0211) + ( 10.00 1.442 0.0262) + ( 10.50 1.427 0.0336) + ( 11.00 1.374 0.0420) + ( 11.50 1.316 0.0515) + ( 12.00 1.277 0.0601) + ( 12.50 1.250 0.0693) + ( 13.00 1.246 0.0785) + ( 13.50 1.247 0.0888) + ( 14.00 1.256 0.1000) + ( 14.50 1.260 0.1108) + ( 15.00 1.271 0.1219) + ( 15.50 1.281 0.1325) + ( 16.00 1.289 0.1433) + ( 16.50 1.294 0.1541) + ( 17.00 1.304 0.1649) + ( 17.50 1.309 0.1754) + ( 18.00 1.315 0.1845) + ( 18.50 1.320 0.1953) + ( 19.00 1.330 0.2061) + ( 19.50 1.343 0.2170) + ( 20.00 1.354 0.2280) + ( 20.50 1.359 0.2390) + ( 21.00 1.360 0.2536) + ( 22.00 1.325 0.2814) + ( 23.00 1.288 0.3098) + ( 24.00 1.251 0.3386) + ( 25.00 1.215 0.3678) + ( 26.00 1.181 0.3972) + ( 28.00 1.120 0.4563) + ( 30.00 1.076 0.5149) + ( 32.00 1.056 0.5720) + ( 35.00 1.066 0.6548) + ( 40.00 1.064 0.7901) + ( 45.00 1.035 0.9190) + ( 50.00 0.980 1.0378) + ( 55.00 0.904 1.1434) + ( 60.00 0.810 1.2333) + ( 65.00 0.702 1.3055) + ( 70.00 0.582 1.3587) + ( 75.00 0.456 1.3922) + ( 80.00 0.326 1.4063) + ( 85.00 0.197 1.4042) + ( 90.00 0.072 1.3985) + ( 95.00 -0.050 1.3973) + ( 100.00 -0.170 1.3810) + ( 105.00 -0.287 1.3498) + ( 110.00 -0.399 1.3041) + ( 115.00 -0.502 1.2442) + ( 120.00 -0.596 1.1709) + ( 125.00 -0.677 1.0852) + ( 130.00 -0.743 0.9883) + ( 135.00 -0.792 0.8818) + ( 140.00 -0.821 0.7676) + ( 145.00 -0.826 0.6481) + ( 150.00 -0.806 0.5264) + ( 155.00 -0.758 0.4060) + ( 160.00 -0.679 0.2912) + ( 170.00 -0.735 0.0995) + ( 175.00 -0.368 0.0356) + ( 180.00 0.000 0.0202) +); diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU30_A17 b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU30_A17 new file mode 100755 index 000000000..35fb11988 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU30_A17 @@ -0,0 +1,163 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0267) + (-175.00 0.274 0.0370) + (-170.00 0.547 0.0968) + (-160.00 0.685 0.2876) + (-155.00 0.766 0.4025) + (-150.00 0.816 0.5232) + (-145.00 0.836 0.6454) + (-140.00 0.832 0.7656) + (-135.00 0.804 0.8807) + (-130.00 0.756 0.9882) + (-125.00 0.690 1.0861) + (-120.00 0.609 1.1730) + (-115.00 0.515 1.2474) + (-110.00 0.411 1.3084) + (-105.00 0.300 1.3552) + (-100.00 0.182 1.3875) + ( -95.00 0.061 1.4048) + ( -90.00 -0.061 1.4070) + ( -85.00 -0.183 1.3941) + ( -80.00 -0.302 1.3664) + ( -75.00 -0.416 1.3240) + ( -70.00 -0.523 1.2676) + ( -65.00 -0.622 1.1978) + ( -60.00 -0.708 1.1156) + ( -55.00 -0.781 1.0220) + ( -50.00 -0.838 0.9187) + ( -45.00 -0.877 0.8074) + ( -40.00 -0.895 0.6904) + ( -35.00 -0.889 0.5703) + ( -30.00 -0.858 0.4503) + ( -25.00 -0.832 0.3357) + ( -24.00 -0.852 0.3147) + ( -23.00 -0.882 0.2946) + ( -22.00 -0.919 0.2752) + ( -21.00 -0.963 0.2566) + ( -20.00 -1.013 0.2388) + ( -19.00 -1.067 0.2218) + ( -18.00 -1.125 0.2056) + ( -17.00 -1.185 0.1901) + ( -16.00 -1.245 0.1754) + ( -15.25 -1.290 0.1649) + ( -14.24 -1.229 0.1461) + ( -13.24 -1.148 0.1263) + ( -12.22 -1.052 0.1051) + ( -11.22 -0.965 0.0886) + ( -10.19 -0.867 0.0740) + ( -9.70 -0.822 0.0684) + ( -9.18 -0.769 0.0605) + ( -8.18 -0.756 0.0270) + ( -7.19 -0.690 0.0180) + ( -6.65 -0.616 0.0166) + ( -6.13 -0.542 0.0152) + ( -6.00 -0.525 0.0117) + ( -5.50 -0.451 0.0105) + ( -5.00 -0.382 0.0097) + ( -4.50 -0.314 0.0092) + ( -4.00 -0.251 0.0091) + ( -3.50 -0.189 0.0089) + ( -3.00 -0.120 0.0089) + ( -2.50 -0.051 0.0088) + ( -2.00 0.017 0.0088) + ( -1.50 0.085 0.0088) + ( -1.00 0.152 0.0088) + ( -0.50 0.219 0.0088) + ( 0.00 0.288 0.0087) + ( 0.50 0.354 0.0087) + ( 1.00 0.421 0.0088) + ( 1.50 0.487 0.0089) + ( 2.00 0.554 0.0090) + ( 2.50 0.619 0.0091) + ( 3.00 0.685 0.0092) + ( 3.50 0.749 0.0093) + ( 4.00 0.815 0.0095) + ( 4.50 0.879 0.0096) + ( 5.00 0.944 0.0097) + ( 5.50 1.008 0.0099) + ( 6.00 1.072 0.0101) + ( 6.50 1.135 0.0103) + ( 7.00 1.197 0.0107) + ( 7.50 1.256 0.0112) + ( 8.00 1.305 0.0125) + ( 9.00 1.390 0.0155) + ( 9.50 1.424 0.0171) + ( 10.00 1.458 0.0192) + ( 10.50 1.488 0.0219) + ( 11.00 1.512 0.0255) + ( 11.50 1.533 0.0307) + ( 12.00 1.549 0.0370) + ( 12.50 1.558 0.0452) + ( 13.00 1.470 0.0630) + ( 13.50 1.398 0.0784) + ( 14.00 1.354 0.0931) + ( 14.50 1.336 0.1081) + ( 15.00 1.333 0.1239) + ( 15.50 1.326 0.1415) + ( 16.00 1.329 0.1592) + ( 16.50 1.326 0.1743) + ( 17.00 1.321 0.1903) + ( 17.50 1.331 0.2044) + ( 18.00 1.333 0.2186) + ( 18.50 1.340 0.2324) + ( 19.00 1.362 0.2455) + ( 19.50 1.382 0.2584) + ( 20.00 1.398 0.2689) + ( 20.50 1.426 0.2814) + ( 21.00 1.437 0.2943) + ( 22.00 1.418 0.3246) + ( 23.00 1.397 0.3557) + ( 24.00 1.376 0.3875) + ( 25.00 1.354 0.4198) + ( 26.00 1.332 0.4524) + ( 28.00 1.293 0.5183) + ( 30.00 1.265 0.5843) + ( 32.00 1.253 0.6492) + ( 35.00 1.264 0.7438) + ( 40.00 1.258 0.8970) + ( 45.00 1.217 1.0402) + ( 50.00 1.146 1.1686) + ( 55.00 1.049 1.2779) + ( 60.00 0.932 1.3647) + ( 65.00 0.799 1.4267) + ( 70.00 0.657 1.4621) + ( 75.00 0.509 1.4708) + ( 80.00 0.362 1.4544) + ( 85.00 0.221 1.4196) + ( 90.00 0.092 1.3938) + ( 95.00 -0.030 1.3943) + ( 100.00 -0.150 1.3798) + ( 105.00 -0.267 1.3504) + ( 110.00 -0.379 1.3063) + ( 115.00 -0.483 1.2481) + ( 120.00 -0.578 1.1763) + ( 125.00 -0.660 1.0919) + ( 130.00 -0.727 0.9962) + ( 135.00 -0.777 0.8906) + ( 140.00 -0.807 0.7771) + ( 145.00 -0.815 0.6581) + ( 150.00 -0.797 0.5364) + ( 155.00 -0.750 0.4157) + ( 160.00 -0.673 0.3000) + ( 170.00 -0.547 0.1051) + ( 175.00 -0.274 0.0388) + ( 180.00 0.000 0.0267) +); diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU35_A17 b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU35_A17 new file mode 100755 index 000000000..041013e24 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU35_A17 @@ -0,0 +1,155 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0407) + (-175.00 0.223 0.0507) + (-170.00 0.405 0.1055) + (-160.00 0.658 0.2982) + (-155.00 0.733 0.4121) + (-150.00 0.778 0.5308) + (-145.00 0.795 0.6503) + (-140.00 0.787 0.7672) + (-135.00 0.757 0.8785) + (-130.00 0.708 0.9819) + (-125.00 0.641 1.0756) + (-120.00 0.560 1.1580) + (-115.00 0.467 1.2280) + (-110.00 0.365 1.2847) + (-105.00 0.255 1.3274) + (-100.00 0.139 1.3557) + ( -95.00 0.021 1.3692) + ( -90.00 -0.098 1.3680) + ( -85.00 -0.216 1.3521) + ( -80.00 -0.331 1.3218) + ( -75.00 -0.441 1.2773) + ( -70.00 -0.544 1.2193) + ( -65.00 -0.638 1.1486) + ( -60.00 -0.720 1.0660) + ( -55.00 -0.788 0.9728) + ( -50.00 -0.840 0.8705) + ( -45.00 -0.875 0.7611) + ( -40.00 -0.889 0.6466) + ( -35.00 -0.880 0.5299) + ( -30.00 -0.846 0.4141) + ( -25.00 -0.784 0.3030) + ( -24.00 -0.768 0.2817) + ( -23.00 -0.751 0.2608) + ( -22.00 -0.733 0.2404) + ( -21.00 -0.714 0.2205) + ( -20.00 -0.693 0.2011) + ( -19.00 -0.671 0.1822) + ( -18.00 -0.648 0.1640) + ( -17.00 -0.624 0.1465) + ( -16.00 -0.601 0.1300) + ( -15.00 -0.579 0.1145) + ( -14.00 -0.559 0.1000) + ( -13.00 -0.539 0.0867) + ( -12.00 -0.519 0.0744) + ( -11.00 -0.499 0.0633) + ( -10.00 -0.480 0.0534) + ( -5.54 -0.385 0.0245) + ( -5.04 -0.359 0.0225) + ( -4.54 -0.360 0.0196) + ( -4.04 -0.355 0.0174) + ( -3.54 -0.307 0.0162) + ( -3.04 -0.246 0.0144) + ( -3.00 -0.240 0.0240) + ( -2.50 -0.163 0.0188) + ( -2.00 -0.091 0.0160) + ( -1.50 -0.019 0.0137) + ( -1.00 0.052 0.0118) + ( -0.50 0.121 0.0104) + ( 0.00 0.196 0.0094) + ( 0.50 0.265 0.0096) + ( 1.00 0.335 0.0098) + ( 1.50 0.404 0.0099) + ( 2.00 0.472 0.0100) + ( 2.50 0.540 0.0102) + ( 3.00 0.608 0.0103) + ( 3.50 0.674 0.0104) + ( 4.00 0.742 0.0105) + ( 4.50 0.809 0.0107) + ( 5.00 0.875 0.0108) + ( 5.50 0.941 0.0109) + ( 6.00 1.007 0.0110) + ( 6.50 1.071 0.0113) + ( 7.00 1.134 0.0115) + ( 7.50 1.198 0.0117) + ( 8.00 1.260 0.0120) + ( 8.50 1.318 0.0126) + ( 9.00 1.368 0.0133) + ( 9.50 1.422 0.0143) + ( 10.00 1.475 0.0156) + ( 10.50 1.523 0.0174) + ( 11.00 1.570 0.0194) + ( 11.50 1.609 0.0227) + ( 12.00 1.642 0.0269) + ( 12.50 1.675 0.0319) + ( 13.00 1.700 0.0398) + ( 13.50 1.717 0.0488) + ( 14.00 1.712 0.0614) + ( 14.50 1.703 0.0786) + ( 15.50 1.671 0.1173) + ( 16.00 1.649 0.1377) + ( 16.50 1.621 0.1600) + ( 17.00 1.598 0.1814) + ( 17.50 1.571 0.2042) + ( 18.00 1.549 0.2316) + ( 19.00 1.544 0.2719) + ( 19.50 1.549 0.2906) + ( 20.00 1.565 0.3085) + ( 21.00 1.565 0.3447) + ( 22.00 1.563 0.3820) + ( 23.00 1.558 0.4203) + ( 24.00 1.552 0.4593) + ( 25.00 1.546 0.4988) + ( 26.00 1.539 0.5387) + ( 28.00 1.527 0.6187) + ( 30.00 1.522 0.6978) + ( 32.00 1.529 0.7747) + ( 35.00 1.544 0.8869) + ( 40.00 1.529 1.0671) + ( 45.00 1.471 1.2319) + ( 50.00 1.376 1.3747) + ( 55.00 1.249 1.4899) + ( 60.00 1.097 1.5728) + ( 65.00 0.928 1.6202) + ( 70.00 0.750 1.6302) + ( 75.00 0.570 1.6031) + ( 80.00 0.396 1.5423) + ( 85.00 0.237 1.4598) + ( 90.00 0.101 1.4041) + ( 95.00 -0.022 1.4053) + ( 100.00 -0.143 1.3914) + ( 105.00 -0.261 1.3625) + ( 110.00 -0.374 1.3188) + ( 115.00 -0.480 1.2608) + ( 120.00 -0.575 1.1891) + ( 125.00 -0.659 1.1046) + ( 130.00 -0.727 1.0086) + ( 135.00 -0.778 0.9025) + ( 140.00 -0.809 0.7883) + ( 145.00 -0.818 0.6684) + ( 150.00 -0.800 0.5457) + ( 155.00 -0.754 0.4236) + ( 160.00 -0.677 0.3066) + ( 170.00 -0.417 0.1085) + ( 175.00 -0.229 0.0510) + ( 180.00 0.000 0.0407) +); diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU40_A17 b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU40_A17 new file mode 100755 index 000000000..6138a98dd --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU40_A17 @@ -0,0 +1,156 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0602) + (-175.00 0.218 0.0699) + (-170.00 0.397 0.1107) + (-160.00 0.642 0.3045) + (-155.00 0.715 0.4179) + (-150.00 0.757 0.5355) + (-145.00 0.772 0.6535) + (-140.00 0.762 0.7685) + (-135.00 0.731 0.8777) + (-130.00 0.680 0.9788) + (-125.00 0.613 1.0700) + (-120.00 0.532 1.1499) + (-115.00 0.439 1.2174) + (-110.00 0.337 1.2716) + (-105.00 0.228 1.3118) + (-100.00 0.114 1.3378) + ( -95.00 -0.002 1.3492) + ( -90.00 -0.120 1.3460) + ( -85.00 -0.236 1.3283) + ( -80.00 -0.349 1.2964) + ( -75.00 -0.456 1.2507) + ( -70.00 -0.557 1.1918) + ( -65.00 -0.647 1.1204) + ( -60.00 -0.727 1.0376) + ( -55.00 -0.792 0.9446) + ( -50.00 -0.842 0.8429) + ( -45.00 -0.874 0.7345) + ( -40.00 -0.886 0.6215) + ( -35.00 -0.875 0.5067) + ( -30.00 -0.839 0.3932) + ( -25.00 -0.777 0.2849) + ( -24.00 -0.761 0.2642) + ( -23.00 -0.744 0.2440) + ( -22.00 -0.725 0.2242) + ( -21.00 -0.706 0.2049) + ( -20.00 -0.685 0.1861) + ( -19.00 -0.662 0.1687) + ( -18.00 -0.635 0.1533) + ( -17.00 -0.605 0.1398) + ( -16.00 -0.571 0.1281) + ( -15.00 -0.534 0.1183) + ( -14.00 -0.494 0.1101) + ( -13.00 -0.452 0.1036) + ( -12.00 -0.407 0.0986) + ( -11.00 -0.360 0.0951) + ( -10.00 -0.311 0.0931) + ( -8.00 -0.208 0.0930) + ( -6.00 -0.111 0.0689) + ( -5.50 -0.090 0.0614) + ( -5.00 -0.072 0.0547) + ( -4.50 -0.065 0.0480) + ( -4.00 -0.054 0.0411) + ( -3.50 -0.017 0.0349) + ( -3.00 0.003 0.0299) + ( -2.50 0.014 0.0255) + ( -2.00 0.009 0.0198) + ( -1.50 0.004 0.0164) + ( -1.00 0.036 0.0147) + ( -0.50 0.073 0.0137) + ( 0.00 0.137 0.0113) + ( 0.50 0.213 0.0114) + ( 1.00 0.292 0.0118) + ( 1.50 0.369 0.0122) + ( 2.00 0.444 0.0124) + ( 2.50 0.514 0.0124) + ( 3.00 0.580 0.0123) + ( 3.50 0.645 0.0120) + ( 4.00 0.710 0.0119) + ( 4.50 0.776 0.0122) + ( 5.00 0.841 0.0125) + ( 5.50 0.904 0.0129) + ( 6.00 0.967 0.0135) + ( 6.50 1.027 0.0144) + ( 7.00 1.084 0.0158) + ( 7.50 1.140 0.0174) + ( 8.00 1.193 0.0198) + ( 8.50 1.242 0.0231) + ( 9.00 1.287 0.0275) + ( 9.50 1.333 0.0323) + ( 10.00 1.368 0.0393) + ( 10.50 1.400 0.0475) + ( 11.00 1.425 0.0580) + ( 11.50 1.449 0.0691) + ( 12.00 1.473 0.0816) + ( 12.50 1.494 0.0973) + ( 13.00 1.513 0.1129) + ( 13.50 1.538 0.1288) + ( 14.50 1.587 0.1650) + ( 15.00 1.614 0.1845) + ( 15.50 1.631 0.2052) + ( 16.00 1.649 0.2250) + ( 16.50 1.666 0.2467) + ( 17.00 1.681 0.2684) + ( 17.50 1.699 0.2900) + ( 18.00 1.719 0.3121) + ( 19.00 1.751 0.3554) + ( 19.50 1.767 0.3783) + ( 20.50 1.798 0.4212) + ( 21.00 1.810 0.4415) + ( 22.00 1.830 0.4830) + ( 23.00 1.847 0.5257) + ( 24.00 1.861 0.5694) + ( 25.00 1.872 0.6141) + ( 26.00 1.881 0.6593) + ( 28.00 1.894 0.7513) + ( 30.00 1.904 0.8441) + ( 32.00 1.915 0.9364) + ( 35.00 1.929 1.0722) + ( 40.00 1.903 1.2873) + ( 45.00 1.820 1.4796) + ( 50.00 1.690 1.6401) + ( 55.00 1.522 1.7609) + ( 60.00 1.323 1.8360) + ( 65.00 1.106 1.8614) + ( 70.00 0.880 1.8347) + ( 75.00 0.658 1.7567) + ( 80.00 0.449 1.6334) + ( 85.00 0.267 1.4847) + ( 90.00 0.124 1.3879) + ( 95.00 0.002 1.3912) + ( 100.00 -0.118 1.3795) + ( 105.00 -0.235 1.3528) + ( 110.00 -0.348 1.3114) + ( 115.00 -0.453 1.2557) + ( 120.00 -0.549 1.1864) + ( 125.00 -0.633 1.1041) + ( 130.00 -0.702 1.0102) + ( 135.00 -0.754 0.9060) + ( 140.00 -0.787 0.7935) + ( 145.00 -0.797 0.6750) + ( 150.00 -0.782 0.5532) + ( 155.00 -0.739 0.4318) + ( 160.00 -0.664 0.3147) + ( 170.00 -0.410 0.1144) + ( 175.00 -0.226 0.0702) + ( 180.00 0.000 0.0602) +); diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/NACA64_A17 b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/NACA64_A17 new file mode 100755 index 000000000..11fa618d0 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/NACA64_A17 @@ -0,0 +1,147 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0198) + (-175.00 0.374 0.0341) + (-170.00 0.749 0.0955) + (-160.00 0.659 0.2807) + (-155.00 0.736 0.3919) + (-150.00 0.783 0.5086) + (-145.00 0.803 0.6267) + (-140.00 0.798 0.7427) + (-135.00 0.771 0.8537) + (-130.00 0.724 0.9574) + (-125.00 0.660 1.0519) + (-120.00 0.581 1.1355) + (-115.00 0.491 1.2070) + (-110.00 0.390 1.2656) + (-105.00 0.282 1.3104) + (-100.00 0.169 1.3410) + ( -95.00 0.052 1.3572) + ( -90.00 -0.067 1.3587) + ( -85.00 -0.184 1.3456) + ( -80.00 -0.299 1.3181) + ( -75.00 -0.409 1.2765) + ( -70.00 -0.512 1.2212) + ( -65.00 -0.606 1.1532) + ( -60.00 -0.689 1.0731) + ( -55.00 -0.759 0.9822) + ( -50.00 -0.814 0.8820) + ( -45.00 -0.850 0.7742) + ( -40.00 -0.866 0.6610) + ( -35.00 -0.860 0.5451) + ( -30.00 -0.829 0.4295) + ( -25.00 -0.853 0.3071) + ( -24.00 -0.870 0.2814) + ( -23.00 -0.890 0.2556) + ( -22.00 -0.911 0.2297) + ( -21.00 -0.934 0.2040) + ( -20.00 -0.958 0.1785) + ( -19.00 -0.982 0.1534) + ( -18.00 -1.005 0.1288) + ( -17.00 -1.082 0.1037) + ( -16.00 -1.113 0.0786) + ( -15.00 -1.105 0.0535) + ( -14.00 -1.078 0.0283) + ( -13.50 -1.053 0.0158) + ( -13.00 -1.015 0.0151) + ( -12.00 -0.904 0.0134) + ( -11.00 -0.807 0.0121) + ( -10.00 -0.711 0.0111) + ( -9.00 -0.595 0.0099) + ( -8.00 -0.478 0.0091) + ( -7.00 -0.375 0.0086) + ( -6.00 -0.264 0.0082) + ( -5.00 -0.151 0.0079) + ( -4.00 -0.017 0.0072) + ( -3.00 0.088 0.0064) + ( -2.00 0.213 0.0054) + ( -1.00 0.328 0.0052) + ( 0.00 0.442 0.0052) + ( 1.00 0.556 0.0052) + ( 2.00 0.670 0.0053) + ( 3.00 0.784 0.0053) + ( 4.00 0.898 0.0054) + ( 5.00 1.011 0.0058) + ( 6.00 1.103 0.0091) + ( 7.00 1.181 0.0113) + ( 8.00 1.257 0.0124) + ( 8.50 1.293 0.0130) + ( 9.00 1.326 0.0136) + ( 9.50 1.356 0.0143) + ( 10.00 1.382 0.0150) + ( 10.50 1.400 0.0267) + ( 11.00 1.415 0.0383) + ( 11.50 1.425 0.0498) + ( 12.00 1.434 0.0613) + ( 12.50 1.443 0.0727) + ( 13.00 1.451 0.0841) + ( 13.50 1.453 0.0954) + ( 14.00 1.448 0.1065) + ( 14.50 1.444 0.1176) + ( 15.00 1.445 0.1287) + ( 15.50 1.447 0.1398) + ( 16.00 1.448 0.1509) + ( 16.50 1.444 0.1619) + ( 17.00 1.438 0.1728) + ( 17.50 1.439 0.1837) + ( 18.00 1.448 0.1947) + ( 18.50 1.452 0.2057) + ( 19.00 1.448 0.2165) + ( 19.50 1.438 0.2272) + ( 20.00 1.428 0.2379) + ( 21.00 1.401 0.2590) + ( 22.00 1.359 0.2799) + ( 23.00 1.300 0.3004) + ( 24.00 1.220 0.3204) + ( 25.00 1.168 0.3377) + ( 26.00 1.116 0.3554) + ( 28.00 1.015 0.3916) + ( 30.00 0.926 0.4294) + ( 32.00 0.855 0.4690) + ( 35.00 0.800 0.5324) + ( 40.00 0.804 0.6452) + ( 45.00 0.793 0.7573) + ( 50.00 0.763 0.8664) + ( 55.00 0.717 0.9708) + ( 60.00 0.656 1.0693) + ( 65.00 0.582 1.1606) + ( 70.00 0.495 1.2438) + ( 75.00 0.398 1.3178) + ( 80.00 0.291 1.3809) + ( 85.00 0.176 1.4304) + ( 90.00 0.053 1.4565) + ( 95.00 -0.074 1.4533) + ( 100.00 -0.199 1.4345) + ( 105.00 -0.321 1.4004) + ( 110.00 -0.436 1.3512) + ( 115.00 -0.543 1.2874) + ( 120.00 -0.640 1.2099) + ( 125.00 -0.723 1.1196) + ( 130.00 -0.790 1.0179) + ( 135.00 -0.840 0.9064) + ( 140.00 -0.868 0.7871) + ( 145.00 -0.872 0.6627) + ( 150.00 -0.850 0.5363) + ( 155.00 -0.798 0.4116) + ( 160.00 -0.714 0.2931) + ( 170.00 -0.749 0.0971) + ( 175.00 -0.374 0.0334) + ( 180.00 0.000 0.0198) +); diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/g b/exampleCases/example.ADM.ssc.zeromq/constant/g new file mode 100755 index 000000000..74304427f --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/constant/g @@ -0,0 +1,22 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class uniformDimensionedVectorField; + location "constant"; + object g; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 1 -2 0 0 0 0]; +value ( 0.0 0.0 -9.81 ); + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/polyMesh/blockMeshDict b/exampleCases/example.ADM.ssc.zeromq/constant/polyMesh/blockMeshDict new file mode 100755 index 000000000..575f61147 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/constant/polyMesh/blockMeshDict @@ -0,0 +1,105 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object blockMeshDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../../setUp" + + + + +convertToMeters 1.0; + +vertices +( + ( $xMin $yMin $zMin) + ( $xMax $yMin $zMin) + ( $xMax $yMax $zMin) + ( $xMin $yMax $zMin) + ( $xMin $yMin $zMax) + ( $xMax $yMin $zMax) + ( $xMax $yMax $zMax) + ( $xMin $yMax $zMax) +); + +blocks +( + hex (0 1 2 3 4 5 6 7) ($nx $ny $nz) simpleGrading (1 1 1) +); + +edges +( +); + +boundary +( + lower + { + type wall; + faces + ( + (0 3 2 1) + ); + } + upper + { + type patch; + faces + ( + (4 5 6 7) + ); + } + west + { + type cyclic; + neighbourPatch east; + faces + ( + (0 4 7 3) + ); + } + east + { + type cyclic; + neighbourPatch west; + faces + ( + (1 2 6 5) + ); + } + north + { + type cyclic; + neighbourPatch south; + faces + ( + (3 7 6 2) + ); + } + south + { + type cyclic; + neighbourPatch north; + faces + ( + (0 1 5 4) + ); + } +); + +mergePatchPairs +( +); + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/transportProperties b/exampleCases/example.ADM.ssc.zeromq/constant/transportProperties new file mode 100755 index 000000000..3ee719c86 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/constant/transportProperties @@ -0,0 +1,39 @@ +/*---------------------------------------------------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.openfoam.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + + root ""; + case ""; + instance ""; + local ""; + + class dictionary; + object transportProperties; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +transportModel Newtonian; + +// Molecular viscosity +nu nu [0 2 -1 0 0 0 0] $nu; + +// Reference temperature +TRef TRef [0 0 0 1 0 0 0] $TRef; + +// Prandtl numbers +Pr Pr [0 0 0 0 0 0 0] $Pr; +Prt Prt [0 0 0 0 0 0 0] $Prt; +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/turbineArrayProperties b/exampleCases/example.ADM.ssc.zeromq/constant/turbineArrayProperties new file mode 100755 index 000000000..45f719a78 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/constant/turbineArrayProperties @@ -0,0 +1,76 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object turbineProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +globalProperties +{ + outputControl "timeStep"; + outputInterval 1; +} + +// _SSC_ +sscProperties +{ + sscEnabled true; //Enable/disable ssc, if not present defaults to False + nInputsToSSC 3; // Number of inputs EACH turbine passes to the super controller + nOutputsFromSSC 2; // Number of outputs the super controller sends to EACH turbine + sscControllerType "zeromqSSC"; // The type of SSC +} + +turbine0 +{ + turbineType "NREL5MWRef"; + baseLocation (1000.0 1500.0 0.0); + nRadial 64; + azimuthMaxDis 2.0; + nAvgSector 1; + pointDistType "uniform"; + pointInterpType "linear"; + bladeUpdateType "oldPosition"; + epsilon 20.0; + forceScalar 1.0; + inflowVelocityScalar 0.94; + tipRootLossCorrType "Glauert"; + rotationDir "cw"; + Azimuth 0.0; + RotSpeed 9.15519863; + TorqueGen 0.0; + Pitch 0.0; + NacYaw 270.0; + fluidDensity 1.225; +} + +turbine1 +{ + turbineType "NREL5MWRef"; + baseLocation (1500.0 1500.0 0.0); + nRadial 64; + azimuthMaxDis 2.0; + nAvgSector 1; + pointDistType "uniform"; + pointInterpType "linear"; + bladeUpdateType "oldPosition"; + epsilon 20.0; + forceScalar 1.0; + inflowVelocityScalar 0.94; + tipRootLossCorrType "Glauert"; + rotationDir "cw"; + Azimuth 0.0; + RotSpeed 9.15519863; + TorqueGen 0.0; + Pitch 0.0; + NacYaw 270.0; + fluidDensity 1.225; +} diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/turbineProperties/NREL5MWRef b/exampleCases/example.ADM.ssc.zeromq/constant/turbineProperties/NREL5MWRef new file mode 100755 index 000000000..c51e9a8fd --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/constant/turbineProperties/NREL5MWRef @@ -0,0 +1,122 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object turbineProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +NumBl 3; +TipRad 63.0; +HubRad 1.5; +UndSling 0.0; +OverHang -5.01910; +NacelleLength 8; +NacelleFrontalArea 2; +NacelleCd 0.5; +TowerHt 87.6; +Twr2Shft 1.96256; +ShftTilt -5.0; +PreCone (-2.5 -2.5 -2.5); +GBRatio 97.0; +GBEfficiency 1.0; +GenEfficiency 0.944; +RatedRotSpeed 12.1; +GenIner 534.116; +HubIner 115.926E3; +BladeIner 11.776047E6; +GenTorqueControllerType "fiveRegion"; +//GenTorqueControllerType "speedTorqueTable"; +//GenTorqueControllerType "none"; +BladePitchControllerType "PIDSC"; +//BladePitchControllerType "none"; +NacYawControllerType "yawSC"; +RotSpeedLimiter false; +GenTorqueRateLimiter true; +NacYawRateLimiter true; +BladePitchRateLimiter true; +SpeedFilterCornerFrequency 2.0; + + +GenTorqueControllerParams +{ + RateLimitGenTorque 15.0E3; + SpeedTorqueTable + ( + // gen speed (RPM) gen torque (N-m) + ( 670.00 0.0 ) + ( 871.00 20000.0 ) + ( 1161.96 32000.0 ) + ( 1173.70 43093.6 ) + ); + CutInGenSpeed 670.0; + Region2StartGenSpeed 871.0; + Region2EndGenSpeed 1161.963; + CutInGenTorque 0.0; + RatedGenTorque 43.09355E3; + KGen 2.55764E-2; +} + +BladePitchControllerParams +{ + RateLimitBladePitch 8.000; + PitchMin 0.000; + PitchMax 90.000; + PitchK 6.302336; + PitchControlKP 1.82620057; + PitchControlKI 0.78265750; + PitchControlKD 0.000; +} + +NacYawControllerParams +{ + RateLimitNacYaw 2.0; +} + + + + +Airfoils +( + "Cylinder1" + "Cylinder2" + "DU40_A17" + "DU35_A17" + "DU30_A17" + "DU25_A17" + "DU21_A17" + "NACA64_A17" +); + + + +BladeData +( +// radius(m) c(m) twist(deg) airfoil + (2.8667 3.542 13.308 0) + (5.6 3.854 13.308 0) + (8.3333 4.167 13.308 1) + (11.75 4.557 13.308 2) + (15.85 4.652 11.48 3) + (19.95 4.458 10.162 3) + (24.05 4.249 9.011 4) + (28.15 4.007 7.795 5) + (32.25 3.748 6.544 5) + (36.35 3.502 5.361 6) + (40.45 3.256 4.188 6) + (44.55 3.01 3.125 7) + (48.65 2.764 2.319 7) + (52.75 2.518 1.526 7) + (56.1667 2.313 0.863 7) + (58.9 2.086 0.37 7) + (61.6333 1.419 0.106 7) +); diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/turbulenceProperties b/exampleCases/example.ADM.ssc.zeromq/constant/turbulenceProperties new file mode 100755 index 000000000..f8a545e0c --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/constant/turbulenceProperties @@ -0,0 +1,22 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object turbulenceProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +// simulationType RASModel; + simulationType LESModel; +// simulationType laminar; + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/runscript.preprocess b/exampleCases/example.ADM.ssc.zeromq/runscript.preprocess new file mode 100755 index 000000000..8d2aa51f7 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/runscript.preprocess @@ -0,0 +1,170 @@ +#!/bin/bash +#PBS -l walltime=4:00:00 +#PBS -l procs=1 +#PBS -A ssc +#PBS -q short + + + + + +# User Input. +OpenFOAMversion=2.4.x # OpenFOAM version + +startTime=20000 # Start time +precursorDir=/projects/ssc/flowLibrary/neutral_3kmx3kmx1km + +updateBCType=1 # Boolean for whether or not the boundary condition types will be updated over + # what is in the initial conditions files. Leave it 0 for precursors. +inflowDir='west' # For inflow/outflow cases, specify the inflow direction. Choices are 'west', + # 'east', 'south', 'west', 'southWest', 'northWest', 'southEast', and + # 'northEast'. There is a 'cyclic' option too in case you need to change + # back to cyclic or simply update the number of boundary face entries. +localRefinementLevels=0 # Number of levels of local refinement (requires system/topoSetDict and + # system/refineHexMeshDict). +globalRefinementLevels=0 # Number of levels of global refinement. +cores=1 # Enter the number of cores you will preprocess on. + + + + + + +# Define some functions for mesh refinement. +# Local refinement performed on one core. +refineMeshLocal() +{ + i=$1 + while [ $i -ge 1 ] + do + echo " -Performing level $i local refinement with topoSet/refineHexMesh" + echo " *selecting cells to refine..." + topoSet -dict system/topoSetDict.local.$i > log.topoSet.local.$i 2>&1 + + echo " *refining cells..." + refineHexMesh local -overwrite > log.refineHexMesh.local.$i 2>&1 + + let i=i-1 + done +} + +# Global refinement performed in parallel. +refineMeshGlobal() +{ + i=1 + while [ $i -le $1 ] + do + echo " -Performing level $i global refinement with refineMesh" + echo " *refining cells..." + mpirun -np $cores refineMesh -parallel -overwrite > log.refineMesh.global.$i 2>&1 + + let i=i+1 + done +} + + +# If running in parallel, cd to job launch directory +if [ $cores -gt 1 ] + then + cd $PBS_O_WORKDIR +fi + + +# Source the bash profile and then call the appropriate OpenFOAM version function +# so that all the modules and environment variables get set. +echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." +source $HOME/.bash_profile +OpenFOAM-$OpenFOAMversion + + +# Copy the controlDict.1 (assuming this is the one the actual solver will start +# out with) to controlDict. OpenFOAM reads "controlDict", not the numbered ones. +echo "Getting the control dictionary ready..." +cp system/controlDict.1 system/controlDict + + +# Copy the "clean" .original initial fields to a working copy. OpenFOAM does not +# read the ".original" initial fields--that's why they remain clean. +echo "Getting the initial condition directory from the precursor..." +rm -rf $startTime +cp -rf $precursorDir/$startTime $startTime + + +# Build the mesh. +echo "Copy the the base mesh from the precursor..." +rm -rf constant/polyMesh +cp -rf $precursorDir/constant/polyMesh ./constant + + +# Get the inflow data linked up. +echo "Linking the inflow data with this directory..." +ln -s $precursorDir/drivingData/boundaryData ./constant + + +# Get the driving source terms linked up. +echo "Linking the driving source terms with this directory..." +ln -s $precursorDir/drivingData/sources ./constant + + +# The initial fields come from the precursor which is periodic on all sides. The turbine +# case has inflow and outflow. Call the changeDictionary utility to update for inflow/outflow.. +if [ $updateBCType -eq 1 ] + then + echo "Using changeDictionary to update boundary conditions..." + changeDictionary -dict system/changeDictionaryDict.updateBCs.$inflowDir -time $startTime -enableFunctionEntries > log.changeDictionary.updateBCs.$inflowDir.1 2>&1 +fi + + +# Do serial local refinement +echo "Using refineHexMesh to perform " $localRefinementLevels " of local refinement..." +refineMeshLocal $localRefinementLevels + + +# If running in paralle from this point forward, then do the following: +if [ $cores -gt 1 ] + then + # Decompose the mesh and solution files (serial) + echo "Using decomposePar to decompose the problem for parallel processing..." + decomposePar -cellDist -force -time $startTime > log.decomposePar 2>&1 + + # Check the mesh + echo "Running checkMesh to report mesh diagnostics..." + mpirun -np $cores checkMesh -parallel > log.checkMesh.1 2>&1 + + # Perform global refinement to desired resolution. + echo "Using refineMesh to perform " $globalRefinementLevels " of global refinement..." + refineMeshGlobal $globalRefinementLevels + + # The mesh got globally refined, but the solution file did not, so + # the boundary fields may not have the correct number of entries. + # Use the changeDictionary utility to overwrite the spatially varying + # boundary data to a uniform single value. + if [ $updateBCType -eq 1 ] + then + echo "Using changeDictionary to ensure that the boundaries have the correct number of faces..." + mpirun -np $cores changeDictionary -dict system/changeDictionaryDict.updateBCs.$inflowDir -time $startTime -enableFunctionEntries -parallel > log.changeDictionary.updateBCs.$inflowDir.1 2>&1 + fi + + # Renumber the mesh for better matrix solver performance. + echo "Using renumberMesh to renumber the mesh for better matrix conditioning..." + mpirun -np $cores renumberMesh -parallel -overwrite -time $startTime > log.renumberMesh 2>&1 + + # Do one last check on the mesh. + echo "Running checkMesh to report mesh diagnostics..." + mpirun -np $cores checkMesh -parallel > log.checkMesh.3 2>&1 + + +# Otherwise, run in serial as follows: +else + # Renumber the mesh. + echo "Using renumberMesh to renumber the mesh for better matrix conditioning..." + renumberMesh -overwrite -time $startTime > log.renumberMesh 2>&1 + + # Decompose the mesh and solution files (serial) + echo "Using decomposePar to decompose the problem for parallel processing..." + decomposePar -cellDist -force -time $startTime > log.decomposePar 2>&1 + + # Check the mesh. + echo "Running checkMesh to report mesh diagnostics..." + checkMesh > log.checkMesh.1 2>&1 +fi diff --git a/exampleCases/example.ADM.ssc.zeromq/runscript.solve.1 b/exampleCases/example.ADM.ssc.zeromq/runscript.solve.1 new file mode 100755 index 000000000..c8f167af9 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/runscript.solve.1 @@ -0,0 +1,40 @@ +#!/bin/bash +#PBS -l walltime=2:00:00 +#PBS -l procs=180 +#PBS -A ssc +#PBS -q short +#PBS -l qos=high + +cd $PBS_O_WORKDIR + + + + +# User Input. +OpenFOAMversion=2.4.x # OpenFOAM version +startTime=0 # Start time +cores=180 # Enter the number of cores you will preprocess on. +runNumber=1 # Enter the run number (useful for keeping track of restarts). +solver=windPlantSolver.ADM # Enter the name of the flow solver. + + + +echo "Starting OpenFOAM job at: " $(date) +echo "using " $cores " cores" + + +# Source the bash profile and then call the appropriate OpenFOAM version function +# so that all the modules and environment variables get set. +echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." +source $HOME/.bash_profile +OpenFOAM-2.4.develop + + +# Get the control dictionary for this particular run. +cp system/controlDict.$runNumber system/controlDict + + +# Run the solver. +mpirun -np $cores $solver -parallel > log.$runNumber.$solver 2>&1 + +echo "Ending OpenFOAM job at: " $(date) diff --git a/exampleCases/example.ADM.ssc.zeromq/setUp b/exampleCases/example.ADM.ssc.zeromq/setUp new file mode 100755 index 000000000..427ba153e --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/setUp @@ -0,0 +1,103 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.4.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +// Domain size and number of cells. +xMin 0.0; // Minimum x-extent of domain (m). +yMin 0.0; // Minimum y-extent of domain (m). +zMin 0.0; // Minimum z-extent of domain (m). +xMax 3000.0; // Maximum x-extent of domain (m). +yMax 3000.0; // Maximum y-extent of domain (m). +zMax 1000.0; // Maximum z-extent of domain (m). +nx 300; // Number of cells in x-direction. +ny 300; // Number of cells in y-direction. +nz 100; // Number of cells in z-direction. + + + + +// Number of cores and domain decomposition information. +nCores 180; // Number of cores on which to run this case. +decompType simple; // Decomposition algorithm. "simple" and "scotch" are good choices. +decompOrder (6 6 5); // Order of the decomposition number of partitions in (x y z)-directions. + + + + +// Planar averaging and source term statistics options. +statisticsOn true; // Gather planar-averaged flow statistics. +statisticsFrequency 5; // Frequency in time steps of statistics gathering. +avgStartTime 20200; // Time to begin accumulating the mean; +corrStartTime 20400; // Time to begin accumulating the correlations; + + + +// Initial values for the variables. +// Note that U and T get overwritten if setFieldsABL is called. +U0Mag 8.0; // Initial condition for wind speed (m/s). +dir 270.0; // Initial condition for wind direction (deg). +windHeight 99.27; // Height at which to drive mean wind to U0Mag/dir (m). +p_rgh0 0.0; // Initial pressure (minus the hydrostatic variation and normalized by density) (m^2/s^2). +nuSgs0 0.0; // Initial SGS viscosity (m^2/s). +k0 0.1; // Initial SGS turbulent kinetic energy (m^2/s^2). +kappat0 0.0; // Initial SGS temperature diffusivity (m^2/s). +TGradUpper 0.003; // Potential temperature gradient above the strong inversion (K/m). +zInversion 750.0; // Height of the middle of the initial strong capping inversion (m). +inversionWidth 100.0; // Vertical width of the intial strong capping inversion (m). +TBottom 300.0; // Initial potential temperature at bottom of strong capping inversion (K). +TTop 305.0; // Initial potential temperature at top of strong capping inversion (K). + + + + +// General conditions and parameters. +Pr 0.7; // Molecular Prandtl number. +Prt 0.33333333; // Turbulent Prandtl number. +nu 1.0E-5; // Molecular viscosity (m^2/s). +TRef 300.0; // Reference potential temperature (K). +latitude 41.3; // Latitude on the Earth of the site (deg). +EarthPeriod 24.0; // Earth's rotation period (hr). + + + + +// SGS model inputs. +LESModel oneEqEddyABL; // SGS model selection. +ce 0.93; // SGS model constant. +ck 0.0673; // SGS model constant. + + + + +// Surface conditions. +qwall (0.0 0.0 0.0); // Temperature flux at wall (modify the z-value). A negative value is flux into domain (K-m/s). +Rwall (0.0 0.0 0.0 0.0 0.0 0.0); // Initial wall shear stress (m^2/s^2). +kappa 0.4; // von Karman constant. +z0 0.15; // Surface roughness (m). +//STABLE CASES +//betaM 15.0; // Monin-Obukhov wall shear stress model constant. +//gammaM 4.9; // Monin-Obukhov wall shear stress model constant. +//betaH 9.0; // Monin-Obukhov wall temperature flux model constant. +//gammaH 7.8; // Monin-Obukhov wall temperature flux model constant. +//alphaH 1.0; // Monin-Obukhov wall temperature flux model constant. +//heatingRate 0.0; // Surface temperature change rate (when not directly setting temperature flux) (K/s). +//NEUTRAL and UNSTABLE +betaM 16.0; +gammaM 5.0; +betaH 9.0; +gammaH 7.8; +alphaH 1.0; + + + + + + +#inputMode merge + +// ************************************************************************* // + diff --git a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.cyclic b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.cyclic new file mode 100755 index 000000000..389d1c7e8 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.cyclic @@ -0,0 +1,261 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp"; + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + boundary + { + north + { + type cyclic; + } + south + { + type cyclic; + } + west + { + type cyclic; + } + east + { + type cyclic; + } + } + + + T + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + U + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + k + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + kappat + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + nuSgs + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + p_rgh + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "planarAverage"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.east b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.east new file mode 100755 index 000000000..3143cb1ab --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.east @@ -0,0 +1,306 @@ +/a*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp"; + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + boundary + { + west + { + type patch; + } + east + { + type patch; + } + } + + + + T + { + boundaryField + { + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.north b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.north new file mode 100755 index 000000000..6d390357b --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.north @@ -0,0 +1,217 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + + +#include "../setUp"; + + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + boundary + { + north + { + type patch; + } + south + { + type patch; + } + } + + T + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + south + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + south + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + south + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + north + { + type fixedFluxPressure; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.northeast b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.northeast new file mode 100755 index 000000000..8c5231d75 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.northeast @@ -0,0 +1,313 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp"; + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + boundary + { + north + { + type patch; + } + south + { + type patch; + } + west + { + type patch; + } + east + { + type patch; + } + } + + + T + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + south + { + type zeroGradient; + value uniform 300; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + south + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + south + { + type zeroGradient; + value uniform 0.1; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + north + { + type fixedFluxPressure; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.northwest b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.northwest new file mode 100755 index 000000000..46c74d091 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.northwest @@ -0,0 +1,313 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp"; + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + boundary + { + north + { + type patch; + } + south + { + type patch; + } + west + { + type patch; + } + east + { + type patch; + } + } + + + T + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + south + { + type zeroGradient; + value uniform 300; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + east + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + south + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + south + { + type zeroGradient; + value uniform 0.1; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + east + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + north + { + type fixedFluxPressure; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedFluxPressure; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.south b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.south new file mode 100755 index 000000000..c7b2263b6 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.south @@ -0,0 +1,215 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp"; + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + boundary + { + north + { + type patch; + } + south + { + type patch; + } + } + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.southeast b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.southeast new file mode 100755 index 000000000..685b7f941 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.southeast @@ -0,0 +1,314 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp"; + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + boundary + { + north + { + type patch; + } + south + { + type patch; + } + west + { + type patch; + } + east + { + type patch; + } + } + + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.southwest b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.southwest new file mode 100755 index 000000000..9ab9bc83f --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.southwest @@ -0,0 +1,313 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + boundary + { + north + { + type patch; + } + south + { + type patch; + } + west + { + type patch; + } + east + { + type patch; + } + } + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + east + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + east + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedFluxPressure; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.west b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.west new file mode 100755 index 000000000..34078e2b8 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.west @@ -0,0 +1,215 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp"; + + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + boundary + { + west + { + type patch; + } + east + { + type patch; + } + } + + + T + { + boundaryField + { + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + east + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + east + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + west + { + type fixedFluxPressure; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa $kappa; + z0 uniform $z0; + betaM $betaM; + gammaM $gammaM; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/controlDict b/exampleCases/example.ADM.ssc.zeromq/system/controlDict new file mode 100755 index 000000000..94f0bacaa --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/controlDict @@ -0,0 +1,61 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object controlDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + + application ABLSolver; + + libs ("libuserfiniteVolume.so" "libuserincompressibleLESModels.so"); + + startFrom startTime; + + startTime 20000.0; + + stopAt endTime; + + endTime 23600.0; + + deltaT 0.5; + + writeControl adjustableRunTime; + + writeInterval 1000.0; + + purgeWrite 0; + + writeFormat binary; + + writePrecision 12; + + writeCompression compressed; + + timeFormat general; + + timePrecision 12; + + runTimeModifiable yes; + + adjustTimeStep no; + + maxCo 0.75; + + maxDeltaT 25.0; + + functions + { + } + +// ************************************************************************* // + diff --git a/exampleCases/example.ADM.ssc.zeromq/system/controlDict.1 b/exampleCases/example.ADM.ssc.zeromq/system/controlDict.1 new file mode 100755 index 000000000..94f0bacaa --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/controlDict.1 @@ -0,0 +1,61 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object controlDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + + application ABLSolver; + + libs ("libuserfiniteVolume.so" "libuserincompressibleLESModels.so"); + + startFrom startTime; + + startTime 20000.0; + + stopAt endTime; + + endTime 23600.0; + + deltaT 0.5; + + writeControl adjustableRunTime; + + writeInterval 1000.0; + + purgeWrite 0; + + writeFormat binary; + + writePrecision 12; + + writeCompression compressed; + + timeFormat general; + + timePrecision 12; + + runTimeModifiable yes; + + adjustTimeStep no; + + maxCo 0.75; + + maxDeltaT 25.0; + + functions + { + } + +// ************************************************************************* // + diff --git a/exampleCases/example.ADM.ssc.zeromq/system/decomposeParDict b/exampleCases/example.ADM.ssc.zeromq/system/decomposeParDict new file mode 100755 index 000000000..565dd1343 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/decomposeParDict @@ -0,0 +1,76 @@ +/*-------------------------------*- C++ -*---------------------------------*\ +| ========= | +| \\ / OpenFOAM | +| \\ / | +| \\ / The Open Source CFD Toolbox | +| \\/ http://www.OpenFOAM.org | +\*-------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + note "mesh decomposition control dictionary"; + location "system"; + object decomposeParDict; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +numberOfSubdomains $nCores; +method $decompType; +preservePatches (north south east west); + +simpleCoeffs +{ + n $decompOrder; + delta 0.001; +} + +hierarchicalCoeffs +{ + n (1 1 3); + delta 0.001; + order xyz; +} + +metisCoeffs +{ + processorWeights + ( + ); +} + +scotchCoeffs +{ + //processorWeights + //( + // 1 + // 1 + // 1 + // 1 + //); + //writeGraph true; + //strategy "b"; +} + +manualCoeffs +{ + dataFile "decompositionData"; +} + + +//// Is the case distributed +distributed no; +//// Per slave (so nProcs-1 entries) the directory above the case. +//roots +//( +// "/tmp" +// "/tmp" +//); + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/fvSchemes b/exampleCases/example.ADM.ssc.zeromq/system/fvSchemes new file mode 100755 index 000000000..12d01ece2 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/fvSchemes @@ -0,0 +1,111 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSchemes; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +ddtSchemes +{ + default backward; +// default CrankNicolson 1.0; +} + +gradSchemes +{ + default Gauss linear; + grad(U) Gauss linear; +} + +divSchemes +{ + default Gauss linear; + //div(phi,U) Gauss linear; + //div(phi,T) Gauss linear; + div(phi,U) Gauss localBlended linear upwind; + div(phi,T) Gauss localBlended linear upwind; + div(R) Gauss linear; + div(U) Gauss linear; + div((nuEff*dev(grad(U).T()))) Gauss linear; + div(B) Gauss linear; + div(phi,B) Gauss linear; + div(phi,k) Gauss linear; +} + +laplacianSchemes +{ + default Gauss linear corrected; + laplacian(rUA,p) Gauss linear corrected; + laplacian((1|A(U)),p) Gauss linear corrected; + laplacian(interpolate((1|A(U))),p) Gauss linear corrected; + laplacian(interpolate((1|A(U))),pd) Gauss linear corrected; + laplacian(nu,U) Gauss linear corrected; + laplacian(nuEff,U) Gauss linear corrected; + laplacian(kappaEff,T) Gauss linear corrected; + laplacian(DBEff,B) Gauss linear corrected; + laplacian(nuSgs,U) Gauss linear corrected; +} + +interpolationSchemes +{ + default linear; +} + +snGradSchemes +{ + default corrected; +} + +fluxRequired +{ + default no; + p_rgh ; +} + +schemeBlending +{ + + // Table of blending factors vs. cell face size. + faceSizeBlendingTable + ( + // area U T + (0.096 0.996 0.980 ) + (0.39 0.996 0.980 ) + (1.563 0.997 0.985 ) + (6.25 0.998 0.990 ) + (25 0.999 0.995 ) + (100 1.000 1.000 ) + (1E6 1.000 1.000 ) + ); + + + // Height above which blending factor begins to transition + // from heightBlendingFactor_z1 to heightBlendingFactor_z2. + heightBlending_z1 800.0; + + // Height above which blending factor is heightBlendingFactor_z2. + heightBlending_z2 1000.0; + + + heightBlendingFactorU_z1 1.0; + heightBlendingFactorU_z2 0.9; + + heightBlendingFactorT_z1 1.0; + heightBlendingFactorT_z2 0.9; + + + // In calculating height, use wall distance or absolute distance. + useWallDistZ false; +} + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/fvSolution b/exampleCases/example.ADM.ssc.zeromq/system/fvSolution new file mode 100755 index 000000000..38224f9d0 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/fvSolution @@ -0,0 +1,102 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSolution; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +solvers +{ + p_rgh + { + solver PCG; + preconditioner + { + preconditioner GAMG; + tolerance 1e-05; + relTol 0.01; + smoother DICGaussSeidel; + nPreSweeps 0; + nPostSweeps 2; + nFinestSweeps 2; + cacheAgglomeration true; + nCellsInCoarsestLevel 100; + agglomerator faceAreaPair; + mergeLevels 2; + } + tolerance 1e-06; + relTol 0.01; + maxIter 1000; + } + + p_rghFinal + { + $p_rgh; + relTol 0.0; + } + + "(U|T|k|epsilon|R)" + { + solver PBiCG; + preconditioner DILU; + tolerance 1e-6; + relTol 0.1; + maxIter 1000; + } + + "(U|T|k|epsilon|R)Final" + { + $U; + relTol 0.0; + } + + "(flm|fmm)" + { + solver PBiCG; + preconditioner DILU; + tolerance 1e-6; + relTol 0.1; + } + + "(flm|fmm)Final" + { + $flm; + relTol 0.0; + } + + +} + +PIMPLE +{ + momentumPredictor yes; + nOuterCorrectors 1; + nCorrectors 3; + nNonOrthogonalCorrectors 0; + pRefCell 0; + pRefValue 0; +} + +relaxationFactors +{ + fields + { + } + equations + { + "(U|T|k|epsilon|R)" 1.0; + "(U|T|k|epsilon|R)Final" 1.0; + } +} + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/refineMeshDict.local b/exampleCases/example.ADM.ssc.zeromq/system/refineMeshDict.local new file mode 100755 index 000000000..da82aa356 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/refineMeshDict.local @@ -0,0 +1,48 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.1.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object refineMeshDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +set local; + +coordinateSystem global; +//coordinateSystem patchLocal; + +globalCoeffs +{ + tan1 ( 1 0 0 ); + tan2 ( 0 1 0 ); + normal ( 0 0 1 ); +} + +patchLocalCoeffs +{ + patch top; + tan1 ( 1 0 0 ); + tan2 ( 0 1 0 ); + normal ( 0 0 1 ); +} + +directions ( tan1 tan2 normal ); + +useHexTopology yes; + +geometricCut no; + +writeMesh no; + + +// ************************************************************************* // + diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/boundaryDataPre b/exampleCases/example.ADM.ssc.zeromq/system/sampling/boundaryDataPre new file mode 100755 index 000000000..e1ea28fd0 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/sampling/boundaryDataPre @@ -0,0 +1,25 @@ + boundaryDataPre + { + type surfaces; + functionObjectLibs ("libsampling.so"); + enabled true; + interpolationScheme isThisNeeded; + outputControl timeStep; + outputInterval 1; + surfaceFormat foamFile; + fields + ( + U + T + k + ); + surfaces + ( + south + { + type patch; + patches (south); + triangulate false; + } + ); + } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/fieldAverages b/exampleCases/example.ADM.ssc.zeromq/system/sampling/fieldAverages new file mode 100755 index 000000000..84c10394f --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/sampling/fieldAverages @@ -0,0 +1,17 @@ + fieldAverages + { + type fieldAverage; + functionObjectLibs ("libfieldFunctionObjects.so"); + enabled true; + outputControl outputTime; + timeStart 17000.0; + fields + ( + Cs + { + mean on; + prime2Mean off; + base time; + } + ); + } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData1 b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData1 new file mode 100755 index 000000000..12938cddb --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData1 @@ -0,0 +1,223 @@ + probe1 + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + U + T + p + p_rgh + kSgs + nuSgs + RdevSgs + qSgs + ); + + probeLocations + ( + (2500.001 500.001 5.001) + (2500.001 500.001 15.001) + (2500.001 500.001 25.001) + (2500.001 500.001 35.001) + (2500.001 500.001 45.001) + (2500.001 500.001 55.001) + (2500.001 500.001 65.001) + (2500.001 500.001 75.001) + (2500.001 500.001 85.001) + (2500.001 500.001 95.001) + (2500.001 500.001 105.001) + (2500.001 500.001 115.001) + (2500.001 500.001 125.001) + (2500.001 500.001 135.001) + (2500.001 500.001 145.001) + (2500.001 500.001 155.001) + (2500.001 500.001 165.001) + (2500.001 500.001 175.001) + (2500.001 500.001 185.001) + (2500.001 500.001 195.001) + (2500.001 500.001 205.001) + (2500.001 500.001 215.001) + (2500.001 500.001 225.001) + (2500.001 500.001 235.001) + (2500.001 500.001 245.001) + (2500.001 500.001 255.001) + (2500.001 500.001 265.001) + (2500.001 500.001 275.001) + (2500.001 500.001 285.001) + (2500.001 500.001 295.001) + (2500.001 500.001 305.001) + (2500.001 500.001 315.001) + (2500.001 500.001 325.001) + (2500.001 500.001 335.001) + (2500.001 500.001 345.001) + (2500.001 500.001 355.001) + (2500.001 500.001 365.001) + (2500.001 500.001 375.001) + (2500.001 500.001 385.001) + (2500.001 500.001 395.001) + (2500.001 500.001 405.001) + (2500.001 500.001 415.001) + (2500.001 500.001 425.001) + (2500.001 500.001 435.001) + (2500.001 500.001 445.001) + (2500.001 500.001 455.001) + (2500.001 500.001 465.001) + (2500.001 500.001 475.001) + (2500.001 500.001 485.001) + (2500.001 500.001 495.001) + (2500.001 500.001 505.001) + (2500.001 500.001 515.001) + (2500.001 500.001 525.001) + (2500.001 500.001 535.001) + (2500.001 500.001 545.001) + (2500.001 500.001 555.001) + (2500.001 500.001 565.001) + (2500.001 500.001 575.001) + (2500.001 500.001 585.001) + (2500.001 500.001 595.001) + (2500.001 500.001 605.001) + (2500.001 500.001 615.001) + (2500.001 500.001 625.001) + (2500.001 500.001 635.001) + (2500.001 500.001 645.001) + (2500.001 500.001 655.001) + (2500.001 500.001 665.001) + (2500.001 500.001 675.001) + (2500.001 500.001 685.001) + (2500.001 500.001 695.001) + (2500.001 500.001 705.001) + (2500.001 500.001 715.001) + (2500.001 500.001 725.001) + (2500.001 500.001 735.001) + (2500.001 500.001 745.001) + (2500.001 500.001 755.001) + (2500.001 500.001 765.001) + (2500.001 500.001 775.001) + (2500.001 500.001 785.001) + (2500.001 500.001 795.001) + (2500.001 500.001 805.001) + (2500.001 500.001 815.001) + (2500.001 500.001 825.001) + (2500.001 500.001 835.001) + (2500.001 500.001 845.001) + (2500.001 500.001 855.001) + (2500.001 500.001 865.001) + (2500.001 500.001 875.001) + (2500.001 500.001 885.001) + (2500.001 500.001 895.001) + (2500.001 500.001 905.001) + (2500.001 500.001 915.001) + (2500.001 500.001 925.001) + (2500.001 500.001 935.001) + (2500.001 500.001 945.001) + (2500.001 500.001 955.001) + (2500.001 500.001 965.001) + (2500.001 500.001 975.001) + (2500.001 500.001 985.001) + (2500.001 500.001 995.001) + (2500.001 500.001 1005.001) + (2500.001 500.001 1015.001) + (2500.001 500.001 1025.001) + (2500.001 500.001 1035.001) + (2500.001 500.001 1045.001) + (2500.001 500.001 1055.001) + (2500.001 500.001 1065.001) + (2500.001 500.001 1075.001) + (2500.001 500.001 1085.001) + (2500.001 500.001 1095.001) + (2500.001 500.001 1105.001) + (2500.001 500.001 1115.001) + (2500.001 500.001 1125.001) + (2500.001 500.001 1135.001) + (2500.001 500.001 1145.001) + (2500.001 500.001 1155.001) + (2500.001 500.001 1165.001) + (2500.001 500.001 1175.001) + (2500.001 500.001 1185.001) + (2500.001 500.001 1195.001) + (2500.001 500.001 1205.001) + (2500.001 500.001 1215.001) + (2500.001 500.001 1225.001) + (2500.001 500.001 1235.001) + (2500.001 500.001 1245.001) + (2500.001 500.001 1255.001) + (2500.001 500.001 1265.001) + (2500.001 500.001 1275.001) + (2500.001 500.001 1285.001) + (2500.001 500.001 1295.001) + (2500.001 500.001 1305.001) + (2500.001 500.001 1315.001) + (2500.001 500.001 1325.001) + (2500.001 500.001 1335.001) + (2500.001 500.001 1345.001) + (2500.001 500.001 1355.001) + (2500.001 500.001 1365.001) + (2500.001 500.001 1375.001) + (2500.001 500.001 1385.001) + (2500.001 500.001 1395.001) + (2500.001 500.001 1405.001) + (2500.001 500.001 1415.001) + (2500.001 500.001 1425.001) + (2500.001 500.001 1435.001) + (2500.001 500.001 1445.001) + (2500.001 500.001 1455.001) + (2500.001 500.001 1465.001) + (2500.001 500.001 1475.001) + (2500.001 500.001 1485.001) + (2500.001 500.001 1495.001) + (2500.001 500.001 1505.001) + (2500.001 500.001 1515.001) + (2500.001 500.001 1525.001) + (2500.001 500.001 1535.001) + (2500.001 500.001 1545.001) + (2500.001 500.001 1555.001) + (2500.001 500.001 1565.001) + (2500.001 500.001 1575.001) + (2500.001 500.001 1585.001) + (2500.001 500.001 1595.001) + (2500.001 500.001 1605.001) + (2500.001 500.001 1615.001) + (2500.001 500.001 1625.001) + (2500.001 500.001 1635.001) + (2500.001 500.001 1645.001) + (2500.001 500.001 1655.001) + (2500.001 500.001 1665.001) + (2500.001 500.001 1675.001) + (2500.001 500.001 1685.001) + (2500.001 500.001 1695.001) + (2500.001 500.001 1705.001) + (2500.001 500.001 1715.001) + (2500.001 500.001 1725.001) + (2500.001 500.001 1735.001) + (2500.001 500.001 1745.001) + (2500.001 500.001 1755.001) + (2500.001 500.001 1765.001) + (2500.001 500.001 1775.001) + (2500.001 500.001 1785.001) + (2500.001 500.001 1795.001) + (2500.001 500.001 1805.001) + (2500.001 500.001 1815.001) + (2500.001 500.001 1825.001) + (2500.001 500.001 1835.001) + (2500.001 500.001 1845.001) + (2500.001 500.001 1855.001) + (2500.001 500.001 1865.001) + (2500.001 500.001 1875.001) + (2500.001 500.001 1885.001) + (2500.001 500.001 1895.001) + (2500.001 500.001 1905.001) + (2500.001 500.001 1915.001) + (2500.001 500.001 1925.001) + (2500.001 500.001 1935.001) + (2500.001 500.001 1945.001) + (2500.001 500.001 1955.001) + (2500.001 500.001 1965.001) + (2500.001 500.001 1975.001) + (2500.001 500.001 1985.001) + (2500.001 500.001 1995.001) + ); + } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData1S b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData1S new file mode 100755 index 000000000..5b619fadc --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData1S @@ -0,0 +1,18 @@ + probe1S + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + Rwall + qwall + ); + + probeLocations + ( + (2500.001 500.001 0.0) + ); + } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData2 b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData2 new file mode 100755 index 000000000..01dc86420 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData2 @@ -0,0 +1,223 @@ + probe2 + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + U + T + p + p_rgh + kSgs + nuSgs + RdevSgs + qSgs + ); + + probeLocations + ( + (2500.001 1500.001 5.001) + (2500.001 1500.001 15.001) + (2500.001 1500.001 25.001) + (2500.001 1500.001 35.001) + (2500.001 1500.001 45.001) + (2500.001 1500.001 55.001) + (2500.001 1500.001 65.001) + (2500.001 1500.001 75.001) + (2500.001 1500.001 85.001) + (2500.001 1500.001 95.001) + (2500.001 1500.001 105.001) + (2500.001 1500.001 115.001) + (2500.001 1500.001 125.001) + (2500.001 1500.001 135.001) + (2500.001 1500.001 145.001) + (2500.001 1500.001 155.001) + (2500.001 1500.001 165.001) + (2500.001 1500.001 175.001) + (2500.001 1500.001 185.001) + (2500.001 1500.001 195.001) + (2500.001 1500.001 205.001) + (2500.001 1500.001 215.001) + (2500.001 1500.001 225.001) + (2500.001 1500.001 235.001) + (2500.001 1500.001 245.001) + (2500.001 1500.001 255.001) + (2500.001 1500.001 265.001) + (2500.001 1500.001 275.001) + (2500.001 1500.001 285.001) + (2500.001 1500.001 295.001) + (2500.001 1500.001 305.001) + (2500.001 1500.001 315.001) + (2500.001 1500.001 325.001) + (2500.001 1500.001 335.001) + (2500.001 1500.001 345.001) + (2500.001 1500.001 355.001) + (2500.001 1500.001 365.001) + (2500.001 1500.001 375.001) + (2500.001 1500.001 385.001) + (2500.001 1500.001 395.001) + (2500.001 1500.001 405.001) + (2500.001 1500.001 415.001) + (2500.001 1500.001 425.001) + (2500.001 1500.001 435.001) + (2500.001 1500.001 445.001) + (2500.001 1500.001 455.001) + (2500.001 1500.001 465.001) + (2500.001 1500.001 475.001) + (2500.001 1500.001 485.001) + (2500.001 1500.001 495.001) + (2500.001 1500.001 505.001) + (2500.001 1500.001 515.001) + (2500.001 1500.001 525.001) + (2500.001 1500.001 535.001) + (2500.001 1500.001 545.001) + (2500.001 1500.001 555.001) + (2500.001 1500.001 565.001) + (2500.001 1500.001 575.001) + (2500.001 1500.001 585.001) + (2500.001 1500.001 595.001) + (2500.001 1500.001 605.001) + (2500.001 1500.001 615.001) + (2500.001 1500.001 625.001) + (2500.001 1500.001 635.001) + (2500.001 1500.001 645.001) + (2500.001 1500.001 655.001) + (2500.001 1500.001 665.001) + (2500.001 1500.001 675.001) + (2500.001 1500.001 685.001) + (2500.001 1500.001 695.001) + (2500.001 1500.001 705.001) + (2500.001 1500.001 715.001) + (2500.001 1500.001 725.001) + (2500.001 1500.001 735.001) + (2500.001 1500.001 745.001) + (2500.001 1500.001 755.001) + (2500.001 1500.001 765.001) + (2500.001 1500.001 775.001) + (2500.001 1500.001 785.001) + (2500.001 1500.001 795.001) + (2500.001 1500.001 805.001) + (2500.001 1500.001 815.001) + (2500.001 1500.001 825.001) + (2500.001 1500.001 835.001) + (2500.001 1500.001 845.001) + (2500.001 1500.001 855.001) + (2500.001 1500.001 865.001) + (2500.001 1500.001 875.001) + (2500.001 1500.001 885.001) + (2500.001 1500.001 895.001) + (2500.001 1500.001 905.001) + (2500.001 1500.001 915.001) + (2500.001 1500.001 925.001) + (2500.001 1500.001 935.001) + (2500.001 1500.001 945.001) + (2500.001 1500.001 955.001) + (2500.001 1500.001 965.001) + (2500.001 1500.001 975.001) + (2500.001 1500.001 985.001) + (2500.001 1500.001 995.001) + (2500.001 1500.001 1005.001) + (2500.001 1500.001 1015.001) + (2500.001 1500.001 1025.001) + (2500.001 1500.001 1035.001) + (2500.001 1500.001 1045.001) + (2500.001 1500.001 1055.001) + (2500.001 1500.001 1065.001) + (2500.001 1500.001 1075.001) + (2500.001 1500.001 1085.001) + (2500.001 1500.001 1095.001) + (2500.001 1500.001 1105.001) + (2500.001 1500.001 1115.001) + (2500.001 1500.001 1125.001) + (2500.001 1500.001 1135.001) + (2500.001 1500.001 1145.001) + (2500.001 1500.001 1155.001) + (2500.001 1500.001 1165.001) + (2500.001 1500.001 1175.001) + (2500.001 1500.001 1185.001) + (2500.001 1500.001 1195.001) + (2500.001 1500.001 1205.001) + (2500.001 1500.001 1215.001) + (2500.001 1500.001 1225.001) + (2500.001 1500.001 1235.001) + (2500.001 1500.001 1245.001) + (2500.001 1500.001 1255.001) + (2500.001 1500.001 1265.001) + (2500.001 1500.001 1275.001) + (2500.001 1500.001 1285.001) + (2500.001 1500.001 1295.001) + (2500.001 1500.001 1305.001) + (2500.001 1500.001 1315.001) + (2500.001 1500.001 1325.001) + (2500.001 1500.001 1335.001) + (2500.001 1500.001 1345.001) + (2500.001 1500.001 1355.001) + (2500.001 1500.001 1365.001) + (2500.001 1500.001 1375.001) + (2500.001 1500.001 1385.001) + (2500.001 1500.001 1395.001) + (2500.001 1500.001 1405.001) + (2500.001 1500.001 1415.001) + (2500.001 1500.001 1425.001) + (2500.001 1500.001 1435.001) + (2500.001 1500.001 1445.001) + (2500.001 1500.001 1455.001) + (2500.001 1500.001 1465.001) + (2500.001 1500.001 1475.001) + (2500.001 1500.001 1485.001) + (2500.001 1500.001 1495.001) + (2500.001 1500.001 1505.001) + (2500.001 1500.001 1515.001) + (2500.001 1500.001 1525.001) + (2500.001 1500.001 1535.001) + (2500.001 1500.001 1545.001) + (2500.001 1500.001 1555.001) + (2500.001 1500.001 1565.001) + (2500.001 1500.001 1575.001) + (2500.001 1500.001 1585.001) + (2500.001 1500.001 1595.001) + (2500.001 1500.001 1605.001) + (2500.001 1500.001 1615.001) + (2500.001 1500.001 1625.001) + (2500.001 1500.001 1635.001) + (2500.001 1500.001 1645.001) + (2500.001 1500.001 1655.001) + (2500.001 1500.001 1665.001) + (2500.001 1500.001 1675.001) + (2500.001 1500.001 1685.001) + (2500.001 1500.001 1695.001) + (2500.001 1500.001 1705.001) + (2500.001 1500.001 1715.001) + (2500.001 1500.001 1725.001) + (2500.001 1500.001 1735.001) + (2500.001 1500.001 1745.001) + (2500.001 1500.001 1755.001) + (2500.001 1500.001 1765.001) + (2500.001 1500.001 1775.001) + (2500.001 1500.001 1785.001) + (2500.001 1500.001 1795.001) + (2500.001 1500.001 1805.001) + (2500.001 1500.001 1815.001) + (2500.001 1500.001 1825.001) + (2500.001 1500.001 1835.001) + (2500.001 1500.001 1845.001) + (2500.001 1500.001 1855.001) + (2500.001 1500.001 1865.001) + (2500.001 1500.001 1875.001) + (2500.001 1500.001 1885.001) + (2500.001 1500.001 1895.001) + (2500.001 1500.001 1905.001) + (2500.001 1500.001 1915.001) + (2500.001 1500.001 1925.001) + (2500.001 1500.001 1935.001) + (2500.001 1500.001 1945.001) + (2500.001 1500.001 1955.001) + (2500.001 1500.001 1965.001) + (2500.001 1500.001 1975.001) + (2500.001 1500.001 1985.001) + (2500.001 1500.001 1995.001) + ); + } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData2S b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData2S new file mode 100755 index 000000000..7e81799a0 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData2S @@ -0,0 +1,18 @@ + probe2S + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + Rwall + qwall + ); + + probeLocations + ( + (2500.001 1500.001 0.0) + ); + } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData3 b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData3 new file mode 100755 index 000000000..2a91805b2 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData3 @@ -0,0 +1,223 @@ + probe3 + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + U + T + p + p_rgh + kSgs + nuSgs + RdevSgs + qSgs + ); + + probeLocations + ( + (2500.001 2500.001 5.001) + (2500.001 2500.001 15.001) + (2500.001 2500.001 25.001) + (2500.001 2500.001 35.001) + (2500.001 2500.001 45.001) + (2500.001 2500.001 55.001) + (2500.001 2500.001 65.001) + (2500.001 2500.001 75.001) + (2500.001 2500.001 85.001) + (2500.001 2500.001 95.001) + (2500.001 2500.001 105.001) + (2500.001 2500.001 115.001) + (2500.001 2500.001 125.001) + (2500.001 2500.001 135.001) + (2500.001 2500.001 145.001) + (2500.001 2500.001 155.001) + (2500.001 2500.001 165.001) + (2500.001 2500.001 175.001) + (2500.001 2500.001 185.001) + (2500.001 2500.001 195.001) + (2500.001 2500.001 205.001) + (2500.001 2500.001 215.001) + (2500.001 2500.001 225.001) + (2500.001 2500.001 235.001) + (2500.001 2500.001 245.001) + (2500.001 2500.001 255.001) + (2500.001 2500.001 265.001) + (2500.001 2500.001 275.001) + (2500.001 2500.001 285.001) + (2500.001 2500.001 295.001) + (2500.001 2500.001 305.001) + (2500.001 2500.001 315.001) + (2500.001 2500.001 325.001) + (2500.001 2500.001 335.001) + (2500.001 2500.001 345.001) + (2500.001 2500.001 355.001) + (2500.001 2500.001 365.001) + (2500.001 2500.001 375.001) + (2500.001 2500.001 385.001) + (2500.001 2500.001 395.001) + (2500.001 2500.001 405.001) + (2500.001 2500.001 415.001) + (2500.001 2500.001 425.001) + (2500.001 2500.001 435.001) + (2500.001 2500.001 445.001) + (2500.001 2500.001 455.001) + (2500.001 2500.001 465.001) + (2500.001 2500.001 475.001) + (2500.001 2500.001 485.001) + (2500.001 2500.001 495.001) + (2500.001 2500.001 505.001) + (2500.001 2500.001 515.001) + (2500.001 2500.001 525.001) + (2500.001 2500.001 535.001) + (2500.001 2500.001 545.001) + (2500.001 2500.001 555.001) + (2500.001 2500.001 565.001) + (2500.001 2500.001 575.001) + (2500.001 2500.001 585.001) + (2500.001 2500.001 595.001) + (2500.001 2500.001 605.001) + (2500.001 2500.001 615.001) + (2500.001 2500.001 625.001) + (2500.001 2500.001 635.001) + (2500.001 2500.001 645.001) + (2500.001 2500.001 655.001) + (2500.001 2500.001 665.001) + (2500.001 2500.001 675.001) + (2500.001 2500.001 685.001) + (2500.001 2500.001 695.001) + (2500.001 2500.001 705.001) + (2500.001 2500.001 715.001) + (2500.001 2500.001 725.001) + (2500.001 2500.001 735.001) + (2500.001 2500.001 745.001) + (2500.001 2500.001 755.001) + (2500.001 2500.001 765.001) + (2500.001 2500.001 775.001) + (2500.001 2500.001 785.001) + (2500.001 2500.001 795.001) + (2500.001 2500.001 805.001) + (2500.001 2500.001 815.001) + (2500.001 2500.001 825.001) + (2500.001 2500.001 835.001) + (2500.001 2500.001 845.001) + (2500.001 2500.001 855.001) + (2500.001 2500.001 865.001) + (2500.001 2500.001 875.001) + (2500.001 2500.001 885.001) + (2500.001 2500.001 895.001) + (2500.001 2500.001 905.001) + (2500.001 2500.001 915.001) + (2500.001 2500.001 925.001) + (2500.001 2500.001 935.001) + (2500.001 2500.001 945.001) + (2500.001 2500.001 955.001) + (2500.001 2500.001 965.001) + (2500.001 2500.001 975.001) + (2500.001 2500.001 985.001) + (2500.001 2500.001 995.001) + (2500.001 2500.001 1005.001) + (2500.001 2500.001 1015.001) + (2500.001 2500.001 1025.001) + (2500.001 2500.001 1035.001) + (2500.001 2500.001 1045.001) + (2500.001 2500.001 1055.001) + (2500.001 2500.001 1065.001) + (2500.001 2500.001 1075.001) + (2500.001 2500.001 1085.001) + (2500.001 2500.001 1095.001) + (2500.001 2500.001 1105.001) + (2500.001 2500.001 1115.001) + (2500.001 2500.001 1125.001) + (2500.001 2500.001 1135.001) + (2500.001 2500.001 1145.001) + (2500.001 2500.001 1155.001) + (2500.001 2500.001 1165.001) + (2500.001 2500.001 1175.001) + (2500.001 2500.001 1185.001) + (2500.001 2500.001 1195.001) + (2500.001 2500.001 1205.001) + (2500.001 2500.001 1215.001) + (2500.001 2500.001 1225.001) + (2500.001 2500.001 1235.001) + (2500.001 2500.001 1245.001) + (2500.001 2500.001 1255.001) + (2500.001 2500.001 1265.001) + (2500.001 2500.001 1275.001) + (2500.001 2500.001 1285.001) + (2500.001 2500.001 1295.001) + (2500.001 2500.001 1305.001) + (2500.001 2500.001 1315.001) + (2500.001 2500.001 1325.001) + (2500.001 2500.001 1335.001) + (2500.001 2500.001 1345.001) + (2500.001 2500.001 1355.001) + (2500.001 2500.001 1365.001) + (2500.001 2500.001 1375.001) + (2500.001 2500.001 1385.001) + (2500.001 2500.001 1395.001) + (2500.001 2500.001 1405.001) + (2500.001 2500.001 1415.001) + (2500.001 2500.001 1425.001) + (2500.001 2500.001 1435.001) + (2500.001 2500.001 1445.001) + (2500.001 2500.001 1455.001) + (2500.001 2500.001 1465.001) + (2500.001 2500.001 1475.001) + (2500.001 2500.001 1485.001) + (2500.001 2500.001 1495.001) + (2500.001 2500.001 1505.001) + (2500.001 2500.001 1515.001) + (2500.001 2500.001 1525.001) + (2500.001 2500.001 1535.001) + (2500.001 2500.001 1545.001) + (2500.001 2500.001 1555.001) + (2500.001 2500.001 1565.001) + (2500.001 2500.001 1575.001) + (2500.001 2500.001 1585.001) + (2500.001 2500.001 1595.001) + (2500.001 2500.001 1605.001) + (2500.001 2500.001 1615.001) + (2500.001 2500.001 1625.001) + (2500.001 2500.001 1635.001) + (2500.001 2500.001 1645.001) + (2500.001 2500.001 1655.001) + (2500.001 2500.001 1665.001) + (2500.001 2500.001 1675.001) + (2500.001 2500.001 1685.001) + (2500.001 2500.001 1695.001) + (2500.001 2500.001 1705.001) + (2500.001 2500.001 1715.001) + (2500.001 2500.001 1725.001) + (2500.001 2500.001 1735.001) + (2500.001 2500.001 1745.001) + (2500.001 2500.001 1755.001) + (2500.001 2500.001 1765.001) + (2500.001 2500.001 1775.001) + (2500.001 2500.001 1785.001) + (2500.001 2500.001 1795.001) + (2500.001 2500.001 1805.001) + (2500.001 2500.001 1815.001) + (2500.001 2500.001 1825.001) + (2500.001 2500.001 1835.001) + (2500.001 2500.001 1845.001) + (2500.001 2500.001 1855.001) + (2500.001 2500.001 1865.001) + (2500.001 2500.001 1875.001) + (2500.001 2500.001 1885.001) + (2500.001 2500.001 1895.001) + (2500.001 2500.001 1905.001) + (2500.001 2500.001 1915.001) + (2500.001 2500.001 1925.001) + (2500.001 2500.001 1935.001) + (2500.001 2500.001 1945.001) + (2500.001 2500.001 1955.001) + (2500.001 2500.001 1965.001) + (2500.001 2500.001 1975.001) + (2500.001 2500.001 1985.001) + (2500.001 2500.001 1995.001) + ); + } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData3S b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData3S new file mode 100755 index 000000000..f1da35cd9 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData3S @@ -0,0 +1,18 @@ + probe3S + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + Rwall + qwall + ); + + probeLocations + ( + (2500.001 2500.001 0.0) + ); + } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData4 b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData4 new file mode 100755 index 000000000..0bfd6b3fb --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData4 @@ -0,0 +1,223 @@ + probe4 + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + U + T + p + p_rgh + kSgs + nuSgs + RdevSgs + qSgs + ); + + probeLocations + ( + (2500.001 3500.001 5.001) + (2500.001 3500.001 15.001) + (2500.001 3500.001 25.001) + (2500.001 3500.001 35.001) + (2500.001 3500.001 45.001) + (2500.001 3500.001 55.001) + (2500.001 3500.001 65.001) + (2500.001 3500.001 75.001) + (2500.001 3500.001 85.001) + (2500.001 3500.001 95.001) + (2500.001 3500.001 105.001) + (2500.001 3500.001 115.001) + (2500.001 3500.001 125.001) + (2500.001 3500.001 135.001) + (2500.001 3500.001 145.001) + (2500.001 3500.001 155.001) + (2500.001 3500.001 165.001) + (2500.001 3500.001 175.001) + (2500.001 3500.001 185.001) + (2500.001 3500.001 195.001) + (2500.001 3500.001 205.001) + (2500.001 3500.001 215.001) + (2500.001 3500.001 225.001) + (2500.001 3500.001 235.001) + (2500.001 3500.001 245.001) + (2500.001 3500.001 255.001) + (2500.001 3500.001 265.001) + (2500.001 3500.001 275.001) + (2500.001 3500.001 285.001) + (2500.001 3500.001 295.001) + (2500.001 3500.001 305.001) + (2500.001 3500.001 315.001) + (2500.001 3500.001 325.001) + (2500.001 3500.001 335.001) + (2500.001 3500.001 345.001) + (2500.001 3500.001 355.001) + (2500.001 3500.001 365.001) + (2500.001 3500.001 375.001) + (2500.001 3500.001 385.001) + (2500.001 3500.001 395.001) + (2500.001 3500.001 405.001) + (2500.001 3500.001 415.001) + (2500.001 3500.001 425.001) + (2500.001 3500.001 435.001) + (2500.001 3500.001 445.001) + (2500.001 3500.001 455.001) + (2500.001 3500.001 465.001) + (2500.001 3500.001 475.001) + (2500.001 3500.001 485.001) + (2500.001 3500.001 495.001) + (2500.001 3500.001 505.001) + (2500.001 3500.001 515.001) + (2500.001 3500.001 525.001) + (2500.001 3500.001 535.001) + (2500.001 3500.001 545.001) + (2500.001 3500.001 555.001) + (2500.001 3500.001 565.001) + (2500.001 3500.001 575.001) + (2500.001 3500.001 585.001) + (2500.001 3500.001 595.001) + (2500.001 3500.001 605.001) + (2500.001 3500.001 615.001) + (2500.001 3500.001 625.001) + (2500.001 3500.001 635.001) + (2500.001 3500.001 645.001) + (2500.001 3500.001 655.001) + (2500.001 3500.001 665.001) + (2500.001 3500.001 675.001) + (2500.001 3500.001 685.001) + (2500.001 3500.001 695.001) + (2500.001 3500.001 705.001) + (2500.001 3500.001 715.001) + (2500.001 3500.001 725.001) + (2500.001 3500.001 735.001) + (2500.001 3500.001 745.001) + (2500.001 3500.001 755.001) + (2500.001 3500.001 765.001) + (2500.001 3500.001 775.001) + (2500.001 3500.001 785.001) + (2500.001 3500.001 795.001) + (2500.001 3500.001 805.001) + (2500.001 3500.001 815.001) + (2500.001 3500.001 825.001) + (2500.001 3500.001 835.001) + (2500.001 3500.001 845.001) + (2500.001 3500.001 855.001) + (2500.001 3500.001 865.001) + (2500.001 3500.001 875.001) + (2500.001 3500.001 885.001) + (2500.001 3500.001 895.001) + (2500.001 3500.001 905.001) + (2500.001 3500.001 915.001) + (2500.001 3500.001 925.001) + (2500.001 3500.001 935.001) + (2500.001 3500.001 945.001) + (2500.001 3500.001 955.001) + (2500.001 3500.001 965.001) + (2500.001 3500.001 975.001) + (2500.001 3500.001 985.001) + (2500.001 3500.001 995.001) + (2500.001 3500.001 1005.001) + (2500.001 3500.001 1015.001) + (2500.001 3500.001 1025.001) + (2500.001 3500.001 1035.001) + (2500.001 3500.001 1045.001) + (2500.001 3500.001 1055.001) + (2500.001 3500.001 1065.001) + (2500.001 3500.001 1075.001) + (2500.001 3500.001 1085.001) + (2500.001 3500.001 1095.001) + (2500.001 3500.001 1105.001) + (2500.001 3500.001 1115.001) + (2500.001 3500.001 1125.001) + (2500.001 3500.001 1135.001) + (2500.001 3500.001 1145.001) + (2500.001 3500.001 1155.001) + (2500.001 3500.001 1165.001) + (2500.001 3500.001 1175.001) + (2500.001 3500.001 1185.001) + (2500.001 3500.001 1195.001) + (2500.001 3500.001 1205.001) + (2500.001 3500.001 1215.001) + (2500.001 3500.001 1225.001) + (2500.001 3500.001 1235.001) + (2500.001 3500.001 1245.001) + (2500.001 3500.001 1255.001) + (2500.001 3500.001 1265.001) + (2500.001 3500.001 1275.001) + (2500.001 3500.001 1285.001) + (2500.001 3500.001 1295.001) + (2500.001 3500.001 1305.001) + (2500.001 3500.001 1315.001) + (2500.001 3500.001 1325.001) + (2500.001 3500.001 1335.001) + (2500.001 3500.001 1345.001) + (2500.001 3500.001 1355.001) + (2500.001 3500.001 1365.001) + (2500.001 3500.001 1375.001) + (2500.001 3500.001 1385.001) + (2500.001 3500.001 1395.001) + (2500.001 3500.001 1405.001) + (2500.001 3500.001 1415.001) + (2500.001 3500.001 1425.001) + (2500.001 3500.001 1435.001) + (2500.001 3500.001 1445.001) + (2500.001 3500.001 1455.001) + (2500.001 3500.001 1465.001) + (2500.001 3500.001 1475.001) + (2500.001 3500.001 1485.001) + (2500.001 3500.001 1495.001) + (2500.001 3500.001 1505.001) + (2500.001 3500.001 1515.001) + (2500.001 3500.001 1525.001) + (2500.001 3500.001 1535.001) + (2500.001 3500.001 1545.001) + (2500.001 3500.001 1555.001) + (2500.001 3500.001 1565.001) + (2500.001 3500.001 1575.001) + (2500.001 3500.001 1585.001) + (2500.001 3500.001 1595.001) + (2500.001 3500.001 1605.001) + (2500.001 3500.001 1615.001) + (2500.001 3500.001 1625.001) + (2500.001 3500.001 1635.001) + (2500.001 3500.001 1645.001) + (2500.001 3500.001 1655.001) + (2500.001 3500.001 1665.001) + (2500.001 3500.001 1675.001) + (2500.001 3500.001 1685.001) + (2500.001 3500.001 1695.001) + (2500.001 3500.001 1705.001) + (2500.001 3500.001 1715.001) + (2500.001 3500.001 1725.001) + (2500.001 3500.001 1735.001) + (2500.001 3500.001 1745.001) + (2500.001 3500.001 1755.001) + (2500.001 3500.001 1765.001) + (2500.001 3500.001 1775.001) + (2500.001 3500.001 1785.001) + (2500.001 3500.001 1795.001) + (2500.001 3500.001 1805.001) + (2500.001 3500.001 1815.001) + (2500.001 3500.001 1825.001) + (2500.001 3500.001 1835.001) + (2500.001 3500.001 1845.001) + (2500.001 3500.001 1855.001) + (2500.001 3500.001 1865.001) + (2500.001 3500.001 1875.001) + (2500.001 3500.001 1885.001) + (2500.001 3500.001 1895.001) + (2500.001 3500.001 1905.001) + (2500.001 3500.001 1915.001) + (2500.001 3500.001 1925.001) + (2500.001 3500.001 1935.001) + (2500.001 3500.001 1945.001) + (2500.001 3500.001 1955.001) + (2500.001 3500.001 1965.001) + (2500.001 3500.001 1975.001) + (2500.001 3500.001 1985.001) + (2500.001 3500.001 1995.001) + ); + } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData4S b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData4S new file mode 100755 index 000000000..470fc9f28 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData4S @@ -0,0 +1,18 @@ + probe4S + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + Rwall + qwall + ); + + probeLocations + ( + (2500.001 3500.001 0.0) + ); + } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData5 b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData5 new file mode 100755 index 000000000..eac0bc00c --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData5 @@ -0,0 +1,223 @@ + probe5 + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + U + T + p + p_rgh + kSgs + nuSgs + RdevSgs + qSgs + ); + + probeLocations + ( + (2500.001 4500.001 5.001) + (2500.001 4500.001 15.001) + (2500.001 4500.001 25.001) + (2500.001 4500.001 35.001) + (2500.001 4500.001 45.001) + (2500.001 4500.001 55.001) + (2500.001 4500.001 65.001) + (2500.001 4500.001 75.001) + (2500.001 4500.001 85.001) + (2500.001 4500.001 95.001) + (2500.001 4500.001 105.001) + (2500.001 4500.001 115.001) + (2500.001 4500.001 125.001) + (2500.001 4500.001 135.001) + (2500.001 4500.001 145.001) + (2500.001 4500.001 155.001) + (2500.001 4500.001 165.001) + (2500.001 4500.001 175.001) + (2500.001 4500.001 185.001) + (2500.001 4500.001 195.001) + (2500.001 4500.001 205.001) + (2500.001 4500.001 215.001) + (2500.001 4500.001 225.001) + (2500.001 4500.001 235.001) + (2500.001 4500.001 245.001) + (2500.001 4500.001 255.001) + (2500.001 4500.001 265.001) + (2500.001 4500.001 275.001) + (2500.001 4500.001 285.001) + (2500.001 4500.001 295.001) + (2500.001 4500.001 305.001) + (2500.001 4500.001 315.001) + (2500.001 4500.001 325.001) + (2500.001 4500.001 335.001) + (2500.001 4500.001 345.001) + (2500.001 4500.001 355.001) + (2500.001 4500.001 365.001) + (2500.001 4500.001 375.001) + (2500.001 4500.001 385.001) + (2500.001 4500.001 395.001) + (2500.001 4500.001 405.001) + (2500.001 4500.001 415.001) + (2500.001 4500.001 425.001) + (2500.001 4500.001 435.001) + (2500.001 4500.001 445.001) + (2500.001 4500.001 455.001) + (2500.001 4500.001 465.001) + (2500.001 4500.001 475.001) + (2500.001 4500.001 485.001) + (2500.001 4500.001 495.001) + (2500.001 4500.001 505.001) + (2500.001 4500.001 515.001) + (2500.001 4500.001 525.001) + (2500.001 4500.001 535.001) + (2500.001 4500.001 545.001) + (2500.001 4500.001 555.001) + (2500.001 4500.001 565.001) + (2500.001 4500.001 575.001) + (2500.001 4500.001 585.001) + (2500.001 4500.001 595.001) + (2500.001 4500.001 605.001) + (2500.001 4500.001 615.001) + (2500.001 4500.001 625.001) + (2500.001 4500.001 635.001) + (2500.001 4500.001 645.001) + (2500.001 4500.001 655.001) + (2500.001 4500.001 665.001) + (2500.001 4500.001 675.001) + (2500.001 4500.001 685.001) + (2500.001 4500.001 695.001) + (2500.001 4500.001 705.001) + (2500.001 4500.001 715.001) + (2500.001 4500.001 725.001) + (2500.001 4500.001 735.001) + (2500.001 4500.001 745.001) + (2500.001 4500.001 755.001) + (2500.001 4500.001 765.001) + (2500.001 4500.001 775.001) + (2500.001 4500.001 785.001) + (2500.001 4500.001 795.001) + (2500.001 4500.001 805.001) + (2500.001 4500.001 815.001) + (2500.001 4500.001 825.001) + (2500.001 4500.001 835.001) + (2500.001 4500.001 845.001) + (2500.001 4500.001 855.001) + (2500.001 4500.001 865.001) + (2500.001 4500.001 875.001) + (2500.001 4500.001 885.001) + (2500.001 4500.001 895.001) + (2500.001 4500.001 905.001) + (2500.001 4500.001 915.001) + (2500.001 4500.001 925.001) + (2500.001 4500.001 935.001) + (2500.001 4500.001 945.001) + (2500.001 4500.001 955.001) + (2500.001 4500.001 965.001) + (2500.001 4500.001 975.001) + (2500.001 4500.001 985.001) + (2500.001 4500.001 995.001) + (2500.001 4500.001 1005.001) + (2500.001 4500.001 1015.001) + (2500.001 4500.001 1025.001) + (2500.001 4500.001 1035.001) + (2500.001 4500.001 1045.001) + (2500.001 4500.001 1055.001) + (2500.001 4500.001 1065.001) + (2500.001 4500.001 1075.001) + (2500.001 4500.001 1085.001) + (2500.001 4500.001 1095.001) + (2500.001 4500.001 1105.001) + (2500.001 4500.001 1115.001) + (2500.001 4500.001 1125.001) + (2500.001 4500.001 1135.001) + (2500.001 4500.001 1145.001) + (2500.001 4500.001 1155.001) + (2500.001 4500.001 1165.001) + (2500.001 4500.001 1175.001) + (2500.001 4500.001 1185.001) + (2500.001 4500.001 1195.001) + (2500.001 4500.001 1205.001) + (2500.001 4500.001 1215.001) + (2500.001 4500.001 1225.001) + (2500.001 4500.001 1235.001) + (2500.001 4500.001 1245.001) + (2500.001 4500.001 1255.001) + (2500.001 4500.001 1265.001) + (2500.001 4500.001 1275.001) + (2500.001 4500.001 1285.001) + (2500.001 4500.001 1295.001) + (2500.001 4500.001 1305.001) + (2500.001 4500.001 1315.001) + (2500.001 4500.001 1325.001) + (2500.001 4500.001 1335.001) + (2500.001 4500.001 1345.001) + (2500.001 4500.001 1355.001) + (2500.001 4500.001 1365.001) + (2500.001 4500.001 1375.001) + (2500.001 4500.001 1385.001) + (2500.001 4500.001 1395.001) + (2500.001 4500.001 1405.001) + (2500.001 4500.001 1415.001) + (2500.001 4500.001 1425.001) + (2500.001 4500.001 1435.001) + (2500.001 4500.001 1445.001) + (2500.001 4500.001 1455.001) + (2500.001 4500.001 1465.001) + (2500.001 4500.001 1475.001) + (2500.001 4500.001 1485.001) + (2500.001 4500.001 1495.001) + (2500.001 4500.001 1505.001) + (2500.001 4500.001 1515.001) + (2500.001 4500.001 1525.001) + (2500.001 4500.001 1535.001) + (2500.001 4500.001 1545.001) + (2500.001 4500.001 1555.001) + (2500.001 4500.001 1565.001) + (2500.001 4500.001 1575.001) + (2500.001 4500.001 1585.001) + (2500.001 4500.001 1595.001) + (2500.001 4500.001 1605.001) + (2500.001 4500.001 1615.001) + (2500.001 4500.001 1625.001) + (2500.001 4500.001 1635.001) + (2500.001 4500.001 1645.001) + (2500.001 4500.001 1655.001) + (2500.001 4500.001 1665.001) + (2500.001 4500.001 1675.001) + (2500.001 4500.001 1685.001) + (2500.001 4500.001 1695.001) + (2500.001 4500.001 1705.001) + (2500.001 4500.001 1715.001) + (2500.001 4500.001 1725.001) + (2500.001 4500.001 1735.001) + (2500.001 4500.001 1745.001) + (2500.001 4500.001 1755.001) + (2500.001 4500.001 1765.001) + (2500.001 4500.001 1775.001) + (2500.001 4500.001 1785.001) + (2500.001 4500.001 1795.001) + (2500.001 4500.001 1805.001) + (2500.001 4500.001 1815.001) + (2500.001 4500.001 1825.001) + (2500.001 4500.001 1835.001) + (2500.001 4500.001 1845.001) + (2500.001 4500.001 1855.001) + (2500.001 4500.001 1865.001) + (2500.001 4500.001 1875.001) + (2500.001 4500.001 1885.001) + (2500.001 4500.001 1895.001) + (2500.001 4500.001 1905.001) + (2500.001 4500.001 1915.001) + (2500.001 4500.001 1925.001) + (2500.001 4500.001 1935.001) + (2500.001 4500.001 1945.001) + (2500.001 4500.001 1955.001) + (2500.001 4500.001 1965.001) + (2500.001 4500.001 1975.001) + (2500.001 4500.001 1985.001) + (2500.001 4500.001 1995.001) + ); + } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData5S b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData5S new file mode 100755 index 000000000..5933c36f2 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData5S @@ -0,0 +1,18 @@ + probe5S + { + type probes; + functionObjectLibs ("libsampling.so"); + name probe1; + outputControl timeStep; + outputInterval 1; + fields + ( + Rwall + qwall + ); + + probeLocations + ( + (2500.001 4500.001 0.0) + ); + } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/sliceDataInstantaneous b/exampleCases/example.ADM.ssc.zeromq/system/sampling/sliceDataInstantaneous new file mode 100755 index 000000000..59199fc39 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/sampling/sliceDataInstantaneous @@ -0,0 +1,53 @@ + sliceDataInstantaneous + { + type surfaces; + functionObjectLibs ("libsampling.so"); + enabled true; + interpolationScheme cell; + outputControl adjustableTime; + writeInterval 60; + surfaceFormat vtk; + fields + ( + U + T + ); + surfaces + ( + slice_horizontal_1 + { + type plane; + basePoint (1500.01 1500.01 20.01); + normalVector (0 0 1); + triangulate false; + } + slice_horizontal_2 + { + type plane; + basePoint (1500.01 1500.01 80.01); + normalVector (0 0 1); + triangulate false; + } + slice_horizontal_3 + { + type plane; + basePoint (1500.01 1500.01 200.01); + normalVector (0 0 1); + triangulate false; + } + slice_cross_stream + { + type plane; + basePoint (1500.01 1500.01 84.0); + normalVector (0 1 0); + triangulate false; + } + slice_streamwise + { + type plane; + basePoint (1500.01 1500.01 84.0); + normalVector (1 0 0); + triangulate false; + } + ); + } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/setFieldsABLDict b/exampleCases/example.ADM.ssc.zeromq/system/setFieldsABLDict new file mode 100755 index 000000000..dacc350ce --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/setFieldsABLDict @@ -0,0 +1,504 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + + root ""; + case ""; + instance ""; + local ""; + + class dictionary; + object setFieldsABLDict; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +// Extents of the domain. +xMin $xMin; +yMin $yMin; +zMin $zMin; + +xMax $xMax; +yMax $yMax; +zMax $zMax; + +zRef $zMax; + +// Specify if distance from wall should be used as z. +useWallDistZ false; +scaleVelocityWithHeight false; + + +// Specify how to initialze the base velocity and temperature profile. +//velocityInitType "table"; +//velocityInitType "log"; +velocityInitType "geostrophic"; +//temperatureInitType "table"; +temperatureInitType "simple"; + +// Maximum perturbation of streamwise/spanwise flow near surface. +deltaU 0.25; +deltaV 0.25; + +// Total periods of perturbations in streamwise/spanwise in the domain. +Uperiods 12.0; +Vperiods 12.0; + +// Percentage of domain height (zMax) where peak in perturbation +// magnitude occurs. +zPeak 0.015; + +// Initial height of the center of the capping inversion. +zInversion $zInversion; + +// Width of the capping inversion. +widthInversion $inversionWidth; + +// Potential temperature at the bottom and top of the capping inversion. +Tbottom $TBottom; +Ttop $TTop; + +// Maximum temperature fluctuation size below capping inversion. +TPrimeScale 0.0; + +// Height rate of change of potential temperature above the inversion. +dTdz $TGradUpper; + +// Geostrophic wind speed magnitude. +Ug $U0Mag; + +// Geostrophic wind speed direction. +UgDir $dir; + +// Aerodynamic roughness height of surface. +z0 $z0; + +// von Karman constant. +kappa $kappa; + +// Vertical profile table. +profileTable +( +// z U V T + (0.0 0.0 0.0 273.121917725) + (5.0 1.82671529027 1.98969371553 282.524156211) + (10.0 2.52983624172 2.77228242751 283.156504284) + (15.0 3.01282071998 3.35521702288 283.64108812) + (20.0 3.35996148006 3.78823607698 284.090761147) + (25.0 3.8038057643 4.37960852586 284.554077196) + (30.0 4.03596125279 4.70538923119 284.966777157) + (35.0 4.38133296535 5.23253766126 285.360167677) + (40.0 4.56992779673 5.53523659867 285.747101612) + (45.0 4.80994398595 5.96180841679 286.095879197) + (50.0 5.00816921409 6.32774876853 286.444585293) + (55.0 5.14154903327 6.60160807137 286.787914506) + (60.0 5.36818530188 7.08896005703 287.063199891) + (65.0 5.44703987742 7.27484159809 287.379906732) + (70.0 5.57604433164 7.60608624795 287.638417176) + (75.0 5.72370142776 7.99632935101 287.863981004) + (80.0 5.77619905069 8.15139018101 288.127106742) + (85.0 5.87149793296 8.46369430537 288.331005696) + (90.0 5.98111916718 8.83268873958 288.509035882) + (95.0 6.01697152506 8.97407895539 288.724664101) + (100.0 6.06967854005 9.19927028309 288.909565287) + (105.0 6.1450628792 9.53721293929 289.053124377) + (110.0 6.19167607924 9.76288104253 289.198531813) + (115.0 6.22489630605 9.93628531022 289.344799656) + (120.0 6.27421288656 10.216282683 289.462005) + (125.0 6.32645248876 10.5156368594 289.57393273) + (130.0 6.34668810144 10.6457361726 289.712125634) + (135.0 6.36434613795 10.762203832 289.852433913) + (140.0 6.39842793739 11.0196195883 289.95191863) + (145.0 6.4342454375 11.2919310606 290.047089019) + (150.0 6.45180421766 11.4367005351 290.150649381) + (155.0 6.46406875681 11.544488333 290.256642472) + (160.0 6.48170756073 11.7056278368 290.348224267) + (165.0 6.50382814701 11.9112591447 290.427787992) + (170.0 6.52550956366 12.1127414485 290.506470121) + (175.0 6.54550549533 12.298300329 290.581768788) + (180.0 6.56550142701 12.4838592096 290.657067454) + (185.0 6.58511534034 12.6567515091 290.735008491) + (190.0 6.6045979288 12.8252894701 290.813857884) + (195.0 6.62432001649 12.9896812983 290.892328604) + (200.0 6.64532587961 13.1318488244 290.968769537) + (205.0 6.66633174272 13.2740163505 291.045210471) + (210.0 6.69104111181 13.4098514016 291.117435921) + (215.0 6.72036475996 13.5377966838 291.184409209) + (220.0 6.74968840812 13.6657419659 291.251382497) + (225.0 6.77805691412 13.7640369251 291.318657013) + (230.0 6.80578882059 13.8425700289 291.386132296) + (235.0 6.83352072706 13.9211031327 291.453607578) + (240.0 6.86307156947 13.9862481909 291.518273832) + (245.0 6.89380511232 14.0426881336 291.581113612) + (250.0 6.92453865516 14.0991280764 291.643953391) + (255.0 6.95361693104 14.1462680315 291.704700258) + (260.0 6.98077095142 14.1825967081 291.763014104) + (265.0 7.0079249718 14.2189253847 291.82132795) + (270.0 7.03507703408 14.2541299666 291.879606535) + (275.0 7.0622194383 14.283790106 291.937711201) + (280.0 7.08936184253 14.3134502454 291.995815867) + (285.0 7.11650424675 14.3431103848 292.053920533) + (290.0 7.1430391081 14.369131837 292.11328027) + (295.0 7.16932392788 14.3936557439 292.173156546) + (300.0 7.19560874767 14.4181796507 292.233032822) + (305.0 7.22180906756 14.4424461024 292.292838021) + (310.0 7.24680913749 14.4630556198 292.351633627) + (315.0 7.27180920741 14.4836651372 292.410429232) + (320.0 7.29680927734 14.5042746546 292.469224837) + (325.0 7.32153609499 14.5243042572 292.528664796) + (330.0 7.34543057757 14.5425674214 292.590067475) + (335.0 7.36932506015 14.5608305855 292.651470155) + (340.0 7.39321954273 14.5790937496 292.712872834) + (345.0 7.41696733387 14.597025575 292.773542958) + (350.0 7.44026003553 14.6139294685 292.831940429) + (355.0 7.46355273718 14.6308333621 292.890337899) + (360.0 7.48684543884 14.6477372556 292.94873537) + (365.0 7.51013186129 14.6646271523 293.007149353) + (370.0 7.53322339247 14.68108262 293.066075821) + (375.0 7.55631492366 14.6975380877 293.12500229) + (380.0 7.57940645484 14.7139935554 293.183928758) + (385.0 7.60249798603 14.7304490231 293.242855226) + (390.0 7.6257582057 14.7463924565 293.301506178) + (395.0 7.64912373233 14.7620162427 293.359985132) + (400.0 7.67248925896 14.7776400289 293.418464087) + (405.0 7.69585478559 14.7932638151 293.476943042) + (410.0 7.71922031222 14.8088876013 293.535421996) + (415.0 7.74300228036 14.8230663689 293.592791002) + (420.0 7.7667927399 14.8372156721 293.650137374) + (425.0 7.79058319945 14.8513649753 293.707483747) + (430.0 7.81437365899 14.8655142784 293.76483012) + (435.0 7.83815083397 14.8793492717 293.821767406) + (440.0 7.86181714661 14.8905612872 293.875290779) + (445.0 7.88548345926 14.9017733027 293.928814153) + (450.0 7.9091497719 14.9129853182 293.982337526) + (455.0 7.93281608455 14.9241973336 294.035860899) + (460.0 7.95648239719 14.9354093491 294.089384273) + (465.0 7.97905964048 14.9423301431 294.14128451) + (470.0 8.0016312311 14.9492286641 294.193176323) + (475.0 8.02420282171 14.956127185 294.245068135) + (480.0 8.04677441233 14.9630257059 294.296959948) + (485.0 8.06934600294 14.9699242269 294.34885176) + (490.0 8.0912068028 14.9742300558 294.40025773) + (495.0 8.11235909886 14.9759515346 294.45117942) + (500.0 8.13351139492 14.9776730134 294.502101111) + (505.0 8.15466369098 14.9793944922 294.553022801) + (510.0 8.17581598704 14.981115971 294.603944491) + (515.0 8.19696828309 14.9828374498 294.654866181) + (520.0 8.21724149816 14.9808198644 294.704354156) + (525.0 8.2364694612 14.9743564264 294.752137402) + (530.0 8.25569742424 14.9678929884 294.799920649) + (535.0 8.27492538727 14.9614295505 294.847703896) + (540.0 8.29415335031 14.9549661125 294.895487143) + (545.0 8.31338131334 14.9485026745 294.943270389) + (550.0 8.33260927638 14.9420392365 294.991053636) + (555.0 8.35050488468 14.9266129312 295.036341098) + (560.0 8.36808840645 14.9090871924 295.081043956) + (565.0 8.38567192822 14.8915614535 295.125746813) + (570.0 8.40325544999 14.8740357147 295.170449671) + (575.0 8.42083897176 14.8565099758 295.215152528) + (580.0 8.43842249352 14.838984237 295.259855386) + (585.0 8.45600601529 14.8214584982 295.304558243) + (590.0 8.47264685758 14.7968218302 295.348171206) + (595.0 8.48834031368 14.765038729 295.390688832) + (600.0 8.50403376979 14.7332556278 295.433206459) + (605.0 8.51972722589 14.7014725265 295.475724085) + (610.0 8.53542068199 14.6696894253 295.518241712) + (615.0 8.55111413809 14.6379063241 295.560759338) + (620.0 8.56680759419 14.6061232229 295.603276965) + (625.0 8.5825010503 14.5743401216 295.645794591) + (630.0 8.59715715424 14.5346556613 295.689519112) + (635.0 8.61058749747 14.4856347615 295.734669729) + (640.0 8.62401784069 14.4366138617 295.779820347) + (645.0 8.63744818391 14.3875929619 295.824970964) + (650.0 8.65087852713 14.338572062 295.870121581) + (655.0 8.66430887036 14.2895511622 295.915272198) + (660.0 8.67773921358 14.2405302624 295.960422815) + (665.0 8.6911695568 14.1915093626 296.005573433) + (670.0 8.70459990003 14.1424884628 296.05072405) + (675.0 8.71498597608 14.0837507537 296.096336227) + (680.0 8.72352399234 14.0191143362 296.142228601) + (685.0 8.7320620086 13.9544779188 296.188120975) + (690.0 8.74060002486 13.8898415013 296.234013348) + (695.0 8.74913804112 13.8252050838 296.279905722) + (700.0 8.75767605739 13.7605686663 296.325798096) + (705.0 8.76621407365 13.6959322489 296.371690469) + (710.0 8.77475208991 13.6312958314 296.417582843) + (715.0 8.78329010617 13.5666594139 296.463475217) + (720.0 8.79182812243 13.5020229965 296.50936759) + (725.0 8.79189547444 13.4277463368 296.562527014) + (730.0 8.79098910472 13.3523615098 296.616521801) + (735.0 8.79008273499 13.2769766828 296.670516587) + (740.0 8.78917636527 13.2015918559 296.724511374) + (745.0 8.78826999555 13.1262070289 296.778506161) + (750.0 8.78736362582 13.0508222019 296.832500948) + (755.0 8.7864572561 12.9754373749 296.886495735) + (760.0 8.78555088638 12.9000525479 296.940490522) + (765.0 8.78464451665 12.824667721 296.994485308) + (770.0 8.78373814693 12.749282894 297.048480095) + (775.0 8.78092431283 12.6731698157 297.101321687) + (780.0 8.77050848097 12.594154369 297.149567342) + (785.0 8.76009264911 12.5151389222 297.197812997) + (790.0 8.74967681725 12.4361234755 297.246058652) + (795.0 8.73926098539 12.3571080288 297.294304307) + (800.0 8.72884515353 12.278092582 297.342549962) + (805.0 8.71842932167 12.1990771353 297.390795617) + (810.0 8.70801348981 12.1200616885 297.439041272) + (815.0 8.69759765795 12.0410462418 297.487286927) + (820.0 8.68718182609 11.9620307951 297.535532582) + (825.0 8.67676599423 11.8830153483 297.583778237) + (830.0 8.66635016237 11.8039999016 297.632023892) + (835.0 8.65380285705 11.7267327361 297.688031136) + (840.0 8.63847548104 11.6517458454 297.754161782) + (845.0 8.62314810503 11.5767589547 297.820292429) + (850.0 8.60782072902 11.5017720641 297.886423076) + (855.0 8.59249335301 11.4267851734 297.952553722) + (860.0 8.57716597701 11.3517982828 298.018684369) + (865.0 8.561838601 11.2768113921 298.084815016) + (870.0 8.54651122499 11.2018245015 298.150945663) + (875.0 8.53118384898 11.1268376108 298.217076309) + (880.0 8.51585647297 11.0518507201 298.283206956) + (885.0 8.50052909696 10.9768638295 298.349337603) + (890.0 8.48520172096 10.9018769388 298.41546825) + (895.0 8.46987434495 10.8268900482 298.481598896) + (900.0 8.45883220551 10.7541011047 298.547345535) + (905.0 8.45238242046 10.6836676328 298.612680644) + (910.0 8.44593263542 10.6132341608 298.678015753) + (915.0 8.43948285037 10.5428006888 298.743350863) + (920.0 8.43303306533 10.4723672168 298.808685972) + (925.0 8.42658328028 10.4019337449 298.874021081) + (930.0 8.42013349524 10.3315002729 298.93935619) + (935.0 8.41368371019 10.2610668009 299.004691299) + (940.0 8.40723392515 10.190633329 299.070026409) + (945.0 8.4007841401 10.120199857 299.135361518) + (950.0 8.39433435506 10.049766385 299.200696627) + (955.0 8.38788457001 9.97933291304 299.266031736) + (960.0 8.38143478497 9.90889944107 299.331366845) + (965.0 8.37498499992 9.8384659691 299.396701955) + (970.0 8.37175628862 9.76984547069 299.458148741) + (975.0 8.3787220489 9.70696290595 299.507289259) + (980.0 8.38568780918 9.64408034121 299.556429777) + (985.0 8.39265356946 9.58119777647 299.605570296) + (990.0 8.39961932974 9.51831521173 299.654710814) + (995.0 8.40658509002 9.45543264699 299.703851332) + (1000.0 8.4135508503 9.39255008225 299.752991851) + (1005.0 8.42051661058 9.32966751751 299.802132369) + (1010.0 8.42748237086 9.26678495277 299.851272887) + (1015.0 8.43444813113 9.20390238803 299.900413405) + (1020.0 8.44141389141 9.14101982329 299.949553924) + (1025.0 8.44837965169 9.07813725854 299.998694442) + (1030.0 8.45534541197 9.0152546938 300.04783496) + (1035.0 8.46231117225 8.95237212906 300.096975478) + (1040.0 8.46927693253 8.88948956432 300.146115997) + (1045.0 8.47624269281 8.82660699958 300.195256515) + (1050.0 8.48495783258 8.77319458603 300.238852282) + (1055.0 8.49495774699 8.72673721576 300.278375887) + (1060.0 8.5049576614 8.6802798455 300.317899492) + (1065.0 8.51495757581 8.63382247523 300.357423097) + (1070.0 8.52495749023 8.58736510496 300.396946702) + (1075.0 8.53495740464 8.5409077347 300.436470307) + (1080.0 8.54495731905 8.49445036443 300.475993912) + (1085.0 8.55495723346 8.44799299416 300.515517517) + (1090.0 8.56495714787 8.4015356239 300.555041122) + (1095.0 8.57495706228 8.35507825363 300.594564727) + (1100.0 8.58495697669 8.30862088336 300.634088332) + (1105.0 8.5949568911 8.2621635131 300.673611937) + (1110.0 8.60495680552 8.21570614283 300.713135542) + (1115.0 8.61495671993 8.16924877256 300.752659147) + (1120.0 8.62495663434 8.1227914023 300.792182752) + (1125.0 8.63495654875 8.07633403203 300.831706357) + (1130.0 8.64495646316 8.02987666176 300.871229962) + (1135.0 8.65360052964 7.98996489564 300.907704255) + (1140.0 8.65972902324 7.96219751809 300.938521005) + (1145.0 8.66585751685 7.93443014055 300.969337756) + (1150.0 8.67198601045 7.906662763 301.000154506) + (1155.0 8.67811450406 7.87889538546 301.030971256) + (1160.0 8.68424299766 7.85112800791 301.061788006) + (1165.0 8.69037149126 7.82336063037 301.092604757) + (1170.0 8.69649998487 7.79559325282 301.123421507) + (1175.0 8.70262847847 7.76782587527 301.154238257) + (1180.0 8.70875697208 7.74005849773 301.185055007) + (1185.0 8.71488546568 7.71229112018 301.215871758) + (1190.0 8.72101395929 7.68452374264 301.246688508) + (1195.0 8.72714245289 7.65675636509 301.277505258) + (1200.0 8.7332709465 7.62898898755 301.308322009) + (1205.0 8.7393994401 7.60122161 301.339138759) + (1210.0 8.74552793371 7.57345423246 301.369955509) + (1215.0 8.75165642731 7.54568685491 301.400772259) + (1220.0 8.75778492092 7.51791947737 301.43158901) + (1225.0 8.76391341452 7.49015209982 301.46240576) + (1230.0 8.76818252215 7.46990516883 301.489568668) + (1235.0 8.76988179508 7.46005215541 301.511681645) + (1240.0 8.771581068 7.45019914198 301.533794623) + (1245.0 8.77328034093 7.44034612856 301.5559076) + (1250.0 8.77497961385 7.43049311513 301.578020578) + (1255.0 8.77667888677 7.42064010171 301.600133555) + (1260.0 8.7783781597 7.41078708828 301.622246532) + (1265.0 8.78007743262 7.40093407485 301.64435951) + (1270.0 8.78177670555 7.39108106143 301.666472487) + (1275.0 8.78347597847 7.381228048 301.688585464) + (1280.0 8.7851752514 7.37137503458 301.710698442) + (1285.0 8.78687452432 7.36152202115 301.732811419) + (1290.0 8.78857379725 7.35166900773 301.754924397) + (1295.0 8.79027307017 7.3418159943 301.777037374) + (1300.0 8.7919723431 7.33196298088 301.799150351) + (1305.0 8.79367161602 7.32210996745 301.821263329) + (1310.0 8.79537088895 7.31225695402 301.843376306) + (1315.0 8.79707016187 7.3024039406 301.865489283) + (1320.0 8.79876943479 7.29255092717 301.887602261) + (1325.0 8.80046870772 7.28269791375 301.909715238) + (1330.0 8.80216798064 7.27284490032 301.931828216) + (1335.0 8.80345002487 7.27037429336 301.950702634) + (1340.0 8.80449597234 7.27208116099 301.967744453) + (1345.0 8.8055419198 7.27378802862 301.984786271) + (1350.0 8.80658786727 7.27549489624 302.00182809) + (1355.0 8.80763381473 7.27720176387 302.018869908) + (1360.0 8.8086797622 7.2789086315 302.035911727) + (1365.0 8.80972570966 7.28061549913 302.052953545) + (1370.0 8.81077165713 7.28232236676 302.069995364) + (1375.0 8.81181760459 7.28402923439 302.087037182) + (1380.0 8.81286355206 7.28573610202 302.104079001) + (1385.0 8.81390949952 7.28744296965 302.121120819) + (1390.0 8.81495544699 7.28914983727 302.138162638) + (1395.0 8.81600139445 7.2908567049 302.155204456) + (1400.0 8.81704734192 7.29256357253 302.172246275) + (1405.0 8.81809328938 7.29427044016 302.189288094) + (1410.0 8.81913923685 7.29597730779 302.206329912) + (1415.0 8.82018518431 7.29768417542 302.223371731) + (1420.0 8.82123113178 7.29939104305 302.240413549) + (1425.0 8.82227707924 7.30109791068 302.257455368) + (1430.0 8.82332302671 7.30280477831 302.274497186) + (1435.0 8.82436897417 7.30451164593 302.291539005) + (1440.0 8.82541492164 7.30621851356 302.308580823) + (1445.0 8.8264608691 7.30792538119 302.325622642) + (1450.0 8.82980499965 7.31411337437 302.342200633) + (1455.0 8.83363827328 7.32125512601 302.358679903) + (1460.0 8.83747154691 7.32839687764 302.375159173) + (1465.0 8.84130482054 7.33553862927 302.391638443) + (1470.0 8.84513809417 7.34268038091 302.408117713) + (1475.0 8.8489713678 7.34982213254 302.424596984) + (1480.0 8.85280464143 7.35696388418 302.441076254) + (1485.0 8.85663791506 7.36410563581 302.457555524) + (1490.0 8.86047118869 7.37124738745 302.474034794) + (1495.0 8.86430446231 7.37838913908 302.490514064) + (1500.0 8.86813773594 7.38553089071 302.506993334) + (1505.0 8.87197100957 7.39267264235 302.523472605) + (1510.0 8.8758042832 7.39981439398 302.539951875) + (1515.0 8.87963755683 7.40695614562 302.556431145) + (1520.0 8.88347083046 7.41409789725 302.572910415) + (1525.0 8.88730410409 7.42123964888 302.589389685) + (1530.0 8.89113737772 7.42838140052 302.605868955) + (1535.0 8.89497065135 7.43552315215 302.622348226) + (1540.0 8.89880392498 7.44266490379 302.638827496) + (1545.0 8.90263719861 7.44980665542 302.655306766) + (1550.0 8.90647047224 7.45694840705 302.671786036) + (1555.0 8.91030374586 7.46409015869 302.688265306) + (1560.0 8.91413701949 7.47123191032 302.704744577) + (1565.0 8.91797029312 7.47837366196 302.721223847) + (1570.0 8.92180356675 7.48551541359 302.737703117) + (1575.0 8.92995697971 7.48958529161 302.756743245) + (1580.0 8.93926578965 7.49283361431 302.77646826) + (1585.0 8.94857459959 7.496081937 302.796193275) + (1590.0 8.95788340953 7.49933025969 302.81591829) + (1595.0 8.96719221947 7.50257858238 302.835643305) + (1600.0 8.97650102941 7.50582690508 302.85536832) + (1605.0 8.98580983935 7.50907522777 302.875093335) + (1610.0 8.9951186493 7.51232355046 302.89481835) + (1615.0 9.00442745924 7.51557187315 302.914543365) + (1620.0 9.01373626918 7.51882019585 302.93426838) + (1625.0 9.02304507912 7.52206851854 302.953993395) + (1630.0 9.03235388906 7.52531684123 302.973718411) + (1635.0 9.041662699 7.52856516392 302.993443426) + (1640.0 9.05097150894 7.53181348662 303.013168441) + (1645.0 9.06028031888 7.53506180931 303.032893456) + (1650.0 9.06958912882 7.538310132 303.052618471) + (1655.0 9.07889793876 7.5415584547 303.072343486) + (1660.0 9.0882067487 7.54480677739 303.092068501) + (1665.0 9.09751555864 7.54805510008 303.111793516) + (1670.0 9.10682436858 7.55130342277 303.131518531) + (1675.0 9.11613317852 7.55455174547 303.151243546) + (1680.0 9.12544198846 7.55780006816 303.170968561) + (1685.0 9.1347507984 7.56104839085 303.190693576) + (1690.0 9.14405960834 7.56429671354 303.210418591) + (1695.0 9.15336841829 7.56754503624 303.230143606) + (1700.0 9.16267722823 7.57079335893 303.249868621) + (1705.0 9.17198603817 7.57404168162 303.269593636) + (1710.0 9.18349377603 7.57239347669 303.290540127) + (1715.0 9.19922226437 7.56134659115 303.31383119) + (1720.0 9.2149507527 7.55029970561 303.337122252) + (1725.0 9.23067924103 7.53925282007 303.360413315) + (1730.0 9.24640772936 7.52820593453 303.383704377) + (1735.0 9.2621362177 7.51715904899 303.40699544) + (1740.0 9.27786470603 7.50611216345 303.430286502) + (1745.0 9.29359319436 7.49506527791 303.453577565) + (1750.0 9.3093216827 7.48401839237 303.476868627) + (1755.0 9.32505017103 7.47297150683 303.50015969) + (1760.0 9.34077865936 7.46192462129 303.523450752) + (1765.0 9.35650714769 7.45087773575 303.546741815) + (1770.0 9.37223563603 7.43983085021 303.570032877) + (1775.0 9.38796412436 7.42878396467 303.59332394) + (1780.0 9.40369261269 7.41773707912 303.616615003) + (1785.0 9.41942110102 7.40669019358 303.639906065) + (1790.0 9.43514958936 7.39564330804 303.663197128) + (1795.0 9.45087807769 7.3845964225 303.68648819) + (1800.0 9.46660656602 7.37354953696 303.709779253) + (1805.0 9.48233505436 7.36250265142 303.733070315) + (1810.0 9.49806354269 7.35145576588 303.756361378) + (1815.0 9.51379203102 7.34040888034 303.77965244) + (1820.0 9.52952051935 7.3293619948 303.802943503) + (1825.0 9.54524900769 7.31831510926 303.826234565) + (1830.0 9.56097749602 7.30726822372 303.849525628) + (1835.0 9.57670598435 7.29622133818 303.87281669) + (1840.0 9.59243447268 7.28517445264 303.896107753) + (1845.0 9.60816296102 7.2741275671 303.919398815) + (1850.0 9.62389144935 7.26308068156 303.942689878) + (1855.0 9.63961993768 7.25203379602 303.96598094) + (1860.0 9.65432709188 7.2376578099 303.988680381) + (1865.0 9.66596304977 7.21327107309 304.009600791) + (1870.0 9.67759900765 7.18888433629 304.0305212) + (1875.0 9.68923496554 7.16449759948 304.051441609) + (1880.0 9.70087092342 7.14011086267 304.072362018) + (1885.0 9.71250688131 7.11572412587 304.093282427) + (1890.0 9.72414283919 7.09133738906 304.114202836) + (1895.0 9.73577879708 7.06695065226 304.135123245) + (1900.0 9.74741475497 7.04256391545 304.156043654) + (1905.0 9.75905071285 7.01817717864 304.176964064) + (1910.0 9.77068667074 6.99379044184 304.197884473) + (1915.0 9.78232262862 6.96940370503 304.218804882) + (1920.0 9.79395858651 6.94501696822 304.239725291) + (1925.0 9.8055945444 6.92063023142 304.2606457) + (1930.0 9.81723050228 6.89624349461 304.281566109) + (1935.0 9.82886646017 6.8718567578 304.302486518) + (1940.0 9.84050241805 6.847470021 304.323406928) + (1945.0 9.85213837594 6.82308328419 304.344327337) + (1950.0 9.86377433382 6.79869654738 304.365247746) + (1955.0 9.87541029171 6.77430981058 304.386168155) + (1960.0 9.8870462496 6.74992307377 304.407088564) + (1965.0 9.89868220748 6.72553633696 304.428008973) + (1970.0 9.91031816537 6.70114960016 304.448929382) + (1975.0 9.92195412325 6.67676286335 304.469849792) + (1980.0 9.93359008114 6.65237612654 304.490770201) + (1985.0 9.94522603903 6.62798938974 304.51169061) + (1990.0 9.95686199691 6.60360265293 304.532611019) + (1995.0 9.9684979548 6.57921591612 304.553531428) + (2000.0 9.98013391268 6.55482917932 304.574451837) +); + +// Update internal field. +updateInternalFields true; + +// Update boundary field. +updateBoundaryFields false; + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/topoSetDict.local.1 b/exampleCases/example.ADM.ssc.zeromq/system/topoSetDict.local.1 new file mode 100755 index 000000000..5ca695970 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/topoSetDict.local.1 @@ -0,0 +1,36 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.local.2; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name local; + type cellSet; + action new; + source rotatedBoxToCell; + sourceInfo + { + origin ( 900.0 1325.0 0.0); + i ( 1950.0 0.0 0.0); + j ( 0.0 350.0 0.0); + k ( 0.0 0.0 230.0); + } + } + +); + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/topoSetDict.local.2 b/exampleCases/example.ADM.ssc.zeromq/system/topoSetDict.local.2 new file mode 100755 index 000000000..eb488cf4f --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/system/topoSetDict.local.2 @@ -0,0 +1,36 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.local.2; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name local; + type cellSet; + action new; + source rotatedBoxToCell; + sourceInfo + { + origin ( 1000.0 1375.0 0.0); + i ( 1800.0 0.0 0.0); + j ( 0.0 250.0 0.0); + k ( 0.0 0.0 200.0); + } + } + +); + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/.gitignore b/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/.gitignore new file mode 100644 index 000000000..5e5d223e5 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/.gitignore @@ -0,0 +1,7 @@ +## Ignore any compiled functions +*.pyc +*.o +cSSC +*.dll +*.exe +*.so \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/cSSC.c b/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/cSSC.c new file mode 100644 index 000000000..4669ec978 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/cSSC.c @@ -0,0 +1,45 @@ +// COPIED AND MODIFIED FROM: http://zguide.zeromq.org/c:hwserver + +// Hello World server + +#include +#include +#include +#include +#include + +int main (void) +{ + printf("Setting up connection.\n"); + + + // Socket to talk to clients + void *context = zmq_ctx_new (); + void *responder = zmq_socket (context, ZMQ_REP); + int rc = zmq_bind (responder, "tcp://*:5552"); + + assert (rc == 0); + printf("Set up connection. Attempting to receive signals.\n"); + + while (1) { + char buffer [9900]; + + // Receive info from SOWFA + zmq_recv (responder, buffer, 9900, 0); + printf("Received signal [%s].\n", buffer); + + // Do your control stuff + // ... + // ... for this example case, just give constant output + char returnSignal [11] = "263.33 2.0"; // Make sure the dimensions are appropriate + // ... + // + + // Send back to SOWFA + printf ("Sending signal back to SOWFA [%s].\n",returnSignal); + zmq_send (responder, returnSignal, 9900, 0); + printf("Signal sent\n"); + + } + return 0; +} diff --git a/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/matlabSSC.m b/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/matlabSSC.m new file mode 100644 index 000000000..75ab25eda --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/matlabSSC.m @@ -0,0 +1,61 @@ +clear all; close all; clc; +% +% MATLAB can use zeroMQ, but it is not necessarily so straight-forward. The easiest solution found was +% using "jeroMQ", which can be downloaded from https://github.com/zeromq/jeromq. After installation, +% Update the path below and you should be all set. +% +% For more information, check out: +% https://mathworks.com/matlabcentral/answers/269061-how-do-i-integrate-zeromq-library-with-matlab-i-want-my-matlab-program-to-be-a-subscriber-of-zeromq +% +% Note: to install jeroMQ, you need to have 'maven' installed. When using Maven to install jeroMQ, +% you may run into an error about the unit testing. If so, disable them and run again using +% 'mvn install -DskipTests' +% +% Recommended Java JDK version: 1.8.0_171 (tested by excluding unit tests) +% +% +javaaddpath('/home/bartdoekemeijer/OpenFOAM_Develop/jeroMQ/jeromq/target/jeromq-0.4.4-SNAPSHOT.jar','-dpath'); + +import org.zeromq.* + + +disp(['Setting up the server...']); +context = zmq.Ctx(); +socket = context.createSocket(ZMQ.REP); +socket.bind('tcp://*:5553'); + +noMessagesReceived = 0; +disp(['Entering loop for collecting and sending data...']); +while 1 + + %% Receive information from SOWFA + % message = socket.recv(0); % Wait indefinitely until found a transmitter + message = socket.recv(1); % Do not wait for transmitter + if length(message) <= 0 + %disp([datestr(rem(now,1)) '__ no message received.']); + pause(0.05); % wait 50 ms + else + json_data = native2unicode(message.data)'; % Received message + + % cut down json_data to remove all non-used bytes + sortedFloats = textscan( json_data, '%f', 'Delimiter',' ' ); + inputsToSSC = sortedFloats{1}'; % row vector with data + disp([datestr(rem(now,1)) '__ message received: [' num2str(inputsToSSC) '].']); + + + % Do your control input stuff here + % ... + % ... + % ... + str_send = '263.35 2.0'; % This should be your next control inputs + + + % Send a message (control action) back to SOWFA + noMessagesReceived = noMessagesReceived + 1; + message = zmq.Msg(length(str_send)); + message.put(unicode2native(str_send)); + socket.send(message, 0); + end +end +% Close connection +socket.close() \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/pythonSSC.py b/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/pythonSSC.py new file mode 100644 index 000000000..fda43b28c --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/pythonSSC.py @@ -0,0 +1,27 @@ +# COPIED AND MODIFIED FROM: http://zguide.zeromq.org/py:hwserver +# +# Hello World server in Python +# Binds REP socket to tcp://*:5555 +# Expects b"Hello" from client, replies with b"World" +# +# +# For peregrine: use 'module load python/2.7.6'. +# Otherwise: make sure you have pyzmq, through 'pip install pyzmq' +# +import time +import zmq + +context = zmq.Context() +socket = context.socket(zmq.REP) +socket.bind("tcp://*:5553") + +while True: + # Wait for next request from client + message = socket.recv() + print("Received request: %s" % message) + + # Do some 'work' + time.sleep(1) + + # Send reply back to client + socket.send(b"263.33 2.0") diff --git a/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/readme.txt b/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/readme.txt new file mode 100644 index 000000000..f2903f012 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/readme.txt @@ -0,0 +1,46 @@ +// +// _SSC_ readme.txt +// Author: Bart Doekemeijer +// Date: May 4, 2018 +// + +__Description: +This document is a short readme for using the zeromqSSC option for wind farm control. +Read it carefully and study the examples before applying your own controller to SOWFA. + + +__Guidelines: +The 'zeromqSSC' interface works using the zeroMQ tool (http://zeromq.org/). This is an +interfacing tool that allows the exchange of information between different programs and +even between different computers using a network communication protocol (e.g., tcp). +This communication typically is between two programs: a 'client' and a 'server'. + +In SOWFA, the 'server' is your controller implemented in the language of choice, and the +'client' is actually (the 'zeromqSSC' function included in) SOWFA. Note that information +is exchanged through a string of an array of numbers. The formatting from array to string, +and then the formatting from string back to array, should be done on both sides: the client +and the server. So, in your case, you will have to account for this in your supercontroller. + + +__ Usage: +1. Enable the SSC in the turbineArrayProperties, and set 'sscFunction' to 'zeromqSSC'. +2. Set the individual turbine yaw and blade pitch controller to "yawSC" and "PIDSC". +3. Start up your zeroMQ server (i.e., your wind farm controller code using zeroMQ). +4. Start up your SOWFA simulation. + + +__ Example cases: +Some examples cases are given in this folder for a wind farm controller in C, a wind farm +controller is Python, and a wind farm controller in MATLAB. These are just bare-bone +functions/placeholders for you to program your wind farm control solution in. + +Note: make sure to compile the C-example with -lzmq. E.g., for NRELs Peregrine HPC, use: +gcc -Wall -o cSSC -L /nopt/nrel/apps/zeromq/gcc/4.2.2/lib -lzmq \ + -I /nopt/nrel/apps/zeromq/gcc/4.2.2/include cSSC.c + + +__Debugging: +If there are any issues: check if this is an issue with SOWFA/zeromqSSC, or if this is a +problem with your controller. If the issue is on the SOWFA side, please submit an 'issue' +on the Github page (https://github.com/NREL/SOWFA). For zeromqSSC-related issues, contact +Bart Doekemeijer (TU Delft) or Paul Fleming (NREL). From b216d388df51b82568d1f2e7eba346102e1ec3c1 Mon Sep 17 00:00:00 2001 From: Paul Fleming Date: Mon, 7 May 2018 16:36:12 -0600 Subject: [PATCH 36/65] Removing zeromq pythong folder from time table example --- .../zeromqExamplesSSC/.gitignore | 7 --- .../example.ADM.ssc/zeromqExamplesSSC/cSSC.c | 45 -------------- .../zeromqExamplesSSC/matlabSSC.m | 61 ------------------- .../zeromqExamplesSSC/pythonSSC.py | 27 -------- .../zeromqExamplesSSC/readme.txt | 46 -------------- 5 files changed, 186 deletions(-) delete mode 100644 exampleCases/example.ADM.ssc/zeromqExamplesSSC/.gitignore delete mode 100644 exampleCases/example.ADM.ssc/zeromqExamplesSSC/cSSC.c delete mode 100644 exampleCases/example.ADM.ssc/zeromqExamplesSSC/matlabSSC.m delete mode 100644 exampleCases/example.ADM.ssc/zeromqExamplesSSC/pythonSSC.py delete mode 100644 exampleCases/example.ADM.ssc/zeromqExamplesSSC/readme.txt diff --git a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/.gitignore b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/.gitignore deleted file mode 100644 index 5e5d223e5..000000000 --- a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/.gitignore +++ /dev/null @@ -1,7 +0,0 @@ -## Ignore any compiled functions -*.pyc -*.o -cSSC -*.dll -*.exe -*.so \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/cSSC.c b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/cSSC.c deleted file mode 100644 index 4669ec978..000000000 --- a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/cSSC.c +++ /dev/null @@ -1,45 +0,0 @@ -// COPIED AND MODIFIED FROM: http://zguide.zeromq.org/c:hwserver - -// Hello World server - -#include -#include -#include -#include -#include - -int main (void) -{ - printf("Setting up connection.\n"); - - - // Socket to talk to clients - void *context = zmq_ctx_new (); - void *responder = zmq_socket (context, ZMQ_REP); - int rc = zmq_bind (responder, "tcp://*:5552"); - - assert (rc == 0); - printf("Set up connection. Attempting to receive signals.\n"); - - while (1) { - char buffer [9900]; - - // Receive info from SOWFA - zmq_recv (responder, buffer, 9900, 0); - printf("Received signal [%s].\n", buffer); - - // Do your control stuff - // ... - // ... for this example case, just give constant output - char returnSignal [11] = "263.33 2.0"; // Make sure the dimensions are appropriate - // ... - // - - // Send back to SOWFA - printf ("Sending signal back to SOWFA [%s].\n",returnSignal); - zmq_send (responder, returnSignal, 9900, 0); - printf("Signal sent\n"); - - } - return 0; -} diff --git a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/matlabSSC.m b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/matlabSSC.m deleted file mode 100644 index 75ab25eda..000000000 --- a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/matlabSSC.m +++ /dev/null @@ -1,61 +0,0 @@ -clear all; close all; clc; -% -% MATLAB can use zeroMQ, but it is not necessarily so straight-forward. The easiest solution found was -% using "jeroMQ", which can be downloaded from https://github.com/zeromq/jeromq. After installation, -% Update the path below and you should be all set. -% -% For more information, check out: -% https://mathworks.com/matlabcentral/answers/269061-how-do-i-integrate-zeromq-library-with-matlab-i-want-my-matlab-program-to-be-a-subscriber-of-zeromq -% -% Note: to install jeroMQ, you need to have 'maven' installed. When using Maven to install jeroMQ, -% you may run into an error about the unit testing. If so, disable them and run again using -% 'mvn install -DskipTests' -% -% Recommended Java JDK version: 1.8.0_171 (tested by excluding unit tests) -% -% -javaaddpath('/home/bartdoekemeijer/OpenFOAM_Develop/jeroMQ/jeromq/target/jeromq-0.4.4-SNAPSHOT.jar','-dpath'); - -import org.zeromq.* - - -disp(['Setting up the server...']); -context = zmq.Ctx(); -socket = context.createSocket(ZMQ.REP); -socket.bind('tcp://*:5553'); - -noMessagesReceived = 0; -disp(['Entering loop for collecting and sending data...']); -while 1 - - %% Receive information from SOWFA - % message = socket.recv(0); % Wait indefinitely until found a transmitter - message = socket.recv(1); % Do not wait for transmitter - if length(message) <= 0 - %disp([datestr(rem(now,1)) '__ no message received.']); - pause(0.05); % wait 50 ms - else - json_data = native2unicode(message.data)'; % Received message - - % cut down json_data to remove all non-used bytes - sortedFloats = textscan( json_data, '%f', 'Delimiter',' ' ); - inputsToSSC = sortedFloats{1}'; % row vector with data - disp([datestr(rem(now,1)) '__ message received: [' num2str(inputsToSSC) '].']); - - - % Do your control input stuff here - % ... - % ... - % ... - str_send = '263.35 2.0'; % This should be your next control inputs - - - % Send a message (control action) back to SOWFA - noMessagesReceived = noMessagesReceived + 1; - message = zmq.Msg(length(str_send)); - message.put(unicode2native(str_send)); - socket.send(message, 0); - end -end -% Close connection -socket.close() \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/pythonSSC.py b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/pythonSSC.py deleted file mode 100644 index 5af9c5bc6..000000000 --- a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/pythonSSC.py +++ /dev/null @@ -1,27 +0,0 @@ -# COPIED AND MODIFIED FROM: http://zguide.zeromq.org/py:hwserver -# -# Hello World server in Python -# Binds REP socket to tcp://*:5555 -# Expects b"Hello" from client, replies with b"World" -# -# -# For peregrine: use 'module load python/2.7.6'. -# Otherwise: make sure you have pyzmq, through 'pip install pyzmq' -# -import time -import zmq - -context = zmq.Context() -socket = context.socket(zmq.REP) -socket.bind("tcp://*:5552") - -while True: - # Wait for next request from client - message = socket.recv() - print("Received request: %s" % message) - - # Do some 'work' - time.sleep(1) - - # Send reply back to client - socket.send(b"263.33 2.0") \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/readme.txt b/exampleCases/example.ADM.ssc/zeromqExamplesSSC/readme.txt deleted file mode 100644 index f2903f012..000000000 --- a/exampleCases/example.ADM.ssc/zeromqExamplesSSC/readme.txt +++ /dev/null @@ -1,46 +0,0 @@ -// -// _SSC_ readme.txt -// Author: Bart Doekemeijer -// Date: May 4, 2018 -// - -__Description: -This document is a short readme for using the zeromqSSC option for wind farm control. -Read it carefully and study the examples before applying your own controller to SOWFA. - - -__Guidelines: -The 'zeromqSSC' interface works using the zeroMQ tool (http://zeromq.org/). This is an -interfacing tool that allows the exchange of information between different programs and -even between different computers using a network communication protocol (e.g., tcp). -This communication typically is between two programs: a 'client' and a 'server'. - -In SOWFA, the 'server' is your controller implemented in the language of choice, and the -'client' is actually (the 'zeromqSSC' function included in) SOWFA. Note that information -is exchanged through a string of an array of numbers. The formatting from array to string, -and then the formatting from string back to array, should be done on both sides: the client -and the server. So, in your case, you will have to account for this in your supercontroller. - - -__ Usage: -1. Enable the SSC in the turbineArrayProperties, and set 'sscFunction' to 'zeromqSSC'. -2. Set the individual turbine yaw and blade pitch controller to "yawSC" and "PIDSC". -3. Start up your zeroMQ server (i.e., your wind farm controller code using zeroMQ). -4. Start up your SOWFA simulation. - - -__ Example cases: -Some examples cases are given in this folder for a wind farm controller in C, a wind farm -controller is Python, and a wind farm controller in MATLAB. These are just bare-bone -functions/placeholders for you to program your wind farm control solution in. - -Note: make sure to compile the C-example with -lzmq. E.g., for NRELs Peregrine HPC, use: -gcc -Wall -o cSSC -L /nopt/nrel/apps/zeromq/gcc/4.2.2/lib -lzmq \ - -I /nopt/nrel/apps/zeromq/gcc/4.2.2/include cSSC.c - - -__Debugging: -If there are any issues: check if this is an issue with SOWFA/zeromqSSC, or if this is a -problem with your controller. If the issue is on the SOWFA side, please submit an 'issue' -on the Github page (https://github.com/NREL/SOWFA). For zeromqSSC-related issues, contact -Bart Doekemeijer (TU Delft) or Paul Fleming (NREL). From 578509e330662520ebe3a6d410b1db6715d61715 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Wed, 11 Jul 2018 12:46:56 +0200 Subject: [PATCH 37/65] Update zeromqSSC.H Fix print option --- .../controllers/superControllers/zeromqSSC.H | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H index f4c80e4f2..84309474e 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H @@ -36,7 +36,7 @@ SC_zeromq(runTime_.value(), zeromqInfoToSC, zeromqInfoFromSC, sizeInfoFromSSC ); // Print the applied control settings for(int i=0; i < numTurbines; i++){ for(int j=0; j Date: Wed, 11 Jul 2018 17:08:35 +0200 Subject: [PATCH 38/65] Make ZeroMQ compilation optional with backwards compatibility. Default option is no compilation. Only compiles when COMPILEZEROMQ=1 is defined in the Bash environment. --- Allwmake | 9 +++++- .../turbineModelsStandard/Make/options | 1 + .../horizontalAxisWindTurbinesADM.C | 28 +++++++++++++++---- 3 files changed, 31 insertions(+), 7 deletions(-) diff --git a/Allwmake b/Allwmake index 60d4cb836..706053ee7 100755 --- a/Allwmake +++ b/Allwmake @@ -21,6 +21,12 @@ cd ../../../../ # Actuator turbine models. +if [ -z ${COMPILEZEROMQ+x} ] # ZeroMQ SSC for the ADM code +then + echo "COMPILEZEROMQ is not set. Not compiling ZeroMQ SSC in ADM." +else + echo "COMPILEZEROMQ is set to '${COMPILEZEROMQ}'. Compiling with ZeroMQ SSC if COMPILEZEROMQ==1 or without otherwise." +fi cd src/turbineModels/turbineModelsStandard wmake libso cd ../../../ @@ -112,7 +118,7 @@ else fi fi -# The wind plant solver with the actuator disk. + cd applications/solvers/incompressible/windEnergy/windPlantSolver.ADM wmake cd ../../../../../ @@ -147,6 +153,7 @@ else fi + # The basic non-buoyant solver with the actuator disk. cd applications/solvers/incompressible/windEnergy/pisoFoamTurbine.ADM wmake diff --git a/src/turbineModels/turbineModelsStandard/Make/options b/src/turbineModels/turbineModelsStandard/Make/options index 7a46156fe..25137a15c 100755 --- a/src/turbineModels/turbineModelsStandard/Make/options +++ b/src/turbineModels/turbineModelsStandard/Make/options @@ -1,4 +1,5 @@ EXE_INC = \ + -D COMPILEZEROMQ=$(COMPILEZEROMQ) \ -I$(LIB_SRC)/triSurface/lnInclude \ -I$(LIB_SRC)/finiteVolume/lnInclude \ -I$(LIB_SRC)/meshTools/lnInclude \ diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C index 06bebdac8..4ec5d665b 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C @@ -33,11 +33,25 @@ License \*---------------------------------------------------------------------------*/ +// General inclusions #include "horizontalAxisWindTurbinesADM.H" #include "interpolateXY.H" -#include "controllers/superControllers/SCSimple.C" //_SSC_ inclusion + +// SSC inclusions without dependencies +#include "controllers/superControllers/SCSimple.C" //_SSC_ inclusion #include "controllers/superControllers/timeTableSSC.C" //_SSC_ inclusion -#include "controllers/superControllers/zeromqSSC.C" //_SSC_ inclusion + +// SSC inclusions with dependencies +#define DO_EXPAND(VAL) VAL ## 1 +#define EXPAND(VAL) DO_EXPAND(VAL) +#if !defined(COMPILEZEROMQ) || (EXPAND(COMPILEZEROMQ) == 1) // (Re)define if COMPILEZEROMQ undefined or empty string + #undef COMPILEZEROMQ + #define COMPILEZEROMQ 0 // Set default option to 0, meaning 'do not compile ZeroMQ interface' +#endif + +#if COMPILEZEROMQ == 1 // External definition for gcc compiler: '-D COMPILEZEROMQ=1' + #include "controllers/superControllers/zeromqSSC.C" //_SSC_ inclusion +#endif namespace Foam { @@ -1118,10 +1132,12 @@ void horizontalAxisWindTurbinesADM::callSuperController() #include "controllers/superControllers/timeTableSSC.H" } - if (sscControllerType == "zeromqSSC") - { - #include "controllers/superControllers/zeromqSSC.H" - } + #if COMPILEZEROMQ == 1 + if (sscControllerType == "zeromqSSC") + { + #include "controllers/superControllers/zeromqSSC.H" + } + #endif } From 1b1ef759898071824013668671802467e30a8e8d Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Thu, 12 Jul 2018 08:30:15 +0200 Subject: [PATCH 39/65] Add error message when attempting to run ZeroMQ SSC when it has not been installed. --- .../horizontalAxisWindTurbinesADM.C | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C index 4ec5d665b..80cbf9c80 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C @@ -1137,7 +1137,12 @@ void horizontalAxisWindTurbinesADM::callSuperController() { #include "controllers/superControllers/zeromqSSC.H" } - #endif + #else + if (sscControllerType == "zeromqSSC") + { + printf("\n \n ERROR: Please recompile SOWFA with the correct zeroMQ libraries to use the zeromqSSC controller functionality. \n\n"); + } + #endif } From 8184ac14b81512423b8fcae2041e40615fb235b2 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Tue, 4 Sep 2018 11:07:29 +0200 Subject: [PATCH 40/65] Bug fix for writing and collecting the measurements for the zeroMQ interface. Currently, the measurements were written for every core, and then summed at the end. This leads to the measuement vector being nCores times larger than it is supposed to be. This is corrected for. Furthermore, some debugging print statements are ommitted for a cleaner output log. --- .../controllers/superControllers/zeromqSSC.C | 7 +++---- .../controllers/yawControllers/yawSC.H | 14 ++++++++++---- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C index 12314f915..825eeec05 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C @@ -37,19 +37,18 @@ void SC_zeromq(float timeStep, std::vector infoToSC, std::vector & ssToSC << " " << infoToSC[i]; } strToSSC = ssToSC.str(); - std::cout << "infoToSC: " << strToSSC << "\n"; + std::cout << "infoToSC: [" << strToSSC << "] \n"; // Send and receive from SSC through zeroMQ zmq_send (requester, strToSSC.c_str(), 9900, 0); zmq_recv (requester, charFromSSC, 9900, 0); // Format received char/string to std::vector - std::cout << "Received string: [" << charFromSSC << "].\n"; - std::cout << "Reformatting string into std::vector...\n"; + std::cout << "infoFromSC: [" << charFromSSC << "] \n"; std::stringstream ss(charFromSSC); for(int i=0;i> infoFromSC[i]; - printf("infoFromSC[%d] = %f \n",i,infoFromSC[i]); + //printf("infoFromSC[%d] = %f \n",i,infoFromSC[i]); } } diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/yawControllers/yawSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/yawControllers/yawSC.H index b4295f326..41d122455 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/yawControllers/yawSC.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/yawControllers/yawSC.H @@ -26,10 +26,16 @@ else if (yawError < 0) else deltaNacYaw[i] = Foam::constant::mathematical::pi / 180.0 * runTime_.deltaT().value(); // Yaw positive -// Write measurements for the superController -for(int i = 0; i < numTurbines; i++){ - // In our example case, we have nInputsToSSC = 3 +// Write measurements for the superController. In our example case, we have nInputsToSSC = 3 +if (Pstream::master()) { + // Only write for 1 core to avoid the output being InfoToSSC*nCores superInfoToSSC[i*nInputsToSSC+0] = powerGenerator[i]; // Generator power superInfoToSSC[i*nInputsToSSC+1] = torqueRotor[i]; // Turbine rotor torque superInfoToSSC[i*nInputsToSSC+2] = thrust[i]; // Turbine thrust force -} \ No newline at end of file + } else { + // Important to set values to zero for other processors (!) + superInfoToSSC[i*nInputsToSSC+0] = 0.0; + superInfoToSSC[i*nInputsToSSC+1] = 0.0; + superInfoToSSC[i*nInputsToSSC+2] = 0.0; + } +//} \ No newline at end of file From f416655925cac097077d479a2f531831e2f5d9df Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Tue, 18 Sep 2018 10:27:10 +0200 Subject: [PATCH 41/65] Update zeromqSSC implementation to a more general implementation. Moved the case-specific settings to the yawSC and PIDSC controllers, respectively. This makes a lot more sense, and makes it much more generic for other SSC implementations. --- .../controllers/bladePitchControllers/PIDSC.H | 6 +++- .../controllers/superControllers/zeromqSSC.H | 21 +++-------- .../controllers/yawControllers/yawSC.H | 8 ++++- .../horizontalAxisWindTurbinesADM.C | 35 +++++-------------- 4 files changed, 24 insertions(+), 46 deletions(-) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/bladePitchControllers/PIDSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/bladePitchControllers/PIDSC.H index 25b62b07e..bb9adaf93 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/bladePitchControllers/PIDSC.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/bladePitchControllers/PIDSC.H @@ -18,8 +18,12 @@ // Numerically take the deriviative of speed error w.r.t time. scalar derivSpeedError = (speedError[i] - speedErrorLast) / dt; + // SSC: Convert superInfoFromSSC blade pitch angles from degrees to radians + float lbPitch = superInfoFromSSC[i*nOutputsFromSSC+1]; // Lower bound on the pitch angle + lbPitch = lbPitch * degRad; // Degrees to radians + // Saturate the integrated speed error based on pitch saturation. - intSpeedError[i] = min(max(intSpeedError[i], superInfoFromSSC[i*nOutputsFromSSC+1]/(GK*PitchControlKI[j])), PitchMax[j]/(GK*PitchControlKI[j])); + intSpeedError[i] = min(max(intSpeedError[i], lbPitch/(GK*PitchControlKI[j])), PitchMax[j]/(GK*PitchControlKI[j])); // Compute the pitch components from the proportional, integral, // and derivative parts and sum them. diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H index 84309474e..dc46dd962 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H @@ -24,7 +24,6 @@ if (isFirstCall == 1){ isFirstCall = -1; // disable for future calls } - // Pass the SSC inputs to the local std::vector format for(int i = 0; i < nInputsToSSC*numTurbines; i++){ zeromqInfoToSC[i] = superInfoToSSC[i]; @@ -33,22 +32,10 @@ for(int i = 0; i < nInputsToSSC*numTurbines; i++){ // Call the SC from external library SC_zeromq(runTime_.value(), zeromqInfoToSC, zeromqInfoFromSC, sizeInfoFromSSC ); -// Print the applied control settings +// Copy entries to global variable and print the to-be-applied control settings for(int i=0; i < numTurbines; i++){ for(int j=0; j superInfoLocalIn(nInputsToSSC*numTurbines,0.0); List superInfoLocalOut(nOutputsFromSSC*numTurbines,0.0); - //superInfoLocal = List (superInfoLength*numTurbines,0.0); - - //Info << "(sc) superInfoLocal = " << superInfoLocal << endl; for(int si = 0; si < nInputsToSSC * numTurbines; si++) { superInfoLocalIn[si] = superInfoToSSC[si]; } - //Info << "(sc2) superInfoLocal = " << superInfoLocal << endl; - //Gather and scatter across procs Pstream::gather(superInfoLocalIn,sumOp >()); Pstream::scatter(superInfoLocalIn); - //Info << "(sc3) superInfoLocal = " << superInfoLocal << endl; - // Send back out for(int si = 0; si < nInputsToSSC *numTurbines; si++) { superInfoToSSC[si] = superInfoLocalIn[si]; } - - //Info << "(sc4) superInfoLocal = " << superInfoLocal << endl; - //Info << "(sc4) superInfoToSSC = " << superInfoToSSC << endl; - // if this is the master, call if (Pstream::master()) @@ -1108,8 +1090,7 @@ void horizontalAxisWindTurbinesADM::superController() Pstream::gather(superInfoLocalOut,sumOp >()); Pstream::scatter(superInfoLocalOut); - // Now reassign out - // Send back out + // Now reassign out/send back out for(int si = 0; si < nOutputsFromSSC *numTurbines; si++) { superInfoFromSSC[si] = superInfoLocalOut[si]; @@ -1172,10 +1153,10 @@ void horizontalAxisWindTurbinesADM::controlBladePitch() { #include "controllers/bladePitchControllers/PID.H" } + //_SSC_: allow a pidSC controller where the minimum pitch is chosen by super controller else if (BladePitchControllerType[j] == "PIDSC") { - //Info << "PIDSC Turbine " << i << endl; #include "controllers/bladePitchControllers/PIDSC.H" } From 98246e344e2875ed9a082d0cc3c19f67c5113a59 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Tue, 18 Sep 2018 10:44:53 +0200 Subject: [PATCH 42/65] Update options compilation file to remove warning message for backslash at end of file during SOWFA compilation. Furthermore, replace all tabs with spaces for consistency and readability. --- .../turbineModelsStandard/Make/options | 2 +- .../controllers/bladePitchControllers/PIDSC.H | 8 +- .../controllers/superControllers/zeromqSSC.C | 86 ++++++------ .../controllers/superControllers/zeromqSSC.H | 32 ++--- .../controllers/yawControllers/yawSC.H | 36 ++--- .../horizontalAxisWindTurbinesADM.C | 130 +++++++++--------- 6 files changed, 147 insertions(+), 147 deletions(-) diff --git a/src/turbineModels/turbineModelsStandard/Make/options b/src/turbineModels/turbineModelsStandard/Make/options index 25137a15c..99d10aee6 100755 --- a/src/turbineModels/turbineModelsStandard/Make/options +++ b/src/turbineModels/turbineModelsStandard/Make/options @@ -17,4 +17,4 @@ LIB_LIBS = \ -lLESdeltas \ -lLESfilters \ -L $(ZEROMQ_LIB) \ - -lzmq \ No newline at end of file + -lzmq diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/bladePitchControllers/PIDSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/bladePitchControllers/PIDSC.H index bb9adaf93..7dbdbb349 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/bladePitchControllers/PIDSC.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/bladePitchControllers/PIDSC.H @@ -18,10 +18,10 @@ // Numerically take the deriviative of speed error w.r.t time. scalar derivSpeedError = (speedError[i] - speedErrorLast) / dt; - // SSC: Convert superInfoFromSSC blade pitch angles from degrees to radians - float lbPitch = superInfoFromSSC[i*nOutputsFromSSC+1]; // Lower bound on the pitch angle - lbPitch = lbPitch * degRad; // Degrees to radians - + // SSC: Convert superInfoFromSSC blade pitch angles from degrees to radians + float lbPitch = superInfoFromSSC[i*nOutputsFromSSC+1]; // Lower bound on the pitch angle + lbPitch = lbPitch * degRad; // Degrees to radians + // Saturate the integrated speed error based on pitch saturation. intSpeedError[i] = min(max(intSpeedError[i], lbPitch/(GK*PitchControlKI[j])), PitchMax[j]/(GK*PitchControlKI[j])); diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C index 825eeec05..de3946cf8 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C @@ -17,57 +17,57 @@ void SC_zeromq(float timeStep, std::vector infoToSC, std::vector &infoFromSC, int sizeInfoFromSSC ) { - static int isFirstCall = 1; - static void *context = zmq_ctx_new (); - static void *requester = zmq_socket (context, ZMQ_REQ); - std::string strToSSC; // String that gets sent to SSC - char charFromSSC [9900]; - - // Establish connection of this is the first call to the SC - if (isFirstCall){ - printf ("0mq client: Connecting to 0mq server...\n"); - zmq_connect (requester, "tcp://localhost:5553"); - isFirstCall = 0; // disable for future calls - } + static int isFirstCall = 1; + static void *context = zmq_ctx_new (); + static void *requester = zmq_socket (context, ZMQ_REQ); + std::string strToSSC; // String that gets sent to SSC + char charFromSSC [9900]; + + // Establish connection of this is the first call to the SC + if (isFirstCall){ + printf ("0mq client: Connecting to 0mq server...\n"); + zmq_connect (requester, "tcp://localhost:5553"); + isFirstCall = 0; // disable for future calls + } - // Format the to be transmitted data from std::vector to char - std::stringstream ssToSC; // stringStream used to construct strToSSC - ssToSC << timeStep; // First entry is always timestep - for(size_t i = 0; i < infoToSC.size(); ++i) { - ssToSC << " " << infoToSC[i]; - } - strToSSC = ssToSC.str(); - std::cout << "infoToSC: [" << strToSSC << "] \n"; - - // Send and receive from SSC through zeroMQ - zmq_send (requester, strToSSC.c_str(), 9900, 0); + // Format the to be transmitted data from std::vector to char + std::stringstream ssToSC; // stringStream used to construct strToSSC + ssToSC << timeStep; // First entry is always timestep + for(size_t i = 0; i < infoToSC.size(); ++i) { + ssToSC << " " << infoToSC[i]; + } + strToSSC = ssToSC.str(); + std::cout << "infoToSC: [" << strToSSC << "] \n"; + + // Send and receive from SSC through zeroMQ + zmq_send (requester, strToSSC.c_str(), 9900, 0); zmq_recv (requester, charFromSSC, 9900, 0); - - // Format received char/string to std::vector - std::cout << "infoFromSC: [" << charFromSSC << "] \n"; - std::stringstream ss(charFromSSC); - for(int i=0;i> infoFromSC[i]; - //printf("infoFromSC[%d] = %f \n",i,infoFromSC[i]); - } + + // Format received char/string to std::vector + std::cout << "infoFromSC: [" << charFromSSC << "] \n"; + std::stringstream ss(charFromSSC); + for(int i=0;i> infoFromSC[i]; + //printf("infoFromSC[%d] = %f \n",i,infoFromSC[i]); + } } /* int main() { - float timeStep = 10.0; - static std::vector infoToSC; - static std::vector infoFromSC; + float timeStep = 10.0; + static std::vector infoToSC; + static std::vector infoFromSC; - const int numTurbines = 2; - const int nInputsToSSC = 2; - const int nOutputsFromSSC = 2; - - for(int i = 0; i < 3; i++){ - printf("Call %d.\n",i); - #include "zeromqSSC.H" - } - + const int numTurbines = 2; + const int nInputsToSSC = 2; + const int nOutputsFromSSC = 2; + + for(int i = 0; i < 3; i++){ + printf("Call %d.\n",i); + #include "zeromqSSC.H" + } + return 0; } */ \ No newline at end of file diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H index dc46dd962..0d629d77e 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H @@ -13,29 +13,29 @@ static int isFirstCall = 1; int sizeInfoFromSSC = nOutputsFromSSC*numTurbines; if (isFirstCall == 1){ - // Initialize std::vectors with appropriate dimensions - for (int i=0; i < numTurbines*nInputsToSSC; i++){ - zeromqInfoToSC.push_back(0.0); // Initialize with zero values - // - } - for (int i=0; i < sizeInfoFromSSC; i++){ - zeromqInfoFromSC.push_back(0.0); // Initialize with zero values - } - isFirstCall = -1; // disable for future calls + // Initialize std::vectors with appropriate dimensions + for (int i=0; i < numTurbines*nInputsToSSC; i++){ + zeromqInfoToSC.push_back(0.0); // Initialize with zero values + // + } + for (int i=0; i < sizeInfoFromSSC; i++){ + zeromqInfoFromSC.push_back(0.0); // Initialize with zero values + } + isFirstCall = -1; // disable for future calls } - + // Pass the SSC inputs to the local std::vector format for(int i = 0; i < nInputsToSSC*numTurbines; i++){ - zeromqInfoToSC[i] = superInfoToSSC[i]; + zeromqInfoToSC[i] = superInfoToSSC[i]; } - + // Call the SC from external library SC_zeromq(runTime_.value(), zeromqInfoToSC, zeromqInfoFromSC, sizeInfoFromSSC ); // Copy entries to global variable and print the to-be-applied control settings for(int i=0; i < numTurbines; i++){ - for(int j=0; j 1.0 * Foam::constant::mathematical::pi ) - yawError = yawError - 2.0 * Foam::constant::mathematical::pi; + yawError = yawError - 2.0 * Foam::constant::mathematical::pi; // Grab the absolute value // Note, not using abs, because it rounds to int if (yawError >= 0.0) - yawErrorAbs = yawError; + yawErrorAbs = yawError; else - yawErrorAbs = -1 * yawError; + yawErrorAbs = -1 * yawError; // Decide if yawing, and set yaw delta at delta angle giving 1 Deg/s if ( yawErrorAbs < Foam::constant::mathematical::pi / 180.0 * runTime_.deltaT().value() -.001) // small error - deltaNacYaw[i] = 0.0; // Do nothing + deltaNacYaw[i] = 0.0; // Do nothing else if (yawError < 0) - deltaNacYaw[i] = -1 * Foam::constant::mathematical::pi / 180.0 * runTime_.deltaT().value(); // Yaw negative + deltaNacYaw[i] = -1 * Foam::constant::mathematical::pi / 180.0 * runTime_.deltaT().value(); // Yaw negative else - deltaNacYaw[i] = Foam::constant::mathematical::pi / 180.0 * runTime_.deltaT().value(); // Yaw positive + deltaNacYaw[i] = Foam::constant::mathematical::pi / 180.0 * runTime_.deltaT().value(); // Yaw positive // Write measurements for the superController. In our example case, we have nInputsToSSC = 3 if (Pstream::master()) { - // Only write for 1 core to avoid the output being InfoToSSC*nCores - superInfoToSSC[i*nInputsToSSC+0] = powerGenerator[i]; // Generator power - superInfoToSSC[i*nInputsToSSC+1] = torqueRotor[i]; // Turbine rotor torque - superInfoToSSC[i*nInputsToSSC+2] = thrust[i]; // Turbine thrust force - } else { - // Important to set values to zero for other processors (!) - superInfoToSSC[i*nInputsToSSC+0] = 0.0; - superInfoToSSC[i*nInputsToSSC+1] = 0.0; - superInfoToSSC[i*nInputsToSSC+2] = 0.0; - } + // Only write for 1 core to avoid the output being InfoToSSC*nCores + superInfoToSSC[i*nInputsToSSC+0] = powerGenerator[i]; // Generator power + superInfoToSSC[i*nInputsToSSC+1] = torqueRotor[i]; // Turbine rotor torque + superInfoToSSC[i*nInputsToSSC+2] = thrust[i]; // Turbine thrust force + } else { + // Important to set values to zero for other processors (!) + superInfoToSSC[i*nInputsToSSC+0] = 0.0; + superInfoToSSC[i*nInputsToSSC+1] = 0.0; + superInfoToSSC[i*nInputsToSSC+2] = 0.0; + } //} \ No newline at end of file diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C index 117a2976a..311bb6eee 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C @@ -63,7 +63,7 @@ namespace turbineModels horizontalAxisWindTurbinesADM::horizontalAxisWindTurbinesADM ( const volVectorField& U -) +) : // Set the pointer to runTime runTime_(U.time()), @@ -146,7 +146,7 @@ horizontalAxisWindTurbinesADM::horizontalAxisWindTurbinesADM // that describes where the turbines are, what kind they are, their initial state, and // information about how the actuator line method is applied to each turbine. { - sscEnabled = false; // _SSC_ Set default option to 'false' + sscEnabled = false; // _SSC_ Set default option to 'false' List listTemp = turbineArrayProperties.toc(); for (int i = 0; i < listTemp.size(); i++) { @@ -155,12 +155,12 @@ horizontalAxisWindTurbinesADM::horizontalAxisWindTurbinesADM turbineName.append(listTemp[i]); } - // _SSC_ Check for sscProperties subDict. If exists, import the 'sscEnabled' setting (backwards compatibility) - if (listTemp[i] == "sscProperties") - { - sscEnabled = turbineArrayProperties.subDict("sscProperties").lookupOrDefault("sscEnabled",false); - } - // + // _SSC_ Check for sscProperties subDict. If exists, import the 'sscEnabled' setting (backwards compatibility) + if (listTemp[i] == "sscProperties") + { + sscEnabled = turbineArrayProperties.subDict("sscProperties").lookupOrDefault("sscEnabled",false); + } + // } } @@ -169,7 +169,7 @@ horizontalAxisWindTurbinesADM::horizontalAxisWindTurbinesADM //_SSC_ If SSC enabled, read the number of inputs and outputs, and // set up the dynamic arrays which will pass the memory between super controller and turbine controllers if (sscEnabled) { - nInputsToSSC = int(readScalar(turbineArrayProperties.subDict("sscProperties").lookup("nInputsToSSC"))); + nInputsToSSC = int(readScalar(turbineArrayProperties.subDict("sscProperties").lookup("nInputsToSSC"))); nOutputsFromSSC = int(readScalar(turbineArrayProperties.subDict("sscProperties").lookup("nOutputsFromSSC"))); sscControllerType = word(turbineArrayProperties.subDict("sscProperties").lookup("sscControllerType")); @@ -185,21 +185,21 @@ horizontalAxisWindTurbinesADM::horizontalAxisWindTurbinesADM } - // _SSC_ Report whether ssc has been enabled or disabled - if(Pstream::myProcNo() == 0) // Only print to log file for processor0, to avoid $nCores messages - { - if(sscEnabled) { - printf("The SSC is enabled.\n"); + // _SSC_ Report whether ssc has been enabled or disabled + if(Pstream::myProcNo() == 0) // Only print to log file for processor0, to avoid $nCores messages + { + if(sscEnabled) { + printf("The SSC is enabled.\n"); printf(" The SSC is expecting %d inputs per turbine.\n",nInputsToSSC ); printf(" The SSC is expecting %d outputs per turbine.\n",nOutputsFromSSC ); - } else { - printf("The SSC is disabled.\n"); - } - } - // + } else { + printf("The SSC is disabled.\n"); + } + } + // - + outputControl = turbineArrayProperties.subDict("globalProperties").lookupOrDefault("outputControl","timeStep"); outputInterval = turbineArrayProperties.subDict("globalProperties").lookupOrDefault("outputInterval",1); perturb = turbineArrayProperties.subDict("globalProperties").lookupOrDefault("perturb",1E-5); @@ -620,8 +620,8 @@ horizontalAxisWindTurbinesADM::horizontalAxisWindTurbinesADM // Define the vector aligned with the tower pointing from // the ground to the nacelle. - uvTower.append(towerShaftIntersect[i] - baseLocation[i]); - uvTower[i] = uvTower[i]/mag(uvTower[i]); + uvTower.append(towerShaftIntersect[i] - baseLocation[i]); + uvTower[i] = uvTower[i]/mag(uvTower[i]); // Calculate the width of each actuator section. dr.append(DynamicList(0)); @@ -836,9 +836,9 @@ void horizontalAxisWindTurbinesADM::rotateBlades() { // Perform rotation turbine by turbine. forAll(uvShaft, i) - { + { // Check the rotation direction first and set the local delta azimuth - // variable accordingly. + // variable accordingly. //scalar deltaAzimuthI = 0.0; //if (rotationDir[i] == "cw") //{ @@ -849,7 +849,7 @@ void horizontalAxisWindTurbinesADM::rotateBlades() // deltaAzimuthI = -deltaAzimuth[i]; //} - // Rotate turbine blades, blade by blade, point by point. + // Rotate turbine blades, blade by blade, point by point. //forAll(bladePoints[i], j) //{ // forAll(bladePoints[i][j], k) @@ -858,11 +858,11 @@ void horizontalAxisWindTurbinesADM::rotateBlades() // } //} - // Calculate the new azimuth angle and make sure it isn't + // Calculate the new azimuth angle and make sure it isn't // bigger than 2*pi. if (pastFirstTimeStep) { - azimuth[i] = azimuth[i] + deltaAzimuth[i]; + azimuth[i] = azimuth[i] + deltaAzimuth[i]; if (azimuth[i] >= 2.0 * Foam::constant::mathematical::pi) { azimuth[i] -= 2.0 * Foam::constant::mathematical::pi; @@ -877,15 +877,15 @@ void horizontalAxisWindTurbinesADM::yawNacelle() // Perform rotation turbine by turbine. forAll(uvTower, i) { - // Rotate the rotor apex first. + // Rotate the rotor apex first. rotorApex[i] = rotatePoint(rotorApex[i], towerShaftIntersect[i], uvTower[i], deltaNacYaw[i]); - // Recompute the shaft unit vector since the shaft has rotated. - uvShaft[i] = rotorApex[i] - towerShaftIntersect[i]; - uvShaft[i] = (uvShaft[i]/mag(uvShaft[i])) * uvShaftDir[i]; - - // Rotate turbine blades, blade by blade, point by point. - forAll(bladePoints[i], j) + // Recompute the shaft unit vector since the shaft has rotated. + uvShaft[i] = rotorApex[i] - towerShaftIntersect[i]; + uvShaft[i] = (uvShaft[i]/mag(uvShaft[i])) * uvShaftDir[i]; + + // Rotate turbine blades, blade by blade, point by point. + forAll(bladePoints[i], j) { forAll(bladePoints[i][j], k) { @@ -893,11 +893,11 @@ void horizontalAxisWindTurbinesADM::yawNacelle() } } - // Compute the new yaw angle and make sure it isn't + // Compute the new yaw angle and make sure it isn't // bigger than 2*pi. if (pastFirstTimeStep) { - nacYaw[i] = nacYaw[i] + deltaNacYaw[i]; + nacYaw[i] = nacYaw[i] + deltaNacYaw[i]; if (nacYaw[i] >= 2.0 * Foam::constant::mathematical::pi) { nacYaw[i] -= 2.0 * Foam::constant::mathematical::pi; @@ -979,17 +979,17 @@ void horizontalAxisWindTurbinesADM::controlGenTorque() // Apply a controller to update the rotor speed. - if (GenTorqueControllerType[j] == "none") + if (GenTorqueControllerType[j] == "none") { #include "controllers/genTorqueControllers/none.H" } - - else if (GenTorqueControllerType[j] == "fiveRegion") + + else if (GenTorqueControllerType[j] == "fiveRegion") { #include "controllers/genTorqueControllers/fiveRegion.H" - } + } - else if (GenTorqueControllerType[j] == "speedTorqueTable") + else if (GenTorqueControllerType[j] == "speedTorqueTable") { #include "controllers/genTorqueControllers/speedTorqueTable.H" } @@ -1035,7 +1035,7 @@ void horizontalAxisWindTurbinesADM::controlNacYaw() // superInfoFromSSC is a yaw reference to seek else if (NacYawControllerType[j] == "yawSC") { - #include "controllers/yawControllers/yawSC.H" + #include "controllers/yawControllers/yawSC.H" } @@ -1052,25 +1052,25 @@ void horizontalAxisWindTurbinesADM::controlNacYaw() // The super controller code facilitates the exchangess void horizontalAxisWindTurbinesADM::superController() { - Info << "Entering SuperController" << endl; + Info << "Entering SuperController" << endl; - //As a first step spool up the "To" data from each of the turbines - List superInfoLocalIn(nInputsToSSC*numTurbines,0.0); + //As a first step spool up the "To" data from each of the turbines + List superInfoLocalIn(nInputsToSSC*numTurbines,0.0); List superInfoLocalOut(nOutputsFromSSC*numTurbines,0.0); for(int si = 0; si < nInputsToSSC * numTurbines; si++) { - superInfoLocalIn[si] = superInfoToSSC[si]; + superInfoLocalIn[si] = superInfoToSSC[si]; } //Gather and scatter across procs - Pstream::gather(superInfoLocalIn,sumOp >()); + Pstream::gather(superInfoLocalIn,sumOp >()); Pstream::scatter(superInfoLocalIn); // Send back out for(int si = 0; si < nInputsToSSC *numTurbines; si++) { - superInfoToSSC[si] = superInfoLocalIn[si]; + superInfoToSSC[si] = superInfoLocalIn[si]; } // if this is the master, call @@ -1105,25 +1105,25 @@ void horizontalAxisWindTurbinesADM::callSuperController() // _SSC_, specific controller if (sscControllerType == "simpleSSC") { - #include "controllers/superControllers/SCSimple.H" + #include "controllers/superControllers/SCSimple.H" } - + if (sscControllerType == "timeTableSSC") { - #include "controllers/superControllers/timeTableSSC.H" - } + #include "controllers/superControllers/timeTableSSC.H" + } #if COMPILEZEROMQ == 1 if (sscControllerType == "zeromqSSC") { #include "controllers/superControllers/zeromqSSC.H" - } + } #else if (sscControllerType == "zeromqSSC") { printf("\n \n ERROR: Please recompile SOWFA with the correct zeroMQ libraries to use the zeromqSSC controller functionality. \n\n"); - } - #endif + } + #endif } @@ -1153,7 +1153,7 @@ void horizontalAxisWindTurbinesADM::controlBladePitch() { #include "controllers/bladePitchControllers/PID.H" } - + //_SSC_: allow a pidSC controller where the minimum pitch is chosen by super controller else if (BladePitchControllerType[j] == "PIDSC") { @@ -1248,7 +1248,7 @@ void horizontalAxisWindTurbinesADM::findControlProcNo() } } } -} +} void horizontalAxisWindTurbinesADM::computeWindVectors() @@ -1820,19 +1820,19 @@ void horizontalAxisWindTurbinesADM::update() if (outputControl == "timeStep") { if (outputIndex >= outputInterval) - { - outputIndex = 0; + { + outputIndex = 0; computeSectorAverage(); - printOutputFiles(); - } + printOutputFiles(); + } } else if (outputControl == "runTime") { if ((runTime_.value() - lastOutputTime) >= outputInterval) { - lastOutputTime += outputInterval; + lastOutputTime += outputInterval; computeSectorAverage(); - printOutputFiles(); + printOutputFiles(); } } else @@ -2004,11 +2004,11 @@ void horizontalAxisWindTurbinesADM::printOutputFiles() // _SSC_, print out superInfo for this turbine for(int si = 0; si < nOutputsFromSSC; si++) { - *superInfoFile_ << superInfoFromSSC[i * nOutputsFromSSC + si] << " "; + *superInfoFile_ << superInfoFromSSC[i * nOutputsFromSSC + si] << " "; } for(int si = 0; si < nInputsToSSC; si++) { - *superInfoFile_ << superInfoToSSC[i * nInputsToSSC + si] << " "; + *superInfoFile_ << superInfoToSSC[i * nInputsToSSC + si] << " "; } *superInfoFile_ << endl; //_SSC_ From 607794f2e799591a80c77185f83a269c5e10d649 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Thu, 25 Oct 2018 10:32:38 +0200 Subject: [PATCH 43/65] Add separate option to define the zeroMQ address for connection. This will allow multiple connections on the same node/network. --- .../controllers/superControllers/zeromqSSC.C | 6 +++--- .../controllers/superControllers/zeromqSSC.H | 2 +- .../horizontalAxisWindTurbinesADM.C | 6 +++++- .../horizontalAxisWindTurbinesADM.H | 3 ++- 4 files changed, 11 insertions(+), 6 deletions(-) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C index de3946cf8..171f28d92 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C @@ -15,7 +15,7 @@ #include #include -void SC_zeromq(float timeStep, std::vector infoToSC, std::vector &infoFromSC, int sizeInfoFromSSC ) +void SC_zeromq(std::string zmqAddress, float timeStep, std::vector infoToSC, std::vector &infoFromSC, int sizeInfoFromSSC ) { static int isFirstCall = 1; static void *context = zmq_ctx_new (); @@ -25,8 +25,8 @@ void SC_zeromq(float timeStep, std::vector infoToSC, std::vector & // Establish connection of this is the first call to the SC if (isFirstCall){ - printf ("0mq client: Connecting to 0mq server...\n"); - zmq_connect (requester, "tcp://localhost:5553"); + std::cout << "0mq client: Connecting to 0mq server on address: " << zmqAddress << " ... \n"; + zmq_connect (requester, zmqAddress.c_str()); isFirstCall = 0; // disable for future calls } diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H index 0d629d77e..bd376709d 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H @@ -30,7 +30,7 @@ for(int i = 0; i < nInputsToSSC*numTurbines; i++){ } // Call the SC from external library -SC_zeromq(runTime_.value(), zeromqInfoToSC, zeromqInfoFromSC, sizeInfoFromSSC ); +SC_zeromq(zmqAddress, runTime_.value(), zeromqInfoToSC, zeromqInfoFromSC, sizeInfoFromSSC ); // Copy entries to global variable and print the to-be-applied control settings for(int i=0; i < numTurbines; i++){ diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C index 311bb6eee..36115c4e6 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C @@ -172,7 +172,11 @@ horizontalAxisWindTurbinesADM::horizontalAxisWindTurbinesADM nInputsToSSC = int(readScalar(turbineArrayProperties.subDict("sscProperties").lookup("nInputsToSSC"))); nOutputsFromSSC = int(readScalar(turbineArrayProperties.subDict("sscProperties").lookup("nOutputsFromSSC"))); sscControllerType = word(turbineArrayProperties.subDict("sscProperties").lookup("sscControllerType")); - + + if (sscControllerType == "zeromqSSC") { + zmqAddress = string(turbineArrayProperties.subDict("sscProperties").lookup("zmqAddress")); + } + //Set up dynamic arrays for (int si = 0; si < numTurbines * nInputsToSSC; si++) { diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H index 33e54f473..0da5068aa 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H @@ -340,8 +340,9 @@ private: // specified pitch). DynamicList BladePitchControllerType; - //_SSC_ Define the controller type + //_SSC_ Define the controller type and the IP address for the zeroMQ interface word sscControllerType; + std::string zmqAddress; //- Engage a rotor speed limiter (do not let rotor speed exceed rated // or become negative. From e345aee94b2dffe8ff6ba9f39eaa2e1090ef5fd2 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Mon, 29 Oct 2018 13:27:15 +0100 Subject: [PATCH 44/65] Update horizontalAxisWindTurbinesADM.C Add torqueSC option (directly specifying generator torque through the ZMQ interface) --- .../horizontalAxisWindTurbinesADM.C | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C index 36115c4e6..41ac629a7 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C @@ -997,6 +997,11 @@ void horizontalAxisWindTurbinesADM::controlGenTorque() { #include "controllers/genTorqueControllers/speedTorqueTable.H" } + else if (GenTorqueControllerType[j] == "torqueSC") + { + #include "controllers/genTorqueControllers/torqueSC.H" + } + // Limit the change in generator torque. if (GenTorqueRateLimiter[j]) From 2a82cf48567e888836897686338c543c89c76630 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Mon, 29 Oct 2018 13:29:13 +0100 Subject: [PATCH 45/65] Add files via upload Add the torqueSC controller module, in which the generator torque is directly specified from the ZMQ interface (e.g., MATLAB or Python). Basically, this means the turbine controller can now be programmed in MATLAB or Python. --- .../controllers/genTorqueControllers/torqueSC.H | 1 + 1 file changed, 1 insertion(+) create mode 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/genTorqueControllers/torqueSC.H diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/genTorqueControllers/torqueSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/genTorqueControllers/torqueSC.H new file mode 100644 index 000000000..c50cf85d3 --- /dev/null +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/genTorqueControllers/torqueSC.H @@ -0,0 +1 @@ +torqueGenCommanded = superInfoFromSSC[i * nOutputsFromSSC+2]; \ No newline at end of file From d6f4293b6997cd1ab786e6c9d2ac1433244e0fd2 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Wed, 7 Nov 2018 10:39:41 +0100 Subject: [PATCH 46/65] Add .gitignore file that will ignore any compiled files and any preprocessed case files --- .gitignore | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000..87c8a23a1 --- /dev/null +++ b/.gitignore @@ -0,0 +1,44 @@ +*.asv +**/*.dep + +archivedCases +platforms +src/fileFormats/lnInclude +src/finiteVolume/lnInclude +src/postProcessing/functionObjects/utilities/lnInclude/ +src/sampling/lnInclude/ +src/turbineModels/turbineModelsStandard/lnInclude/ +src/turbulenceModels/incompressible/LES/lnInclude/ + +**/Make/linux64* + +*Cases/**/processor* +*Cases/**/postProces* +*Cases/**/turbineOutp* +*Cases/**/*.e0* +*Cases/**/*.e1* +*Cases/**/*.e2* +*Cases/**/*.e3* +*Cases/**/*.e4* +*Cases/**/*.e5* +*Cases/**/*.e6* +*Cases/**/*.e7* +*Cases/**/*.e8* +*Cases/**/*.e9* +*Cases/**/*.o0* +*Cases/**/*.o1* +*Cases/**/*.o2* +*Cases/**/*.o3* +*Cases/**/*.o4* +*Cases/**/*.o5* +*Cases/**/*.o6* +*Cases/**/*.o7* +*Cases/**/*.o8* +*Cases/**/*.o9* +*Cases/**/log.* +*Cases/**/*.log +*Cases/**/*.gz +*Cases/**/constant/boundaryData +*Cases/**/constant/sources +*Cases/**/0 +*Cases/**/*00 \ No newline at end of file From 74fe0701ae6afe1566fe5c97aa9934db898fd8ea Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Wed, 7 Nov 2018 10:53:27 +0100 Subject: [PATCH 47/65] Update .bash_profile to include a SSC option, depending on whether or not one wants to compile SOWFA with the ZeroMQ module. --- .bash_profile | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/.bash_profile b/.bash_profile index fa5c2d1fc..b21ad2621 100644 --- a/.bash_profile +++ b/.bash_profile @@ -36,6 +36,66 @@ SOWFA-2.4.x() export OPENFOAM_NAME=OpenFOAM-$OPENFOAM_VERSION export FOAM_INST_DIR=/projects/windsim/OpenFOAM + # Set the ZeroMQ compilation option to false + echo "Disabling the compilation and usage of ZeroMQ." + export COMPILEZEROMQ=0 + + foamDotFile=$FOAM_INST_DIR/$OPENFOAM_NAME/etc/bashrc + if [ -f $foamDotFile ] ; then + echo "Sourcing $foamDotFile..." + source $foamDotFile + fi + export WM_PROJECT_USER_DIR=$FOAM_INST_DIR/SOWFA-$OPENFOAM_VERSION + export WM_NCOMPPROCS=12 + export WM_COLOURS="white blue green cyan red magenta yellow" + export OPENFAST_DIR=$FOAM_INST_DIR/openfast-openmpi-gcc-1.7.3-4.8.2/install + export HDF5_DIR=$FOAM_INST_DIR/openfast-openmpi-gcc-1.7.3-4.8.2/install + export FOAM_USER_LIBBIN=$WM_PROJECT_USER_DIR/lib/$WM_OPTIONS + export FOAM_USER_APPBIN=$WM_PROJECT_USER_DIR/applications/bin/$WM_OPTIONS + export FOAM_RUN=$WM_PROJECT_USER_DIR/run + export LD_LIBRARY_PATH=$FOAM_USER_LIBBIN:$LD_LIBRARY_PATH + export LD_LIBRARY_PATH=$OPENFAST_DIR/lib/:$LD_LIBRARY_PATH + export PATH=$FOAM_USER_APPBIN:$PATH +} + +# SOWFA-2.4.x +SOWFA-2.4.x_SSC() +{ + # Unset OpenFOAM environment variables. + if [ -z "$FOAM_INST_DIR" ]; then + echo "Nothing to unset..." + else + echo "Unsetting OpenFOAM environment variables..." + . $FOAM_INST_DIR/OpenFOAM-$OPENFOAM_VERSION/etc/config/unset.sh + fi + + # Unload any compilers already loaded + echo "Purging modules..." + module purge + + # Load the appropriate modules + echo "Loading modules..." + module load openmpi-gcc/1.7.3-4.8.2 + module load mkl/13.5.192 + module load cmake/3.7.2 + module list + + # Set the OpenFOAM version and installation directory + export OPENFOAM_VERSION=2.4.x + export OPENFOAM_NAME=OpenFOAM-$OPENFOAM_VERSION + export FOAM_INST_DIR=/projects/windsim/OpenFOAM + + # Set the ZeroMQ compilation option to true + echo "Enabling the compilation and usage of ZeroMQ." + echo "Note that you must have zeroMQ installed and specified the appropriate directory." + export COMPILEZEROMQ=1 + export ZEROMQ_INCLUDE=$HOME/OpenFOAM/zeroMQ/libzmq/install/include + export ZEROMQ_LIB=$HOME/OpenFOAM/zeroMQ/libzmq/install/lib64 + + echo "Specified ZeroMQ /include/ directory: $ZEROMQ_INCLUDE" + echo "Specified ZeroMQ /lib64/ directory: $ZEROMQ_LIB" + + foamDotFile=$FOAM_INST_DIR/$OPENFOAM_NAME/etc/bashrc if [ -f $foamDotFile ] ; then echo "Sourcing $foamDotFile..." From 9683043d950fdf4a6a91c4e683e85a86f4006cb0 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Wed, 7 Nov 2018 11:32:04 +0100 Subject: [PATCH 48/65] Remove old example cases and create two new example cases --- .bash_profile | 7 +- .../example.ADM.ssc.timeTable/0.original/U | 58 ++ .../example.ADM.ssc.timeTable/0.original/k | 60 +++ .../0.original/nuSgs | 60 +++ .../example.ADM.ssc.timeTable/0.original/p | 60 +++ .../example.ADM.ssc.timeTable/SC_INPUT.txt | 7 + .../constant/LESProperties | 124 +++++ .../constant/airfoilProperties/Cylinder1 | 23 + .../constant/airfoilProperties/Cylinder2 | 23 + .../constant/airfoilProperties/DU21_A17 | 162 ++++++ .../constant/airfoilProperties/DU25_A17 | 161 ++++++ .../constant/airfoilProperties/DU30_A17 | 163 ++++++ .../constant/airfoilProperties/DU35_A17 | 155 ++++++ .../constant/airfoilProperties/DU40_A17 | 156 ++++++ .../constant/airfoilProperties/NACA64_A17 | 147 +++++ .../constant/polyMesh/blockMeshDict | 101 ++++ .../constant/transportProperties | 39 ++ .../constant/turbineArrayProperties | 78 +++ .../constant/turbineProperties/NREL5MWRef | 122 +++++ .../constant/turbulenceProperties | 22 + .../runscript.preprocess | 155 ++++++ .../runscript.removeAll | 21 + .../runscript.solve.1 | 40 ++ exampleCases/example.ADM.ssc.timeTable/setUp | 93 ++++ .../system/changeDictionaryDict.updateBCs | 200 +++++++ .../changeDictionaryDict.updateBCs.cyclic | 238 +++++++++ .../changeDictionaryDict.updateBCs.east | 290 ++++++++++ .../changeDictionaryDict.updateBCs.north | 200 +++++++ .../changeDictionaryDict.updateBCs.northeast | 290 ++++++++++ .../changeDictionaryDict.updateBCs.northwest | 290 ++++++++++ .../changeDictionaryDict.updateBCs.south | 200 +++++++ .../changeDictionaryDict.updateBCs.southeast | 290 ++++++++++ .../changeDictionaryDict.updateBCs.southwest | 290 ++++++++++ .../changeDictionaryDict.updateBCs.west | 200 +++++++ .../system/controlDict.1 | 66 +++ .../system/decomposeParDict | 76 +++ .../system/fvSchemes | 85 +++ .../system/fvSolution | 102 ++++ .../system/sampling/sliceDataInstantaneous | 59 ++ .../system/setFieldsABLDict | 504 ++++++++++++++++++ .../example.ADM.ssc.zeroMQ/0.original/U | 58 ++ .../example.ADM.ssc.zeroMQ/0.original/k | 60 +++ .../example.ADM.ssc.zeroMQ/0.original/nuSgs | 60 +++ .../example.ADM.ssc.zeroMQ/0.original/p | 60 +++ .../constant/LESProperties | 124 +++++ .../constant/airfoilProperties/Cylinder1 | 23 + .../constant/airfoilProperties/Cylinder2 | 23 + .../constant/airfoilProperties/DU21_A17 | 162 ++++++ .../constant/airfoilProperties/DU25_A17 | 161 ++++++ .../constant/airfoilProperties/DU30_A17 | 163 ++++++ .../constant/airfoilProperties/DU35_A17 | 155 ++++++ .../constant/airfoilProperties/DU40_A17 | 156 ++++++ .../constant/airfoilProperties/NACA64_A17 | 147 +++++ .../constant/polyMesh/blockMeshDict | 101 ++++ .../constant/transportProperties | 39 ++ .../constant/turbineArrayProperties | 244 +++++++++ .../constant/turbineProperties/NREL5MWRef | 122 +++++ .../constant/turbulenceProperties | 22 + .../runscript.preprocess | 155 ++++++ .../runscript.removeAll | 21 + .../example.ADM.ssc.zeroMQ/runscript.solve.1 | 36 ++ exampleCases/example.ADM.ssc.zeroMQ/setUp | 93 ++++ .../system/changeDictionaryDict.updateBCs | 200 +++++++ .../changeDictionaryDict.updateBCs.cyclic | 238 +++++++++ .../changeDictionaryDict.updateBCs.east | 290 ++++++++++ .../changeDictionaryDict.updateBCs.north | 200 +++++++ .../changeDictionaryDict.updateBCs.northeast | 290 ++++++++++ .../changeDictionaryDict.updateBCs.northwest | 290 ++++++++++ .../changeDictionaryDict.updateBCs.south | 200 +++++++ .../changeDictionaryDict.updateBCs.southeast | 290 ++++++++++ .../changeDictionaryDict.updateBCs.southwest | 290 ++++++++++ .../changeDictionaryDict.updateBCs.west | 200 +++++++ .../system/controlDict.1 | 66 +++ .../system/decomposeParDict | 76 +++ .../example.ADM.ssc.zeroMQ/system/fvSchemes | 85 +++ .../example.ADM.ssc.zeroMQ/system/fvSolution | 102 ++++ .../system/sampling/sliceDataInstantaneous | 59 ++ .../system/setFieldsABLDict | 504 ++++++++++++++++++ exampleCases/example.ADM/runscript.solve.1 | 4 +- 79 files changed, 10982 insertions(+), 4 deletions(-) create mode 100755 exampleCases/example.ADM.ssc.timeTable/0.original/U create mode 100755 exampleCases/example.ADM.ssc.timeTable/0.original/k create mode 100755 exampleCases/example.ADM.ssc.timeTable/0.original/nuSgs create mode 100755 exampleCases/example.ADM.ssc.timeTable/0.original/p create mode 100644 exampleCases/example.ADM.ssc.timeTable/SC_INPUT.txt create mode 100755 exampleCases/example.ADM.ssc.timeTable/constant/LESProperties create mode 100755 exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/Cylinder1 create mode 100755 exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/Cylinder2 create mode 100755 exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/DU21_A17 create mode 100755 exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/DU25_A17 create mode 100755 exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/DU30_A17 create mode 100755 exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/DU35_A17 create mode 100755 exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/DU40_A17 create mode 100755 exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/NACA64_A17 create mode 100755 exampleCases/example.ADM.ssc.timeTable/constant/polyMesh/blockMeshDict create mode 100755 exampleCases/example.ADM.ssc.timeTable/constant/transportProperties create mode 100755 exampleCases/example.ADM.ssc.timeTable/constant/turbineArrayProperties create mode 100755 exampleCases/example.ADM.ssc.timeTable/constant/turbineProperties/NREL5MWRef create mode 100755 exampleCases/example.ADM.ssc.timeTable/constant/turbulenceProperties create mode 100755 exampleCases/example.ADM.ssc.timeTable/runscript.preprocess create mode 100755 exampleCases/example.ADM.ssc.timeTable/runscript.removeAll create mode 100755 exampleCases/example.ADM.ssc.timeTable/runscript.solve.1 create mode 100755 exampleCases/example.ADM.ssc.timeTable/setUp create mode 100755 exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs create mode 100755 exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.cyclic create mode 100755 exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.east create mode 100755 exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.north create mode 100755 exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.northeast create mode 100755 exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.northwest create mode 100755 exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.south create mode 100755 exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.southeast create mode 100755 exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.southwest create mode 100755 exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.west create mode 100755 exampleCases/example.ADM.ssc.timeTable/system/controlDict.1 create mode 100755 exampleCases/example.ADM.ssc.timeTable/system/decomposeParDict create mode 100755 exampleCases/example.ADM.ssc.timeTable/system/fvSchemes create mode 100755 exampleCases/example.ADM.ssc.timeTable/system/fvSolution create mode 100755 exampleCases/example.ADM.ssc.timeTable/system/sampling/sliceDataInstantaneous create mode 100755 exampleCases/example.ADM.ssc.timeTable/system/setFieldsABLDict create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/0.original/U create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/0.original/k create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/0.original/nuSgs create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/0.original/p create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/constant/LESProperties create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/Cylinder1 create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/Cylinder2 create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/DU21_A17 create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/DU25_A17 create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/DU30_A17 create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/DU35_A17 create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/DU40_A17 create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/NACA64_A17 create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/constant/polyMesh/blockMeshDict create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/constant/transportProperties create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/constant/turbineArrayProperties create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/constant/turbineProperties/NREL5MWRef create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/constant/turbulenceProperties create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/runscript.preprocess create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/runscript.removeAll create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/runscript.solve.1 create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/setUp create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.cyclic create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.east create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.north create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.northeast create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.northwest create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.south create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.southeast create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.southwest create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.west create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/system/controlDict.1 create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/system/decomposeParDict create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/system/fvSchemes create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/system/fvSolution create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/system/sampling/sliceDataInstantaneous create mode 100755 exampleCases/example.ADM.ssc.zeroMQ/system/setFieldsABLDict diff --git a/.bash_profile b/.bash_profile index b21ad2621..75f829321 100644 --- a/.bash_profile +++ b/.bash_profile @@ -89,8 +89,11 @@ SOWFA-2.4.x_SSC() echo "Enabling the compilation and usage of ZeroMQ." echo "Note that you must have zeroMQ installed and specified the appropriate directory." export COMPILEZEROMQ=1 - export ZEROMQ_INCLUDE=$HOME/OpenFOAM/zeroMQ/libzmq/install/include - export ZEROMQ_LIB=$HOME/OpenFOAM/zeroMQ/libzmq/install/lib64 + export ZEROMQ_HOME=$HOME/OpenFOAM/zeroMQ/libzmq/install + export ZEROMQ_INCLUDE=$ZEROMQ_HOME/include + export ZEROMQ_LIB=$ZEROMQ_HOME/lib64 + export LD_LIBRARY_PATH=$ZEROMQ_HOME/lib:$LD_LIBRARY_PATH + export LD_LIBRARY_PATH=$ZEROMQ_HOME/lib64:$LD_LIBRARY_PATH echo "Specified ZeroMQ /include/ directory: $ZEROMQ_INCLUDE" echo "Specified ZeroMQ /lib64/ directory: $ZEROMQ_LIB" diff --git a/exampleCases/example.ADM.ssc.timeTable/0.original/U b/exampleCases/example.ADM.ssc.timeTable/0.original/U new file mode 100755 index 000000000..6dbf85ec5 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/0.original/U @@ -0,0 +1,58 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volVectorField; + location "0"; + object U; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 1 -1 0 0 0 0]; + +internalField uniform ($U0Mag 0 0); + +boundaryField +{ + lower + { + type slip; + } + upper + { + type slip; + } + west + { + type fixedValue; + value uniform ($U0Mag 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform ($U0Mag 0 0); + } + south + { + type slip; + } + north + { + type slip; + } +} + + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.timeTable/0.original/k b/exampleCases/example.ADM.ssc.timeTable/0.original/k new file mode 100755 index 000000000..c76a7e261 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/0.original/k @@ -0,0 +1,60 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object k ; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -2 0 0 0 0]; + +internalField uniform 0.0; + +boundaryField +{ + lower + { + type zeroGradient; + value uniform 0.0; + } + upper + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedValue; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.timeTable/0.original/nuSgs b/exampleCases/example.ADM.ssc.timeTable/0.original/nuSgs new file mode 100755 index 000000000..18e32f76e --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/0.original/nuSgs @@ -0,0 +1,60 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.1.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object nuSgs; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -1 0 0 0 0]; + +internalField uniform $nuSgs0; + +boundaryField +{ + lower + { + type zeroGradient; + value uniform 0.0; + } + upper + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedValue; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.timeTable/0.original/p b/exampleCases/example.ADM.ssc.timeTable/0.original/p new file mode 100755 index 000000000..d77aa1268 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/0.original/p @@ -0,0 +1,60 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0000"; + object p; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -2 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + lower + { + type zeroGradient; + value uniform 0; + } + upper + { + type zeroGradient; + value uniform 0; + } + east + { + type fixedValue; + value uniform 0; + } + west + { + type zeroGradient; + value uniform 0; + } + south + { + type zeroGradient; + value uniform 0; + } + north + { + type zeroGradient; + value uniform 0; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.timeTable/SC_INPUT.txt b/exampleCases/example.ADM.ssc.timeTable/SC_INPUT.txt new file mode 100644 index 000000000..a584d7e04 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/SC_INPUT.txt @@ -0,0 +1,7 @@ +Time(s) Turbine Yaw(degCompass) Pitch(deg) +0 0 270 0.0 +10 0 260 0.0 +20 0 250 0.0 +30 0 240 0.0 +0 1 270 0.0 +10 1 280 0.0 \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc.timeTable/constant/LESProperties b/exampleCases/example.ADM.ssc.timeTable/constant/LESProperties new file mode 100755 index 000000000..5fcbb46e9 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/constant/LESProperties @@ -0,0 +1,124 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object LESProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +#include "../setUp" + + +LESModel $LESModel; +//LESModel SmagorinskyABL; +//LESModel Smagorinsky; +//LESModel dynLagrangianCsBound; + +delta smooth; + +SmagorinskyCoeffs +{ + ce $ce; + ck $ck; +} + +SmagorinskyABLCoeffs +{ + ce $ce; + ck $ck; + TName "T"; + kappatName "kappat"; +} + +oneEqEddyABLCoeffs +{ + ce $ce; + ck $ck; + TName "T"; + kappatName "kappat"; +} + +oneEqEddyCoeffs +{ + ce $ce; + ck $ck; +} + +printCoeffs on; + +dynLagrangianCsBoundCoeffs +{ + filter simple; +} + +cubeRootVolCoeffs +{ + deltaCoeff 1; +} + +PrandtlCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + smoothCoeffs + { + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + maxDeltaRatio 1.1; + } + + Cdelta 0.158; +} + +vanDriestCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + smoothCoeffs + { + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + maxDeltaRatio 1.1; + } + + Aplus 26; + Cdelta 0.158; +} + +smoothCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + maxDeltaRatio 1.1; +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/Cylinder1 b/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/Cylinder1 new file mode 100755 index 000000000..7106c17d0 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/Cylinder1 @@ -0,0 +1,23 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.5000) + ( 0.00 0.000 0.5000) + ( 180.00 0.000 0.5000) +); diff --git a/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/Cylinder2 b/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/Cylinder2 new file mode 100755 index 000000000..b2e7923f1 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/Cylinder2 @@ -0,0 +1,23 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.3500) + ( 0.00 0.000 0.3500) + ( 180.00 0.000 0.3500) +); diff --git a/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/DU21_A17 b/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/DU21_A17 new file mode 100755 index 000000000..17eb9de96 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/DU21_A17 @@ -0,0 +1,162 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180 0 0.0185) + (-175 0.394 0.0332) + (-170 0.788 0.0945) + (-160 0.67 0.2809) + (-155 0.749 0.3932) + (-150 0.797 0.5112) + (-145 0.818 0.6309) + (-140 0.813 0.7485) + (-135 0.786 0.8612) + (-130 0.739 0.9665) + (-125 0.675 1.0625) + (-120 0.596 1.1476) + (-115 0.505 1.2206) + (-110 0.403 1.2805) + (-105 0.294 1.3265) + (-100 0.179 1.3582) + (-95 0.06 1.3752) + (-90 -0.06 1.3774) + (-85 -0.179 1.3648) + (-80 -0.295 1.3376) + (-75 -0.407 1.2962) + (-70 -0.512 1.2409) + (-65 -0.608 1.1725) + (-60 -0.693 1.0919) + (-55 -0.764 1.0002) + (-50 -0.82 0.899 ) + (-45 -0.857 0.79 ) + (-40 -0.875 0.6754) + (-35 -0.869 0.5579) + (-30 -0.838 0.4405) + (-25 -0.791 0.3256) + (-24 -0.794 0.3013) + (-23 -0.805 0.2762) + (-22 -0.821 0.2506) + (-21 -0.843 0.2246) + (-20 -0.869 0.1983) + (-19 -0.899 0.172 ) + (-18 -0.931 0.1457) + (-17 -0.964 0.1197) + (-16 -0.999 0.094 ) + (-15 -1.033 0.0689) + (-14.5 -1.05 0.0567) + (-12.01 -0.953 0.0271) + (-11 -0.9 0.0303) + (-9.98 -0.827 0.0287) + (-8.12 -0.536 0.0124) + (-7.62 -0.467 0.0109) + (-7.11 -0.393 0.0092) + (-6.6 -0.323 0.0083) + (-6.5 -0.311 0.0089) + (-6 -0.245 0.0082) + (-5.5 -0.178 0.0074) + (-5 -0.113 0.0069) + (-4.5 -0.048 0.0065) + (-4 0.016 0.0063) + (-3.5 0.08 0.0061) + (-3 0.145 0.0058) + (-2.5 0.208 0.0057) + (-2 0.27 0.0057) + (-1.5 0.333 0.0057) + (-1 0.396 0.0057) + (-0.5 0.458 0.0057) + ( 0 0.521 0.0057) + ( 0.5 0.583 0.0057) + ( 1 0.645 0.0058) + ( 1.5 0.706 0.0058) + ( 2 0.768 0.0059) + ( 2.5 0.828 0.0061) + ( 3 0.888 0.0063) + ( 3.5 0.948 0.0066) + ( 4 0.996 0.0071) + ( 4.5 1.046 0.0079) + ( 5 1.095 0.009 ) + ( 5.5 1.145 0.0103) + ( 6 1.192 0.0113) + ( 6.5 1.239 0.0122) + ( 7 1.283 0.0131) + ( 7.5 1.324 0.0139) + ( 8 1.358 0.0147) + ( 8.5 1.385 0.0158) + ( 9 1.403 0.0181) + ( 9.5 1.401 0.0211) + ( 10 1.358 0.0255) + ( 10.5 1.313 0.0301) + ( 11 1.287 0.0347) + ( 11.5 1.274 0.0401) + ( 12 1.272 0.0468) + ( 12.5 1.273 0.0545) + ( 13 1.273 0.0633) + ( 13.5 1.273 0.0722) + ( 14 1.272 0.0806) + ( 14.5 1.273 0.09 ) + ( 15 1.275 0.0987) + ( 15.5 1.281 0.1075) + ( 16 1.284 0.117 ) + ( 16.5 1.296 0.127 ) + ( 17 1.306 0.1368) + ( 17.5 1.308 0.1464) + ( 18 1.308 0.1562) + ( 18.5 1.308 0.1664) + ( 19 1.308 0.177 ) + ( 19.5 1.307 0.1878) + ( 20 1.311 0.1987) + ( 20.5 1.325 0.21 ) + ( 21 1.324 0.2214) + ( 22 1.277 0.2499) + ( 23 1.229 0.2786) + ( 24 1.182 0.3077) + ( 25 1.136 0.3371) + ( 26 1.093 0.3664) + ( 28 1.017 0.4246) + ( 30 0.962 0.4813) + ( 32 0.937 0.5356) + ( 35 0.947 0.6127) + ( 40 0.95 0.7396) + ( 45 0.928 0.8623) + ( 50 0.884 0.9781) + ( 55 0.821 1.0846) + ( 60 0.74 1.1796) + ( 65 0.646 1.2617) + ( 70 0.54 1.3297) + ( 75 0.425 1.3827) + ( 80 0.304 1.4202) + ( 85 0.179 1.4423) + ( 90 0.053 1.4512) + ( 95 -0.073 1.448 ) + ( 100 -0.198 1.4294) + ( 105 -0.319 1.3954) + ( 110 -0.434 1.3464) + ( 115 -0.541 1.2829) + ( 120 -0.637 1.2057) + ( 125 -0.72 1.1157) + ( 130 -0.787 1.0144) + ( 135 -0.836 0.9033) + ( 140 -0.864 0.7845) + ( 145 -0.869 0.6605) + ( 150 -0.847 0.5346) + ( 155 -0.795 0.4103) + ( 160 -0.711 0.2922) + ( 170 -0.788 0.0969) + ( 175 -0.394 0.0334) + ( 180 0 0.0185) +); diff --git a/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/DU25_A17 b/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/DU25_A17 new file mode 100755 index 000000000..56981e639 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/DU25_A17 @@ -0,0 +1,161 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0202) + (-175.00 0.368 0.0324) + (-170.00 0.735 0.0943) + (-160.00 0.695 0.2848) + (-155.00 0.777 0.4001) + (-150.00 0.828 0.5215) + (-145.00 0.850 0.6447) + (-140.00 0.846 0.7660) + (-135.00 0.818 0.8823) + (-130.00 0.771 0.9911) + (-125.00 0.705 1.0905) + (-120.00 0.624 1.1787) + (-115.00 0.530 1.2545) + (-110.00 0.426 1.3168) + (-105.00 0.314 1.3650) + (-100.00 0.195 1.3984) + ( -95.00 0.073 1.4169) + ( -90.00 -0.050 1.4201) + ( -85.00 -0.173 1.4081) + ( -80.00 -0.294 1.3811) + ( -75.00 -0.409 1.3394) + ( -70.00 -0.518 1.2833) + ( -65.00 -0.617 1.2138) + ( -60.00 -0.706 1.1315) + ( -55.00 -0.780 1.0378) + ( -50.00 -0.839 0.9341) + ( -45.00 -0.879 0.8221) + ( -40.00 -0.898 0.7042) + ( -35.00 -0.893 0.5829) + ( -30.00 -0.862 0.4616) + ( -25.00 -0.803 0.3441) + ( -24.00 -0.792 0.3209) + ( -23.00 -0.789 0.2972) + ( -22.00 -0.792 0.2730) + ( -21.00 -0.801 0.2485) + ( -20.00 -0.815 0.2237) + ( -19.00 -0.833 0.1990) + ( -18.00 -0.854 0.1743) + ( -17.00 -0.879 0.1498) + ( -16.00 -0.905 0.1256) + ( -15.00 -0.932 0.1020) + ( -14.00 -0.959 0.0789) + ( -13.00 -0.985 0.0567) + ( -13.00 -0.985 0.0567) + ( -12.01 -0.953 0.0271) + ( -11.00 -0.900 0.0303) + ( -9.98 -0.827 0.0287) + ( -8.98 -0.753 0.0271) + ( -8.47 -0.691 0.0264) + ( -7.45 -0.555 0.0114) + ( -6.42 -0.413 0.0094) + ( -5.40 -0.271 0.0086) + ( -5.00 -0.220 0.0073) + ( -4.50 -0.152 0.0071) + ( -4.00 -0.084 0.0070) + ( -3.50 -0.018 0.0069) + ( -3.00 0.049 0.0068) + ( -2.50 0.115 0.0068) + ( -2.00 0.181 0.0068) + ( -1.50 0.247 0.0067) + ( -1.00 0.312 0.0067) + ( -0.50 0.377 0.0067) + ( 0.00 0.444 0.0065) + ( 0.50 0.508 0.0065) + ( 1.00 0.573 0.0066) + ( 1.50 0.636 0.0067) + ( 2.00 0.701 0.0068) + ( 2.50 0.765 0.0069) + ( 3.00 0.827 0.0070) + ( 3.50 0.890 0.0071) + ( 4.00 0.952 0.0073) + ( 4.50 1.013 0.0076) + ( 5.00 1.062 0.0079) + ( 6.00 1.161 0.0099) + ( 6.50 1.208 0.0117) + ( 7.00 1.254 0.0132) + ( 7.50 1.301 0.0143) + ( 8.00 1.336 0.0153) + ( 8.50 1.369 0.0165) + ( 9.00 1.400 0.0181) + ( 9.50 1.428 0.0211) + ( 10.00 1.442 0.0262) + ( 10.50 1.427 0.0336) + ( 11.00 1.374 0.0420) + ( 11.50 1.316 0.0515) + ( 12.00 1.277 0.0601) + ( 12.50 1.250 0.0693) + ( 13.00 1.246 0.0785) + ( 13.50 1.247 0.0888) + ( 14.00 1.256 0.1000) + ( 14.50 1.260 0.1108) + ( 15.00 1.271 0.1219) + ( 15.50 1.281 0.1325) + ( 16.00 1.289 0.1433) + ( 16.50 1.294 0.1541) + ( 17.00 1.304 0.1649) + ( 17.50 1.309 0.1754) + ( 18.00 1.315 0.1845) + ( 18.50 1.320 0.1953) + ( 19.00 1.330 0.2061) + ( 19.50 1.343 0.2170) + ( 20.00 1.354 0.2280) + ( 20.50 1.359 0.2390) + ( 21.00 1.360 0.2536) + ( 22.00 1.325 0.2814) + ( 23.00 1.288 0.3098) + ( 24.00 1.251 0.3386) + ( 25.00 1.215 0.3678) + ( 26.00 1.181 0.3972) + ( 28.00 1.120 0.4563) + ( 30.00 1.076 0.5149) + ( 32.00 1.056 0.5720) + ( 35.00 1.066 0.6548) + ( 40.00 1.064 0.7901) + ( 45.00 1.035 0.9190) + ( 50.00 0.980 1.0378) + ( 55.00 0.904 1.1434) + ( 60.00 0.810 1.2333) + ( 65.00 0.702 1.3055) + ( 70.00 0.582 1.3587) + ( 75.00 0.456 1.3922) + ( 80.00 0.326 1.4063) + ( 85.00 0.197 1.4042) + ( 90.00 0.072 1.3985) + ( 95.00 -0.050 1.3973) + ( 100.00 -0.170 1.3810) + ( 105.00 -0.287 1.3498) + ( 110.00 -0.399 1.3041) + ( 115.00 -0.502 1.2442) + ( 120.00 -0.596 1.1709) + ( 125.00 -0.677 1.0852) + ( 130.00 -0.743 0.9883) + ( 135.00 -0.792 0.8818) + ( 140.00 -0.821 0.7676) + ( 145.00 -0.826 0.6481) + ( 150.00 -0.806 0.5264) + ( 155.00 -0.758 0.4060) + ( 160.00 -0.679 0.2912) + ( 170.00 -0.735 0.0995) + ( 175.00 -0.368 0.0356) + ( 180.00 0.000 0.0202) +); diff --git a/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/DU30_A17 b/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/DU30_A17 new file mode 100755 index 000000000..35fb11988 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/DU30_A17 @@ -0,0 +1,163 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0267) + (-175.00 0.274 0.0370) + (-170.00 0.547 0.0968) + (-160.00 0.685 0.2876) + (-155.00 0.766 0.4025) + (-150.00 0.816 0.5232) + (-145.00 0.836 0.6454) + (-140.00 0.832 0.7656) + (-135.00 0.804 0.8807) + (-130.00 0.756 0.9882) + (-125.00 0.690 1.0861) + (-120.00 0.609 1.1730) + (-115.00 0.515 1.2474) + (-110.00 0.411 1.3084) + (-105.00 0.300 1.3552) + (-100.00 0.182 1.3875) + ( -95.00 0.061 1.4048) + ( -90.00 -0.061 1.4070) + ( -85.00 -0.183 1.3941) + ( -80.00 -0.302 1.3664) + ( -75.00 -0.416 1.3240) + ( -70.00 -0.523 1.2676) + ( -65.00 -0.622 1.1978) + ( -60.00 -0.708 1.1156) + ( -55.00 -0.781 1.0220) + ( -50.00 -0.838 0.9187) + ( -45.00 -0.877 0.8074) + ( -40.00 -0.895 0.6904) + ( -35.00 -0.889 0.5703) + ( -30.00 -0.858 0.4503) + ( -25.00 -0.832 0.3357) + ( -24.00 -0.852 0.3147) + ( -23.00 -0.882 0.2946) + ( -22.00 -0.919 0.2752) + ( -21.00 -0.963 0.2566) + ( -20.00 -1.013 0.2388) + ( -19.00 -1.067 0.2218) + ( -18.00 -1.125 0.2056) + ( -17.00 -1.185 0.1901) + ( -16.00 -1.245 0.1754) + ( -15.25 -1.290 0.1649) + ( -14.24 -1.229 0.1461) + ( -13.24 -1.148 0.1263) + ( -12.22 -1.052 0.1051) + ( -11.22 -0.965 0.0886) + ( -10.19 -0.867 0.0740) + ( -9.70 -0.822 0.0684) + ( -9.18 -0.769 0.0605) + ( -8.18 -0.756 0.0270) + ( -7.19 -0.690 0.0180) + ( -6.65 -0.616 0.0166) + ( -6.13 -0.542 0.0152) + ( -6.00 -0.525 0.0117) + ( -5.50 -0.451 0.0105) + ( -5.00 -0.382 0.0097) + ( -4.50 -0.314 0.0092) + ( -4.00 -0.251 0.0091) + ( -3.50 -0.189 0.0089) + ( -3.00 -0.120 0.0089) + ( -2.50 -0.051 0.0088) + ( -2.00 0.017 0.0088) + ( -1.50 0.085 0.0088) + ( -1.00 0.152 0.0088) + ( -0.50 0.219 0.0088) + ( 0.00 0.288 0.0087) + ( 0.50 0.354 0.0087) + ( 1.00 0.421 0.0088) + ( 1.50 0.487 0.0089) + ( 2.00 0.554 0.0090) + ( 2.50 0.619 0.0091) + ( 3.00 0.685 0.0092) + ( 3.50 0.749 0.0093) + ( 4.00 0.815 0.0095) + ( 4.50 0.879 0.0096) + ( 5.00 0.944 0.0097) + ( 5.50 1.008 0.0099) + ( 6.00 1.072 0.0101) + ( 6.50 1.135 0.0103) + ( 7.00 1.197 0.0107) + ( 7.50 1.256 0.0112) + ( 8.00 1.305 0.0125) + ( 9.00 1.390 0.0155) + ( 9.50 1.424 0.0171) + ( 10.00 1.458 0.0192) + ( 10.50 1.488 0.0219) + ( 11.00 1.512 0.0255) + ( 11.50 1.533 0.0307) + ( 12.00 1.549 0.0370) + ( 12.50 1.558 0.0452) + ( 13.00 1.470 0.0630) + ( 13.50 1.398 0.0784) + ( 14.00 1.354 0.0931) + ( 14.50 1.336 0.1081) + ( 15.00 1.333 0.1239) + ( 15.50 1.326 0.1415) + ( 16.00 1.329 0.1592) + ( 16.50 1.326 0.1743) + ( 17.00 1.321 0.1903) + ( 17.50 1.331 0.2044) + ( 18.00 1.333 0.2186) + ( 18.50 1.340 0.2324) + ( 19.00 1.362 0.2455) + ( 19.50 1.382 0.2584) + ( 20.00 1.398 0.2689) + ( 20.50 1.426 0.2814) + ( 21.00 1.437 0.2943) + ( 22.00 1.418 0.3246) + ( 23.00 1.397 0.3557) + ( 24.00 1.376 0.3875) + ( 25.00 1.354 0.4198) + ( 26.00 1.332 0.4524) + ( 28.00 1.293 0.5183) + ( 30.00 1.265 0.5843) + ( 32.00 1.253 0.6492) + ( 35.00 1.264 0.7438) + ( 40.00 1.258 0.8970) + ( 45.00 1.217 1.0402) + ( 50.00 1.146 1.1686) + ( 55.00 1.049 1.2779) + ( 60.00 0.932 1.3647) + ( 65.00 0.799 1.4267) + ( 70.00 0.657 1.4621) + ( 75.00 0.509 1.4708) + ( 80.00 0.362 1.4544) + ( 85.00 0.221 1.4196) + ( 90.00 0.092 1.3938) + ( 95.00 -0.030 1.3943) + ( 100.00 -0.150 1.3798) + ( 105.00 -0.267 1.3504) + ( 110.00 -0.379 1.3063) + ( 115.00 -0.483 1.2481) + ( 120.00 -0.578 1.1763) + ( 125.00 -0.660 1.0919) + ( 130.00 -0.727 0.9962) + ( 135.00 -0.777 0.8906) + ( 140.00 -0.807 0.7771) + ( 145.00 -0.815 0.6581) + ( 150.00 -0.797 0.5364) + ( 155.00 -0.750 0.4157) + ( 160.00 -0.673 0.3000) + ( 170.00 -0.547 0.1051) + ( 175.00 -0.274 0.0388) + ( 180.00 0.000 0.0267) +); diff --git a/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/DU35_A17 b/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/DU35_A17 new file mode 100755 index 000000000..041013e24 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/DU35_A17 @@ -0,0 +1,155 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0407) + (-175.00 0.223 0.0507) + (-170.00 0.405 0.1055) + (-160.00 0.658 0.2982) + (-155.00 0.733 0.4121) + (-150.00 0.778 0.5308) + (-145.00 0.795 0.6503) + (-140.00 0.787 0.7672) + (-135.00 0.757 0.8785) + (-130.00 0.708 0.9819) + (-125.00 0.641 1.0756) + (-120.00 0.560 1.1580) + (-115.00 0.467 1.2280) + (-110.00 0.365 1.2847) + (-105.00 0.255 1.3274) + (-100.00 0.139 1.3557) + ( -95.00 0.021 1.3692) + ( -90.00 -0.098 1.3680) + ( -85.00 -0.216 1.3521) + ( -80.00 -0.331 1.3218) + ( -75.00 -0.441 1.2773) + ( -70.00 -0.544 1.2193) + ( -65.00 -0.638 1.1486) + ( -60.00 -0.720 1.0660) + ( -55.00 -0.788 0.9728) + ( -50.00 -0.840 0.8705) + ( -45.00 -0.875 0.7611) + ( -40.00 -0.889 0.6466) + ( -35.00 -0.880 0.5299) + ( -30.00 -0.846 0.4141) + ( -25.00 -0.784 0.3030) + ( -24.00 -0.768 0.2817) + ( -23.00 -0.751 0.2608) + ( -22.00 -0.733 0.2404) + ( -21.00 -0.714 0.2205) + ( -20.00 -0.693 0.2011) + ( -19.00 -0.671 0.1822) + ( -18.00 -0.648 0.1640) + ( -17.00 -0.624 0.1465) + ( -16.00 -0.601 0.1300) + ( -15.00 -0.579 0.1145) + ( -14.00 -0.559 0.1000) + ( -13.00 -0.539 0.0867) + ( -12.00 -0.519 0.0744) + ( -11.00 -0.499 0.0633) + ( -10.00 -0.480 0.0534) + ( -5.54 -0.385 0.0245) + ( -5.04 -0.359 0.0225) + ( -4.54 -0.360 0.0196) + ( -4.04 -0.355 0.0174) + ( -3.54 -0.307 0.0162) + ( -3.04 -0.246 0.0144) + ( -3.00 -0.240 0.0240) + ( -2.50 -0.163 0.0188) + ( -2.00 -0.091 0.0160) + ( -1.50 -0.019 0.0137) + ( -1.00 0.052 0.0118) + ( -0.50 0.121 0.0104) + ( 0.00 0.196 0.0094) + ( 0.50 0.265 0.0096) + ( 1.00 0.335 0.0098) + ( 1.50 0.404 0.0099) + ( 2.00 0.472 0.0100) + ( 2.50 0.540 0.0102) + ( 3.00 0.608 0.0103) + ( 3.50 0.674 0.0104) + ( 4.00 0.742 0.0105) + ( 4.50 0.809 0.0107) + ( 5.00 0.875 0.0108) + ( 5.50 0.941 0.0109) + ( 6.00 1.007 0.0110) + ( 6.50 1.071 0.0113) + ( 7.00 1.134 0.0115) + ( 7.50 1.198 0.0117) + ( 8.00 1.260 0.0120) + ( 8.50 1.318 0.0126) + ( 9.00 1.368 0.0133) + ( 9.50 1.422 0.0143) + ( 10.00 1.475 0.0156) + ( 10.50 1.523 0.0174) + ( 11.00 1.570 0.0194) + ( 11.50 1.609 0.0227) + ( 12.00 1.642 0.0269) + ( 12.50 1.675 0.0319) + ( 13.00 1.700 0.0398) + ( 13.50 1.717 0.0488) + ( 14.00 1.712 0.0614) + ( 14.50 1.703 0.0786) + ( 15.50 1.671 0.1173) + ( 16.00 1.649 0.1377) + ( 16.50 1.621 0.1600) + ( 17.00 1.598 0.1814) + ( 17.50 1.571 0.2042) + ( 18.00 1.549 0.2316) + ( 19.00 1.544 0.2719) + ( 19.50 1.549 0.2906) + ( 20.00 1.565 0.3085) + ( 21.00 1.565 0.3447) + ( 22.00 1.563 0.3820) + ( 23.00 1.558 0.4203) + ( 24.00 1.552 0.4593) + ( 25.00 1.546 0.4988) + ( 26.00 1.539 0.5387) + ( 28.00 1.527 0.6187) + ( 30.00 1.522 0.6978) + ( 32.00 1.529 0.7747) + ( 35.00 1.544 0.8869) + ( 40.00 1.529 1.0671) + ( 45.00 1.471 1.2319) + ( 50.00 1.376 1.3747) + ( 55.00 1.249 1.4899) + ( 60.00 1.097 1.5728) + ( 65.00 0.928 1.6202) + ( 70.00 0.750 1.6302) + ( 75.00 0.570 1.6031) + ( 80.00 0.396 1.5423) + ( 85.00 0.237 1.4598) + ( 90.00 0.101 1.4041) + ( 95.00 -0.022 1.4053) + ( 100.00 -0.143 1.3914) + ( 105.00 -0.261 1.3625) + ( 110.00 -0.374 1.3188) + ( 115.00 -0.480 1.2608) + ( 120.00 -0.575 1.1891) + ( 125.00 -0.659 1.1046) + ( 130.00 -0.727 1.0086) + ( 135.00 -0.778 0.9025) + ( 140.00 -0.809 0.7883) + ( 145.00 -0.818 0.6684) + ( 150.00 -0.800 0.5457) + ( 155.00 -0.754 0.4236) + ( 160.00 -0.677 0.3066) + ( 170.00 -0.417 0.1085) + ( 175.00 -0.229 0.0510) + ( 180.00 0.000 0.0407) +); diff --git a/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/DU40_A17 b/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/DU40_A17 new file mode 100755 index 000000000..6138a98dd --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/DU40_A17 @@ -0,0 +1,156 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0602) + (-175.00 0.218 0.0699) + (-170.00 0.397 0.1107) + (-160.00 0.642 0.3045) + (-155.00 0.715 0.4179) + (-150.00 0.757 0.5355) + (-145.00 0.772 0.6535) + (-140.00 0.762 0.7685) + (-135.00 0.731 0.8777) + (-130.00 0.680 0.9788) + (-125.00 0.613 1.0700) + (-120.00 0.532 1.1499) + (-115.00 0.439 1.2174) + (-110.00 0.337 1.2716) + (-105.00 0.228 1.3118) + (-100.00 0.114 1.3378) + ( -95.00 -0.002 1.3492) + ( -90.00 -0.120 1.3460) + ( -85.00 -0.236 1.3283) + ( -80.00 -0.349 1.2964) + ( -75.00 -0.456 1.2507) + ( -70.00 -0.557 1.1918) + ( -65.00 -0.647 1.1204) + ( -60.00 -0.727 1.0376) + ( -55.00 -0.792 0.9446) + ( -50.00 -0.842 0.8429) + ( -45.00 -0.874 0.7345) + ( -40.00 -0.886 0.6215) + ( -35.00 -0.875 0.5067) + ( -30.00 -0.839 0.3932) + ( -25.00 -0.777 0.2849) + ( -24.00 -0.761 0.2642) + ( -23.00 -0.744 0.2440) + ( -22.00 -0.725 0.2242) + ( -21.00 -0.706 0.2049) + ( -20.00 -0.685 0.1861) + ( -19.00 -0.662 0.1687) + ( -18.00 -0.635 0.1533) + ( -17.00 -0.605 0.1398) + ( -16.00 -0.571 0.1281) + ( -15.00 -0.534 0.1183) + ( -14.00 -0.494 0.1101) + ( -13.00 -0.452 0.1036) + ( -12.00 -0.407 0.0986) + ( -11.00 -0.360 0.0951) + ( -10.00 -0.311 0.0931) + ( -8.00 -0.208 0.0930) + ( -6.00 -0.111 0.0689) + ( -5.50 -0.090 0.0614) + ( -5.00 -0.072 0.0547) + ( -4.50 -0.065 0.0480) + ( -4.00 -0.054 0.0411) + ( -3.50 -0.017 0.0349) + ( -3.00 0.003 0.0299) + ( -2.50 0.014 0.0255) + ( -2.00 0.009 0.0198) + ( -1.50 0.004 0.0164) + ( -1.00 0.036 0.0147) + ( -0.50 0.073 0.0137) + ( 0.00 0.137 0.0113) + ( 0.50 0.213 0.0114) + ( 1.00 0.292 0.0118) + ( 1.50 0.369 0.0122) + ( 2.00 0.444 0.0124) + ( 2.50 0.514 0.0124) + ( 3.00 0.580 0.0123) + ( 3.50 0.645 0.0120) + ( 4.00 0.710 0.0119) + ( 4.50 0.776 0.0122) + ( 5.00 0.841 0.0125) + ( 5.50 0.904 0.0129) + ( 6.00 0.967 0.0135) + ( 6.50 1.027 0.0144) + ( 7.00 1.084 0.0158) + ( 7.50 1.140 0.0174) + ( 8.00 1.193 0.0198) + ( 8.50 1.242 0.0231) + ( 9.00 1.287 0.0275) + ( 9.50 1.333 0.0323) + ( 10.00 1.368 0.0393) + ( 10.50 1.400 0.0475) + ( 11.00 1.425 0.0580) + ( 11.50 1.449 0.0691) + ( 12.00 1.473 0.0816) + ( 12.50 1.494 0.0973) + ( 13.00 1.513 0.1129) + ( 13.50 1.538 0.1288) + ( 14.50 1.587 0.1650) + ( 15.00 1.614 0.1845) + ( 15.50 1.631 0.2052) + ( 16.00 1.649 0.2250) + ( 16.50 1.666 0.2467) + ( 17.00 1.681 0.2684) + ( 17.50 1.699 0.2900) + ( 18.00 1.719 0.3121) + ( 19.00 1.751 0.3554) + ( 19.50 1.767 0.3783) + ( 20.50 1.798 0.4212) + ( 21.00 1.810 0.4415) + ( 22.00 1.830 0.4830) + ( 23.00 1.847 0.5257) + ( 24.00 1.861 0.5694) + ( 25.00 1.872 0.6141) + ( 26.00 1.881 0.6593) + ( 28.00 1.894 0.7513) + ( 30.00 1.904 0.8441) + ( 32.00 1.915 0.9364) + ( 35.00 1.929 1.0722) + ( 40.00 1.903 1.2873) + ( 45.00 1.820 1.4796) + ( 50.00 1.690 1.6401) + ( 55.00 1.522 1.7609) + ( 60.00 1.323 1.8360) + ( 65.00 1.106 1.8614) + ( 70.00 0.880 1.8347) + ( 75.00 0.658 1.7567) + ( 80.00 0.449 1.6334) + ( 85.00 0.267 1.4847) + ( 90.00 0.124 1.3879) + ( 95.00 0.002 1.3912) + ( 100.00 -0.118 1.3795) + ( 105.00 -0.235 1.3528) + ( 110.00 -0.348 1.3114) + ( 115.00 -0.453 1.2557) + ( 120.00 -0.549 1.1864) + ( 125.00 -0.633 1.1041) + ( 130.00 -0.702 1.0102) + ( 135.00 -0.754 0.9060) + ( 140.00 -0.787 0.7935) + ( 145.00 -0.797 0.6750) + ( 150.00 -0.782 0.5532) + ( 155.00 -0.739 0.4318) + ( 160.00 -0.664 0.3147) + ( 170.00 -0.410 0.1144) + ( 175.00 -0.226 0.0702) + ( 180.00 0.000 0.0602) +); diff --git a/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/NACA64_A17 b/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/NACA64_A17 new file mode 100755 index 000000000..11fa618d0 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/constant/airfoilProperties/NACA64_A17 @@ -0,0 +1,147 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0198) + (-175.00 0.374 0.0341) + (-170.00 0.749 0.0955) + (-160.00 0.659 0.2807) + (-155.00 0.736 0.3919) + (-150.00 0.783 0.5086) + (-145.00 0.803 0.6267) + (-140.00 0.798 0.7427) + (-135.00 0.771 0.8537) + (-130.00 0.724 0.9574) + (-125.00 0.660 1.0519) + (-120.00 0.581 1.1355) + (-115.00 0.491 1.2070) + (-110.00 0.390 1.2656) + (-105.00 0.282 1.3104) + (-100.00 0.169 1.3410) + ( -95.00 0.052 1.3572) + ( -90.00 -0.067 1.3587) + ( -85.00 -0.184 1.3456) + ( -80.00 -0.299 1.3181) + ( -75.00 -0.409 1.2765) + ( -70.00 -0.512 1.2212) + ( -65.00 -0.606 1.1532) + ( -60.00 -0.689 1.0731) + ( -55.00 -0.759 0.9822) + ( -50.00 -0.814 0.8820) + ( -45.00 -0.850 0.7742) + ( -40.00 -0.866 0.6610) + ( -35.00 -0.860 0.5451) + ( -30.00 -0.829 0.4295) + ( -25.00 -0.853 0.3071) + ( -24.00 -0.870 0.2814) + ( -23.00 -0.890 0.2556) + ( -22.00 -0.911 0.2297) + ( -21.00 -0.934 0.2040) + ( -20.00 -0.958 0.1785) + ( -19.00 -0.982 0.1534) + ( -18.00 -1.005 0.1288) + ( -17.00 -1.082 0.1037) + ( -16.00 -1.113 0.0786) + ( -15.00 -1.105 0.0535) + ( -14.00 -1.078 0.0283) + ( -13.50 -1.053 0.0158) + ( -13.00 -1.015 0.0151) + ( -12.00 -0.904 0.0134) + ( -11.00 -0.807 0.0121) + ( -10.00 -0.711 0.0111) + ( -9.00 -0.595 0.0099) + ( -8.00 -0.478 0.0091) + ( -7.00 -0.375 0.0086) + ( -6.00 -0.264 0.0082) + ( -5.00 -0.151 0.0079) + ( -4.00 -0.017 0.0072) + ( -3.00 0.088 0.0064) + ( -2.00 0.213 0.0054) + ( -1.00 0.328 0.0052) + ( 0.00 0.442 0.0052) + ( 1.00 0.556 0.0052) + ( 2.00 0.670 0.0053) + ( 3.00 0.784 0.0053) + ( 4.00 0.898 0.0054) + ( 5.00 1.011 0.0058) + ( 6.00 1.103 0.0091) + ( 7.00 1.181 0.0113) + ( 8.00 1.257 0.0124) + ( 8.50 1.293 0.0130) + ( 9.00 1.326 0.0136) + ( 9.50 1.356 0.0143) + ( 10.00 1.382 0.0150) + ( 10.50 1.400 0.0267) + ( 11.00 1.415 0.0383) + ( 11.50 1.425 0.0498) + ( 12.00 1.434 0.0613) + ( 12.50 1.443 0.0727) + ( 13.00 1.451 0.0841) + ( 13.50 1.453 0.0954) + ( 14.00 1.448 0.1065) + ( 14.50 1.444 0.1176) + ( 15.00 1.445 0.1287) + ( 15.50 1.447 0.1398) + ( 16.00 1.448 0.1509) + ( 16.50 1.444 0.1619) + ( 17.00 1.438 0.1728) + ( 17.50 1.439 0.1837) + ( 18.00 1.448 0.1947) + ( 18.50 1.452 0.2057) + ( 19.00 1.448 0.2165) + ( 19.50 1.438 0.2272) + ( 20.00 1.428 0.2379) + ( 21.00 1.401 0.2590) + ( 22.00 1.359 0.2799) + ( 23.00 1.300 0.3004) + ( 24.00 1.220 0.3204) + ( 25.00 1.168 0.3377) + ( 26.00 1.116 0.3554) + ( 28.00 1.015 0.3916) + ( 30.00 0.926 0.4294) + ( 32.00 0.855 0.4690) + ( 35.00 0.800 0.5324) + ( 40.00 0.804 0.6452) + ( 45.00 0.793 0.7573) + ( 50.00 0.763 0.8664) + ( 55.00 0.717 0.9708) + ( 60.00 0.656 1.0693) + ( 65.00 0.582 1.1606) + ( 70.00 0.495 1.2438) + ( 75.00 0.398 1.3178) + ( 80.00 0.291 1.3809) + ( 85.00 0.176 1.4304) + ( 90.00 0.053 1.4565) + ( 95.00 -0.074 1.4533) + ( 100.00 -0.199 1.4345) + ( 105.00 -0.321 1.4004) + ( 110.00 -0.436 1.3512) + ( 115.00 -0.543 1.2874) + ( 120.00 -0.640 1.2099) + ( 125.00 -0.723 1.1196) + ( 130.00 -0.790 1.0179) + ( 135.00 -0.840 0.9064) + ( 140.00 -0.868 0.7871) + ( 145.00 -0.872 0.6627) + ( 150.00 -0.850 0.5363) + ( 155.00 -0.798 0.4116) + ( 160.00 -0.714 0.2931) + ( 170.00 -0.749 0.0971) + ( 175.00 -0.374 0.0334) + ( 180.00 0.000 0.0198) +); diff --git a/exampleCases/example.ADM.ssc.timeTable/constant/polyMesh/blockMeshDict b/exampleCases/example.ADM.ssc.timeTable/constant/polyMesh/blockMeshDict new file mode 100755 index 000000000..463f233e0 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/constant/polyMesh/blockMeshDict @@ -0,0 +1,101 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object blockMeshDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../../setUp" + + + + +convertToMeters 1.0; + +vertices +( + ( $xMin $yMin $zMin) + ( $xMax $yMin $zMin) + ( $xMax $yMax $zMin) + ( $xMin $yMax $zMin) + ( $xMin $yMin $zMax) + ( $xMax $yMin $zMax) + ( $xMax $yMax $zMax) + ( $xMin $yMax $zMax) +); + +blocks +( + hex (0 1 2 3 4 5 6 7) ($nx $ny $nz) simpleGrading (1 1 1) +); + +edges +( +); + +boundary +( + lower + { + type wall; + faces + ( + (0 3 2 1) + ); + } + upper + { + type wall; + faces + ( + (4 5 6 7) + ); + } + west + { + type patch; + faces + ( + (0 4 7 3) + ); + } + east + { + type patch; + faces + ( + (1 2 6 5) + ); + } + north + { + type wall; + faces + ( + (3 7 6 2) + ); + } + south + { + type wall; + faces + ( + (0 1 5 4) + ); + } +); + +mergePatchPairs +( +); + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.timeTable/constant/transportProperties b/exampleCases/example.ADM.ssc.timeTable/constant/transportProperties new file mode 100755 index 000000000..3ee719c86 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/constant/transportProperties @@ -0,0 +1,39 @@ +/*---------------------------------------------------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.openfoam.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + + root ""; + case ""; + instance ""; + local ""; + + class dictionary; + object transportProperties; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +transportModel Newtonian; + +// Molecular viscosity +nu nu [0 2 -1 0 0 0 0] $nu; + +// Reference temperature +TRef TRef [0 0 0 1 0 0 0] $TRef; + +// Prandtl numbers +Pr Pr [0 0 0 0 0 0 0] $Pr; +Prt Prt [0 0 0 0 0 0 0] $Prt; +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.timeTable/constant/turbineArrayProperties b/exampleCases/example.ADM.ssc.timeTable/constant/turbineArrayProperties new file mode 100755 index 000000000..832c5e297 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/constant/turbineArrayProperties @@ -0,0 +1,78 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object turbineProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +globalProperties +{ + outputControl "timeStep"; +// outputControl "runTime"; + outputInterval 1; +} + +// _SSC_ +sscProperties +{ + sscEnabled true; //Enable or disable SSC. If sscProperties{} not present, defaults to 'false' + nInputsToSSC 3; // Number of inputs EACH turbine passes to the super controller + nOutputsFromSSC 2; // Number of outputs the super controller sends to EACH turbine + sscControllerType "timeTableSSC"; // The type of SSC +} + +turbine0 +{ + turbineType "NREL5MWRef"; + baseLocation (500.0 500.0 0.0); + nRadial 64; + azimuthMaxDis 2.0; + nAvgSector 1; + pointDistType "uniform"; + pointInterpType "linear"; + bladeUpdateType "oldPosition"; + epsilon 20.0; + forceScalar 1.0; + inflowVelocityScalar 0.94; + tipRootLossCorrType "Glauert"; + rotationDir "cw"; + Azimuth 0.0; + RotSpeed 9.15519863; + TorqueGen 0.0; + Pitch 0.0; + NacYaw 270.0; + fluidDensity 1.225; +} + +turbine1 +{ + turbineType "NREL5MWRef"; + baseLocation (1000.0 500.0 0.0); + nRadial 64; + azimuthMaxDis 2.0; + nAvgSector 1; + pointDistType "uniform"; + pointInterpType "linear"; + bladeUpdateType "oldPosition"; + epsilon 20.0; + forceScalar 1.0; + inflowVelocityScalar 0.94; + tipRootLossCorrType "Glauert"; + rotationDir "cw"; + Azimuth 0.0; + RotSpeed 9.15519863; + TorqueGen 0.0; + Pitch 0.0; + NacYaw 270.0; + fluidDensity 1.225; +} \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc.timeTable/constant/turbineProperties/NREL5MWRef b/exampleCases/example.ADM.ssc.timeTable/constant/turbineProperties/NREL5MWRef new file mode 100755 index 000000000..c51e9a8fd --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/constant/turbineProperties/NREL5MWRef @@ -0,0 +1,122 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object turbineProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +NumBl 3; +TipRad 63.0; +HubRad 1.5; +UndSling 0.0; +OverHang -5.01910; +NacelleLength 8; +NacelleFrontalArea 2; +NacelleCd 0.5; +TowerHt 87.6; +Twr2Shft 1.96256; +ShftTilt -5.0; +PreCone (-2.5 -2.5 -2.5); +GBRatio 97.0; +GBEfficiency 1.0; +GenEfficiency 0.944; +RatedRotSpeed 12.1; +GenIner 534.116; +HubIner 115.926E3; +BladeIner 11.776047E6; +GenTorqueControllerType "fiveRegion"; +//GenTorqueControllerType "speedTorqueTable"; +//GenTorqueControllerType "none"; +BladePitchControllerType "PIDSC"; +//BladePitchControllerType "none"; +NacYawControllerType "yawSC"; +RotSpeedLimiter false; +GenTorqueRateLimiter true; +NacYawRateLimiter true; +BladePitchRateLimiter true; +SpeedFilterCornerFrequency 2.0; + + +GenTorqueControllerParams +{ + RateLimitGenTorque 15.0E3; + SpeedTorqueTable + ( + // gen speed (RPM) gen torque (N-m) + ( 670.00 0.0 ) + ( 871.00 20000.0 ) + ( 1161.96 32000.0 ) + ( 1173.70 43093.6 ) + ); + CutInGenSpeed 670.0; + Region2StartGenSpeed 871.0; + Region2EndGenSpeed 1161.963; + CutInGenTorque 0.0; + RatedGenTorque 43.09355E3; + KGen 2.55764E-2; +} + +BladePitchControllerParams +{ + RateLimitBladePitch 8.000; + PitchMin 0.000; + PitchMax 90.000; + PitchK 6.302336; + PitchControlKP 1.82620057; + PitchControlKI 0.78265750; + PitchControlKD 0.000; +} + +NacYawControllerParams +{ + RateLimitNacYaw 2.0; +} + + + + +Airfoils +( + "Cylinder1" + "Cylinder2" + "DU40_A17" + "DU35_A17" + "DU30_A17" + "DU25_A17" + "DU21_A17" + "NACA64_A17" +); + + + +BladeData +( +// radius(m) c(m) twist(deg) airfoil + (2.8667 3.542 13.308 0) + (5.6 3.854 13.308 0) + (8.3333 4.167 13.308 1) + (11.75 4.557 13.308 2) + (15.85 4.652 11.48 3) + (19.95 4.458 10.162 3) + (24.05 4.249 9.011 4) + (28.15 4.007 7.795 5) + (32.25 3.748 6.544 5) + (36.35 3.502 5.361 6) + (40.45 3.256 4.188 6) + (44.55 3.01 3.125 7) + (48.65 2.764 2.319 7) + (52.75 2.518 1.526 7) + (56.1667 2.313 0.863 7) + (58.9 2.086 0.37 7) + (61.6333 1.419 0.106 7) +); diff --git a/exampleCases/example.ADM.ssc.timeTable/constant/turbulenceProperties b/exampleCases/example.ADM.ssc.timeTable/constant/turbulenceProperties new file mode 100755 index 000000000..f8a545e0c --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/constant/turbulenceProperties @@ -0,0 +1,22 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object turbulenceProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +// simulationType RASModel; + simulationType LESModel; +// simulationType laminar; + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.timeTable/runscript.preprocess b/exampleCases/example.ADM.ssc.timeTable/runscript.preprocess new file mode 100755 index 000000000..51edac6ff --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/runscript.preprocess @@ -0,0 +1,155 @@ +#!/bin/bash +#PBS -N ADM_pisoFoam_preprocess +#PBS -l nodes=1:ppn=1 + + +# User Input. +OpenFOAMversion=2.4.x_SSC # OpenFOAM version +startTime=0 # Start time +updateBCType=0 # Boolean for whether or not the boundary condition types will be updated over + # what is in the initial conditions files. Leave it 0 for precursors. +inflowDir='west' # For inflow/outflow cases, specify the inflow direction. Choices are 'west', + # 'east', 'south', 'west', 'southWest', 'northWest', 'southEast', and + # 'northEast'. +refineMeshLocal=0 # Number of levels of local refinement (requires system/topoSetDict and + # system/refineHexMeshDict). +refineMeshGlobal=0 # Number of levels of global refinement. +parallel=0 # parallel untested! # Boolean for whether or not the preprocessing is run in parallel. +cores=1 # Enter the number of cores you will preprocess on. + + + + + + +# Define some functions for mesh refinement. +# Local refinement performed on one core. +refineMeshLocal() +{ + i=$1 + while [ $i -ge 1 ] + do + echo " -Performing level $i local refinement with topoSet/refineHexMesh" + echo " *selecting cells to refine..." + topoSet -dict system/topoSetDict.local.$i > log.topoSet.local.$i 2>&1 + + echo " *refining cells..." + refineHexMesh local -overwrite > log.refineHexMesh.local.$i 2>&1 + + let i=i-1 + done +} + +# Global refinement performed in parallel. +refineMeshGlobal() +{ + i=1 + while [ $i -le $1 ] + do + echo " -Performing level $i global refinement with refineMesh" + echo " *refining cells..." + mpirun -np $cores refineMesh -parallel -overwrite > log.refineMesh.global.$i 2>&1 + + let i=i+1 + done +} + + +# If running in parallel, cd to job launch directory +if [ $parallel -eq 1 ] + then + cd $PBS_O_WORKDIR +fi + + +# Source the bash profile and then call the appropriate OpenFOAM version function +# so that all the modules and environment variables get set. +echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." +source $HOME/.bash_profile +OpenFOAM-$OpenFOAMversion + + +# Copy the controlDict.1 (assuming this is the one the actual solver will start +# out with) to controlDict. OpenFOAM reads "controlDict", not the numbered ones. +echo "Getting the control dictionary ready..." +cp system/controlDict.1 system/controlDict + + +# Copy the "clean" .original initial fields to a working copy. OpenFOAM does not +# read the ".original" initial fields--that's why they remain clean. +echo "Getting the initial condition directory ready..." +rm -rf $startTime +cp -rf $startTime.original $startTime + + +# Build the mesh. +echo "Using blockMesh to create the base mesh..." +cp constant/polyMesh/blockMeshDict ./ +rm -rf constant/polyMesh/* +mv ./blockMeshDict constant/polyMesh +blockMesh > log.blockMesh 2>&1 + + +# The initial fields come from the precursor which is periodic on all sides. The turbine +# case has inflow and outflow. Call the changeDictionary utility to make the south and +# north sides inflow and outflow. +if [ $updateBCType -eq 1 ] + then + echo "Using changeDictionary to update boundary conditions..." + changeDictionary -dict system/changeDictionaryDict.updateBCs.$inflowDir > log.changeDictionary.updateBCs.$inflowDir.1 2>&1 +fi + + +# Do serial local refinement +echo "Using refineHexMesh to perform " $refineMeshLocal " of local refinement..." +refineMeshLocal $refineMeshLocal + + +# If running in paralle from this point forward, then do the following: +if [ $cores -gt 1 ] + then + # Decompose the mesh and solution files (serial) + echo "Using decomposePar to decompose the problem for parallel processing..." + decomposePar -cellDist -force > log.decomposePar 2>&1 + + # Check the mesh + echo "Running checkMesh to report mesh diagnostics..." + mpirun -np $cores checkMesh -parallel > log.checkMesh.1 2>&1 + + # Perform global refinement to desired resolution. + echo "Using refineMesh to perform " $refineMeshGlobal " of global refinement..." + refineMeshGlobal $refineMeshGlobal + + # The mesh got globally refined, but the solution file did not, so + # the boundary fields may not have the correct number of entries. + # Use the changeDictionary utility to overwrite the spatially varying + # boundary data to a uniform single value. + if [ $updateBCType -eq 1 ] + then + echo "Using changeDictionary to ensure that the boundaries have the correct number of faces..." + mpirun -np $cores changeDictionary -dict system/changeDictionaryDict.updateBCs.$inflowDir -parallel > log.changeDictionary.updateBCs.$inflowDir.1 2>&1 + fi + + # Renumber the mesh for better matrix solver performance. + echo "Using renumberMesh to renumber the mesh for better matrix conditioning..." + mpirun -np $cores renumberMesh -parallel -overwrite > log.renumberMesh 2>&1 + + # Do one last check on the mesh. + echo "Running checkMesh to report mesh diagnostics..." + mpirun -np $cores checkMesh -parallel > log.checkMesh.3 2>&1 + + +# Otherwise, run in serial as follows: +else + # Renumber the mesh. + echo "Using renumberMesh to renumber the mesh for better matrix conditioning..." + renumberMesh -overwrite > log.renumberMesh 2>&1 + + # Decompose the mesh and solution files (serial) + echo "Using decomposePar to decompose the problem for parallel processing..." + decomposePar -cellDist -force > log.decomposePar 2>&1 + + # Check the mesh. + echo "Running checkMesh to report mesh diagnostics..." + checkMesh > log.checkMesh.1 2>&1 +fi diff --git a/exampleCases/example.ADM.ssc.timeTable/runscript.removeAll b/exampleCases/example.ADM.ssc.timeTable/runscript.removeAll new file mode 100755 index 000000000..463332f98 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/runscript.removeAll @@ -0,0 +1,21 @@ +#!/bin/bash + +# Remove initial conditions and temporary files +rm -rf 0 +rm -rf system/controlDict + +# Remove logs +rm -rf log.* +rm -rf runscript.solve.1.o* runscript.solve.1.e* + +# Remove processor files and folders +rm -rf processor* + +# Remove simulation output +rm -rf postProcessing +rm -rf turbineOutput + +# Remove polyMesh data +cp constant/polyMesh/blockMeshDict ./ +rm -rf constant/polyMesh/* +mv ./blockMeshDict constant/polyMesh \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc.timeTable/runscript.solve.1 b/exampleCases/example.ADM.ssc.timeTable/runscript.solve.1 new file mode 100755 index 000000000..94a4be63b --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/runscript.solve.1 @@ -0,0 +1,40 @@ +#!/bin/bash +#PBS -l walltime=48:00:00 +#PBS -l nodes=1:ppn=8 +#PBS -N "ADM.ssc.timeTable" + + + +cd $PBS_O_WORKDIR + + + + +# User Input. +OpenFOAMversion=2.4.x_SSC # OpenFOAM version +startTime=0 # Start time +cores=8 # Enter the number of cores you will preprocess on. +runNumber=1 # Enter the run number (useful for keeping track of restarts). +solver=pisoFoamTurbine.ADM # Enter the name of the flow solver. + + + +echo "Starting OpenFOAM job at: " $(date) +echo "using " $cores " cores" + + +# Source the bash profile and then call the appropriate OpenFOAM version function +# so that all the modules and environment variables get set. +echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." +source $HOME/.bash_profile +OpenFOAM-$OpenFOAMversion + + +# Get the control dictionary for this particular run. +cp system/controlDict.$runNumber system/controlDict + + +# Run the solver. +mpirun -np $cores $solver -parallel > log.$runNumber.$solver 2>&1 + +echo "Ending OpenFOAM job at: " $(date) \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc.timeTable/setUp b/exampleCases/example.ADM.ssc.timeTable/setUp new file mode 100755 index 000000000..d8b785305 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/setUp @@ -0,0 +1,93 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.4.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +// Domain size and number of cells. +xMin 0.0; // Minimum x-extent of domain (m). +yMin 0.0; // Minimum y-extent of domain (m). +zMin 0.0; // Minimum z-extent of domain (m). +xMax 1500.0; // Maximum x-extent of domain (m). +yMax 1000.0; // Maximum y-extent of domain (m). +zMax 1000.0; // Maximum z-extent of domain (m). +nx 100; // Number of cells in x-direction. +ny 66; // Number of cells in y-direction. +nz 66; // Number of cells in z-direction. + + + + +// Number of cores and domain decomposition information. +nCores 8; // Number of cores on which to run this case. +decompType simple; // Decomposition algorithm. "simple" and "scotch" are good choices. +decompOrder (4 2 1); // Order of the decomposition number of partitions in (x y z)-directions. + + + + +// Planar averaging and source term statistics options. +statisticsOn true; // Gather planar-averaged flow statistics. +statisticsFrequency 5; // Frequency in time steps of statistics gathering. + + + + +// Initial values for the variables. +// Note that U and T get overwritten if setFieldsABL is called. +U0Mag 8.00; // Initial condition for wind speed (m/s). +dir 270.0; // Initial condition for wind direction (deg). +windHeight 90.0; // Height at which to drive mean wind to U0Mag/dir (m). +p_rgh0 0.0; // Initial pressure (minus the hydrostatic variation and normalized by density) (m^2/s^2). +nuSgs0 0.0; // Initial SGS viscosity (m^2/s). +k0 0.1; // Initial SGS turbulent kinetic energy (m^2/s^2). +kappat0 0.0; // Initial SGS temperature diffusivity (m^2/s). +TGradUpper 0.003; // Potential temperature gradient above the strong inversion (K/m). +zInversion 750.0; // Height of the middle of the initial strong capping inversion (m). +inversionWidth 100.0; // Vertical width of the intial strong capping inversion (m). +TBottom 300.0; // Initial potential temperature at bottom of strong capping inversion (K). +TTop 305.0; // Initial potential temperature at top of strong capping inversion (K). + + + + +// General conditions and parameters. +Pr 0.7; // Molecular Prandtl number. +Prt 0.33333333; // Turbulent Prandtl number. +nu 1.0E-5; // Molecular viscosity (m^2/s). +TRef 300.0; // Reference potential temperature (K). +latitude 41.3; // Latitude on the Earth of the site (deg). +EarthPeriod 24.0; // Earth's rotation period (hr). + + + + +// SGS model inputs. +LESModel oneEqEddy; // SGS model selection. +ce 0.93; // SGS model constant. +ck 0.0673; // SGS model constant. + + + + +// Surface conditions. +qwall (0.0 0.0 0.0); // Temperature flux at wall (modify the z-value). A negative value is flux into domain (K-m/s). +Rwall (0.0 0.0 0.0 0.0 0.0 0.0); // Initial wall shear stress (m^2/s^2). +kappa 0.4; // von Karman constant. +z0 0.01; // Surface roughness (m). +betaM 16.0; // Monin-Obukhov wall shear stress model constant. +gammaM 5.0; // Monin-Obukhov wall shear stress model constant. +betaH 9.0; // Monin-Obukhov wall temperature flux model constant. +gammaH 7.8; // Monin-Obukhov wall temperature flux model constant. +alphaH 1.0; // Monin-Obukhov wall temperature flux model constant. +heatingRate 0.0; // Surface temperature change rate (when not directly setting temperature flux) (K/s). + + + + +#inputMode merge + +// ************************************************************************* // + diff --git a/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs b/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs new file mode 100755 index 000000000..b4ab16ba4 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs @@ -0,0 +1,200 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.cyclic b/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.cyclic new file mode 100755 index 000000000..9d7df3a40 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.cyclic @@ -0,0 +1,238 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + U + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + k + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + kappat + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + nuSgs + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + p_rgh + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.east b/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.east new file mode 100755 index 000000000..75ea86de5 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.east @@ -0,0 +1,290 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.north b/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.north new file mode 100755 index 000000000..ab34b5c5a --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.north @@ -0,0 +1,200 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + south + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + south + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + south + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + north + { + type fixedFluxPressure; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.northeast b/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.northeast new file mode 100755 index 000000000..9ef569c78 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.northeast @@ -0,0 +1,290 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + south + { + type zeroGradient; + value uniform 300; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + south + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + south + { + type zeroGradient; + value uniform 0.1; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + north + { + type fixedFluxPressure; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.northwest b/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.northwest new file mode 100755 index 000000000..f62b02acb --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.northwest @@ -0,0 +1,290 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + south + { + type zeroGradient; + value uniform 300; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + east + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + south + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + south + { + type zeroGradient; + value uniform 0.1; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + east + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + north + { + type fixedFluxPressure; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedFluxPressure; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.south b/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.south new file mode 100755 index 000000000..b4ab16ba4 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.south @@ -0,0 +1,200 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.southeast b/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.southeast new file mode 100755 index 000000000..88a7ebf76 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.southeast @@ -0,0 +1,290 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.southwest b/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.southwest new file mode 100755 index 000000000..6e9078e8e --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.southwest @@ -0,0 +1,290 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + east + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + east + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedFluxPressure; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.west b/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.west new file mode 100755 index 000000000..7dec20912 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/system/changeDictionaryDict.updateBCs.west @@ -0,0 +1,200 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + east + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + east + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + west + { + type fixedFluxPressure; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.timeTable/system/controlDict.1 b/exampleCases/example.ADM.ssc.timeTable/system/controlDict.1 new file mode 100755 index 000000000..92a8952aa --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/system/controlDict.1 @@ -0,0 +1,66 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object controlDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + + application ABLSolver; + + libs ("libuserfiniteVolume.so" "libuserincompressibleLESModels.so"); + + startFrom startTime; + + startTime 0.0; + + stopAt endTime; + + endTime 1000.0; + + deltaT 0.5; + + writeControl adjustableRunTime; + + writeInterval 99000.0; + + purgeWrite 0; + + writeFormat ascii; + + writePrecision 8; + + writeCompression compressed; + + timeFormat general; + + timePrecision 8; + + runTimeModifiable yes; + + adjustTimeStep no; + + maxCo 0.75; + + maxDeltaT 25.0; + + startTimeMean 1000.0; + + startTimeCorr 1000.0; + + functions + { + #include "sampling/sliceDataInstantaneous" + } + +// ************************************************************************* // + diff --git a/exampleCases/example.ADM.ssc.timeTable/system/decomposeParDict b/exampleCases/example.ADM.ssc.timeTable/system/decomposeParDict new file mode 100755 index 000000000..c7bea2ee8 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/system/decomposeParDict @@ -0,0 +1,76 @@ +/*-------------------------------*- C++ -*---------------------------------*\ +| ========= | +| \\ / OpenFOAM | +| \\ / | +| \\ / The Open Source CFD Toolbox | +| \\/ http://www.OpenFOAM.org | +\*-------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + note "mesh decomposition control dictionary"; + location "system"; + object decomposeParDict; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +numberOfSubdomains $nCores; +method $decompType; +//preservePatches (north south east west); + +simpleCoeffs +{ + n $decompOrder; + delta 0.001; +} + +hierarchicalCoeffs +{ + n (1 1 3); + delta 0.001; + order xyz; +} + +metisCoeffs +{ + processorWeights + ( + ); +} + +scotchCoeffs +{ + //processorWeights + //( + // 1 + // 1 + // 1 + // 1 + //); + //writeGraph true; + //strategy "b"; +} + +manualCoeffs +{ + dataFile "decompositionData"; +} + + +//// Is the case distributed +distributed no; +//// Per slave (so nProcs-1 entries) the directory above the case. +//roots +//( +// "/tmp" +// "/tmp" +//); + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.timeTable/system/fvSchemes b/exampleCases/example.ADM.ssc.timeTable/system/fvSchemes new file mode 100755 index 000000000..ead2aeb21 --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/system/fvSchemes @@ -0,0 +1,85 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSchemes; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +ddtSchemes +{ + default backward; +// default CrankNicolson 1.0; +} + +gradSchemes +{ + default Gauss linear; + grad(U) Gauss linear; +} + +divSchemes +{ + default Gauss linear; + //div(phi,U) Gauss linear; + //div(phi,T) Gauss linear; + div(phi,U) Gauss localBlended linear upwind; + div(phi,T) Gauss localBlended linear upwind; + div(R) Gauss linear; + div(U) Gauss linear; + div((nuEff*dev(grad(U).T()))) Gauss linear; + div(B) Gauss linear; + div(phi,B) Gauss linear; + div(phi,k) Gauss linear; +} + +laplacianSchemes +{ + default Gauss linear uncorrected; + laplacian(rUA,p) Gauss linear uncorrected; + laplacian((1|A(U)),p) Gauss linear uncorrected; + laplacian(interpolate((1|A(U))),p) Gauss linear uncorrected; + laplacian(interpolate((1|A(U))),pd) Gauss linear uncorrected; + laplacian(nu,U) Gauss linear uncorrected; + laplacian(nuEff,U) Gauss linear uncorrected; + laplacian(kappaEff,T) Gauss linear uncorrected; + laplacian(DBEff,B) Gauss linear uncorrected; + laplacian(nuSgs,U) Gauss linear uncorrected; +} + +interpolationSchemes +{ + default linear; +} + +snGradSchemes +{ + default uncorrected; +} + +fluxRequired +{ + default no; + p ; +} + +schemeBlending +{ + xBlending1 -10.0; + xBlending2 0.0; + xBlending3 60.0; + xBlending4 70.0; + blendingFactor1 0.85; + blendingFactor2 1.00; +} + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.timeTable/system/fvSolution b/exampleCases/example.ADM.ssc.timeTable/system/fvSolution new file mode 100755 index 000000000..b3f1a7e4a --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/system/fvSolution @@ -0,0 +1,102 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSolution; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +solvers +{ + "(p_rgh|p)" + { + solver PCG; + preconditioner + { + preconditioner GAMG; + tolerance 1e-05; + relTol 0.01; + smoother DICGaussSeidel; + nPreSweeps 0; + nPostSweeps 2; + nFinestSweeps 2; + cacheAgglomeration true; + nCellsInCoarsestLevel 100; + agglomerator faceAreaPair; + mergeLevels 2; + } + tolerance 1e-06; + relTol 0.01; + maxIter 1000; + } + + "(p_rghFinal|pFinal)" + { + $p; + relTol 0.0; + } + + "(U|T|k|epsilon|R)" + { + solver PBiCG; + preconditioner DILU; + tolerance 1e-6; + relTol 0.1; + maxIter 1000; + } + + "(U|T|k|epsilon|R)Final" + { + $U; + relTol 0.0; + } + + "(flm|fmm)" + { + solver PBiCG; + preconditioner DILU; + tolerance 1e-6; + relTol 0.1; + } + + "(flm|fmm)Final" + { + $flm; + relTol 0.0; + } + + +} + +PISO +{ + momentumPredictor yes; + nOuterCorrectors 1; + nCorrectors 3; + nNonOrthogonalCorrectors 0; + pRefPoint (-39.0 0 11.5); + pRefValue 0; +} + +relaxationFactors +{ + fields + { + } + equations + { + "(U|T|k|epsilon|R)" 1.0; + "(U|T|k|epsilon|R)Final" 1.0; + } +} + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.timeTable/system/sampling/sliceDataInstantaneous b/exampleCases/example.ADM.ssc.timeTable/system/sampling/sliceDataInstantaneous new file mode 100755 index 000000000..d80b1da9d --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/system/sampling/sliceDataInstantaneous @@ -0,0 +1,59 @@ + sliceDataInstantaneous + { + type surfaces; + functionObjectLibs ("libsampling.so"); + enabled true; + interpolationScheme cell; + outputControl adjustableTime; + writeInterval 5; + surfaceFormat vtk; + fields + ( + U + ); + surfaces + ( + slice_horizontal + { + type plane; + basePoint (1500.01 1500.01 90.01); + normalVector (0 0 1); + triangulate false; + } + slice_vertical_x500 + { + type plane; + basePoint (500.01 1500.01 90.01); + normalVector (1 0 0); + triangulate false; + } + slice_vertical_x3D + { + type plane; + basePoint (1379.2 1500.01 90.01); + normalVector (1 0 0); + triangulate false; + } + slice_vertical_x5D + { + type plane; + basePoint (1632.0 1500.01 90.01); + normalVector (1 0 0); + triangulate false; + } + slice_vertical_x7D + { + type plane; + basePoint (1884.8 1500.01 90.01); + normalVector (1 0 0); + triangulate false; + } + slice_vertical_x10D + { + type plane; + basePoint (2264.0 1500.01 90.01); + normalVector (1 0 0); + triangulate false; + } + ); + } diff --git a/exampleCases/example.ADM.ssc.timeTable/system/setFieldsABLDict b/exampleCases/example.ADM.ssc.timeTable/system/setFieldsABLDict new file mode 100755 index 000000000..11b48e0bc --- /dev/null +++ b/exampleCases/example.ADM.ssc.timeTable/system/setFieldsABLDict @@ -0,0 +1,504 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + + root ""; + case ""; + instance ""; + local ""; + + class dictionary; + object setFieldsABLDict; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +// Extents of the domain. +xMin $xMin; +yMin $yMin; +zMin $zMin; + +xMax $xMax; +yMax $yMax; +zMax $zMax; + +zRef $zMax; + +// Specify if distance from wall should be used as z. +useWallDistZ false; +scaleVelocityWithHeight false; + + +// Specify how to initialze the base velocity and temperature profile. +velocityInitType "table"; +//velocityInitType "log"; +//velocityInitType "geostrophic"; +temperatureInitType "table"; +//temperatureInitType "simple"; + +// Maximum perturbation of streamwise/spanwise flow near surface. +deltaU 0.25; +deltaV 0.25; + +// Total periods of perturbations in streamwise/spanwise in the domain. +Uperiods 12.0; +Vperiods 12.0; + +// Percentage of domain height (zMax) where peak in perturbation +// magnitude occurs. +zPeak 0.015; + +// Initial height of the center of the capping inversion. +zInversion $zInversion; + +// Width of the capping inversion. +widthInversion $inversionWidth; + +// Potential temperature at the bottom and top of the capping inversion. +Tbottom $TBottom; +Ttop $TTop; + +// Maximum temperature fluctuation size below capping inversion. +TPrimeScale 0.0; + +// Height rate of change of potential temperature above the inversion. +dTdz $TGradUpper; + +// Geostrophic wind speed magnitude. +Ug $U0Mag; + +// Geostrophic wind speed direction. +UgDir $dir; + +// Aerodynamic roughness height of surface. +z0 $z0; + +// von Karman constant. +kappa $kappa; + +// Vertical profile table. +profileTable +( +// z U V T + (0.0 0.0 0.0 273.121917725) + (5.0 1.82671529027 1.98969371553 282.524156211) + (10.0 2.52983624172 2.77228242751 283.156504284) + (15.0 3.01282071998 3.35521702288 283.64108812) + (20.0 3.35996148006 3.78823607698 284.090761147) + (25.0 3.8038057643 4.37960852586 284.554077196) + (30.0 4.03596125279 4.70538923119 284.966777157) + (35.0 4.38133296535 5.23253766126 285.360167677) + (40.0 4.56992779673 5.53523659867 285.747101612) + (45.0 4.80994398595 5.96180841679 286.095879197) + (50.0 5.00816921409 6.32774876853 286.444585293) + (55.0 5.14154903327 6.60160807137 286.787914506) + (60.0 5.36818530188 7.08896005703 287.063199891) + (65.0 5.44703987742 7.27484159809 287.379906732) + (70.0 5.57604433164 7.60608624795 287.638417176) + (75.0 5.72370142776 7.99632935101 287.863981004) + (80.0 5.77619905069 8.15139018101 288.127106742) + (85.0 5.87149793296 8.46369430537 288.331005696) + (90.0 5.98111916718 8.83268873958 288.509035882) + (95.0 6.01697152506 8.97407895539 288.724664101) + (100.0 6.06967854005 9.19927028309 288.909565287) + (105.0 6.1450628792 9.53721293929 289.053124377) + (110.0 6.19167607924 9.76288104253 289.198531813) + (115.0 6.22489630605 9.93628531022 289.344799656) + (120.0 6.27421288656 10.216282683 289.462005) + (125.0 6.32645248876 10.5156368594 289.57393273) + (130.0 6.34668810144 10.6457361726 289.712125634) + (135.0 6.36434613795 10.762203832 289.852433913) + (140.0 6.39842793739 11.0196195883 289.95191863) + (145.0 6.4342454375 11.2919310606 290.047089019) + (150.0 6.45180421766 11.4367005351 290.150649381) + (155.0 6.46406875681 11.544488333 290.256642472) + (160.0 6.48170756073 11.7056278368 290.348224267) + (165.0 6.50382814701 11.9112591447 290.427787992) + (170.0 6.52550956366 12.1127414485 290.506470121) + (175.0 6.54550549533 12.298300329 290.581768788) + (180.0 6.56550142701 12.4838592096 290.657067454) + (185.0 6.58511534034 12.6567515091 290.735008491) + (190.0 6.6045979288 12.8252894701 290.813857884) + (195.0 6.62432001649 12.9896812983 290.892328604) + (200.0 6.64532587961 13.1318488244 290.968769537) + (205.0 6.66633174272 13.2740163505 291.045210471) + (210.0 6.69104111181 13.4098514016 291.117435921) + (215.0 6.72036475996 13.5377966838 291.184409209) + (220.0 6.74968840812 13.6657419659 291.251382497) + (225.0 6.77805691412 13.7640369251 291.318657013) + (230.0 6.80578882059 13.8425700289 291.386132296) + (235.0 6.83352072706 13.9211031327 291.453607578) + (240.0 6.86307156947 13.9862481909 291.518273832) + (245.0 6.89380511232 14.0426881336 291.581113612) + (250.0 6.92453865516 14.0991280764 291.643953391) + (255.0 6.95361693104 14.1462680315 291.704700258) + (260.0 6.98077095142 14.1825967081 291.763014104) + (265.0 7.0079249718 14.2189253847 291.82132795) + (270.0 7.03507703408 14.2541299666 291.879606535) + (275.0 7.0622194383 14.283790106 291.937711201) + (280.0 7.08936184253 14.3134502454 291.995815867) + (285.0 7.11650424675 14.3431103848 292.053920533) + (290.0 7.1430391081 14.369131837 292.11328027) + (295.0 7.16932392788 14.3936557439 292.173156546) + (300.0 7.19560874767 14.4181796507 292.233032822) + (305.0 7.22180906756 14.4424461024 292.292838021) + (310.0 7.24680913749 14.4630556198 292.351633627) + (315.0 7.27180920741 14.4836651372 292.410429232) + (320.0 7.29680927734 14.5042746546 292.469224837) + (325.0 7.32153609499 14.5243042572 292.528664796) + (330.0 7.34543057757 14.5425674214 292.590067475) + (335.0 7.36932506015 14.5608305855 292.651470155) + (340.0 7.39321954273 14.5790937496 292.712872834) + (345.0 7.41696733387 14.597025575 292.773542958) + (350.0 7.44026003553 14.6139294685 292.831940429) + (355.0 7.46355273718 14.6308333621 292.890337899) + (360.0 7.48684543884 14.6477372556 292.94873537) + (365.0 7.51013186129 14.6646271523 293.007149353) + (370.0 7.53322339247 14.68108262 293.066075821) + (375.0 7.55631492366 14.6975380877 293.12500229) + (380.0 7.57940645484 14.7139935554 293.183928758) + (385.0 7.60249798603 14.7304490231 293.242855226) + (390.0 7.6257582057 14.7463924565 293.301506178) + (395.0 7.64912373233 14.7620162427 293.359985132) + (400.0 7.67248925896 14.7776400289 293.418464087) + (405.0 7.69585478559 14.7932638151 293.476943042) + (410.0 7.71922031222 14.8088876013 293.535421996) + (415.0 7.74300228036 14.8230663689 293.592791002) + (420.0 7.7667927399 14.8372156721 293.650137374) + (425.0 7.79058319945 14.8513649753 293.707483747) + (430.0 7.81437365899 14.8655142784 293.76483012) + (435.0 7.83815083397 14.8793492717 293.821767406) + (440.0 7.86181714661 14.8905612872 293.875290779) + (445.0 7.88548345926 14.9017733027 293.928814153) + (450.0 7.9091497719 14.9129853182 293.982337526) + (455.0 7.93281608455 14.9241973336 294.035860899) + (460.0 7.95648239719 14.9354093491 294.089384273) + (465.0 7.97905964048 14.9423301431 294.14128451) + (470.0 8.0016312311 14.9492286641 294.193176323) + (475.0 8.02420282171 14.956127185 294.245068135) + (480.0 8.04677441233 14.9630257059 294.296959948) + (485.0 8.06934600294 14.9699242269 294.34885176) + (490.0 8.0912068028 14.9742300558 294.40025773) + (495.0 8.11235909886 14.9759515346 294.45117942) + (500.0 8.13351139492 14.9776730134 294.502101111) + (505.0 8.15466369098 14.9793944922 294.553022801) + (510.0 8.17581598704 14.981115971 294.603944491) + (515.0 8.19696828309 14.9828374498 294.654866181) + (520.0 8.21724149816 14.9808198644 294.704354156) + (525.0 8.2364694612 14.9743564264 294.752137402) + (530.0 8.25569742424 14.9678929884 294.799920649) + (535.0 8.27492538727 14.9614295505 294.847703896) + (540.0 8.29415335031 14.9549661125 294.895487143) + (545.0 8.31338131334 14.9485026745 294.943270389) + (550.0 8.33260927638 14.9420392365 294.991053636) + (555.0 8.35050488468 14.9266129312 295.036341098) + (560.0 8.36808840645 14.9090871924 295.081043956) + (565.0 8.38567192822 14.8915614535 295.125746813) + (570.0 8.40325544999 14.8740357147 295.170449671) + (575.0 8.42083897176 14.8565099758 295.215152528) + (580.0 8.43842249352 14.838984237 295.259855386) + (585.0 8.45600601529 14.8214584982 295.304558243) + (590.0 8.47264685758 14.7968218302 295.348171206) + (595.0 8.48834031368 14.765038729 295.390688832) + (600.0 8.50403376979 14.7332556278 295.433206459) + (605.0 8.51972722589 14.7014725265 295.475724085) + (610.0 8.53542068199 14.6696894253 295.518241712) + (615.0 8.55111413809 14.6379063241 295.560759338) + (620.0 8.56680759419 14.6061232229 295.603276965) + (625.0 8.5825010503 14.5743401216 295.645794591) + (630.0 8.59715715424 14.5346556613 295.689519112) + (635.0 8.61058749747 14.4856347615 295.734669729) + (640.0 8.62401784069 14.4366138617 295.779820347) + (645.0 8.63744818391 14.3875929619 295.824970964) + (650.0 8.65087852713 14.338572062 295.870121581) + (655.0 8.66430887036 14.2895511622 295.915272198) + (660.0 8.67773921358 14.2405302624 295.960422815) + (665.0 8.6911695568 14.1915093626 296.005573433) + (670.0 8.70459990003 14.1424884628 296.05072405) + (675.0 8.71498597608 14.0837507537 296.096336227) + (680.0 8.72352399234 14.0191143362 296.142228601) + (685.0 8.7320620086 13.9544779188 296.188120975) + (690.0 8.74060002486 13.8898415013 296.234013348) + (695.0 8.74913804112 13.8252050838 296.279905722) + (700.0 8.75767605739 13.7605686663 296.325798096) + (705.0 8.76621407365 13.6959322489 296.371690469) + (710.0 8.77475208991 13.6312958314 296.417582843) + (715.0 8.78329010617 13.5666594139 296.463475217) + (720.0 8.79182812243 13.5020229965 296.50936759) + (725.0 8.79189547444 13.4277463368 296.562527014) + (730.0 8.79098910472 13.3523615098 296.616521801) + (735.0 8.79008273499 13.2769766828 296.670516587) + (740.0 8.78917636527 13.2015918559 296.724511374) + (745.0 8.78826999555 13.1262070289 296.778506161) + (750.0 8.78736362582 13.0508222019 296.832500948) + (755.0 8.7864572561 12.9754373749 296.886495735) + (760.0 8.78555088638 12.9000525479 296.940490522) + (765.0 8.78464451665 12.824667721 296.994485308) + (770.0 8.78373814693 12.749282894 297.048480095) + (775.0 8.78092431283 12.6731698157 297.101321687) + (780.0 8.77050848097 12.594154369 297.149567342) + (785.0 8.76009264911 12.5151389222 297.197812997) + (790.0 8.74967681725 12.4361234755 297.246058652) + (795.0 8.73926098539 12.3571080288 297.294304307) + (800.0 8.72884515353 12.278092582 297.342549962) + (805.0 8.71842932167 12.1990771353 297.390795617) + (810.0 8.70801348981 12.1200616885 297.439041272) + (815.0 8.69759765795 12.0410462418 297.487286927) + (820.0 8.68718182609 11.9620307951 297.535532582) + (825.0 8.67676599423 11.8830153483 297.583778237) + (830.0 8.66635016237 11.8039999016 297.632023892) + (835.0 8.65380285705 11.7267327361 297.688031136) + (840.0 8.63847548104 11.6517458454 297.754161782) + (845.0 8.62314810503 11.5767589547 297.820292429) + (850.0 8.60782072902 11.5017720641 297.886423076) + (855.0 8.59249335301 11.4267851734 297.952553722) + (860.0 8.57716597701 11.3517982828 298.018684369) + (865.0 8.561838601 11.2768113921 298.084815016) + (870.0 8.54651122499 11.2018245015 298.150945663) + (875.0 8.53118384898 11.1268376108 298.217076309) + (880.0 8.51585647297 11.0518507201 298.283206956) + (885.0 8.50052909696 10.9768638295 298.349337603) + (890.0 8.48520172096 10.9018769388 298.41546825) + (895.0 8.46987434495 10.8268900482 298.481598896) + (900.0 8.45883220551 10.7541011047 298.547345535) + (905.0 8.45238242046 10.6836676328 298.612680644) + (910.0 8.44593263542 10.6132341608 298.678015753) + (915.0 8.43948285037 10.5428006888 298.743350863) + (920.0 8.43303306533 10.4723672168 298.808685972) + (925.0 8.42658328028 10.4019337449 298.874021081) + (930.0 8.42013349524 10.3315002729 298.93935619) + (935.0 8.41368371019 10.2610668009 299.004691299) + (940.0 8.40723392515 10.190633329 299.070026409) + (945.0 8.4007841401 10.120199857 299.135361518) + (950.0 8.39433435506 10.049766385 299.200696627) + (955.0 8.38788457001 9.97933291304 299.266031736) + (960.0 8.38143478497 9.90889944107 299.331366845) + (965.0 8.37498499992 9.8384659691 299.396701955) + (970.0 8.37175628862 9.76984547069 299.458148741) + (975.0 8.3787220489 9.70696290595 299.507289259) + (980.0 8.38568780918 9.64408034121 299.556429777) + (985.0 8.39265356946 9.58119777647 299.605570296) + (990.0 8.39961932974 9.51831521173 299.654710814) + (995.0 8.40658509002 9.45543264699 299.703851332) + (1000.0 8.4135508503 9.39255008225 299.752991851) + (1005.0 8.42051661058 9.32966751751 299.802132369) + (1010.0 8.42748237086 9.26678495277 299.851272887) + (1015.0 8.43444813113 9.20390238803 299.900413405) + (1020.0 8.44141389141 9.14101982329 299.949553924) + (1025.0 8.44837965169 9.07813725854 299.998694442) + (1030.0 8.45534541197 9.0152546938 300.04783496) + (1035.0 8.46231117225 8.95237212906 300.096975478) + (1040.0 8.46927693253 8.88948956432 300.146115997) + (1045.0 8.47624269281 8.82660699958 300.195256515) + (1050.0 8.48495783258 8.77319458603 300.238852282) + (1055.0 8.49495774699 8.72673721576 300.278375887) + (1060.0 8.5049576614 8.6802798455 300.317899492) + (1065.0 8.51495757581 8.63382247523 300.357423097) + (1070.0 8.52495749023 8.58736510496 300.396946702) + (1075.0 8.53495740464 8.5409077347 300.436470307) + (1080.0 8.54495731905 8.49445036443 300.475993912) + (1085.0 8.55495723346 8.44799299416 300.515517517) + (1090.0 8.56495714787 8.4015356239 300.555041122) + (1095.0 8.57495706228 8.35507825363 300.594564727) + (1100.0 8.58495697669 8.30862088336 300.634088332) + (1105.0 8.5949568911 8.2621635131 300.673611937) + (1110.0 8.60495680552 8.21570614283 300.713135542) + (1115.0 8.61495671993 8.16924877256 300.752659147) + (1120.0 8.62495663434 8.1227914023 300.792182752) + (1125.0 8.63495654875 8.07633403203 300.831706357) + (1130.0 8.64495646316 8.02987666176 300.871229962) + (1135.0 8.65360052964 7.98996489564 300.907704255) + (1140.0 8.65972902324 7.96219751809 300.938521005) + (1145.0 8.66585751685 7.93443014055 300.969337756) + (1150.0 8.67198601045 7.906662763 301.000154506) + (1155.0 8.67811450406 7.87889538546 301.030971256) + (1160.0 8.68424299766 7.85112800791 301.061788006) + (1165.0 8.69037149126 7.82336063037 301.092604757) + (1170.0 8.69649998487 7.79559325282 301.123421507) + (1175.0 8.70262847847 7.76782587527 301.154238257) + (1180.0 8.70875697208 7.74005849773 301.185055007) + (1185.0 8.71488546568 7.71229112018 301.215871758) + (1190.0 8.72101395929 7.68452374264 301.246688508) + (1195.0 8.72714245289 7.65675636509 301.277505258) + (1200.0 8.7332709465 7.62898898755 301.308322009) + (1205.0 8.7393994401 7.60122161 301.339138759) + (1210.0 8.74552793371 7.57345423246 301.369955509) + (1215.0 8.75165642731 7.54568685491 301.400772259) + (1220.0 8.75778492092 7.51791947737 301.43158901) + (1225.0 8.76391341452 7.49015209982 301.46240576) + (1230.0 8.76818252215 7.46990516883 301.489568668) + (1235.0 8.76988179508 7.46005215541 301.511681645) + (1240.0 8.771581068 7.45019914198 301.533794623) + (1245.0 8.77328034093 7.44034612856 301.5559076) + (1250.0 8.77497961385 7.43049311513 301.578020578) + (1255.0 8.77667888677 7.42064010171 301.600133555) + (1260.0 8.7783781597 7.41078708828 301.622246532) + (1265.0 8.78007743262 7.40093407485 301.64435951) + (1270.0 8.78177670555 7.39108106143 301.666472487) + (1275.0 8.78347597847 7.381228048 301.688585464) + (1280.0 8.7851752514 7.37137503458 301.710698442) + (1285.0 8.78687452432 7.36152202115 301.732811419) + (1290.0 8.78857379725 7.35166900773 301.754924397) + (1295.0 8.79027307017 7.3418159943 301.777037374) + (1300.0 8.7919723431 7.33196298088 301.799150351) + (1305.0 8.79367161602 7.32210996745 301.821263329) + (1310.0 8.79537088895 7.31225695402 301.843376306) + (1315.0 8.79707016187 7.3024039406 301.865489283) + (1320.0 8.79876943479 7.29255092717 301.887602261) + (1325.0 8.80046870772 7.28269791375 301.909715238) + (1330.0 8.80216798064 7.27284490032 301.931828216) + (1335.0 8.80345002487 7.27037429336 301.950702634) + (1340.0 8.80449597234 7.27208116099 301.967744453) + (1345.0 8.8055419198 7.27378802862 301.984786271) + (1350.0 8.80658786727 7.27549489624 302.00182809) + (1355.0 8.80763381473 7.27720176387 302.018869908) + (1360.0 8.8086797622 7.2789086315 302.035911727) + (1365.0 8.80972570966 7.28061549913 302.052953545) + (1370.0 8.81077165713 7.28232236676 302.069995364) + (1375.0 8.81181760459 7.28402923439 302.087037182) + (1380.0 8.81286355206 7.28573610202 302.104079001) + (1385.0 8.81390949952 7.28744296965 302.121120819) + (1390.0 8.81495544699 7.28914983727 302.138162638) + (1395.0 8.81600139445 7.2908567049 302.155204456) + (1400.0 8.81704734192 7.29256357253 302.172246275) + (1405.0 8.81809328938 7.29427044016 302.189288094) + (1410.0 8.81913923685 7.29597730779 302.206329912) + (1415.0 8.82018518431 7.29768417542 302.223371731) + (1420.0 8.82123113178 7.29939104305 302.240413549) + (1425.0 8.82227707924 7.30109791068 302.257455368) + (1430.0 8.82332302671 7.30280477831 302.274497186) + (1435.0 8.82436897417 7.30451164593 302.291539005) + (1440.0 8.82541492164 7.30621851356 302.308580823) + (1445.0 8.8264608691 7.30792538119 302.325622642) + (1450.0 8.82980499965 7.31411337437 302.342200633) + (1455.0 8.83363827328 7.32125512601 302.358679903) + (1460.0 8.83747154691 7.32839687764 302.375159173) + (1465.0 8.84130482054 7.33553862927 302.391638443) + (1470.0 8.84513809417 7.34268038091 302.408117713) + (1475.0 8.8489713678 7.34982213254 302.424596984) + (1480.0 8.85280464143 7.35696388418 302.441076254) + (1485.0 8.85663791506 7.36410563581 302.457555524) + (1490.0 8.86047118869 7.37124738745 302.474034794) + (1495.0 8.86430446231 7.37838913908 302.490514064) + (1500.0 8.86813773594 7.38553089071 302.506993334) + (1505.0 8.87197100957 7.39267264235 302.523472605) + (1510.0 8.8758042832 7.39981439398 302.539951875) + (1515.0 8.87963755683 7.40695614562 302.556431145) + (1520.0 8.88347083046 7.41409789725 302.572910415) + (1525.0 8.88730410409 7.42123964888 302.589389685) + (1530.0 8.89113737772 7.42838140052 302.605868955) + (1535.0 8.89497065135 7.43552315215 302.622348226) + (1540.0 8.89880392498 7.44266490379 302.638827496) + (1545.0 8.90263719861 7.44980665542 302.655306766) + (1550.0 8.90647047224 7.45694840705 302.671786036) + (1555.0 8.91030374586 7.46409015869 302.688265306) + (1560.0 8.91413701949 7.47123191032 302.704744577) + (1565.0 8.91797029312 7.47837366196 302.721223847) + (1570.0 8.92180356675 7.48551541359 302.737703117) + (1575.0 8.92995697971 7.48958529161 302.756743245) + (1580.0 8.93926578965 7.49283361431 302.77646826) + (1585.0 8.94857459959 7.496081937 302.796193275) + (1590.0 8.95788340953 7.49933025969 302.81591829) + (1595.0 8.96719221947 7.50257858238 302.835643305) + (1600.0 8.97650102941 7.50582690508 302.85536832) + (1605.0 8.98580983935 7.50907522777 302.875093335) + (1610.0 8.9951186493 7.51232355046 302.89481835) + (1615.0 9.00442745924 7.51557187315 302.914543365) + (1620.0 9.01373626918 7.51882019585 302.93426838) + (1625.0 9.02304507912 7.52206851854 302.953993395) + (1630.0 9.03235388906 7.52531684123 302.973718411) + (1635.0 9.041662699 7.52856516392 302.993443426) + (1640.0 9.05097150894 7.53181348662 303.013168441) + (1645.0 9.06028031888 7.53506180931 303.032893456) + (1650.0 9.06958912882 7.538310132 303.052618471) + (1655.0 9.07889793876 7.5415584547 303.072343486) + (1660.0 9.0882067487 7.54480677739 303.092068501) + (1665.0 9.09751555864 7.54805510008 303.111793516) + (1670.0 9.10682436858 7.55130342277 303.131518531) + (1675.0 9.11613317852 7.55455174547 303.151243546) + (1680.0 9.12544198846 7.55780006816 303.170968561) + (1685.0 9.1347507984 7.56104839085 303.190693576) + (1690.0 9.14405960834 7.56429671354 303.210418591) + (1695.0 9.15336841829 7.56754503624 303.230143606) + (1700.0 9.16267722823 7.57079335893 303.249868621) + (1705.0 9.17198603817 7.57404168162 303.269593636) + (1710.0 9.18349377603 7.57239347669 303.290540127) + (1715.0 9.19922226437 7.56134659115 303.31383119) + (1720.0 9.2149507527 7.55029970561 303.337122252) + (1725.0 9.23067924103 7.53925282007 303.360413315) + (1730.0 9.24640772936 7.52820593453 303.383704377) + (1735.0 9.2621362177 7.51715904899 303.40699544) + (1740.0 9.27786470603 7.50611216345 303.430286502) + (1745.0 9.29359319436 7.49506527791 303.453577565) + (1750.0 9.3093216827 7.48401839237 303.476868627) + (1755.0 9.32505017103 7.47297150683 303.50015969) + (1760.0 9.34077865936 7.46192462129 303.523450752) + (1765.0 9.35650714769 7.45087773575 303.546741815) + (1770.0 9.37223563603 7.43983085021 303.570032877) + (1775.0 9.38796412436 7.42878396467 303.59332394) + (1780.0 9.40369261269 7.41773707912 303.616615003) + (1785.0 9.41942110102 7.40669019358 303.639906065) + (1790.0 9.43514958936 7.39564330804 303.663197128) + (1795.0 9.45087807769 7.3845964225 303.68648819) + (1800.0 9.46660656602 7.37354953696 303.709779253) + (1805.0 9.48233505436 7.36250265142 303.733070315) + (1810.0 9.49806354269 7.35145576588 303.756361378) + (1815.0 9.51379203102 7.34040888034 303.77965244) + (1820.0 9.52952051935 7.3293619948 303.802943503) + (1825.0 9.54524900769 7.31831510926 303.826234565) + (1830.0 9.56097749602 7.30726822372 303.849525628) + (1835.0 9.57670598435 7.29622133818 303.87281669) + (1840.0 9.59243447268 7.28517445264 303.896107753) + (1845.0 9.60816296102 7.2741275671 303.919398815) + (1850.0 9.62389144935 7.26308068156 303.942689878) + (1855.0 9.63961993768 7.25203379602 303.96598094) + (1860.0 9.65432709188 7.2376578099 303.988680381) + (1865.0 9.66596304977 7.21327107309 304.009600791) + (1870.0 9.67759900765 7.18888433629 304.0305212) + (1875.0 9.68923496554 7.16449759948 304.051441609) + (1880.0 9.70087092342 7.14011086267 304.072362018) + (1885.0 9.71250688131 7.11572412587 304.093282427) + (1890.0 9.72414283919 7.09133738906 304.114202836) + (1895.0 9.73577879708 7.06695065226 304.135123245) + (1900.0 9.74741475497 7.04256391545 304.156043654) + (1905.0 9.75905071285 7.01817717864 304.176964064) + (1910.0 9.77068667074 6.99379044184 304.197884473) + (1915.0 9.78232262862 6.96940370503 304.218804882) + (1920.0 9.79395858651 6.94501696822 304.239725291) + (1925.0 9.8055945444 6.92063023142 304.2606457) + (1930.0 9.81723050228 6.89624349461 304.281566109) + (1935.0 9.82886646017 6.8718567578 304.302486518) + (1940.0 9.84050241805 6.847470021 304.323406928) + (1945.0 9.85213837594 6.82308328419 304.344327337) + (1950.0 9.86377433382 6.79869654738 304.365247746) + (1955.0 9.87541029171 6.77430981058 304.386168155) + (1960.0 9.8870462496 6.74992307377 304.407088564) + (1965.0 9.89868220748 6.72553633696 304.428008973) + (1970.0 9.91031816537 6.70114960016 304.448929382) + (1975.0 9.92195412325 6.67676286335 304.469849792) + (1980.0 9.93359008114 6.65237612654 304.490770201) + (1985.0 9.94522603903 6.62798938974 304.51169061) + (1990.0 9.95686199691 6.60360265293 304.532611019) + (1995.0 9.9684979548 6.57921591612 304.553531428) + (2000.0 9.98013391268 6.55482917932 304.574451837) +); + +// Update internal field. +updateInternalFields true; + +// Update boundary field. +updateBoundaryFields false; + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/0.original/U b/exampleCases/example.ADM.ssc.zeroMQ/0.original/U new file mode 100755 index 000000000..6dbf85ec5 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/0.original/U @@ -0,0 +1,58 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volVectorField; + location "0"; + object U; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 1 -1 0 0 0 0]; + +internalField uniform ($U0Mag 0 0); + +boundaryField +{ + lower + { + type slip; + } + upper + { + type slip; + } + west + { + type fixedValue; + value uniform ($U0Mag 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform ($U0Mag 0 0); + } + south + { + type slip; + } + north + { + type slip; + } +} + + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/0.original/k b/exampleCases/example.ADM.ssc.zeroMQ/0.original/k new file mode 100755 index 000000000..c76a7e261 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/0.original/k @@ -0,0 +1,60 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object k ; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -2 0 0 0 0]; + +internalField uniform 0.0; + +boundaryField +{ + lower + { + type zeroGradient; + value uniform 0.0; + } + upper + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedValue; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/0.original/nuSgs b/exampleCases/example.ADM.ssc.zeroMQ/0.original/nuSgs new file mode 100755 index 000000000..18e32f76e --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/0.original/nuSgs @@ -0,0 +1,60 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.1.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object nuSgs; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -1 0 0 0 0]; + +internalField uniform $nuSgs0; + +boundaryField +{ + lower + { + type zeroGradient; + value uniform 0.0; + } + upper + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedValue; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/0.original/p b/exampleCases/example.ADM.ssc.zeroMQ/0.original/p new file mode 100755 index 000000000..d77aa1268 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/0.original/p @@ -0,0 +1,60 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0000"; + object p; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -2 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + lower + { + type zeroGradient; + value uniform 0; + } + upper + { + type zeroGradient; + value uniform 0; + } + east + { + type fixedValue; + value uniform 0; + } + west + { + type zeroGradient; + value uniform 0; + } + south + { + type zeroGradient; + value uniform 0; + } + north + { + type zeroGradient; + value uniform 0; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/constant/LESProperties b/exampleCases/example.ADM.ssc.zeroMQ/constant/LESProperties new file mode 100755 index 000000000..5fcbb46e9 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/constant/LESProperties @@ -0,0 +1,124 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object LESProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +#include "../setUp" + + +LESModel $LESModel; +//LESModel SmagorinskyABL; +//LESModel Smagorinsky; +//LESModel dynLagrangianCsBound; + +delta smooth; + +SmagorinskyCoeffs +{ + ce $ce; + ck $ck; +} + +SmagorinskyABLCoeffs +{ + ce $ce; + ck $ck; + TName "T"; + kappatName "kappat"; +} + +oneEqEddyABLCoeffs +{ + ce $ce; + ck $ck; + TName "T"; + kappatName "kappat"; +} + +oneEqEddyCoeffs +{ + ce $ce; + ck $ck; +} + +printCoeffs on; + +dynLagrangianCsBoundCoeffs +{ + filter simple; +} + +cubeRootVolCoeffs +{ + deltaCoeff 1; +} + +PrandtlCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + smoothCoeffs + { + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + maxDeltaRatio 1.1; + } + + Cdelta 0.158; +} + +vanDriestCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + smoothCoeffs + { + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + maxDeltaRatio 1.1; + } + + Aplus 26; + Cdelta 0.158; +} + +smoothCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + maxDeltaRatio 1.1; +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/Cylinder1 b/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/Cylinder1 new file mode 100755 index 000000000..7106c17d0 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/Cylinder1 @@ -0,0 +1,23 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.5000) + ( 0.00 0.000 0.5000) + ( 180.00 0.000 0.5000) +); diff --git a/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/Cylinder2 b/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/Cylinder2 new file mode 100755 index 000000000..b2e7923f1 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/Cylinder2 @@ -0,0 +1,23 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.3500) + ( 0.00 0.000 0.3500) + ( 180.00 0.000 0.3500) +); diff --git a/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/DU21_A17 b/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/DU21_A17 new file mode 100755 index 000000000..17eb9de96 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/DU21_A17 @@ -0,0 +1,162 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180 0 0.0185) + (-175 0.394 0.0332) + (-170 0.788 0.0945) + (-160 0.67 0.2809) + (-155 0.749 0.3932) + (-150 0.797 0.5112) + (-145 0.818 0.6309) + (-140 0.813 0.7485) + (-135 0.786 0.8612) + (-130 0.739 0.9665) + (-125 0.675 1.0625) + (-120 0.596 1.1476) + (-115 0.505 1.2206) + (-110 0.403 1.2805) + (-105 0.294 1.3265) + (-100 0.179 1.3582) + (-95 0.06 1.3752) + (-90 -0.06 1.3774) + (-85 -0.179 1.3648) + (-80 -0.295 1.3376) + (-75 -0.407 1.2962) + (-70 -0.512 1.2409) + (-65 -0.608 1.1725) + (-60 -0.693 1.0919) + (-55 -0.764 1.0002) + (-50 -0.82 0.899 ) + (-45 -0.857 0.79 ) + (-40 -0.875 0.6754) + (-35 -0.869 0.5579) + (-30 -0.838 0.4405) + (-25 -0.791 0.3256) + (-24 -0.794 0.3013) + (-23 -0.805 0.2762) + (-22 -0.821 0.2506) + (-21 -0.843 0.2246) + (-20 -0.869 0.1983) + (-19 -0.899 0.172 ) + (-18 -0.931 0.1457) + (-17 -0.964 0.1197) + (-16 -0.999 0.094 ) + (-15 -1.033 0.0689) + (-14.5 -1.05 0.0567) + (-12.01 -0.953 0.0271) + (-11 -0.9 0.0303) + (-9.98 -0.827 0.0287) + (-8.12 -0.536 0.0124) + (-7.62 -0.467 0.0109) + (-7.11 -0.393 0.0092) + (-6.6 -0.323 0.0083) + (-6.5 -0.311 0.0089) + (-6 -0.245 0.0082) + (-5.5 -0.178 0.0074) + (-5 -0.113 0.0069) + (-4.5 -0.048 0.0065) + (-4 0.016 0.0063) + (-3.5 0.08 0.0061) + (-3 0.145 0.0058) + (-2.5 0.208 0.0057) + (-2 0.27 0.0057) + (-1.5 0.333 0.0057) + (-1 0.396 0.0057) + (-0.5 0.458 0.0057) + ( 0 0.521 0.0057) + ( 0.5 0.583 0.0057) + ( 1 0.645 0.0058) + ( 1.5 0.706 0.0058) + ( 2 0.768 0.0059) + ( 2.5 0.828 0.0061) + ( 3 0.888 0.0063) + ( 3.5 0.948 0.0066) + ( 4 0.996 0.0071) + ( 4.5 1.046 0.0079) + ( 5 1.095 0.009 ) + ( 5.5 1.145 0.0103) + ( 6 1.192 0.0113) + ( 6.5 1.239 0.0122) + ( 7 1.283 0.0131) + ( 7.5 1.324 0.0139) + ( 8 1.358 0.0147) + ( 8.5 1.385 0.0158) + ( 9 1.403 0.0181) + ( 9.5 1.401 0.0211) + ( 10 1.358 0.0255) + ( 10.5 1.313 0.0301) + ( 11 1.287 0.0347) + ( 11.5 1.274 0.0401) + ( 12 1.272 0.0468) + ( 12.5 1.273 0.0545) + ( 13 1.273 0.0633) + ( 13.5 1.273 0.0722) + ( 14 1.272 0.0806) + ( 14.5 1.273 0.09 ) + ( 15 1.275 0.0987) + ( 15.5 1.281 0.1075) + ( 16 1.284 0.117 ) + ( 16.5 1.296 0.127 ) + ( 17 1.306 0.1368) + ( 17.5 1.308 0.1464) + ( 18 1.308 0.1562) + ( 18.5 1.308 0.1664) + ( 19 1.308 0.177 ) + ( 19.5 1.307 0.1878) + ( 20 1.311 0.1987) + ( 20.5 1.325 0.21 ) + ( 21 1.324 0.2214) + ( 22 1.277 0.2499) + ( 23 1.229 0.2786) + ( 24 1.182 0.3077) + ( 25 1.136 0.3371) + ( 26 1.093 0.3664) + ( 28 1.017 0.4246) + ( 30 0.962 0.4813) + ( 32 0.937 0.5356) + ( 35 0.947 0.6127) + ( 40 0.95 0.7396) + ( 45 0.928 0.8623) + ( 50 0.884 0.9781) + ( 55 0.821 1.0846) + ( 60 0.74 1.1796) + ( 65 0.646 1.2617) + ( 70 0.54 1.3297) + ( 75 0.425 1.3827) + ( 80 0.304 1.4202) + ( 85 0.179 1.4423) + ( 90 0.053 1.4512) + ( 95 -0.073 1.448 ) + ( 100 -0.198 1.4294) + ( 105 -0.319 1.3954) + ( 110 -0.434 1.3464) + ( 115 -0.541 1.2829) + ( 120 -0.637 1.2057) + ( 125 -0.72 1.1157) + ( 130 -0.787 1.0144) + ( 135 -0.836 0.9033) + ( 140 -0.864 0.7845) + ( 145 -0.869 0.6605) + ( 150 -0.847 0.5346) + ( 155 -0.795 0.4103) + ( 160 -0.711 0.2922) + ( 170 -0.788 0.0969) + ( 175 -0.394 0.0334) + ( 180 0 0.0185) +); diff --git a/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/DU25_A17 b/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/DU25_A17 new file mode 100755 index 000000000..56981e639 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/DU25_A17 @@ -0,0 +1,161 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0202) + (-175.00 0.368 0.0324) + (-170.00 0.735 0.0943) + (-160.00 0.695 0.2848) + (-155.00 0.777 0.4001) + (-150.00 0.828 0.5215) + (-145.00 0.850 0.6447) + (-140.00 0.846 0.7660) + (-135.00 0.818 0.8823) + (-130.00 0.771 0.9911) + (-125.00 0.705 1.0905) + (-120.00 0.624 1.1787) + (-115.00 0.530 1.2545) + (-110.00 0.426 1.3168) + (-105.00 0.314 1.3650) + (-100.00 0.195 1.3984) + ( -95.00 0.073 1.4169) + ( -90.00 -0.050 1.4201) + ( -85.00 -0.173 1.4081) + ( -80.00 -0.294 1.3811) + ( -75.00 -0.409 1.3394) + ( -70.00 -0.518 1.2833) + ( -65.00 -0.617 1.2138) + ( -60.00 -0.706 1.1315) + ( -55.00 -0.780 1.0378) + ( -50.00 -0.839 0.9341) + ( -45.00 -0.879 0.8221) + ( -40.00 -0.898 0.7042) + ( -35.00 -0.893 0.5829) + ( -30.00 -0.862 0.4616) + ( -25.00 -0.803 0.3441) + ( -24.00 -0.792 0.3209) + ( -23.00 -0.789 0.2972) + ( -22.00 -0.792 0.2730) + ( -21.00 -0.801 0.2485) + ( -20.00 -0.815 0.2237) + ( -19.00 -0.833 0.1990) + ( -18.00 -0.854 0.1743) + ( -17.00 -0.879 0.1498) + ( -16.00 -0.905 0.1256) + ( -15.00 -0.932 0.1020) + ( -14.00 -0.959 0.0789) + ( -13.00 -0.985 0.0567) + ( -13.00 -0.985 0.0567) + ( -12.01 -0.953 0.0271) + ( -11.00 -0.900 0.0303) + ( -9.98 -0.827 0.0287) + ( -8.98 -0.753 0.0271) + ( -8.47 -0.691 0.0264) + ( -7.45 -0.555 0.0114) + ( -6.42 -0.413 0.0094) + ( -5.40 -0.271 0.0086) + ( -5.00 -0.220 0.0073) + ( -4.50 -0.152 0.0071) + ( -4.00 -0.084 0.0070) + ( -3.50 -0.018 0.0069) + ( -3.00 0.049 0.0068) + ( -2.50 0.115 0.0068) + ( -2.00 0.181 0.0068) + ( -1.50 0.247 0.0067) + ( -1.00 0.312 0.0067) + ( -0.50 0.377 0.0067) + ( 0.00 0.444 0.0065) + ( 0.50 0.508 0.0065) + ( 1.00 0.573 0.0066) + ( 1.50 0.636 0.0067) + ( 2.00 0.701 0.0068) + ( 2.50 0.765 0.0069) + ( 3.00 0.827 0.0070) + ( 3.50 0.890 0.0071) + ( 4.00 0.952 0.0073) + ( 4.50 1.013 0.0076) + ( 5.00 1.062 0.0079) + ( 6.00 1.161 0.0099) + ( 6.50 1.208 0.0117) + ( 7.00 1.254 0.0132) + ( 7.50 1.301 0.0143) + ( 8.00 1.336 0.0153) + ( 8.50 1.369 0.0165) + ( 9.00 1.400 0.0181) + ( 9.50 1.428 0.0211) + ( 10.00 1.442 0.0262) + ( 10.50 1.427 0.0336) + ( 11.00 1.374 0.0420) + ( 11.50 1.316 0.0515) + ( 12.00 1.277 0.0601) + ( 12.50 1.250 0.0693) + ( 13.00 1.246 0.0785) + ( 13.50 1.247 0.0888) + ( 14.00 1.256 0.1000) + ( 14.50 1.260 0.1108) + ( 15.00 1.271 0.1219) + ( 15.50 1.281 0.1325) + ( 16.00 1.289 0.1433) + ( 16.50 1.294 0.1541) + ( 17.00 1.304 0.1649) + ( 17.50 1.309 0.1754) + ( 18.00 1.315 0.1845) + ( 18.50 1.320 0.1953) + ( 19.00 1.330 0.2061) + ( 19.50 1.343 0.2170) + ( 20.00 1.354 0.2280) + ( 20.50 1.359 0.2390) + ( 21.00 1.360 0.2536) + ( 22.00 1.325 0.2814) + ( 23.00 1.288 0.3098) + ( 24.00 1.251 0.3386) + ( 25.00 1.215 0.3678) + ( 26.00 1.181 0.3972) + ( 28.00 1.120 0.4563) + ( 30.00 1.076 0.5149) + ( 32.00 1.056 0.5720) + ( 35.00 1.066 0.6548) + ( 40.00 1.064 0.7901) + ( 45.00 1.035 0.9190) + ( 50.00 0.980 1.0378) + ( 55.00 0.904 1.1434) + ( 60.00 0.810 1.2333) + ( 65.00 0.702 1.3055) + ( 70.00 0.582 1.3587) + ( 75.00 0.456 1.3922) + ( 80.00 0.326 1.4063) + ( 85.00 0.197 1.4042) + ( 90.00 0.072 1.3985) + ( 95.00 -0.050 1.3973) + ( 100.00 -0.170 1.3810) + ( 105.00 -0.287 1.3498) + ( 110.00 -0.399 1.3041) + ( 115.00 -0.502 1.2442) + ( 120.00 -0.596 1.1709) + ( 125.00 -0.677 1.0852) + ( 130.00 -0.743 0.9883) + ( 135.00 -0.792 0.8818) + ( 140.00 -0.821 0.7676) + ( 145.00 -0.826 0.6481) + ( 150.00 -0.806 0.5264) + ( 155.00 -0.758 0.4060) + ( 160.00 -0.679 0.2912) + ( 170.00 -0.735 0.0995) + ( 175.00 -0.368 0.0356) + ( 180.00 0.000 0.0202) +); diff --git a/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/DU30_A17 b/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/DU30_A17 new file mode 100755 index 000000000..35fb11988 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/DU30_A17 @@ -0,0 +1,163 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0267) + (-175.00 0.274 0.0370) + (-170.00 0.547 0.0968) + (-160.00 0.685 0.2876) + (-155.00 0.766 0.4025) + (-150.00 0.816 0.5232) + (-145.00 0.836 0.6454) + (-140.00 0.832 0.7656) + (-135.00 0.804 0.8807) + (-130.00 0.756 0.9882) + (-125.00 0.690 1.0861) + (-120.00 0.609 1.1730) + (-115.00 0.515 1.2474) + (-110.00 0.411 1.3084) + (-105.00 0.300 1.3552) + (-100.00 0.182 1.3875) + ( -95.00 0.061 1.4048) + ( -90.00 -0.061 1.4070) + ( -85.00 -0.183 1.3941) + ( -80.00 -0.302 1.3664) + ( -75.00 -0.416 1.3240) + ( -70.00 -0.523 1.2676) + ( -65.00 -0.622 1.1978) + ( -60.00 -0.708 1.1156) + ( -55.00 -0.781 1.0220) + ( -50.00 -0.838 0.9187) + ( -45.00 -0.877 0.8074) + ( -40.00 -0.895 0.6904) + ( -35.00 -0.889 0.5703) + ( -30.00 -0.858 0.4503) + ( -25.00 -0.832 0.3357) + ( -24.00 -0.852 0.3147) + ( -23.00 -0.882 0.2946) + ( -22.00 -0.919 0.2752) + ( -21.00 -0.963 0.2566) + ( -20.00 -1.013 0.2388) + ( -19.00 -1.067 0.2218) + ( -18.00 -1.125 0.2056) + ( -17.00 -1.185 0.1901) + ( -16.00 -1.245 0.1754) + ( -15.25 -1.290 0.1649) + ( -14.24 -1.229 0.1461) + ( -13.24 -1.148 0.1263) + ( -12.22 -1.052 0.1051) + ( -11.22 -0.965 0.0886) + ( -10.19 -0.867 0.0740) + ( -9.70 -0.822 0.0684) + ( -9.18 -0.769 0.0605) + ( -8.18 -0.756 0.0270) + ( -7.19 -0.690 0.0180) + ( -6.65 -0.616 0.0166) + ( -6.13 -0.542 0.0152) + ( -6.00 -0.525 0.0117) + ( -5.50 -0.451 0.0105) + ( -5.00 -0.382 0.0097) + ( -4.50 -0.314 0.0092) + ( -4.00 -0.251 0.0091) + ( -3.50 -0.189 0.0089) + ( -3.00 -0.120 0.0089) + ( -2.50 -0.051 0.0088) + ( -2.00 0.017 0.0088) + ( -1.50 0.085 0.0088) + ( -1.00 0.152 0.0088) + ( -0.50 0.219 0.0088) + ( 0.00 0.288 0.0087) + ( 0.50 0.354 0.0087) + ( 1.00 0.421 0.0088) + ( 1.50 0.487 0.0089) + ( 2.00 0.554 0.0090) + ( 2.50 0.619 0.0091) + ( 3.00 0.685 0.0092) + ( 3.50 0.749 0.0093) + ( 4.00 0.815 0.0095) + ( 4.50 0.879 0.0096) + ( 5.00 0.944 0.0097) + ( 5.50 1.008 0.0099) + ( 6.00 1.072 0.0101) + ( 6.50 1.135 0.0103) + ( 7.00 1.197 0.0107) + ( 7.50 1.256 0.0112) + ( 8.00 1.305 0.0125) + ( 9.00 1.390 0.0155) + ( 9.50 1.424 0.0171) + ( 10.00 1.458 0.0192) + ( 10.50 1.488 0.0219) + ( 11.00 1.512 0.0255) + ( 11.50 1.533 0.0307) + ( 12.00 1.549 0.0370) + ( 12.50 1.558 0.0452) + ( 13.00 1.470 0.0630) + ( 13.50 1.398 0.0784) + ( 14.00 1.354 0.0931) + ( 14.50 1.336 0.1081) + ( 15.00 1.333 0.1239) + ( 15.50 1.326 0.1415) + ( 16.00 1.329 0.1592) + ( 16.50 1.326 0.1743) + ( 17.00 1.321 0.1903) + ( 17.50 1.331 0.2044) + ( 18.00 1.333 0.2186) + ( 18.50 1.340 0.2324) + ( 19.00 1.362 0.2455) + ( 19.50 1.382 0.2584) + ( 20.00 1.398 0.2689) + ( 20.50 1.426 0.2814) + ( 21.00 1.437 0.2943) + ( 22.00 1.418 0.3246) + ( 23.00 1.397 0.3557) + ( 24.00 1.376 0.3875) + ( 25.00 1.354 0.4198) + ( 26.00 1.332 0.4524) + ( 28.00 1.293 0.5183) + ( 30.00 1.265 0.5843) + ( 32.00 1.253 0.6492) + ( 35.00 1.264 0.7438) + ( 40.00 1.258 0.8970) + ( 45.00 1.217 1.0402) + ( 50.00 1.146 1.1686) + ( 55.00 1.049 1.2779) + ( 60.00 0.932 1.3647) + ( 65.00 0.799 1.4267) + ( 70.00 0.657 1.4621) + ( 75.00 0.509 1.4708) + ( 80.00 0.362 1.4544) + ( 85.00 0.221 1.4196) + ( 90.00 0.092 1.3938) + ( 95.00 -0.030 1.3943) + ( 100.00 -0.150 1.3798) + ( 105.00 -0.267 1.3504) + ( 110.00 -0.379 1.3063) + ( 115.00 -0.483 1.2481) + ( 120.00 -0.578 1.1763) + ( 125.00 -0.660 1.0919) + ( 130.00 -0.727 0.9962) + ( 135.00 -0.777 0.8906) + ( 140.00 -0.807 0.7771) + ( 145.00 -0.815 0.6581) + ( 150.00 -0.797 0.5364) + ( 155.00 -0.750 0.4157) + ( 160.00 -0.673 0.3000) + ( 170.00 -0.547 0.1051) + ( 175.00 -0.274 0.0388) + ( 180.00 0.000 0.0267) +); diff --git a/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/DU35_A17 b/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/DU35_A17 new file mode 100755 index 000000000..041013e24 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/DU35_A17 @@ -0,0 +1,155 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0407) + (-175.00 0.223 0.0507) + (-170.00 0.405 0.1055) + (-160.00 0.658 0.2982) + (-155.00 0.733 0.4121) + (-150.00 0.778 0.5308) + (-145.00 0.795 0.6503) + (-140.00 0.787 0.7672) + (-135.00 0.757 0.8785) + (-130.00 0.708 0.9819) + (-125.00 0.641 1.0756) + (-120.00 0.560 1.1580) + (-115.00 0.467 1.2280) + (-110.00 0.365 1.2847) + (-105.00 0.255 1.3274) + (-100.00 0.139 1.3557) + ( -95.00 0.021 1.3692) + ( -90.00 -0.098 1.3680) + ( -85.00 -0.216 1.3521) + ( -80.00 -0.331 1.3218) + ( -75.00 -0.441 1.2773) + ( -70.00 -0.544 1.2193) + ( -65.00 -0.638 1.1486) + ( -60.00 -0.720 1.0660) + ( -55.00 -0.788 0.9728) + ( -50.00 -0.840 0.8705) + ( -45.00 -0.875 0.7611) + ( -40.00 -0.889 0.6466) + ( -35.00 -0.880 0.5299) + ( -30.00 -0.846 0.4141) + ( -25.00 -0.784 0.3030) + ( -24.00 -0.768 0.2817) + ( -23.00 -0.751 0.2608) + ( -22.00 -0.733 0.2404) + ( -21.00 -0.714 0.2205) + ( -20.00 -0.693 0.2011) + ( -19.00 -0.671 0.1822) + ( -18.00 -0.648 0.1640) + ( -17.00 -0.624 0.1465) + ( -16.00 -0.601 0.1300) + ( -15.00 -0.579 0.1145) + ( -14.00 -0.559 0.1000) + ( -13.00 -0.539 0.0867) + ( -12.00 -0.519 0.0744) + ( -11.00 -0.499 0.0633) + ( -10.00 -0.480 0.0534) + ( -5.54 -0.385 0.0245) + ( -5.04 -0.359 0.0225) + ( -4.54 -0.360 0.0196) + ( -4.04 -0.355 0.0174) + ( -3.54 -0.307 0.0162) + ( -3.04 -0.246 0.0144) + ( -3.00 -0.240 0.0240) + ( -2.50 -0.163 0.0188) + ( -2.00 -0.091 0.0160) + ( -1.50 -0.019 0.0137) + ( -1.00 0.052 0.0118) + ( -0.50 0.121 0.0104) + ( 0.00 0.196 0.0094) + ( 0.50 0.265 0.0096) + ( 1.00 0.335 0.0098) + ( 1.50 0.404 0.0099) + ( 2.00 0.472 0.0100) + ( 2.50 0.540 0.0102) + ( 3.00 0.608 0.0103) + ( 3.50 0.674 0.0104) + ( 4.00 0.742 0.0105) + ( 4.50 0.809 0.0107) + ( 5.00 0.875 0.0108) + ( 5.50 0.941 0.0109) + ( 6.00 1.007 0.0110) + ( 6.50 1.071 0.0113) + ( 7.00 1.134 0.0115) + ( 7.50 1.198 0.0117) + ( 8.00 1.260 0.0120) + ( 8.50 1.318 0.0126) + ( 9.00 1.368 0.0133) + ( 9.50 1.422 0.0143) + ( 10.00 1.475 0.0156) + ( 10.50 1.523 0.0174) + ( 11.00 1.570 0.0194) + ( 11.50 1.609 0.0227) + ( 12.00 1.642 0.0269) + ( 12.50 1.675 0.0319) + ( 13.00 1.700 0.0398) + ( 13.50 1.717 0.0488) + ( 14.00 1.712 0.0614) + ( 14.50 1.703 0.0786) + ( 15.50 1.671 0.1173) + ( 16.00 1.649 0.1377) + ( 16.50 1.621 0.1600) + ( 17.00 1.598 0.1814) + ( 17.50 1.571 0.2042) + ( 18.00 1.549 0.2316) + ( 19.00 1.544 0.2719) + ( 19.50 1.549 0.2906) + ( 20.00 1.565 0.3085) + ( 21.00 1.565 0.3447) + ( 22.00 1.563 0.3820) + ( 23.00 1.558 0.4203) + ( 24.00 1.552 0.4593) + ( 25.00 1.546 0.4988) + ( 26.00 1.539 0.5387) + ( 28.00 1.527 0.6187) + ( 30.00 1.522 0.6978) + ( 32.00 1.529 0.7747) + ( 35.00 1.544 0.8869) + ( 40.00 1.529 1.0671) + ( 45.00 1.471 1.2319) + ( 50.00 1.376 1.3747) + ( 55.00 1.249 1.4899) + ( 60.00 1.097 1.5728) + ( 65.00 0.928 1.6202) + ( 70.00 0.750 1.6302) + ( 75.00 0.570 1.6031) + ( 80.00 0.396 1.5423) + ( 85.00 0.237 1.4598) + ( 90.00 0.101 1.4041) + ( 95.00 -0.022 1.4053) + ( 100.00 -0.143 1.3914) + ( 105.00 -0.261 1.3625) + ( 110.00 -0.374 1.3188) + ( 115.00 -0.480 1.2608) + ( 120.00 -0.575 1.1891) + ( 125.00 -0.659 1.1046) + ( 130.00 -0.727 1.0086) + ( 135.00 -0.778 0.9025) + ( 140.00 -0.809 0.7883) + ( 145.00 -0.818 0.6684) + ( 150.00 -0.800 0.5457) + ( 155.00 -0.754 0.4236) + ( 160.00 -0.677 0.3066) + ( 170.00 -0.417 0.1085) + ( 175.00 -0.229 0.0510) + ( 180.00 0.000 0.0407) +); diff --git a/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/DU40_A17 b/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/DU40_A17 new file mode 100755 index 000000000..6138a98dd --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/DU40_A17 @@ -0,0 +1,156 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0602) + (-175.00 0.218 0.0699) + (-170.00 0.397 0.1107) + (-160.00 0.642 0.3045) + (-155.00 0.715 0.4179) + (-150.00 0.757 0.5355) + (-145.00 0.772 0.6535) + (-140.00 0.762 0.7685) + (-135.00 0.731 0.8777) + (-130.00 0.680 0.9788) + (-125.00 0.613 1.0700) + (-120.00 0.532 1.1499) + (-115.00 0.439 1.2174) + (-110.00 0.337 1.2716) + (-105.00 0.228 1.3118) + (-100.00 0.114 1.3378) + ( -95.00 -0.002 1.3492) + ( -90.00 -0.120 1.3460) + ( -85.00 -0.236 1.3283) + ( -80.00 -0.349 1.2964) + ( -75.00 -0.456 1.2507) + ( -70.00 -0.557 1.1918) + ( -65.00 -0.647 1.1204) + ( -60.00 -0.727 1.0376) + ( -55.00 -0.792 0.9446) + ( -50.00 -0.842 0.8429) + ( -45.00 -0.874 0.7345) + ( -40.00 -0.886 0.6215) + ( -35.00 -0.875 0.5067) + ( -30.00 -0.839 0.3932) + ( -25.00 -0.777 0.2849) + ( -24.00 -0.761 0.2642) + ( -23.00 -0.744 0.2440) + ( -22.00 -0.725 0.2242) + ( -21.00 -0.706 0.2049) + ( -20.00 -0.685 0.1861) + ( -19.00 -0.662 0.1687) + ( -18.00 -0.635 0.1533) + ( -17.00 -0.605 0.1398) + ( -16.00 -0.571 0.1281) + ( -15.00 -0.534 0.1183) + ( -14.00 -0.494 0.1101) + ( -13.00 -0.452 0.1036) + ( -12.00 -0.407 0.0986) + ( -11.00 -0.360 0.0951) + ( -10.00 -0.311 0.0931) + ( -8.00 -0.208 0.0930) + ( -6.00 -0.111 0.0689) + ( -5.50 -0.090 0.0614) + ( -5.00 -0.072 0.0547) + ( -4.50 -0.065 0.0480) + ( -4.00 -0.054 0.0411) + ( -3.50 -0.017 0.0349) + ( -3.00 0.003 0.0299) + ( -2.50 0.014 0.0255) + ( -2.00 0.009 0.0198) + ( -1.50 0.004 0.0164) + ( -1.00 0.036 0.0147) + ( -0.50 0.073 0.0137) + ( 0.00 0.137 0.0113) + ( 0.50 0.213 0.0114) + ( 1.00 0.292 0.0118) + ( 1.50 0.369 0.0122) + ( 2.00 0.444 0.0124) + ( 2.50 0.514 0.0124) + ( 3.00 0.580 0.0123) + ( 3.50 0.645 0.0120) + ( 4.00 0.710 0.0119) + ( 4.50 0.776 0.0122) + ( 5.00 0.841 0.0125) + ( 5.50 0.904 0.0129) + ( 6.00 0.967 0.0135) + ( 6.50 1.027 0.0144) + ( 7.00 1.084 0.0158) + ( 7.50 1.140 0.0174) + ( 8.00 1.193 0.0198) + ( 8.50 1.242 0.0231) + ( 9.00 1.287 0.0275) + ( 9.50 1.333 0.0323) + ( 10.00 1.368 0.0393) + ( 10.50 1.400 0.0475) + ( 11.00 1.425 0.0580) + ( 11.50 1.449 0.0691) + ( 12.00 1.473 0.0816) + ( 12.50 1.494 0.0973) + ( 13.00 1.513 0.1129) + ( 13.50 1.538 0.1288) + ( 14.50 1.587 0.1650) + ( 15.00 1.614 0.1845) + ( 15.50 1.631 0.2052) + ( 16.00 1.649 0.2250) + ( 16.50 1.666 0.2467) + ( 17.00 1.681 0.2684) + ( 17.50 1.699 0.2900) + ( 18.00 1.719 0.3121) + ( 19.00 1.751 0.3554) + ( 19.50 1.767 0.3783) + ( 20.50 1.798 0.4212) + ( 21.00 1.810 0.4415) + ( 22.00 1.830 0.4830) + ( 23.00 1.847 0.5257) + ( 24.00 1.861 0.5694) + ( 25.00 1.872 0.6141) + ( 26.00 1.881 0.6593) + ( 28.00 1.894 0.7513) + ( 30.00 1.904 0.8441) + ( 32.00 1.915 0.9364) + ( 35.00 1.929 1.0722) + ( 40.00 1.903 1.2873) + ( 45.00 1.820 1.4796) + ( 50.00 1.690 1.6401) + ( 55.00 1.522 1.7609) + ( 60.00 1.323 1.8360) + ( 65.00 1.106 1.8614) + ( 70.00 0.880 1.8347) + ( 75.00 0.658 1.7567) + ( 80.00 0.449 1.6334) + ( 85.00 0.267 1.4847) + ( 90.00 0.124 1.3879) + ( 95.00 0.002 1.3912) + ( 100.00 -0.118 1.3795) + ( 105.00 -0.235 1.3528) + ( 110.00 -0.348 1.3114) + ( 115.00 -0.453 1.2557) + ( 120.00 -0.549 1.1864) + ( 125.00 -0.633 1.1041) + ( 130.00 -0.702 1.0102) + ( 135.00 -0.754 0.9060) + ( 140.00 -0.787 0.7935) + ( 145.00 -0.797 0.6750) + ( 150.00 -0.782 0.5532) + ( 155.00 -0.739 0.4318) + ( 160.00 -0.664 0.3147) + ( 170.00 -0.410 0.1144) + ( 175.00 -0.226 0.0702) + ( 180.00 0.000 0.0602) +); diff --git a/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/NACA64_A17 b/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/NACA64_A17 new file mode 100755 index 000000000..11fa618d0 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/constant/airfoilProperties/NACA64_A17 @@ -0,0 +1,147 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0198) + (-175.00 0.374 0.0341) + (-170.00 0.749 0.0955) + (-160.00 0.659 0.2807) + (-155.00 0.736 0.3919) + (-150.00 0.783 0.5086) + (-145.00 0.803 0.6267) + (-140.00 0.798 0.7427) + (-135.00 0.771 0.8537) + (-130.00 0.724 0.9574) + (-125.00 0.660 1.0519) + (-120.00 0.581 1.1355) + (-115.00 0.491 1.2070) + (-110.00 0.390 1.2656) + (-105.00 0.282 1.3104) + (-100.00 0.169 1.3410) + ( -95.00 0.052 1.3572) + ( -90.00 -0.067 1.3587) + ( -85.00 -0.184 1.3456) + ( -80.00 -0.299 1.3181) + ( -75.00 -0.409 1.2765) + ( -70.00 -0.512 1.2212) + ( -65.00 -0.606 1.1532) + ( -60.00 -0.689 1.0731) + ( -55.00 -0.759 0.9822) + ( -50.00 -0.814 0.8820) + ( -45.00 -0.850 0.7742) + ( -40.00 -0.866 0.6610) + ( -35.00 -0.860 0.5451) + ( -30.00 -0.829 0.4295) + ( -25.00 -0.853 0.3071) + ( -24.00 -0.870 0.2814) + ( -23.00 -0.890 0.2556) + ( -22.00 -0.911 0.2297) + ( -21.00 -0.934 0.2040) + ( -20.00 -0.958 0.1785) + ( -19.00 -0.982 0.1534) + ( -18.00 -1.005 0.1288) + ( -17.00 -1.082 0.1037) + ( -16.00 -1.113 0.0786) + ( -15.00 -1.105 0.0535) + ( -14.00 -1.078 0.0283) + ( -13.50 -1.053 0.0158) + ( -13.00 -1.015 0.0151) + ( -12.00 -0.904 0.0134) + ( -11.00 -0.807 0.0121) + ( -10.00 -0.711 0.0111) + ( -9.00 -0.595 0.0099) + ( -8.00 -0.478 0.0091) + ( -7.00 -0.375 0.0086) + ( -6.00 -0.264 0.0082) + ( -5.00 -0.151 0.0079) + ( -4.00 -0.017 0.0072) + ( -3.00 0.088 0.0064) + ( -2.00 0.213 0.0054) + ( -1.00 0.328 0.0052) + ( 0.00 0.442 0.0052) + ( 1.00 0.556 0.0052) + ( 2.00 0.670 0.0053) + ( 3.00 0.784 0.0053) + ( 4.00 0.898 0.0054) + ( 5.00 1.011 0.0058) + ( 6.00 1.103 0.0091) + ( 7.00 1.181 0.0113) + ( 8.00 1.257 0.0124) + ( 8.50 1.293 0.0130) + ( 9.00 1.326 0.0136) + ( 9.50 1.356 0.0143) + ( 10.00 1.382 0.0150) + ( 10.50 1.400 0.0267) + ( 11.00 1.415 0.0383) + ( 11.50 1.425 0.0498) + ( 12.00 1.434 0.0613) + ( 12.50 1.443 0.0727) + ( 13.00 1.451 0.0841) + ( 13.50 1.453 0.0954) + ( 14.00 1.448 0.1065) + ( 14.50 1.444 0.1176) + ( 15.00 1.445 0.1287) + ( 15.50 1.447 0.1398) + ( 16.00 1.448 0.1509) + ( 16.50 1.444 0.1619) + ( 17.00 1.438 0.1728) + ( 17.50 1.439 0.1837) + ( 18.00 1.448 0.1947) + ( 18.50 1.452 0.2057) + ( 19.00 1.448 0.2165) + ( 19.50 1.438 0.2272) + ( 20.00 1.428 0.2379) + ( 21.00 1.401 0.2590) + ( 22.00 1.359 0.2799) + ( 23.00 1.300 0.3004) + ( 24.00 1.220 0.3204) + ( 25.00 1.168 0.3377) + ( 26.00 1.116 0.3554) + ( 28.00 1.015 0.3916) + ( 30.00 0.926 0.4294) + ( 32.00 0.855 0.4690) + ( 35.00 0.800 0.5324) + ( 40.00 0.804 0.6452) + ( 45.00 0.793 0.7573) + ( 50.00 0.763 0.8664) + ( 55.00 0.717 0.9708) + ( 60.00 0.656 1.0693) + ( 65.00 0.582 1.1606) + ( 70.00 0.495 1.2438) + ( 75.00 0.398 1.3178) + ( 80.00 0.291 1.3809) + ( 85.00 0.176 1.4304) + ( 90.00 0.053 1.4565) + ( 95.00 -0.074 1.4533) + ( 100.00 -0.199 1.4345) + ( 105.00 -0.321 1.4004) + ( 110.00 -0.436 1.3512) + ( 115.00 -0.543 1.2874) + ( 120.00 -0.640 1.2099) + ( 125.00 -0.723 1.1196) + ( 130.00 -0.790 1.0179) + ( 135.00 -0.840 0.9064) + ( 140.00 -0.868 0.7871) + ( 145.00 -0.872 0.6627) + ( 150.00 -0.850 0.5363) + ( 155.00 -0.798 0.4116) + ( 160.00 -0.714 0.2931) + ( 170.00 -0.749 0.0971) + ( 175.00 -0.374 0.0334) + ( 180.00 0.000 0.0198) +); diff --git a/exampleCases/example.ADM.ssc.zeroMQ/constant/polyMesh/blockMeshDict b/exampleCases/example.ADM.ssc.zeroMQ/constant/polyMesh/blockMeshDict new file mode 100755 index 000000000..463f233e0 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/constant/polyMesh/blockMeshDict @@ -0,0 +1,101 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object blockMeshDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../../setUp" + + + + +convertToMeters 1.0; + +vertices +( + ( $xMin $yMin $zMin) + ( $xMax $yMin $zMin) + ( $xMax $yMax $zMin) + ( $xMin $yMax $zMin) + ( $xMin $yMin $zMax) + ( $xMax $yMin $zMax) + ( $xMax $yMax $zMax) + ( $xMin $yMax $zMax) +); + +blocks +( + hex (0 1 2 3 4 5 6 7) ($nx $ny $nz) simpleGrading (1 1 1) +); + +edges +( +); + +boundary +( + lower + { + type wall; + faces + ( + (0 3 2 1) + ); + } + upper + { + type wall; + faces + ( + (4 5 6 7) + ); + } + west + { + type patch; + faces + ( + (0 4 7 3) + ); + } + east + { + type patch; + faces + ( + (1 2 6 5) + ); + } + north + { + type wall; + faces + ( + (3 7 6 2) + ); + } + south + { + type wall; + faces + ( + (0 1 5 4) + ); + } +); + +mergePatchPairs +( +); + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/constant/transportProperties b/exampleCases/example.ADM.ssc.zeroMQ/constant/transportProperties new file mode 100755 index 000000000..3ee719c86 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/constant/transportProperties @@ -0,0 +1,39 @@ +/*---------------------------------------------------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.openfoam.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + + root ""; + case ""; + instance ""; + local ""; + + class dictionary; + object transportProperties; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +transportModel Newtonian; + +// Molecular viscosity +nu nu [0 2 -1 0 0 0 0] $nu; + +// Reference temperature +TRef TRef [0 0 0 1 0 0 0] $TRef; + +// Prandtl numbers +Pr Pr [0 0 0 0 0 0 0] $Pr; +Prt Prt [0 0 0 0 0 0 0] $Prt; +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/constant/turbineArrayProperties b/exampleCases/example.ADM.ssc.zeroMQ/constant/turbineArrayProperties new file mode 100755 index 000000000..03ba2956b --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/constant/turbineArrayProperties @@ -0,0 +1,244 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object turbineProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +globalProperties +{ + outputControl "timeStep"; +// outputControl "runTime"; + outputInterval 1; +} + + +// _SSC_ +sscProperties +{ + sscEnabled true; //Enable/disable ssc, if not present defaults to False + nInputsToSSC 3; // Number of inputs EACH turbine passes to the super controller + nOutputsFromSSC 2; // Number of outputs the super controller sends to EACH turbine + sscControllerType "zeromqSSC"; // The type of SSC + zmqAddress "tcp://localhost:5551"; +} + +// MATLAB: phi=-10; D=126.4; locs=D*[0 0 0;0 2 0;0 4 0;5 0 0; 5 2 0; 5 4 0; 10 0 0; 10 2 0; 10 4 0]*rotz(phi); +// locs(:,1)=locs(:,1)-min(locs(:,1)) + (3000-(max(locs(:,1))-min(locs(:,1))))/2; locs(:,2)=locs(:,2)-min(locs(:,2)) + (3000-(max(locs(:,2))-min(locs(:,2))))/2; + +turbine0 +{ + turbineType "NREL5MWRef"; + baseLocation (868.0 1120.8 0.0); + nRadial 64; + azimuthMaxDis 2.0; + nAvgSector 1; + pointDistType "uniform"; + pointInterpType "linear"; + bladeUpdateType "oldPosition"; + epsilon 20.0; + forceScalar 1.0; + inflowVelocityScalar 0.94; + tipRootLossCorrType "Glauert"; + rotationDir "cw"; + Azimuth 0.0; + RotSpeed 9.15519863; + TorqueGen 0.0; + Pitch 0.0; + NacYaw 270.0; + fluidDensity 1.225; +} + +turbine1 +{ + turbineType "NREL5MWRef"; + baseLocation (1500.0 1120.8 0.0); + nRadial 64; + azimuthMaxDis 2.0; + nAvgSector 1; + pointDistType "uniform"; + pointInterpType "linear"; + bladeUpdateType "oldPosition"; + epsilon 20.0; + forceScalar 1.0; + inflowVelocityScalar 0.94; + tipRootLossCorrType "Glauert"; + rotationDir "cw"; + Azimuth 0.0; + RotSpeed 9.15519863; + TorqueGen 0.0; + Pitch 0.0; + NacYaw 270.0; + fluidDensity 1.225; +} + +turbine2 +{ + turbineType "NREL5MWRef"; + baseLocation (2132.0 1120.8 0.0); + nRadial 64; + azimuthMaxDis 2.0; + nAvgSector 1; + pointDistType "uniform"; + pointInterpType "linear"; + bladeUpdateType "oldPosition"; + epsilon 20.0; + forceScalar 1.0; + inflowVelocityScalar 0.94; + tipRootLossCorrType "Glauert"; + rotationDir "cw"; + Azimuth 0.0; + RotSpeed 9.15519863; + TorqueGen 0.0; + Pitch 0.0; + NacYaw 270.0; + fluidDensity 1.225; +} + +turbine3 +{ + turbineType "NREL5MWRef"; + baseLocation (868.0 1500.0 0.0); + nRadial 64; + azimuthMaxDis 2.0; + nAvgSector 1; + pointDistType "uniform"; + pointInterpType "linear"; + bladeUpdateType "oldPosition"; + epsilon 20.0; + forceScalar 1.0; + inflowVelocityScalar 0.94; + tipRootLossCorrType "Glauert"; + rotationDir "cw"; + Azimuth 0.0; + RotSpeed 9.15519863; + TorqueGen 0.0; + Pitch 0.0; + NacYaw 270.0; + fluidDensity 1.225; +} + +turbine4 +{ + turbineType "NREL5MWRef"; + baseLocation (1500.0 1500.0 0.0); + nRadial 64; + azimuthMaxDis 2.0; + nAvgSector 1; + pointDistType "uniform"; + pointInterpType "linear"; + bladeUpdateType "oldPosition"; + epsilon 20.0; + forceScalar 1.0; + inflowVelocityScalar 0.94; + tipRootLossCorrType "Glauert"; + rotationDir "cw"; + Azimuth 0.0; + RotSpeed 9.15519863; + TorqueGen 0.0; + Pitch 0.0; + NacYaw 270.0; + fluidDensity 1.225; +} + +turbine5 +{ + turbineType "NREL5MWRef"; + baseLocation (2132.0 1500.0 0.0); + nRadial 64; + azimuthMaxDis 2.0; + nAvgSector 1; + pointDistType "uniform"; + pointInterpType "linear"; + bladeUpdateType "oldPosition"; + epsilon 20.0; + forceScalar 1.0; + inflowVelocityScalar 0.94; + tipRootLossCorrType "Glauert"; + rotationDir "cw"; + Azimuth 0.0; + RotSpeed 9.15519863; + TorqueGen 0.0; + Pitch 0.0; + NacYaw 270.0; + fluidDensity 1.225; +} + +turbine6 +{ + turbineType "NREL5MWRef"; + baseLocation (868.0 1879.2 0.0); + nRadial 64; + azimuthMaxDis 2.0; + nAvgSector 1; + pointDistType "uniform"; + pointInterpType "linear"; + bladeUpdateType "oldPosition"; + epsilon 20.0; + forceScalar 1.0; + inflowVelocityScalar 0.94; + tipRootLossCorrType "Glauert"; + rotationDir "cw"; + Azimuth 0.0; + RotSpeed 9.15519863; + TorqueGen 0.0; + Pitch 0.0; + NacYaw 270.0; + fluidDensity 1.225; +} + +turbine7 +{ + turbineType "NREL5MWRef"; + baseLocation (1500.0 1879.2 0.0); + nRadial 64; + azimuthMaxDis 2.0; + nAvgSector 1; + pointDistType "uniform"; + pointInterpType "linear"; + bladeUpdateType "oldPosition"; + epsilon 20.0; + forceScalar 1.0; + inflowVelocityScalar 0.94; + tipRootLossCorrType "Glauert"; + rotationDir "cw"; + Azimuth 0.0; + RotSpeed 9.15519863; + TorqueGen 0.0; + Pitch 0.0; + NacYaw 270.0; + fluidDensity 1.225; +} + +turbine8 +{ + turbineType "NREL5MWRef"; + baseLocation (2132.0 1879.2 0.0); + nRadial 64; + azimuthMaxDis 2.0; + nAvgSector 1; + pointDistType "uniform"; + pointInterpType "linear"; + bladeUpdateType "oldPosition"; + epsilon 20.0; + forceScalar 1.0; + inflowVelocityScalar 0.94; + tipRootLossCorrType "Glauert"; + rotationDir "cw"; + Azimuth 0.0; + RotSpeed 9.15519863; + TorqueGen 0.0; + Pitch 0.0; + NacYaw 270.0; + fluidDensity 1.225; +} \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc.zeroMQ/constant/turbineProperties/NREL5MWRef b/exampleCases/example.ADM.ssc.zeroMQ/constant/turbineProperties/NREL5MWRef new file mode 100755 index 000000000..c51e9a8fd --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/constant/turbineProperties/NREL5MWRef @@ -0,0 +1,122 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object turbineProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +NumBl 3; +TipRad 63.0; +HubRad 1.5; +UndSling 0.0; +OverHang -5.01910; +NacelleLength 8; +NacelleFrontalArea 2; +NacelleCd 0.5; +TowerHt 87.6; +Twr2Shft 1.96256; +ShftTilt -5.0; +PreCone (-2.5 -2.5 -2.5); +GBRatio 97.0; +GBEfficiency 1.0; +GenEfficiency 0.944; +RatedRotSpeed 12.1; +GenIner 534.116; +HubIner 115.926E3; +BladeIner 11.776047E6; +GenTorqueControllerType "fiveRegion"; +//GenTorqueControllerType "speedTorqueTable"; +//GenTorqueControllerType "none"; +BladePitchControllerType "PIDSC"; +//BladePitchControllerType "none"; +NacYawControllerType "yawSC"; +RotSpeedLimiter false; +GenTorqueRateLimiter true; +NacYawRateLimiter true; +BladePitchRateLimiter true; +SpeedFilterCornerFrequency 2.0; + + +GenTorqueControllerParams +{ + RateLimitGenTorque 15.0E3; + SpeedTorqueTable + ( + // gen speed (RPM) gen torque (N-m) + ( 670.00 0.0 ) + ( 871.00 20000.0 ) + ( 1161.96 32000.0 ) + ( 1173.70 43093.6 ) + ); + CutInGenSpeed 670.0; + Region2StartGenSpeed 871.0; + Region2EndGenSpeed 1161.963; + CutInGenTorque 0.0; + RatedGenTorque 43.09355E3; + KGen 2.55764E-2; +} + +BladePitchControllerParams +{ + RateLimitBladePitch 8.000; + PitchMin 0.000; + PitchMax 90.000; + PitchK 6.302336; + PitchControlKP 1.82620057; + PitchControlKI 0.78265750; + PitchControlKD 0.000; +} + +NacYawControllerParams +{ + RateLimitNacYaw 2.0; +} + + + + +Airfoils +( + "Cylinder1" + "Cylinder2" + "DU40_A17" + "DU35_A17" + "DU30_A17" + "DU25_A17" + "DU21_A17" + "NACA64_A17" +); + + + +BladeData +( +// radius(m) c(m) twist(deg) airfoil + (2.8667 3.542 13.308 0) + (5.6 3.854 13.308 0) + (8.3333 4.167 13.308 1) + (11.75 4.557 13.308 2) + (15.85 4.652 11.48 3) + (19.95 4.458 10.162 3) + (24.05 4.249 9.011 4) + (28.15 4.007 7.795 5) + (32.25 3.748 6.544 5) + (36.35 3.502 5.361 6) + (40.45 3.256 4.188 6) + (44.55 3.01 3.125 7) + (48.65 2.764 2.319 7) + (52.75 2.518 1.526 7) + (56.1667 2.313 0.863 7) + (58.9 2.086 0.37 7) + (61.6333 1.419 0.106 7) +); diff --git a/exampleCases/example.ADM.ssc.zeroMQ/constant/turbulenceProperties b/exampleCases/example.ADM.ssc.zeroMQ/constant/turbulenceProperties new file mode 100755 index 000000000..f8a545e0c --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/constant/turbulenceProperties @@ -0,0 +1,22 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object turbulenceProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +// simulationType RASModel; + simulationType LESModel; +// simulationType laminar; + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/runscript.preprocess b/exampleCases/example.ADM.ssc.zeroMQ/runscript.preprocess new file mode 100755 index 000000000..16ed0ea80 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/runscript.preprocess @@ -0,0 +1,155 @@ +#!/bin/bash +#PBS -N ADM_noPrecursor_preprocess +#PBS -l nodes=3:ppn=8 + + +# User Input. +OpenFOAMversion=2.4.0 # OpenFOAM version +startTime=0 # Start time +updateBCType=0 # Boolean for whether or not the boundary condition types will be updated over + # what is in the initial conditions files. Leave it 0 for precursors. +inflowDir='west' # For inflow/outflow cases, specify the inflow direction. Choices are 'west', + # 'east', 'south', 'west', 'southWest', 'northWest', 'southEast', and + # 'northEast'. +refineMeshLocal=0 # Number of levels of local refinement (requires system/topoSetDict and + # system/refineHexMeshDict). +refineMeshGlobal=0 # Number of levels of global refinement. +parallel=0 # parallel untested! # Boolean for whether or not the preprocessing is run in parallel. +cores=1 # Enter the number of cores you will preprocess on. + + + + + + +# Define some functions for mesh refinement. +# Local refinement performed on one core. +refineMeshLocal() +{ + i=$1 + while [ $i -ge 1 ] + do + echo " -Performing level $i local refinement with topoSet/refineHexMesh" + echo " *selecting cells to refine..." + topoSet -dict system/topoSetDict.local.$i > log.topoSet.local.$i 2>&1 + + echo " *refining cells..." + refineHexMesh local -overwrite > log.refineHexMesh.local.$i 2>&1 + + let i=i-1 + done +} + +# Global refinement performed in parallel. +refineMeshGlobal() +{ + i=1 + while [ $i -le $1 ] + do + echo " -Performing level $i global refinement with refineMesh" + echo " *refining cells..." + mpirun -np $cores refineMesh -parallel -overwrite > log.refineMesh.global.$i 2>&1 + + let i=i+1 + done +} + + +# If running in parallel, cd to job launch directory +if [ $parallel -eq 1 ] + then + cd $PBS_O_WORKDIR +fi + + +# Source the bash profile and then call the appropriate OpenFOAM version function +# so that all the modules and environment variables get set. +echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." +#source $HOME/.bash_profile +#OpenFOAM-$OpenFOAMversion + + +# Copy the controlDict.1 (assuming this is the one the actual solver will start +# out with) to controlDict. OpenFOAM reads "controlDict", not the numbered ones. +echo "Getting the control dictionary ready..." +cp system/controlDict.1 system/controlDict + + +# Copy the "clean" .original initial fields to a working copy. OpenFOAM does not +# read the ".original" initial fields--that's why they remain clean. +echo "Getting the initial condition directory ready..." +rm -rf $startTime +cp -rf $startTime.original $startTime + + +# Build the mesh. +echo "Using blockMesh to create the base mesh..." +cp constant/polyMesh/blockMeshDict ./ +rm -rf constant/polyMesh/* +mv ./blockMeshDict constant/polyMesh +blockMesh > log.blockMesh 2>&1 + + +# The initial fields come from the precursor which is periodic on all sides. The turbine +# case has inflow and outflow. Call the changeDictionary utility to make the south and +# north sides inflow and outflow. +if [ $updateBCType -eq 1 ] + then + echo "Using changeDictionary to update boundary conditions..." + changeDictionary -dict system/changeDictionaryDict.updateBCs.$inflowDir > log.changeDictionary.updateBCs.$inflowDir.1 2>&1 +fi + + +# Do serial local refinement +echo "Using refineHexMesh to perform " $refineMeshLocal " of local refinement..." +refineMeshLocal $refineMeshLocal + + +# If running in paralle from this point forward, then do the following: +if [ $cores -gt 1 ] + then + # Decompose the mesh and solution files (serial) + echo "Using decomposePar to decompose the problem for parallel processing..." + decomposePar -cellDist -force > log.decomposePar 2>&1 + + # Check the mesh + echo "Running checkMesh to report mesh diagnostics..." + mpirun -np $cores checkMesh -parallel > log.checkMesh.1 2>&1 + + # Perform global refinement to desired resolution. + echo "Using refineMesh to perform " $refineMeshGlobal " of global refinement..." + refineMeshGlobal $refineMeshGlobal + + # The mesh got globally refined, but the solution file did not, so + # the boundary fields may not have the correct number of entries. + # Use the changeDictionary utility to overwrite the spatially varying + # boundary data to a uniform single value. + if [ $updateBCType -eq 1 ] + then + echo "Using changeDictionary to ensure that the boundaries have the correct number of faces..." + mpirun -np $cores changeDictionary -dict system/changeDictionaryDict.updateBCs.$inflowDir -parallel > log.changeDictionary.updateBCs.$inflowDir.1 2>&1 + fi + + # Renumber the mesh for better matrix solver performance. + echo "Using renumberMesh to renumber the mesh for better matrix conditioning..." + mpirun -np $cores renumberMesh -parallel -overwrite > log.renumberMesh 2>&1 + + # Do one last check on the mesh. + echo "Running checkMesh to report mesh diagnostics..." + mpirun -np $cores checkMesh -parallel > log.checkMesh.3 2>&1 + + +# Otherwise, run in serial as follows: +else + # Renumber the mesh. + echo "Using renumberMesh to renumber the mesh for better matrix conditioning..." + renumberMesh -overwrite > log.renumberMesh 2>&1 + + # Decompose the mesh and solution files (serial) + echo "Using decomposePar to decompose the problem for parallel processing..." + decomposePar -cellDist -force > log.decomposePar 2>&1 + + # Check the mesh. + echo "Running checkMesh to report mesh diagnostics..." + checkMesh > log.checkMesh.1 2>&1 +fi diff --git a/exampleCases/example.ADM.ssc.zeroMQ/runscript.removeAll b/exampleCases/example.ADM.ssc.zeroMQ/runscript.removeAll new file mode 100755 index 000000000..463332f98 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/runscript.removeAll @@ -0,0 +1,21 @@ +#!/bin/bash + +# Remove initial conditions and temporary files +rm -rf 0 +rm -rf system/controlDict + +# Remove logs +rm -rf log.* +rm -rf runscript.solve.1.o* runscript.solve.1.e* + +# Remove processor files and folders +rm -rf processor* + +# Remove simulation output +rm -rf postProcessing +rm -rf turbineOutput + +# Remove polyMesh data +cp constant/polyMesh/blockMeshDict ./ +rm -rf constant/polyMesh/* +mv ./blockMeshDict constant/polyMesh \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc.zeroMQ/runscript.solve.1 b/exampleCases/example.ADM.ssc.zeroMQ/runscript.solve.1 new file mode 100755 index 000000000..191fffd4a --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/runscript.solve.1 @@ -0,0 +1,36 @@ +#!/bin/bash +#PBS -N piso_9tb_SSC +#PBS -l nodes=1:ppn=8 + +cd $PBS_O_WORKDIR + +# User Input. +startTime=0 # Start time +cores=8 # Enter the number of cores you will preprocess on. +runNumber=1 # Enter the run number (useful for keeping track of restarts). +solver=pisoFoamTurbine.ADM # Enter the name of the flow solver. + + +echo "Starting OpenFOAM job at: " $(date) +echo "using " $cores " cores" + + +# Source the bash profile and then call the appropriate OpenFOAM version function +# so that all the modules and environment variables get set. +echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." +module load openfoam/2.4.0 +module load matlab +export ZEROMQ_INCLUDE=$HOME/OpenFOAM/zeroMQ/libzmq/install/include +export ZEROMQ_LIB=$HOME/OpenFOAM/zeroMQ/libzmq/install/lib64 +export LD_LIBRARY_PATH=$HOME/OpenFOAM/zeroMQ/libzmq/install/lib:$LD_LIBRARY_PATH +export LD_LIBRARY_PATH=$HOME/OpenFOAM/zeroMQ/libzmq/install/lib64:$LD_LIBRARY_PATH + +# Get the control dictionary for this particular run. +cp system/controlDict.$runNumber system/controlDict + + +# Run the solver. +(mpirun -np $cores $solver -parallel > log.$runNumber.$solver 2>&1) & +(cd zeromqServerFLORIS; matlab -nodisplay -noFigureWindows -logfile 'SSC_MATLAB.log' -r florisSSC) + +echo "Ending OpenFOAM job at: " $(date) \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc.zeroMQ/setUp b/exampleCases/example.ADM.ssc.zeroMQ/setUp new file mode 100755 index 000000000..4ad533e07 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/setUp @@ -0,0 +1,93 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.4.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +// Domain size and number of cells. +xMin 0.0; // Minimum x-extent of domain (m). +yMin 0.0; // Minimum y-extent of domain (m). +zMin 0.0; // Minimum z-extent of domain (m). +xMax 3000.0; // Maximum x-extent of domain (m). +yMax 3000.0; // Maximum y-extent of domain (m). +zMax 1000.0; // Maximum z-extent of domain (m). +nx 100; // Number of cells in x-direction. +ny 100; // Number of cells in y-direction. +nz 33; // Number of cells in z-direction. + + + + +// Number of cores and domain decomposition information. +nCores 8; // Number of cores on which to run this case. +decompType simple; // Decomposition algorithm. "simple" and "scotch" are good choices. +decompOrder (4 2 1); // Order of the decomposition number of partitions in (x y z)-directions. + + + + +// Planar averaging and source term statistics options. +statisticsOn true; // Gather planar-averaged flow statistics. +statisticsFrequency 5; // Frequency in time steps of statistics gathering. + + + + +// Initial values for the variables. +// Note that U and T get overwritten if setFieldsABL is called. +U0Mag 8.00; // Initial condition for wind speed (m/s). +dir 270.0; // Initial condition for wind direction (deg). +windHeight 90.0; // Height at which to drive mean wind to U0Mag/dir (m). +p_rgh0 0.0; // Initial pressure (minus the hydrostatic variation and normalized by density) (m^2/s^2). +nuSgs0 0.0; // Initial SGS viscosity (m^2/s). +k0 0.1; // Initial SGS turbulent kinetic energy (m^2/s^2). +kappat0 0.0; // Initial SGS temperature diffusivity (m^2/s). +TGradUpper 0.003; // Potential temperature gradient above the strong inversion (K/m). +zInversion 750.0; // Height of the middle of the initial strong capping inversion (m). +inversionWidth 100.0; // Vertical width of the intial strong capping inversion (m). +TBottom 300.0; // Initial potential temperature at bottom of strong capping inversion (K). +TTop 305.0; // Initial potential temperature at top of strong capping inversion (K). + + + + +// General conditions and parameters. +Pr 0.7; // Molecular Prandtl number. +Prt 0.33333333; // Turbulent Prandtl number. +nu 1.0E-5; // Molecular viscosity (m^2/s). +TRef 300.0; // Reference potential temperature (K). +latitude 41.3; // Latitude on the Earth of the site (deg). +EarthPeriod 24.0; // Earth's rotation period (hr). + + + + +// SGS model inputs. +LESModel oneEqEddy; // SGS model selection. +ce 0.93; // SGS model constant. +ck 0.0673; // SGS model constant. + + + + +// Surface conditions. +qwall (0.0 0.0 0.0); // Temperature flux at wall (modify the z-value). A negative value is flux into domain (K-m/s). +Rwall (0.0 0.0 0.0 0.0 0.0 0.0); // Initial wall shear stress (m^2/s^2). +kappa 0.4; // von Karman constant. +z0 0.01; // Surface roughness (m). +betaM 16.0; // Monin-Obukhov wall shear stress model constant. +gammaM 5.0; // Monin-Obukhov wall shear stress model constant. +betaH 9.0; // Monin-Obukhov wall temperature flux model constant. +gammaH 7.8; // Monin-Obukhov wall temperature flux model constant. +alphaH 1.0; // Monin-Obukhov wall temperature flux model constant. +heatingRate 0.0; // Surface temperature change rate (when not directly setting temperature flux) (K/s). + + + + +#inputMode merge + +// ************************************************************************* // + diff --git a/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs b/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs new file mode 100755 index 000000000..b4ab16ba4 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs @@ -0,0 +1,200 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.cyclic b/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.cyclic new file mode 100755 index 000000000..9d7df3a40 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.cyclic @@ -0,0 +1,238 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + U + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + k + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + kappat + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + nuSgs + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + p_rgh + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.east b/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.east new file mode 100755 index 000000000..75ea86de5 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.east @@ -0,0 +1,290 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.north b/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.north new file mode 100755 index 000000000..ab34b5c5a --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.north @@ -0,0 +1,200 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + south + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + south + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + south + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + north + { + type fixedFluxPressure; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.northeast b/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.northeast new file mode 100755 index 000000000..9ef569c78 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.northeast @@ -0,0 +1,290 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + south + { + type zeroGradient; + value uniform 300; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + south + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + south + { + type zeroGradient; + value uniform 0.1; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + north + { + type fixedFluxPressure; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.northwest b/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.northwest new file mode 100755 index 000000000..f62b02acb --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.northwest @@ -0,0 +1,290 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + south + { + type zeroGradient; + value uniform 300; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + east + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + south + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + south + { + type zeroGradient; + value uniform 0.1; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + east + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + north + { + type fixedFluxPressure; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedFluxPressure; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.south b/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.south new file mode 100755 index 000000000..b4ab16ba4 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.south @@ -0,0 +1,200 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.southeast b/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.southeast new file mode 100755 index 000000000..88a7ebf76 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.southeast @@ -0,0 +1,290 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.southwest b/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.southwest new file mode 100755 index 000000000..6e9078e8e --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.southwest @@ -0,0 +1,290 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + east + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + east + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedFluxPressure; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.west b/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.west new file mode 100755 index 000000000..7dec20912 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.west @@ -0,0 +1,200 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + east + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + east + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + west + { + type fixedFluxPressure; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/system/controlDict.1 b/exampleCases/example.ADM.ssc.zeroMQ/system/controlDict.1 new file mode 100755 index 000000000..92a8952aa --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/system/controlDict.1 @@ -0,0 +1,66 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object controlDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + + application ABLSolver; + + libs ("libuserfiniteVolume.so" "libuserincompressibleLESModels.so"); + + startFrom startTime; + + startTime 0.0; + + stopAt endTime; + + endTime 1000.0; + + deltaT 0.5; + + writeControl adjustableRunTime; + + writeInterval 99000.0; + + purgeWrite 0; + + writeFormat ascii; + + writePrecision 8; + + writeCompression compressed; + + timeFormat general; + + timePrecision 8; + + runTimeModifiable yes; + + adjustTimeStep no; + + maxCo 0.75; + + maxDeltaT 25.0; + + startTimeMean 1000.0; + + startTimeCorr 1000.0; + + functions + { + #include "sampling/sliceDataInstantaneous" + } + +// ************************************************************************* // + diff --git a/exampleCases/example.ADM.ssc.zeroMQ/system/decomposeParDict b/exampleCases/example.ADM.ssc.zeroMQ/system/decomposeParDict new file mode 100755 index 000000000..c7bea2ee8 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/system/decomposeParDict @@ -0,0 +1,76 @@ +/*-------------------------------*- C++ -*---------------------------------*\ +| ========= | +| \\ / OpenFOAM | +| \\ / | +| \\ / The Open Source CFD Toolbox | +| \\/ http://www.OpenFOAM.org | +\*-------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + note "mesh decomposition control dictionary"; + location "system"; + object decomposeParDict; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +numberOfSubdomains $nCores; +method $decompType; +//preservePatches (north south east west); + +simpleCoeffs +{ + n $decompOrder; + delta 0.001; +} + +hierarchicalCoeffs +{ + n (1 1 3); + delta 0.001; + order xyz; +} + +metisCoeffs +{ + processorWeights + ( + ); +} + +scotchCoeffs +{ + //processorWeights + //( + // 1 + // 1 + // 1 + // 1 + //); + //writeGraph true; + //strategy "b"; +} + +manualCoeffs +{ + dataFile "decompositionData"; +} + + +//// Is the case distributed +distributed no; +//// Per slave (so nProcs-1 entries) the directory above the case. +//roots +//( +// "/tmp" +// "/tmp" +//); + + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/system/fvSchemes b/exampleCases/example.ADM.ssc.zeroMQ/system/fvSchemes new file mode 100755 index 000000000..ead2aeb21 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/system/fvSchemes @@ -0,0 +1,85 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSchemes; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +ddtSchemes +{ + default backward; +// default CrankNicolson 1.0; +} + +gradSchemes +{ + default Gauss linear; + grad(U) Gauss linear; +} + +divSchemes +{ + default Gauss linear; + //div(phi,U) Gauss linear; + //div(phi,T) Gauss linear; + div(phi,U) Gauss localBlended linear upwind; + div(phi,T) Gauss localBlended linear upwind; + div(R) Gauss linear; + div(U) Gauss linear; + div((nuEff*dev(grad(U).T()))) Gauss linear; + div(B) Gauss linear; + div(phi,B) Gauss linear; + div(phi,k) Gauss linear; +} + +laplacianSchemes +{ + default Gauss linear uncorrected; + laplacian(rUA,p) Gauss linear uncorrected; + laplacian((1|A(U)),p) Gauss linear uncorrected; + laplacian(interpolate((1|A(U))),p) Gauss linear uncorrected; + laplacian(interpolate((1|A(U))),pd) Gauss linear uncorrected; + laplacian(nu,U) Gauss linear uncorrected; + laplacian(nuEff,U) Gauss linear uncorrected; + laplacian(kappaEff,T) Gauss linear uncorrected; + laplacian(DBEff,B) Gauss linear uncorrected; + laplacian(nuSgs,U) Gauss linear uncorrected; +} + +interpolationSchemes +{ + default linear; +} + +snGradSchemes +{ + default uncorrected; +} + +fluxRequired +{ + default no; + p ; +} + +schemeBlending +{ + xBlending1 -10.0; + xBlending2 0.0; + xBlending3 60.0; + xBlending4 70.0; + blendingFactor1 0.85; + blendingFactor2 1.00; +} + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/system/fvSolution b/exampleCases/example.ADM.ssc.zeroMQ/system/fvSolution new file mode 100755 index 000000000..b3f1a7e4a --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/system/fvSolution @@ -0,0 +1,102 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSolution; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +solvers +{ + "(p_rgh|p)" + { + solver PCG; + preconditioner + { + preconditioner GAMG; + tolerance 1e-05; + relTol 0.01; + smoother DICGaussSeidel; + nPreSweeps 0; + nPostSweeps 2; + nFinestSweeps 2; + cacheAgglomeration true; + nCellsInCoarsestLevel 100; + agglomerator faceAreaPair; + mergeLevels 2; + } + tolerance 1e-06; + relTol 0.01; + maxIter 1000; + } + + "(p_rghFinal|pFinal)" + { + $p; + relTol 0.0; + } + + "(U|T|k|epsilon|R)" + { + solver PBiCG; + preconditioner DILU; + tolerance 1e-6; + relTol 0.1; + maxIter 1000; + } + + "(U|T|k|epsilon|R)Final" + { + $U; + relTol 0.0; + } + + "(flm|fmm)" + { + solver PBiCG; + preconditioner DILU; + tolerance 1e-6; + relTol 0.1; + } + + "(flm|fmm)Final" + { + $flm; + relTol 0.0; + } + + +} + +PISO +{ + momentumPredictor yes; + nOuterCorrectors 1; + nCorrectors 3; + nNonOrthogonalCorrectors 0; + pRefPoint (-39.0 0 11.5); + pRefValue 0; +} + +relaxationFactors +{ + fields + { + } + equations + { + "(U|T|k|epsilon|R)" 1.0; + "(U|T|k|epsilon|R)Final" 1.0; + } +} + +// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeroMQ/system/sampling/sliceDataInstantaneous b/exampleCases/example.ADM.ssc.zeroMQ/system/sampling/sliceDataInstantaneous new file mode 100755 index 000000000..d80b1da9d --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/system/sampling/sliceDataInstantaneous @@ -0,0 +1,59 @@ + sliceDataInstantaneous + { + type surfaces; + functionObjectLibs ("libsampling.so"); + enabled true; + interpolationScheme cell; + outputControl adjustableTime; + writeInterval 5; + surfaceFormat vtk; + fields + ( + U + ); + surfaces + ( + slice_horizontal + { + type plane; + basePoint (1500.01 1500.01 90.01); + normalVector (0 0 1); + triangulate false; + } + slice_vertical_x500 + { + type plane; + basePoint (500.01 1500.01 90.01); + normalVector (1 0 0); + triangulate false; + } + slice_vertical_x3D + { + type plane; + basePoint (1379.2 1500.01 90.01); + normalVector (1 0 0); + triangulate false; + } + slice_vertical_x5D + { + type plane; + basePoint (1632.0 1500.01 90.01); + normalVector (1 0 0); + triangulate false; + } + slice_vertical_x7D + { + type plane; + basePoint (1884.8 1500.01 90.01); + normalVector (1 0 0); + triangulate false; + } + slice_vertical_x10D + { + type plane; + basePoint (2264.0 1500.01 90.01); + normalVector (1 0 0); + triangulate false; + } + ); + } diff --git a/exampleCases/example.ADM.ssc.zeroMQ/system/setFieldsABLDict b/exampleCases/example.ADM.ssc.zeroMQ/system/setFieldsABLDict new file mode 100755 index 000000000..11b48e0bc --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/system/setFieldsABLDict @@ -0,0 +1,504 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + + root ""; + case ""; + instance ""; + local ""; + + class dictionary; + object setFieldsABLDict; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +// Extents of the domain. +xMin $xMin; +yMin $yMin; +zMin $zMin; + +xMax $xMax; +yMax $yMax; +zMax $zMax; + +zRef $zMax; + +// Specify if distance from wall should be used as z. +useWallDistZ false; +scaleVelocityWithHeight false; + + +// Specify how to initialze the base velocity and temperature profile. +velocityInitType "table"; +//velocityInitType "log"; +//velocityInitType "geostrophic"; +temperatureInitType "table"; +//temperatureInitType "simple"; + +// Maximum perturbation of streamwise/spanwise flow near surface. +deltaU 0.25; +deltaV 0.25; + +// Total periods of perturbations in streamwise/spanwise in the domain. +Uperiods 12.0; +Vperiods 12.0; + +// Percentage of domain height (zMax) where peak in perturbation +// magnitude occurs. +zPeak 0.015; + +// Initial height of the center of the capping inversion. +zInversion $zInversion; + +// Width of the capping inversion. +widthInversion $inversionWidth; + +// Potential temperature at the bottom and top of the capping inversion. +Tbottom $TBottom; +Ttop $TTop; + +// Maximum temperature fluctuation size below capping inversion. +TPrimeScale 0.0; + +// Height rate of change of potential temperature above the inversion. +dTdz $TGradUpper; + +// Geostrophic wind speed magnitude. +Ug $U0Mag; + +// Geostrophic wind speed direction. +UgDir $dir; + +// Aerodynamic roughness height of surface. +z0 $z0; + +// von Karman constant. +kappa $kappa; + +// Vertical profile table. +profileTable +( +// z U V T + (0.0 0.0 0.0 273.121917725) + (5.0 1.82671529027 1.98969371553 282.524156211) + (10.0 2.52983624172 2.77228242751 283.156504284) + (15.0 3.01282071998 3.35521702288 283.64108812) + (20.0 3.35996148006 3.78823607698 284.090761147) + (25.0 3.8038057643 4.37960852586 284.554077196) + (30.0 4.03596125279 4.70538923119 284.966777157) + (35.0 4.38133296535 5.23253766126 285.360167677) + (40.0 4.56992779673 5.53523659867 285.747101612) + (45.0 4.80994398595 5.96180841679 286.095879197) + (50.0 5.00816921409 6.32774876853 286.444585293) + (55.0 5.14154903327 6.60160807137 286.787914506) + (60.0 5.36818530188 7.08896005703 287.063199891) + (65.0 5.44703987742 7.27484159809 287.379906732) + (70.0 5.57604433164 7.60608624795 287.638417176) + (75.0 5.72370142776 7.99632935101 287.863981004) + (80.0 5.77619905069 8.15139018101 288.127106742) + (85.0 5.87149793296 8.46369430537 288.331005696) + (90.0 5.98111916718 8.83268873958 288.509035882) + (95.0 6.01697152506 8.97407895539 288.724664101) + (100.0 6.06967854005 9.19927028309 288.909565287) + (105.0 6.1450628792 9.53721293929 289.053124377) + (110.0 6.19167607924 9.76288104253 289.198531813) + (115.0 6.22489630605 9.93628531022 289.344799656) + (120.0 6.27421288656 10.216282683 289.462005) + (125.0 6.32645248876 10.5156368594 289.57393273) + (130.0 6.34668810144 10.6457361726 289.712125634) + (135.0 6.36434613795 10.762203832 289.852433913) + (140.0 6.39842793739 11.0196195883 289.95191863) + (145.0 6.4342454375 11.2919310606 290.047089019) + (150.0 6.45180421766 11.4367005351 290.150649381) + (155.0 6.46406875681 11.544488333 290.256642472) + (160.0 6.48170756073 11.7056278368 290.348224267) + (165.0 6.50382814701 11.9112591447 290.427787992) + (170.0 6.52550956366 12.1127414485 290.506470121) + (175.0 6.54550549533 12.298300329 290.581768788) + (180.0 6.56550142701 12.4838592096 290.657067454) + (185.0 6.58511534034 12.6567515091 290.735008491) + (190.0 6.6045979288 12.8252894701 290.813857884) + (195.0 6.62432001649 12.9896812983 290.892328604) + (200.0 6.64532587961 13.1318488244 290.968769537) + (205.0 6.66633174272 13.2740163505 291.045210471) + (210.0 6.69104111181 13.4098514016 291.117435921) + (215.0 6.72036475996 13.5377966838 291.184409209) + (220.0 6.74968840812 13.6657419659 291.251382497) + (225.0 6.77805691412 13.7640369251 291.318657013) + (230.0 6.80578882059 13.8425700289 291.386132296) + (235.0 6.83352072706 13.9211031327 291.453607578) + (240.0 6.86307156947 13.9862481909 291.518273832) + (245.0 6.89380511232 14.0426881336 291.581113612) + (250.0 6.92453865516 14.0991280764 291.643953391) + (255.0 6.95361693104 14.1462680315 291.704700258) + (260.0 6.98077095142 14.1825967081 291.763014104) + (265.0 7.0079249718 14.2189253847 291.82132795) + (270.0 7.03507703408 14.2541299666 291.879606535) + (275.0 7.0622194383 14.283790106 291.937711201) + (280.0 7.08936184253 14.3134502454 291.995815867) + (285.0 7.11650424675 14.3431103848 292.053920533) + (290.0 7.1430391081 14.369131837 292.11328027) + (295.0 7.16932392788 14.3936557439 292.173156546) + (300.0 7.19560874767 14.4181796507 292.233032822) + (305.0 7.22180906756 14.4424461024 292.292838021) + (310.0 7.24680913749 14.4630556198 292.351633627) + (315.0 7.27180920741 14.4836651372 292.410429232) + (320.0 7.29680927734 14.5042746546 292.469224837) + (325.0 7.32153609499 14.5243042572 292.528664796) + (330.0 7.34543057757 14.5425674214 292.590067475) + (335.0 7.36932506015 14.5608305855 292.651470155) + (340.0 7.39321954273 14.5790937496 292.712872834) + (345.0 7.41696733387 14.597025575 292.773542958) + (350.0 7.44026003553 14.6139294685 292.831940429) + (355.0 7.46355273718 14.6308333621 292.890337899) + (360.0 7.48684543884 14.6477372556 292.94873537) + (365.0 7.51013186129 14.6646271523 293.007149353) + (370.0 7.53322339247 14.68108262 293.066075821) + (375.0 7.55631492366 14.6975380877 293.12500229) + (380.0 7.57940645484 14.7139935554 293.183928758) + (385.0 7.60249798603 14.7304490231 293.242855226) + (390.0 7.6257582057 14.7463924565 293.301506178) + (395.0 7.64912373233 14.7620162427 293.359985132) + (400.0 7.67248925896 14.7776400289 293.418464087) + (405.0 7.69585478559 14.7932638151 293.476943042) + (410.0 7.71922031222 14.8088876013 293.535421996) + (415.0 7.74300228036 14.8230663689 293.592791002) + (420.0 7.7667927399 14.8372156721 293.650137374) + (425.0 7.79058319945 14.8513649753 293.707483747) + (430.0 7.81437365899 14.8655142784 293.76483012) + (435.0 7.83815083397 14.8793492717 293.821767406) + (440.0 7.86181714661 14.8905612872 293.875290779) + (445.0 7.88548345926 14.9017733027 293.928814153) + (450.0 7.9091497719 14.9129853182 293.982337526) + (455.0 7.93281608455 14.9241973336 294.035860899) + (460.0 7.95648239719 14.9354093491 294.089384273) + (465.0 7.97905964048 14.9423301431 294.14128451) + (470.0 8.0016312311 14.9492286641 294.193176323) + (475.0 8.02420282171 14.956127185 294.245068135) + (480.0 8.04677441233 14.9630257059 294.296959948) + (485.0 8.06934600294 14.9699242269 294.34885176) + (490.0 8.0912068028 14.9742300558 294.40025773) + (495.0 8.11235909886 14.9759515346 294.45117942) + (500.0 8.13351139492 14.9776730134 294.502101111) + (505.0 8.15466369098 14.9793944922 294.553022801) + (510.0 8.17581598704 14.981115971 294.603944491) + (515.0 8.19696828309 14.9828374498 294.654866181) + (520.0 8.21724149816 14.9808198644 294.704354156) + (525.0 8.2364694612 14.9743564264 294.752137402) + (530.0 8.25569742424 14.9678929884 294.799920649) + (535.0 8.27492538727 14.9614295505 294.847703896) + (540.0 8.29415335031 14.9549661125 294.895487143) + (545.0 8.31338131334 14.9485026745 294.943270389) + (550.0 8.33260927638 14.9420392365 294.991053636) + (555.0 8.35050488468 14.9266129312 295.036341098) + (560.0 8.36808840645 14.9090871924 295.081043956) + (565.0 8.38567192822 14.8915614535 295.125746813) + (570.0 8.40325544999 14.8740357147 295.170449671) + (575.0 8.42083897176 14.8565099758 295.215152528) + (580.0 8.43842249352 14.838984237 295.259855386) + (585.0 8.45600601529 14.8214584982 295.304558243) + (590.0 8.47264685758 14.7968218302 295.348171206) + (595.0 8.48834031368 14.765038729 295.390688832) + (600.0 8.50403376979 14.7332556278 295.433206459) + (605.0 8.51972722589 14.7014725265 295.475724085) + (610.0 8.53542068199 14.6696894253 295.518241712) + (615.0 8.55111413809 14.6379063241 295.560759338) + (620.0 8.56680759419 14.6061232229 295.603276965) + (625.0 8.5825010503 14.5743401216 295.645794591) + (630.0 8.59715715424 14.5346556613 295.689519112) + (635.0 8.61058749747 14.4856347615 295.734669729) + (640.0 8.62401784069 14.4366138617 295.779820347) + (645.0 8.63744818391 14.3875929619 295.824970964) + (650.0 8.65087852713 14.338572062 295.870121581) + (655.0 8.66430887036 14.2895511622 295.915272198) + (660.0 8.67773921358 14.2405302624 295.960422815) + (665.0 8.6911695568 14.1915093626 296.005573433) + (670.0 8.70459990003 14.1424884628 296.05072405) + (675.0 8.71498597608 14.0837507537 296.096336227) + (680.0 8.72352399234 14.0191143362 296.142228601) + (685.0 8.7320620086 13.9544779188 296.188120975) + (690.0 8.74060002486 13.8898415013 296.234013348) + (695.0 8.74913804112 13.8252050838 296.279905722) + (700.0 8.75767605739 13.7605686663 296.325798096) + (705.0 8.76621407365 13.6959322489 296.371690469) + (710.0 8.77475208991 13.6312958314 296.417582843) + (715.0 8.78329010617 13.5666594139 296.463475217) + (720.0 8.79182812243 13.5020229965 296.50936759) + (725.0 8.79189547444 13.4277463368 296.562527014) + (730.0 8.79098910472 13.3523615098 296.616521801) + (735.0 8.79008273499 13.2769766828 296.670516587) + (740.0 8.78917636527 13.2015918559 296.724511374) + (745.0 8.78826999555 13.1262070289 296.778506161) + (750.0 8.78736362582 13.0508222019 296.832500948) + (755.0 8.7864572561 12.9754373749 296.886495735) + (760.0 8.78555088638 12.9000525479 296.940490522) + (765.0 8.78464451665 12.824667721 296.994485308) + (770.0 8.78373814693 12.749282894 297.048480095) + (775.0 8.78092431283 12.6731698157 297.101321687) + (780.0 8.77050848097 12.594154369 297.149567342) + (785.0 8.76009264911 12.5151389222 297.197812997) + (790.0 8.74967681725 12.4361234755 297.246058652) + (795.0 8.73926098539 12.3571080288 297.294304307) + (800.0 8.72884515353 12.278092582 297.342549962) + (805.0 8.71842932167 12.1990771353 297.390795617) + (810.0 8.70801348981 12.1200616885 297.439041272) + (815.0 8.69759765795 12.0410462418 297.487286927) + (820.0 8.68718182609 11.9620307951 297.535532582) + (825.0 8.67676599423 11.8830153483 297.583778237) + (830.0 8.66635016237 11.8039999016 297.632023892) + (835.0 8.65380285705 11.7267327361 297.688031136) + (840.0 8.63847548104 11.6517458454 297.754161782) + (845.0 8.62314810503 11.5767589547 297.820292429) + (850.0 8.60782072902 11.5017720641 297.886423076) + (855.0 8.59249335301 11.4267851734 297.952553722) + (860.0 8.57716597701 11.3517982828 298.018684369) + (865.0 8.561838601 11.2768113921 298.084815016) + (870.0 8.54651122499 11.2018245015 298.150945663) + (875.0 8.53118384898 11.1268376108 298.217076309) + (880.0 8.51585647297 11.0518507201 298.283206956) + (885.0 8.50052909696 10.9768638295 298.349337603) + (890.0 8.48520172096 10.9018769388 298.41546825) + (895.0 8.46987434495 10.8268900482 298.481598896) + (900.0 8.45883220551 10.7541011047 298.547345535) + (905.0 8.45238242046 10.6836676328 298.612680644) + (910.0 8.44593263542 10.6132341608 298.678015753) + (915.0 8.43948285037 10.5428006888 298.743350863) + (920.0 8.43303306533 10.4723672168 298.808685972) + (925.0 8.42658328028 10.4019337449 298.874021081) + (930.0 8.42013349524 10.3315002729 298.93935619) + (935.0 8.41368371019 10.2610668009 299.004691299) + (940.0 8.40723392515 10.190633329 299.070026409) + (945.0 8.4007841401 10.120199857 299.135361518) + (950.0 8.39433435506 10.049766385 299.200696627) + (955.0 8.38788457001 9.97933291304 299.266031736) + (960.0 8.38143478497 9.90889944107 299.331366845) + (965.0 8.37498499992 9.8384659691 299.396701955) + (970.0 8.37175628862 9.76984547069 299.458148741) + (975.0 8.3787220489 9.70696290595 299.507289259) + (980.0 8.38568780918 9.64408034121 299.556429777) + (985.0 8.39265356946 9.58119777647 299.605570296) + (990.0 8.39961932974 9.51831521173 299.654710814) + (995.0 8.40658509002 9.45543264699 299.703851332) + (1000.0 8.4135508503 9.39255008225 299.752991851) + (1005.0 8.42051661058 9.32966751751 299.802132369) + (1010.0 8.42748237086 9.26678495277 299.851272887) + (1015.0 8.43444813113 9.20390238803 299.900413405) + (1020.0 8.44141389141 9.14101982329 299.949553924) + (1025.0 8.44837965169 9.07813725854 299.998694442) + (1030.0 8.45534541197 9.0152546938 300.04783496) + (1035.0 8.46231117225 8.95237212906 300.096975478) + (1040.0 8.46927693253 8.88948956432 300.146115997) + (1045.0 8.47624269281 8.82660699958 300.195256515) + (1050.0 8.48495783258 8.77319458603 300.238852282) + (1055.0 8.49495774699 8.72673721576 300.278375887) + (1060.0 8.5049576614 8.6802798455 300.317899492) + (1065.0 8.51495757581 8.63382247523 300.357423097) + (1070.0 8.52495749023 8.58736510496 300.396946702) + (1075.0 8.53495740464 8.5409077347 300.436470307) + (1080.0 8.54495731905 8.49445036443 300.475993912) + (1085.0 8.55495723346 8.44799299416 300.515517517) + (1090.0 8.56495714787 8.4015356239 300.555041122) + (1095.0 8.57495706228 8.35507825363 300.594564727) + (1100.0 8.58495697669 8.30862088336 300.634088332) + (1105.0 8.5949568911 8.2621635131 300.673611937) + (1110.0 8.60495680552 8.21570614283 300.713135542) + (1115.0 8.61495671993 8.16924877256 300.752659147) + (1120.0 8.62495663434 8.1227914023 300.792182752) + (1125.0 8.63495654875 8.07633403203 300.831706357) + (1130.0 8.64495646316 8.02987666176 300.871229962) + (1135.0 8.65360052964 7.98996489564 300.907704255) + (1140.0 8.65972902324 7.96219751809 300.938521005) + (1145.0 8.66585751685 7.93443014055 300.969337756) + (1150.0 8.67198601045 7.906662763 301.000154506) + (1155.0 8.67811450406 7.87889538546 301.030971256) + (1160.0 8.68424299766 7.85112800791 301.061788006) + (1165.0 8.69037149126 7.82336063037 301.092604757) + (1170.0 8.69649998487 7.79559325282 301.123421507) + (1175.0 8.70262847847 7.76782587527 301.154238257) + (1180.0 8.70875697208 7.74005849773 301.185055007) + (1185.0 8.71488546568 7.71229112018 301.215871758) + (1190.0 8.72101395929 7.68452374264 301.246688508) + (1195.0 8.72714245289 7.65675636509 301.277505258) + (1200.0 8.7332709465 7.62898898755 301.308322009) + (1205.0 8.7393994401 7.60122161 301.339138759) + (1210.0 8.74552793371 7.57345423246 301.369955509) + (1215.0 8.75165642731 7.54568685491 301.400772259) + (1220.0 8.75778492092 7.51791947737 301.43158901) + (1225.0 8.76391341452 7.49015209982 301.46240576) + (1230.0 8.76818252215 7.46990516883 301.489568668) + (1235.0 8.76988179508 7.46005215541 301.511681645) + (1240.0 8.771581068 7.45019914198 301.533794623) + (1245.0 8.77328034093 7.44034612856 301.5559076) + (1250.0 8.77497961385 7.43049311513 301.578020578) + (1255.0 8.77667888677 7.42064010171 301.600133555) + (1260.0 8.7783781597 7.41078708828 301.622246532) + (1265.0 8.78007743262 7.40093407485 301.64435951) + (1270.0 8.78177670555 7.39108106143 301.666472487) + (1275.0 8.78347597847 7.381228048 301.688585464) + (1280.0 8.7851752514 7.37137503458 301.710698442) + (1285.0 8.78687452432 7.36152202115 301.732811419) + (1290.0 8.78857379725 7.35166900773 301.754924397) + (1295.0 8.79027307017 7.3418159943 301.777037374) + (1300.0 8.7919723431 7.33196298088 301.799150351) + (1305.0 8.79367161602 7.32210996745 301.821263329) + (1310.0 8.79537088895 7.31225695402 301.843376306) + (1315.0 8.79707016187 7.3024039406 301.865489283) + (1320.0 8.79876943479 7.29255092717 301.887602261) + (1325.0 8.80046870772 7.28269791375 301.909715238) + (1330.0 8.80216798064 7.27284490032 301.931828216) + (1335.0 8.80345002487 7.27037429336 301.950702634) + (1340.0 8.80449597234 7.27208116099 301.967744453) + (1345.0 8.8055419198 7.27378802862 301.984786271) + (1350.0 8.80658786727 7.27549489624 302.00182809) + (1355.0 8.80763381473 7.27720176387 302.018869908) + (1360.0 8.8086797622 7.2789086315 302.035911727) + (1365.0 8.80972570966 7.28061549913 302.052953545) + (1370.0 8.81077165713 7.28232236676 302.069995364) + (1375.0 8.81181760459 7.28402923439 302.087037182) + (1380.0 8.81286355206 7.28573610202 302.104079001) + (1385.0 8.81390949952 7.28744296965 302.121120819) + (1390.0 8.81495544699 7.28914983727 302.138162638) + (1395.0 8.81600139445 7.2908567049 302.155204456) + (1400.0 8.81704734192 7.29256357253 302.172246275) + (1405.0 8.81809328938 7.29427044016 302.189288094) + (1410.0 8.81913923685 7.29597730779 302.206329912) + (1415.0 8.82018518431 7.29768417542 302.223371731) + (1420.0 8.82123113178 7.29939104305 302.240413549) + (1425.0 8.82227707924 7.30109791068 302.257455368) + (1430.0 8.82332302671 7.30280477831 302.274497186) + (1435.0 8.82436897417 7.30451164593 302.291539005) + (1440.0 8.82541492164 7.30621851356 302.308580823) + (1445.0 8.8264608691 7.30792538119 302.325622642) + (1450.0 8.82980499965 7.31411337437 302.342200633) + (1455.0 8.83363827328 7.32125512601 302.358679903) + (1460.0 8.83747154691 7.32839687764 302.375159173) + (1465.0 8.84130482054 7.33553862927 302.391638443) + (1470.0 8.84513809417 7.34268038091 302.408117713) + (1475.0 8.8489713678 7.34982213254 302.424596984) + (1480.0 8.85280464143 7.35696388418 302.441076254) + (1485.0 8.85663791506 7.36410563581 302.457555524) + (1490.0 8.86047118869 7.37124738745 302.474034794) + (1495.0 8.86430446231 7.37838913908 302.490514064) + (1500.0 8.86813773594 7.38553089071 302.506993334) + (1505.0 8.87197100957 7.39267264235 302.523472605) + (1510.0 8.8758042832 7.39981439398 302.539951875) + (1515.0 8.87963755683 7.40695614562 302.556431145) + (1520.0 8.88347083046 7.41409789725 302.572910415) + (1525.0 8.88730410409 7.42123964888 302.589389685) + (1530.0 8.89113737772 7.42838140052 302.605868955) + (1535.0 8.89497065135 7.43552315215 302.622348226) + (1540.0 8.89880392498 7.44266490379 302.638827496) + (1545.0 8.90263719861 7.44980665542 302.655306766) + (1550.0 8.90647047224 7.45694840705 302.671786036) + (1555.0 8.91030374586 7.46409015869 302.688265306) + (1560.0 8.91413701949 7.47123191032 302.704744577) + (1565.0 8.91797029312 7.47837366196 302.721223847) + (1570.0 8.92180356675 7.48551541359 302.737703117) + (1575.0 8.92995697971 7.48958529161 302.756743245) + (1580.0 8.93926578965 7.49283361431 302.77646826) + (1585.0 8.94857459959 7.496081937 302.796193275) + (1590.0 8.95788340953 7.49933025969 302.81591829) + (1595.0 8.96719221947 7.50257858238 302.835643305) + (1600.0 8.97650102941 7.50582690508 302.85536832) + (1605.0 8.98580983935 7.50907522777 302.875093335) + (1610.0 8.9951186493 7.51232355046 302.89481835) + (1615.0 9.00442745924 7.51557187315 302.914543365) + (1620.0 9.01373626918 7.51882019585 302.93426838) + (1625.0 9.02304507912 7.52206851854 302.953993395) + (1630.0 9.03235388906 7.52531684123 302.973718411) + (1635.0 9.041662699 7.52856516392 302.993443426) + (1640.0 9.05097150894 7.53181348662 303.013168441) + (1645.0 9.06028031888 7.53506180931 303.032893456) + (1650.0 9.06958912882 7.538310132 303.052618471) + (1655.0 9.07889793876 7.5415584547 303.072343486) + (1660.0 9.0882067487 7.54480677739 303.092068501) + (1665.0 9.09751555864 7.54805510008 303.111793516) + (1670.0 9.10682436858 7.55130342277 303.131518531) + (1675.0 9.11613317852 7.55455174547 303.151243546) + (1680.0 9.12544198846 7.55780006816 303.170968561) + (1685.0 9.1347507984 7.56104839085 303.190693576) + (1690.0 9.14405960834 7.56429671354 303.210418591) + (1695.0 9.15336841829 7.56754503624 303.230143606) + (1700.0 9.16267722823 7.57079335893 303.249868621) + (1705.0 9.17198603817 7.57404168162 303.269593636) + (1710.0 9.18349377603 7.57239347669 303.290540127) + (1715.0 9.19922226437 7.56134659115 303.31383119) + (1720.0 9.2149507527 7.55029970561 303.337122252) + (1725.0 9.23067924103 7.53925282007 303.360413315) + (1730.0 9.24640772936 7.52820593453 303.383704377) + (1735.0 9.2621362177 7.51715904899 303.40699544) + (1740.0 9.27786470603 7.50611216345 303.430286502) + (1745.0 9.29359319436 7.49506527791 303.453577565) + (1750.0 9.3093216827 7.48401839237 303.476868627) + (1755.0 9.32505017103 7.47297150683 303.50015969) + (1760.0 9.34077865936 7.46192462129 303.523450752) + (1765.0 9.35650714769 7.45087773575 303.546741815) + (1770.0 9.37223563603 7.43983085021 303.570032877) + (1775.0 9.38796412436 7.42878396467 303.59332394) + (1780.0 9.40369261269 7.41773707912 303.616615003) + (1785.0 9.41942110102 7.40669019358 303.639906065) + (1790.0 9.43514958936 7.39564330804 303.663197128) + (1795.0 9.45087807769 7.3845964225 303.68648819) + (1800.0 9.46660656602 7.37354953696 303.709779253) + (1805.0 9.48233505436 7.36250265142 303.733070315) + (1810.0 9.49806354269 7.35145576588 303.756361378) + (1815.0 9.51379203102 7.34040888034 303.77965244) + (1820.0 9.52952051935 7.3293619948 303.802943503) + (1825.0 9.54524900769 7.31831510926 303.826234565) + (1830.0 9.56097749602 7.30726822372 303.849525628) + (1835.0 9.57670598435 7.29622133818 303.87281669) + (1840.0 9.59243447268 7.28517445264 303.896107753) + (1845.0 9.60816296102 7.2741275671 303.919398815) + (1850.0 9.62389144935 7.26308068156 303.942689878) + (1855.0 9.63961993768 7.25203379602 303.96598094) + (1860.0 9.65432709188 7.2376578099 303.988680381) + (1865.0 9.66596304977 7.21327107309 304.009600791) + (1870.0 9.67759900765 7.18888433629 304.0305212) + (1875.0 9.68923496554 7.16449759948 304.051441609) + (1880.0 9.70087092342 7.14011086267 304.072362018) + (1885.0 9.71250688131 7.11572412587 304.093282427) + (1890.0 9.72414283919 7.09133738906 304.114202836) + (1895.0 9.73577879708 7.06695065226 304.135123245) + (1900.0 9.74741475497 7.04256391545 304.156043654) + (1905.0 9.75905071285 7.01817717864 304.176964064) + (1910.0 9.77068667074 6.99379044184 304.197884473) + (1915.0 9.78232262862 6.96940370503 304.218804882) + (1920.0 9.79395858651 6.94501696822 304.239725291) + (1925.0 9.8055945444 6.92063023142 304.2606457) + (1930.0 9.81723050228 6.89624349461 304.281566109) + (1935.0 9.82886646017 6.8718567578 304.302486518) + (1940.0 9.84050241805 6.847470021 304.323406928) + (1945.0 9.85213837594 6.82308328419 304.344327337) + (1950.0 9.86377433382 6.79869654738 304.365247746) + (1955.0 9.87541029171 6.77430981058 304.386168155) + (1960.0 9.8870462496 6.74992307377 304.407088564) + (1965.0 9.89868220748 6.72553633696 304.428008973) + (1970.0 9.91031816537 6.70114960016 304.448929382) + (1975.0 9.92195412325 6.67676286335 304.469849792) + (1980.0 9.93359008114 6.65237612654 304.490770201) + (1985.0 9.94522603903 6.62798938974 304.51169061) + (1990.0 9.95686199691 6.60360265293 304.532611019) + (1995.0 9.9684979548 6.57921591612 304.553531428) + (2000.0 9.98013391268 6.55482917932 304.574451837) +); + +// Update internal field. +updateInternalFields true; + +// Update boundary field. +updateBoundaryFields false; + +// ************************************************************************* // diff --git a/exampleCases/example.ADM/runscript.solve.1 b/exampleCases/example.ADM/runscript.solve.1 index 2cc88e8b7..f0a3a2694 100755 --- a/exampleCases/example.ADM/runscript.solve.1 +++ b/exampleCases/example.ADM/runscript.solve.1 @@ -11,11 +11,11 @@ cd $PBS_O_WORKDIR # User Input. -OpenFOAMversion=2.4.x-central # OpenFOAM version +OpenFOAMversion=2.4.x_SSC # OpenFOAM version startTime=0 # Start time cores=180 # Enter the number of cores you will preprocess on. runNumber=1 # Enter the run number (useful for keeping track of restarts). -solver=windPlantSolver.ADM # Enter the name of the flow solver. +solver=pisoFoamTurbine.ADM # Enter the name of the flow solver. From e7a8b9bc45a743dec6dd845d9d67eb4978c673e0 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Wed, 7 Nov 2018 11:34:40 +0100 Subject: [PATCH 49/65] Remove old example cases for the SSC --- .../example.ADM.ssc.base/0.original/Rwall | 65 --- .../example.ADM.ssc.base/0.original/T | 55 -- .../example.ADM.ssc.base/0.original/U | 58 -- .../example.ADM.ssc.base/0.original/k | 54 -- .../example.ADM.ssc.base/0.original/kappat | 60 --- .../example.ADM.ssc.base/0.original/nuSgs | 60 --- .../example.ADM.ssc.base/0.original/p_rgh | 54 -- .../example.ADM.ssc.base/0.original/qwall | 59 -- .../constant/ABLProperties | 55 -- .../constant/LESProperties | 118 ---- .../constant/airfoilProperties/Cylinder1 | 23 - .../constant/airfoilProperties/Cylinder2 | 23 - .../constant/airfoilProperties/DU21_A17 | 162 ------ .../constant/airfoilProperties/DU25_A17 | 161 ------ .../constant/airfoilProperties/DU30_A17 | 163 ------ .../constant/airfoilProperties/DU35_A17 | 155 ------ .../constant/airfoilProperties/DU40_A17 | 156 ------ .../constant/airfoilProperties/NACA64_A17 | 147 ----- exampleCases/example.ADM.ssc.base/constant/g | 22 - .../constant/polyMesh/blockMeshDict | 105 ---- .../constant/transportProperties | 39 -- .../constant/turbineArrayProperties | 67 --- .../constant/turbineProperties/NREL5MWRef | 122 ----- .../constant/turbulenceProperties | 22 - .../example.ADM.ssc.base/runscript.preprocess | 170 ------ .../example.ADM.ssc.base/runscript.solve.1 | 40 -- exampleCases/example.ADM.ssc.base/setUp | 103 ---- .../changeDictionaryDict.updateBCs.cyclic | 261 --------- .../changeDictionaryDict.updateBCs.east | 306 ----------- .../changeDictionaryDict.updateBCs.north | 217 -------- .../changeDictionaryDict.updateBCs.northeast | 313 ----------- .../changeDictionaryDict.updateBCs.northwest | 313 ----------- .../changeDictionaryDict.updateBCs.south | 215 -------- .../changeDictionaryDict.updateBCs.southeast | 314 ----------- .../changeDictionaryDict.updateBCs.southwest | 313 ----------- .../changeDictionaryDict.updateBCs.west | 215 -------- .../example.ADM.ssc.base/system/controlDict | 61 --- .../example.ADM.ssc.base/system/controlDict.1 | 61 --- .../system/decomposeParDict | 76 --- .../example.ADM.ssc.base/system/fvSchemes | 111 ---- .../example.ADM.ssc.base/system/fvSolution | 102 ---- .../system/refineMeshDict.local | 48 -- .../system/sampling/boundaryDataPre | 25 - .../system/sampling/fieldAverages | 17 - .../system/sampling/probeData1 | 223 -------- .../system/sampling/probeData1S | 18 - .../system/sampling/probeData2 | 223 -------- .../system/sampling/probeData2S | 18 - .../system/sampling/probeData3 | 223 -------- .../system/sampling/probeData3S | 18 - .../system/sampling/probeData4 | 223 -------- .../system/sampling/probeData4S | 18 - .../system/sampling/probeData5 | 223 -------- .../system/sampling/probeData5S | 18 - .../system/sampling/sliceDataInstantaneous | 53 -- .../system/setFieldsABLDict | 504 ------------------ .../system/topoSetDict.local.1 | 36 -- .../system/topoSetDict.local.2 | 36 -- exampleCases/example.ADM.ssc/0.original/Rwall | 65 --- exampleCases/example.ADM.ssc/0.original/T | 55 -- exampleCases/example.ADM.ssc/0.original/U | 58 -- exampleCases/example.ADM.ssc/0.original/k | 54 -- .../example.ADM.ssc/0.original/kappat | 60 --- exampleCases/example.ADM.ssc/0.original/nuSgs | 60 --- exampleCases/example.ADM.ssc/0.original/p_rgh | 54 -- exampleCases/example.ADM.ssc/0.original/qwall | 59 -- exampleCases/example.ADM.ssc/SC_INPUT.txt | 7 - .../example.ADM.ssc/constant/ABLProperties | 55 -- .../example.ADM.ssc/constant/LESProperties | 118 ---- .../constant/airfoilProperties/Cylinder1 | 23 - .../constant/airfoilProperties/Cylinder2 | 23 - .../constant/airfoilProperties/DU21_A17 | 162 ------ .../constant/airfoilProperties/DU25_A17 | 161 ------ .../constant/airfoilProperties/DU30_A17 | 163 ------ .../constant/airfoilProperties/DU35_A17 | 155 ------ .../constant/airfoilProperties/DU40_A17 | 156 ------ .../constant/airfoilProperties/NACA64_A17 | 147 ----- exampleCases/example.ADM.ssc/constant/g | 22 - .../constant/polyMesh/blockMeshDict | 105 ---- .../constant/transportProperties | 39 -- .../constant/turbineArrayProperties | 76 --- .../constant/turbineProperties/NREL5MWRef | 122 ----- .../constant/turbulenceProperties | 22 - .../example.ADM.ssc/runscript.preprocess | 170 ------ .../example.ADM.ssc/runscript.solve.1 | 40 -- exampleCases/example.ADM.ssc/setUp | 103 ---- .../changeDictionaryDict.updateBCs.cyclic | 261 --------- .../changeDictionaryDict.updateBCs.east | 306 ----------- .../changeDictionaryDict.updateBCs.north | 217 -------- .../changeDictionaryDict.updateBCs.northeast | 313 ----------- .../changeDictionaryDict.updateBCs.northwest | 313 ----------- .../changeDictionaryDict.updateBCs.south | 215 -------- .../changeDictionaryDict.updateBCs.southeast | 314 ----------- .../changeDictionaryDict.updateBCs.southwest | 313 ----------- .../changeDictionaryDict.updateBCs.west | 215 -------- .../example.ADM.ssc/system/controlDict | 61 --- .../example.ADM.ssc/system/controlDict.1 | 61 --- .../example.ADM.ssc/system/decomposeParDict | 76 --- exampleCases/example.ADM.ssc/system/fvSchemes | 111 ---- .../example.ADM.ssc/system/fvSolution | 102 ---- .../system/refineMeshDict.local | 48 -- .../system/sampling/boundaryDataPre | 25 - .../system/sampling/fieldAverages | 17 - .../system/sampling/probeData1 | 223 -------- .../system/sampling/probeData1S | 18 - .../system/sampling/probeData2 | 223 -------- .../system/sampling/probeData2S | 18 - .../system/sampling/probeData3 | 223 -------- .../system/sampling/probeData3S | 18 - .../system/sampling/probeData4 | 223 -------- .../system/sampling/probeData4S | 18 - .../system/sampling/probeData5 | 223 -------- .../system/sampling/probeData5S | 18 - .../system/sampling/sliceDataInstantaneous | 53 -- .../example.ADM.ssc/system/setFieldsABLDict | 504 ------------------ .../system/topoSetDict.local.1 | 36 -- .../system/topoSetDict.local.2 | 36 -- 117 files changed, 14256 deletions(-) delete mode 100755 exampleCases/example.ADM.ssc.base/0.original/Rwall delete mode 100755 exampleCases/example.ADM.ssc.base/0.original/T delete mode 100755 exampleCases/example.ADM.ssc.base/0.original/U delete mode 100755 exampleCases/example.ADM.ssc.base/0.original/k delete mode 100755 exampleCases/example.ADM.ssc.base/0.original/kappat delete mode 100755 exampleCases/example.ADM.ssc.base/0.original/nuSgs delete mode 100755 exampleCases/example.ADM.ssc.base/0.original/p_rgh delete mode 100755 exampleCases/example.ADM.ssc.base/0.original/qwall delete mode 100755 exampleCases/example.ADM.ssc.base/constant/ABLProperties delete mode 100755 exampleCases/example.ADM.ssc.base/constant/LESProperties delete mode 100755 exampleCases/example.ADM.ssc.base/constant/airfoilProperties/Cylinder1 delete mode 100755 exampleCases/example.ADM.ssc.base/constant/airfoilProperties/Cylinder2 delete mode 100755 exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU21_A17 delete mode 100755 exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU25_A17 delete mode 100755 exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU30_A17 delete mode 100755 exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU35_A17 delete mode 100755 exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU40_A17 delete mode 100755 exampleCases/example.ADM.ssc.base/constant/airfoilProperties/NACA64_A17 delete mode 100755 exampleCases/example.ADM.ssc.base/constant/g delete mode 100755 exampleCases/example.ADM.ssc.base/constant/polyMesh/blockMeshDict delete mode 100755 exampleCases/example.ADM.ssc.base/constant/transportProperties delete mode 100755 exampleCases/example.ADM.ssc.base/constant/turbineArrayProperties delete mode 100755 exampleCases/example.ADM.ssc.base/constant/turbineProperties/NREL5MWRef delete mode 100755 exampleCases/example.ADM.ssc.base/constant/turbulenceProperties delete mode 100755 exampleCases/example.ADM.ssc.base/runscript.preprocess delete mode 100755 exampleCases/example.ADM.ssc.base/runscript.solve.1 delete mode 100755 exampleCases/example.ADM.ssc.base/setUp delete mode 100755 exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.cyclic delete mode 100755 exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.east delete mode 100755 exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.north delete mode 100755 exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.northeast delete mode 100755 exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.northwest delete mode 100755 exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.south delete mode 100755 exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.southeast delete mode 100755 exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.southwest delete mode 100755 exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.west delete mode 100755 exampleCases/example.ADM.ssc.base/system/controlDict delete mode 100755 exampleCases/example.ADM.ssc.base/system/controlDict.1 delete mode 100755 exampleCases/example.ADM.ssc.base/system/decomposeParDict delete mode 100755 exampleCases/example.ADM.ssc.base/system/fvSchemes delete mode 100755 exampleCases/example.ADM.ssc.base/system/fvSolution delete mode 100755 exampleCases/example.ADM.ssc.base/system/refineMeshDict.local delete mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/boundaryDataPre delete mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/fieldAverages delete mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/probeData1 delete mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/probeData1S delete mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/probeData2 delete mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/probeData2S delete mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/probeData3 delete mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/probeData3S delete mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/probeData4 delete mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/probeData4S delete mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/probeData5 delete mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/probeData5S delete mode 100755 exampleCases/example.ADM.ssc.base/system/sampling/sliceDataInstantaneous delete mode 100755 exampleCases/example.ADM.ssc.base/system/setFieldsABLDict delete mode 100755 exampleCases/example.ADM.ssc.base/system/topoSetDict.local.1 delete mode 100755 exampleCases/example.ADM.ssc.base/system/topoSetDict.local.2 delete mode 100755 exampleCases/example.ADM.ssc/0.original/Rwall delete mode 100755 exampleCases/example.ADM.ssc/0.original/T delete mode 100755 exampleCases/example.ADM.ssc/0.original/U delete mode 100755 exampleCases/example.ADM.ssc/0.original/k delete mode 100755 exampleCases/example.ADM.ssc/0.original/kappat delete mode 100755 exampleCases/example.ADM.ssc/0.original/nuSgs delete mode 100755 exampleCases/example.ADM.ssc/0.original/p_rgh delete mode 100755 exampleCases/example.ADM.ssc/0.original/qwall delete mode 100644 exampleCases/example.ADM.ssc/SC_INPUT.txt delete mode 100755 exampleCases/example.ADM.ssc/constant/ABLProperties delete mode 100755 exampleCases/example.ADM.ssc/constant/LESProperties delete mode 100755 exampleCases/example.ADM.ssc/constant/airfoilProperties/Cylinder1 delete mode 100755 exampleCases/example.ADM.ssc/constant/airfoilProperties/Cylinder2 delete mode 100755 exampleCases/example.ADM.ssc/constant/airfoilProperties/DU21_A17 delete mode 100755 exampleCases/example.ADM.ssc/constant/airfoilProperties/DU25_A17 delete mode 100755 exampleCases/example.ADM.ssc/constant/airfoilProperties/DU30_A17 delete mode 100755 exampleCases/example.ADM.ssc/constant/airfoilProperties/DU35_A17 delete mode 100755 exampleCases/example.ADM.ssc/constant/airfoilProperties/DU40_A17 delete mode 100755 exampleCases/example.ADM.ssc/constant/airfoilProperties/NACA64_A17 delete mode 100755 exampleCases/example.ADM.ssc/constant/g delete mode 100755 exampleCases/example.ADM.ssc/constant/polyMesh/blockMeshDict delete mode 100755 exampleCases/example.ADM.ssc/constant/transportProperties delete mode 100755 exampleCases/example.ADM.ssc/constant/turbineArrayProperties delete mode 100755 exampleCases/example.ADM.ssc/constant/turbineProperties/NREL5MWRef delete mode 100755 exampleCases/example.ADM.ssc/constant/turbulenceProperties delete mode 100755 exampleCases/example.ADM.ssc/runscript.preprocess delete mode 100755 exampleCases/example.ADM.ssc/runscript.solve.1 delete mode 100755 exampleCases/example.ADM.ssc/setUp delete mode 100755 exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.cyclic delete mode 100755 exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.east delete mode 100755 exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.north delete mode 100755 exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.northeast delete mode 100755 exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.northwest delete mode 100755 exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.south delete mode 100755 exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.southeast delete mode 100755 exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.southwest delete mode 100755 exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.west delete mode 100755 exampleCases/example.ADM.ssc/system/controlDict delete mode 100755 exampleCases/example.ADM.ssc/system/controlDict.1 delete mode 100755 exampleCases/example.ADM.ssc/system/decomposeParDict delete mode 100755 exampleCases/example.ADM.ssc/system/fvSchemes delete mode 100755 exampleCases/example.ADM.ssc/system/fvSolution delete mode 100755 exampleCases/example.ADM.ssc/system/refineMeshDict.local delete mode 100755 exampleCases/example.ADM.ssc/system/sampling/boundaryDataPre delete mode 100755 exampleCases/example.ADM.ssc/system/sampling/fieldAverages delete mode 100755 exampleCases/example.ADM.ssc/system/sampling/probeData1 delete mode 100755 exampleCases/example.ADM.ssc/system/sampling/probeData1S delete mode 100755 exampleCases/example.ADM.ssc/system/sampling/probeData2 delete mode 100755 exampleCases/example.ADM.ssc/system/sampling/probeData2S delete mode 100755 exampleCases/example.ADM.ssc/system/sampling/probeData3 delete mode 100755 exampleCases/example.ADM.ssc/system/sampling/probeData3S delete mode 100755 exampleCases/example.ADM.ssc/system/sampling/probeData4 delete mode 100755 exampleCases/example.ADM.ssc/system/sampling/probeData4S delete mode 100755 exampleCases/example.ADM.ssc/system/sampling/probeData5 delete mode 100755 exampleCases/example.ADM.ssc/system/sampling/probeData5S delete mode 100755 exampleCases/example.ADM.ssc/system/sampling/sliceDataInstantaneous delete mode 100755 exampleCases/example.ADM.ssc/system/setFieldsABLDict delete mode 100755 exampleCases/example.ADM.ssc/system/topoSetDict.local.1 delete mode 100755 exampleCases/example.ADM.ssc/system/topoSetDict.local.2 diff --git a/exampleCases/example.ADM.ssc.base/0.original/Rwall b/exampleCases/example.ADM.ssc.base/0.original/Rwall deleted file mode 100755 index 9f0a3a19c..000000000 --- a/exampleCases/example.ADM.ssc.base/0.original/Rwall +++ /dev/null @@ -1,65 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volSymmTensorField; - location "0"; - object Rwall; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - -dimensions [ 0 2 -2 0 0 0 0 ]; - -internalField uniform (0.0 0.0 0.0 0.0 0.0 0.0); - -boundaryField -{ - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - //averageType "local"; - averageType "planarAverage"; - value uniform $Rwall; - } - upper - { - type fixedValue; - value $internalField; - } - west - { - type cyclic; - value $internalField; - } - east - { - type cyclic; - value $internalField; - } - north - { - type cyclic; - value $internalField; - } - south - { - type cyclic; - value $internalField; - } -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/0.original/T b/exampleCases/example.ADM.ssc.base/0.original/T deleted file mode 100755 index 8fce50ca7..000000000 --- a/exampleCases/example.ADM.ssc.base/0.original/T +++ /dev/null @@ -1,55 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volScalarField; - location "0"; - object T ; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -dimensions [0 0 0 1 0 0 0]; - -internalField uniform $TBottom; - -boundaryField -{ - lower - { - type zeroGradient; - } - upper - { - type fixedGradient; - gradient uniform $TGradUpper; - } - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/0.original/U b/exampleCases/example.ADM.ssc.base/0.original/U deleted file mode 100755 index a73faa4e0..000000000 --- a/exampleCases/example.ADM.ssc.base/0.original/U +++ /dev/null @@ -1,58 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volVectorField; - location "0"; - object U; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -dimensions [0 1 -1 0 0 0 0]; - -internalField uniform (0 0 0); - -boundaryField -{ - lower - { - type velocityABLWallFunction; - print true; - U U; - value $internalField; - } - upper - { - type slip; - } - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } -} - - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/0.original/k b/exampleCases/example.ADM.ssc.base/0.original/k deleted file mode 100755 index b85959d30..000000000 --- a/exampleCases/example.ADM.ssc.base/0.original/k +++ /dev/null @@ -1,54 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volScalarField; - location "0"; - object k ; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -dimensions [0 2 -2 0 0 0 0]; - -internalField uniform $k0; - -boundaryField -{ - lower - { - type zeroGradient; - } - upper - { - type zeroGradient; - } - east - { - type cyclic; - } - west - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/0.original/kappat b/exampleCases/example.ADM.ssc.base/0.original/kappat deleted file mode 100755 index 05706742f..000000000 --- a/exampleCases/example.ADM.ssc.base/0.original/kappat +++ /dev/null @@ -1,60 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.1.x | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volScalarField; - location "0"; - object kappat; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -dimensions [0 2 -1 0 0 0 0]; - -internalField uniform $kappat0; - -boundaryField -{ - lower - { - type fixedValue; - value uniform 0.0; - } - upper - { - type fixedValue; - value uniform 0.0; - } - west - { - type cyclic; - value $internalField; - } - east - { - type cyclic; - value $internalField; - } - north - { - type cyclic; - value $internalField; - } - south - { - type cyclic; - value $internalField; - } -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/0.original/nuSgs b/exampleCases/example.ADM.ssc.base/0.original/nuSgs deleted file mode 100755 index e6f1da758..000000000 --- a/exampleCases/example.ADM.ssc.base/0.original/nuSgs +++ /dev/null @@ -1,60 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.1.x | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volScalarField; - location "0"; - object nuSgs; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -dimensions [0 2 -1 0 0 0 0]; - -internalField uniform $nuSgs0; - -boundaryField -{ - lower - { - type fixedValue; - value uniform 0.0; - } - upper - { - type fixedValue; - value uniform 0.0; - } - west - { - type cyclic; - value $internalField; - } - east - { - type cyclic; - value $internalField; - } - north - { - type cyclic; - value $internalField; - } - south - { - type cyclic; - value $internalField; - } -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/0.original/p_rgh b/exampleCases/example.ADM.ssc.base/0.original/p_rgh deleted file mode 100755 index b40b9978c..000000000 --- a/exampleCases/example.ADM.ssc.base/0.original/p_rgh +++ /dev/null @@ -1,54 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volScalarField; - location "0000"; - object p_rgh ; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -dimensions [0 2 -2 0 0 0 0]; - -internalField uniform $p_rgh0; - -boundaryField -{ - lower - { - type fixedFluxPressure; - } - upper - { - type fixedFluxPressure; - } - east - { - type cyclic; - } - west - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/0.original/qwall b/exampleCases/example.ADM.ssc.base/0.original/qwall deleted file mode 100755 index c695d7577..000000000 --- a/exampleCases/example.ADM.ssc.base/0.original/qwall +++ /dev/null @@ -1,59 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volVectorField; - location "0"; - object qwall; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - -dimensions [ 0 1 -1 1 0 0 0 ]; - -internalField uniform (0.0 0.0 0.0); - -boundaryField -{ - lower - { - type fixedValue; - value uniform $qwall; - } - upper - { - type fixedValue; - value $internalField; - } - west - { - type cyclic; - value $internalField; - } - east - { - type cyclic; - value $internalField; - } - north - { - type cyclic; - value $internalField; - } - south - { - type cyclic; - value $internalField; - } -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/constant/ABLProperties b/exampleCases/example.ADM.ssc.base/constant/ABLProperties deleted file mode 100755 index d25c3dbee..000000000 --- a/exampleCases/example.ADM.ssc.base/constant/ABLProperties +++ /dev/null @@ -1,55 +0,0 @@ -/*---------------------------------------------------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.openfoam.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ - -FoamFile -{ - version 2.0; - format ascii; - - root ""; - case ""; - instance ""; - local ""; - - class dictionary; - object ABLProperties; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - - -// Properties of the mesoscale source terms -momentumSourceType "given"; -temperatureSourceType "given"; - - -velocityInputType "speedAndDirection"; - - -#include "../constant/sources" - - -// Relaxation factors applied when computing sources given desired -// velocity and temperature. -alphaMomentum 0.7; -alphaTemperature 0.7; - - -// Properties of the Coriolis force -planetaryRotationPeriod $EarthPeriod; -latitude $latitude; - - -// Statistics gathering input -avgStartTime $avgStartTime; -corrStartTime $corrStartTime; - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/constant/LESProperties b/exampleCases/example.ADM.ssc.base/constant/LESProperties deleted file mode 100755 index 2043039a5..000000000 --- a/exampleCases/example.ADM.ssc.base/constant/LESProperties +++ /dev/null @@ -1,118 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "constant"; - object LESProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#include "../setUp" - - -LESModel $LESModel; -//LESModel SmagorinskyABL; -//LESModel Smagorinsky; -//LESModel dynLagrangianCsBound; - -delta smooth; - -SmagorinskyCoeffs -{ - ce $ce; - ck $ck; -} - -SmagorinskyABLCoeffs -{ - ce $ce; - ck $ck; - TName "T"; - kappatName "kappat"; -} - -oneEqEddyABLCoeffs -{ - ce $ce; - ck $ck; - TName "T"; - kappatName "kappat"; -} - -printCoeffs on; - -dynLagrangianCsBoundCoeffs -{ - filter simple; -} - -cubeRootVolCoeffs -{ - deltaCoeff 1; -} - -PrandtlCoeffs -{ - delta cubeRootVol; - cubeRootVolCoeffs - { - deltaCoeff 1; - } - - smoothCoeffs - { - delta cubeRootVol; - cubeRootVolCoeffs - { - deltaCoeff 1; - } - - maxDeltaRatio 1.1; - } - - Cdelta 0.158; -} - -vanDriestCoeffs -{ - delta cubeRootVol; - cubeRootVolCoeffs - { - deltaCoeff 1; - } - - smoothCoeffs - { - delta cubeRootVol; - cubeRootVolCoeffs - { - deltaCoeff 1; - } - - maxDeltaRatio 1.1; - } - - Aplus 26; - Cdelta 0.158; -} - -smoothCoeffs -{ - delta cubeRootVol; - cubeRootVolCoeffs - { - deltaCoeff 1; - } - - maxDeltaRatio 1.1; -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/Cylinder1 b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/Cylinder1 deleted file mode 100755 index 7106c17d0..000000000 --- a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/Cylinder1 +++ /dev/null @@ -1,23 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180.00 0.000 0.5000) - ( 0.00 0.000 0.5000) - ( 180.00 0.000 0.5000) -); diff --git a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/Cylinder2 b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/Cylinder2 deleted file mode 100755 index b2e7923f1..000000000 --- a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/Cylinder2 +++ /dev/null @@ -1,23 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180.00 0.000 0.3500) - ( 0.00 0.000 0.3500) - ( 180.00 0.000 0.3500) -); diff --git a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU21_A17 b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU21_A17 deleted file mode 100755 index 17eb9de96..000000000 --- a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU21_A17 +++ /dev/null @@ -1,162 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180 0 0.0185) - (-175 0.394 0.0332) - (-170 0.788 0.0945) - (-160 0.67 0.2809) - (-155 0.749 0.3932) - (-150 0.797 0.5112) - (-145 0.818 0.6309) - (-140 0.813 0.7485) - (-135 0.786 0.8612) - (-130 0.739 0.9665) - (-125 0.675 1.0625) - (-120 0.596 1.1476) - (-115 0.505 1.2206) - (-110 0.403 1.2805) - (-105 0.294 1.3265) - (-100 0.179 1.3582) - (-95 0.06 1.3752) - (-90 -0.06 1.3774) - (-85 -0.179 1.3648) - (-80 -0.295 1.3376) - (-75 -0.407 1.2962) - (-70 -0.512 1.2409) - (-65 -0.608 1.1725) - (-60 -0.693 1.0919) - (-55 -0.764 1.0002) - (-50 -0.82 0.899 ) - (-45 -0.857 0.79 ) - (-40 -0.875 0.6754) - (-35 -0.869 0.5579) - (-30 -0.838 0.4405) - (-25 -0.791 0.3256) - (-24 -0.794 0.3013) - (-23 -0.805 0.2762) - (-22 -0.821 0.2506) - (-21 -0.843 0.2246) - (-20 -0.869 0.1983) - (-19 -0.899 0.172 ) - (-18 -0.931 0.1457) - (-17 -0.964 0.1197) - (-16 -0.999 0.094 ) - (-15 -1.033 0.0689) - (-14.5 -1.05 0.0567) - (-12.01 -0.953 0.0271) - (-11 -0.9 0.0303) - (-9.98 -0.827 0.0287) - (-8.12 -0.536 0.0124) - (-7.62 -0.467 0.0109) - (-7.11 -0.393 0.0092) - (-6.6 -0.323 0.0083) - (-6.5 -0.311 0.0089) - (-6 -0.245 0.0082) - (-5.5 -0.178 0.0074) - (-5 -0.113 0.0069) - (-4.5 -0.048 0.0065) - (-4 0.016 0.0063) - (-3.5 0.08 0.0061) - (-3 0.145 0.0058) - (-2.5 0.208 0.0057) - (-2 0.27 0.0057) - (-1.5 0.333 0.0057) - (-1 0.396 0.0057) - (-0.5 0.458 0.0057) - ( 0 0.521 0.0057) - ( 0.5 0.583 0.0057) - ( 1 0.645 0.0058) - ( 1.5 0.706 0.0058) - ( 2 0.768 0.0059) - ( 2.5 0.828 0.0061) - ( 3 0.888 0.0063) - ( 3.5 0.948 0.0066) - ( 4 0.996 0.0071) - ( 4.5 1.046 0.0079) - ( 5 1.095 0.009 ) - ( 5.5 1.145 0.0103) - ( 6 1.192 0.0113) - ( 6.5 1.239 0.0122) - ( 7 1.283 0.0131) - ( 7.5 1.324 0.0139) - ( 8 1.358 0.0147) - ( 8.5 1.385 0.0158) - ( 9 1.403 0.0181) - ( 9.5 1.401 0.0211) - ( 10 1.358 0.0255) - ( 10.5 1.313 0.0301) - ( 11 1.287 0.0347) - ( 11.5 1.274 0.0401) - ( 12 1.272 0.0468) - ( 12.5 1.273 0.0545) - ( 13 1.273 0.0633) - ( 13.5 1.273 0.0722) - ( 14 1.272 0.0806) - ( 14.5 1.273 0.09 ) - ( 15 1.275 0.0987) - ( 15.5 1.281 0.1075) - ( 16 1.284 0.117 ) - ( 16.5 1.296 0.127 ) - ( 17 1.306 0.1368) - ( 17.5 1.308 0.1464) - ( 18 1.308 0.1562) - ( 18.5 1.308 0.1664) - ( 19 1.308 0.177 ) - ( 19.5 1.307 0.1878) - ( 20 1.311 0.1987) - ( 20.5 1.325 0.21 ) - ( 21 1.324 0.2214) - ( 22 1.277 0.2499) - ( 23 1.229 0.2786) - ( 24 1.182 0.3077) - ( 25 1.136 0.3371) - ( 26 1.093 0.3664) - ( 28 1.017 0.4246) - ( 30 0.962 0.4813) - ( 32 0.937 0.5356) - ( 35 0.947 0.6127) - ( 40 0.95 0.7396) - ( 45 0.928 0.8623) - ( 50 0.884 0.9781) - ( 55 0.821 1.0846) - ( 60 0.74 1.1796) - ( 65 0.646 1.2617) - ( 70 0.54 1.3297) - ( 75 0.425 1.3827) - ( 80 0.304 1.4202) - ( 85 0.179 1.4423) - ( 90 0.053 1.4512) - ( 95 -0.073 1.448 ) - ( 100 -0.198 1.4294) - ( 105 -0.319 1.3954) - ( 110 -0.434 1.3464) - ( 115 -0.541 1.2829) - ( 120 -0.637 1.2057) - ( 125 -0.72 1.1157) - ( 130 -0.787 1.0144) - ( 135 -0.836 0.9033) - ( 140 -0.864 0.7845) - ( 145 -0.869 0.6605) - ( 150 -0.847 0.5346) - ( 155 -0.795 0.4103) - ( 160 -0.711 0.2922) - ( 170 -0.788 0.0969) - ( 175 -0.394 0.0334) - ( 180 0 0.0185) -); diff --git a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU25_A17 b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU25_A17 deleted file mode 100755 index 56981e639..000000000 --- a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU25_A17 +++ /dev/null @@ -1,161 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180.00 0.000 0.0202) - (-175.00 0.368 0.0324) - (-170.00 0.735 0.0943) - (-160.00 0.695 0.2848) - (-155.00 0.777 0.4001) - (-150.00 0.828 0.5215) - (-145.00 0.850 0.6447) - (-140.00 0.846 0.7660) - (-135.00 0.818 0.8823) - (-130.00 0.771 0.9911) - (-125.00 0.705 1.0905) - (-120.00 0.624 1.1787) - (-115.00 0.530 1.2545) - (-110.00 0.426 1.3168) - (-105.00 0.314 1.3650) - (-100.00 0.195 1.3984) - ( -95.00 0.073 1.4169) - ( -90.00 -0.050 1.4201) - ( -85.00 -0.173 1.4081) - ( -80.00 -0.294 1.3811) - ( -75.00 -0.409 1.3394) - ( -70.00 -0.518 1.2833) - ( -65.00 -0.617 1.2138) - ( -60.00 -0.706 1.1315) - ( -55.00 -0.780 1.0378) - ( -50.00 -0.839 0.9341) - ( -45.00 -0.879 0.8221) - ( -40.00 -0.898 0.7042) - ( -35.00 -0.893 0.5829) - ( -30.00 -0.862 0.4616) - ( -25.00 -0.803 0.3441) - ( -24.00 -0.792 0.3209) - ( -23.00 -0.789 0.2972) - ( -22.00 -0.792 0.2730) - ( -21.00 -0.801 0.2485) - ( -20.00 -0.815 0.2237) - ( -19.00 -0.833 0.1990) - ( -18.00 -0.854 0.1743) - ( -17.00 -0.879 0.1498) - ( -16.00 -0.905 0.1256) - ( -15.00 -0.932 0.1020) - ( -14.00 -0.959 0.0789) - ( -13.00 -0.985 0.0567) - ( -13.00 -0.985 0.0567) - ( -12.01 -0.953 0.0271) - ( -11.00 -0.900 0.0303) - ( -9.98 -0.827 0.0287) - ( -8.98 -0.753 0.0271) - ( -8.47 -0.691 0.0264) - ( -7.45 -0.555 0.0114) - ( -6.42 -0.413 0.0094) - ( -5.40 -0.271 0.0086) - ( -5.00 -0.220 0.0073) - ( -4.50 -0.152 0.0071) - ( -4.00 -0.084 0.0070) - ( -3.50 -0.018 0.0069) - ( -3.00 0.049 0.0068) - ( -2.50 0.115 0.0068) - ( -2.00 0.181 0.0068) - ( -1.50 0.247 0.0067) - ( -1.00 0.312 0.0067) - ( -0.50 0.377 0.0067) - ( 0.00 0.444 0.0065) - ( 0.50 0.508 0.0065) - ( 1.00 0.573 0.0066) - ( 1.50 0.636 0.0067) - ( 2.00 0.701 0.0068) - ( 2.50 0.765 0.0069) - ( 3.00 0.827 0.0070) - ( 3.50 0.890 0.0071) - ( 4.00 0.952 0.0073) - ( 4.50 1.013 0.0076) - ( 5.00 1.062 0.0079) - ( 6.00 1.161 0.0099) - ( 6.50 1.208 0.0117) - ( 7.00 1.254 0.0132) - ( 7.50 1.301 0.0143) - ( 8.00 1.336 0.0153) - ( 8.50 1.369 0.0165) - ( 9.00 1.400 0.0181) - ( 9.50 1.428 0.0211) - ( 10.00 1.442 0.0262) - ( 10.50 1.427 0.0336) - ( 11.00 1.374 0.0420) - ( 11.50 1.316 0.0515) - ( 12.00 1.277 0.0601) - ( 12.50 1.250 0.0693) - ( 13.00 1.246 0.0785) - ( 13.50 1.247 0.0888) - ( 14.00 1.256 0.1000) - ( 14.50 1.260 0.1108) - ( 15.00 1.271 0.1219) - ( 15.50 1.281 0.1325) - ( 16.00 1.289 0.1433) - ( 16.50 1.294 0.1541) - ( 17.00 1.304 0.1649) - ( 17.50 1.309 0.1754) - ( 18.00 1.315 0.1845) - ( 18.50 1.320 0.1953) - ( 19.00 1.330 0.2061) - ( 19.50 1.343 0.2170) - ( 20.00 1.354 0.2280) - ( 20.50 1.359 0.2390) - ( 21.00 1.360 0.2536) - ( 22.00 1.325 0.2814) - ( 23.00 1.288 0.3098) - ( 24.00 1.251 0.3386) - ( 25.00 1.215 0.3678) - ( 26.00 1.181 0.3972) - ( 28.00 1.120 0.4563) - ( 30.00 1.076 0.5149) - ( 32.00 1.056 0.5720) - ( 35.00 1.066 0.6548) - ( 40.00 1.064 0.7901) - ( 45.00 1.035 0.9190) - ( 50.00 0.980 1.0378) - ( 55.00 0.904 1.1434) - ( 60.00 0.810 1.2333) - ( 65.00 0.702 1.3055) - ( 70.00 0.582 1.3587) - ( 75.00 0.456 1.3922) - ( 80.00 0.326 1.4063) - ( 85.00 0.197 1.4042) - ( 90.00 0.072 1.3985) - ( 95.00 -0.050 1.3973) - ( 100.00 -0.170 1.3810) - ( 105.00 -0.287 1.3498) - ( 110.00 -0.399 1.3041) - ( 115.00 -0.502 1.2442) - ( 120.00 -0.596 1.1709) - ( 125.00 -0.677 1.0852) - ( 130.00 -0.743 0.9883) - ( 135.00 -0.792 0.8818) - ( 140.00 -0.821 0.7676) - ( 145.00 -0.826 0.6481) - ( 150.00 -0.806 0.5264) - ( 155.00 -0.758 0.4060) - ( 160.00 -0.679 0.2912) - ( 170.00 -0.735 0.0995) - ( 175.00 -0.368 0.0356) - ( 180.00 0.000 0.0202) -); diff --git a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU30_A17 b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU30_A17 deleted file mode 100755 index 35fb11988..000000000 --- a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU30_A17 +++ /dev/null @@ -1,163 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180.00 0.000 0.0267) - (-175.00 0.274 0.0370) - (-170.00 0.547 0.0968) - (-160.00 0.685 0.2876) - (-155.00 0.766 0.4025) - (-150.00 0.816 0.5232) - (-145.00 0.836 0.6454) - (-140.00 0.832 0.7656) - (-135.00 0.804 0.8807) - (-130.00 0.756 0.9882) - (-125.00 0.690 1.0861) - (-120.00 0.609 1.1730) - (-115.00 0.515 1.2474) - (-110.00 0.411 1.3084) - (-105.00 0.300 1.3552) - (-100.00 0.182 1.3875) - ( -95.00 0.061 1.4048) - ( -90.00 -0.061 1.4070) - ( -85.00 -0.183 1.3941) - ( -80.00 -0.302 1.3664) - ( -75.00 -0.416 1.3240) - ( -70.00 -0.523 1.2676) - ( -65.00 -0.622 1.1978) - ( -60.00 -0.708 1.1156) - ( -55.00 -0.781 1.0220) - ( -50.00 -0.838 0.9187) - ( -45.00 -0.877 0.8074) - ( -40.00 -0.895 0.6904) - ( -35.00 -0.889 0.5703) - ( -30.00 -0.858 0.4503) - ( -25.00 -0.832 0.3357) - ( -24.00 -0.852 0.3147) - ( -23.00 -0.882 0.2946) - ( -22.00 -0.919 0.2752) - ( -21.00 -0.963 0.2566) - ( -20.00 -1.013 0.2388) - ( -19.00 -1.067 0.2218) - ( -18.00 -1.125 0.2056) - ( -17.00 -1.185 0.1901) - ( -16.00 -1.245 0.1754) - ( -15.25 -1.290 0.1649) - ( -14.24 -1.229 0.1461) - ( -13.24 -1.148 0.1263) - ( -12.22 -1.052 0.1051) - ( -11.22 -0.965 0.0886) - ( -10.19 -0.867 0.0740) - ( -9.70 -0.822 0.0684) - ( -9.18 -0.769 0.0605) - ( -8.18 -0.756 0.0270) - ( -7.19 -0.690 0.0180) - ( -6.65 -0.616 0.0166) - ( -6.13 -0.542 0.0152) - ( -6.00 -0.525 0.0117) - ( -5.50 -0.451 0.0105) - ( -5.00 -0.382 0.0097) - ( -4.50 -0.314 0.0092) - ( -4.00 -0.251 0.0091) - ( -3.50 -0.189 0.0089) - ( -3.00 -0.120 0.0089) - ( -2.50 -0.051 0.0088) - ( -2.00 0.017 0.0088) - ( -1.50 0.085 0.0088) - ( -1.00 0.152 0.0088) - ( -0.50 0.219 0.0088) - ( 0.00 0.288 0.0087) - ( 0.50 0.354 0.0087) - ( 1.00 0.421 0.0088) - ( 1.50 0.487 0.0089) - ( 2.00 0.554 0.0090) - ( 2.50 0.619 0.0091) - ( 3.00 0.685 0.0092) - ( 3.50 0.749 0.0093) - ( 4.00 0.815 0.0095) - ( 4.50 0.879 0.0096) - ( 5.00 0.944 0.0097) - ( 5.50 1.008 0.0099) - ( 6.00 1.072 0.0101) - ( 6.50 1.135 0.0103) - ( 7.00 1.197 0.0107) - ( 7.50 1.256 0.0112) - ( 8.00 1.305 0.0125) - ( 9.00 1.390 0.0155) - ( 9.50 1.424 0.0171) - ( 10.00 1.458 0.0192) - ( 10.50 1.488 0.0219) - ( 11.00 1.512 0.0255) - ( 11.50 1.533 0.0307) - ( 12.00 1.549 0.0370) - ( 12.50 1.558 0.0452) - ( 13.00 1.470 0.0630) - ( 13.50 1.398 0.0784) - ( 14.00 1.354 0.0931) - ( 14.50 1.336 0.1081) - ( 15.00 1.333 0.1239) - ( 15.50 1.326 0.1415) - ( 16.00 1.329 0.1592) - ( 16.50 1.326 0.1743) - ( 17.00 1.321 0.1903) - ( 17.50 1.331 0.2044) - ( 18.00 1.333 0.2186) - ( 18.50 1.340 0.2324) - ( 19.00 1.362 0.2455) - ( 19.50 1.382 0.2584) - ( 20.00 1.398 0.2689) - ( 20.50 1.426 0.2814) - ( 21.00 1.437 0.2943) - ( 22.00 1.418 0.3246) - ( 23.00 1.397 0.3557) - ( 24.00 1.376 0.3875) - ( 25.00 1.354 0.4198) - ( 26.00 1.332 0.4524) - ( 28.00 1.293 0.5183) - ( 30.00 1.265 0.5843) - ( 32.00 1.253 0.6492) - ( 35.00 1.264 0.7438) - ( 40.00 1.258 0.8970) - ( 45.00 1.217 1.0402) - ( 50.00 1.146 1.1686) - ( 55.00 1.049 1.2779) - ( 60.00 0.932 1.3647) - ( 65.00 0.799 1.4267) - ( 70.00 0.657 1.4621) - ( 75.00 0.509 1.4708) - ( 80.00 0.362 1.4544) - ( 85.00 0.221 1.4196) - ( 90.00 0.092 1.3938) - ( 95.00 -0.030 1.3943) - ( 100.00 -0.150 1.3798) - ( 105.00 -0.267 1.3504) - ( 110.00 -0.379 1.3063) - ( 115.00 -0.483 1.2481) - ( 120.00 -0.578 1.1763) - ( 125.00 -0.660 1.0919) - ( 130.00 -0.727 0.9962) - ( 135.00 -0.777 0.8906) - ( 140.00 -0.807 0.7771) - ( 145.00 -0.815 0.6581) - ( 150.00 -0.797 0.5364) - ( 155.00 -0.750 0.4157) - ( 160.00 -0.673 0.3000) - ( 170.00 -0.547 0.1051) - ( 175.00 -0.274 0.0388) - ( 180.00 0.000 0.0267) -); diff --git a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU35_A17 b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU35_A17 deleted file mode 100755 index 041013e24..000000000 --- a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU35_A17 +++ /dev/null @@ -1,155 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180.00 0.000 0.0407) - (-175.00 0.223 0.0507) - (-170.00 0.405 0.1055) - (-160.00 0.658 0.2982) - (-155.00 0.733 0.4121) - (-150.00 0.778 0.5308) - (-145.00 0.795 0.6503) - (-140.00 0.787 0.7672) - (-135.00 0.757 0.8785) - (-130.00 0.708 0.9819) - (-125.00 0.641 1.0756) - (-120.00 0.560 1.1580) - (-115.00 0.467 1.2280) - (-110.00 0.365 1.2847) - (-105.00 0.255 1.3274) - (-100.00 0.139 1.3557) - ( -95.00 0.021 1.3692) - ( -90.00 -0.098 1.3680) - ( -85.00 -0.216 1.3521) - ( -80.00 -0.331 1.3218) - ( -75.00 -0.441 1.2773) - ( -70.00 -0.544 1.2193) - ( -65.00 -0.638 1.1486) - ( -60.00 -0.720 1.0660) - ( -55.00 -0.788 0.9728) - ( -50.00 -0.840 0.8705) - ( -45.00 -0.875 0.7611) - ( -40.00 -0.889 0.6466) - ( -35.00 -0.880 0.5299) - ( -30.00 -0.846 0.4141) - ( -25.00 -0.784 0.3030) - ( -24.00 -0.768 0.2817) - ( -23.00 -0.751 0.2608) - ( -22.00 -0.733 0.2404) - ( -21.00 -0.714 0.2205) - ( -20.00 -0.693 0.2011) - ( -19.00 -0.671 0.1822) - ( -18.00 -0.648 0.1640) - ( -17.00 -0.624 0.1465) - ( -16.00 -0.601 0.1300) - ( -15.00 -0.579 0.1145) - ( -14.00 -0.559 0.1000) - ( -13.00 -0.539 0.0867) - ( -12.00 -0.519 0.0744) - ( -11.00 -0.499 0.0633) - ( -10.00 -0.480 0.0534) - ( -5.54 -0.385 0.0245) - ( -5.04 -0.359 0.0225) - ( -4.54 -0.360 0.0196) - ( -4.04 -0.355 0.0174) - ( -3.54 -0.307 0.0162) - ( -3.04 -0.246 0.0144) - ( -3.00 -0.240 0.0240) - ( -2.50 -0.163 0.0188) - ( -2.00 -0.091 0.0160) - ( -1.50 -0.019 0.0137) - ( -1.00 0.052 0.0118) - ( -0.50 0.121 0.0104) - ( 0.00 0.196 0.0094) - ( 0.50 0.265 0.0096) - ( 1.00 0.335 0.0098) - ( 1.50 0.404 0.0099) - ( 2.00 0.472 0.0100) - ( 2.50 0.540 0.0102) - ( 3.00 0.608 0.0103) - ( 3.50 0.674 0.0104) - ( 4.00 0.742 0.0105) - ( 4.50 0.809 0.0107) - ( 5.00 0.875 0.0108) - ( 5.50 0.941 0.0109) - ( 6.00 1.007 0.0110) - ( 6.50 1.071 0.0113) - ( 7.00 1.134 0.0115) - ( 7.50 1.198 0.0117) - ( 8.00 1.260 0.0120) - ( 8.50 1.318 0.0126) - ( 9.00 1.368 0.0133) - ( 9.50 1.422 0.0143) - ( 10.00 1.475 0.0156) - ( 10.50 1.523 0.0174) - ( 11.00 1.570 0.0194) - ( 11.50 1.609 0.0227) - ( 12.00 1.642 0.0269) - ( 12.50 1.675 0.0319) - ( 13.00 1.700 0.0398) - ( 13.50 1.717 0.0488) - ( 14.00 1.712 0.0614) - ( 14.50 1.703 0.0786) - ( 15.50 1.671 0.1173) - ( 16.00 1.649 0.1377) - ( 16.50 1.621 0.1600) - ( 17.00 1.598 0.1814) - ( 17.50 1.571 0.2042) - ( 18.00 1.549 0.2316) - ( 19.00 1.544 0.2719) - ( 19.50 1.549 0.2906) - ( 20.00 1.565 0.3085) - ( 21.00 1.565 0.3447) - ( 22.00 1.563 0.3820) - ( 23.00 1.558 0.4203) - ( 24.00 1.552 0.4593) - ( 25.00 1.546 0.4988) - ( 26.00 1.539 0.5387) - ( 28.00 1.527 0.6187) - ( 30.00 1.522 0.6978) - ( 32.00 1.529 0.7747) - ( 35.00 1.544 0.8869) - ( 40.00 1.529 1.0671) - ( 45.00 1.471 1.2319) - ( 50.00 1.376 1.3747) - ( 55.00 1.249 1.4899) - ( 60.00 1.097 1.5728) - ( 65.00 0.928 1.6202) - ( 70.00 0.750 1.6302) - ( 75.00 0.570 1.6031) - ( 80.00 0.396 1.5423) - ( 85.00 0.237 1.4598) - ( 90.00 0.101 1.4041) - ( 95.00 -0.022 1.4053) - ( 100.00 -0.143 1.3914) - ( 105.00 -0.261 1.3625) - ( 110.00 -0.374 1.3188) - ( 115.00 -0.480 1.2608) - ( 120.00 -0.575 1.1891) - ( 125.00 -0.659 1.1046) - ( 130.00 -0.727 1.0086) - ( 135.00 -0.778 0.9025) - ( 140.00 -0.809 0.7883) - ( 145.00 -0.818 0.6684) - ( 150.00 -0.800 0.5457) - ( 155.00 -0.754 0.4236) - ( 160.00 -0.677 0.3066) - ( 170.00 -0.417 0.1085) - ( 175.00 -0.229 0.0510) - ( 180.00 0.000 0.0407) -); diff --git a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU40_A17 b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU40_A17 deleted file mode 100755 index 6138a98dd..000000000 --- a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/DU40_A17 +++ /dev/null @@ -1,156 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180.00 0.000 0.0602) - (-175.00 0.218 0.0699) - (-170.00 0.397 0.1107) - (-160.00 0.642 0.3045) - (-155.00 0.715 0.4179) - (-150.00 0.757 0.5355) - (-145.00 0.772 0.6535) - (-140.00 0.762 0.7685) - (-135.00 0.731 0.8777) - (-130.00 0.680 0.9788) - (-125.00 0.613 1.0700) - (-120.00 0.532 1.1499) - (-115.00 0.439 1.2174) - (-110.00 0.337 1.2716) - (-105.00 0.228 1.3118) - (-100.00 0.114 1.3378) - ( -95.00 -0.002 1.3492) - ( -90.00 -0.120 1.3460) - ( -85.00 -0.236 1.3283) - ( -80.00 -0.349 1.2964) - ( -75.00 -0.456 1.2507) - ( -70.00 -0.557 1.1918) - ( -65.00 -0.647 1.1204) - ( -60.00 -0.727 1.0376) - ( -55.00 -0.792 0.9446) - ( -50.00 -0.842 0.8429) - ( -45.00 -0.874 0.7345) - ( -40.00 -0.886 0.6215) - ( -35.00 -0.875 0.5067) - ( -30.00 -0.839 0.3932) - ( -25.00 -0.777 0.2849) - ( -24.00 -0.761 0.2642) - ( -23.00 -0.744 0.2440) - ( -22.00 -0.725 0.2242) - ( -21.00 -0.706 0.2049) - ( -20.00 -0.685 0.1861) - ( -19.00 -0.662 0.1687) - ( -18.00 -0.635 0.1533) - ( -17.00 -0.605 0.1398) - ( -16.00 -0.571 0.1281) - ( -15.00 -0.534 0.1183) - ( -14.00 -0.494 0.1101) - ( -13.00 -0.452 0.1036) - ( -12.00 -0.407 0.0986) - ( -11.00 -0.360 0.0951) - ( -10.00 -0.311 0.0931) - ( -8.00 -0.208 0.0930) - ( -6.00 -0.111 0.0689) - ( -5.50 -0.090 0.0614) - ( -5.00 -0.072 0.0547) - ( -4.50 -0.065 0.0480) - ( -4.00 -0.054 0.0411) - ( -3.50 -0.017 0.0349) - ( -3.00 0.003 0.0299) - ( -2.50 0.014 0.0255) - ( -2.00 0.009 0.0198) - ( -1.50 0.004 0.0164) - ( -1.00 0.036 0.0147) - ( -0.50 0.073 0.0137) - ( 0.00 0.137 0.0113) - ( 0.50 0.213 0.0114) - ( 1.00 0.292 0.0118) - ( 1.50 0.369 0.0122) - ( 2.00 0.444 0.0124) - ( 2.50 0.514 0.0124) - ( 3.00 0.580 0.0123) - ( 3.50 0.645 0.0120) - ( 4.00 0.710 0.0119) - ( 4.50 0.776 0.0122) - ( 5.00 0.841 0.0125) - ( 5.50 0.904 0.0129) - ( 6.00 0.967 0.0135) - ( 6.50 1.027 0.0144) - ( 7.00 1.084 0.0158) - ( 7.50 1.140 0.0174) - ( 8.00 1.193 0.0198) - ( 8.50 1.242 0.0231) - ( 9.00 1.287 0.0275) - ( 9.50 1.333 0.0323) - ( 10.00 1.368 0.0393) - ( 10.50 1.400 0.0475) - ( 11.00 1.425 0.0580) - ( 11.50 1.449 0.0691) - ( 12.00 1.473 0.0816) - ( 12.50 1.494 0.0973) - ( 13.00 1.513 0.1129) - ( 13.50 1.538 0.1288) - ( 14.50 1.587 0.1650) - ( 15.00 1.614 0.1845) - ( 15.50 1.631 0.2052) - ( 16.00 1.649 0.2250) - ( 16.50 1.666 0.2467) - ( 17.00 1.681 0.2684) - ( 17.50 1.699 0.2900) - ( 18.00 1.719 0.3121) - ( 19.00 1.751 0.3554) - ( 19.50 1.767 0.3783) - ( 20.50 1.798 0.4212) - ( 21.00 1.810 0.4415) - ( 22.00 1.830 0.4830) - ( 23.00 1.847 0.5257) - ( 24.00 1.861 0.5694) - ( 25.00 1.872 0.6141) - ( 26.00 1.881 0.6593) - ( 28.00 1.894 0.7513) - ( 30.00 1.904 0.8441) - ( 32.00 1.915 0.9364) - ( 35.00 1.929 1.0722) - ( 40.00 1.903 1.2873) - ( 45.00 1.820 1.4796) - ( 50.00 1.690 1.6401) - ( 55.00 1.522 1.7609) - ( 60.00 1.323 1.8360) - ( 65.00 1.106 1.8614) - ( 70.00 0.880 1.8347) - ( 75.00 0.658 1.7567) - ( 80.00 0.449 1.6334) - ( 85.00 0.267 1.4847) - ( 90.00 0.124 1.3879) - ( 95.00 0.002 1.3912) - ( 100.00 -0.118 1.3795) - ( 105.00 -0.235 1.3528) - ( 110.00 -0.348 1.3114) - ( 115.00 -0.453 1.2557) - ( 120.00 -0.549 1.1864) - ( 125.00 -0.633 1.1041) - ( 130.00 -0.702 1.0102) - ( 135.00 -0.754 0.9060) - ( 140.00 -0.787 0.7935) - ( 145.00 -0.797 0.6750) - ( 150.00 -0.782 0.5532) - ( 155.00 -0.739 0.4318) - ( 160.00 -0.664 0.3147) - ( 170.00 -0.410 0.1144) - ( 175.00 -0.226 0.0702) - ( 180.00 0.000 0.0602) -); diff --git a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/NACA64_A17 b/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/NACA64_A17 deleted file mode 100755 index 11fa618d0..000000000 --- a/exampleCases/example.ADM.ssc.base/constant/airfoilProperties/NACA64_A17 +++ /dev/null @@ -1,147 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180.00 0.000 0.0198) - (-175.00 0.374 0.0341) - (-170.00 0.749 0.0955) - (-160.00 0.659 0.2807) - (-155.00 0.736 0.3919) - (-150.00 0.783 0.5086) - (-145.00 0.803 0.6267) - (-140.00 0.798 0.7427) - (-135.00 0.771 0.8537) - (-130.00 0.724 0.9574) - (-125.00 0.660 1.0519) - (-120.00 0.581 1.1355) - (-115.00 0.491 1.2070) - (-110.00 0.390 1.2656) - (-105.00 0.282 1.3104) - (-100.00 0.169 1.3410) - ( -95.00 0.052 1.3572) - ( -90.00 -0.067 1.3587) - ( -85.00 -0.184 1.3456) - ( -80.00 -0.299 1.3181) - ( -75.00 -0.409 1.2765) - ( -70.00 -0.512 1.2212) - ( -65.00 -0.606 1.1532) - ( -60.00 -0.689 1.0731) - ( -55.00 -0.759 0.9822) - ( -50.00 -0.814 0.8820) - ( -45.00 -0.850 0.7742) - ( -40.00 -0.866 0.6610) - ( -35.00 -0.860 0.5451) - ( -30.00 -0.829 0.4295) - ( -25.00 -0.853 0.3071) - ( -24.00 -0.870 0.2814) - ( -23.00 -0.890 0.2556) - ( -22.00 -0.911 0.2297) - ( -21.00 -0.934 0.2040) - ( -20.00 -0.958 0.1785) - ( -19.00 -0.982 0.1534) - ( -18.00 -1.005 0.1288) - ( -17.00 -1.082 0.1037) - ( -16.00 -1.113 0.0786) - ( -15.00 -1.105 0.0535) - ( -14.00 -1.078 0.0283) - ( -13.50 -1.053 0.0158) - ( -13.00 -1.015 0.0151) - ( -12.00 -0.904 0.0134) - ( -11.00 -0.807 0.0121) - ( -10.00 -0.711 0.0111) - ( -9.00 -0.595 0.0099) - ( -8.00 -0.478 0.0091) - ( -7.00 -0.375 0.0086) - ( -6.00 -0.264 0.0082) - ( -5.00 -0.151 0.0079) - ( -4.00 -0.017 0.0072) - ( -3.00 0.088 0.0064) - ( -2.00 0.213 0.0054) - ( -1.00 0.328 0.0052) - ( 0.00 0.442 0.0052) - ( 1.00 0.556 0.0052) - ( 2.00 0.670 0.0053) - ( 3.00 0.784 0.0053) - ( 4.00 0.898 0.0054) - ( 5.00 1.011 0.0058) - ( 6.00 1.103 0.0091) - ( 7.00 1.181 0.0113) - ( 8.00 1.257 0.0124) - ( 8.50 1.293 0.0130) - ( 9.00 1.326 0.0136) - ( 9.50 1.356 0.0143) - ( 10.00 1.382 0.0150) - ( 10.50 1.400 0.0267) - ( 11.00 1.415 0.0383) - ( 11.50 1.425 0.0498) - ( 12.00 1.434 0.0613) - ( 12.50 1.443 0.0727) - ( 13.00 1.451 0.0841) - ( 13.50 1.453 0.0954) - ( 14.00 1.448 0.1065) - ( 14.50 1.444 0.1176) - ( 15.00 1.445 0.1287) - ( 15.50 1.447 0.1398) - ( 16.00 1.448 0.1509) - ( 16.50 1.444 0.1619) - ( 17.00 1.438 0.1728) - ( 17.50 1.439 0.1837) - ( 18.00 1.448 0.1947) - ( 18.50 1.452 0.2057) - ( 19.00 1.448 0.2165) - ( 19.50 1.438 0.2272) - ( 20.00 1.428 0.2379) - ( 21.00 1.401 0.2590) - ( 22.00 1.359 0.2799) - ( 23.00 1.300 0.3004) - ( 24.00 1.220 0.3204) - ( 25.00 1.168 0.3377) - ( 26.00 1.116 0.3554) - ( 28.00 1.015 0.3916) - ( 30.00 0.926 0.4294) - ( 32.00 0.855 0.4690) - ( 35.00 0.800 0.5324) - ( 40.00 0.804 0.6452) - ( 45.00 0.793 0.7573) - ( 50.00 0.763 0.8664) - ( 55.00 0.717 0.9708) - ( 60.00 0.656 1.0693) - ( 65.00 0.582 1.1606) - ( 70.00 0.495 1.2438) - ( 75.00 0.398 1.3178) - ( 80.00 0.291 1.3809) - ( 85.00 0.176 1.4304) - ( 90.00 0.053 1.4565) - ( 95.00 -0.074 1.4533) - ( 100.00 -0.199 1.4345) - ( 105.00 -0.321 1.4004) - ( 110.00 -0.436 1.3512) - ( 115.00 -0.543 1.2874) - ( 120.00 -0.640 1.2099) - ( 125.00 -0.723 1.1196) - ( 130.00 -0.790 1.0179) - ( 135.00 -0.840 0.9064) - ( 140.00 -0.868 0.7871) - ( 145.00 -0.872 0.6627) - ( 150.00 -0.850 0.5363) - ( 155.00 -0.798 0.4116) - ( 160.00 -0.714 0.2931) - ( 170.00 -0.749 0.0971) - ( 175.00 -0.374 0.0334) - ( 180.00 0.000 0.0198) -); diff --git a/exampleCases/example.ADM.ssc.base/constant/g b/exampleCases/example.ADM.ssc.base/constant/g deleted file mode 100755 index 74304427f..000000000 --- a/exampleCases/example.ADM.ssc.base/constant/g +++ /dev/null @@ -1,22 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class uniformDimensionedVectorField; - location "constant"; - object g; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -dimensions [0 1 -2 0 0 0 0]; -value ( 0.0 0.0 -9.81 ); - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/constant/polyMesh/blockMeshDict b/exampleCases/example.ADM.ssc.base/constant/polyMesh/blockMeshDict deleted file mode 100755 index 575f61147..000000000 --- a/exampleCases/example.ADM.ssc.base/constant/polyMesh/blockMeshDict +++ /dev/null @@ -1,105 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object blockMeshDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../../setUp" - - - - -convertToMeters 1.0; - -vertices -( - ( $xMin $yMin $zMin) - ( $xMax $yMin $zMin) - ( $xMax $yMax $zMin) - ( $xMin $yMax $zMin) - ( $xMin $yMin $zMax) - ( $xMax $yMin $zMax) - ( $xMax $yMax $zMax) - ( $xMin $yMax $zMax) -); - -blocks -( - hex (0 1 2 3 4 5 6 7) ($nx $ny $nz) simpleGrading (1 1 1) -); - -edges -( -); - -boundary -( - lower - { - type wall; - faces - ( - (0 3 2 1) - ); - } - upper - { - type patch; - faces - ( - (4 5 6 7) - ); - } - west - { - type cyclic; - neighbourPatch east; - faces - ( - (0 4 7 3) - ); - } - east - { - type cyclic; - neighbourPatch west; - faces - ( - (1 2 6 5) - ); - } - north - { - type cyclic; - neighbourPatch south; - faces - ( - (3 7 6 2) - ); - } - south - { - type cyclic; - neighbourPatch north; - faces - ( - (0 1 5 4) - ); - } -); - -mergePatchPairs -( -); - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/constant/transportProperties b/exampleCases/example.ADM.ssc.base/constant/transportProperties deleted file mode 100755 index 3ee719c86..000000000 --- a/exampleCases/example.ADM.ssc.base/constant/transportProperties +++ /dev/null @@ -1,39 +0,0 @@ -/*---------------------------------------------------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.openfoam.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ - -FoamFile -{ - version 2.0; - format ascii; - - root ""; - case ""; - instance ""; - local ""; - - class dictionary; - object transportProperties; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -transportModel Newtonian; - -// Molecular viscosity -nu nu [0 2 -1 0 0 0 0] $nu; - -// Reference temperature -TRef TRef [0 0 0 1 0 0 0] $TRef; - -// Prandtl numbers -Pr Pr [0 0 0 0 0 0 0] $Pr; -Prt Prt [0 0 0 0 0 0 0] $Prt; -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/constant/turbineArrayProperties b/exampleCases/example.ADM.ssc.base/constant/turbineArrayProperties deleted file mode 100755 index 752cdbbee..000000000 --- a/exampleCases/example.ADM.ssc.base/constant/turbineArrayProperties +++ /dev/null @@ -1,67 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object turbineProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -globalProperties -{ - outputControl "timeStep"; - outputInterval 1; -} - -turbine0 -{ - turbineType "NREL5MWRef"; - baseLocation (1000.0 1500.0 0.0); - nRadial 64; - azimuthMaxDis 2.0; - nAvgSector 1; - pointDistType "uniform"; - pointInterpType "linear"; - bladeUpdateType "oldPosition"; - epsilon 20.0; - forceScalar 1.0; - inflowVelocityScalar 0.94; - tipRootLossCorrType "Glauert"; - rotationDir "cw"; - Azimuth 0.0; - RotSpeed 9.15519863; - TorqueGen 0.0; - Pitch 0.0; - NacYaw 270.0; - fluidDensity 1.225; -} - -turbine1 -{ - turbineType "NREL5MWRef"; - baseLocation (1500.0 1500.0 0.0); - nRadial 64; - azimuthMaxDis 2.0; - nAvgSector 1; - pointDistType "uniform"; - pointInterpType "linear"; - bladeUpdateType "oldPosition"; - epsilon 20.0; - forceScalar 1.0; - inflowVelocityScalar 0.94; - tipRootLossCorrType "Glauert"; - rotationDir "cw"; - Azimuth 0.0; - RotSpeed 9.15519863; - TorqueGen 0.0; - Pitch 0.0; - NacYaw 270.0; - fluidDensity 1.225; -} diff --git a/exampleCases/example.ADM.ssc.base/constant/turbineProperties/NREL5MWRef b/exampleCases/example.ADM.ssc.base/constant/turbineProperties/NREL5MWRef deleted file mode 100755 index c8b36798f..000000000 --- a/exampleCases/example.ADM.ssc.base/constant/turbineProperties/NREL5MWRef +++ /dev/null @@ -1,122 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.x | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ - -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object turbineProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -NumBl 3; -TipRad 63.0; -HubRad 1.5; -UndSling 0.0; -OverHang -5.01910; -NacelleLength 8; -NacelleFrontalArea 2; -NacelleCd 0.5; -TowerHt 87.6; -Twr2Shft 1.96256; -ShftTilt -5.0; -PreCone (-2.5 -2.5 -2.5); -GBRatio 97.0; -GBEfficiency 1.0; -GenEfficiency 0.944; -RatedRotSpeed 12.1; -GenIner 534.116; -HubIner 115.926E3; -BladeIner 11.776047E6; -GenTorqueControllerType "fiveRegion"; -//GenTorqueControllerType "speedTorqueTable"; -//GenTorqueControllerType "none"; -BladePitchControllerType "PID"; -//BladePitchControllerType "none"; -NacYawControllerType "none"; -RotSpeedLimiter false; -GenTorqueRateLimiter true; -NacYawRateLimiter true; -BladePitchRateLimiter true; -SpeedFilterCornerFrequency 2.0; - - -GenTorqueControllerParams -{ - RateLimitGenTorque 15.0E3; - SpeedTorqueTable - ( - // gen speed (RPM) gen torque (N-m) - ( 670.00 0.0 ) - ( 871.00 20000.0 ) - ( 1161.96 32000.0 ) - ( 1173.70 43093.6 ) - ); - CutInGenSpeed 670.0; - Region2StartGenSpeed 871.0; - Region2EndGenSpeed 1161.963; - CutInGenTorque 0.0; - RatedGenTorque 43.09355E3; - KGen 2.55764E-2; -} - -BladePitchControllerParams -{ - RateLimitBladePitch 8.000; - PitchMin 0.000; - PitchMax 90.000; - PitchK 6.302336; - PitchControlKP 1.82620057; - PitchControlKI 0.78265750; - PitchControlKD 0.000; -} - -NacYawControllerParams -{ - RateLimitNacYaw 2.0; -} - - - - -Airfoils -( - "Cylinder1" - "Cylinder2" - "DU40_A17" - "DU35_A17" - "DU30_A17" - "DU25_A17" - "DU21_A17" - "NACA64_A17" -); - - - -BladeData -( -// radius(m) c(m) twist(deg) airfoil - (2.8667 3.542 13.308 0) - (5.6 3.854 13.308 0) - (8.3333 4.167 13.308 1) - (11.75 4.557 13.308 2) - (15.85 4.652 11.48 3) - (19.95 4.458 10.162 3) - (24.05 4.249 9.011 4) - (28.15 4.007 7.795 5) - (32.25 3.748 6.544 5) - (36.35 3.502 5.361 6) - (40.45 3.256 4.188 6) - (44.55 3.01 3.125 7) - (48.65 2.764 2.319 7) - (52.75 2.518 1.526 7) - (56.1667 2.313 0.863 7) - (58.9 2.086 0.37 7) - (61.6333 1.419 0.106 7) -); diff --git a/exampleCases/example.ADM.ssc.base/constant/turbulenceProperties b/exampleCases/example.ADM.ssc.base/constant/turbulenceProperties deleted file mode 100755 index f8a545e0c..000000000 --- a/exampleCases/example.ADM.ssc.base/constant/turbulenceProperties +++ /dev/null @@ -1,22 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "constant"; - object turbulenceProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -// simulationType RASModel; - simulationType LESModel; -// simulationType laminar; - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/runscript.preprocess b/exampleCases/example.ADM.ssc.base/runscript.preprocess deleted file mode 100755 index 8710dca06..000000000 --- a/exampleCases/example.ADM.ssc.base/runscript.preprocess +++ /dev/null @@ -1,170 +0,0 @@ -#!/bin/bash -#PBS -l walltime=1:00:00 -#PBS -l procs=1 -#PBS -A ssc -#PBS -q debug - - - - - -# User Input. -OpenFOAMversion=2.4.x # OpenFOAM version - -startTime=20000 # Start time -precursorDir=/projects/ssc/flowLibrary/neutral_3kmx3kmx1km - -updateBCType=1 # Boolean for whether or not the boundary condition types will be updated over - # what is in the initial conditions files. Leave it 0 for precursors. -inflowDir='west' # For inflow/outflow cases, specify the inflow direction. Choices are 'west', - # 'east', 'south', 'west', 'southWest', 'northWest', 'southEast', and - # 'northEast'. There is a 'cyclic' option too in case you need to change - # back to cyclic or simply update the number of boundary face entries. -localRefinementLevels=0 # Number of levels of local refinement (requires system/topoSetDict and - # system/refineHexMeshDict). -globalRefinementLevels=0 # Number of levels of global refinement. -cores=1 # Enter the number of cores you will preprocess on. - - - - - - -# Define some functions for mesh refinement. -# Local refinement performed on one core. -refineMeshLocal() -{ - i=$1 - while [ $i -ge 1 ] - do - echo " -Performing level $i local refinement with topoSet/refineHexMesh" - echo " *selecting cells to refine..." - topoSet -dict system/topoSetDict.local.$i > log.topoSet.local.$i 2>&1 - - echo " *refining cells..." - refineHexMesh local -overwrite > log.refineHexMesh.local.$i 2>&1 - - let i=i-1 - done -} - -# Global refinement performed in parallel. -refineMeshGlobal() -{ - i=1 - while [ $i -le $1 ] - do - echo " -Performing level $i global refinement with refineMesh" - echo " *refining cells..." - mpirun -np $cores refineMesh -parallel -overwrite > log.refineMesh.global.$i 2>&1 - - let i=i+1 - done -} - - -# If running in parallel, cd to job launch directory -if [ $cores -gt 1 ] - then - cd $PBS_O_WORKDIR -fi - - -# Source the bash profile and then call the appropriate OpenFOAM version function -# so that all the modules and environment variables get set. -echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." -source $HOME/.bash_profile -OpenFOAM-$OpenFOAMversion - - -# Copy the controlDict.1 (assuming this is the one the actual solver will start -# out with) to controlDict. OpenFOAM reads "controlDict", not the numbered ones. -echo "Getting the control dictionary ready..." -cp system/controlDict.1 system/controlDict - - -# Copy the "clean" .original initial fields to a working copy. OpenFOAM does not -# read the ".original" initial fields--that's why they remain clean. -echo "Getting the initial condition directory from the precursor..." -rm -rf $startTime -cp -rf $precursorDir/$startTime $startTime - - -# Build the mesh. -echo "Copy the the base mesh from the precursor..." -rm -rf constant/polyMesh -cp -rf $precursorDir/constant/polyMesh ./constant - - -# Get the inflow data linked up. -echo "Linking the inflow data with this directory..." -ln -s $precursorDir/drivingData/boundaryData ./constant - - -# Get the driving source terms linked up. -echo "Linking the driving source terms with this directory..." -ln -s $precursorDir/drivingData/sources ./constant - - -# The initial fields come from the precursor which is periodic on all sides. The turbine -# case has inflow and outflow. Call the changeDictionary utility to update for inflow/outflow.. -if [ $updateBCType -eq 1 ] - then - echo "Using changeDictionary to update boundary conditions..." - changeDictionary -dict system/changeDictionaryDict.updateBCs.$inflowDir -time $startTime -enableFunctionEntries > log.changeDictionary.updateBCs.$inflowDir.1 2>&1 -fi - - -# Do serial local refinement -echo "Using refineHexMesh to perform " $localRefinementLevels " of local refinement..." -refineMeshLocal $localRefinementLevels - - -# If running in paralle from this point forward, then do the following: -if [ $cores -gt 1 ] - then - # Decompose the mesh and solution files (serial) - echo "Using decomposePar to decompose the problem for parallel processing..." - decomposePar -cellDist -force -time $startTime > log.decomposePar 2>&1 - - # Check the mesh - echo "Running checkMesh to report mesh diagnostics..." - mpirun -np $cores checkMesh -parallel > log.checkMesh.1 2>&1 - - # Perform global refinement to desired resolution. - echo "Using refineMesh to perform " $globalRefinementLevels " of global refinement..." - refineMeshGlobal $globalRefinementLevels - - # The mesh got globally refined, but the solution file did not, so - # the boundary fields may not have the correct number of entries. - # Use the changeDictionary utility to overwrite the spatially varying - # boundary data to a uniform single value. - if [ $updateBCType -eq 1 ] - then - echo "Using changeDictionary to ensure that the boundaries have the correct number of faces..." - mpirun -np $cores changeDictionary -dict system/changeDictionaryDict.updateBCs.$inflowDir -time $startTime -enableFunctionEntries -parallel > log.changeDictionary.updateBCs.$inflowDir.1 2>&1 - fi - - # Renumber the mesh for better matrix solver performance. - echo "Using renumberMesh to renumber the mesh for better matrix conditioning..." - mpirun -np $cores renumberMesh -parallel -overwrite -time $startTime > log.renumberMesh 2>&1 - - # Do one last check on the mesh. - echo "Running checkMesh to report mesh diagnostics..." - mpirun -np $cores checkMesh -parallel > log.checkMesh.3 2>&1 - - -# Otherwise, run in serial as follows: -else - # Renumber the mesh. - echo "Using renumberMesh to renumber the mesh for better matrix conditioning..." - renumberMesh -overwrite -time $startTime > log.renumberMesh 2>&1 - - # Decompose the mesh and solution files (serial) - echo "Using decomposePar to decompose the problem for parallel processing..." - decomposePar -cellDist -force -time $startTime > log.decomposePar 2>&1 - - # Check the mesh. - echo "Running checkMesh to report mesh diagnostics..." - checkMesh > log.checkMesh.1 2>&1 -fi diff --git a/exampleCases/example.ADM.ssc.base/runscript.solve.1 b/exampleCases/example.ADM.ssc.base/runscript.solve.1 deleted file mode 100755 index c8f167af9..000000000 --- a/exampleCases/example.ADM.ssc.base/runscript.solve.1 +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/bash -#PBS -l walltime=2:00:00 -#PBS -l procs=180 -#PBS -A ssc -#PBS -q short -#PBS -l qos=high - -cd $PBS_O_WORKDIR - - - - -# User Input. -OpenFOAMversion=2.4.x # OpenFOAM version -startTime=0 # Start time -cores=180 # Enter the number of cores you will preprocess on. -runNumber=1 # Enter the run number (useful for keeping track of restarts). -solver=windPlantSolver.ADM # Enter the name of the flow solver. - - - -echo "Starting OpenFOAM job at: " $(date) -echo "using " $cores " cores" - - -# Source the bash profile and then call the appropriate OpenFOAM version function -# so that all the modules and environment variables get set. -echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." -source $HOME/.bash_profile -OpenFOAM-2.4.develop - - -# Get the control dictionary for this particular run. -cp system/controlDict.$runNumber system/controlDict - - -# Run the solver. -mpirun -np $cores $solver -parallel > log.$runNumber.$solver 2>&1 - -echo "Ending OpenFOAM job at: " $(date) diff --git a/exampleCases/example.ADM.ssc.base/setUp b/exampleCases/example.ADM.ssc.base/setUp deleted file mode 100755 index 427ba153e..000000000 --- a/exampleCases/example.ADM.ssc.base/setUp +++ /dev/null @@ -1,103 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.4.x | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ - -// Domain size and number of cells. -xMin 0.0; // Minimum x-extent of domain (m). -yMin 0.0; // Minimum y-extent of domain (m). -zMin 0.0; // Minimum z-extent of domain (m). -xMax 3000.0; // Maximum x-extent of domain (m). -yMax 3000.0; // Maximum y-extent of domain (m). -zMax 1000.0; // Maximum z-extent of domain (m). -nx 300; // Number of cells in x-direction. -ny 300; // Number of cells in y-direction. -nz 100; // Number of cells in z-direction. - - - - -// Number of cores and domain decomposition information. -nCores 180; // Number of cores on which to run this case. -decompType simple; // Decomposition algorithm. "simple" and "scotch" are good choices. -decompOrder (6 6 5); // Order of the decomposition number of partitions in (x y z)-directions. - - - - -// Planar averaging and source term statistics options. -statisticsOn true; // Gather planar-averaged flow statistics. -statisticsFrequency 5; // Frequency in time steps of statistics gathering. -avgStartTime 20200; // Time to begin accumulating the mean; -corrStartTime 20400; // Time to begin accumulating the correlations; - - - -// Initial values for the variables. -// Note that U and T get overwritten if setFieldsABL is called. -U0Mag 8.0; // Initial condition for wind speed (m/s). -dir 270.0; // Initial condition for wind direction (deg). -windHeight 99.27; // Height at which to drive mean wind to U0Mag/dir (m). -p_rgh0 0.0; // Initial pressure (minus the hydrostatic variation and normalized by density) (m^2/s^2). -nuSgs0 0.0; // Initial SGS viscosity (m^2/s). -k0 0.1; // Initial SGS turbulent kinetic energy (m^2/s^2). -kappat0 0.0; // Initial SGS temperature diffusivity (m^2/s). -TGradUpper 0.003; // Potential temperature gradient above the strong inversion (K/m). -zInversion 750.0; // Height of the middle of the initial strong capping inversion (m). -inversionWidth 100.0; // Vertical width of the intial strong capping inversion (m). -TBottom 300.0; // Initial potential temperature at bottom of strong capping inversion (K). -TTop 305.0; // Initial potential temperature at top of strong capping inversion (K). - - - - -// General conditions and parameters. -Pr 0.7; // Molecular Prandtl number. -Prt 0.33333333; // Turbulent Prandtl number. -nu 1.0E-5; // Molecular viscosity (m^2/s). -TRef 300.0; // Reference potential temperature (K). -latitude 41.3; // Latitude on the Earth of the site (deg). -EarthPeriod 24.0; // Earth's rotation period (hr). - - - - -// SGS model inputs. -LESModel oneEqEddyABL; // SGS model selection. -ce 0.93; // SGS model constant. -ck 0.0673; // SGS model constant. - - - - -// Surface conditions. -qwall (0.0 0.0 0.0); // Temperature flux at wall (modify the z-value). A negative value is flux into domain (K-m/s). -Rwall (0.0 0.0 0.0 0.0 0.0 0.0); // Initial wall shear stress (m^2/s^2). -kappa 0.4; // von Karman constant. -z0 0.15; // Surface roughness (m). -//STABLE CASES -//betaM 15.0; // Monin-Obukhov wall shear stress model constant. -//gammaM 4.9; // Monin-Obukhov wall shear stress model constant. -//betaH 9.0; // Monin-Obukhov wall temperature flux model constant. -//gammaH 7.8; // Monin-Obukhov wall temperature flux model constant. -//alphaH 1.0; // Monin-Obukhov wall temperature flux model constant. -//heatingRate 0.0; // Surface temperature change rate (when not directly setting temperature flux) (K/s). -//NEUTRAL and UNSTABLE -betaM 16.0; -gammaM 5.0; -betaH 9.0; -gammaH 7.8; -alphaH 1.0; - - - - - - -#inputMode merge - -// ************************************************************************* // - diff --git a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.cyclic b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.cyclic deleted file mode 100755 index 389d1c7e8..000000000 --- a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.cyclic +++ /dev/null @@ -1,261 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp"; - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - boundary - { - north - { - type cyclic; - } - south - { - type cyclic; - } - west - { - type cyclic; - } - east - { - type cyclic; - } - } - - - T - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - } - } - U - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - } - } - k - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - } - } - kappat - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - } - } - nuSgs - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - } - } - p_rgh - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "planarAverage"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.east b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.east deleted file mode 100755 index 3143cb1ab..000000000 --- a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.east +++ /dev/null @@ -1,306 +0,0 @@ -/a*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp"; - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - boundary - { - west - { - type patch; - } - east - { - type patch; - } - } - - - - T - { - boundaryField - { - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - west - { - type zeroGradient; - value uniform 300; - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - west - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - west - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - west - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - west - { - type zeroGradient; - value uniform 0.1; - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - west - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - east - { - type fixedFluxPressure; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type fixedFluxPressure; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - east - { - type fixedValue; - value uniform (0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - east - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.north b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.north deleted file mode 100755 index 6d390357b..000000000 --- a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.north +++ /dev/null @@ -1,217 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - - -#include "../setUp"; - - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - - boundary - { - north - { - type patch; - } - south - { - type patch; - } - } - - T - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - south - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - south - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - south - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - north - { - type zeroGradient; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - north - { - type zeroGradient; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - north - { - type fixedFluxPressure; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - north - { - type fixedValue; - value uniform (0 0 0); - } - south - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - north - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - south - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.northeast b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.northeast deleted file mode 100755 index 8c5231d75..000000000 --- a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.northeast +++ /dev/null @@ -1,313 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp"; - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - boundary - { - north - { - type patch; - } - south - { - type patch; - } - west - { - type patch; - } - east - { - type patch; - } - } - - - T - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - south - { - type zeroGradient; - value uniform 300; - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - west - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - south - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - west - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - south - { - type zeroGradient; - value uniform 0.1; - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - west - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - north - { - type zeroGradient; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - north - { - type zeroGradient; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - north - { - type fixedFluxPressure; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - east - { - type fixedFluxPressure; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - north - { - type fixedValue; - value uniform (0 0 0); - } - south - { - type fixedValue; - value uniform (0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - north - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - south - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.northwest b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.northwest deleted file mode 100755 index 46c74d091..000000000 --- a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.northwest +++ /dev/null @@ -1,313 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp"; - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - - boundary - { - north - { - type patch; - } - south - { - type patch; - } - west - { - type patch; - } - east - { - type patch; - } - } - - - T - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - south - { - type zeroGradient; - value uniform 300; - } - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - east - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - south - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - east - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - south - { - type zeroGradient; - value uniform 0.1; - } - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - east - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - north - { - type zeroGradient; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - north - { - type zeroGradient; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - north - { - type fixedFluxPressure; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - west - { - type fixedFluxPressure; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - north - { - type fixedValue; - value uniform (0 0 0); - } - south - { - type fixedValue; - value uniform (0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - north - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - south - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.south b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.south deleted file mode 100755 index c7b2263b6..000000000 --- a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.south +++ /dev/null @@ -1,215 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp"; - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - - boundary - { - north - { - type patch; - } - south - { - type patch; - } - } - - T - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - north - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - north - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - north - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - south - { - type zeroGradient; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - south - { - type zeroGradient; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - south - { - type fixedFluxPressure; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - south - { - type fixedValue; - value uniform (0 0 0); - } - north - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - south - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - north - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.southeast b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.southeast deleted file mode 100755 index 685b7f941..000000000 --- a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.southeast +++ /dev/null @@ -1,314 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp"; - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - - boundary - { - north - { - type patch; - } - south - { - type patch; - } - west - { - type patch; - } - east - { - type patch; - } - } - - - T - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - north - { - type zeroGradient; - value uniform 300; - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - west - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - north - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - west - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - north - { - type zeroGradient; - value uniform 0.1; - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - west - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - south - { - type zeroGradient; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - south - { - type zeroGradient; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - south - { - type fixedFluxPressure; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - east - { - type fixedFluxPressure; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - south - { - type fixedValue; - value uniform (0 0 0); - } - north - { - type fixedValue; - value uniform (0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - south - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - north - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.southwest b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.southwest deleted file mode 100755 index 9ab9bc83f..000000000 --- a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.southwest +++ /dev/null @@ -1,313 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - - boundary - { - north - { - type patch; - } - south - { - type patch; - } - west - { - type patch; - } - east - { - type patch; - } - } - - T - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - north - { - type zeroGradient; - value uniform 300; - } - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - east - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - north - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - east - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - north - { - type zeroGradient; - value uniform 0.1; - } - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - east - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - south - { - type zeroGradient; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - south - { - type zeroGradient; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - south - { - type fixedFluxPressure; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - west - { - type fixedFluxPressure; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - south - { - type fixedValue; - value uniform (0 0 0); - } - north - { - type fixedValue; - value uniform (0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - south - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - north - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.west b/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.west deleted file mode 100755 index 34078e2b8..000000000 --- a/exampleCases/example.ADM.ssc.base/system/changeDictionaryDict.updateBCs.west +++ /dev/null @@ -1,215 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp"; - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - boundary - { - west - { - type patch; - } - east - { - type patch; - } - } - - - T - { - boundaryField - { - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - east - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - east - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - east - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - west - { - type fixedFluxPressure; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - west - { - type fixedValue; - value uniform (0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - west - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/controlDict b/exampleCases/example.ADM.ssc.base/system/controlDict deleted file mode 100755 index 94f0bacaa..000000000 --- a/exampleCases/example.ADM.ssc.base/system/controlDict +++ /dev/null @@ -1,61 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object controlDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - - application ABLSolver; - - libs ("libuserfiniteVolume.so" "libuserincompressibleLESModels.so"); - - startFrom startTime; - - startTime 20000.0; - - stopAt endTime; - - endTime 23600.0; - - deltaT 0.5; - - writeControl adjustableRunTime; - - writeInterval 1000.0; - - purgeWrite 0; - - writeFormat binary; - - writePrecision 12; - - writeCompression compressed; - - timeFormat general; - - timePrecision 12; - - runTimeModifiable yes; - - adjustTimeStep no; - - maxCo 0.75; - - maxDeltaT 25.0; - - functions - { - } - -// ************************************************************************* // - diff --git a/exampleCases/example.ADM.ssc.base/system/controlDict.1 b/exampleCases/example.ADM.ssc.base/system/controlDict.1 deleted file mode 100755 index 94f0bacaa..000000000 --- a/exampleCases/example.ADM.ssc.base/system/controlDict.1 +++ /dev/null @@ -1,61 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object controlDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - - application ABLSolver; - - libs ("libuserfiniteVolume.so" "libuserincompressibleLESModels.so"); - - startFrom startTime; - - startTime 20000.0; - - stopAt endTime; - - endTime 23600.0; - - deltaT 0.5; - - writeControl adjustableRunTime; - - writeInterval 1000.0; - - purgeWrite 0; - - writeFormat binary; - - writePrecision 12; - - writeCompression compressed; - - timeFormat general; - - timePrecision 12; - - runTimeModifiable yes; - - adjustTimeStep no; - - maxCo 0.75; - - maxDeltaT 25.0; - - functions - { - } - -// ************************************************************************* // - diff --git a/exampleCases/example.ADM.ssc.base/system/decomposeParDict b/exampleCases/example.ADM.ssc.base/system/decomposeParDict deleted file mode 100755 index 565dd1343..000000000 --- a/exampleCases/example.ADM.ssc.base/system/decomposeParDict +++ /dev/null @@ -1,76 +0,0 @@ -/*-------------------------------*- C++ -*---------------------------------*\ -| ========= | -| \\ / OpenFOAM | -| \\ / | -| \\ / The Open Source CFD Toolbox | -| \\/ http://www.OpenFOAM.org | -\*-------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - note "mesh decomposition control dictionary"; - location "system"; - object decomposeParDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -numberOfSubdomains $nCores; -method $decompType; -preservePatches (north south east west); - -simpleCoeffs -{ - n $decompOrder; - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 3); - delta 0.001; - order xyz; -} - -metisCoeffs -{ - processorWeights - ( - ); -} - -scotchCoeffs -{ - //processorWeights - //( - // 1 - // 1 - // 1 - // 1 - //); - //writeGraph true; - //strategy "b"; -} - -manualCoeffs -{ - dataFile "decompositionData"; -} - - -//// Is the case distributed -distributed no; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/fvSchemes b/exampleCases/example.ADM.ssc.base/system/fvSchemes deleted file mode 100755 index 12d01ece2..000000000 --- a/exampleCases/example.ADM.ssc.base/system/fvSchemes +++ /dev/null @@ -1,111 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object fvSchemes; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -ddtSchemes -{ - default backward; -// default CrankNicolson 1.0; -} - -gradSchemes -{ - default Gauss linear; - grad(U) Gauss linear; -} - -divSchemes -{ - default Gauss linear; - //div(phi,U) Gauss linear; - //div(phi,T) Gauss linear; - div(phi,U) Gauss localBlended linear upwind; - div(phi,T) Gauss localBlended linear upwind; - div(R) Gauss linear; - div(U) Gauss linear; - div((nuEff*dev(grad(U).T()))) Gauss linear; - div(B) Gauss linear; - div(phi,B) Gauss linear; - div(phi,k) Gauss linear; -} - -laplacianSchemes -{ - default Gauss linear corrected; - laplacian(rUA,p) Gauss linear corrected; - laplacian((1|A(U)),p) Gauss linear corrected; - laplacian(interpolate((1|A(U))),p) Gauss linear corrected; - laplacian(interpolate((1|A(U))),pd) Gauss linear corrected; - laplacian(nu,U) Gauss linear corrected; - laplacian(nuEff,U) Gauss linear corrected; - laplacian(kappaEff,T) Gauss linear corrected; - laplacian(DBEff,B) Gauss linear corrected; - laplacian(nuSgs,U) Gauss linear corrected; -} - -interpolationSchemes -{ - default linear; -} - -snGradSchemes -{ - default corrected; -} - -fluxRequired -{ - default no; - p_rgh ; -} - -schemeBlending -{ - - // Table of blending factors vs. cell face size. - faceSizeBlendingTable - ( - // area U T - (0.096 0.996 0.980 ) - (0.39 0.996 0.980 ) - (1.563 0.997 0.985 ) - (6.25 0.998 0.990 ) - (25 0.999 0.995 ) - (100 1.000 1.000 ) - (1E6 1.000 1.000 ) - ); - - - // Height above which blending factor begins to transition - // from heightBlendingFactor_z1 to heightBlendingFactor_z2. - heightBlending_z1 800.0; - - // Height above which blending factor is heightBlendingFactor_z2. - heightBlending_z2 1000.0; - - - heightBlendingFactorU_z1 1.0; - heightBlendingFactorU_z2 0.9; - - heightBlendingFactorT_z1 1.0; - heightBlendingFactorT_z2 0.9; - - - // In calculating height, use wall distance or absolute distance. - useWallDistZ false; -} - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/fvSolution b/exampleCases/example.ADM.ssc.base/system/fvSolution deleted file mode 100755 index 38224f9d0..000000000 --- a/exampleCases/example.ADM.ssc.base/system/fvSolution +++ /dev/null @@ -1,102 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object fvSolution; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -solvers -{ - p_rgh - { - solver PCG; - preconditioner - { - preconditioner GAMG; - tolerance 1e-05; - relTol 0.01; - smoother DICGaussSeidel; - nPreSweeps 0; - nPostSweeps 2; - nFinestSweeps 2; - cacheAgglomeration true; - nCellsInCoarsestLevel 100; - agglomerator faceAreaPair; - mergeLevels 2; - } - tolerance 1e-06; - relTol 0.01; - maxIter 1000; - } - - p_rghFinal - { - $p_rgh; - relTol 0.0; - } - - "(U|T|k|epsilon|R)" - { - solver PBiCG; - preconditioner DILU; - tolerance 1e-6; - relTol 0.1; - maxIter 1000; - } - - "(U|T|k|epsilon|R)Final" - { - $U; - relTol 0.0; - } - - "(flm|fmm)" - { - solver PBiCG; - preconditioner DILU; - tolerance 1e-6; - relTol 0.1; - } - - "(flm|fmm)Final" - { - $flm; - relTol 0.0; - } - - -} - -PIMPLE -{ - momentumPredictor yes; - nOuterCorrectors 1; - nCorrectors 3; - nNonOrthogonalCorrectors 0; - pRefCell 0; - pRefValue 0; -} - -relaxationFactors -{ - fields - { - } - equations - { - "(U|T|k|epsilon|R)" 1.0; - "(U|T|k|epsilon|R)Final" 1.0; - } -} - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/refineMeshDict.local b/exampleCases/example.ADM.ssc.base/system/refineMeshDict.local deleted file mode 100755 index da82aa356..000000000 --- a/exampleCases/example.ADM.ssc.base/system/refineMeshDict.local +++ /dev/null @@ -1,48 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.1.x | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object refineMeshDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -set local; - -coordinateSystem global; -//coordinateSystem patchLocal; - -globalCoeffs -{ - tan1 ( 1 0 0 ); - tan2 ( 0 1 0 ); - normal ( 0 0 1 ); -} - -patchLocalCoeffs -{ - patch top; - tan1 ( 1 0 0 ); - tan2 ( 0 1 0 ); - normal ( 0 0 1 ); -} - -directions ( tan1 tan2 normal ); - -useHexTopology yes; - -geometricCut no; - -writeMesh no; - - -// ************************************************************************* // - diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/boundaryDataPre b/exampleCases/example.ADM.ssc.base/system/sampling/boundaryDataPre deleted file mode 100755 index e1ea28fd0..000000000 --- a/exampleCases/example.ADM.ssc.base/system/sampling/boundaryDataPre +++ /dev/null @@ -1,25 +0,0 @@ - boundaryDataPre - { - type surfaces; - functionObjectLibs ("libsampling.so"); - enabled true; - interpolationScheme isThisNeeded; - outputControl timeStep; - outputInterval 1; - surfaceFormat foamFile; - fields - ( - U - T - k - ); - surfaces - ( - south - { - type patch; - patches (south); - triangulate false; - } - ); - } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/fieldAverages b/exampleCases/example.ADM.ssc.base/system/sampling/fieldAverages deleted file mode 100755 index 84c10394f..000000000 --- a/exampleCases/example.ADM.ssc.base/system/sampling/fieldAverages +++ /dev/null @@ -1,17 +0,0 @@ - fieldAverages - { - type fieldAverage; - functionObjectLibs ("libfieldFunctionObjects.so"); - enabled true; - outputControl outputTime; - timeStart 17000.0; - fields - ( - Cs - { - mean on; - prime2Mean off; - base time; - } - ); - } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/probeData1 b/exampleCases/example.ADM.ssc.base/system/sampling/probeData1 deleted file mode 100755 index 12938cddb..000000000 --- a/exampleCases/example.ADM.ssc.base/system/sampling/probeData1 +++ /dev/null @@ -1,223 +0,0 @@ - probe1 - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - U - T - p - p_rgh - kSgs - nuSgs - RdevSgs - qSgs - ); - - probeLocations - ( - (2500.001 500.001 5.001) - (2500.001 500.001 15.001) - (2500.001 500.001 25.001) - (2500.001 500.001 35.001) - (2500.001 500.001 45.001) - (2500.001 500.001 55.001) - (2500.001 500.001 65.001) - (2500.001 500.001 75.001) - (2500.001 500.001 85.001) - (2500.001 500.001 95.001) - (2500.001 500.001 105.001) - (2500.001 500.001 115.001) - (2500.001 500.001 125.001) - (2500.001 500.001 135.001) - (2500.001 500.001 145.001) - (2500.001 500.001 155.001) - (2500.001 500.001 165.001) - (2500.001 500.001 175.001) - (2500.001 500.001 185.001) - (2500.001 500.001 195.001) - (2500.001 500.001 205.001) - (2500.001 500.001 215.001) - (2500.001 500.001 225.001) - (2500.001 500.001 235.001) - (2500.001 500.001 245.001) - (2500.001 500.001 255.001) - (2500.001 500.001 265.001) - (2500.001 500.001 275.001) - (2500.001 500.001 285.001) - (2500.001 500.001 295.001) - (2500.001 500.001 305.001) - (2500.001 500.001 315.001) - (2500.001 500.001 325.001) - (2500.001 500.001 335.001) - (2500.001 500.001 345.001) - (2500.001 500.001 355.001) - (2500.001 500.001 365.001) - (2500.001 500.001 375.001) - (2500.001 500.001 385.001) - (2500.001 500.001 395.001) - (2500.001 500.001 405.001) - (2500.001 500.001 415.001) - (2500.001 500.001 425.001) - (2500.001 500.001 435.001) - (2500.001 500.001 445.001) - (2500.001 500.001 455.001) - (2500.001 500.001 465.001) - (2500.001 500.001 475.001) - (2500.001 500.001 485.001) - (2500.001 500.001 495.001) - (2500.001 500.001 505.001) - (2500.001 500.001 515.001) - (2500.001 500.001 525.001) - (2500.001 500.001 535.001) - (2500.001 500.001 545.001) - (2500.001 500.001 555.001) - (2500.001 500.001 565.001) - (2500.001 500.001 575.001) - (2500.001 500.001 585.001) - (2500.001 500.001 595.001) - (2500.001 500.001 605.001) - (2500.001 500.001 615.001) - (2500.001 500.001 625.001) - (2500.001 500.001 635.001) - (2500.001 500.001 645.001) - (2500.001 500.001 655.001) - (2500.001 500.001 665.001) - (2500.001 500.001 675.001) - (2500.001 500.001 685.001) - (2500.001 500.001 695.001) - (2500.001 500.001 705.001) - (2500.001 500.001 715.001) - (2500.001 500.001 725.001) - (2500.001 500.001 735.001) - (2500.001 500.001 745.001) - (2500.001 500.001 755.001) - (2500.001 500.001 765.001) - (2500.001 500.001 775.001) - (2500.001 500.001 785.001) - (2500.001 500.001 795.001) - (2500.001 500.001 805.001) - (2500.001 500.001 815.001) - (2500.001 500.001 825.001) - (2500.001 500.001 835.001) - (2500.001 500.001 845.001) - (2500.001 500.001 855.001) - (2500.001 500.001 865.001) - (2500.001 500.001 875.001) - (2500.001 500.001 885.001) - (2500.001 500.001 895.001) - (2500.001 500.001 905.001) - (2500.001 500.001 915.001) - (2500.001 500.001 925.001) - (2500.001 500.001 935.001) - (2500.001 500.001 945.001) - (2500.001 500.001 955.001) - (2500.001 500.001 965.001) - (2500.001 500.001 975.001) - (2500.001 500.001 985.001) - (2500.001 500.001 995.001) - (2500.001 500.001 1005.001) - (2500.001 500.001 1015.001) - (2500.001 500.001 1025.001) - (2500.001 500.001 1035.001) - (2500.001 500.001 1045.001) - (2500.001 500.001 1055.001) - (2500.001 500.001 1065.001) - (2500.001 500.001 1075.001) - (2500.001 500.001 1085.001) - (2500.001 500.001 1095.001) - (2500.001 500.001 1105.001) - (2500.001 500.001 1115.001) - (2500.001 500.001 1125.001) - (2500.001 500.001 1135.001) - (2500.001 500.001 1145.001) - (2500.001 500.001 1155.001) - (2500.001 500.001 1165.001) - (2500.001 500.001 1175.001) - (2500.001 500.001 1185.001) - (2500.001 500.001 1195.001) - (2500.001 500.001 1205.001) - (2500.001 500.001 1215.001) - (2500.001 500.001 1225.001) - (2500.001 500.001 1235.001) - (2500.001 500.001 1245.001) - (2500.001 500.001 1255.001) - (2500.001 500.001 1265.001) - (2500.001 500.001 1275.001) - (2500.001 500.001 1285.001) - (2500.001 500.001 1295.001) - (2500.001 500.001 1305.001) - (2500.001 500.001 1315.001) - (2500.001 500.001 1325.001) - (2500.001 500.001 1335.001) - (2500.001 500.001 1345.001) - (2500.001 500.001 1355.001) - (2500.001 500.001 1365.001) - (2500.001 500.001 1375.001) - (2500.001 500.001 1385.001) - (2500.001 500.001 1395.001) - (2500.001 500.001 1405.001) - (2500.001 500.001 1415.001) - (2500.001 500.001 1425.001) - (2500.001 500.001 1435.001) - (2500.001 500.001 1445.001) - (2500.001 500.001 1455.001) - (2500.001 500.001 1465.001) - (2500.001 500.001 1475.001) - (2500.001 500.001 1485.001) - (2500.001 500.001 1495.001) - (2500.001 500.001 1505.001) - (2500.001 500.001 1515.001) - (2500.001 500.001 1525.001) - (2500.001 500.001 1535.001) - (2500.001 500.001 1545.001) - (2500.001 500.001 1555.001) - (2500.001 500.001 1565.001) - (2500.001 500.001 1575.001) - (2500.001 500.001 1585.001) - (2500.001 500.001 1595.001) - (2500.001 500.001 1605.001) - (2500.001 500.001 1615.001) - (2500.001 500.001 1625.001) - (2500.001 500.001 1635.001) - (2500.001 500.001 1645.001) - (2500.001 500.001 1655.001) - (2500.001 500.001 1665.001) - (2500.001 500.001 1675.001) - (2500.001 500.001 1685.001) - (2500.001 500.001 1695.001) - (2500.001 500.001 1705.001) - (2500.001 500.001 1715.001) - (2500.001 500.001 1725.001) - (2500.001 500.001 1735.001) - (2500.001 500.001 1745.001) - (2500.001 500.001 1755.001) - (2500.001 500.001 1765.001) - (2500.001 500.001 1775.001) - (2500.001 500.001 1785.001) - (2500.001 500.001 1795.001) - (2500.001 500.001 1805.001) - (2500.001 500.001 1815.001) - (2500.001 500.001 1825.001) - (2500.001 500.001 1835.001) - (2500.001 500.001 1845.001) - (2500.001 500.001 1855.001) - (2500.001 500.001 1865.001) - (2500.001 500.001 1875.001) - (2500.001 500.001 1885.001) - (2500.001 500.001 1895.001) - (2500.001 500.001 1905.001) - (2500.001 500.001 1915.001) - (2500.001 500.001 1925.001) - (2500.001 500.001 1935.001) - (2500.001 500.001 1945.001) - (2500.001 500.001 1955.001) - (2500.001 500.001 1965.001) - (2500.001 500.001 1975.001) - (2500.001 500.001 1985.001) - (2500.001 500.001 1995.001) - ); - } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/probeData1S b/exampleCases/example.ADM.ssc.base/system/sampling/probeData1S deleted file mode 100755 index 5b619fadc..000000000 --- a/exampleCases/example.ADM.ssc.base/system/sampling/probeData1S +++ /dev/null @@ -1,18 +0,0 @@ - probe1S - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - Rwall - qwall - ); - - probeLocations - ( - (2500.001 500.001 0.0) - ); - } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/probeData2 b/exampleCases/example.ADM.ssc.base/system/sampling/probeData2 deleted file mode 100755 index 01dc86420..000000000 --- a/exampleCases/example.ADM.ssc.base/system/sampling/probeData2 +++ /dev/null @@ -1,223 +0,0 @@ - probe2 - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - U - T - p - p_rgh - kSgs - nuSgs - RdevSgs - qSgs - ); - - probeLocations - ( - (2500.001 1500.001 5.001) - (2500.001 1500.001 15.001) - (2500.001 1500.001 25.001) - (2500.001 1500.001 35.001) - (2500.001 1500.001 45.001) - (2500.001 1500.001 55.001) - (2500.001 1500.001 65.001) - (2500.001 1500.001 75.001) - (2500.001 1500.001 85.001) - (2500.001 1500.001 95.001) - (2500.001 1500.001 105.001) - (2500.001 1500.001 115.001) - (2500.001 1500.001 125.001) - (2500.001 1500.001 135.001) - (2500.001 1500.001 145.001) - (2500.001 1500.001 155.001) - (2500.001 1500.001 165.001) - (2500.001 1500.001 175.001) - (2500.001 1500.001 185.001) - (2500.001 1500.001 195.001) - (2500.001 1500.001 205.001) - (2500.001 1500.001 215.001) - (2500.001 1500.001 225.001) - (2500.001 1500.001 235.001) - (2500.001 1500.001 245.001) - (2500.001 1500.001 255.001) - (2500.001 1500.001 265.001) - (2500.001 1500.001 275.001) - (2500.001 1500.001 285.001) - (2500.001 1500.001 295.001) - (2500.001 1500.001 305.001) - (2500.001 1500.001 315.001) - (2500.001 1500.001 325.001) - (2500.001 1500.001 335.001) - (2500.001 1500.001 345.001) - (2500.001 1500.001 355.001) - (2500.001 1500.001 365.001) - (2500.001 1500.001 375.001) - (2500.001 1500.001 385.001) - (2500.001 1500.001 395.001) - (2500.001 1500.001 405.001) - (2500.001 1500.001 415.001) - (2500.001 1500.001 425.001) - (2500.001 1500.001 435.001) - (2500.001 1500.001 445.001) - (2500.001 1500.001 455.001) - (2500.001 1500.001 465.001) - (2500.001 1500.001 475.001) - (2500.001 1500.001 485.001) - (2500.001 1500.001 495.001) - (2500.001 1500.001 505.001) - (2500.001 1500.001 515.001) - (2500.001 1500.001 525.001) - (2500.001 1500.001 535.001) - (2500.001 1500.001 545.001) - (2500.001 1500.001 555.001) - (2500.001 1500.001 565.001) - (2500.001 1500.001 575.001) - (2500.001 1500.001 585.001) - (2500.001 1500.001 595.001) - (2500.001 1500.001 605.001) - (2500.001 1500.001 615.001) - (2500.001 1500.001 625.001) - (2500.001 1500.001 635.001) - (2500.001 1500.001 645.001) - (2500.001 1500.001 655.001) - (2500.001 1500.001 665.001) - (2500.001 1500.001 675.001) - (2500.001 1500.001 685.001) - (2500.001 1500.001 695.001) - (2500.001 1500.001 705.001) - (2500.001 1500.001 715.001) - (2500.001 1500.001 725.001) - (2500.001 1500.001 735.001) - (2500.001 1500.001 745.001) - (2500.001 1500.001 755.001) - (2500.001 1500.001 765.001) - (2500.001 1500.001 775.001) - (2500.001 1500.001 785.001) - (2500.001 1500.001 795.001) - (2500.001 1500.001 805.001) - (2500.001 1500.001 815.001) - (2500.001 1500.001 825.001) - (2500.001 1500.001 835.001) - (2500.001 1500.001 845.001) - (2500.001 1500.001 855.001) - (2500.001 1500.001 865.001) - (2500.001 1500.001 875.001) - (2500.001 1500.001 885.001) - (2500.001 1500.001 895.001) - (2500.001 1500.001 905.001) - (2500.001 1500.001 915.001) - (2500.001 1500.001 925.001) - (2500.001 1500.001 935.001) - (2500.001 1500.001 945.001) - (2500.001 1500.001 955.001) - (2500.001 1500.001 965.001) - (2500.001 1500.001 975.001) - (2500.001 1500.001 985.001) - (2500.001 1500.001 995.001) - (2500.001 1500.001 1005.001) - (2500.001 1500.001 1015.001) - (2500.001 1500.001 1025.001) - (2500.001 1500.001 1035.001) - (2500.001 1500.001 1045.001) - (2500.001 1500.001 1055.001) - (2500.001 1500.001 1065.001) - (2500.001 1500.001 1075.001) - (2500.001 1500.001 1085.001) - (2500.001 1500.001 1095.001) - (2500.001 1500.001 1105.001) - (2500.001 1500.001 1115.001) - (2500.001 1500.001 1125.001) - (2500.001 1500.001 1135.001) - (2500.001 1500.001 1145.001) - (2500.001 1500.001 1155.001) - (2500.001 1500.001 1165.001) - (2500.001 1500.001 1175.001) - (2500.001 1500.001 1185.001) - (2500.001 1500.001 1195.001) - (2500.001 1500.001 1205.001) - (2500.001 1500.001 1215.001) - (2500.001 1500.001 1225.001) - (2500.001 1500.001 1235.001) - (2500.001 1500.001 1245.001) - (2500.001 1500.001 1255.001) - (2500.001 1500.001 1265.001) - (2500.001 1500.001 1275.001) - (2500.001 1500.001 1285.001) - (2500.001 1500.001 1295.001) - (2500.001 1500.001 1305.001) - (2500.001 1500.001 1315.001) - (2500.001 1500.001 1325.001) - (2500.001 1500.001 1335.001) - (2500.001 1500.001 1345.001) - (2500.001 1500.001 1355.001) - (2500.001 1500.001 1365.001) - (2500.001 1500.001 1375.001) - (2500.001 1500.001 1385.001) - (2500.001 1500.001 1395.001) - (2500.001 1500.001 1405.001) - (2500.001 1500.001 1415.001) - (2500.001 1500.001 1425.001) - (2500.001 1500.001 1435.001) - (2500.001 1500.001 1445.001) - (2500.001 1500.001 1455.001) - (2500.001 1500.001 1465.001) - (2500.001 1500.001 1475.001) - (2500.001 1500.001 1485.001) - (2500.001 1500.001 1495.001) - (2500.001 1500.001 1505.001) - (2500.001 1500.001 1515.001) - (2500.001 1500.001 1525.001) - (2500.001 1500.001 1535.001) - (2500.001 1500.001 1545.001) - (2500.001 1500.001 1555.001) - (2500.001 1500.001 1565.001) - (2500.001 1500.001 1575.001) - (2500.001 1500.001 1585.001) - (2500.001 1500.001 1595.001) - (2500.001 1500.001 1605.001) - (2500.001 1500.001 1615.001) - (2500.001 1500.001 1625.001) - (2500.001 1500.001 1635.001) - (2500.001 1500.001 1645.001) - (2500.001 1500.001 1655.001) - (2500.001 1500.001 1665.001) - (2500.001 1500.001 1675.001) - (2500.001 1500.001 1685.001) - (2500.001 1500.001 1695.001) - (2500.001 1500.001 1705.001) - (2500.001 1500.001 1715.001) - (2500.001 1500.001 1725.001) - (2500.001 1500.001 1735.001) - (2500.001 1500.001 1745.001) - (2500.001 1500.001 1755.001) - (2500.001 1500.001 1765.001) - (2500.001 1500.001 1775.001) - (2500.001 1500.001 1785.001) - (2500.001 1500.001 1795.001) - (2500.001 1500.001 1805.001) - (2500.001 1500.001 1815.001) - (2500.001 1500.001 1825.001) - (2500.001 1500.001 1835.001) - (2500.001 1500.001 1845.001) - (2500.001 1500.001 1855.001) - (2500.001 1500.001 1865.001) - (2500.001 1500.001 1875.001) - (2500.001 1500.001 1885.001) - (2500.001 1500.001 1895.001) - (2500.001 1500.001 1905.001) - (2500.001 1500.001 1915.001) - (2500.001 1500.001 1925.001) - (2500.001 1500.001 1935.001) - (2500.001 1500.001 1945.001) - (2500.001 1500.001 1955.001) - (2500.001 1500.001 1965.001) - (2500.001 1500.001 1975.001) - (2500.001 1500.001 1985.001) - (2500.001 1500.001 1995.001) - ); - } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/probeData2S b/exampleCases/example.ADM.ssc.base/system/sampling/probeData2S deleted file mode 100755 index 7e81799a0..000000000 --- a/exampleCases/example.ADM.ssc.base/system/sampling/probeData2S +++ /dev/null @@ -1,18 +0,0 @@ - probe2S - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - Rwall - qwall - ); - - probeLocations - ( - (2500.001 1500.001 0.0) - ); - } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/probeData3 b/exampleCases/example.ADM.ssc.base/system/sampling/probeData3 deleted file mode 100755 index 2a91805b2..000000000 --- a/exampleCases/example.ADM.ssc.base/system/sampling/probeData3 +++ /dev/null @@ -1,223 +0,0 @@ - probe3 - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - U - T - p - p_rgh - kSgs - nuSgs - RdevSgs - qSgs - ); - - probeLocations - ( - (2500.001 2500.001 5.001) - (2500.001 2500.001 15.001) - (2500.001 2500.001 25.001) - (2500.001 2500.001 35.001) - (2500.001 2500.001 45.001) - (2500.001 2500.001 55.001) - (2500.001 2500.001 65.001) - (2500.001 2500.001 75.001) - (2500.001 2500.001 85.001) - (2500.001 2500.001 95.001) - (2500.001 2500.001 105.001) - (2500.001 2500.001 115.001) - (2500.001 2500.001 125.001) - (2500.001 2500.001 135.001) - (2500.001 2500.001 145.001) - (2500.001 2500.001 155.001) - (2500.001 2500.001 165.001) - (2500.001 2500.001 175.001) - (2500.001 2500.001 185.001) - (2500.001 2500.001 195.001) - (2500.001 2500.001 205.001) - (2500.001 2500.001 215.001) - (2500.001 2500.001 225.001) - (2500.001 2500.001 235.001) - (2500.001 2500.001 245.001) - (2500.001 2500.001 255.001) - (2500.001 2500.001 265.001) - (2500.001 2500.001 275.001) - (2500.001 2500.001 285.001) - (2500.001 2500.001 295.001) - (2500.001 2500.001 305.001) - (2500.001 2500.001 315.001) - (2500.001 2500.001 325.001) - (2500.001 2500.001 335.001) - (2500.001 2500.001 345.001) - (2500.001 2500.001 355.001) - (2500.001 2500.001 365.001) - (2500.001 2500.001 375.001) - (2500.001 2500.001 385.001) - (2500.001 2500.001 395.001) - (2500.001 2500.001 405.001) - (2500.001 2500.001 415.001) - (2500.001 2500.001 425.001) - (2500.001 2500.001 435.001) - (2500.001 2500.001 445.001) - (2500.001 2500.001 455.001) - (2500.001 2500.001 465.001) - (2500.001 2500.001 475.001) - (2500.001 2500.001 485.001) - (2500.001 2500.001 495.001) - (2500.001 2500.001 505.001) - (2500.001 2500.001 515.001) - (2500.001 2500.001 525.001) - (2500.001 2500.001 535.001) - (2500.001 2500.001 545.001) - (2500.001 2500.001 555.001) - (2500.001 2500.001 565.001) - (2500.001 2500.001 575.001) - (2500.001 2500.001 585.001) - (2500.001 2500.001 595.001) - (2500.001 2500.001 605.001) - (2500.001 2500.001 615.001) - (2500.001 2500.001 625.001) - (2500.001 2500.001 635.001) - (2500.001 2500.001 645.001) - (2500.001 2500.001 655.001) - (2500.001 2500.001 665.001) - (2500.001 2500.001 675.001) - (2500.001 2500.001 685.001) - (2500.001 2500.001 695.001) - (2500.001 2500.001 705.001) - (2500.001 2500.001 715.001) - (2500.001 2500.001 725.001) - (2500.001 2500.001 735.001) - (2500.001 2500.001 745.001) - (2500.001 2500.001 755.001) - (2500.001 2500.001 765.001) - (2500.001 2500.001 775.001) - (2500.001 2500.001 785.001) - (2500.001 2500.001 795.001) - (2500.001 2500.001 805.001) - (2500.001 2500.001 815.001) - (2500.001 2500.001 825.001) - (2500.001 2500.001 835.001) - (2500.001 2500.001 845.001) - (2500.001 2500.001 855.001) - (2500.001 2500.001 865.001) - (2500.001 2500.001 875.001) - (2500.001 2500.001 885.001) - (2500.001 2500.001 895.001) - (2500.001 2500.001 905.001) - (2500.001 2500.001 915.001) - (2500.001 2500.001 925.001) - (2500.001 2500.001 935.001) - (2500.001 2500.001 945.001) - (2500.001 2500.001 955.001) - (2500.001 2500.001 965.001) - (2500.001 2500.001 975.001) - (2500.001 2500.001 985.001) - (2500.001 2500.001 995.001) - (2500.001 2500.001 1005.001) - (2500.001 2500.001 1015.001) - (2500.001 2500.001 1025.001) - (2500.001 2500.001 1035.001) - (2500.001 2500.001 1045.001) - (2500.001 2500.001 1055.001) - (2500.001 2500.001 1065.001) - (2500.001 2500.001 1075.001) - (2500.001 2500.001 1085.001) - (2500.001 2500.001 1095.001) - (2500.001 2500.001 1105.001) - (2500.001 2500.001 1115.001) - (2500.001 2500.001 1125.001) - (2500.001 2500.001 1135.001) - (2500.001 2500.001 1145.001) - (2500.001 2500.001 1155.001) - (2500.001 2500.001 1165.001) - (2500.001 2500.001 1175.001) - (2500.001 2500.001 1185.001) - (2500.001 2500.001 1195.001) - (2500.001 2500.001 1205.001) - (2500.001 2500.001 1215.001) - (2500.001 2500.001 1225.001) - (2500.001 2500.001 1235.001) - (2500.001 2500.001 1245.001) - (2500.001 2500.001 1255.001) - (2500.001 2500.001 1265.001) - (2500.001 2500.001 1275.001) - (2500.001 2500.001 1285.001) - (2500.001 2500.001 1295.001) - (2500.001 2500.001 1305.001) - (2500.001 2500.001 1315.001) - (2500.001 2500.001 1325.001) - (2500.001 2500.001 1335.001) - (2500.001 2500.001 1345.001) - (2500.001 2500.001 1355.001) - (2500.001 2500.001 1365.001) - (2500.001 2500.001 1375.001) - (2500.001 2500.001 1385.001) - (2500.001 2500.001 1395.001) - (2500.001 2500.001 1405.001) - (2500.001 2500.001 1415.001) - (2500.001 2500.001 1425.001) - (2500.001 2500.001 1435.001) - (2500.001 2500.001 1445.001) - (2500.001 2500.001 1455.001) - (2500.001 2500.001 1465.001) - (2500.001 2500.001 1475.001) - (2500.001 2500.001 1485.001) - (2500.001 2500.001 1495.001) - (2500.001 2500.001 1505.001) - (2500.001 2500.001 1515.001) - (2500.001 2500.001 1525.001) - (2500.001 2500.001 1535.001) - (2500.001 2500.001 1545.001) - (2500.001 2500.001 1555.001) - (2500.001 2500.001 1565.001) - (2500.001 2500.001 1575.001) - (2500.001 2500.001 1585.001) - (2500.001 2500.001 1595.001) - (2500.001 2500.001 1605.001) - (2500.001 2500.001 1615.001) - (2500.001 2500.001 1625.001) - (2500.001 2500.001 1635.001) - (2500.001 2500.001 1645.001) - (2500.001 2500.001 1655.001) - (2500.001 2500.001 1665.001) - (2500.001 2500.001 1675.001) - (2500.001 2500.001 1685.001) - (2500.001 2500.001 1695.001) - (2500.001 2500.001 1705.001) - (2500.001 2500.001 1715.001) - (2500.001 2500.001 1725.001) - (2500.001 2500.001 1735.001) - (2500.001 2500.001 1745.001) - (2500.001 2500.001 1755.001) - (2500.001 2500.001 1765.001) - (2500.001 2500.001 1775.001) - (2500.001 2500.001 1785.001) - (2500.001 2500.001 1795.001) - (2500.001 2500.001 1805.001) - (2500.001 2500.001 1815.001) - (2500.001 2500.001 1825.001) - (2500.001 2500.001 1835.001) - (2500.001 2500.001 1845.001) - (2500.001 2500.001 1855.001) - (2500.001 2500.001 1865.001) - (2500.001 2500.001 1875.001) - (2500.001 2500.001 1885.001) - (2500.001 2500.001 1895.001) - (2500.001 2500.001 1905.001) - (2500.001 2500.001 1915.001) - (2500.001 2500.001 1925.001) - (2500.001 2500.001 1935.001) - (2500.001 2500.001 1945.001) - (2500.001 2500.001 1955.001) - (2500.001 2500.001 1965.001) - (2500.001 2500.001 1975.001) - (2500.001 2500.001 1985.001) - (2500.001 2500.001 1995.001) - ); - } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/probeData3S b/exampleCases/example.ADM.ssc.base/system/sampling/probeData3S deleted file mode 100755 index f1da35cd9..000000000 --- a/exampleCases/example.ADM.ssc.base/system/sampling/probeData3S +++ /dev/null @@ -1,18 +0,0 @@ - probe3S - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - Rwall - qwall - ); - - probeLocations - ( - (2500.001 2500.001 0.0) - ); - } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/probeData4 b/exampleCases/example.ADM.ssc.base/system/sampling/probeData4 deleted file mode 100755 index 0bfd6b3fb..000000000 --- a/exampleCases/example.ADM.ssc.base/system/sampling/probeData4 +++ /dev/null @@ -1,223 +0,0 @@ - probe4 - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - U - T - p - p_rgh - kSgs - nuSgs - RdevSgs - qSgs - ); - - probeLocations - ( - (2500.001 3500.001 5.001) - (2500.001 3500.001 15.001) - (2500.001 3500.001 25.001) - (2500.001 3500.001 35.001) - (2500.001 3500.001 45.001) - (2500.001 3500.001 55.001) - (2500.001 3500.001 65.001) - (2500.001 3500.001 75.001) - (2500.001 3500.001 85.001) - (2500.001 3500.001 95.001) - (2500.001 3500.001 105.001) - (2500.001 3500.001 115.001) - (2500.001 3500.001 125.001) - (2500.001 3500.001 135.001) - (2500.001 3500.001 145.001) - (2500.001 3500.001 155.001) - (2500.001 3500.001 165.001) - (2500.001 3500.001 175.001) - (2500.001 3500.001 185.001) - (2500.001 3500.001 195.001) - (2500.001 3500.001 205.001) - (2500.001 3500.001 215.001) - (2500.001 3500.001 225.001) - (2500.001 3500.001 235.001) - (2500.001 3500.001 245.001) - (2500.001 3500.001 255.001) - (2500.001 3500.001 265.001) - (2500.001 3500.001 275.001) - (2500.001 3500.001 285.001) - (2500.001 3500.001 295.001) - (2500.001 3500.001 305.001) - (2500.001 3500.001 315.001) - (2500.001 3500.001 325.001) - (2500.001 3500.001 335.001) - (2500.001 3500.001 345.001) - (2500.001 3500.001 355.001) - (2500.001 3500.001 365.001) - (2500.001 3500.001 375.001) - (2500.001 3500.001 385.001) - (2500.001 3500.001 395.001) - (2500.001 3500.001 405.001) - (2500.001 3500.001 415.001) - (2500.001 3500.001 425.001) - (2500.001 3500.001 435.001) - (2500.001 3500.001 445.001) - (2500.001 3500.001 455.001) - (2500.001 3500.001 465.001) - (2500.001 3500.001 475.001) - (2500.001 3500.001 485.001) - (2500.001 3500.001 495.001) - (2500.001 3500.001 505.001) - (2500.001 3500.001 515.001) - (2500.001 3500.001 525.001) - (2500.001 3500.001 535.001) - (2500.001 3500.001 545.001) - (2500.001 3500.001 555.001) - (2500.001 3500.001 565.001) - (2500.001 3500.001 575.001) - (2500.001 3500.001 585.001) - (2500.001 3500.001 595.001) - (2500.001 3500.001 605.001) - (2500.001 3500.001 615.001) - (2500.001 3500.001 625.001) - (2500.001 3500.001 635.001) - (2500.001 3500.001 645.001) - (2500.001 3500.001 655.001) - (2500.001 3500.001 665.001) - (2500.001 3500.001 675.001) - (2500.001 3500.001 685.001) - (2500.001 3500.001 695.001) - (2500.001 3500.001 705.001) - (2500.001 3500.001 715.001) - (2500.001 3500.001 725.001) - (2500.001 3500.001 735.001) - (2500.001 3500.001 745.001) - (2500.001 3500.001 755.001) - (2500.001 3500.001 765.001) - (2500.001 3500.001 775.001) - (2500.001 3500.001 785.001) - (2500.001 3500.001 795.001) - (2500.001 3500.001 805.001) - (2500.001 3500.001 815.001) - (2500.001 3500.001 825.001) - (2500.001 3500.001 835.001) - (2500.001 3500.001 845.001) - (2500.001 3500.001 855.001) - (2500.001 3500.001 865.001) - (2500.001 3500.001 875.001) - (2500.001 3500.001 885.001) - (2500.001 3500.001 895.001) - (2500.001 3500.001 905.001) - (2500.001 3500.001 915.001) - (2500.001 3500.001 925.001) - (2500.001 3500.001 935.001) - (2500.001 3500.001 945.001) - (2500.001 3500.001 955.001) - (2500.001 3500.001 965.001) - (2500.001 3500.001 975.001) - (2500.001 3500.001 985.001) - (2500.001 3500.001 995.001) - (2500.001 3500.001 1005.001) - (2500.001 3500.001 1015.001) - (2500.001 3500.001 1025.001) - (2500.001 3500.001 1035.001) - (2500.001 3500.001 1045.001) - (2500.001 3500.001 1055.001) - (2500.001 3500.001 1065.001) - (2500.001 3500.001 1075.001) - (2500.001 3500.001 1085.001) - (2500.001 3500.001 1095.001) - (2500.001 3500.001 1105.001) - (2500.001 3500.001 1115.001) - (2500.001 3500.001 1125.001) - (2500.001 3500.001 1135.001) - (2500.001 3500.001 1145.001) - (2500.001 3500.001 1155.001) - (2500.001 3500.001 1165.001) - (2500.001 3500.001 1175.001) - (2500.001 3500.001 1185.001) - (2500.001 3500.001 1195.001) - (2500.001 3500.001 1205.001) - (2500.001 3500.001 1215.001) - (2500.001 3500.001 1225.001) - (2500.001 3500.001 1235.001) - (2500.001 3500.001 1245.001) - (2500.001 3500.001 1255.001) - (2500.001 3500.001 1265.001) - (2500.001 3500.001 1275.001) - (2500.001 3500.001 1285.001) - (2500.001 3500.001 1295.001) - (2500.001 3500.001 1305.001) - (2500.001 3500.001 1315.001) - (2500.001 3500.001 1325.001) - (2500.001 3500.001 1335.001) - (2500.001 3500.001 1345.001) - (2500.001 3500.001 1355.001) - (2500.001 3500.001 1365.001) - (2500.001 3500.001 1375.001) - (2500.001 3500.001 1385.001) - (2500.001 3500.001 1395.001) - (2500.001 3500.001 1405.001) - (2500.001 3500.001 1415.001) - (2500.001 3500.001 1425.001) - (2500.001 3500.001 1435.001) - (2500.001 3500.001 1445.001) - (2500.001 3500.001 1455.001) - (2500.001 3500.001 1465.001) - (2500.001 3500.001 1475.001) - (2500.001 3500.001 1485.001) - (2500.001 3500.001 1495.001) - (2500.001 3500.001 1505.001) - (2500.001 3500.001 1515.001) - (2500.001 3500.001 1525.001) - (2500.001 3500.001 1535.001) - (2500.001 3500.001 1545.001) - (2500.001 3500.001 1555.001) - (2500.001 3500.001 1565.001) - (2500.001 3500.001 1575.001) - (2500.001 3500.001 1585.001) - (2500.001 3500.001 1595.001) - (2500.001 3500.001 1605.001) - (2500.001 3500.001 1615.001) - (2500.001 3500.001 1625.001) - (2500.001 3500.001 1635.001) - (2500.001 3500.001 1645.001) - (2500.001 3500.001 1655.001) - (2500.001 3500.001 1665.001) - (2500.001 3500.001 1675.001) - (2500.001 3500.001 1685.001) - (2500.001 3500.001 1695.001) - (2500.001 3500.001 1705.001) - (2500.001 3500.001 1715.001) - (2500.001 3500.001 1725.001) - (2500.001 3500.001 1735.001) - (2500.001 3500.001 1745.001) - (2500.001 3500.001 1755.001) - (2500.001 3500.001 1765.001) - (2500.001 3500.001 1775.001) - (2500.001 3500.001 1785.001) - (2500.001 3500.001 1795.001) - (2500.001 3500.001 1805.001) - (2500.001 3500.001 1815.001) - (2500.001 3500.001 1825.001) - (2500.001 3500.001 1835.001) - (2500.001 3500.001 1845.001) - (2500.001 3500.001 1855.001) - (2500.001 3500.001 1865.001) - (2500.001 3500.001 1875.001) - (2500.001 3500.001 1885.001) - (2500.001 3500.001 1895.001) - (2500.001 3500.001 1905.001) - (2500.001 3500.001 1915.001) - (2500.001 3500.001 1925.001) - (2500.001 3500.001 1935.001) - (2500.001 3500.001 1945.001) - (2500.001 3500.001 1955.001) - (2500.001 3500.001 1965.001) - (2500.001 3500.001 1975.001) - (2500.001 3500.001 1985.001) - (2500.001 3500.001 1995.001) - ); - } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/probeData4S b/exampleCases/example.ADM.ssc.base/system/sampling/probeData4S deleted file mode 100755 index 470fc9f28..000000000 --- a/exampleCases/example.ADM.ssc.base/system/sampling/probeData4S +++ /dev/null @@ -1,18 +0,0 @@ - probe4S - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - Rwall - qwall - ); - - probeLocations - ( - (2500.001 3500.001 0.0) - ); - } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/probeData5 b/exampleCases/example.ADM.ssc.base/system/sampling/probeData5 deleted file mode 100755 index eac0bc00c..000000000 --- a/exampleCases/example.ADM.ssc.base/system/sampling/probeData5 +++ /dev/null @@ -1,223 +0,0 @@ - probe5 - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - U - T - p - p_rgh - kSgs - nuSgs - RdevSgs - qSgs - ); - - probeLocations - ( - (2500.001 4500.001 5.001) - (2500.001 4500.001 15.001) - (2500.001 4500.001 25.001) - (2500.001 4500.001 35.001) - (2500.001 4500.001 45.001) - (2500.001 4500.001 55.001) - (2500.001 4500.001 65.001) - (2500.001 4500.001 75.001) - (2500.001 4500.001 85.001) - (2500.001 4500.001 95.001) - (2500.001 4500.001 105.001) - (2500.001 4500.001 115.001) - (2500.001 4500.001 125.001) - (2500.001 4500.001 135.001) - (2500.001 4500.001 145.001) - (2500.001 4500.001 155.001) - (2500.001 4500.001 165.001) - (2500.001 4500.001 175.001) - (2500.001 4500.001 185.001) - (2500.001 4500.001 195.001) - (2500.001 4500.001 205.001) - (2500.001 4500.001 215.001) - (2500.001 4500.001 225.001) - (2500.001 4500.001 235.001) - (2500.001 4500.001 245.001) - (2500.001 4500.001 255.001) - (2500.001 4500.001 265.001) - (2500.001 4500.001 275.001) - (2500.001 4500.001 285.001) - (2500.001 4500.001 295.001) - (2500.001 4500.001 305.001) - (2500.001 4500.001 315.001) - (2500.001 4500.001 325.001) - (2500.001 4500.001 335.001) - (2500.001 4500.001 345.001) - (2500.001 4500.001 355.001) - (2500.001 4500.001 365.001) - (2500.001 4500.001 375.001) - (2500.001 4500.001 385.001) - (2500.001 4500.001 395.001) - (2500.001 4500.001 405.001) - (2500.001 4500.001 415.001) - (2500.001 4500.001 425.001) - (2500.001 4500.001 435.001) - (2500.001 4500.001 445.001) - (2500.001 4500.001 455.001) - (2500.001 4500.001 465.001) - (2500.001 4500.001 475.001) - (2500.001 4500.001 485.001) - (2500.001 4500.001 495.001) - (2500.001 4500.001 505.001) - (2500.001 4500.001 515.001) - (2500.001 4500.001 525.001) - (2500.001 4500.001 535.001) - (2500.001 4500.001 545.001) - (2500.001 4500.001 555.001) - (2500.001 4500.001 565.001) - (2500.001 4500.001 575.001) - (2500.001 4500.001 585.001) - (2500.001 4500.001 595.001) - (2500.001 4500.001 605.001) - (2500.001 4500.001 615.001) - (2500.001 4500.001 625.001) - (2500.001 4500.001 635.001) - (2500.001 4500.001 645.001) - (2500.001 4500.001 655.001) - (2500.001 4500.001 665.001) - (2500.001 4500.001 675.001) - (2500.001 4500.001 685.001) - (2500.001 4500.001 695.001) - (2500.001 4500.001 705.001) - (2500.001 4500.001 715.001) - (2500.001 4500.001 725.001) - (2500.001 4500.001 735.001) - (2500.001 4500.001 745.001) - (2500.001 4500.001 755.001) - (2500.001 4500.001 765.001) - (2500.001 4500.001 775.001) - (2500.001 4500.001 785.001) - (2500.001 4500.001 795.001) - (2500.001 4500.001 805.001) - (2500.001 4500.001 815.001) - (2500.001 4500.001 825.001) - (2500.001 4500.001 835.001) - (2500.001 4500.001 845.001) - (2500.001 4500.001 855.001) - (2500.001 4500.001 865.001) - (2500.001 4500.001 875.001) - (2500.001 4500.001 885.001) - (2500.001 4500.001 895.001) - (2500.001 4500.001 905.001) - (2500.001 4500.001 915.001) - (2500.001 4500.001 925.001) - (2500.001 4500.001 935.001) - (2500.001 4500.001 945.001) - (2500.001 4500.001 955.001) - (2500.001 4500.001 965.001) - (2500.001 4500.001 975.001) - (2500.001 4500.001 985.001) - (2500.001 4500.001 995.001) - (2500.001 4500.001 1005.001) - (2500.001 4500.001 1015.001) - (2500.001 4500.001 1025.001) - (2500.001 4500.001 1035.001) - (2500.001 4500.001 1045.001) - (2500.001 4500.001 1055.001) - (2500.001 4500.001 1065.001) - (2500.001 4500.001 1075.001) - (2500.001 4500.001 1085.001) - (2500.001 4500.001 1095.001) - (2500.001 4500.001 1105.001) - (2500.001 4500.001 1115.001) - (2500.001 4500.001 1125.001) - (2500.001 4500.001 1135.001) - (2500.001 4500.001 1145.001) - (2500.001 4500.001 1155.001) - (2500.001 4500.001 1165.001) - (2500.001 4500.001 1175.001) - (2500.001 4500.001 1185.001) - (2500.001 4500.001 1195.001) - (2500.001 4500.001 1205.001) - (2500.001 4500.001 1215.001) - (2500.001 4500.001 1225.001) - (2500.001 4500.001 1235.001) - (2500.001 4500.001 1245.001) - (2500.001 4500.001 1255.001) - (2500.001 4500.001 1265.001) - (2500.001 4500.001 1275.001) - (2500.001 4500.001 1285.001) - (2500.001 4500.001 1295.001) - (2500.001 4500.001 1305.001) - (2500.001 4500.001 1315.001) - (2500.001 4500.001 1325.001) - (2500.001 4500.001 1335.001) - (2500.001 4500.001 1345.001) - (2500.001 4500.001 1355.001) - (2500.001 4500.001 1365.001) - (2500.001 4500.001 1375.001) - (2500.001 4500.001 1385.001) - (2500.001 4500.001 1395.001) - (2500.001 4500.001 1405.001) - (2500.001 4500.001 1415.001) - (2500.001 4500.001 1425.001) - (2500.001 4500.001 1435.001) - (2500.001 4500.001 1445.001) - (2500.001 4500.001 1455.001) - (2500.001 4500.001 1465.001) - (2500.001 4500.001 1475.001) - (2500.001 4500.001 1485.001) - (2500.001 4500.001 1495.001) - (2500.001 4500.001 1505.001) - (2500.001 4500.001 1515.001) - (2500.001 4500.001 1525.001) - (2500.001 4500.001 1535.001) - (2500.001 4500.001 1545.001) - (2500.001 4500.001 1555.001) - (2500.001 4500.001 1565.001) - (2500.001 4500.001 1575.001) - (2500.001 4500.001 1585.001) - (2500.001 4500.001 1595.001) - (2500.001 4500.001 1605.001) - (2500.001 4500.001 1615.001) - (2500.001 4500.001 1625.001) - (2500.001 4500.001 1635.001) - (2500.001 4500.001 1645.001) - (2500.001 4500.001 1655.001) - (2500.001 4500.001 1665.001) - (2500.001 4500.001 1675.001) - (2500.001 4500.001 1685.001) - (2500.001 4500.001 1695.001) - (2500.001 4500.001 1705.001) - (2500.001 4500.001 1715.001) - (2500.001 4500.001 1725.001) - (2500.001 4500.001 1735.001) - (2500.001 4500.001 1745.001) - (2500.001 4500.001 1755.001) - (2500.001 4500.001 1765.001) - (2500.001 4500.001 1775.001) - (2500.001 4500.001 1785.001) - (2500.001 4500.001 1795.001) - (2500.001 4500.001 1805.001) - (2500.001 4500.001 1815.001) - (2500.001 4500.001 1825.001) - (2500.001 4500.001 1835.001) - (2500.001 4500.001 1845.001) - (2500.001 4500.001 1855.001) - (2500.001 4500.001 1865.001) - (2500.001 4500.001 1875.001) - (2500.001 4500.001 1885.001) - (2500.001 4500.001 1895.001) - (2500.001 4500.001 1905.001) - (2500.001 4500.001 1915.001) - (2500.001 4500.001 1925.001) - (2500.001 4500.001 1935.001) - (2500.001 4500.001 1945.001) - (2500.001 4500.001 1955.001) - (2500.001 4500.001 1965.001) - (2500.001 4500.001 1975.001) - (2500.001 4500.001 1985.001) - (2500.001 4500.001 1995.001) - ); - } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/probeData5S b/exampleCases/example.ADM.ssc.base/system/sampling/probeData5S deleted file mode 100755 index 5933c36f2..000000000 --- a/exampleCases/example.ADM.ssc.base/system/sampling/probeData5S +++ /dev/null @@ -1,18 +0,0 @@ - probe5S - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - Rwall - qwall - ); - - probeLocations - ( - (2500.001 4500.001 0.0) - ); - } diff --git a/exampleCases/example.ADM.ssc.base/system/sampling/sliceDataInstantaneous b/exampleCases/example.ADM.ssc.base/system/sampling/sliceDataInstantaneous deleted file mode 100755 index 59199fc39..000000000 --- a/exampleCases/example.ADM.ssc.base/system/sampling/sliceDataInstantaneous +++ /dev/null @@ -1,53 +0,0 @@ - sliceDataInstantaneous - { - type surfaces; - functionObjectLibs ("libsampling.so"); - enabled true; - interpolationScheme cell; - outputControl adjustableTime; - writeInterval 60; - surfaceFormat vtk; - fields - ( - U - T - ); - surfaces - ( - slice_horizontal_1 - { - type plane; - basePoint (1500.01 1500.01 20.01); - normalVector (0 0 1); - triangulate false; - } - slice_horizontal_2 - { - type plane; - basePoint (1500.01 1500.01 80.01); - normalVector (0 0 1); - triangulate false; - } - slice_horizontal_3 - { - type plane; - basePoint (1500.01 1500.01 200.01); - normalVector (0 0 1); - triangulate false; - } - slice_cross_stream - { - type plane; - basePoint (1500.01 1500.01 84.0); - normalVector (0 1 0); - triangulate false; - } - slice_streamwise - { - type plane; - basePoint (1500.01 1500.01 84.0); - normalVector (1 0 0); - triangulate false; - } - ); - } diff --git a/exampleCases/example.ADM.ssc.base/system/setFieldsABLDict b/exampleCases/example.ADM.ssc.base/system/setFieldsABLDict deleted file mode 100755 index dacc350ce..000000000 --- a/exampleCases/example.ADM.ssc.base/system/setFieldsABLDict +++ /dev/null @@ -1,504 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.x | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ - -FoamFile -{ - version 2.0; - format ascii; - - root ""; - case ""; - instance ""; - local ""; - - class dictionary; - object setFieldsABLDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -// Extents of the domain. -xMin $xMin; -yMin $yMin; -zMin $zMin; - -xMax $xMax; -yMax $yMax; -zMax $zMax; - -zRef $zMax; - -// Specify if distance from wall should be used as z. -useWallDistZ false; -scaleVelocityWithHeight false; - - -// Specify how to initialze the base velocity and temperature profile. -//velocityInitType "table"; -//velocityInitType "log"; -velocityInitType "geostrophic"; -//temperatureInitType "table"; -temperatureInitType "simple"; - -// Maximum perturbation of streamwise/spanwise flow near surface. -deltaU 0.25; -deltaV 0.25; - -// Total periods of perturbations in streamwise/spanwise in the domain. -Uperiods 12.0; -Vperiods 12.0; - -// Percentage of domain height (zMax) where peak in perturbation -// magnitude occurs. -zPeak 0.015; - -// Initial height of the center of the capping inversion. -zInversion $zInversion; - -// Width of the capping inversion. -widthInversion $inversionWidth; - -// Potential temperature at the bottom and top of the capping inversion. -Tbottom $TBottom; -Ttop $TTop; - -// Maximum temperature fluctuation size below capping inversion. -TPrimeScale 0.0; - -// Height rate of change of potential temperature above the inversion. -dTdz $TGradUpper; - -// Geostrophic wind speed magnitude. -Ug $U0Mag; - -// Geostrophic wind speed direction. -UgDir $dir; - -// Aerodynamic roughness height of surface. -z0 $z0; - -// von Karman constant. -kappa $kappa; - -// Vertical profile table. -profileTable -( -// z U V T - (0.0 0.0 0.0 273.121917725) - (5.0 1.82671529027 1.98969371553 282.524156211) - (10.0 2.52983624172 2.77228242751 283.156504284) - (15.0 3.01282071998 3.35521702288 283.64108812) - (20.0 3.35996148006 3.78823607698 284.090761147) - (25.0 3.8038057643 4.37960852586 284.554077196) - (30.0 4.03596125279 4.70538923119 284.966777157) - (35.0 4.38133296535 5.23253766126 285.360167677) - (40.0 4.56992779673 5.53523659867 285.747101612) - (45.0 4.80994398595 5.96180841679 286.095879197) - (50.0 5.00816921409 6.32774876853 286.444585293) - (55.0 5.14154903327 6.60160807137 286.787914506) - (60.0 5.36818530188 7.08896005703 287.063199891) - (65.0 5.44703987742 7.27484159809 287.379906732) - (70.0 5.57604433164 7.60608624795 287.638417176) - (75.0 5.72370142776 7.99632935101 287.863981004) - (80.0 5.77619905069 8.15139018101 288.127106742) - (85.0 5.87149793296 8.46369430537 288.331005696) - (90.0 5.98111916718 8.83268873958 288.509035882) - (95.0 6.01697152506 8.97407895539 288.724664101) - (100.0 6.06967854005 9.19927028309 288.909565287) - (105.0 6.1450628792 9.53721293929 289.053124377) - (110.0 6.19167607924 9.76288104253 289.198531813) - (115.0 6.22489630605 9.93628531022 289.344799656) - (120.0 6.27421288656 10.216282683 289.462005) - (125.0 6.32645248876 10.5156368594 289.57393273) - (130.0 6.34668810144 10.6457361726 289.712125634) - (135.0 6.36434613795 10.762203832 289.852433913) - (140.0 6.39842793739 11.0196195883 289.95191863) - (145.0 6.4342454375 11.2919310606 290.047089019) - (150.0 6.45180421766 11.4367005351 290.150649381) - (155.0 6.46406875681 11.544488333 290.256642472) - (160.0 6.48170756073 11.7056278368 290.348224267) - (165.0 6.50382814701 11.9112591447 290.427787992) - (170.0 6.52550956366 12.1127414485 290.506470121) - (175.0 6.54550549533 12.298300329 290.581768788) - (180.0 6.56550142701 12.4838592096 290.657067454) - (185.0 6.58511534034 12.6567515091 290.735008491) - (190.0 6.6045979288 12.8252894701 290.813857884) - (195.0 6.62432001649 12.9896812983 290.892328604) - (200.0 6.64532587961 13.1318488244 290.968769537) - (205.0 6.66633174272 13.2740163505 291.045210471) - (210.0 6.69104111181 13.4098514016 291.117435921) - (215.0 6.72036475996 13.5377966838 291.184409209) - (220.0 6.74968840812 13.6657419659 291.251382497) - (225.0 6.77805691412 13.7640369251 291.318657013) - (230.0 6.80578882059 13.8425700289 291.386132296) - (235.0 6.83352072706 13.9211031327 291.453607578) - (240.0 6.86307156947 13.9862481909 291.518273832) - (245.0 6.89380511232 14.0426881336 291.581113612) - (250.0 6.92453865516 14.0991280764 291.643953391) - (255.0 6.95361693104 14.1462680315 291.704700258) - (260.0 6.98077095142 14.1825967081 291.763014104) - (265.0 7.0079249718 14.2189253847 291.82132795) - (270.0 7.03507703408 14.2541299666 291.879606535) - (275.0 7.0622194383 14.283790106 291.937711201) - (280.0 7.08936184253 14.3134502454 291.995815867) - (285.0 7.11650424675 14.3431103848 292.053920533) - (290.0 7.1430391081 14.369131837 292.11328027) - (295.0 7.16932392788 14.3936557439 292.173156546) - (300.0 7.19560874767 14.4181796507 292.233032822) - (305.0 7.22180906756 14.4424461024 292.292838021) - (310.0 7.24680913749 14.4630556198 292.351633627) - (315.0 7.27180920741 14.4836651372 292.410429232) - (320.0 7.29680927734 14.5042746546 292.469224837) - (325.0 7.32153609499 14.5243042572 292.528664796) - (330.0 7.34543057757 14.5425674214 292.590067475) - (335.0 7.36932506015 14.5608305855 292.651470155) - (340.0 7.39321954273 14.5790937496 292.712872834) - (345.0 7.41696733387 14.597025575 292.773542958) - (350.0 7.44026003553 14.6139294685 292.831940429) - (355.0 7.46355273718 14.6308333621 292.890337899) - (360.0 7.48684543884 14.6477372556 292.94873537) - (365.0 7.51013186129 14.6646271523 293.007149353) - (370.0 7.53322339247 14.68108262 293.066075821) - (375.0 7.55631492366 14.6975380877 293.12500229) - (380.0 7.57940645484 14.7139935554 293.183928758) - (385.0 7.60249798603 14.7304490231 293.242855226) - (390.0 7.6257582057 14.7463924565 293.301506178) - (395.0 7.64912373233 14.7620162427 293.359985132) - (400.0 7.67248925896 14.7776400289 293.418464087) - (405.0 7.69585478559 14.7932638151 293.476943042) - (410.0 7.71922031222 14.8088876013 293.535421996) - (415.0 7.74300228036 14.8230663689 293.592791002) - (420.0 7.7667927399 14.8372156721 293.650137374) - (425.0 7.79058319945 14.8513649753 293.707483747) - (430.0 7.81437365899 14.8655142784 293.76483012) - (435.0 7.83815083397 14.8793492717 293.821767406) - (440.0 7.86181714661 14.8905612872 293.875290779) - (445.0 7.88548345926 14.9017733027 293.928814153) - (450.0 7.9091497719 14.9129853182 293.982337526) - (455.0 7.93281608455 14.9241973336 294.035860899) - (460.0 7.95648239719 14.9354093491 294.089384273) - (465.0 7.97905964048 14.9423301431 294.14128451) - (470.0 8.0016312311 14.9492286641 294.193176323) - (475.0 8.02420282171 14.956127185 294.245068135) - (480.0 8.04677441233 14.9630257059 294.296959948) - (485.0 8.06934600294 14.9699242269 294.34885176) - (490.0 8.0912068028 14.9742300558 294.40025773) - (495.0 8.11235909886 14.9759515346 294.45117942) - (500.0 8.13351139492 14.9776730134 294.502101111) - (505.0 8.15466369098 14.9793944922 294.553022801) - (510.0 8.17581598704 14.981115971 294.603944491) - (515.0 8.19696828309 14.9828374498 294.654866181) - (520.0 8.21724149816 14.9808198644 294.704354156) - (525.0 8.2364694612 14.9743564264 294.752137402) - (530.0 8.25569742424 14.9678929884 294.799920649) - (535.0 8.27492538727 14.9614295505 294.847703896) - (540.0 8.29415335031 14.9549661125 294.895487143) - (545.0 8.31338131334 14.9485026745 294.943270389) - (550.0 8.33260927638 14.9420392365 294.991053636) - (555.0 8.35050488468 14.9266129312 295.036341098) - (560.0 8.36808840645 14.9090871924 295.081043956) - (565.0 8.38567192822 14.8915614535 295.125746813) - (570.0 8.40325544999 14.8740357147 295.170449671) - (575.0 8.42083897176 14.8565099758 295.215152528) - (580.0 8.43842249352 14.838984237 295.259855386) - (585.0 8.45600601529 14.8214584982 295.304558243) - (590.0 8.47264685758 14.7968218302 295.348171206) - (595.0 8.48834031368 14.765038729 295.390688832) - (600.0 8.50403376979 14.7332556278 295.433206459) - (605.0 8.51972722589 14.7014725265 295.475724085) - (610.0 8.53542068199 14.6696894253 295.518241712) - (615.0 8.55111413809 14.6379063241 295.560759338) - (620.0 8.56680759419 14.6061232229 295.603276965) - (625.0 8.5825010503 14.5743401216 295.645794591) - (630.0 8.59715715424 14.5346556613 295.689519112) - (635.0 8.61058749747 14.4856347615 295.734669729) - (640.0 8.62401784069 14.4366138617 295.779820347) - (645.0 8.63744818391 14.3875929619 295.824970964) - (650.0 8.65087852713 14.338572062 295.870121581) - (655.0 8.66430887036 14.2895511622 295.915272198) - (660.0 8.67773921358 14.2405302624 295.960422815) - (665.0 8.6911695568 14.1915093626 296.005573433) - (670.0 8.70459990003 14.1424884628 296.05072405) - (675.0 8.71498597608 14.0837507537 296.096336227) - (680.0 8.72352399234 14.0191143362 296.142228601) - (685.0 8.7320620086 13.9544779188 296.188120975) - (690.0 8.74060002486 13.8898415013 296.234013348) - (695.0 8.74913804112 13.8252050838 296.279905722) - (700.0 8.75767605739 13.7605686663 296.325798096) - (705.0 8.76621407365 13.6959322489 296.371690469) - (710.0 8.77475208991 13.6312958314 296.417582843) - (715.0 8.78329010617 13.5666594139 296.463475217) - (720.0 8.79182812243 13.5020229965 296.50936759) - (725.0 8.79189547444 13.4277463368 296.562527014) - (730.0 8.79098910472 13.3523615098 296.616521801) - (735.0 8.79008273499 13.2769766828 296.670516587) - (740.0 8.78917636527 13.2015918559 296.724511374) - (745.0 8.78826999555 13.1262070289 296.778506161) - (750.0 8.78736362582 13.0508222019 296.832500948) - (755.0 8.7864572561 12.9754373749 296.886495735) - (760.0 8.78555088638 12.9000525479 296.940490522) - (765.0 8.78464451665 12.824667721 296.994485308) - (770.0 8.78373814693 12.749282894 297.048480095) - (775.0 8.78092431283 12.6731698157 297.101321687) - (780.0 8.77050848097 12.594154369 297.149567342) - (785.0 8.76009264911 12.5151389222 297.197812997) - (790.0 8.74967681725 12.4361234755 297.246058652) - (795.0 8.73926098539 12.3571080288 297.294304307) - (800.0 8.72884515353 12.278092582 297.342549962) - (805.0 8.71842932167 12.1990771353 297.390795617) - (810.0 8.70801348981 12.1200616885 297.439041272) - (815.0 8.69759765795 12.0410462418 297.487286927) - (820.0 8.68718182609 11.9620307951 297.535532582) - (825.0 8.67676599423 11.8830153483 297.583778237) - (830.0 8.66635016237 11.8039999016 297.632023892) - (835.0 8.65380285705 11.7267327361 297.688031136) - (840.0 8.63847548104 11.6517458454 297.754161782) - (845.0 8.62314810503 11.5767589547 297.820292429) - (850.0 8.60782072902 11.5017720641 297.886423076) - (855.0 8.59249335301 11.4267851734 297.952553722) - (860.0 8.57716597701 11.3517982828 298.018684369) - (865.0 8.561838601 11.2768113921 298.084815016) - (870.0 8.54651122499 11.2018245015 298.150945663) - (875.0 8.53118384898 11.1268376108 298.217076309) - (880.0 8.51585647297 11.0518507201 298.283206956) - (885.0 8.50052909696 10.9768638295 298.349337603) - (890.0 8.48520172096 10.9018769388 298.41546825) - (895.0 8.46987434495 10.8268900482 298.481598896) - (900.0 8.45883220551 10.7541011047 298.547345535) - (905.0 8.45238242046 10.6836676328 298.612680644) - (910.0 8.44593263542 10.6132341608 298.678015753) - (915.0 8.43948285037 10.5428006888 298.743350863) - (920.0 8.43303306533 10.4723672168 298.808685972) - (925.0 8.42658328028 10.4019337449 298.874021081) - (930.0 8.42013349524 10.3315002729 298.93935619) - (935.0 8.41368371019 10.2610668009 299.004691299) - (940.0 8.40723392515 10.190633329 299.070026409) - (945.0 8.4007841401 10.120199857 299.135361518) - (950.0 8.39433435506 10.049766385 299.200696627) - (955.0 8.38788457001 9.97933291304 299.266031736) - (960.0 8.38143478497 9.90889944107 299.331366845) - (965.0 8.37498499992 9.8384659691 299.396701955) - (970.0 8.37175628862 9.76984547069 299.458148741) - (975.0 8.3787220489 9.70696290595 299.507289259) - (980.0 8.38568780918 9.64408034121 299.556429777) - (985.0 8.39265356946 9.58119777647 299.605570296) - (990.0 8.39961932974 9.51831521173 299.654710814) - (995.0 8.40658509002 9.45543264699 299.703851332) - (1000.0 8.4135508503 9.39255008225 299.752991851) - (1005.0 8.42051661058 9.32966751751 299.802132369) - (1010.0 8.42748237086 9.26678495277 299.851272887) - (1015.0 8.43444813113 9.20390238803 299.900413405) - (1020.0 8.44141389141 9.14101982329 299.949553924) - (1025.0 8.44837965169 9.07813725854 299.998694442) - (1030.0 8.45534541197 9.0152546938 300.04783496) - (1035.0 8.46231117225 8.95237212906 300.096975478) - (1040.0 8.46927693253 8.88948956432 300.146115997) - (1045.0 8.47624269281 8.82660699958 300.195256515) - (1050.0 8.48495783258 8.77319458603 300.238852282) - (1055.0 8.49495774699 8.72673721576 300.278375887) - (1060.0 8.5049576614 8.6802798455 300.317899492) - (1065.0 8.51495757581 8.63382247523 300.357423097) - (1070.0 8.52495749023 8.58736510496 300.396946702) - (1075.0 8.53495740464 8.5409077347 300.436470307) - (1080.0 8.54495731905 8.49445036443 300.475993912) - (1085.0 8.55495723346 8.44799299416 300.515517517) - (1090.0 8.56495714787 8.4015356239 300.555041122) - (1095.0 8.57495706228 8.35507825363 300.594564727) - (1100.0 8.58495697669 8.30862088336 300.634088332) - (1105.0 8.5949568911 8.2621635131 300.673611937) - (1110.0 8.60495680552 8.21570614283 300.713135542) - (1115.0 8.61495671993 8.16924877256 300.752659147) - (1120.0 8.62495663434 8.1227914023 300.792182752) - (1125.0 8.63495654875 8.07633403203 300.831706357) - (1130.0 8.64495646316 8.02987666176 300.871229962) - (1135.0 8.65360052964 7.98996489564 300.907704255) - (1140.0 8.65972902324 7.96219751809 300.938521005) - (1145.0 8.66585751685 7.93443014055 300.969337756) - (1150.0 8.67198601045 7.906662763 301.000154506) - (1155.0 8.67811450406 7.87889538546 301.030971256) - (1160.0 8.68424299766 7.85112800791 301.061788006) - (1165.0 8.69037149126 7.82336063037 301.092604757) - (1170.0 8.69649998487 7.79559325282 301.123421507) - (1175.0 8.70262847847 7.76782587527 301.154238257) - (1180.0 8.70875697208 7.74005849773 301.185055007) - (1185.0 8.71488546568 7.71229112018 301.215871758) - (1190.0 8.72101395929 7.68452374264 301.246688508) - (1195.0 8.72714245289 7.65675636509 301.277505258) - (1200.0 8.7332709465 7.62898898755 301.308322009) - (1205.0 8.7393994401 7.60122161 301.339138759) - (1210.0 8.74552793371 7.57345423246 301.369955509) - (1215.0 8.75165642731 7.54568685491 301.400772259) - (1220.0 8.75778492092 7.51791947737 301.43158901) - (1225.0 8.76391341452 7.49015209982 301.46240576) - (1230.0 8.76818252215 7.46990516883 301.489568668) - (1235.0 8.76988179508 7.46005215541 301.511681645) - (1240.0 8.771581068 7.45019914198 301.533794623) - (1245.0 8.77328034093 7.44034612856 301.5559076) - (1250.0 8.77497961385 7.43049311513 301.578020578) - (1255.0 8.77667888677 7.42064010171 301.600133555) - (1260.0 8.7783781597 7.41078708828 301.622246532) - (1265.0 8.78007743262 7.40093407485 301.64435951) - (1270.0 8.78177670555 7.39108106143 301.666472487) - (1275.0 8.78347597847 7.381228048 301.688585464) - (1280.0 8.7851752514 7.37137503458 301.710698442) - (1285.0 8.78687452432 7.36152202115 301.732811419) - (1290.0 8.78857379725 7.35166900773 301.754924397) - (1295.0 8.79027307017 7.3418159943 301.777037374) - (1300.0 8.7919723431 7.33196298088 301.799150351) - (1305.0 8.79367161602 7.32210996745 301.821263329) - (1310.0 8.79537088895 7.31225695402 301.843376306) - (1315.0 8.79707016187 7.3024039406 301.865489283) - (1320.0 8.79876943479 7.29255092717 301.887602261) - (1325.0 8.80046870772 7.28269791375 301.909715238) - (1330.0 8.80216798064 7.27284490032 301.931828216) - (1335.0 8.80345002487 7.27037429336 301.950702634) - (1340.0 8.80449597234 7.27208116099 301.967744453) - (1345.0 8.8055419198 7.27378802862 301.984786271) - (1350.0 8.80658786727 7.27549489624 302.00182809) - (1355.0 8.80763381473 7.27720176387 302.018869908) - (1360.0 8.8086797622 7.2789086315 302.035911727) - (1365.0 8.80972570966 7.28061549913 302.052953545) - (1370.0 8.81077165713 7.28232236676 302.069995364) - (1375.0 8.81181760459 7.28402923439 302.087037182) - (1380.0 8.81286355206 7.28573610202 302.104079001) - (1385.0 8.81390949952 7.28744296965 302.121120819) - (1390.0 8.81495544699 7.28914983727 302.138162638) - (1395.0 8.81600139445 7.2908567049 302.155204456) - (1400.0 8.81704734192 7.29256357253 302.172246275) - (1405.0 8.81809328938 7.29427044016 302.189288094) - (1410.0 8.81913923685 7.29597730779 302.206329912) - (1415.0 8.82018518431 7.29768417542 302.223371731) - (1420.0 8.82123113178 7.29939104305 302.240413549) - (1425.0 8.82227707924 7.30109791068 302.257455368) - (1430.0 8.82332302671 7.30280477831 302.274497186) - (1435.0 8.82436897417 7.30451164593 302.291539005) - (1440.0 8.82541492164 7.30621851356 302.308580823) - (1445.0 8.8264608691 7.30792538119 302.325622642) - (1450.0 8.82980499965 7.31411337437 302.342200633) - (1455.0 8.83363827328 7.32125512601 302.358679903) - (1460.0 8.83747154691 7.32839687764 302.375159173) - (1465.0 8.84130482054 7.33553862927 302.391638443) - (1470.0 8.84513809417 7.34268038091 302.408117713) - (1475.0 8.8489713678 7.34982213254 302.424596984) - (1480.0 8.85280464143 7.35696388418 302.441076254) - (1485.0 8.85663791506 7.36410563581 302.457555524) - (1490.0 8.86047118869 7.37124738745 302.474034794) - (1495.0 8.86430446231 7.37838913908 302.490514064) - (1500.0 8.86813773594 7.38553089071 302.506993334) - (1505.0 8.87197100957 7.39267264235 302.523472605) - (1510.0 8.8758042832 7.39981439398 302.539951875) - (1515.0 8.87963755683 7.40695614562 302.556431145) - (1520.0 8.88347083046 7.41409789725 302.572910415) - (1525.0 8.88730410409 7.42123964888 302.589389685) - (1530.0 8.89113737772 7.42838140052 302.605868955) - (1535.0 8.89497065135 7.43552315215 302.622348226) - (1540.0 8.89880392498 7.44266490379 302.638827496) - (1545.0 8.90263719861 7.44980665542 302.655306766) - (1550.0 8.90647047224 7.45694840705 302.671786036) - (1555.0 8.91030374586 7.46409015869 302.688265306) - (1560.0 8.91413701949 7.47123191032 302.704744577) - (1565.0 8.91797029312 7.47837366196 302.721223847) - (1570.0 8.92180356675 7.48551541359 302.737703117) - (1575.0 8.92995697971 7.48958529161 302.756743245) - (1580.0 8.93926578965 7.49283361431 302.77646826) - (1585.0 8.94857459959 7.496081937 302.796193275) - (1590.0 8.95788340953 7.49933025969 302.81591829) - (1595.0 8.96719221947 7.50257858238 302.835643305) - (1600.0 8.97650102941 7.50582690508 302.85536832) - (1605.0 8.98580983935 7.50907522777 302.875093335) - (1610.0 8.9951186493 7.51232355046 302.89481835) - (1615.0 9.00442745924 7.51557187315 302.914543365) - (1620.0 9.01373626918 7.51882019585 302.93426838) - (1625.0 9.02304507912 7.52206851854 302.953993395) - (1630.0 9.03235388906 7.52531684123 302.973718411) - (1635.0 9.041662699 7.52856516392 302.993443426) - (1640.0 9.05097150894 7.53181348662 303.013168441) - (1645.0 9.06028031888 7.53506180931 303.032893456) - (1650.0 9.06958912882 7.538310132 303.052618471) - (1655.0 9.07889793876 7.5415584547 303.072343486) - (1660.0 9.0882067487 7.54480677739 303.092068501) - (1665.0 9.09751555864 7.54805510008 303.111793516) - (1670.0 9.10682436858 7.55130342277 303.131518531) - (1675.0 9.11613317852 7.55455174547 303.151243546) - (1680.0 9.12544198846 7.55780006816 303.170968561) - (1685.0 9.1347507984 7.56104839085 303.190693576) - (1690.0 9.14405960834 7.56429671354 303.210418591) - (1695.0 9.15336841829 7.56754503624 303.230143606) - (1700.0 9.16267722823 7.57079335893 303.249868621) - (1705.0 9.17198603817 7.57404168162 303.269593636) - (1710.0 9.18349377603 7.57239347669 303.290540127) - (1715.0 9.19922226437 7.56134659115 303.31383119) - (1720.0 9.2149507527 7.55029970561 303.337122252) - (1725.0 9.23067924103 7.53925282007 303.360413315) - (1730.0 9.24640772936 7.52820593453 303.383704377) - (1735.0 9.2621362177 7.51715904899 303.40699544) - (1740.0 9.27786470603 7.50611216345 303.430286502) - (1745.0 9.29359319436 7.49506527791 303.453577565) - (1750.0 9.3093216827 7.48401839237 303.476868627) - (1755.0 9.32505017103 7.47297150683 303.50015969) - (1760.0 9.34077865936 7.46192462129 303.523450752) - (1765.0 9.35650714769 7.45087773575 303.546741815) - (1770.0 9.37223563603 7.43983085021 303.570032877) - (1775.0 9.38796412436 7.42878396467 303.59332394) - (1780.0 9.40369261269 7.41773707912 303.616615003) - (1785.0 9.41942110102 7.40669019358 303.639906065) - (1790.0 9.43514958936 7.39564330804 303.663197128) - (1795.0 9.45087807769 7.3845964225 303.68648819) - (1800.0 9.46660656602 7.37354953696 303.709779253) - (1805.0 9.48233505436 7.36250265142 303.733070315) - (1810.0 9.49806354269 7.35145576588 303.756361378) - (1815.0 9.51379203102 7.34040888034 303.77965244) - (1820.0 9.52952051935 7.3293619948 303.802943503) - (1825.0 9.54524900769 7.31831510926 303.826234565) - (1830.0 9.56097749602 7.30726822372 303.849525628) - (1835.0 9.57670598435 7.29622133818 303.87281669) - (1840.0 9.59243447268 7.28517445264 303.896107753) - (1845.0 9.60816296102 7.2741275671 303.919398815) - (1850.0 9.62389144935 7.26308068156 303.942689878) - (1855.0 9.63961993768 7.25203379602 303.96598094) - (1860.0 9.65432709188 7.2376578099 303.988680381) - (1865.0 9.66596304977 7.21327107309 304.009600791) - (1870.0 9.67759900765 7.18888433629 304.0305212) - (1875.0 9.68923496554 7.16449759948 304.051441609) - (1880.0 9.70087092342 7.14011086267 304.072362018) - (1885.0 9.71250688131 7.11572412587 304.093282427) - (1890.0 9.72414283919 7.09133738906 304.114202836) - (1895.0 9.73577879708 7.06695065226 304.135123245) - (1900.0 9.74741475497 7.04256391545 304.156043654) - (1905.0 9.75905071285 7.01817717864 304.176964064) - (1910.0 9.77068667074 6.99379044184 304.197884473) - (1915.0 9.78232262862 6.96940370503 304.218804882) - (1920.0 9.79395858651 6.94501696822 304.239725291) - (1925.0 9.8055945444 6.92063023142 304.2606457) - (1930.0 9.81723050228 6.89624349461 304.281566109) - (1935.0 9.82886646017 6.8718567578 304.302486518) - (1940.0 9.84050241805 6.847470021 304.323406928) - (1945.0 9.85213837594 6.82308328419 304.344327337) - (1950.0 9.86377433382 6.79869654738 304.365247746) - (1955.0 9.87541029171 6.77430981058 304.386168155) - (1960.0 9.8870462496 6.74992307377 304.407088564) - (1965.0 9.89868220748 6.72553633696 304.428008973) - (1970.0 9.91031816537 6.70114960016 304.448929382) - (1975.0 9.92195412325 6.67676286335 304.469849792) - (1980.0 9.93359008114 6.65237612654 304.490770201) - (1985.0 9.94522603903 6.62798938974 304.51169061) - (1990.0 9.95686199691 6.60360265293 304.532611019) - (1995.0 9.9684979548 6.57921591612 304.553531428) - (2000.0 9.98013391268 6.55482917932 304.574451837) -); - -// Update internal field. -updateInternalFields true; - -// Update boundary field. -updateBoundaryFields false; - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/topoSetDict.local.1 b/exampleCases/example.ADM.ssc.base/system/topoSetDict.local.1 deleted file mode 100755 index 5ca695970..000000000 --- a/exampleCases/example.ADM.ssc.base/system/topoSetDict.local.1 +++ /dev/null @@ -1,36 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object topoSetDict.local.2; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -actions -( - { - name local; - type cellSet; - action new; - source rotatedBoxToCell; - sourceInfo - { - origin ( 900.0 1325.0 0.0); - i ( 1950.0 0.0 0.0); - j ( 0.0 350.0 0.0); - k ( 0.0 0.0 230.0); - } - } - -); - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.base/system/topoSetDict.local.2 b/exampleCases/example.ADM.ssc.base/system/topoSetDict.local.2 deleted file mode 100755 index eb488cf4f..000000000 --- a/exampleCases/example.ADM.ssc.base/system/topoSetDict.local.2 +++ /dev/null @@ -1,36 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object topoSetDict.local.2; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -actions -( - { - name local; - type cellSet; - action new; - source rotatedBoxToCell; - sourceInfo - { - origin ( 1000.0 1375.0 0.0); - i ( 1800.0 0.0 0.0); - j ( 0.0 250.0 0.0); - k ( 0.0 0.0 200.0); - } - } - -); - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/0.original/Rwall b/exampleCases/example.ADM.ssc/0.original/Rwall deleted file mode 100755 index 9f0a3a19c..000000000 --- a/exampleCases/example.ADM.ssc/0.original/Rwall +++ /dev/null @@ -1,65 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volSymmTensorField; - location "0"; - object Rwall; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - -dimensions [ 0 2 -2 0 0 0 0 ]; - -internalField uniform (0.0 0.0 0.0 0.0 0.0 0.0); - -boundaryField -{ - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - //averageType "local"; - averageType "planarAverage"; - value uniform $Rwall; - } - upper - { - type fixedValue; - value $internalField; - } - west - { - type cyclic; - value $internalField; - } - east - { - type cyclic; - value $internalField; - } - north - { - type cyclic; - value $internalField; - } - south - { - type cyclic; - value $internalField; - } -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/0.original/T b/exampleCases/example.ADM.ssc/0.original/T deleted file mode 100755 index 8fce50ca7..000000000 --- a/exampleCases/example.ADM.ssc/0.original/T +++ /dev/null @@ -1,55 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volScalarField; - location "0"; - object T ; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -dimensions [0 0 0 1 0 0 0]; - -internalField uniform $TBottom; - -boundaryField -{ - lower - { - type zeroGradient; - } - upper - { - type fixedGradient; - gradient uniform $TGradUpper; - } - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/0.original/U b/exampleCases/example.ADM.ssc/0.original/U deleted file mode 100755 index a73faa4e0..000000000 --- a/exampleCases/example.ADM.ssc/0.original/U +++ /dev/null @@ -1,58 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volVectorField; - location "0"; - object U; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -dimensions [0 1 -1 0 0 0 0]; - -internalField uniform (0 0 0); - -boundaryField -{ - lower - { - type velocityABLWallFunction; - print true; - U U; - value $internalField; - } - upper - { - type slip; - } - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } -} - - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/0.original/k b/exampleCases/example.ADM.ssc/0.original/k deleted file mode 100755 index b85959d30..000000000 --- a/exampleCases/example.ADM.ssc/0.original/k +++ /dev/null @@ -1,54 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volScalarField; - location "0"; - object k ; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -dimensions [0 2 -2 0 0 0 0]; - -internalField uniform $k0; - -boundaryField -{ - lower - { - type zeroGradient; - } - upper - { - type zeroGradient; - } - east - { - type cyclic; - } - west - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/0.original/kappat b/exampleCases/example.ADM.ssc/0.original/kappat deleted file mode 100755 index 05706742f..000000000 --- a/exampleCases/example.ADM.ssc/0.original/kappat +++ /dev/null @@ -1,60 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.1.x | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volScalarField; - location "0"; - object kappat; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -dimensions [0 2 -1 0 0 0 0]; - -internalField uniform $kappat0; - -boundaryField -{ - lower - { - type fixedValue; - value uniform 0.0; - } - upper - { - type fixedValue; - value uniform 0.0; - } - west - { - type cyclic; - value $internalField; - } - east - { - type cyclic; - value $internalField; - } - north - { - type cyclic; - value $internalField; - } - south - { - type cyclic; - value $internalField; - } -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/0.original/nuSgs b/exampleCases/example.ADM.ssc/0.original/nuSgs deleted file mode 100755 index e6f1da758..000000000 --- a/exampleCases/example.ADM.ssc/0.original/nuSgs +++ /dev/null @@ -1,60 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.1.x | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volScalarField; - location "0"; - object nuSgs; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -dimensions [0 2 -1 0 0 0 0]; - -internalField uniform $nuSgs0; - -boundaryField -{ - lower - { - type fixedValue; - value uniform 0.0; - } - upper - { - type fixedValue; - value uniform 0.0; - } - west - { - type cyclic; - value $internalField; - } - east - { - type cyclic; - value $internalField; - } - north - { - type cyclic; - value $internalField; - } - south - { - type cyclic; - value $internalField; - } -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/0.original/p_rgh b/exampleCases/example.ADM.ssc/0.original/p_rgh deleted file mode 100755 index b40b9978c..000000000 --- a/exampleCases/example.ADM.ssc/0.original/p_rgh +++ /dev/null @@ -1,54 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volScalarField; - location "0000"; - object p_rgh ; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -dimensions [0 2 -2 0 0 0 0]; - -internalField uniform $p_rgh0; - -boundaryField -{ - lower - { - type fixedFluxPressure; - } - upper - { - type fixedFluxPressure; - } - east - { - type cyclic; - } - west - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/0.original/qwall b/exampleCases/example.ADM.ssc/0.original/qwall deleted file mode 100755 index c695d7577..000000000 --- a/exampleCases/example.ADM.ssc/0.original/qwall +++ /dev/null @@ -1,59 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volVectorField; - location "0"; - object qwall; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - -dimensions [ 0 1 -1 1 0 0 0 ]; - -internalField uniform (0.0 0.0 0.0); - -boundaryField -{ - lower - { - type fixedValue; - value uniform $qwall; - } - upper - { - type fixedValue; - value $internalField; - } - west - { - type cyclic; - value $internalField; - } - east - { - type cyclic; - value $internalField; - } - north - { - type cyclic; - value $internalField; - } - south - { - type cyclic; - value $internalField; - } -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/SC_INPUT.txt b/exampleCases/example.ADM.ssc/SC_INPUT.txt deleted file mode 100644 index a584d7e04..000000000 --- a/exampleCases/example.ADM.ssc/SC_INPUT.txt +++ /dev/null @@ -1,7 +0,0 @@ -Time(s) Turbine Yaw(degCompass) Pitch(deg) -0 0 270 0.0 -10 0 260 0.0 -20 0 250 0.0 -30 0 240 0.0 -0 1 270 0.0 -10 1 280 0.0 \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc/constant/ABLProperties b/exampleCases/example.ADM.ssc/constant/ABLProperties deleted file mode 100755 index d25c3dbee..000000000 --- a/exampleCases/example.ADM.ssc/constant/ABLProperties +++ /dev/null @@ -1,55 +0,0 @@ -/*---------------------------------------------------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.openfoam.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ - -FoamFile -{ - version 2.0; - format ascii; - - root ""; - case ""; - instance ""; - local ""; - - class dictionary; - object ABLProperties; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - - -// Properties of the mesoscale source terms -momentumSourceType "given"; -temperatureSourceType "given"; - - -velocityInputType "speedAndDirection"; - - -#include "../constant/sources" - - -// Relaxation factors applied when computing sources given desired -// velocity and temperature. -alphaMomentum 0.7; -alphaTemperature 0.7; - - -// Properties of the Coriolis force -planetaryRotationPeriod $EarthPeriod; -latitude $latitude; - - -// Statistics gathering input -avgStartTime $avgStartTime; -corrStartTime $corrStartTime; - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/constant/LESProperties b/exampleCases/example.ADM.ssc/constant/LESProperties deleted file mode 100755 index 2043039a5..000000000 --- a/exampleCases/example.ADM.ssc/constant/LESProperties +++ /dev/null @@ -1,118 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "constant"; - object LESProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#include "../setUp" - - -LESModel $LESModel; -//LESModel SmagorinskyABL; -//LESModel Smagorinsky; -//LESModel dynLagrangianCsBound; - -delta smooth; - -SmagorinskyCoeffs -{ - ce $ce; - ck $ck; -} - -SmagorinskyABLCoeffs -{ - ce $ce; - ck $ck; - TName "T"; - kappatName "kappat"; -} - -oneEqEddyABLCoeffs -{ - ce $ce; - ck $ck; - TName "T"; - kappatName "kappat"; -} - -printCoeffs on; - -dynLagrangianCsBoundCoeffs -{ - filter simple; -} - -cubeRootVolCoeffs -{ - deltaCoeff 1; -} - -PrandtlCoeffs -{ - delta cubeRootVol; - cubeRootVolCoeffs - { - deltaCoeff 1; - } - - smoothCoeffs - { - delta cubeRootVol; - cubeRootVolCoeffs - { - deltaCoeff 1; - } - - maxDeltaRatio 1.1; - } - - Cdelta 0.158; -} - -vanDriestCoeffs -{ - delta cubeRootVol; - cubeRootVolCoeffs - { - deltaCoeff 1; - } - - smoothCoeffs - { - delta cubeRootVol; - cubeRootVolCoeffs - { - deltaCoeff 1; - } - - maxDeltaRatio 1.1; - } - - Aplus 26; - Cdelta 0.158; -} - -smoothCoeffs -{ - delta cubeRootVol; - cubeRootVolCoeffs - { - deltaCoeff 1; - } - - maxDeltaRatio 1.1; -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/constant/airfoilProperties/Cylinder1 b/exampleCases/example.ADM.ssc/constant/airfoilProperties/Cylinder1 deleted file mode 100755 index 7106c17d0..000000000 --- a/exampleCases/example.ADM.ssc/constant/airfoilProperties/Cylinder1 +++ /dev/null @@ -1,23 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180.00 0.000 0.5000) - ( 0.00 0.000 0.5000) - ( 180.00 0.000 0.5000) -); diff --git a/exampleCases/example.ADM.ssc/constant/airfoilProperties/Cylinder2 b/exampleCases/example.ADM.ssc/constant/airfoilProperties/Cylinder2 deleted file mode 100755 index b2e7923f1..000000000 --- a/exampleCases/example.ADM.ssc/constant/airfoilProperties/Cylinder2 +++ /dev/null @@ -1,23 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180.00 0.000 0.3500) - ( 0.00 0.000 0.3500) - ( 180.00 0.000 0.3500) -); diff --git a/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU21_A17 b/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU21_A17 deleted file mode 100755 index 17eb9de96..000000000 --- a/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU21_A17 +++ /dev/null @@ -1,162 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180 0 0.0185) - (-175 0.394 0.0332) - (-170 0.788 0.0945) - (-160 0.67 0.2809) - (-155 0.749 0.3932) - (-150 0.797 0.5112) - (-145 0.818 0.6309) - (-140 0.813 0.7485) - (-135 0.786 0.8612) - (-130 0.739 0.9665) - (-125 0.675 1.0625) - (-120 0.596 1.1476) - (-115 0.505 1.2206) - (-110 0.403 1.2805) - (-105 0.294 1.3265) - (-100 0.179 1.3582) - (-95 0.06 1.3752) - (-90 -0.06 1.3774) - (-85 -0.179 1.3648) - (-80 -0.295 1.3376) - (-75 -0.407 1.2962) - (-70 -0.512 1.2409) - (-65 -0.608 1.1725) - (-60 -0.693 1.0919) - (-55 -0.764 1.0002) - (-50 -0.82 0.899 ) - (-45 -0.857 0.79 ) - (-40 -0.875 0.6754) - (-35 -0.869 0.5579) - (-30 -0.838 0.4405) - (-25 -0.791 0.3256) - (-24 -0.794 0.3013) - (-23 -0.805 0.2762) - (-22 -0.821 0.2506) - (-21 -0.843 0.2246) - (-20 -0.869 0.1983) - (-19 -0.899 0.172 ) - (-18 -0.931 0.1457) - (-17 -0.964 0.1197) - (-16 -0.999 0.094 ) - (-15 -1.033 0.0689) - (-14.5 -1.05 0.0567) - (-12.01 -0.953 0.0271) - (-11 -0.9 0.0303) - (-9.98 -0.827 0.0287) - (-8.12 -0.536 0.0124) - (-7.62 -0.467 0.0109) - (-7.11 -0.393 0.0092) - (-6.6 -0.323 0.0083) - (-6.5 -0.311 0.0089) - (-6 -0.245 0.0082) - (-5.5 -0.178 0.0074) - (-5 -0.113 0.0069) - (-4.5 -0.048 0.0065) - (-4 0.016 0.0063) - (-3.5 0.08 0.0061) - (-3 0.145 0.0058) - (-2.5 0.208 0.0057) - (-2 0.27 0.0057) - (-1.5 0.333 0.0057) - (-1 0.396 0.0057) - (-0.5 0.458 0.0057) - ( 0 0.521 0.0057) - ( 0.5 0.583 0.0057) - ( 1 0.645 0.0058) - ( 1.5 0.706 0.0058) - ( 2 0.768 0.0059) - ( 2.5 0.828 0.0061) - ( 3 0.888 0.0063) - ( 3.5 0.948 0.0066) - ( 4 0.996 0.0071) - ( 4.5 1.046 0.0079) - ( 5 1.095 0.009 ) - ( 5.5 1.145 0.0103) - ( 6 1.192 0.0113) - ( 6.5 1.239 0.0122) - ( 7 1.283 0.0131) - ( 7.5 1.324 0.0139) - ( 8 1.358 0.0147) - ( 8.5 1.385 0.0158) - ( 9 1.403 0.0181) - ( 9.5 1.401 0.0211) - ( 10 1.358 0.0255) - ( 10.5 1.313 0.0301) - ( 11 1.287 0.0347) - ( 11.5 1.274 0.0401) - ( 12 1.272 0.0468) - ( 12.5 1.273 0.0545) - ( 13 1.273 0.0633) - ( 13.5 1.273 0.0722) - ( 14 1.272 0.0806) - ( 14.5 1.273 0.09 ) - ( 15 1.275 0.0987) - ( 15.5 1.281 0.1075) - ( 16 1.284 0.117 ) - ( 16.5 1.296 0.127 ) - ( 17 1.306 0.1368) - ( 17.5 1.308 0.1464) - ( 18 1.308 0.1562) - ( 18.5 1.308 0.1664) - ( 19 1.308 0.177 ) - ( 19.5 1.307 0.1878) - ( 20 1.311 0.1987) - ( 20.5 1.325 0.21 ) - ( 21 1.324 0.2214) - ( 22 1.277 0.2499) - ( 23 1.229 0.2786) - ( 24 1.182 0.3077) - ( 25 1.136 0.3371) - ( 26 1.093 0.3664) - ( 28 1.017 0.4246) - ( 30 0.962 0.4813) - ( 32 0.937 0.5356) - ( 35 0.947 0.6127) - ( 40 0.95 0.7396) - ( 45 0.928 0.8623) - ( 50 0.884 0.9781) - ( 55 0.821 1.0846) - ( 60 0.74 1.1796) - ( 65 0.646 1.2617) - ( 70 0.54 1.3297) - ( 75 0.425 1.3827) - ( 80 0.304 1.4202) - ( 85 0.179 1.4423) - ( 90 0.053 1.4512) - ( 95 -0.073 1.448 ) - ( 100 -0.198 1.4294) - ( 105 -0.319 1.3954) - ( 110 -0.434 1.3464) - ( 115 -0.541 1.2829) - ( 120 -0.637 1.2057) - ( 125 -0.72 1.1157) - ( 130 -0.787 1.0144) - ( 135 -0.836 0.9033) - ( 140 -0.864 0.7845) - ( 145 -0.869 0.6605) - ( 150 -0.847 0.5346) - ( 155 -0.795 0.4103) - ( 160 -0.711 0.2922) - ( 170 -0.788 0.0969) - ( 175 -0.394 0.0334) - ( 180 0 0.0185) -); diff --git a/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU25_A17 b/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU25_A17 deleted file mode 100755 index 56981e639..000000000 --- a/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU25_A17 +++ /dev/null @@ -1,161 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180.00 0.000 0.0202) - (-175.00 0.368 0.0324) - (-170.00 0.735 0.0943) - (-160.00 0.695 0.2848) - (-155.00 0.777 0.4001) - (-150.00 0.828 0.5215) - (-145.00 0.850 0.6447) - (-140.00 0.846 0.7660) - (-135.00 0.818 0.8823) - (-130.00 0.771 0.9911) - (-125.00 0.705 1.0905) - (-120.00 0.624 1.1787) - (-115.00 0.530 1.2545) - (-110.00 0.426 1.3168) - (-105.00 0.314 1.3650) - (-100.00 0.195 1.3984) - ( -95.00 0.073 1.4169) - ( -90.00 -0.050 1.4201) - ( -85.00 -0.173 1.4081) - ( -80.00 -0.294 1.3811) - ( -75.00 -0.409 1.3394) - ( -70.00 -0.518 1.2833) - ( -65.00 -0.617 1.2138) - ( -60.00 -0.706 1.1315) - ( -55.00 -0.780 1.0378) - ( -50.00 -0.839 0.9341) - ( -45.00 -0.879 0.8221) - ( -40.00 -0.898 0.7042) - ( -35.00 -0.893 0.5829) - ( -30.00 -0.862 0.4616) - ( -25.00 -0.803 0.3441) - ( -24.00 -0.792 0.3209) - ( -23.00 -0.789 0.2972) - ( -22.00 -0.792 0.2730) - ( -21.00 -0.801 0.2485) - ( -20.00 -0.815 0.2237) - ( -19.00 -0.833 0.1990) - ( -18.00 -0.854 0.1743) - ( -17.00 -0.879 0.1498) - ( -16.00 -0.905 0.1256) - ( -15.00 -0.932 0.1020) - ( -14.00 -0.959 0.0789) - ( -13.00 -0.985 0.0567) - ( -13.00 -0.985 0.0567) - ( -12.01 -0.953 0.0271) - ( -11.00 -0.900 0.0303) - ( -9.98 -0.827 0.0287) - ( -8.98 -0.753 0.0271) - ( -8.47 -0.691 0.0264) - ( -7.45 -0.555 0.0114) - ( -6.42 -0.413 0.0094) - ( -5.40 -0.271 0.0086) - ( -5.00 -0.220 0.0073) - ( -4.50 -0.152 0.0071) - ( -4.00 -0.084 0.0070) - ( -3.50 -0.018 0.0069) - ( -3.00 0.049 0.0068) - ( -2.50 0.115 0.0068) - ( -2.00 0.181 0.0068) - ( -1.50 0.247 0.0067) - ( -1.00 0.312 0.0067) - ( -0.50 0.377 0.0067) - ( 0.00 0.444 0.0065) - ( 0.50 0.508 0.0065) - ( 1.00 0.573 0.0066) - ( 1.50 0.636 0.0067) - ( 2.00 0.701 0.0068) - ( 2.50 0.765 0.0069) - ( 3.00 0.827 0.0070) - ( 3.50 0.890 0.0071) - ( 4.00 0.952 0.0073) - ( 4.50 1.013 0.0076) - ( 5.00 1.062 0.0079) - ( 6.00 1.161 0.0099) - ( 6.50 1.208 0.0117) - ( 7.00 1.254 0.0132) - ( 7.50 1.301 0.0143) - ( 8.00 1.336 0.0153) - ( 8.50 1.369 0.0165) - ( 9.00 1.400 0.0181) - ( 9.50 1.428 0.0211) - ( 10.00 1.442 0.0262) - ( 10.50 1.427 0.0336) - ( 11.00 1.374 0.0420) - ( 11.50 1.316 0.0515) - ( 12.00 1.277 0.0601) - ( 12.50 1.250 0.0693) - ( 13.00 1.246 0.0785) - ( 13.50 1.247 0.0888) - ( 14.00 1.256 0.1000) - ( 14.50 1.260 0.1108) - ( 15.00 1.271 0.1219) - ( 15.50 1.281 0.1325) - ( 16.00 1.289 0.1433) - ( 16.50 1.294 0.1541) - ( 17.00 1.304 0.1649) - ( 17.50 1.309 0.1754) - ( 18.00 1.315 0.1845) - ( 18.50 1.320 0.1953) - ( 19.00 1.330 0.2061) - ( 19.50 1.343 0.2170) - ( 20.00 1.354 0.2280) - ( 20.50 1.359 0.2390) - ( 21.00 1.360 0.2536) - ( 22.00 1.325 0.2814) - ( 23.00 1.288 0.3098) - ( 24.00 1.251 0.3386) - ( 25.00 1.215 0.3678) - ( 26.00 1.181 0.3972) - ( 28.00 1.120 0.4563) - ( 30.00 1.076 0.5149) - ( 32.00 1.056 0.5720) - ( 35.00 1.066 0.6548) - ( 40.00 1.064 0.7901) - ( 45.00 1.035 0.9190) - ( 50.00 0.980 1.0378) - ( 55.00 0.904 1.1434) - ( 60.00 0.810 1.2333) - ( 65.00 0.702 1.3055) - ( 70.00 0.582 1.3587) - ( 75.00 0.456 1.3922) - ( 80.00 0.326 1.4063) - ( 85.00 0.197 1.4042) - ( 90.00 0.072 1.3985) - ( 95.00 -0.050 1.3973) - ( 100.00 -0.170 1.3810) - ( 105.00 -0.287 1.3498) - ( 110.00 -0.399 1.3041) - ( 115.00 -0.502 1.2442) - ( 120.00 -0.596 1.1709) - ( 125.00 -0.677 1.0852) - ( 130.00 -0.743 0.9883) - ( 135.00 -0.792 0.8818) - ( 140.00 -0.821 0.7676) - ( 145.00 -0.826 0.6481) - ( 150.00 -0.806 0.5264) - ( 155.00 -0.758 0.4060) - ( 160.00 -0.679 0.2912) - ( 170.00 -0.735 0.0995) - ( 175.00 -0.368 0.0356) - ( 180.00 0.000 0.0202) -); diff --git a/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU30_A17 b/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU30_A17 deleted file mode 100755 index 35fb11988..000000000 --- a/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU30_A17 +++ /dev/null @@ -1,163 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180.00 0.000 0.0267) - (-175.00 0.274 0.0370) - (-170.00 0.547 0.0968) - (-160.00 0.685 0.2876) - (-155.00 0.766 0.4025) - (-150.00 0.816 0.5232) - (-145.00 0.836 0.6454) - (-140.00 0.832 0.7656) - (-135.00 0.804 0.8807) - (-130.00 0.756 0.9882) - (-125.00 0.690 1.0861) - (-120.00 0.609 1.1730) - (-115.00 0.515 1.2474) - (-110.00 0.411 1.3084) - (-105.00 0.300 1.3552) - (-100.00 0.182 1.3875) - ( -95.00 0.061 1.4048) - ( -90.00 -0.061 1.4070) - ( -85.00 -0.183 1.3941) - ( -80.00 -0.302 1.3664) - ( -75.00 -0.416 1.3240) - ( -70.00 -0.523 1.2676) - ( -65.00 -0.622 1.1978) - ( -60.00 -0.708 1.1156) - ( -55.00 -0.781 1.0220) - ( -50.00 -0.838 0.9187) - ( -45.00 -0.877 0.8074) - ( -40.00 -0.895 0.6904) - ( -35.00 -0.889 0.5703) - ( -30.00 -0.858 0.4503) - ( -25.00 -0.832 0.3357) - ( -24.00 -0.852 0.3147) - ( -23.00 -0.882 0.2946) - ( -22.00 -0.919 0.2752) - ( -21.00 -0.963 0.2566) - ( -20.00 -1.013 0.2388) - ( -19.00 -1.067 0.2218) - ( -18.00 -1.125 0.2056) - ( -17.00 -1.185 0.1901) - ( -16.00 -1.245 0.1754) - ( -15.25 -1.290 0.1649) - ( -14.24 -1.229 0.1461) - ( -13.24 -1.148 0.1263) - ( -12.22 -1.052 0.1051) - ( -11.22 -0.965 0.0886) - ( -10.19 -0.867 0.0740) - ( -9.70 -0.822 0.0684) - ( -9.18 -0.769 0.0605) - ( -8.18 -0.756 0.0270) - ( -7.19 -0.690 0.0180) - ( -6.65 -0.616 0.0166) - ( -6.13 -0.542 0.0152) - ( -6.00 -0.525 0.0117) - ( -5.50 -0.451 0.0105) - ( -5.00 -0.382 0.0097) - ( -4.50 -0.314 0.0092) - ( -4.00 -0.251 0.0091) - ( -3.50 -0.189 0.0089) - ( -3.00 -0.120 0.0089) - ( -2.50 -0.051 0.0088) - ( -2.00 0.017 0.0088) - ( -1.50 0.085 0.0088) - ( -1.00 0.152 0.0088) - ( -0.50 0.219 0.0088) - ( 0.00 0.288 0.0087) - ( 0.50 0.354 0.0087) - ( 1.00 0.421 0.0088) - ( 1.50 0.487 0.0089) - ( 2.00 0.554 0.0090) - ( 2.50 0.619 0.0091) - ( 3.00 0.685 0.0092) - ( 3.50 0.749 0.0093) - ( 4.00 0.815 0.0095) - ( 4.50 0.879 0.0096) - ( 5.00 0.944 0.0097) - ( 5.50 1.008 0.0099) - ( 6.00 1.072 0.0101) - ( 6.50 1.135 0.0103) - ( 7.00 1.197 0.0107) - ( 7.50 1.256 0.0112) - ( 8.00 1.305 0.0125) - ( 9.00 1.390 0.0155) - ( 9.50 1.424 0.0171) - ( 10.00 1.458 0.0192) - ( 10.50 1.488 0.0219) - ( 11.00 1.512 0.0255) - ( 11.50 1.533 0.0307) - ( 12.00 1.549 0.0370) - ( 12.50 1.558 0.0452) - ( 13.00 1.470 0.0630) - ( 13.50 1.398 0.0784) - ( 14.00 1.354 0.0931) - ( 14.50 1.336 0.1081) - ( 15.00 1.333 0.1239) - ( 15.50 1.326 0.1415) - ( 16.00 1.329 0.1592) - ( 16.50 1.326 0.1743) - ( 17.00 1.321 0.1903) - ( 17.50 1.331 0.2044) - ( 18.00 1.333 0.2186) - ( 18.50 1.340 0.2324) - ( 19.00 1.362 0.2455) - ( 19.50 1.382 0.2584) - ( 20.00 1.398 0.2689) - ( 20.50 1.426 0.2814) - ( 21.00 1.437 0.2943) - ( 22.00 1.418 0.3246) - ( 23.00 1.397 0.3557) - ( 24.00 1.376 0.3875) - ( 25.00 1.354 0.4198) - ( 26.00 1.332 0.4524) - ( 28.00 1.293 0.5183) - ( 30.00 1.265 0.5843) - ( 32.00 1.253 0.6492) - ( 35.00 1.264 0.7438) - ( 40.00 1.258 0.8970) - ( 45.00 1.217 1.0402) - ( 50.00 1.146 1.1686) - ( 55.00 1.049 1.2779) - ( 60.00 0.932 1.3647) - ( 65.00 0.799 1.4267) - ( 70.00 0.657 1.4621) - ( 75.00 0.509 1.4708) - ( 80.00 0.362 1.4544) - ( 85.00 0.221 1.4196) - ( 90.00 0.092 1.3938) - ( 95.00 -0.030 1.3943) - ( 100.00 -0.150 1.3798) - ( 105.00 -0.267 1.3504) - ( 110.00 -0.379 1.3063) - ( 115.00 -0.483 1.2481) - ( 120.00 -0.578 1.1763) - ( 125.00 -0.660 1.0919) - ( 130.00 -0.727 0.9962) - ( 135.00 -0.777 0.8906) - ( 140.00 -0.807 0.7771) - ( 145.00 -0.815 0.6581) - ( 150.00 -0.797 0.5364) - ( 155.00 -0.750 0.4157) - ( 160.00 -0.673 0.3000) - ( 170.00 -0.547 0.1051) - ( 175.00 -0.274 0.0388) - ( 180.00 0.000 0.0267) -); diff --git a/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU35_A17 b/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU35_A17 deleted file mode 100755 index 041013e24..000000000 --- a/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU35_A17 +++ /dev/null @@ -1,155 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180.00 0.000 0.0407) - (-175.00 0.223 0.0507) - (-170.00 0.405 0.1055) - (-160.00 0.658 0.2982) - (-155.00 0.733 0.4121) - (-150.00 0.778 0.5308) - (-145.00 0.795 0.6503) - (-140.00 0.787 0.7672) - (-135.00 0.757 0.8785) - (-130.00 0.708 0.9819) - (-125.00 0.641 1.0756) - (-120.00 0.560 1.1580) - (-115.00 0.467 1.2280) - (-110.00 0.365 1.2847) - (-105.00 0.255 1.3274) - (-100.00 0.139 1.3557) - ( -95.00 0.021 1.3692) - ( -90.00 -0.098 1.3680) - ( -85.00 -0.216 1.3521) - ( -80.00 -0.331 1.3218) - ( -75.00 -0.441 1.2773) - ( -70.00 -0.544 1.2193) - ( -65.00 -0.638 1.1486) - ( -60.00 -0.720 1.0660) - ( -55.00 -0.788 0.9728) - ( -50.00 -0.840 0.8705) - ( -45.00 -0.875 0.7611) - ( -40.00 -0.889 0.6466) - ( -35.00 -0.880 0.5299) - ( -30.00 -0.846 0.4141) - ( -25.00 -0.784 0.3030) - ( -24.00 -0.768 0.2817) - ( -23.00 -0.751 0.2608) - ( -22.00 -0.733 0.2404) - ( -21.00 -0.714 0.2205) - ( -20.00 -0.693 0.2011) - ( -19.00 -0.671 0.1822) - ( -18.00 -0.648 0.1640) - ( -17.00 -0.624 0.1465) - ( -16.00 -0.601 0.1300) - ( -15.00 -0.579 0.1145) - ( -14.00 -0.559 0.1000) - ( -13.00 -0.539 0.0867) - ( -12.00 -0.519 0.0744) - ( -11.00 -0.499 0.0633) - ( -10.00 -0.480 0.0534) - ( -5.54 -0.385 0.0245) - ( -5.04 -0.359 0.0225) - ( -4.54 -0.360 0.0196) - ( -4.04 -0.355 0.0174) - ( -3.54 -0.307 0.0162) - ( -3.04 -0.246 0.0144) - ( -3.00 -0.240 0.0240) - ( -2.50 -0.163 0.0188) - ( -2.00 -0.091 0.0160) - ( -1.50 -0.019 0.0137) - ( -1.00 0.052 0.0118) - ( -0.50 0.121 0.0104) - ( 0.00 0.196 0.0094) - ( 0.50 0.265 0.0096) - ( 1.00 0.335 0.0098) - ( 1.50 0.404 0.0099) - ( 2.00 0.472 0.0100) - ( 2.50 0.540 0.0102) - ( 3.00 0.608 0.0103) - ( 3.50 0.674 0.0104) - ( 4.00 0.742 0.0105) - ( 4.50 0.809 0.0107) - ( 5.00 0.875 0.0108) - ( 5.50 0.941 0.0109) - ( 6.00 1.007 0.0110) - ( 6.50 1.071 0.0113) - ( 7.00 1.134 0.0115) - ( 7.50 1.198 0.0117) - ( 8.00 1.260 0.0120) - ( 8.50 1.318 0.0126) - ( 9.00 1.368 0.0133) - ( 9.50 1.422 0.0143) - ( 10.00 1.475 0.0156) - ( 10.50 1.523 0.0174) - ( 11.00 1.570 0.0194) - ( 11.50 1.609 0.0227) - ( 12.00 1.642 0.0269) - ( 12.50 1.675 0.0319) - ( 13.00 1.700 0.0398) - ( 13.50 1.717 0.0488) - ( 14.00 1.712 0.0614) - ( 14.50 1.703 0.0786) - ( 15.50 1.671 0.1173) - ( 16.00 1.649 0.1377) - ( 16.50 1.621 0.1600) - ( 17.00 1.598 0.1814) - ( 17.50 1.571 0.2042) - ( 18.00 1.549 0.2316) - ( 19.00 1.544 0.2719) - ( 19.50 1.549 0.2906) - ( 20.00 1.565 0.3085) - ( 21.00 1.565 0.3447) - ( 22.00 1.563 0.3820) - ( 23.00 1.558 0.4203) - ( 24.00 1.552 0.4593) - ( 25.00 1.546 0.4988) - ( 26.00 1.539 0.5387) - ( 28.00 1.527 0.6187) - ( 30.00 1.522 0.6978) - ( 32.00 1.529 0.7747) - ( 35.00 1.544 0.8869) - ( 40.00 1.529 1.0671) - ( 45.00 1.471 1.2319) - ( 50.00 1.376 1.3747) - ( 55.00 1.249 1.4899) - ( 60.00 1.097 1.5728) - ( 65.00 0.928 1.6202) - ( 70.00 0.750 1.6302) - ( 75.00 0.570 1.6031) - ( 80.00 0.396 1.5423) - ( 85.00 0.237 1.4598) - ( 90.00 0.101 1.4041) - ( 95.00 -0.022 1.4053) - ( 100.00 -0.143 1.3914) - ( 105.00 -0.261 1.3625) - ( 110.00 -0.374 1.3188) - ( 115.00 -0.480 1.2608) - ( 120.00 -0.575 1.1891) - ( 125.00 -0.659 1.1046) - ( 130.00 -0.727 1.0086) - ( 135.00 -0.778 0.9025) - ( 140.00 -0.809 0.7883) - ( 145.00 -0.818 0.6684) - ( 150.00 -0.800 0.5457) - ( 155.00 -0.754 0.4236) - ( 160.00 -0.677 0.3066) - ( 170.00 -0.417 0.1085) - ( 175.00 -0.229 0.0510) - ( 180.00 0.000 0.0407) -); diff --git a/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU40_A17 b/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU40_A17 deleted file mode 100755 index 6138a98dd..000000000 --- a/exampleCases/example.ADM.ssc/constant/airfoilProperties/DU40_A17 +++ /dev/null @@ -1,156 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180.00 0.000 0.0602) - (-175.00 0.218 0.0699) - (-170.00 0.397 0.1107) - (-160.00 0.642 0.3045) - (-155.00 0.715 0.4179) - (-150.00 0.757 0.5355) - (-145.00 0.772 0.6535) - (-140.00 0.762 0.7685) - (-135.00 0.731 0.8777) - (-130.00 0.680 0.9788) - (-125.00 0.613 1.0700) - (-120.00 0.532 1.1499) - (-115.00 0.439 1.2174) - (-110.00 0.337 1.2716) - (-105.00 0.228 1.3118) - (-100.00 0.114 1.3378) - ( -95.00 -0.002 1.3492) - ( -90.00 -0.120 1.3460) - ( -85.00 -0.236 1.3283) - ( -80.00 -0.349 1.2964) - ( -75.00 -0.456 1.2507) - ( -70.00 -0.557 1.1918) - ( -65.00 -0.647 1.1204) - ( -60.00 -0.727 1.0376) - ( -55.00 -0.792 0.9446) - ( -50.00 -0.842 0.8429) - ( -45.00 -0.874 0.7345) - ( -40.00 -0.886 0.6215) - ( -35.00 -0.875 0.5067) - ( -30.00 -0.839 0.3932) - ( -25.00 -0.777 0.2849) - ( -24.00 -0.761 0.2642) - ( -23.00 -0.744 0.2440) - ( -22.00 -0.725 0.2242) - ( -21.00 -0.706 0.2049) - ( -20.00 -0.685 0.1861) - ( -19.00 -0.662 0.1687) - ( -18.00 -0.635 0.1533) - ( -17.00 -0.605 0.1398) - ( -16.00 -0.571 0.1281) - ( -15.00 -0.534 0.1183) - ( -14.00 -0.494 0.1101) - ( -13.00 -0.452 0.1036) - ( -12.00 -0.407 0.0986) - ( -11.00 -0.360 0.0951) - ( -10.00 -0.311 0.0931) - ( -8.00 -0.208 0.0930) - ( -6.00 -0.111 0.0689) - ( -5.50 -0.090 0.0614) - ( -5.00 -0.072 0.0547) - ( -4.50 -0.065 0.0480) - ( -4.00 -0.054 0.0411) - ( -3.50 -0.017 0.0349) - ( -3.00 0.003 0.0299) - ( -2.50 0.014 0.0255) - ( -2.00 0.009 0.0198) - ( -1.50 0.004 0.0164) - ( -1.00 0.036 0.0147) - ( -0.50 0.073 0.0137) - ( 0.00 0.137 0.0113) - ( 0.50 0.213 0.0114) - ( 1.00 0.292 0.0118) - ( 1.50 0.369 0.0122) - ( 2.00 0.444 0.0124) - ( 2.50 0.514 0.0124) - ( 3.00 0.580 0.0123) - ( 3.50 0.645 0.0120) - ( 4.00 0.710 0.0119) - ( 4.50 0.776 0.0122) - ( 5.00 0.841 0.0125) - ( 5.50 0.904 0.0129) - ( 6.00 0.967 0.0135) - ( 6.50 1.027 0.0144) - ( 7.00 1.084 0.0158) - ( 7.50 1.140 0.0174) - ( 8.00 1.193 0.0198) - ( 8.50 1.242 0.0231) - ( 9.00 1.287 0.0275) - ( 9.50 1.333 0.0323) - ( 10.00 1.368 0.0393) - ( 10.50 1.400 0.0475) - ( 11.00 1.425 0.0580) - ( 11.50 1.449 0.0691) - ( 12.00 1.473 0.0816) - ( 12.50 1.494 0.0973) - ( 13.00 1.513 0.1129) - ( 13.50 1.538 0.1288) - ( 14.50 1.587 0.1650) - ( 15.00 1.614 0.1845) - ( 15.50 1.631 0.2052) - ( 16.00 1.649 0.2250) - ( 16.50 1.666 0.2467) - ( 17.00 1.681 0.2684) - ( 17.50 1.699 0.2900) - ( 18.00 1.719 0.3121) - ( 19.00 1.751 0.3554) - ( 19.50 1.767 0.3783) - ( 20.50 1.798 0.4212) - ( 21.00 1.810 0.4415) - ( 22.00 1.830 0.4830) - ( 23.00 1.847 0.5257) - ( 24.00 1.861 0.5694) - ( 25.00 1.872 0.6141) - ( 26.00 1.881 0.6593) - ( 28.00 1.894 0.7513) - ( 30.00 1.904 0.8441) - ( 32.00 1.915 0.9364) - ( 35.00 1.929 1.0722) - ( 40.00 1.903 1.2873) - ( 45.00 1.820 1.4796) - ( 50.00 1.690 1.6401) - ( 55.00 1.522 1.7609) - ( 60.00 1.323 1.8360) - ( 65.00 1.106 1.8614) - ( 70.00 0.880 1.8347) - ( 75.00 0.658 1.7567) - ( 80.00 0.449 1.6334) - ( 85.00 0.267 1.4847) - ( 90.00 0.124 1.3879) - ( 95.00 0.002 1.3912) - ( 100.00 -0.118 1.3795) - ( 105.00 -0.235 1.3528) - ( 110.00 -0.348 1.3114) - ( 115.00 -0.453 1.2557) - ( 120.00 -0.549 1.1864) - ( 125.00 -0.633 1.1041) - ( 130.00 -0.702 1.0102) - ( 135.00 -0.754 0.9060) - ( 140.00 -0.787 0.7935) - ( 145.00 -0.797 0.6750) - ( 150.00 -0.782 0.5532) - ( 155.00 -0.739 0.4318) - ( 160.00 -0.664 0.3147) - ( 170.00 -0.410 0.1144) - ( 175.00 -0.226 0.0702) - ( 180.00 0.000 0.0602) -); diff --git a/exampleCases/example.ADM.ssc/constant/airfoilProperties/NACA64_A17 b/exampleCases/example.ADM.ssc/constant/airfoilProperties/NACA64_A17 deleted file mode 100755 index 11fa618d0..000000000 --- a/exampleCases/example.ADM.ssc/constant/airfoilProperties/NACA64_A17 +++ /dev/null @@ -1,147 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180.00 0.000 0.0198) - (-175.00 0.374 0.0341) - (-170.00 0.749 0.0955) - (-160.00 0.659 0.2807) - (-155.00 0.736 0.3919) - (-150.00 0.783 0.5086) - (-145.00 0.803 0.6267) - (-140.00 0.798 0.7427) - (-135.00 0.771 0.8537) - (-130.00 0.724 0.9574) - (-125.00 0.660 1.0519) - (-120.00 0.581 1.1355) - (-115.00 0.491 1.2070) - (-110.00 0.390 1.2656) - (-105.00 0.282 1.3104) - (-100.00 0.169 1.3410) - ( -95.00 0.052 1.3572) - ( -90.00 -0.067 1.3587) - ( -85.00 -0.184 1.3456) - ( -80.00 -0.299 1.3181) - ( -75.00 -0.409 1.2765) - ( -70.00 -0.512 1.2212) - ( -65.00 -0.606 1.1532) - ( -60.00 -0.689 1.0731) - ( -55.00 -0.759 0.9822) - ( -50.00 -0.814 0.8820) - ( -45.00 -0.850 0.7742) - ( -40.00 -0.866 0.6610) - ( -35.00 -0.860 0.5451) - ( -30.00 -0.829 0.4295) - ( -25.00 -0.853 0.3071) - ( -24.00 -0.870 0.2814) - ( -23.00 -0.890 0.2556) - ( -22.00 -0.911 0.2297) - ( -21.00 -0.934 0.2040) - ( -20.00 -0.958 0.1785) - ( -19.00 -0.982 0.1534) - ( -18.00 -1.005 0.1288) - ( -17.00 -1.082 0.1037) - ( -16.00 -1.113 0.0786) - ( -15.00 -1.105 0.0535) - ( -14.00 -1.078 0.0283) - ( -13.50 -1.053 0.0158) - ( -13.00 -1.015 0.0151) - ( -12.00 -0.904 0.0134) - ( -11.00 -0.807 0.0121) - ( -10.00 -0.711 0.0111) - ( -9.00 -0.595 0.0099) - ( -8.00 -0.478 0.0091) - ( -7.00 -0.375 0.0086) - ( -6.00 -0.264 0.0082) - ( -5.00 -0.151 0.0079) - ( -4.00 -0.017 0.0072) - ( -3.00 0.088 0.0064) - ( -2.00 0.213 0.0054) - ( -1.00 0.328 0.0052) - ( 0.00 0.442 0.0052) - ( 1.00 0.556 0.0052) - ( 2.00 0.670 0.0053) - ( 3.00 0.784 0.0053) - ( 4.00 0.898 0.0054) - ( 5.00 1.011 0.0058) - ( 6.00 1.103 0.0091) - ( 7.00 1.181 0.0113) - ( 8.00 1.257 0.0124) - ( 8.50 1.293 0.0130) - ( 9.00 1.326 0.0136) - ( 9.50 1.356 0.0143) - ( 10.00 1.382 0.0150) - ( 10.50 1.400 0.0267) - ( 11.00 1.415 0.0383) - ( 11.50 1.425 0.0498) - ( 12.00 1.434 0.0613) - ( 12.50 1.443 0.0727) - ( 13.00 1.451 0.0841) - ( 13.50 1.453 0.0954) - ( 14.00 1.448 0.1065) - ( 14.50 1.444 0.1176) - ( 15.00 1.445 0.1287) - ( 15.50 1.447 0.1398) - ( 16.00 1.448 0.1509) - ( 16.50 1.444 0.1619) - ( 17.00 1.438 0.1728) - ( 17.50 1.439 0.1837) - ( 18.00 1.448 0.1947) - ( 18.50 1.452 0.2057) - ( 19.00 1.448 0.2165) - ( 19.50 1.438 0.2272) - ( 20.00 1.428 0.2379) - ( 21.00 1.401 0.2590) - ( 22.00 1.359 0.2799) - ( 23.00 1.300 0.3004) - ( 24.00 1.220 0.3204) - ( 25.00 1.168 0.3377) - ( 26.00 1.116 0.3554) - ( 28.00 1.015 0.3916) - ( 30.00 0.926 0.4294) - ( 32.00 0.855 0.4690) - ( 35.00 0.800 0.5324) - ( 40.00 0.804 0.6452) - ( 45.00 0.793 0.7573) - ( 50.00 0.763 0.8664) - ( 55.00 0.717 0.9708) - ( 60.00 0.656 1.0693) - ( 65.00 0.582 1.1606) - ( 70.00 0.495 1.2438) - ( 75.00 0.398 1.3178) - ( 80.00 0.291 1.3809) - ( 85.00 0.176 1.4304) - ( 90.00 0.053 1.4565) - ( 95.00 -0.074 1.4533) - ( 100.00 -0.199 1.4345) - ( 105.00 -0.321 1.4004) - ( 110.00 -0.436 1.3512) - ( 115.00 -0.543 1.2874) - ( 120.00 -0.640 1.2099) - ( 125.00 -0.723 1.1196) - ( 130.00 -0.790 1.0179) - ( 135.00 -0.840 0.9064) - ( 140.00 -0.868 0.7871) - ( 145.00 -0.872 0.6627) - ( 150.00 -0.850 0.5363) - ( 155.00 -0.798 0.4116) - ( 160.00 -0.714 0.2931) - ( 170.00 -0.749 0.0971) - ( 175.00 -0.374 0.0334) - ( 180.00 0.000 0.0198) -); diff --git a/exampleCases/example.ADM.ssc/constant/g b/exampleCases/example.ADM.ssc/constant/g deleted file mode 100755 index 74304427f..000000000 --- a/exampleCases/example.ADM.ssc/constant/g +++ /dev/null @@ -1,22 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class uniformDimensionedVectorField; - location "constant"; - object g; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -dimensions [0 1 -2 0 0 0 0]; -value ( 0.0 0.0 -9.81 ); - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/constant/polyMesh/blockMeshDict b/exampleCases/example.ADM.ssc/constant/polyMesh/blockMeshDict deleted file mode 100755 index 575f61147..000000000 --- a/exampleCases/example.ADM.ssc/constant/polyMesh/blockMeshDict +++ /dev/null @@ -1,105 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object blockMeshDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../../setUp" - - - - -convertToMeters 1.0; - -vertices -( - ( $xMin $yMin $zMin) - ( $xMax $yMin $zMin) - ( $xMax $yMax $zMin) - ( $xMin $yMax $zMin) - ( $xMin $yMin $zMax) - ( $xMax $yMin $zMax) - ( $xMax $yMax $zMax) - ( $xMin $yMax $zMax) -); - -blocks -( - hex (0 1 2 3 4 5 6 7) ($nx $ny $nz) simpleGrading (1 1 1) -); - -edges -( -); - -boundary -( - lower - { - type wall; - faces - ( - (0 3 2 1) - ); - } - upper - { - type patch; - faces - ( - (4 5 6 7) - ); - } - west - { - type cyclic; - neighbourPatch east; - faces - ( - (0 4 7 3) - ); - } - east - { - type cyclic; - neighbourPatch west; - faces - ( - (1 2 6 5) - ); - } - north - { - type cyclic; - neighbourPatch south; - faces - ( - (3 7 6 2) - ); - } - south - { - type cyclic; - neighbourPatch north; - faces - ( - (0 1 5 4) - ); - } -); - -mergePatchPairs -( -); - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/constant/transportProperties b/exampleCases/example.ADM.ssc/constant/transportProperties deleted file mode 100755 index 3ee719c86..000000000 --- a/exampleCases/example.ADM.ssc/constant/transportProperties +++ /dev/null @@ -1,39 +0,0 @@ -/*---------------------------------------------------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.openfoam.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ - -FoamFile -{ - version 2.0; - format ascii; - - root ""; - case ""; - instance ""; - local ""; - - class dictionary; - object transportProperties; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -transportModel Newtonian; - -// Molecular viscosity -nu nu [0 2 -1 0 0 0 0] $nu; - -// Reference temperature -TRef TRef [0 0 0 1 0 0 0] $TRef; - -// Prandtl numbers -Pr Pr [0 0 0 0 0 0 0] $Pr; -Prt Prt [0 0 0 0 0 0 0] $Prt; -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/constant/turbineArrayProperties b/exampleCases/example.ADM.ssc/constant/turbineArrayProperties deleted file mode 100755 index a416bcf8c..000000000 --- a/exampleCases/example.ADM.ssc/constant/turbineArrayProperties +++ /dev/null @@ -1,76 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object turbineProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -globalProperties -{ - outputControl "timeStep"; - outputInterval 1; -} - -// _SSC_ -sscProperties -{ - sscEnabled true; //Enable/disable ssc, if not present defaults to False - nInputsToSSC 3; // Number of inputs EACH turbine passes to the super controller - nOutputsFromSSC 2; // Number of outputs the super controller sends to EACH turbine - sscControllerType "timeTableSSC"; // The type of SSC -} - -turbine0 -{ - turbineType "NREL5MWRef"; - baseLocation (1000.0 1500.0 0.0); - nRadial 64; - azimuthMaxDis 2.0; - nAvgSector 1; - pointDistType "uniform"; - pointInterpType "linear"; - bladeUpdateType "oldPosition"; - epsilon 20.0; - forceScalar 1.0; - inflowVelocityScalar 0.94; - tipRootLossCorrType "Glauert"; - rotationDir "cw"; - Azimuth 0.0; - RotSpeed 9.15519863; - TorqueGen 0.0; - Pitch 0.0; - NacYaw 270.0; - fluidDensity 1.225; -} - -turbine1 -{ - turbineType "NREL5MWRef"; - baseLocation (1500.0 1500.0 0.0); - nRadial 64; - azimuthMaxDis 2.0; - nAvgSector 1; - pointDistType "uniform"; - pointInterpType "linear"; - bladeUpdateType "oldPosition"; - epsilon 20.0; - forceScalar 1.0; - inflowVelocityScalar 0.94; - tipRootLossCorrType "Glauert"; - rotationDir "cw"; - Azimuth 0.0; - RotSpeed 9.15519863; - TorqueGen 0.0; - Pitch 0.0; - NacYaw 270.0; - fluidDensity 1.225; -} diff --git a/exampleCases/example.ADM.ssc/constant/turbineProperties/NREL5MWRef b/exampleCases/example.ADM.ssc/constant/turbineProperties/NREL5MWRef deleted file mode 100755 index c51e9a8fd..000000000 --- a/exampleCases/example.ADM.ssc/constant/turbineProperties/NREL5MWRef +++ /dev/null @@ -1,122 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.x | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ - -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object turbineProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -NumBl 3; -TipRad 63.0; -HubRad 1.5; -UndSling 0.0; -OverHang -5.01910; -NacelleLength 8; -NacelleFrontalArea 2; -NacelleCd 0.5; -TowerHt 87.6; -Twr2Shft 1.96256; -ShftTilt -5.0; -PreCone (-2.5 -2.5 -2.5); -GBRatio 97.0; -GBEfficiency 1.0; -GenEfficiency 0.944; -RatedRotSpeed 12.1; -GenIner 534.116; -HubIner 115.926E3; -BladeIner 11.776047E6; -GenTorqueControllerType "fiveRegion"; -//GenTorqueControllerType "speedTorqueTable"; -//GenTorqueControllerType "none"; -BladePitchControllerType "PIDSC"; -//BladePitchControllerType "none"; -NacYawControllerType "yawSC"; -RotSpeedLimiter false; -GenTorqueRateLimiter true; -NacYawRateLimiter true; -BladePitchRateLimiter true; -SpeedFilterCornerFrequency 2.0; - - -GenTorqueControllerParams -{ - RateLimitGenTorque 15.0E3; - SpeedTorqueTable - ( - // gen speed (RPM) gen torque (N-m) - ( 670.00 0.0 ) - ( 871.00 20000.0 ) - ( 1161.96 32000.0 ) - ( 1173.70 43093.6 ) - ); - CutInGenSpeed 670.0; - Region2StartGenSpeed 871.0; - Region2EndGenSpeed 1161.963; - CutInGenTorque 0.0; - RatedGenTorque 43.09355E3; - KGen 2.55764E-2; -} - -BladePitchControllerParams -{ - RateLimitBladePitch 8.000; - PitchMin 0.000; - PitchMax 90.000; - PitchK 6.302336; - PitchControlKP 1.82620057; - PitchControlKI 0.78265750; - PitchControlKD 0.000; -} - -NacYawControllerParams -{ - RateLimitNacYaw 2.0; -} - - - - -Airfoils -( - "Cylinder1" - "Cylinder2" - "DU40_A17" - "DU35_A17" - "DU30_A17" - "DU25_A17" - "DU21_A17" - "NACA64_A17" -); - - - -BladeData -( -// radius(m) c(m) twist(deg) airfoil - (2.8667 3.542 13.308 0) - (5.6 3.854 13.308 0) - (8.3333 4.167 13.308 1) - (11.75 4.557 13.308 2) - (15.85 4.652 11.48 3) - (19.95 4.458 10.162 3) - (24.05 4.249 9.011 4) - (28.15 4.007 7.795 5) - (32.25 3.748 6.544 5) - (36.35 3.502 5.361 6) - (40.45 3.256 4.188 6) - (44.55 3.01 3.125 7) - (48.65 2.764 2.319 7) - (52.75 2.518 1.526 7) - (56.1667 2.313 0.863 7) - (58.9 2.086 0.37 7) - (61.6333 1.419 0.106 7) -); diff --git a/exampleCases/example.ADM.ssc/constant/turbulenceProperties b/exampleCases/example.ADM.ssc/constant/turbulenceProperties deleted file mode 100755 index f8a545e0c..000000000 --- a/exampleCases/example.ADM.ssc/constant/turbulenceProperties +++ /dev/null @@ -1,22 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "constant"; - object turbulenceProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -// simulationType RASModel; - simulationType LESModel; -// simulationType laminar; - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/runscript.preprocess b/exampleCases/example.ADM.ssc/runscript.preprocess deleted file mode 100755 index 8d2aa51f7..000000000 --- a/exampleCases/example.ADM.ssc/runscript.preprocess +++ /dev/null @@ -1,170 +0,0 @@ -#!/bin/bash -#PBS -l walltime=4:00:00 -#PBS -l procs=1 -#PBS -A ssc -#PBS -q short - - - - - -# User Input. -OpenFOAMversion=2.4.x # OpenFOAM version - -startTime=20000 # Start time -precursorDir=/projects/ssc/flowLibrary/neutral_3kmx3kmx1km - -updateBCType=1 # Boolean for whether or not the boundary condition types will be updated over - # what is in the initial conditions files. Leave it 0 for precursors. -inflowDir='west' # For inflow/outflow cases, specify the inflow direction. Choices are 'west', - # 'east', 'south', 'west', 'southWest', 'northWest', 'southEast', and - # 'northEast'. There is a 'cyclic' option too in case you need to change - # back to cyclic or simply update the number of boundary face entries. -localRefinementLevels=0 # Number of levels of local refinement (requires system/topoSetDict and - # system/refineHexMeshDict). -globalRefinementLevels=0 # Number of levels of global refinement. -cores=1 # Enter the number of cores you will preprocess on. - - - - - - -# Define some functions for mesh refinement. -# Local refinement performed on one core. -refineMeshLocal() -{ - i=$1 - while [ $i -ge 1 ] - do - echo " -Performing level $i local refinement with topoSet/refineHexMesh" - echo " *selecting cells to refine..." - topoSet -dict system/topoSetDict.local.$i > log.topoSet.local.$i 2>&1 - - echo " *refining cells..." - refineHexMesh local -overwrite > log.refineHexMesh.local.$i 2>&1 - - let i=i-1 - done -} - -# Global refinement performed in parallel. -refineMeshGlobal() -{ - i=1 - while [ $i -le $1 ] - do - echo " -Performing level $i global refinement with refineMesh" - echo " *refining cells..." - mpirun -np $cores refineMesh -parallel -overwrite > log.refineMesh.global.$i 2>&1 - - let i=i+1 - done -} - - -# If running in parallel, cd to job launch directory -if [ $cores -gt 1 ] - then - cd $PBS_O_WORKDIR -fi - - -# Source the bash profile and then call the appropriate OpenFOAM version function -# so that all the modules and environment variables get set. -echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." -source $HOME/.bash_profile -OpenFOAM-$OpenFOAMversion - - -# Copy the controlDict.1 (assuming this is the one the actual solver will start -# out with) to controlDict. OpenFOAM reads "controlDict", not the numbered ones. -echo "Getting the control dictionary ready..." -cp system/controlDict.1 system/controlDict - - -# Copy the "clean" .original initial fields to a working copy. OpenFOAM does not -# read the ".original" initial fields--that's why they remain clean. -echo "Getting the initial condition directory from the precursor..." -rm -rf $startTime -cp -rf $precursorDir/$startTime $startTime - - -# Build the mesh. -echo "Copy the the base mesh from the precursor..." -rm -rf constant/polyMesh -cp -rf $precursorDir/constant/polyMesh ./constant - - -# Get the inflow data linked up. -echo "Linking the inflow data with this directory..." -ln -s $precursorDir/drivingData/boundaryData ./constant - - -# Get the driving source terms linked up. -echo "Linking the driving source terms with this directory..." -ln -s $precursorDir/drivingData/sources ./constant - - -# The initial fields come from the precursor which is periodic on all sides. The turbine -# case has inflow and outflow. Call the changeDictionary utility to update for inflow/outflow.. -if [ $updateBCType -eq 1 ] - then - echo "Using changeDictionary to update boundary conditions..." - changeDictionary -dict system/changeDictionaryDict.updateBCs.$inflowDir -time $startTime -enableFunctionEntries > log.changeDictionary.updateBCs.$inflowDir.1 2>&1 -fi - - -# Do serial local refinement -echo "Using refineHexMesh to perform " $localRefinementLevels " of local refinement..." -refineMeshLocal $localRefinementLevels - - -# If running in paralle from this point forward, then do the following: -if [ $cores -gt 1 ] - then - # Decompose the mesh and solution files (serial) - echo "Using decomposePar to decompose the problem for parallel processing..." - decomposePar -cellDist -force -time $startTime > log.decomposePar 2>&1 - - # Check the mesh - echo "Running checkMesh to report mesh diagnostics..." - mpirun -np $cores checkMesh -parallel > log.checkMesh.1 2>&1 - - # Perform global refinement to desired resolution. - echo "Using refineMesh to perform " $globalRefinementLevels " of global refinement..." - refineMeshGlobal $globalRefinementLevels - - # The mesh got globally refined, but the solution file did not, so - # the boundary fields may not have the correct number of entries. - # Use the changeDictionary utility to overwrite the spatially varying - # boundary data to a uniform single value. - if [ $updateBCType -eq 1 ] - then - echo "Using changeDictionary to ensure that the boundaries have the correct number of faces..." - mpirun -np $cores changeDictionary -dict system/changeDictionaryDict.updateBCs.$inflowDir -time $startTime -enableFunctionEntries -parallel > log.changeDictionary.updateBCs.$inflowDir.1 2>&1 - fi - - # Renumber the mesh for better matrix solver performance. - echo "Using renumberMesh to renumber the mesh for better matrix conditioning..." - mpirun -np $cores renumberMesh -parallel -overwrite -time $startTime > log.renumberMesh 2>&1 - - # Do one last check on the mesh. - echo "Running checkMesh to report mesh diagnostics..." - mpirun -np $cores checkMesh -parallel > log.checkMesh.3 2>&1 - - -# Otherwise, run in serial as follows: -else - # Renumber the mesh. - echo "Using renumberMesh to renumber the mesh for better matrix conditioning..." - renumberMesh -overwrite -time $startTime > log.renumberMesh 2>&1 - - # Decompose the mesh and solution files (serial) - echo "Using decomposePar to decompose the problem for parallel processing..." - decomposePar -cellDist -force -time $startTime > log.decomposePar 2>&1 - - # Check the mesh. - echo "Running checkMesh to report mesh diagnostics..." - checkMesh > log.checkMesh.1 2>&1 -fi diff --git a/exampleCases/example.ADM.ssc/runscript.solve.1 b/exampleCases/example.ADM.ssc/runscript.solve.1 deleted file mode 100755 index c8f167af9..000000000 --- a/exampleCases/example.ADM.ssc/runscript.solve.1 +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/bash -#PBS -l walltime=2:00:00 -#PBS -l procs=180 -#PBS -A ssc -#PBS -q short -#PBS -l qos=high - -cd $PBS_O_WORKDIR - - - - -# User Input. -OpenFOAMversion=2.4.x # OpenFOAM version -startTime=0 # Start time -cores=180 # Enter the number of cores you will preprocess on. -runNumber=1 # Enter the run number (useful for keeping track of restarts). -solver=windPlantSolver.ADM # Enter the name of the flow solver. - - - -echo "Starting OpenFOAM job at: " $(date) -echo "using " $cores " cores" - - -# Source the bash profile and then call the appropriate OpenFOAM version function -# so that all the modules and environment variables get set. -echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." -source $HOME/.bash_profile -OpenFOAM-2.4.develop - - -# Get the control dictionary for this particular run. -cp system/controlDict.$runNumber system/controlDict - - -# Run the solver. -mpirun -np $cores $solver -parallel > log.$runNumber.$solver 2>&1 - -echo "Ending OpenFOAM job at: " $(date) diff --git a/exampleCases/example.ADM.ssc/setUp b/exampleCases/example.ADM.ssc/setUp deleted file mode 100755 index 427ba153e..000000000 --- a/exampleCases/example.ADM.ssc/setUp +++ /dev/null @@ -1,103 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.4.x | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ - -// Domain size and number of cells. -xMin 0.0; // Minimum x-extent of domain (m). -yMin 0.0; // Minimum y-extent of domain (m). -zMin 0.0; // Minimum z-extent of domain (m). -xMax 3000.0; // Maximum x-extent of domain (m). -yMax 3000.0; // Maximum y-extent of domain (m). -zMax 1000.0; // Maximum z-extent of domain (m). -nx 300; // Number of cells in x-direction. -ny 300; // Number of cells in y-direction. -nz 100; // Number of cells in z-direction. - - - - -// Number of cores and domain decomposition information. -nCores 180; // Number of cores on which to run this case. -decompType simple; // Decomposition algorithm. "simple" and "scotch" are good choices. -decompOrder (6 6 5); // Order of the decomposition number of partitions in (x y z)-directions. - - - - -// Planar averaging and source term statistics options. -statisticsOn true; // Gather planar-averaged flow statistics. -statisticsFrequency 5; // Frequency in time steps of statistics gathering. -avgStartTime 20200; // Time to begin accumulating the mean; -corrStartTime 20400; // Time to begin accumulating the correlations; - - - -// Initial values for the variables. -// Note that U and T get overwritten if setFieldsABL is called. -U0Mag 8.0; // Initial condition for wind speed (m/s). -dir 270.0; // Initial condition for wind direction (deg). -windHeight 99.27; // Height at which to drive mean wind to U0Mag/dir (m). -p_rgh0 0.0; // Initial pressure (minus the hydrostatic variation and normalized by density) (m^2/s^2). -nuSgs0 0.0; // Initial SGS viscosity (m^2/s). -k0 0.1; // Initial SGS turbulent kinetic energy (m^2/s^2). -kappat0 0.0; // Initial SGS temperature diffusivity (m^2/s). -TGradUpper 0.003; // Potential temperature gradient above the strong inversion (K/m). -zInversion 750.0; // Height of the middle of the initial strong capping inversion (m). -inversionWidth 100.0; // Vertical width of the intial strong capping inversion (m). -TBottom 300.0; // Initial potential temperature at bottom of strong capping inversion (K). -TTop 305.0; // Initial potential temperature at top of strong capping inversion (K). - - - - -// General conditions and parameters. -Pr 0.7; // Molecular Prandtl number. -Prt 0.33333333; // Turbulent Prandtl number. -nu 1.0E-5; // Molecular viscosity (m^2/s). -TRef 300.0; // Reference potential temperature (K). -latitude 41.3; // Latitude on the Earth of the site (deg). -EarthPeriod 24.0; // Earth's rotation period (hr). - - - - -// SGS model inputs. -LESModel oneEqEddyABL; // SGS model selection. -ce 0.93; // SGS model constant. -ck 0.0673; // SGS model constant. - - - - -// Surface conditions. -qwall (0.0 0.0 0.0); // Temperature flux at wall (modify the z-value). A negative value is flux into domain (K-m/s). -Rwall (0.0 0.0 0.0 0.0 0.0 0.0); // Initial wall shear stress (m^2/s^2). -kappa 0.4; // von Karman constant. -z0 0.15; // Surface roughness (m). -//STABLE CASES -//betaM 15.0; // Monin-Obukhov wall shear stress model constant. -//gammaM 4.9; // Monin-Obukhov wall shear stress model constant. -//betaH 9.0; // Monin-Obukhov wall temperature flux model constant. -//gammaH 7.8; // Monin-Obukhov wall temperature flux model constant. -//alphaH 1.0; // Monin-Obukhov wall temperature flux model constant. -//heatingRate 0.0; // Surface temperature change rate (when not directly setting temperature flux) (K/s). -//NEUTRAL and UNSTABLE -betaM 16.0; -gammaM 5.0; -betaH 9.0; -gammaH 7.8; -alphaH 1.0; - - - - - - -#inputMode merge - -// ************************************************************************* // - diff --git a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.cyclic b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.cyclic deleted file mode 100755 index 389d1c7e8..000000000 --- a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.cyclic +++ /dev/null @@ -1,261 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp"; - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - boundary - { - north - { - type cyclic; - } - south - { - type cyclic; - } - west - { - type cyclic; - } - east - { - type cyclic; - } - } - - - T - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - } - } - U - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - } - } - k - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - } - } - kappat - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - } - } - nuSgs - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - } - } - p_rgh - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "planarAverage"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.east b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.east deleted file mode 100755 index 3143cb1ab..000000000 --- a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.east +++ /dev/null @@ -1,306 +0,0 @@ -/a*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp"; - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - boundary - { - west - { - type patch; - } - east - { - type patch; - } - } - - - - T - { - boundaryField - { - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - west - { - type zeroGradient; - value uniform 300; - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - west - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - west - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - west - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - west - { - type zeroGradient; - value uniform 0.1; - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - west - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - east - { - type fixedFluxPressure; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type fixedFluxPressure; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - east - { - type fixedValue; - value uniform (0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - east - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.north b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.north deleted file mode 100755 index 6d390357b..000000000 --- a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.north +++ /dev/null @@ -1,217 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - - -#include "../setUp"; - - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - - boundary - { - north - { - type patch; - } - south - { - type patch; - } - } - - T - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - south - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - south - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - south - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - north - { - type zeroGradient; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - north - { - type zeroGradient; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - north - { - type fixedFluxPressure; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - north - { - type fixedValue; - value uniform (0 0 0); - } - south - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - north - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - south - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.northeast b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.northeast deleted file mode 100755 index 8c5231d75..000000000 --- a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.northeast +++ /dev/null @@ -1,313 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp"; - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - boundary - { - north - { - type patch; - } - south - { - type patch; - } - west - { - type patch; - } - east - { - type patch; - } - } - - - T - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - south - { - type zeroGradient; - value uniform 300; - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - west - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - south - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - west - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - south - { - type zeroGradient; - value uniform 0.1; - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - west - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - north - { - type zeroGradient; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - north - { - type zeroGradient; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - north - { - type fixedFluxPressure; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - east - { - type fixedFluxPressure; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - north - { - type fixedValue; - value uniform (0 0 0); - } - south - { - type fixedValue; - value uniform (0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - north - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - south - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.northwest b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.northwest deleted file mode 100755 index 46c74d091..000000000 --- a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.northwest +++ /dev/null @@ -1,313 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp"; - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - - boundary - { - north - { - type patch; - } - south - { - type patch; - } - west - { - type patch; - } - east - { - type patch; - } - } - - - T - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - south - { - type zeroGradient; - value uniform 300; - } - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - east - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - south - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - east - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - south - { - type zeroGradient; - value uniform 0.1; - } - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - east - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - north - { - type zeroGradient; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - north - { - type zeroGradient; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - north - { - type fixedFluxPressure; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - west - { - type fixedFluxPressure; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - north - { - type fixedValue; - value uniform (0 0 0); - } - south - { - type fixedValue; - value uniform (0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - north - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - south - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.south b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.south deleted file mode 100755 index c7b2263b6..000000000 --- a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.south +++ /dev/null @@ -1,215 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp"; - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - - boundary - { - north - { - type patch; - } - south - { - type patch; - } - } - - T - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - north - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - north - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - north - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - south - { - type zeroGradient; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - south - { - type zeroGradient; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - south - { - type fixedFluxPressure; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - south - { - type fixedValue; - value uniform (0 0 0); - } - north - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - south - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - north - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.southeast b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.southeast deleted file mode 100755 index 685b7f941..000000000 --- a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.southeast +++ /dev/null @@ -1,314 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp"; - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - - boundary - { - north - { - type patch; - } - south - { - type patch; - } - west - { - type patch; - } - east - { - type patch; - } - } - - - T - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - north - { - type zeroGradient; - value uniform 300; - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - west - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - north - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - west - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - north - { - type zeroGradient; - value uniform 0.1; - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - west - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - south - { - type zeroGradient; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - south - { - type zeroGradient; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - south - { - type fixedFluxPressure; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - east - { - type fixedFluxPressure; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - south - { - type fixedValue; - value uniform (0 0 0); - } - north - { - type fixedValue; - value uniform (0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - south - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - north - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.southwest b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.southwest deleted file mode 100755 index 9ab9bc83f..000000000 --- a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.southwest +++ /dev/null @@ -1,313 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - - boundary - { - north - { - type patch; - } - south - { - type patch; - } - west - { - type patch; - } - east - { - type patch; - } - } - - T - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - north - { - type zeroGradient; - value uniform 300; - } - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - east - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - north - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - east - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - north - { - type zeroGradient; - value uniform 0.1; - } - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - east - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - south - { - type zeroGradient; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - south - { - type zeroGradient; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - south - { - type fixedFluxPressure; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - west - { - type fixedFluxPressure; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - south - { - type fixedValue; - value uniform (0 0 0); - } - north - { - type fixedValue; - value uniform (0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - south - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - north - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.west b/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.west deleted file mode 100755 index 34078e2b8..000000000 --- a/exampleCases/example.ADM.ssc/system/changeDictionaryDict.updateBCs.west +++ /dev/null @@ -1,215 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp"; - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - boundary - { - west - { - type patch; - } - east - { - type patch; - } - } - - - T - { - boundaryField - { - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - east - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - east - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - east - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - west - { - type fixedFluxPressure; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - west - { - type fixedValue; - value uniform (0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - west - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/controlDict b/exampleCases/example.ADM.ssc/system/controlDict deleted file mode 100755 index 94f0bacaa..000000000 --- a/exampleCases/example.ADM.ssc/system/controlDict +++ /dev/null @@ -1,61 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object controlDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - - application ABLSolver; - - libs ("libuserfiniteVolume.so" "libuserincompressibleLESModels.so"); - - startFrom startTime; - - startTime 20000.0; - - stopAt endTime; - - endTime 23600.0; - - deltaT 0.5; - - writeControl adjustableRunTime; - - writeInterval 1000.0; - - purgeWrite 0; - - writeFormat binary; - - writePrecision 12; - - writeCompression compressed; - - timeFormat general; - - timePrecision 12; - - runTimeModifiable yes; - - adjustTimeStep no; - - maxCo 0.75; - - maxDeltaT 25.0; - - functions - { - } - -// ************************************************************************* // - diff --git a/exampleCases/example.ADM.ssc/system/controlDict.1 b/exampleCases/example.ADM.ssc/system/controlDict.1 deleted file mode 100755 index 94f0bacaa..000000000 --- a/exampleCases/example.ADM.ssc/system/controlDict.1 +++ /dev/null @@ -1,61 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object controlDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - - application ABLSolver; - - libs ("libuserfiniteVolume.so" "libuserincompressibleLESModels.so"); - - startFrom startTime; - - startTime 20000.0; - - stopAt endTime; - - endTime 23600.0; - - deltaT 0.5; - - writeControl adjustableRunTime; - - writeInterval 1000.0; - - purgeWrite 0; - - writeFormat binary; - - writePrecision 12; - - writeCompression compressed; - - timeFormat general; - - timePrecision 12; - - runTimeModifiable yes; - - adjustTimeStep no; - - maxCo 0.75; - - maxDeltaT 25.0; - - functions - { - } - -// ************************************************************************* // - diff --git a/exampleCases/example.ADM.ssc/system/decomposeParDict b/exampleCases/example.ADM.ssc/system/decomposeParDict deleted file mode 100755 index 565dd1343..000000000 --- a/exampleCases/example.ADM.ssc/system/decomposeParDict +++ /dev/null @@ -1,76 +0,0 @@ -/*-------------------------------*- C++ -*---------------------------------*\ -| ========= | -| \\ / OpenFOAM | -| \\ / | -| \\ / The Open Source CFD Toolbox | -| \\/ http://www.OpenFOAM.org | -\*-------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - note "mesh decomposition control dictionary"; - location "system"; - object decomposeParDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -numberOfSubdomains $nCores; -method $decompType; -preservePatches (north south east west); - -simpleCoeffs -{ - n $decompOrder; - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 3); - delta 0.001; - order xyz; -} - -metisCoeffs -{ - processorWeights - ( - ); -} - -scotchCoeffs -{ - //processorWeights - //( - // 1 - // 1 - // 1 - // 1 - //); - //writeGraph true; - //strategy "b"; -} - -manualCoeffs -{ - dataFile "decompositionData"; -} - - -//// Is the case distributed -distributed no; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/fvSchemes b/exampleCases/example.ADM.ssc/system/fvSchemes deleted file mode 100755 index 12d01ece2..000000000 --- a/exampleCases/example.ADM.ssc/system/fvSchemes +++ /dev/null @@ -1,111 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object fvSchemes; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -ddtSchemes -{ - default backward; -// default CrankNicolson 1.0; -} - -gradSchemes -{ - default Gauss linear; - grad(U) Gauss linear; -} - -divSchemes -{ - default Gauss linear; - //div(phi,U) Gauss linear; - //div(phi,T) Gauss linear; - div(phi,U) Gauss localBlended linear upwind; - div(phi,T) Gauss localBlended linear upwind; - div(R) Gauss linear; - div(U) Gauss linear; - div((nuEff*dev(grad(U).T()))) Gauss linear; - div(B) Gauss linear; - div(phi,B) Gauss linear; - div(phi,k) Gauss linear; -} - -laplacianSchemes -{ - default Gauss linear corrected; - laplacian(rUA,p) Gauss linear corrected; - laplacian((1|A(U)),p) Gauss linear corrected; - laplacian(interpolate((1|A(U))),p) Gauss linear corrected; - laplacian(interpolate((1|A(U))),pd) Gauss linear corrected; - laplacian(nu,U) Gauss linear corrected; - laplacian(nuEff,U) Gauss linear corrected; - laplacian(kappaEff,T) Gauss linear corrected; - laplacian(DBEff,B) Gauss linear corrected; - laplacian(nuSgs,U) Gauss linear corrected; -} - -interpolationSchemes -{ - default linear; -} - -snGradSchemes -{ - default corrected; -} - -fluxRequired -{ - default no; - p_rgh ; -} - -schemeBlending -{ - - // Table of blending factors vs. cell face size. - faceSizeBlendingTable - ( - // area U T - (0.096 0.996 0.980 ) - (0.39 0.996 0.980 ) - (1.563 0.997 0.985 ) - (6.25 0.998 0.990 ) - (25 0.999 0.995 ) - (100 1.000 1.000 ) - (1E6 1.000 1.000 ) - ); - - - // Height above which blending factor begins to transition - // from heightBlendingFactor_z1 to heightBlendingFactor_z2. - heightBlending_z1 800.0; - - // Height above which blending factor is heightBlendingFactor_z2. - heightBlending_z2 1000.0; - - - heightBlendingFactorU_z1 1.0; - heightBlendingFactorU_z2 0.9; - - heightBlendingFactorT_z1 1.0; - heightBlendingFactorT_z2 0.9; - - - // In calculating height, use wall distance or absolute distance. - useWallDistZ false; -} - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/fvSolution b/exampleCases/example.ADM.ssc/system/fvSolution deleted file mode 100755 index 38224f9d0..000000000 --- a/exampleCases/example.ADM.ssc/system/fvSolution +++ /dev/null @@ -1,102 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object fvSolution; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -solvers -{ - p_rgh - { - solver PCG; - preconditioner - { - preconditioner GAMG; - tolerance 1e-05; - relTol 0.01; - smoother DICGaussSeidel; - nPreSweeps 0; - nPostSweeps 2; - nFinestSweeps 2; - cacheAgglomeration true; - nCellsInCoarsestLevel 100; - agglomerator faceAreaPair; - mergeLevels 2; - } - tolerance 1e-06; - relTol 0.01; - maxIter 1000; - } - - p_rghFinal - { - $p_rgh; - relTol 0.0; - } - - "(U|T|k|epsilon|R)" - { - solver PBiCG; - preconditioner DILU; - tolerance 1e-6; - relTol 0.1; - maxIter 1000; - } - - "(U|T|k|epsilon|R)Final" - { - $U; - relTol 0.0; - } - - "(flm|fmm)" - { - solver PBiCG; - preconditioner DILU; - tolerance 1e-6; - relTol 0.1; - } - - "(flm|fmm)Final" - { - $flm; - relTol 0.0; - } - - -} - -PIMPLE -{ - momentumPredictor yes; - nOuterCorrectors 1; - nCorrectors 3; - nNonOrthogonalCorrectors 0; - pRefCell 0; - pRefValue 0; -} - -relaxationFactors -{ - fields - { - } - equations - { - "(U|T|k|epsilon|R)" 1.0; - "(U|T|k|epsilon|R)Final" 1.0; - } -} - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/refineMeshDict.local b/exampleCases/example.ADM.ssc/system/refineMeshDict.local deleted file mode 100755 index da82aa356..000000000 --- a/exampleCases/example.ADM.ssc/system/refineMeshDict.local +++ /dev/null @@ -1,48 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.1.x | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object refineMeshDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -set local; - -coordinateSystem global; -//coordinateSystem patchLocal; - -globalCoeffs -{ - tan1 ( 1 0 0 ); - tan2 ( 0 1 0 ); - normal ( 0 0 1 ); -} - -patchLocalCoeffs -{ - patch top; - tan1 ( 1 0 0 ); - tan2 ( 0 1 0 ); - normal ( 0 0 1 ); -} - -directions ( tan1 tan2 normal ); - -useHexTopology yes; - -geometricCut no; - -writeMesh no; - - -// ************************************************************************* // - diff --git a/exampleCases/example.ADM.ssc/system/sampling/boundaryDataPre b/exampleCases/example.ADM.ssc/system/sampling/boundaryDataPre deleted file mode 100755 index e1ea28fd0..000000000 --- a/exampleCases/example.ADM.ssc/system/sampling/boundaryDataPre +++ /dev/null @@ -1,25 +0,0 @@ - boundaryDataPre - { - type surfaces; - functionObjectLibs ("libsampling.so"); - enabled true; - interpolationScheme isThisNeeded; - outputControl timeStep; - outputInterval 1; - surfaceFormat foamFile; - fields - ( - U - T - k - ); - surfaces - ( - south - { - type patch; - patches (south); - triangulate false; - } - ); - } diff --git a/exampleCases/example.ADM.ssc/system/sampling/fieldAverages b/exampleCases/example.ADM.ssc/system/sampling/fieldAverages deleted file mode 100755 index 84c10394f..000000000 --- a/exampleCases/example.ADM.ssc/system/sampling/fieldAverages +++ /dev/null @@ -1,17 +0,0 @@ - fieldAverages - { - type fieldAverage; - functionObjectLibs ("libfieldFunctionObjects.so"); - enabled true; - outputControl outputTime; - timeStart 17000.0; - fields - ( - Cs - { - mean on; - prime2Mean off; - base time; - } - ); - } diff --git a/exampleCases/example.ADM.ssc/system/sampling/probeData1 b/exampleCases/example.ADM.ssc/system/sampling/probeData1 deleted file mode 100755 index 12938cddb..000000000 --- a/exampleCases/example.ADM.ssc/system/sampling/probeData1 +++ /dev/null @@ -1,223 +0,0 @@ - probe1 - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - U - T - p - p_rgh - kSgs - nuSgs - RdevSgs - qSgs - ); - - probeLocations - ( - (2500.001 500.001 5.001) - (2500.001 500.001 15.001) - (2500.001 500.001 25.001) - (2500.001 500.001 35.001) - (2500.001 500.001 45.001) - (2500.001 500.001 55.001) - (2500.001 500.001 65.001) - (2500.001 500.001 75.001) - (2500.001 500.001 85.001) - (2500.001 500.001 95.001) - (2500.001 500.001 105.001) - (2500.001 500.001 115.001) - (2500.001 500.001 125.001) - (2500.001 500.001 135.001) - (2500.001 500.001 145.001) - (2500.001 500.001 155.001) - (2500.001 500.001 165.001) - (2500.001 500.001 175.001) - (2500.001 500.001 185.001) - (2500.001 500.001 195.001) - (2500.001 500.001 205.001) - (2500.001 500.001 215.001) - (2500.001 500.001 225.001) - (2500.001 500.001 235.001) - (2500.001 500.001 245.001) - (2500.001 500.001 255.001) - (2500.001 500.001 265.001) - (2500.001 500.001 275.001) - (2500.001 500.001 285.001) - (2500.001 500.001 295.001) - (2500.001 500.001 305.001) - (2500.001 500.001 315.001) - (2500.001 500.001 325.001) - (2500.001 500.001 335.001) - (2500.001 500.001 345.001) - (2500.001 500.001 355.001) - (2500.001 500.001 365.001) - (2500.001 500.001 375.001) - (2500.001 500.001 385.001) - (2500.001 500.001 395.001) - (2500.001 500.001 405.001) - (2500.001 500.001 415.001) - (2500.001 500.001 425.001) - (2500.001 500.001 435.001) - (2500.001 500.001 445.001) - (2500.001 500.001 455.001) - (2500.001 500.001 465.001) - (2500.001 500.001 475.001) - (2500.001 500.001 485.001) - (2500.001 500.001 495.001) - (2500.001 500.001 505.001) - (2500.001 500.001 515.001) - (2500.001 500.001 525.001) - (2500.001 500.001 535.001) - (2500.001 500.001 545.001) - (2500.001 500.001 555.001) - (2500.001 500.001 565.001) - (2500.001 500.001 575.001) - (2500.001 500.001 585.001) - (2500.001 500.001 595.001) - (2500.001 500.001 605.001) - (2500.001 500.001 615.001) - (2500.001 500.001 625.001) - (2500.001 500.001 635.001) - (2500.001 500.001 645.001) - (2500.001 500.001 655.001) - (2500.001 500.001 665.001) - (2500.001 500.001 675.001) - (2500.001 500.001 685.001) - (2500.001 500.001 695.001) - (2500.001 500.001 705.001) - (2500.001 500.001 715.001) - (2500.001 500.001 725.001) - (2500.001 500.001 735.001) - (2500.001 500.001 745.001) - (2500.001 500.001 755.001) - (2500.001 500.001 765.001) - (2500.001 500.001 775.001) - (2500.001 500.001 785.001) - (2500.001 500.001 795.001) - (2500.001 500.001 805.001) - (2500.001 500.001 815.001) - (2500.001 500.001 825.001) - (2500.001 500.001 835.001) - (2500.001 500.001 845.001) - (2500.001 500.001 855.001) - (2500.001 500.001 865.001) - (2500.001 500.001 875.001) - (2500.001 500.001 885.001) - (2500.001 500.001 895.001) - (2500.001 500.001 905.001) - (2500.001 500.001 915.001) - (2500.001 500.001 925.001) - (2500.001 500.001 935.001) - (2500.001 500.001 945.001) - (2500.001 500.001 955.001) - (2500.001 500.001 965.001) - (2500.001 500.001 975.001) - (2500.001 500.001 985.001) - (2500.001 500.001 995.001) - (2500.001 500.001 1005.001) - (2500.001 500.001 1015.001) - (2500.001 500.001 1025.001) - (2500.001 500.001 1035.001) - (2500.001 500.001 1045.001) - (2500.001 500.001 1055.001) - (2500.001 500.001 1065.001) - (2500.001 500.001 1075.001) - (2500.001 500.001 1085.001) - (2500.001 500.001 1095.001) - (2500.001 500.001 1105.001) - (2500.001 500.001 1115.001) - (2500.001 500.001 1125.001) - (2500.001 500.001 1135.001) - (2500.001 500.001 1145.001) - (2500.001 500.001 1155.001) - (2500.001 500.001 1165.001) - (2500.001 500.001 1175.001) - (2500.001 500.001 1185.001) - (2500.001 500.001 1195.001) - (2500.001 500.001 1205.001) - (2500.001 500.001 1215.001) - (2500.001 500.001 1225.001) - (2500.001 500.001 1235.001) - (2500.001 500.001 1245.001) - (2500.001 500.001 1255.001) - (2500.001 500.001 1265.001) - (2500.001 500.001 1275.001) - (2500.001 500.001 1285.001) - (2500.001 500.001 1295.001) - (2500.001 500.001 1305.001) - (2500.001 500.001 1315.001) - (2500.001 500.001 1325.001) - (2500.001 500.001 1335.001) - (2500.001 500.001 1345.001) - (2500.001 500.001 1355.001) - (2500.001 500.001 1365.001) - (2500.001 500.001 1375.001) - (2500.001 500.001 1385.001) - (2500.001 500.001 1395.001) - (2500.001 500.001 1405.001) - (2500.001 500.001 1415.001) - (2500.001 500.001 1425.001) - (2500.001 500.001 1435.001) - (2500.001 500.001 1445.001) - (2500.001 500.001 1455.001) - (2500.001 500.001 1465.001) - (2500.001 500.001 1475.001) - (2500.001 500.001 1485.001) - (2500.001 500.001 1495.001) - (2500.001 500.001 1505.001) - (2500.001 500.001 1515.001) - (2500.001 500.001 1525.001) - (2500.001 500.001 1535.001) - (2500.001 500.001 1545.001) - (2500.001 500.001 1555.001) - (2500.001 500.001 1565.001) - (2500.001 500.001 1575.001) - (2500.001 500.001 1585.001) - (2500.001 500.001 1595.001) - (2500.001 500.001 1605.001) - (2500.001 500.001 1615.001) - (2500.001 500.001 1625.001) - (2500.001 500.001 1635.001) - (2500.001 500.001 1645.001) - (2500.001 500.001 1655.001) - (2500.001 500.001 1665.001) - (2500.001 500.001 1675.001) - (2500.001 500.001 1685.001) - (2500.001 500.001 1695.001) - (2500.001 500.001 1705.001) - (2500.001 500.001 1715.001) - (2500.001 500.001 1725.001) - (2500.001 500.001 1735.001) - (2500.001 500.001 1745.001) - (2500.001 500.001 1755.001) - (2500.001 500.001 1765.001) - (2500.001 500.001 1775.001) - (2500.001 500.001 1785.001) - (2500.001 500.001 1795.001) - (2500.001 500.001 1805.001) - (2500.001 500.001 1815.001) - (2500.001 500.001 1825.001) - (2500.001 500.001 1835.001) - (2500.001 500.001 1845.001) - (2500.001 500.001 1855.001) - (2500.001 500.001 1865.001) - (2500.001 500.001 1875.001) - (2500.001 500.001 1885.001) - (2500.001 500.001 1895.001) - (2500.001 500.001 1905.001) - (2500.001 500.001 1915.001) - (2500.001 500.001 1925.001) - (2500.001 500.001 1935.001) - (2500.001 500.001 1945.001) - (2500.001 500.001 1955.001) - (2500.001 500.001 1965.001) - (2500.001 500.001 1975.001) - (2500.001 500.001 1985.001) - (2500.001 500.001 1995.001) - ); - } diff --git a/exampleCases/example.ADM.ssc/system/sampling/probeData1S b/exampleCases/example.ADM.ssc/system/sampling/probeData1S deleted file mode 100755 index 5b619fadc..000000000 --- a/exampleCases/example.ADM.ssc/system/sampling/probeData1S +++ /dev/null @@ -1,18 +0,0 @@ - probe1S - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - Rwall - qwall - ); - - probeLocations - ( - (2500.001 500.001 0.0) - ); - } diff --git a/exampleCases/example.ADM.ssc/system/sampling/probeData2 b/exampleCases/example.ADM.ssc/system/sampling/probeData2 deleted file mode 100755 index 01dc86420..000000000 --- a/exampleCases/example.ADM.ssc/system/sampling/probeData2 +++ /dev/null @@ -1,223 +0,0 @@ - probe2 - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - U - T - p - p_rgh - kSgs - nuSgs - RdevSgs - qSgs - ); - - probeLocations - ( - (2500.001 1500.001 5.001) - (2500.001 1500.001 15.001) - (2500.001 1500.001 25.001) - (2500.001 1500.001 35.001) - (2500.001 1500.001 45.001) - (2500.001 1500.001 55.001) - (2500.001 1500.001 65.001) - (2500.001 1500.001 75.001) - (2500.001 1500.001 85.001) - (2500.001 1500.001 95.001) - (2500.001 1500.001 105.001) - (2500.001 1500.001 115.001) - (2500.001 1500.001 125.001) - (2500.001 1500.001 135.001) - (2500.001 1500.001 145.001) - (2500.001 1500.001 155.001) - (2500.001 1500.001 165.001) - (2500.001 1500.001 175.001) - (2500.001 1500.001 185.001) - (2500.001 1500.001 195.001) - (2500.001 1500.001 205.001) - (2500.001 1500.001 215.001) - (2500.001 1500.001 225.001) - (2500.001 1500.001 235.001) - (2500.001 1500.001 245.001) - (2500.001 1500.001 255.001) - (2500.001 1500.001 265.001) - (2500.001 1500.001 275.001) - (2500.001 1500.001 285.001) - (2500.001 1500.001 295.001) - (2500.001 1500.001 305.001) - (2500.001 1500.001 315.001) - (2500.001 1500.001 325.001) - (2500.001 1500.001 335.001) - (2500.001 1500.001 345.001) - (2500.001 1500.001 355.001) - (2500.001 1500.001 365.001) - (2500.001 1500.001 375.001) - (2500.001 1500.001 385.001) - (2500.001 1500.001 395.001) - (2500.001 1500.001 405.001) - (2500.001 1500.001 415.001) - (2500.001 1500.001 425.001) - (2500.001 1500.001 435.001) - (2500.001 1500.001 445.001) - (2500.001 1500.001 455.001) - (2500.001 1500.001 465.001) - (2500.001 1500.001 475.001) - (2500.001 1500.001 485.001) - (2500.001 1500.001 495.001) - (2500.001 1500.001 505.001) - (2500.001 1500.001 515.001) - (2500.001 1500.001 525.001) - (2500.001 1500.001 535.001) - (2500.001 1500.001 545.001) - (2500.001 1500.001 555.001) - (2500.001 1500.001 565.001) - (2500.001 1500.001 575.001) - (2500.001 1500.001 585.001) - (2500.001 1500.001 595.001) - (2500.001 1500.001 605.001) - (2500.001 1500.001 615.001) - (2500.001 1500.001 625.001) - (2500.001 1500.001 635.001) - (2500.001 1500.001 645.001) - (2500.001 1500.001 655.001) - (2500.001 1500.001 665.001) - (2500.001 1500.001 675.001) - (2500.001 1500.001 685.001) - (2500.001 1500.001 695.001) - (2500.001 1500.001 705.001) - (2500.001 1500.001 715.001) - (2500.001 1500.001 725.001) - (2500.001 1500.001 735.001) - (2500.001 1500.001 745.001) - (2500.001 1500.001 755.001) - (2500.001 1500.001 765.001) - (2500.001 1500.001 775.001) - (2500.001 1500.001 785.001) - (2500.001 1500.001 795.001) - (2500.001 1500.001 805.001) - (2500.001 1500.001 815.001) - (2500.001 1500.001 825.001) - (2500.001 1500.001 835.001) - (2500.001 1500.001 845.001) - (2500.001 1500.001 855.001) - (2500.001 1500.001 865.001) - (2500.001 1500.001 875.001) - (2500.001 1500.001 885.001) - (2500.001 1500.001 895.001) - (2500.001 1500.001 905.001) - (2500.001 1500.001 915.001) - (2500.001 1500.001 925.001) - (2500.001 1500.001 935.001) - (2500.001 1500.001 945.001) - (2500.001 1500.001 955.001) - (2500.001 1500.001 965.001) - (2500.001 1500.001 975.001) - (2500.001 1500.001 985.001) - (2500.001 1500.001 995.001) - (2500.001 1500.001 1005.001) - (2500.001 1500.001 1015.001) - (2500.001 1500.001 1025.001) - (2500.001 1500.001 1035.001) - (2500.001 1500.001 1045.001) - (2500.001 1500.001 1055.001) - (2500.001 1500.001 1065.001) - (2500.001 1500.001 1075.001) - (2500.001 1500.001 1085.001) - (2500.001 1500.001 1095.001) - (2500.001 1500.001 1105.001) - (2500.001 1500.001 1115.001) - (2500.001 1500.001 1125.001) - (2500.001 1500.001 1135.001) - (2500.001 1500.001 1145.001) - (2500.001 1500.001 1155.001) - (2500.001 1500.001 1165.001) - (2500.001 1500.001 1175.001) - (2500.001 1500.001 1185.001) - (2500.001 1500.001 1195.001) - (2500.001 1500.001 1205.001) - (2500.001 1500.001 1215.001) - (2500.001 1500.001 1225.001) - (2500.001 1500.001 1235.001) - (2500.001 1500.001 1245.001) - (2500.001 1500.001 1255.001) - (2500.001 1500.001 1265.001) - (2500.001 1500.001 1275.001) - (2500.001 1500.001 1285.001) - (2500.001 1500.001 1295.001) - (2500.001 1500.001 1305.001) - (2500.001 1500.001 1315.001) - (2500.001 1500.001 1325.001) - (2500.001 1500.001 1335.001) - (2500.001 1500.001 1345.001) - (2500.001 1500.001 1355.001) - (2500.001 1500.001 1365.001) - (2500.001 1500.001 1375.001) - (2500.001 1500.001 1385.001) - (2500.001 1500.001 1395.001) - (2500.001 1500.001 1405.001) - (2500.001 1500.001 1415.001) - (2500.001 1500.001 1425.001) - (2500.001 1500.001 1435.001) - (2500.001 1500.001 1445.001) - (2500.001 1500.001 1455.001) - (2500.001 1500.001 1465.001) - (2500.001 1500.001 1475.001) - (2500.001 1500.001 1485.001) - (2500.001 1500.001 1495.001) - (2500.001 1500.001 1505.001) - (2500.001 1500.001 1515.001) - (2500.001 1500.001 1525.001) - (2500.001 1500.001 1535.001) - (2500.001 1500.001 1545.001) - (2500.001 1500.001 1555.001) - (2500.001 1500.001 1565.001) - (2500.001 1500.001 1575.001) - (2500.001 1500.001 1585.001) - (2500.001 1500.001 1595.001) - (2500.001 1500.001 1605.001) - (2500.001 1500.001 1615.001) - (2500.001 1500.001 1625.001) - (2500.001 1500.001 1635.001) - (2500.001 1500.001 1645.001) - (2500.001 1500.001 1655.001) - (2500.001 1500.001 1665.001) - (2500.001 1500.001 1675.001) - (2500.001 1500.001 1685.001) - (2500.001 1500.001 1695.001) - (2500.001 1500.001 1705.001) - (2500.001 1500.001 1715.001) - (2500.001 1500.001 1725.001) - (2500.001 1500.001 1735.001) - (2500.001 1500.001 1745.001) - (2500.001 1500.001 1755.001) - (2500.001 1500.001 1765.001) - (2500.001 1500.001 1775.001) - (2500.001 1500.001 1785.001) - (2500.001 1500.001 1795.001) - (2500.001 1500.001 1805.001) - (2500.001 1500.001 1815.001) - (2500.001 1500.001 1825.001) - (2500.001 1500.001 1835.001) - (2500.001 1500.001 1845.001) - (2500.001 1500.001 1855.001) - (2500.001 1500.001 1865.001) - (2500.001 1500.001 1875.001) - (2500.001 1500.001 1885.001) - (2500.001 1500.001 1895.001) - (2500.001 1500.001 1905.001) - (2500.001 1500.001 1915.001) - (2500.001 1500.001 1925.001) - (2500.001 1500.001 1935.001) - (2500.001 1500.001 1945.001) - (2500.001 1500.001 1955.001) - (2500.001 1500.001 1965.001) - (2500.001 1500.001 1975.001) - (2500.001 1500.001 1985.001) - (2500.001 1500.001 1995.001) - ); - } diff --git a/exampleCases/example.ADM.ssc/system/sampling/probeData2S b/exampleCases/example.ADM.ssc/system/sampling/probeData2S deleted file mode 100755 index 7e81799a0..000000000 --- a/exampleCases/example.ADM.ssc/system/sampling/probeData2S +++ /dev/null @@ -1,18 +0,0 @@ - probe2S - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - Rwall - qwall - ); - - probeLocations - ( - (2500.001 1500.001 0.0) - ); - } diff --git a/exampleCases/example.ADM.ssc/system/sampling/probeData3 b/exampleCases/example.ADM.ssc/system/sampling/probeData3 deleted file mode 100755 index 2a91805b2..000000000 --- a/exampleCases/example.ADM.ssc/system/sampling/probeData3 +++ /dev/null @@ -1,223 +0,0 @@ - probe3 - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - U - T - p - p_rgh - kSgs - nuSgs - RdevSgs - qSgs - ); - - probeLocations - ( - (2500.001 2500.001 5.001) - (2500.001 2500.001 15.001) - (2500.001 2500.001 25.001) - (2500.001 2500.001 35.001) - (2500.001 2500.001 45.001) - (2500.001 2500.001 55.001) - (2500.001 2500.001 65.001) - (2500.001 2500.001 75.001) - (2500.001 2500.001 85.001) - (2500.001 2500.001 95.001) - (2500.001 2500.001 105.001) - (2500.001 2500.001 115.001) - (2500.001 2500.001 125.001) - (2500.001 2500.001 135.001) - (2500.001 2500.001 145.001) - (2500.001 2500.001 155.001) - (2500.001 2500.001 165.001) - (2500.001 2500.001 175.001) - (2500.001 2500.001 185.001) - (2500.001 2500.001 195.001) - (2500.001 2500.001 205.001) - (2500.001 2500.001 215.001) - (2500.001 2500.001 225.001) - (2500.001 2500.001 235.001) - (2500.001 2500.001 245.001) - (2500.001 2500.001 255.001) - (2500.001 2500.001 265.001) - (2500.001 2500.001 275.001) - (2500.001 2500.001 285.001) - (2500.001 2500.001 295.001) - (2500.001 2500.001 305.001) - (2500.001 2500.001 315.001) - (2500.001 2500.001 325.001) - (2500.001 2500.001 335.001) - (2500.001 2500.001 345.001) - (2500.001 2500.001 355.001) - (2500.001 2500.001 365.001) - (2500.001 2500.001 375.001) - (2500.001 2500.001 385.001) - (2500.001 2500.001 395.001) - (2500.001 2500.001 405.001) - (2500.001 2500.001 415.001) - (2500.001 2500.001 425.001) - (2500.001 2500.001 435.001) - (2500.001 2500.001 445.001) - (2500.001 2500.001 455.001) - (2500.001 2500.001 465.001) - (2500.001 2500.001 475.001) - (2500.001 2500.001 485.001) - (2500.001 2500.001 495.001) - (2500.001 2500.001 505.001) - (2500.001 2500.001 515.001) - (2500.001 2500.001 525.001) - (2500.001 2500.001 535.001) - (2500.001 2500.001 545.001) - (2500.001 2500.001 555.001) - (2500.001 2500.001 565.001) - (2500.001 2500.001 575.001) - (2500.001 2500.001 585.001) - (2500.001 2500.001 595.001) - (2500.001 2500.001 605.001) - (2500.001 2500.001 615.001) - (2500.001 2500.001 625.001) - (2500.001 2500.001 635.001) - (2500.001 2500.001 645.001) - (2500.001 2500.001 655.001) - (2500.001 2500.001 665.001) - (2500.001 2500.001 675.001) - (2500.001 2500.001 685.001) - (2500.001 2500.001 695.001) - (2500.001 2500.001 705.001) - (2500.001 2500.001 715.001) - (2500.001 2500.001 725.001) - (2500.001 2500.001 735.001) - (2500.001 2500.001 745.001) - (2500.001 2500.001 755.001) - (2500.001 2500.001 765.001) - (2500.001 2500.001 775.001) - (2500.001 2500.001 785.001) - (2500.001 2500.001 795.001) - (2500.001 2500.001 805.001) - (2500.001 2500.001 815.001) - (2500.001 2500.001 825.001) - (2500.001 2500.001 835.001) - (2500.001 2500.001 845.001) - (2500.001 2500.001 855.001) - (2500.001 2500.001 865.001) - (2500.001 2500.001 875.001) - (2500.001 2500.001 885.001) - (2500.001 2500.001 895.001) - (2500.001 2500.001 905.001) - (2500.001 2500.001 915.001) - (2500.001 2500.001 925.001) - (2500.001 2500.001 935.001) - (2500.001 2500.001 945.001) - (2500.001 2500.001 955.001) - (2500.001 2500.001 965.001) - (2500.001 2500.001 975.001) - (2500.001 2500.001 985.001) - (2500.001 2500.001 995.001) - (2500.001 2500.001 1005.001) - (2500.001 2500.001 1015.001) - (2500.001 2500.001 1025.001) - (2500.001 2500.001 1035.001) - (2500.001 2500.001 1045.001) - (2500.001 2500.001 1055.001) - (2500.001 2500.001 1065.001) - (2500.001 2500.001 1075.001) - (2500.001 2500.001 1085.001) - (2500.001 2500.001 1095.001) - (2500.001 2500.001 1105.001) - (2500.001 2500.001 1115.001) - (2500.001 2500.001 1125.001) - (2500.001 2500.001 1135.001) - (2500.001 2500.001 1145.001) - (2500.001 2500.001 1155.001) - (2500.001 2500.001 1165.001) - (2500.001 2500.001 1175.001) - (2500.001 2500.001 1185.001) - (2500.001 2500.001 1195.001) - (2500.001 2500.001 1205.001) - (2500.001 2500.001 1215.001) - (2500.001 2500.001 1225.001) - (2500.001 2500.001 1235.001) - (2500.001 2500.001 1245.001) - (2500.001 2500.001 1255.001) - (2500.001 2500.001 1265.001) - (2500.001 2500.001 1275.001) - (2500.001 2500.001 1285.001) - (2500.001 2500.001 1295.001) - (2500.001 2500.001 1305.001) - (2500.001 2500.001 1315.001) - (2500.001 2500.001 1325.001) - (2500.001 2500.001 1335.001) - (2500.001 2500.001 1345.001) - (2500.001 2500.001 1355.001) - (2500.001 2500.001 1365.001) - (2500.001 2500.001 1375.001) - (2500.001 2500.001 1385.001) - (2500.001 2500.001 1395.001) - (2500.001 2500.001 1405.001) - (2500.001 2500.001 1415.001) - (2500.001 2500.001 1425.001) - (2500.001 2500.001 1435.001) - (2500.001 2500.001 1445.001) - (2500.001 2500.001 1455.001) - (2500.001 2500.001 1465.001) - (2500.001 2500.001 1475.001) - (2500.001 2500.001 1485.001) - (2500.001 2500.001 1495.001) - (2500.001 2500.001 1505.001) - (2500.001 2500.001 1515.001) - (2500.001 2500.001 1525.001) - (2500.001 2500.001 1535.001) - (2500.001 2500.001 1545.001) - (2500.001 2500.001 1555.001) - (2500.001 2500.001 1565.001) - (2500.001 2500.001 1575.001) - (2500.001 2500.001 1585.001) - (2500.001 2500.001 1595.001) - (2500.001 2500.001 1605.001) - (2500.001 2500.001 1615.001) - (2500.001 2500.001 1625.001) - (2500.001 2500.001 1635.001) - (2500.001 2500.001 1645.001) - (2500.001 2500.001 1655.001) - (2500.001 2500.001 1665.001) - (2500.001 2500.001 1675.001) - (2500.001 2500.001 1685.001) - (2500.001 2500.001 1695.001) - (2500.001 2500.001 1705.001) - (2500.001 2500.001 1715.001) - (2500.001 2500.001 1725.001) - (2500.001 2500.001 1735.001) - (2500.001 2500.001 1745.001) - (2500.001 2500.001 1755.001) - (2500.001 2500.001 1765.001) - (2500.001 2500.001 1775.001) - (2500.001 2500.001 1785.001) - (2500.001 2500.001 1795.001) - (2500.001 2500.001 1805.001) - (2500.001 2500.001 1815.001) - (2500.001 2500.001 1825.001) - (2500.001 2500.001 1835.001) - (2500.001 2500.001 1845.001) - (2500.001 2500.001 1855.001) - (2500.001 2500.001 1865.001) - (2500.001 2500.001 1875.001) - (2500.001 2500.001 1885.001) - (2500.001 2500.001 1895.001) - (2500.001 2500.001 1905.001) - (2500.001 2500.001 1915.001) - (2500.001 2500.001 1925.001) - (2500.001 2500.001 1935.001) - (2500.001 2500.001 1945.001) - (2500.001 2500.001 1955.001) - (2500.001 2500.001 1965.001) - (2500.001 2500.001 1975.001) - (2500.001 2500.001 1985.001) - (2500.001 2500.001 1995.001) - ); - } diff --git a/exampleCases/example.ADM.ssc/system/sampling/probeData3S b/exampleCases/example.ADM.ssc/system/sampling/probeData3S deleted file mode 100755 index f1da35cd9..000000000 --- a/exampleCases/example.ADM.ssc/system/sampling/probeData3S +++ /dev/null @@ -1,18 +0,0 @@ - probe3S - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - Rwall - qwall - ); - - probeLocations - ( - (2500.001 2500.001 0.0) - ); - } diff --git a/exampleCases/example.ADM.ssc/system/sampling/probeData4 b/exampleCases/example.ADM.ssc/system/sampling/probeData4 deleted file mode 100755 index 0bfd6b3fb..000000000 --- a/exampleCases/example.ADM.ssc/system/sampling/probeData4 +++ /dev/null @@ -1,223 +0,0 @@ - probe4 - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - U - T - p - p_rgh - kSgs - nuSgs - RdevSgs - qSgs - ); - - probeLocations - ( - (2500.001 3500.001 5.001) - (2500.001 3500.001 15.001) - (2500.001 3500.001 25.001) - (2500.001 3500.001 35.001) - (2500.001 3500.001 45.001) - (2500.001 3500.001 55.001) - (2500.001 3500.001 65.001) - (2500.001 3500.001 75.001) - (2500.001 3500.001 85.001) - (2500.001 3500.001 95.001) - (2500.001 3500.001 105.001) - (2500.001 3500.001 115.001) - (2500.001 3500.001 125.001) - (2500.001 3500.001 135.001) - (2500.001 3500.001 145.001) - (2500.001 3500.001 155.001) - (2500.001 3500.001 165.001) - (2500.001 3500.001 175.001) - (2500.001 3500.001 185.001) - (2500.001 3500.001 195.001) - (2500.001 3500.001 205.001) - (2500.001 3500.001 215.001) - (2500.001 3500.001 225.001) - (2500.001 3500.001 235.001) - (2500.001 3500.001 245.001) - (2500.001 3500.001 255.001) - (2500.001 3500.001 265.001) - (2500.001 3500.001 275.001) - (2500.001 3500.001 285.001) - (2500.001 3500.001 295.001) - (2500.001 3500.001 305.001) - (2500.001 3500.001 315.001) - (2500.001 3500.001 325.001) - (2500.001 3500.001 335.001) - (2500.001 3500.001 345.001) - (2500.001 3500.001 355.001) - (2500.001 3500.001 365.001) - (2500.001 3500.001 375.001) - (2500.001 3500.001 385.001) - (2500.001 3500.001 395.001) - (2500.001 3500.001 405.001) - (2500.001 3500.001 415.001) - (2500.001 3500.001 425.001) - (2500.001 3500.001 435.001) - (2500.001 3500.001 445.001) - (2500.001 3500.001 455.001) - (2500.001 3500.001 465.001) - (2500.001 3500.001 475.001) - (2500.001 3500.001 485.001) - (2500.001 3500.001 495.001) - (2500.001 3500.001 505.001) - (2500.001 3500.001 515.001) - (2500.001 3500.001 525.001) - (2500.001 3500.001 535.001) - (2500.001 3500.001 545.001) - (2500.001 3500.001 555.001) - (2500.001 3500.001 565.001) - (2500.001 3500.001 575.001) - (2500.001 3500.001 585.001) - (2500.001 3500.001 595.001) - (2500.001 3500.001 605.001) - (2500.001 3500.001 615.001) - (2500.001 3500.001 625.001) - (2500.001 3500.001 635.001) - (2500.001 3500.001 645.001) - (2500.001 3500.001 655.001) - (2500.001 3500.001 665.001) - (2500.001 3500.001 675.001) - (2500.001 3500.001 685.001) - (2500.001 3500.001 695.001) - (2500.001 3500.001 705.001) - (2500.001 3500.001 715.001) - (2500.001 3500.001 725.001) - (2500.001 3500.001 735.001) - (2500.001 3500.001 745.001) - (2500.001 3500.001 755.001) - (2500.001 3500.001 765.001) - (2500.001 3500.001 775.001) - (2500.001 3500.001 785.001) - (2500.001 3500.001 795.001) - (2500.001 3500.001 805.001) - (2500.001 3500.001 815.001) - (2500.001 3500.001 825.001) - (2500.001 3500.001 835.001) - (2500.001 3500.001 845.001) - (2500.001 3500.001 855.001) - (2500.001 3500.001 865.001) - (2500.001 3500.001 875.001) - (2500.001 3500.001 885.001) - (2500.001 3500.001 895.001) - (2500.001 3500.001 905.001) - (2500.001 3500.001 915.001) - (2500.001 3500.001 925.001) - (2500.001 3500.001 935.001) - (2500.001 3500.001 945.001) - (2500.001 3500.001 955.001) - (2500.001 3500.001 965.001) - (2500.001 3500.001 975.001) - (2500.001 3500.001 985.001) - (2500.001 3500.001 995.001) - (2500.001 3500.001 1005.001) - (2500.001 3500.001 1015.001) - (2500.001 3500.001 1025.001) - (2500.001 3500.001 1035.001) - (2500.001 3500.001 1045.001) - (2500.001 3500.001 1055.001) - (2500.001 3500.001 1065.001) - (2500.001 3500.001 1075.001) - (2500.001 3500.001 1085.001) - (2500.001 3500.001 1095.001) - (2500.001 3500.001 1105.001) - (2500.001 3500.001 1115.001) - (2500.001 3500.001 1125.001) - (2500.001 3500.001 1135.001) - (2500.001 3500.001 1145.001) - (2500.001 3500.001 1155.001) - (2500.001 3500.001 1165.001) - (2500.001 3500.001 1175.001) - (2500.001 3500.001 1185.001) - (2500.001 3500.001 1195.001) - (2500.001 3500.001 1205.001) - (2500.001 3500.001 1215.001) - (2500.001 3500.001 1225.001) - (2500.001 3500.001 1235.001) - (2500.001 3500.001 1245.001) - (2500.001 3500.001 1255.001) - (2500.001 3500.001 1265.001) - (2500.001 3500.001 1275.001) - (2500.001 3500.001 1285.001) - (2500.001 3500.001 1295.001) - (2500.001 3500.001 1305.001) - (2500.001 3500.001 1315.001) - (2500.001 3500.001 1325.001) - (2500.001 3500.001 1335.001) - (2500.001 3500.001 1345.001) - (2500.001 3500.001 1355.001) - (2500.001 3500.001 1365.001) - (2500.001 3500.001 1375.001) - (2500.001 3500.001 1385.001) - (2500.001 3500.001 1395.001) - (2500.001 3500.001 1405.001) - (2500.001 3500.001 1415.001) - (2500.001 3500.001 1425.001) - (2500.001 3500.001 1435.001) - (2500.001 3500.001 1445.001) - (2500.001 3500.001 1455.001) - (2500.001 3500.001 1465.001) - (2500.001 3500.001 1475.001) - (2500.001 3500.001 1485.001) - (2500.001 3500.001 1495.001) - (2500.001 3500.001 1505.001) - (2500.001 3500.001 1515.001) - (2500.001 3500.001 1525.001) - (2500.001 3500.001 1535.001) - (2500.001 3500.001 1545.001) - (2500.001 3500.001 1555.001) - (2500.001 3500.001 1565.001) - (2500.001 3500.001 1575.001) - (2500.001 3500.001 1585.001) - (2500.001 3500.001 1595.001) - (2500.001 3500.001 1605.001) - (2500.001 3500.001 1615.001) - (2500.001 3500.001 1625.001) - (2500.001 3500.001 1635.001) - (2500.001 3500.001 1645.001) - (2500.001 3500.001 1655.001) - (2500.001 3500.001 1665.001) - (2500.001 3500.001 1675.001) - (2500.001 3500.001 1685.001) - (2500.001 3500.001 1695.001) - (2500.001 3500.001 1705.001) - (2500.001 3500.001 1715.001) - (2500.001 3500.001 1725.001) - (2500.001 3500.001 1735.001) - (2500.001 3500.001 1745.001) - (2500.001 3500.001 1755.001) - (2500.001 3500.001 1765.001) - (2500.001 3500.001 1775.001) - (2500.001 3500.001 1785.001) - (2500.001 3500.001 1795.001) - (2500.001 3500.001 1805.001) - (2500.001 3500.001 1815.001) - (2500.001 3500.001 1825.001) - (2500.001 3500.001 1835.001) - (2500.001 3500.001 1845.001) - (2500.001 3500.001 1855.001) - (2500.001 3500.001 1865.001) - (2500.001 3500.001 1875.001) - (2500.001 3500.001 1885.001) - (2500.001 3500.001 1895.001) - (2500.001 3500.001 1905.001) - (2500.001 3500.001 1915.001) - (2500.001 3500.001 1925.001) - (2500.001 3500.001 1935.001) - (2500.001 3500.001 1945.001) - (2500.001 3500.001 1955.001) - (2500.001 3500.001 1965.001) - (2500.001 3500.001 1975.001) - (2500.001 3500.001 1985.001) - (2500.001 3500.001 1995.001) - ); - } diff --git a/exampleCases/example.ADM.ssc/system/sampling/probeData4S b/exampleCases/example.ADM.ssc/system/sampling/probeData4S deleted file mode 100755 index 470fc9f28..000000000 --- a/exampleCases/example.ADM.ssc/system/sampling/probeData4S +++ /dev/null @@ -1,18 +0,0 @@ - probe4S - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - Rwall - qwall - ); - - probeLocations - ( - (2500.001 3500.001 0.0) - ); - } diff --git a/exampleCases/example.ADM.ssc/system/sampling/probeData5 b/exampleCases/example.ADM.ssc/system/sampling/probeData5 deleted file mode 100755 index eac0bc00c..000000000 --- a/exampleCases/example.ADM.ssc/system/sampling/probeData5 +++ /dev/null @@ -1,223 +0,0 @@ - probe5 - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - U - T - p - p_rgh - kSgs - nuSgs - RdevSgs - qSgs - ); - - probeLocations - ( - (2500.001 4500.001 5.001) - (2500.001 4500.001 15.001) - (2500.001 4500.001 25.001) - (2500.001 4500.001 35.001) - (2500.001 4500.001 45.001) - (2500.001 4500.001 55.001) - (2500.001 4500.001 65.001) - (2500.001 4500.001 75.001) - (2500.001 4500.001 85.001) - (2500.001 4500.001 95.001) - (2500.001 4500.001 105.001) - (2500.001 4500.001 115.001) - (2500.001 4500.001 125.001) - (2500.001 4500.001 135.001) - (2500.001 4500.001 145.001) - (2500.001 4500.001 155.001) - (2500.001 4500.001 165.001) - (2500.001 4500.001 175.001) - (2500.001 4500.001 185.001) - (2500.001 4500.001 195.001) - (2500.001 4500.001 205.001) - (2500.001 4500.001 215.001) - (2500.001 4500.001 225.001) - (2500.001 4500.001 235.001) - (2500.001 4500.001 245.001) - (2500.001 4500.001 255.001) - (2500.001 4500.001 265.001) - (2500.001 4500.001 275.001) - (2500.001 4500.001 285.001) - (2500.001 4500.001 295.001) - (2500.001 4500.001 305.001) - (2500.001 4500.001 315.001) - (2500.001 4500.001 325.001) - (2500.001 4500.001 335.001) - (2500.001 4500.001 345.001) - (2500.001 4500.001 355.001) - (2500.001 4500.001 365.001) - (2500.001 4500.001 375.001) - (2500.001 4500.001 385.001) - (2500.001 4500.001 395.001) - (2500.001 4500.001 405.001) - (2500.001 4500.001 415.001) - (2500.001 4500.001 425.001) - (2500.001 4500.001 435.001) - (2500.001 4500.001 445.001) - (2500.001 4500.001 455.001) - (2500.001 4500.001 465.001) - (2500.001 4500.001 475.001) - (2500.001 4500.001 485.001) - (2500.001 4500.001 495.001) - (2500.001 4500.001 505.001) - (2500.001 4500.001 515.001) - (2500.001 4500.001 525.001) - (2500.001 4500.001 535.001) - (2500.001 4500.001 545.001) - (2500.001 4500.001 555.001) - (2500.001 4500.001 565.001) - (2500.001 4500.001 575.001) - (2500.001 4500.001 585.001) - (2500.001 4500.001 595.001) - (2500.001 4500.001 605.001) - (2500.001 4500.001 615.001) - (2500.001 4500.001 625.001) - (2500.001 4500.001 635.001) - (2500.001 4500.001 645.001) - (2500.001 4500.001 655.001) - (2500.001 4500.001 665.001) - (2500.001 4500.001 675.001) - (2500.001 4500.001 685.001) - (2500.001 4500.001 695.001) - (2500.001 4500.001 705.001) - (2500.001 4500.001 715.001) - (2500.001 4500.001 725.001) - (2500.001 4500.001 735.001) - (2500.001 4500.001 745.001) - (2500.001 4500.001 755.001) - (2500.001 4500.001 765.001) - (2500.001 4500.001 775.001) - (2500.001 4500.001 785.001) - (2500.001 4500.001 795.001) - (2500.001 4500.001 805.001) - (2500.001 4500.001 815.001) - (2500.001 4500.001 825.001) - (2500.001 4500.001 835.001) - (2500.001 4500.001 845.001) - (2500.001 4500.001 855.001) - (2500.001 4500.001 865.001) - (2500.001 4500.001 875.001) - (2500.001 4500.001 885.001) - (2500.001 4500.001 895.001) - (2500.001 4500.001 905.001) - (2500.001 4500.001 915.001) - (2500.001 4500.001 925.001) - (2500.001 4500.001 935.001) - (2500.001 4500.001 945.001) - (2500.001 4500.001 955.001) - (2500.001 4500.001 965.001) - (2500.001 4500.001 975.001) - (2500.001 4500.001 985.001) - (2500.001 4500.001 995.001) - (2500.001 4500.001 1005.001) - (2500.001 4500.001 1015.001) - (2500.001 4500.001 1025.001) - (2500.001 4500.001 1035.001) - (2500.001 4500.001 1045.001) - (2500.001 4500.001 1055.001) - (2500.001 4500.001 1065.001) - (2500.001 4500.001 1075.001) - (2500.001 4500.001 1085.001) - (2500.001 4500.001 1095.001) - (2500.001 4500.001 1105.001) - (2500.001 4500.001 1115.001) - (2500.001 4500.001 1125.001) - (2500.001 4500.001 1135.001) - (2500.001 4500.001 1145.001) - (2500.001 4500.001 1155.001) - (2500.001 4500.001 1165.001) - (2500.001 4500.001 1175.001) - (2500.001 4500.001 1185.001) - (2500.001 4500.001 1195.001) - (2500.001 4500.001 1205.001) - (2500.001 4500.001 1215.001) - (2500.001 4500.001 1225.001) - (2500.001 4500.001 1235.001) - (2500.001 4500.001 1245.001) - (2500.001 4500.001 1255.001) - (2500.001 4500.001 1265.001) - (2500.001 4500.001 1275.001) - (2500.001 4500.001 1285.001) - (2500.001 4500.001 1295.001) - (2500.001 4500.001 1305.001) - (2500.001 4500.001 1315.001) - (2500.001 4500.001 1325.001) - (2500.001 4500.001 1335.001) - (2500.001 4500.001 1345.001) - (2500.001 4500.001 1355.001) - (2500.001 4500.001 1365.001) - (2500.001 4500.001 1375.001) - (2500.001 4500.001 1385.001) - (2500.001 4500.001 1395.001) - (2500.001 4500.001 1405.001) - (2500.001 4500.001 1415.001) - (2500.001 4500.001 1425.001) - (2500.001 4500.001 1435.001) - (2500.001 4500.001 1445.001) - (2500.001 4500.001 1455.001) - (2500.001 4500.001 1465.001) - (2500.001 4500.001 1475.001) - (2500.001 4500.001 1485.001) - (2500.001 4500.001 1495.001) - (2500.001 4500.001 1505.001) - (2500.001 4500.001 1515.001) - (2500.001 4500.001 1525.001) - (2500.001 4500.001 1535.001) - (2500.001 4500.001 1545.001) - (2500.001 4500.001 1555.001) - (2500.001 4500.001 1565.001) - (2500.001 4500.001 1575.001) - (2500.001 4500.001 1585.001) - (2500.001 4500.001 1595.001) - (2500.001 4500.001 1605.001) - (2500.001 4500.001 1615.001) - (2500.001 4500.001 1625.001) - (2500.001 4500.001 1635.001) - (2500.001 4500.001 1645.001) - (2500.001 4500.001 1655.001) - (2500.001 4500.001 1665.001) - (2500.001 4500.001 1675.001) - (2500.001 4500.001 1685.001) - (2500.001 4500.001 1695.001) - (2500.001 4500.001 1705.001) - (2500.001 4500.001 1715.001) - (2500.001 4500.001 1725.001) - (2500.001 4500.001 1735.001) - (2500.001 4500.001 1745.001) - (2500.001 4500.001 1755.001) - (2500.001 4500.001 1765.001) - (2500.001 4500.001 1775.001) - (2500.001 4500.001 1785.001) - (2500.001 4500.001 1795.001) - (2500.001 4500.001 1805.001) - (2500.001 4500.001 1815.001) - (2500.001 4500.001 1825.001) - (2500.001 4500.001 1835.001) - (2500.001 4500.001 1845.001) - (2500.001 4500.001 1855.001) - (2500.001 4500.001 1865.001) - (2500.001 4500.001 1875.001) - (2500.001 4500.001 1885.001) - (2500.001 4500.001 1895.001) - (2500.001 4500.001 1905.001) - (2500.001 4500.001 1915.001) - (2500.001 4500.001 1925.001) - (2500.001 4500.001 1935.001) - (2500.001 4500.001 1945.001) - (2500.001 4500.001 1955.001) - (2500.001 4500.001 1965.001) - (2500.001 4500.001 1975.001) - (2500.001 4500.001 1985.001) - (2500.001 4500.001 1995.001) - ); - } diff --git a/exampleCases/example.ADM.ssc/system/sampling/probeData5S b/exampleCases/example.ADM.ssc/system/sampling/probeData5S deleted file mode 100755 index 5933c36f2..000000000 --- a/exampleCases/example.ADM.ssc/system/sampling/probeData5S +++ /dev/null @@ -1,18 +0,0 @@ - probe5S - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - Rwall - qwall - ); - - probeLocations - ( - (2500.001 4500.001 0.0) - ); - } diff --git a/exampleCases/example.ADM.ssc/system/sampling/sliceDataInstantaneous b/exampleCases/example.ADM.ssc/system/sampling/sliceDataInstantaneous deleted file mode 100755 index 59199fc39..000000000 --- a/exampleCases/example.ADM.ssc/system/sampling/sliceDataInstantaneous +++ /dev/null @@ -1,53 +0,0 @@ - sliceDataInstantaneous - { - type surfaces; - functionObjectLibs ("libsampling.so"); - enabled true; - interpolationScheme cell; - outputControl adjustableTime; - writeInterval 60; - surfaceFormat vtk; - fields - ( - U - T - ); - surfaces - ( - slice_horizontal_1 - { - type plane; - basePoint (1500.01 1500.01 20.01); - normalVector (0 0 1); - triangulate false; - } - slice_horizontal_2 - { - type plane; - basePoint (1500.01 1500.01 80.01); - normalVector (0 0 1); - triangulate false; - } - slice_horizontal_3 - { - type plane; - basePoint (1500.01 1500.01 200.01); - normalVector (0 0 1); - triangulate false; - } - slice_cross_stream - { - type plane; - basePoint (1500.01 1500.01 84.0); - normalVector (0 1 0); - triangulate false; - } - slice_streamwise - { - type plane; - basePoint (1500.01 1500.01 84.0); - normalVector (1 0 0); - triangulate false; - } - ); - } diff --git a/exampleCases/example.ADM.ssc/system/setFieldsABLDict b/exampleCases/example.ADM.ssc/system/setFieldsABLDict deleted file mode 100755 index dacc350ce..000000000 --- a/exampleCases/example.ADM.ssc/system/setFieldsABLDict +++ /dev/null @@ -1,504 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.x | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ - -FoamFile -{ - version 2.0; - format ascii; - - root ""; - case ""; - instance ""; - local ""; - - class dictionary; - object setFieldsABLDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -// Extents of the domain. -xMin $xMin; -yMin $yMin; -zMin $zMin; - -xMax $xMax; -yMax $yMax; -zMax $zMax; - -zRef $zMax; - -// Specify if distance from wall should be used as z. -useWallDistZ false; -scaleVelocityWithHeight false; - - -// Specify how to initialze the base velocity and temperature profile. -//velocityInitType "table"; -//velocityInitType "log"; -velocityInitType "geostrophic"; -//temperatureInitType "table"; -temperatureInitType "simple"; - -// Maximum perturbation of streamwise/spanwise flow near surface. -deltaU 0.25; -deltaV 0.25; - -// Total periods of perturbations in streamwise/spanwise in the domain. -Uperiods 12.0; -Vperiods 12.0; - -// Percentage of domain height (zMax) where peak in perturbation -// magnitude occurs. -zPeak 0.015; - -// Initial height of the center of the capping inversion. -zInversion $zInversion; - -// Width of the capping inversion. -widthInversion $inversionWidth; - -// Potential temperature at the bottom and top of the capping inversion. -Tbottom $TBottom; -Ttop $TTop; - -// Maximum temperature fluctuation size below capping inversion. -TPrimeScale 0.0; - -// Height rate of change of potential temperature above the inversion. -dTdz $TGradUpper; - -// Geostrophic wind speed magnitude. -Ug $U0Mag; - -// Geostrophic wind speed direction. -UgDir $dir; - -// Aerodynamic roughness height of surface. -z0 $z0; - -// von Karman constant. -kappa $kappa; - -// Vertical profile table. -profileTable -( -// z U V T - (0.0 0.0 0.0 273.121917725) - (5.0 1.82671529027 1.98969371553 282.524156211) - (10.0 2.52983624172 2.77228242751 283.156504284) - (15.0 3.01282071998 3.35521702288 283.64108812) - (20.0 3.35996148006 3.78823607698 284.090761147) - (25.0 3.8038057643 4.37960852586 284.554077196) - (30.0 4.03596125279 4.70538923119 284.966777157) - (35.0 4.38133296535 5.23253766126 285.360167677) - (40.0 4.56992779673 5.53523659867 285.747101612) - (45.0 4.80994398595 5.96180841679 286.095879197) - (50.0 5.00816921409 6.32774876853 286.444585293) - (55.0 5.14154903327 6.60160807137 286.787914506) - (60.0 5.36818530188 7.08896005703 287.063199891) - (65.0 5.44703987742 7.27484159809 287.379906732) - (70.0 5.57604433164 7.60608624795 287.638417176) - (75.0 5.72370142776 7.99632935101 287.863981004) - (80.0 5.77619905069 8.15139018101 288.127106742) - (85.0 5.87149793296 8.46369430537 288.331005696) - (90.0 5.98111916718 8.83268873958 288.509035882) - (95.0 6.01697152506 8.97407895539 288.724664101) - (100.0 6.06967854005 9.19927028309 288.909565287) - (105.0 6.1450628792 9.53721293929 289.053124377) - (110.0 6.19167607924 9.76288104253 289.198531813) - (115.0 6.22489630605 9.93628531022 289.344799656) - (120.0 6.27421288656 10.216282683 289.462005) - (125.0 6.32645248876 10.5156368594 289.57393273) - (130.0 6.34668810144 10.6457361726 289.712125634) - (135.0 6.36434613795 10.762203832 289.852433913) - (140.0 6.39842793739 11.0196195883 289.95191863) - (145.0 6.4342454375 11.2919310606 290.047089019) - (150.0 6.45180421766 11.4367005351 290.150649381) - (155.0 6.46406875681 11.544488333 290.256642472) - (160.0 6.48170756073 11.7056278368 290.348224267) - (165.0 6.50382814701 11.9112591447 290.427787992) - (170.0 6.52550956366 12.1127414485 290.506470121) - (175.0 6.54550549533 12.298300329 290.581768788) - (180.0 6.56550142701 12.4838592096 290.657067454) - (185.0 6.58511534034 12.6567515091 290.735008491) - (190.0 6.6045979288 12.8252894701 290.813857884) - (195.0 6.62432001649 12.9896812983 290.892328604) - (200.0 6.64532587961 13.1318488244 290.968769537) - (205.0 6.66633174272 13.2740163505 291.045210471) - (210.0 6.69104111181 13.4098514016 291.117435921) - (215.0 6.72036475996 13.5377966838 291.184409209) - (220.0 6.74968840812 13.6657419659 291.251382497) - (225.0 6.77805691412 13.7640369251 291.318657013) - (230.0 6.80578882059 13.8425700289 291.386132296) - (235.0 6.83352072706 13.9211031327 291.453607578) - (240.0 6.86307156947 13.9862481909 291.518273832) - (245.0 6.89380511232 14.0426881336 291.581113612) - (250.0 6.92453865516 14.0991280764 291.643953391) - (255.0 6.95361693104 14.1462680315 291.704700258) - (260.0 6.98077095142 14.1825967081 291.763014104) - (265.0 7.0079249718 14.2189253847 291.82132795) - (270.0 7.03507703408 14.2541299666 291.879606535) - (275.0 7.0622194383 14.283790106 291.937711201) - (280.0 7.08936184253 14.3134502454 291.995815867) - (285.0 7.11650424675 14.3431103848 292.053920533) - (290.0 7.1430391081 14.369131837 292.11328027) - (295.0 7.16932392788 14.3936557439 292.173156546) - (300.0 7.19560874767 14.4181796507 292.233032822) - (305.0 7.22180906756 14.4424461024 292.292838021) - (310.0 7.24680913749 14.4630556198 292.351633627) - (315.0 7.27180920741 14.4836651372 292.410429232) - (320.0 7.29680927734 14.5042746546 292.469224837) - (325.0 7.32153609499 14.5243042572 292.528664796) - (330.0 7.34543057757 14.5425674214 292.590067475) - (335.0 7.36932506015 14.5608305855 292.651470155) - (340.0 7.39321954273 14.5790937496 292.712872834) - (345.0 7.41696733387 14.597025575 292.773542958) - (350.0 7.44026003553 14.6139294685 292.831940429) - (355.0 7.46355273718 14.6308333621 292.890337899) - (360.0 7.48684543884 14.6477372556 292.94873537) - (365.0 7.51013186129 14.6646271523 293.007149353) - (370.0 7.53322339247 14.68108262 293.066075821) - (375.0 7.55631492366 14.6975380877 293.12500229) - (380.0 7.57940645484 14.7139935554 293.183928758) - (385.0 7.60249798603 14.7304490231 293.242855226) - (390.0 7.6257582057 14.7463924565 293.301506178) - (395.0 7.64912373233 14.7620162427 293.359985132) - (400.0 7.67248925896 14.7776400289 293.418464087) - (405.0 7.69585478559 14.7932638151 293.476943042) - (410.0 7.71922031222 14.8088876013 293.535421996) - (415.0 7.74300228036 14.8230663689 293.592791002) - (420.0 7.7667927399 14.8372156721 293.650137374) - (425.0 7.79058319945 14.8513649753 293.707483747) - (430.0 7.81437365899 14.8655142784 293.76483012) - (435.0 7.83815083397 14.8793492717 293.821767406) - (440.0 7.86181714661 14.8905612872 293.875290779) - (445.0 7.88548345926 14.9017733027 293.928814153) - (450.0 7.9091497719 14.9129853182 293.982337526) - (455.0 7.93281608455 14.9241973336 294.035860899) - (460.0 7.95648239719 14.9354093491 294.089384273) - (465.0 7.97905964048 14.9423301431 294.14128451) - (470.0 8.0016312311 14.9492286641 294.193176323) - (475.0 8.02420282171 14.956127185 294.245068135) - (480.0 8.04677441233 14.9630257059 294.296959948) - (485.0 8.06934600294 14.9699242269 294.34885176) - (490.0 8.0912068028 14.9742300558 294.40025773) - (495.0 8.11235909886 14.9759515346 294.45117942) - (500.0 8.13351139492 14.9776730134 294.502101111) - (505.0 8.15466369098 14.9793944922 294.553022801) - (510.0 8.17581598704 14.981115971 294.603944491) - (515.0 8.19696828309 14.9828374498 294.654866181) - (520.0 8.21724149816 14.9808198644 294.704354156) - (525.0 8.2364694612 14.9743564264 294.752137402) - (530.0 8.25569742424 14.9678929884 294.799920649) - (535.0 8.27492538727 14.9614295505 294.847703896) - (540.0 8.29415335031 14.9549661125 294.895487143) - (545.0 8.31338131334 14.9485026745 294.943270389) - (550.0 8.33260927638 14.9420392365 294.991053636) - (555.0 8.35050488468 14.9266129312 295.036341098) - (560.0 8.36808840645 14.9090871924 295.081043956) - (565.0 8.38567192822 14.8915614535 295.125746813) - (570.0 8.40325544999 14.8740357147 295.170449671) - (575.0 8.42083897176 14.8565099758 295.215152528) - (580.0 8.43842249352 14.838984237 295.259855386) - (585.0 8.45600601529 14.8214584982 295.304558243) - (590.0 8.47264685758 14.7968218302 295.348171206) - (595.0 8.48834031368 14.765038729 295.390688832) - (600.0 8.50403376979 14.7332556278 295.433206459) - (605.0 8.51972722589 14.7014725265 295.475724085) - (610.0 8.53542068199 14.6696894253 295.518241712) - (615.0 8.55111413809 14.6379063241 295.560759338) - (620.0 8.56680759419 14.6061232229 295.603276965) - (625.0 8.5825010503 14.5743401216 295.645794591) - (630.0 8.59715715424 14.5346556613 295.689519112) - (635.0 8.61058749747 14.4856347615 295.734669729) - (640.0 8.62401784069 14.4366138617 295.779820347) - (645.0 8.63744818391 14.3875929619 295.824970964) - (650.0 8.65087852713 14.338572062 295.870121581) - (655.0 8.66430887036 14.2895511622 295.915272198) - (660.0 8.67773921358 14.2405302624 295.960422815) - (665.0 8.6911695568 14.1915093626 296.005573433) - (670.0 8.70459990003 14.1424884628 296.05072405) - (675.0 8.71498597608 14.0837507537 296.096336227) - (680.0 8.72352399234 14.0191143362 296.142228601) - (685.0 8.7320620086 13.9544779188 296.188120975) - (690.0 8.74060002486 13.8898415013 296.234013348) - (695.0 8.74913804112 13.8252050838 296.279905722) - (700.0 8.75767605739 13.7605686663 296.325798096) - (705.0 8.76621407365 13.6959322489 296.371690469) - (710.0 8.77475208991 13.6312958314 296.417582843) - (715.0 8.78329010617 13.5666594139 296.463475217) - (720.0 8.79182812243 13.5020229965 296.50936759) - (725.0 8.79189547444 13.4277463368 296.562527014) - (730.0 8.79098910472 13.3523615098 296.616521801) - (735.0 8.79008273499 13.2769766828 296.670516587) - (740.0 8.78917636527 13.2015918559 296.724511374) - (745.0 8.78826999555 13.1262070289 296.778506161) - (750.0 8.78736362582 13.0508222019 296.832500948) - (755.0 8.7864572561 12.9754373749 296.886495735) - (760.0 8.78555088638 12.9000525479 296.940490522) - (765.0 8.78464451665 12.824667721 296.994485308) - (770.0 8.78373814693 12.749282894 297.048480095) - (775.0 8.78092431283 12.6731698157 297.101321687) - (780.0 8.77050848097 12.594154369 297.149567342) - (785.0 8.76009264911 12.5151389222 297.197812997) - (790.0 8.74967681725 12.4361234755 297.246058652) - (795.0 8.73926098539 12.3571080288 297.294304307) - (800.0 8.72884515353 12.278092582 297.342549962) - (805.0 8.71842932167 12.1990771353 297.390795617) - (810.0 8.70801348981 12.1200616885 297.439041272) - (815.0 8.69759765795 12.0410462418 297.487286927) - (820.0 8.68718182609 11.9620307951 297.535532582) - (825.0 8.67676599423 11.8830153483 297.583778237) - (830.0 8.66635016237 11.8039999016 297.632023892) - (835.0 8.65380285705 11.7267327361 297.688031136) - (840.0 8.63847548104 11.6517458454 297.754161782) - (845.0 8.62314810503 11.5767589547 297.820292429) - (850.0 8.60782072902 11.5017720641 297.886423076) - (855.0 8.59249335301 11.4267851734 297.952553722) - (860.0 8.57716597701 11.3517982828 298.018684369) - (865.0 8.561838601 11.2768113921 298.084815016) - (870.0 8.54651122499 11.2018245015 298.150945663) - (875.0 8.53118384898 11.1268376108 298.217076309) - (880.0 8.51585647297 11.0518507201 298.283206956) - (885.0 8.50052909696 10.9768638295 298.349337603) - (890.0 8.48520172096 10.9018769388 298.41546825) - (895.0 8.46987434495 10.8268900482 298.481598896) - (900.0 8.45883220551 10.7541011047 298.547345535) - (905.0 8.45238242046 10.6836676328 298.612680644) - (910.0 8.44593263542 10.6132341608 298.678015753) - (915.0 8.43948285037 10.5428006888 298.743350863) - (920.0 8.43303306533 10.4723672168 298.808685972) - (925.0 8.42658328028 10.4019337449 298.874021081) - (930.0 8.42013349524 10.3315002729 298.93935619) - (935.0 8.41368371019 10.2610668009 299.004691299) - (940.0 8.40723392515 10.190633329 299.070026409) - (945.0 8.4007841401 10.120199857 299.135361518) - (950.0 8.39433435506 10.049766385 299.200696627) - (955.0 8.38788457001 9.97933291304 299.266031736) - (960.0 8.38143478497 9.90889944107 299.331366845) - (965.0 8.37498499992 9.8384659691 299.396701955) - (970.0 8.37175628862 9.76984547069 299.458148741) - (975.0 8.3787220489 9.70696290595 299.507289259) - (980.0 8.38568780918 9.64408034121 299.556429777) - (985.0 8.39265356946 9.58119777647 299.605570296) - (990.0 8.39961932974 9.51831521173 299.654710814) - (995.0 8.40658509002 9.45543264699 299.703851332) - (1000.0 8.4135508503 9.39255008225 299.752991851) - (1005.0 8.42051661058 9.32966751751 299.802132369) - (1010.0 8.42748237086 9.26678495277 299.851272887) - (1015.0 8.43444813113 9.20390238803 299.900413405) - (1020.0 8.44141389141 9.14101982329 299.949553924) - (1025.0 8.44837965169 9.07813725854 299.998694442) - (1030.0 8.45534541197 9.0152546938 300.04783496) - (1035.0 8.46231117225 8.95237212906 300.096975478) - (1040.0 8.46927693253 8.88948956432 300.146115997) - (1045.0 8.47624269281 8.82660699958 300.195256515) - (1050.0 8.48495783258 8.77319458603 300.238852282) - (1055.0 8.49495774699 8.72673721576 300.278375887) - (1060.0 8.5049576614 8.6802798455 300.317899492) - (1065.0 8.51495757581 8.63382247523 300.357423097) - (1070.0 8.52495749023 8.58736510496 300.396946702) - (1075.0 8.53495740464 8.5409077347 300.436470307) - (1080.0 8.54495731905 8.49445036443 300.475993912) - (1085.0 8.55495723346 8.44799299416 300.515517517) - (1090.0 8.56495714787 8.4015356239 300.555041122) - (1095.0 8.57495706228 8.35507825363 300.594564727) - (1100.0 8.58495697669 8.30862088336 300.634088332) - (1105.0 8.5949568911 8.2621635131 300.673611937) - (1110.0 8.60495680552 8.21570614283 300.713135542) - (1115.0 8.61495671993 8.16924877256 300.752659147) - (1120.0 8.62495663434 8.1227914023 300.792182752) - (1125.0 8.63495654875 8.07633403203 300.831706357) - (1130.0 8.64495646316 8.02987666176 300.871229962) - (1135.0 8.65360052964 7.98996489564 300.907704255) - (1140.0 8.65972902324 7.96219751809 300.938521005) - (1145.0 8.66585751685 7.93443014055 300.969337756) - (1150.0 8.67198601045 7.906662763 301.000154506) - (1155.0 8.67811450406 7.87889538546 301.030971256) - (1160.0 8.68424299766 7.85112800791 301.061788006) - (1165.0 8.69037149126 7.82336063037 301.092604757) - (1170.0 8.69649998487 7.79559325282 301.123421507) - (1175.0 8.70262847847 7.76782587527 301.154238257) - (1180.0 8.70875697208 7.74005849773 301.185055007) - (1185.0 8.71488546568 7.71229112018 301.215871758) - (1190.0 8.72101395929 7.68452374264 301.246688508) - (1195.0 8.72714245289 7.65675636509 301.277505258) - (1200.0 8.7332709465 7.62898898755 301.308322009) - (1205.0 8.7393994401 7.60122161 301.339138759) - (1210.0 8.74552793371 7.57345423246 301.369955509) - (1215.0 8.75165642731 7.54568685491 301.400772259) - (1220.0 8.75778492092 7.51791947737 301.43158901) - (1225.0 8.76391341452 7.49015209982 301.46240576) - (1230.0 8.76818252215 7.46990516883 301.489568668) - (1235.0 8.76988179508 7.46005215541 301.511681645) - (1240.0 8.771581068 7.45019914198 301.533794623) - (1245.0 8.77328034093 7.44034612856 301.5559076) - (1250.0 8.77497961385 7.43049311513 301.578020578) - (1255.0 8.77667888677 7.42064010171 301.600133555) - (1260.0 8.7783781597 7.41078708828 301.622246532) - (1265.0 8.78007743262 7.40093407485 301.64435951) - (1270.0 8.78177670555 7.39108106143 301.666472487) - (1275.0 8.78347597847 7.381228048 301.688585464) - (1280.0 8.7851752514 7.37137503458 301.710698442) - (1285.0 8.78687452432 7.36152202115 301.732811419) - (1290.0 8.78857379725 7.35166900773 301.754924397) - (1295.0 8.79027307017 7.3418159943 301.777037374) - (1300.0 8.7919723431 7.33196298088 301.799150351) - (1305.0 8.79367161602 7.32210996745 301.821263329) - (1310.0 8.79537088895 7.31225695402 301.843376306) - (1315.0 8.79707016187 7.3024039406 301.865489283) - (1320.0 8.79876943479 7.29255092717 301.887602261) - (1325.0 8.80046870772 7.28269791375 301.909715238) - (1330.0 8.80216798064 7.27284490032 301.931828216) - (1335.0 8.80345002487 7.27037429336 301.950702634) - (1340.0 8.80449597234 7.27208116099 301.967744453) - (1345.0 8.8055419198 7.27378802862 301.984786271) - (1350.0 8.80658786727 7.27549489624 302.00182809) - (1355.0 8.80763381473 7.27720176387 302.018869908) - (1360.0 8.8086797622 7.2789086315 302.035911727) - (1365.0 8.80972570966 7.28061549913 302.052953545) - (1370.0 8.81077165713 7.28232236676 302.069995364) - (1375.0 8.81181760459 7.28402923439 302.087037182) - (1380.0 8.81286355206 7.28573610202 302.104079001) - (1385.0 8.81390949952 7.28744296965 302.121120819) - (1390.0 8.81495544699 7.28914983727 302.138162638) - (1395.0 8.81600139445 7.2908567049 302.155204456) - (1400.0 8.81704734192 7.29256357253 302.172246275) - (1405.0 8.81809328938 7.29427044016 302.189288094) - (1410.0 8.81913923685 7.29597730779 302.206329912) - (1415.0 8.82018518431 7.29768417542 302.223371731) - (1420.0 8.82123113178 7.29939104305 302.240413549) - (1425.0 8.82227707924 7.30109791068 302.257455368) - (1430.0 8.82332302671 7.30280477831 302.274497186) - (1435.0 8.82436897417 7.30451164593 302.291539005) - (1440.0 8.82541492164 7.30621851356 302.308580823) - (1445.0 8.8264608691 7.30792538119 302.325622642) - (1450.0 8.82980499965 7.31411337437 302.342200633) - (1455.0 8.83363827328 7.32125512601 302.358679903) - (1460.0 8.83747154691 7.32839687764 302.375159173) - (1465.0 8.84130482054 7.33553862927 302.391638443) - (1470.0 8.84513809417 7.34268038091 302.408117713) - (1475.0 8.8489713678 7.34982213254 302.424596984) - (1480.0 8.85280464143 7.35696388418 302.441076254) - (1485.0 8.85663791506 7.36410563581 302.457555524) - (1490.0 8.86047118869 7.37124738745 302.474034794) - (1495.0 8.86430446231 7.37838913908 302.490514064) - (1500.0 8.86813773594 7.38553089071 302.506993334) - (1505.0 8.87197100957 7.39267264235 302.523472605) - (1510.0 8.8758042832 7.39981439398 302.539951875) - (1515.0 8.87963755683 7.40695614562 302.556431145) - (1520.0 8.88347083046 7.41409789725 302.572910415) - (1525.0 8.88730410409 7.42123964888 302.589389685) - (1530.0 8.89113737772 7.42838140052 302.605868955) - (1535.0 8.89497065135 7.43552315215 302.622348226) - (1540.0 8.89880392498 7.44266490379 302.638827496) - (1545.0 8.90263719861 7.44980665542 302.655306766) - (1550.0 8.90647047224 7.45694840705 302.671786036) - (1555.0 8.91030374586 7.46409015869 302.688265306) - (1560.0 8.91413701949 7.47123191032 302.704744577) - (1565.0 8.91797029312 7.47837366196 302.721223847) - (1570.0 8.92180356675 7.48551541359 302.737703117) - (1575.0 8.92995697971 7.48958529161 302.756743245) - (1580.0 8.93926578965 7.49283361431 302.77646826) - (1585.0 8.94857459959 7.496081937 302.796193275) - (1590.0 8.95788340953 7.49933025969 302.81591829) - (1595.0 8.96719221947 7.50257858238 302.835643305) - (1600.0 8.97650102941 7.50582690508 302.85536832) - (1605.0 8.98580983935 7.50907522777 302.875093335) - (1610.0 8.9951186493 7.51232355046 302.89481835) - (1615.0 9.00442745924 7.51557187315 302.914543365) - (1620.0 9.01373626918 7.51882019585 302.93426838) - (1625.0 9.02304507912 7.52206851854 302.953993395) - (1630.0 9.03235388906 7.52531684123 302.973718411) - (1635.0 9.041662699 7.52856516392 302.993443426) - (1640.0 9.05097150894 7.53181348662 303.013168441) - (1645.0 9.06028031888 7.53506180931 303.032893456) - (1650.0 9.06958912882 7.538310132 303.052618471) - (1655.0 9.07889793876 7.5415584547 303.072343486) - (1660.0 9.0882067487 7.54480677739 303.092068501) - (1665.0 9.09751555864 7.54805510008 303.111793516) - (1670.0 9.10682436858 7.55130342277 303.131518531) - (1675.0 9.11613317852 7.55455174547 303.151243546) - (1680.0 9.12544198846 7.55780006816 303.170968561) - (1685.0 9.1347507984 7.56104839085 303.190693576) - (1690.0 9.14405960834 7.56429671354 303.210418591) - (1695.0 9.15336841829 7.56754503624 303.230143606) - (1700.0 9.16267722823 7.57079335893 303.249868621) - (1705.0 9.17198603817 7.57404168162 303.269593636) - (1710.0 9.18349377603 7.57239347669 303.290540127) - (1715.0 9.19922226437 7.56134659115 303.31383119) - (1720.0 9.2149507527 7.55029970561 303.337122252) - (1725.0 9.23067924103 7.53925282007 303.360413315) - (1730.0 9.24640772936 7.52820593453 303.383704377) - (1735.0 9.2621362177 7.51715904899 303.40699544) - (1740.0 9.27786470603 7.50611216345 303.430286502) - (1745.0 9.29359319436 7.49506527791 303.453577565) - (1750.0 9.3093216827 7.48401839237 303.476868627) - (1755.0 9.32505017103 7.47297150683 303.50015969) - (1760.0 9.34077865936 7.46192462129 303.523450752) - (1765.0 9.35650714769 7.45087773575 303.546741815) - (1770.0 9.37223563603 7.43983085021 303.570032877) - (1775.0 9.38796412436 7.42878396467 303.59332394) - (1780.0 9.40369261269 7.41773707912 303.616615003) - (1785.0 9.41942110102 7.40669019358 303.639906065) - (1790.0 9.43514958936 7.39564330804 303.663197128) - (1795.0 9.45087807769 7.3845964225 303.68648819) - (1800.0 9.46660656602 7.37354953696 303.709779253) - (1805.0 9.48233505436 7.36250265142 303.733070315) - (1810.0 9.49806354269 7.35145576588 303.756361378) - (1815.0 9.51379203102 7.34040888034 303.77965244) - (1820.0 9.52952051935 7.3293619948 303.802943503) - (1825.0 9.54524900769 7.31831510926 303.826234565) - (1830.0 9.56097749602 7.30726822372 303.849525628) - (1835.0 9.57670598435 7.29622133818 303.87281669) - (1840.0 9.59243447268 7.28517445264 303.896107753) - (1845.0 9.60816296102 7.2741275671 303.919398815) - (1850.0 9.62389144935 7.26308068156 303.942689878) - (1855.0 9.63961993768 7.25203379602 303.96598094) - (1860.0 9.65432709188 7.2376578099 303.988680381) - (1865.0 9.66596304977 7.21327107309 304.009600791) - (1870.0 9.67759900765 7.18888433629 304.0305212) - (1875.0 9.68923496554 7.16449759948 304.051441609) - (1880.0 9.70087092342 7.14011086267 304.072362018) - (1885.0 9.71250688131 7.11572412587 304.093282427) - (1890.0 9.72414283919 7.09133738906 304.114202836) - (1895.0 9.73577879708 7.06695065226 304.135123245) - (1900.0 9.74741475497 7.04256391545 304.156043654) - (1905.0 9.75905071285 7.01817717864 304.176964064) - (1910.0 9.77068667074 6.99379044184 304.197884473) - (1915.0 9.78232262862 6.96940370503 304.218804882) - (1920.0 9.79395858651 6.94501696822 304.239725291) - (1925.0 9.8055945444 6.92063023142 304.2606457) - (1930.0 9.81723050228 6.89624349461 304.281566109) - (1935.0 9.82886646017 6.8718567578 304.302486518) - (1940.0 9.84050241805 6.847470021 304.323406928) - (1945.0 9.85213837594 6.82308328419 304.344327337) - (1950.0 9.86377433382 6.79869654738 304.365247746) - (1955.0 9.87541029171 6.77430981058 304.386168155) - (1960.0 9.8870462496 6.74992307377 304.407088564) - (1965.0 9.89868220748 6.72553633696 304.428008973) - (1970.0 9.91031816537 6.70114960016 304.448929382) - (1975.0 9.92195412325 6.67676286335 304.469849792) - (1980.0 9.93359008114 6.65237612654 304.490770201) - (1985.0 9.94522603903 6.62798938974 304.51169061) - (1990.0 9.95686199691 6.60360265293 304.532611019) - (1995.0 9.9684979548 6.57921591612 304.553531428) - (2000.0 9.98013391268 6.55482917932 304.574451837) -); - -// Update internal field. -updateInternalFields true; - -// Update boundary field. -updateBoundaryFields false; - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/topoSetDict.local.1 b/exampleCases/example.ADM.ssc/system/topoSetDict.local.1 deleted file mode 100755 index 5ca695970..000000000 --- a/exampleCases/example.ADM.ssc/system/topoSetDict.local.1 +++ /dev/null @@ -1,36 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object topoSetDict.local.2; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -actions -( - { - name local; - type cellSet; - action new; - source rotatedBoxToCell; - sourceInfo - { - origin ( 900.0 1325.0 0.0); - i ( 1950.0 0.0 0.0); - j ( 0.0 350.0 0.0); - k ( 0.0 0.0 230.0); - } - } - -); - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc/system/topoSetDict.local.2 b/exampleCases/example.ADM.ssc/system/topoSetDict.local.2 deleted file mode 100755 index eb488cf4f..000000000 --- a/exampleCases/example.ADM.ssc/system/topoSetDict.local.2 +++ /dev/null @@ -1,36 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object topoSetDict.local.2; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -actions -( - { - name local; - type cellSet; - action new; - source rotatedBoxToCell; - sourceInfo - { - origin ( 1000.0 1375.0 0.0); - i ( 1800.0 0.0 0.0); - j ( 0.0 250.0 0.0); - k ( 0.0 0.0 200.0); - } - } - -); - -// ************************************************************************* // From ec31a13a621c466b486bd9bd391c513cb3a4ad04 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Wed, 7 Nov 2018 11:36:01 +0100 Subject: [PATCH 50/65] Remove outdated zeroMQ example case --- .../example.ADM.ssc.zeromq/0.original/Rwall | 65 --- .../example.ADM.ssc.zeromq/0.original/T | 55 -- .../example.ADM.ssc.zeromq/0.original/U | 58 -- .../example.ADM.ssc.zeromq/0.original/k | 54 -- .../example.ADM.ssc.zeromq/0.original/kappat | 60 --- .../example.ADM.ssc.zeromq/0.original/nuSgs | 60 --- .../example.ADM.ssc.zeromq/0.original/p_rgh | 54 -- .../example.ADM.ssc.zeromq/0.original/qwall | 59 -- .../constant/ABLProperties | 55 -- .../constant/LESProperties | 118 ---- .../constant/airfoilProperties/Cylinder1 | 23 - .../constant/airfoilProperties/Cylinder2 | 23 - .../constant/airfoilProperties/DU21_A17 | 162 ------ .../constant/airfoilProperties/DU25_A17 | 161 ------ .../constant/airfoilProperties/DU30_A17 | 163 ------ .../constant/airfoilProperties/DU35_A17 | 155 ------ .../constant/airfoilProperties/DU40_A17 | 156 ------ .../constant/airfoilProperties/NACA64_A17 | 147 ----- .../example.ADM.ssc.zeromq/constant/g | 22 - .../constant/polyMesh/blockMeshDict | 105 ---- .../constant/transportProperties | 39 -- .../constant/turbineArrayProperties | 76 --- .../constant/turbineProperties/NREL5MWRef | 122 ----- .../constant/turbulenceProperties | 22 - .../runscript.preprocess | 170 ------ .../example.ADM.ssc.zeromq/runscript.solve.1 | 40 -- exampleCases/example.ADM.ssc.zeromq/setUp | 103 ---- .../changeDictionaryDict.updateBCs.cyclic | 261 --------- .../changeDictionaryDict.updateBCs.east | 306 ----------- .../changeDictionaryDict.updateBCs.north | 217 -------- .../changeDictionaryDict.updateBCs.northeast | 313 ----------- .../changeDictionaryDict.updateBCs.northwest | 313 ----------- .../changeDictionaryDict.updateBCs.south | 215 -------- .../changeDictionaryDict.updateBCs.southeast | 314 ----------- .../changeDictionaryDict.updateBCs.southwest | 313 ----------- .../changeDictionaryDict.updateBCs.west | 215 -------- .../example.ADM.ssc.zeromq/system/controlDict | 61 --- .../system/controlDict.1 | 61 --- .../system/decomposeParDict | 76 --- .../example.ADM.ssc.zeromq/system/fvSchemes | 111 ---- .../example.ADM.ssc.zeromq/system/fvSolution | 102 ---- .../system/refineMeshDict.local | 48 -- .../system/sampling/boundaryDataPre | 25 - .../system/sampling/fieldAverages | 17 - .../system/sampling/probeData1 | 223 -------- .../system/sampling/probeData1S | 18 - .../system/sampling/probeData2 | 223 -------- .../system/sampling/probeData2S | 18 - .../system/sampling/probeData3 | 223 -------- .../system/sampling/probeData3S | 18 - .../system/sampling/probeData4 | 223 -------- .../system/sampling/probeData4S | 18 - .../system/sampling/probeData5 | 223 -------- .../system/sampling/probeData5S | 18 - .../system/sampling/sliceDataInstantaneous | 53 -- .../system/setFieldsABLDict | 504 ------------------ .../system/topoSetDict.local.1 | 36 -- .../system/topoSetDict.local.2 | 36 -- .../zeromqExamplesSSC/.gitignore | 7 - .../zeromqExamplesSSC/cSSC.c | 45 -- .../zeromqExamplesSSC/matlabSSC.m | 61 --- .../zeromqExamplesSSC/pythonSSC.py | 27 - .../zeromqExamplesSSC/readme.txt | 46 -- 63 files changed, 7315 deletions(-) delete mode 100755 exampleCases/example.ADM.ssc.zeromq/0.original/Rwall delete mode 100755 exampleCases/example.ADM.ssc.zeromq/0.original/T delete mode 100755 exampleCases/example.ADM.ssc.zeromq/0.original/U delete mode 100755 exampleCases/example.ADM.ssc.zeromq/0.original/k delete mode 100755 exampleCases/example.ADM.ssc.zeromq/0.original/kappat delete mode 100755 exampleCases/example.ADM.ssc.zeromq/0.original/nuSgs delete mode 100755 exampleCases/example.ADM.ssc.zeromq/0.original/p_rgh delete mode 100755 exampleCases/example.ADM.ssc.zeromq/0.original/qwall delete mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/ABLProperties delete mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/LESProperties delete mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/Cylinder1 delete mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/Cylinder2 delete mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU21_A17 delete mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU25_A17 delete mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU30_A17 delete mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU35_A17 delete mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU40_A17 delete mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/NACA64_A17 delete mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/g delete mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/polyMesh/blockMeshDict delete mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/transportProperties delete mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/turbineArrayProperties delete mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/turbineProperties/NREL5MWRef delete mode 100755 exampleCases/example.ADM.ssc.zeromq/constant/turbulenceProperties delete mode 100755 exampleCases/example.ADM.ssc.zeromq/runscript.preprocess delete mode 100755 exampleCases/example.ADM.ssc.zeromq/runscript.solve.1 delete mode 100755 exampleCases/example.ADM.ssc.zeromq/setUp delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.cyclic delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.east delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.north delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.northeast delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.northwest delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.south delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.southeast delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.southwest delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.west delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/controlDict delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/controlDict.1 delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/decomposeParDict delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/fvSchemes delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/fvSolution delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/refineMeshDict.local delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/boundaryDataPre delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/fieldAverages delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData1 delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData1S delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData2 delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData2S delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData3 delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData3S delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData4 delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData4S delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData5 delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData5S delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/sampling/sliceDataInstantaneous delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/setFieldsABLDict delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/topoSetDict.local.1 delete mode 100755 exampleCases/example.ADM.ssc.zeromq/system/topoSetDict.local.2 delete mode 100644 exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/.gitignore delete mode 100644 exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/cSSC.c delete mode 100644 exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/matlabSSC.m delete mode 100644 exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/pythonSSC.py delete mode 100644 exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/readme.txt diff --git a/exampleCases/example.ADM.ssc.zeromq/0.original/Rwall b/exampleCases/example.ADM.ssc.zeromq/0.original/Rwall deleted file mode 100755 index 9f0a3a19c..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/0.original/Rwall +++ /dev/null @@ -1,65 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volSymmTensorField; - location "0"; - object Rwall; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - -dimensions [ 0 2 -2 0 0 0 0 ]; - -internalField uniform (0.0 0.0 0.0 0.0 0.0 0.0); - -boundaryField -{ - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - //averageType "local"; - averageType "planarAverage"; - value uniform $Rwall; - } - upper - { - type fixedValue; - value $internalField; - } - west - { - type cyclic; - value $internalField; - } - east - { - type cyclic; - value $internalField; - } - north - { - type cyclic; - value $internalField; - } - south - { - type cyclic; - value $internalField; - } -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/0.original/T b/exampleCases/example.ADM.ssc.zeromq/0.original/T deleted file mode 100755 index 8fce50ca7..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/0.original/T +++ /dev/null @@ -1,55 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volScalarField; - location "0"; - object T ; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -dimensions [0 0 0 1 0 0 0]; - -internalField uniform $TBottom; - -boundaryField -{ - lower - { - type zeroGradient; - } - upper - { - type fixedGradient; - gradient uniform $TGradUpper; - } - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/0.original/U b/exampleCases/example.ADM.ssc.zeromq/0.original/U deleted file mode 100755 index a73faa4e0..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/0.original/U +++ /dev/null @@ -1,58 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volVectorField; - location "0"; - object U; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -dimensions [0 1 -1 0 0 0 0]; - -internalField uniform (0 0 0); - -boundaryField -{ - lower - { - type velocityABLWallFunction; - print true; - U U; - value $internalField; - } - upper - { - type slip; - } - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } -} - - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/0.original/k b/exampleCases/example.ADM.ssc.zeromq/0.original/k deleted file mode 100755 index b85959d30..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/0.original/k +++ /dev/null @@ -1,54 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volScalarField; - location "0"; - object k ; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -dimensions [0 2 -2 0 0 0 0]; - -internalField uniform $k0; - -boundaryField -{ - lower - { - type zeroGradient; - } - upper - { - type zeroGradient; - } - east - { - type cyclic; - } - west - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/0.original/kappat b/exampleCases/example.ADM.ssc.zeromq/0.original/kappat deleted file mode 100755 index 05706742f..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/0.original/kappat +++ /dev/null @@ -1,60 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.1.x | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volScalarField; - location "0"; - object kappat; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -dimensions [0 2 -1 0 0 0 0]; - -internalField uniform $kappat0; - -boundaryField -{ - lower - { - type fixedValue; - value uniform 0.0; - } - upper - { - type fixedValue; - value uniform 0.0; - } - west - { - type cyclic; - value $internalField; - } - east - { - type cyclic; - value $internalField; - } - north - { - type cyclic; - value $internalField; - } - south - { - type cyclic; - value $internalField; - } -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/0.original/nuSgs b/exampleCases/example.ADM.ssc.zeromq/0.original/nuSgs deleted file mode 100755 index e6f1da758..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/0.original/nuSgs +++ /dev/null @@ -1,60 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.1.x | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volScalarField; - location "0"; - object nuSgs; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -dimensions [0 2 -1 0 0 0 0]; - -internalField uniform $nuSgs0; - -boundaryField -{ - lower - { - type fixedValue; - value uniform 0.0; - } - upper - { - type fixedValue; - value uniform 0.0; - } - west - { - type cyclic; - value $internalField; - } - east - { - type cyclic; - value $internalField; - } - north - { - type cyclic; - value $internalField; - } - south - { - type cyclic; - value $internalField; - } -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/0.original/p_rgh b/exampleCases/example.ADM.ssc.zeromq/0.original/p_rgh deleted file mode 100755 index b40b9978c..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/0.original/p_rgh +++ /dev/null @@ -1,54 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volScalarField; - location "0000"; - object p_rgh ; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -dimensions [0 2 -2 0 0 0 0]; - -internalField uniform $p_rgh0; - -boundaryField -{ - lower - { - type fixedFluxPressure; - } - upper - { - type fixedFluxPressure; - } - east - { - type cyclic; - } - west - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/0.original/qwall b/exampleCases/example.ADM.ssc.zeromq/0.original/qwall deleted file mode 100755 index c695d7577..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/0.original/qwall +++ /dev/null @@ -1,59 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class volVectorField; - location "0"; - object qwall; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - -dimensions [ 0 1 -1 1 0 0 0 ]; - -internalField uniform (0.0 0.0 0.0); - -boundaryField -{ - lower - { - type fixedValue; - value uniform $qwall; - } - upper - { - type fixedValue; - value $internalField; - } - west - { - type cyclic; - value $internalField; - } - east - { - type cyclic; - value $internalField; - } - north - { - type cyclic; - value $internalField; - } - south - { - type cyclic; - value $internalField; - } -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/ABLProperties b/exampleCases/example.ADM.ssc.zeromq/constant/ABLProperties deleted file mode 100755 index d25c3dbee..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/constant/ABLProperties +++ /dev/null @@ -1,55 +0,0 @@ -/*---------------------------------------------------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.openfoam.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ - -FoamFile -{ - version 2.0; - format ascii; - - root ""; - case ""; - instance ""; - local ""; - - class dictionary; - object ABLProperties; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - - -// Properties of the mesoscale source terms -momentumSourceType "given"; -temperatureSourceType "given"; - - -velocityInputType "speedAndDirection"; - - -#include "../constant/sources" - - -// Relaxation factors applied when computing sources given desired -// velocity and temperature. -alphaMomentum 0.7; -alphaTemperature 0.7; - - -// Properties of the Coriolis force -planetaryRotationPeriod $EarthPeriod; -latitude $latitude; - - -// Statistics gathering input -avgStartTime $avgStartTime; -corrStartTime $corrStartTime; - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/LESProperties b/exampleCases/example.ADM.ssc.zeromq/constant/LESProperties deleted file mode 100755 index 2043039a5..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/constant/LESProperties +++ /dev/null @@ -1,118 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "constant"; - object LESProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -#include "../setUp" - - -LESModel $LESModel; -//LESModel SmagorinskyABL; -//LESModel Smagorinsky; -//LESModel dynLagrangianCsBound; - -delta smooth; - -SmagorinskyCoeffs -{ - ce $ce; - ck $ck; -} - -SmagorinskyABLCoeffs -{ - ce $ce; - ck $ck; - TName "T"; - kappatName "kappat"; -} - -oneEqEddyABLCoeffs -{ - ce $ce; - ck $ck; - TName "T"; - kappatName "kappat"; -} - -printCoeffs on; - -dynLagrangianCsBoundCoeffs -{ - filter simple; -} - -cubeRootVolCoeffs -{ - deltaCoeff 1; -} - -PrandtlCoeffs -{ - delta cubeRootVol; - cubeRootVolCoeffs - { - deltaCoeff 1; - } - - smoothCoeffs - { - delta cubeRootVol; - cubeRootVolCoeffs - { - deltaCoeff 1; - } - - maxDeltaRatio 1.1; - } - - Cdelta 0.158; -} - -vanDriestCoeffs -{ - delta cubeRootVol; - cubeRootVolCoeffs - { - deltaCoeff 1; - } - - smoothCoeffs - { - delta cubeRootVol; - cubeRootVolCoeffs - { - deltaCoeff 1; - } - - maxDeltaRatio 1.1; - } - - Aplus 26; - Cdelta 0.158; -} - -smoothCoeffs -{ - delta cubeRootVol; - cubeRootVolCoeffs - { - deltaCoeff 1; - } - - maxDeltaRatio 1.1; -} - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/Cylinder1 b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/Cylinder1 deleted file mode 100755 index 7106c17d0..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/Cylinder1 +++ /dev/null @@ -1,23 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180.00 0.000 0.5000) - ( 0.00 0.000 0.5000) - ( 180.00 0.000 0.5000) -); diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/Cylinder2 b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/Cylinder2 deleted file mode 100755 index b2e7923f1..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/Cylinder2 +++ /dev/null @@ -1,23 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180.00 0.000 0.3500) - ( 0.00 0.000 0.3500) - ( 180.00 0.000 0.3500) -); diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU21_A17 b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU21_A17 deleted file mode 100755 index 17eb9de96..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU21_A17 +++ /dev/null @@ -1,162 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180 0 0.0185) - (-175 0.394 0.0332) - (-170 0.788 0.0945) - (-160 0.67 0.2809) - (-155 0.749 0.3932) - (-150 0.797 0.5112) - (-145 0.818 0.6309) - (-140 0.813 0.7485) - (-135 0.786 0.8612) - (-130 0.739 0.9665) - (-125 0.675 1.0625) - (-120 0.596 1.1476) - (-115 0.505 1.2206) - (-110 0.403 1.2805) - (-105 0.294 1.3265) - (-100 0.179 1.3582) - (-95 0.06 1.3752) - (-90 -0.06 1.3774) - (-85 -0.179 1.3648) - (-80 -0.295 1.3376) - (-75 -0.407 1.2962) - (-70 -0.512 1.2409) - (-65 -0.608 1.1725) - (-60 -0.693 1.0919) - (-55 -0.764 1.0002) - (-50 -0.82 0.899 ) - (-45 -0.857 0.79 ) - (-40 -0.875 0.6754) - (-35 -0.869 0.5579) - (-30 -0.838 0.4405) - (-25 -0.791 0.3256) - (-24 -0.794 0.3013) - (-23 -0.805 0.2762) - (-22 -0.821 0.2506) - (-21 -0.843 0.2246) - (-20 -0.869 0.1983) - (-19 -0.899 0.172 ) - (-18 -0.931 0.1457) - (-17 -0.964 0.1197) - (-16 -0.999 0.094 ) - (-15 -1.033 0.0689) - (-14.5 -1.05 0.0567) - (-12.01 -0.953 0.0271) - (-11 -0.9 0.0303) - (-9.98 -0.827 0.0287) - (-8.12 -0.536 0.0124) - (-7.62 -0.467 0.0109) - (-7.11 -0.393 0.0092) - (-6.6 -0.323 0.0083) - (-6.5 -0.311 0.0089) - (-6 -0.245 0.0082) - (-5.5 -0.178 0.0074) - (-5 -0.113 0.0069) - (-4.5 -0.048 0.0065) - (-4 0.016 0.0063) - (-3.5 0.08 0.0061) - (-3 0.145 0.0058) - (-2.5 0.208 0.0057) - (-2 0.27 0.0057) - (-1.5 0.333 0.0057) - (-1 0.396 0.0057) - (-0.5 0.458 0.0057) - ( 0 0.521 0.0057) - ( 0.5 0.583 0.0057) - ( 1 0.645 0.0058) - ( 1.5 0.706 0.0058) - ( 2 0.768 0.0059) - ( 2.5 0.828 0.0061) - ( 3 0.888 0.0063) - ( 3.5 0.948 0.0066) - ( 4 0.996 0.0071) - ( 4.5 1.046 0.0079) - ( 5 1.095 0.009 ) - ( 5.5 1.145 0.0103) - ( 6 1.192 0.0113) - ( 6.5 1.239 0.0122) - ( 7 1.283 0.0131) - ( 7.5 1.324 0.0139) - ( 8 1.358 0.0147) - ( 8.5 1.385 0.0158) - ( 9 1.403 0.0181) - ( 9.5 1.401 0.0211) - ( 10 1.358 0.0255) - ( 10.5 1.313 0.0301) - ( 11 1.287 0.0347) - ( 11.5 1.274 0.0401) - ( 12 1.272 0.0468) - ( 12.5 1.273 0.0545) - ( 13 1.273 0.0633) - ( 13.5 1.273 0.0722) - ( 14 1.272 0.0806) - ( 14.5 1.273 0.09 ) - ( 15 1.275 0.0987) - ( 15.5 1.281 0.1075) - ( 16 1.284 0.117 ) - ( 16.5 1.296 0.127 ) - ( 17 1.306 0.1368) - ( 17.5 1.308 0.1464) - ( 18 1.308 0.1562) - ( 18.5 1.308 0.1664) - ( 19 1.308 0.177 ) - ( 19.5 1.307 0.1878) - ( 20 1.311 0.1987) - ( 20.5 1.325 0.21 ) - ( 21 1.324 0.2214) - ( 22 1.277 0.2499) - ( 23 1.229 0.2786) - ( 24 1.182 0.3077) - ( 25 1.136 0.3371) - ( 26 1.093 0.3664) - ( 28 1.017 0.4246) - ( 30 0.962 0.4813) - ( 32 0.937 0.5356) - ( 35 0.947 0.6127) - ( 40 0.95 0.7396) - ( 45 0.928 0.8623) - ( 50 0.884 0.9781) - ( 55 0.821 1.0846) - ( 60 0.74 1.1796) - ( 65 0.646 1.2617) - ( 70 0.54 1.3297) - ( 75 0.425 1.3827) - ( 80 0.304 1.4202) - ( 85 0.179 1.4423) - ( 90 0.053 1.4512) - ( 95 -0.073 1.448 ) - ( 100 -0.198 1.4294) - ( 105 -0.319 1.3954) - ( 110 -0.434 1.3464) - ( 115 -0.541 1.2829) - ( 120 -0.637 1.2057) - ( 125 -0.72 1.1157) - ( 130 -0.787 1.0144) - ( 135 -0.836 0.9033) - ( 140 -0.864 0.7845) - ( 145 -0.869 0.6605) - ( 150 -0.847 0.5346) - ( 155 -0.795 0.4103) - ( 160 -0.711 0.2922) - ( 170 -0.788 0.0969) - ( 175 -0.394 0.0334) - ( 180 0 0.0185) -); diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU25_A17 b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU25_A17 deleted file mode 100755 index 56981e639..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU25_A17 +++ /dev/null @@ -1,161 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180.00 0.000 0.0202) - (-175.00 0.368 0.0324) - (-170.00 0.735 0.0943) - (-160.00 0.695 0.2848) - (-155.00 0.777 0.4001) - (-150.00 0.828 0.5215) - (-145.00 0.850 0.6447) - (-140.00 0.846 0.7660) - (-135.00 0.818 0.8823) - (-130.00 0.771 0.9911) - (-125.00 0.705 1.0905) - (-120.00 0.624 1.1787) - (-115.00 0.530 1.2545) - (-110.00 0.426 1.3168) - (-105.00 0.314 1.3650) - (-100.00 0.195 1.3984) - ( -95.00 0.073 1.4169) - ( -90.00 -0.050 1.4201) - ( -85.00 -0.173 1.4081) - ( -80.00 -0.294 1.3811) - ( -75.00 -0.409 1.3394) - ( -70.00 -0.518 1.2833) - ( -65.00 -0.617 1.2138) - ( -60.00 -0.706 1.1315) - ( -55.00 -0.780 1.0378) - ( -50.00 -0.839 0.9341) - ( -45.00 -0.879 0.8221) - ( -40.00 -0.898 0.7042) - ( -35.00 -0.893 0.5829) - ( -30.00 -0.862 0.4616) - ( -25.00 -0.803 0.3441) - ( -24.00 -0.792 0.3209) - ( -23.00 -0.789 0.2972) - ( -22.00 -0.792 0.2730) - ( -21.00 -0.801 0.2485) - ( -20.00 -0.815 0.2237) - ( -19.00 -0.833 0.1990) - ( -18.00 -0.854 0.1743) - ( -17.00 -0.879 0.1498) - ( -16.00 -0.905 0.1256) - ( -15.00 -0.932 0.1020) - ( -14.00 -0.959 0.0789) - ( -13.00 -0.985 0.0567) - ( -13.00 -0.985 0.0567) - ( -12.01 -0.953 0.0271) - ( -11.00 -0.900 0.0303) - ( -9.98 -0.827 0.0287) - ( -8.98 -0.753 0.0271) - ( -8.47 -0.691 0.0264) - ( -7.45 -0.555 0.0114) - ( -6.42 -0.413 0.0094) - ( -5.40 -0.271 0.0086) - ( -5.00 -0.220 0.0073) - ( -4.50 -0.152 0.0071) - ( -4.00 -0.084 0.0070) - ( -3.50 -0.018 0.0069) - ( -3.00 0.049 0.0068) - ( -2.50 0.115 0.0068) - ( -2.00 0.181 0.0068) - ( -1.50 0.247 0.0067) - ( -1.00 0.312 0.0067) - ( -0.50 0.377 0.0067) - ( 0.00 0.444 0.0065) - ( 0.50 0.508 0.0065) - ( 1.00 0.573 0.0066) - ( 1.50 0.636 0.0067) - ( 2.00 0.701 0.0068) - ( 2.50 0.765 0.0069) - ( 3.00 0.827 0.0070) - ( 3.50 0.890 0.0071) - ( 4.00 0.952 0.0073) - ( 4.50 1.013 0.0076) - ( 5.00 1.062 0.0079) - ( 6.00 1.161 0.0099) - ( 6.50 1.208 0.0117) - ( 7.00 1.254 0.0132) - ( 7.50 1.301 0.0143) - ( 8.00 1.336 0.0153) - ( 8.50 1.369 0.0165) - ( 9.00 1.400 0.0181) - ( 9.50 1.428 0.0211) - ( 10.00 1.442 0.0262) - ( 10.50 1.427 0.0336) - ( 11.00 1.374 0.0420) - ( 11.50 1.316 0.0515) - ( 12.00 1.277 0.0601) - ( 12.50 1.250 0.0693) - ( 13.00 1.246 0.0785) - ( 13.50 1.247 0.0888) - ( 14.00 1.256 0.1000) - ( 14.50 1.260 0.1108) - ( 15.00 1.271 0.1219) - ( 15.50 1.281 0.1325) - ( 16.00 1.289 0.1433) - ( 16.50 1.294 0.1541) - ( 17.00 1.304 0.1649) - ( 17.50 1.309 0.1754) - ( 18.00 1.315 0.1845) - ( 18.50 1.320 0.1953) - ( 19.00 1.330 0.2061) - ( 19.50 1.343 0.2170) - ( 20.00 1.354 0.2280) - ( 20.50 1.359 0.2390) - ( 21.00 1.360 0.2536) - ( 22.00 1.325 0.2814) - ( 23.00 1.288 0.3098) - ( 24.00 1.251 0.3386) - ( 25.00 1.215 0.3678) - ( 26.00 1.181 0.3972) - ( 28.00 1.120 0.4563) - ( 30.00 1.076 0.5149) - ( 32.00 1.056 0.5720) - ( 35.00 1.066 0.6548) - ( 40.00 1.064 0.7901) - ( 45.00 1.035 0.9190) - ( 50.00 0.980 1.0378) - ( 55.00 0.904 1.1434) - ( 60.00 0.810 1.2333) - ( 65.00 0.702 1.3055) - ( 70.00 0.582 1.3587) - ( 75.00 0.456 1.3922) - ( 80.00 0.326 1.4063) - ( 85.00 0.197 1.4042) - ( 90.00 0.072 1.3985) - ( 95.00 -0.050 1.3973) - ( 100.00 -0.170 1.3810) - ( 105.00 -0.287 1.3498) - ( 110.00 -0.399 1.3041) - ( 115.00 -0.502 1.2442) - ( 120.00 -0.596 1.1709) - ( 125.00 -0.677 1.0852) - ( 130.00 -0.743 0.9883) - ( 135.00 -0.792 0.8818) - ( 140.00 -0.821 0.7676) - ( 145.00 -0.826 0.6481) - ( 150.00 -0.806 0.5264) - ( 155.00 -0.758 0.4060) - ( 160.00 -0.679 0.2912) - ( 170.00 -0.735 0.0995) - ( 175.00 -0.368 0.0356) - ( 180.00 0.000 0.0202) -); diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU30_A17 b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU30_A17 deleted file mode 100755 index 35fb11988..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU30_A17 +++ /dev/null @@ -1,163 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180.00 0.000 0.0267) - (-175.00 0.274 0.0370) - (-170.00 0.547 0.0968) - (-160.00 0.685 0.2876) - (-155.00 0.766 0.4025) - (-150.00 0.816 0.5232) - (-145.00 0.836 0.6454) - (-140.00 0.832 0.7656) - (-135.00 0.804 0.8807) - (-130.00 0.756 0.9882) - (-125.00 0.690 1.0861) - (-120.00 0.609 1.1730) - (-115.00 0.515 1.2474) - (-110.00 0.411 1.3084) - (-105.00 0.300 1.3552) - (-100.00 0.182 1.3875) - ( -95.00 0.061 1.4048) - ( -90.00 -0.061 1.4070) - ( -85.00 -0.183 1.3941) - ( -80.00 -0.302 1.3664) - ( -75.00 -0.416 1.3240) - ( -70.00 -0.523 1.2676) - ( -65.00 -0.622 1.1978) - ( -60.00 -0.708 1.1156) - ( -55.00 -0.781 1.0220) - ( -50.00 -0.838 0.9187) - ( -45.00 -0.877 0.8074) - ( -40.00 -0.895 0.6904) - ( -35.00 -0.889 0.5703) - ( -30.00 -0.858 0.4503) - ( -25.00 -0.832 0.3357) - ( -24.00 -0.852 0.3147) - ( -23.00 -0.882 0.2946) - ( -22.00 -0.919 0.2752) - ( -21.00 -0.963 0.2566) - ( -20.00 -1.013 0.2388) - ( -19.00 -1.067 0.2218) - ( -18.00 -1.125 0.2056) - ( -17.00 -1.185 0.1901) - ( -16.00 -1.245 0.1754) - ( -15.25 -1.290 0.1649) - ( -14.24 -1.229 0.1461) - ( -13.24 -1.148 0.1263) - ( -12.22 -1.052 0.1051) - ( -11.22 -0.965 0.0886) - ( -10.19 -0.867 0.0740) - ( -9.70 -0.822 0.0684) - ( -9.18 -0.769 0.0605) - ( -8.18 -0.756 0.0270) - ( -7.19 -0.690 0.0180) - ( -6.65 -0.616 0.0166) - ( -6.13 -0.542 0.0152) - ( -6.00 -0.525 0.0117) - ( -5.50 -0.451 0.0105) - ( -5.00 -0.382 0.0097) - ( -4.50 -0.314 0.0092) - ( -4.00 -0.251 0.0091) - ( -3.50 -0.189 0.0089) - ( -3.00 -0.120 0.0089) - ( -2.50 -0.051 0.0088) - ( -2.00 0.017 0.0088) - ( -1.50 0.085 0.0088) - ( -1.00 0.152 0.0088) - ( -0.50 0.219 0.0088) - ( 0.00 0.288 0.0087) - ( 0.50 0.354 0.0087) - ( 1.00 0.421 0.0088) - ( 1.50 0.487 0.0089) - ( 2.00 0.554 0.0090) - ( 2.50 0.619 0.0091) - ( 3.00 0.685 0.0092) - ( 3.50 0.749 0.0093) - ( 4.00 0.815 0.0095) - ( 4.50 0.879 0.0096) - ( 5.00 0.944 0.0097) - ( 5.50 1.008 0.0099) - ( 6.00 1.072 0.0101) - ( 6.50 1.135 0.0103) - ( 7.00 1.197 0.0107) - ( 7.50 1.256 0.0112) - ( 8.00 1.305 0.0125) - ( 9.00 1.390 0.0155) - ( 9.50 1.424 0.0171) - ( 10.00 1.458 0.0192) - ( 10.50 1.488 0.0219) - ( 11.00 1.512 0.0255) - ( 11.50 1.533 0.0307) - ( 12.00 1.549 0.0370) - ( 12.50 1.558 0.0452) - ( 13.00 1.470 0.0630) - ( 13.50 1.398 0.0784) - ( 14.00 1.354 0.0931) - ( 14.50 1.336 0.1081) - ( 15.00 1.333 0.1239) - ( 15.50 1.326 0.1415) - ( 16.00 1.329 0.1592) - ( 16.50 1.326 0.1743) - ( 17.00 1.321 0.1903) - ( 17.50 1.331 0.2044) - ( 18.00 1.333 0.2186) - ( 18.50 1.340 0.2324) - ( 19.00 1.362 0.2455) - ( 19.50 1.382 0.2584) - ( 20.00 1.398 0.2689) - ( 20.50 1.426 0.2814) - ( 21.00 1.437 0.2943) - ( 22.00 1.418 0.3246) - ( 23.00 1.397 0.3557) - ( 24.00 1.376 0.3875) - ( 25.00 1.354 0.4198) - ( 26.00 1.332 0.4524) - ( 28.00 1.293 0.5183) - ( 30.00 1.265 0.5843) - ( 32.00 1.253 0.6492) - ( 35.00 1.264 0.7438) - ( 40.00 1.258 0.8970) - ( 45.00 1.217 1.0402) - ( 50.00 1.146 1.1686) - ( 55.00 1.049 1.2779) - ( 60.00 0.932 1.3647) - ( 65.00 0.799 1.4267) - ( 70.00 0.657 1.4621) - ( 75.00 0.509 1.4708) - ( 80.00 0.362 1.4544) - ( 85.00 0.221 1.4196) - ( 90.00 0.092 1.3938) - ( 95.00 -0.030 1.3943) - ( 100.00 -0.150 1.3798) - ( 105.00 -0.267 1.3504) - ( 110.00 -0.379 1.3063) - ( 115.00 -0.483 1.2481) - ( 120.00 -0.578 1.1763) - ( 125.00 -0.660 1.0919) - ( 130.00 -0.727 0.9962) - ( 135.00 -0.777 0.8906) - ( 140.00 -0.807 0.7771) - ( 145.00 -0.815 0.6581) - ( 150.00 -0.797 0.5364) - ( 155.00 -0.750 0.4157) - ( 160.00 -0.673 0.3000) - ( 170.00 -0.547 0.1051) - ( 175.00 -0.274 0.0388) - ( 180.00 0.000 0.0267) -); diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU35_A17 b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU35_A17 deleted file mode 100755 index 041013e24..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU35_A17 +++ /dev/null @@ -1,155 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180.00 0.000 0.0407) - (-175.00 0.223 0.0507) - (-170.00 0.405 0.1055) - (-160.00 0.658 0.2982) - (-155.00 0.733 0.4121) - (-150.00 0.778 0.5308) - (-145.00 0.795 0.6503) - (-140.00 0.787 0.7672) - (-135.00 0.757 0.8785) - (-130.00 0.708 0.9819) - (-125.00 0.641 1.0756) - (-120.00 0.560 1.1580) - (-115.00 0.467 1.2280) - (-110.00 0.365 1.2847) - (-105.00 0.255 1.3274) - (-100.00 0.139 1.3557) - ( -95.00 0.021 1.3692) - ( -90.00 -0.098 1.3680) - ( -85.00 -0.216 1.3521) - ( -80.00 -0.331 1.3218) - ( -75.00 -0.441 1.2773) - ( -70.00 -0.544 1.2193) - ( -65.00 -0.638 1.1486) - ( -60.00 -0.720 1.0660) - ( -55.00 -0.788 0.9728) - ( -50.00 -0.840 0.8705) - ( -45.00 -0.875 0.7611) - ( -40.00 -0.889 0.6466) - ( -35.00 -0.880 0.5299) - ( -30.00 -0.846 0.4141) - ( -25.00 -0.784 0.3030) - ( -24.00 -0.768 0.2817) - ( -23.00 -0.751 0.2608) - ( -22.00 -0.733 0.2404) - ( -21.00 -0.714 0.2205) - ( -20.00 -0.693 0.2011) - ( -19.00 -0.671 0.1822) - ( -18.00 -0.648 0.1640) - ( -17.00 -0.624 0.1465) - ( -16.00 -0.601 0.1300) - ( -15.00 -0.579 0.1145) - ( -14.00 -0.559 0.1000) - ( -13.00 -0.539 0.0867) - ( -12.00 -0.519 0.0744) - ( -11.00 -0.499 0.0633) - ( -10.00 -0.480 0.0534) - ( -5.54 -0.385 0.0245) - ( -5.04 -0.359 0.0225) - ( -4.54 -0.360 0.0196) - ( -4.04 -0.355 0.0174) - ( -3.54 -0.307 0.0162) - ( -3.04 -0.246 0.0144) - ( -3.00 -0.240 0.0240) - ( -2.50 -0.163 0.0188) - ( -2.00 -0.091 0.0160) - ( -1.50 -0.019 0.0137) - ( -1.00 0.052 0.0118) - ( -0.50 0.121 0.0104) - ( 0.00 0.196 0.0094) - ( 0.50 0.265 0.0096) - ( 1.00 0.335 0.0098) - ( 1.50 0.404 0.0099) - ( 2.00 0.472 0.0100) - ( 2.50 0.540 0.0102) - ( 3.00 0.608 0.0103) - ( 3.50 0.674 0.0104) - ( 4.00 0.742 0.0105) - ( 4.50 0.809 0.0107) - ( 5.00 0.875 0.0108) - ( 5.50 0.941 0.0109) - ( 6.00 1.007 0.0110) - ( 6.50 1.071 0.0113) - ( 7.00 1.134 0.0115) - ( 7.50 1.198 0.0117) - ( 8.00 1.260 0.0120) - ( 8.50 1.318 0.0126) - ( 9.00 1.368 0.0133) - ( 9.50 1.422 0.0143) - ( 10.00 1.475 0.0156) - ( 10.50 1.523 0.0174) - ( 11.00 1.570 0.0194) - ( 11.50 1.609 0.0227) - ( 12.00 1.642 0.0269) - ( 12.50 1.675 0.0319) - ( 13.00 1.700 0.0398) - ( 13.50 1.717 0.0488) - ( 14.00 1.712 0.0614) - ( 14.50 1.703 0.0786) - ( 15.50 1.671 0.1173) - ( 16.00 1.649 0.1377) - ( 16.50 1.621 0.1600) - ( 17.00 1.598 0.1814) - ( 17.50 1.571 0.2042) - ( 18.00 1.549 0.2316) - ( 19.00 1.544 0.2719) - ( 19.50 1.549 0.2906) - ( 20.00 1.565 0.3085) - ( 21.00 1.565 0.3447) - ( 22.00 1.563 0.3820) - ( 23.00 1.558 0.4203) - ( 24.00 1.552 0.4593) - ( 25.00 1.546 0.4988) - ( 26.00 1.539 0.5387) - ( 28.00 1.527 0.6187) - ( 30.00 1.522 0.6978) - ( 32.00 1.529 0.7747) - ( 35.00 1.544 0.8869) - ( 40.00 1.529 1.0671) - ( 45.00 1.471 1.2319) - ( 50.00 1.376 1.3747) - ( 55.00 1.249 1.4899) - ( 60.00 1.097 1.5728) - ( 65.00 0.928 1.6202) - ( 70.00 0.750 1.6302) - ( 75.00 0.570 1.6031) - ( 80.00 0.396 1.5423) - ( 85.00 0.237 1.4598) - ( 90.00 0.101 1.4041) - ( 95.00 -0.022 1.4053) - ( 100.00 -0.143 1.3914) - ( 105.00 -0.261 1.3625) - ( 110.00 -0.374 1.3188) - ( 115.00 -0.480 1.2608) - ( 120.00 -0.575 1.1891) - ( 125.00 -0.659 1.1046) - ( 130.00 -0.727 1.0086) - ( 135.00 -0.778 0.9025) - ( 140.00 -0.809 0.7883) - ( 145.00 -0.818 0.6684) - ( 150.00 -0.800 0.5457) - ( 155.00 -0.754 0.4236) - ( 160.00 -0.677 0.3066) - ( 170.00 -0.417 0.1085) - ( 175.00 -0.229 0.0510) - ( 180.00 0.000 0.0407) -); diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU40_A17 b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU40_A17 deleted file mode 100755 index 6138a98dd..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/DU40_A17 +++ /dev/null @@ -1,156 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180.00 0.000 0.0602) - (-175.00 0.218 0.0699) - (-170.00 0.397 0.1107) - (-160.00 0.642 0.3045) - (-155.00 0.715 0.4179) - (-150.00 0.757 0.5355) - (-145.00 0.772 0.6535) - (-140.00 0.762 0.7685) - (-135.00 0.731 0.8777) - (-130.00 0.680 0.9788) - (-125.00 0.613 1.0700) - (-120.00 0.532 1.1499) - (-115.00 0.439 1.2174) - (-110.00 0.337 1.2716) - (-105.00 0.228 1.3118) - (-100.00 0.114 1.3378) - ( -95.00 -0.002 1.3492) - ( -90.00 -0.120 1.3460) - ( -85.00 -0.236 1.3283) - ( -80.00 -0.349 1.2964) - ( -75.00 -0.456 1.2507) - ( -70.00 -0.557 1.1918) - ( -65.00 -0.647 1.1204) - ( -60.00 -0.727 1.0376) - ( -55.00 -0.792 0.9446) - ( -50.00 -0.842 0.8429) - ( -45.00 -0.874 0.7345) - ( -40.00 -0.886 0.6215) - ( -35.00 -0.875 0.5067) - ( -30.00 -0.839 0.3932) - ( -25.00 -0.777 0.2849) - ( -24.00 -0.761 0.2642) - ( -23.00 -0.744 0.2440) - ( -22.00 -0.725 0.2242) - ( -21.00 -0.706 0.2049) - ( -20.00 -0.685 0.1861) - ( -19.00 -0.662 0.1687) - ( -18.00 -0.635 0.1533) - ( -17.00 -0.605 0.1398) - ( -16.00 -0.571 0.1281) - ( -15.00 -0.534 0.1183) - ( -14.00 -0.494 0.1101) - ( -13.00 -0.452 0.1036) - ( -12.00 -0.407 0.0986) - ( -11.00 -0.360 0.0951) - ( -10.00 -0.311 0.0931) - ( -8.00 -0.208 0.0930) - ( -6.00 -0.111 0.0689) - ( -5.50 -0.090 0.0614) - ( -5.00 -0.072 0.0547) - ( -4.50 -0.065 0.0480) - ( -4.00 -0.054 0.0411) - ( -3.50 -0.017 0.0349) - ( -3.00 0.003 0.0299) - ( -2.50 0.014 0.0255) - ( -2.00 0.009 0.0198) - ( -1.50 0.004 0.0164) - ( -1.00 0.036 0.0147) - ( -0.50 0.073 0.0137) - ( 0.00 0.137 0.0113) - ( 0.50 0.213 0.0114) - ( 1.00 0.292 0.0118) - ( 1.50 0.369 0.0122) - ( 2.00 0.444 0.0124) - ( 2.50 0.514 0.0124) - ( 3.00 0.580 0.0123) - ( 3.50 0.645 0.0120) - ( 4.00 0.710 0.0119) - ( 4.50 0.776 0.0122) - ( 5.00 0.841 0.0125) - ( 5.50 0.904 0.0129) - ( 6.00 0.967 0.0135) - ( 6.50 1.027 0.0144) - ( 7.00 1.084 0.0158) - ( 7.50 1.140 0.0174) - ( 8.00 1.193 0.0198) - ( 8.50 1.242 0.0231) - ( 9.00 1.287 0.0275) - ( 9.50 1.333 0.0323) - ( 10.00 1.368 0.0393) - ( 10.50 1.400 0.0475) - ( 11.00 1.425 0.0580) - ( 11.50 1.449 0.0691) - ( 12.00 1.473 0.0816) - ( 12.50 1.494 0.0973) - ( 13.00 1.513 0.1129) - ( 13.50 1.538 0.1288) - ( 14.50 1.587 0.1650) - ( 15.00 1.614 0.1845) - ( 15.50 1.631 0.2052) - ( 16.00 1.649 0.2250) - ( 16.50 1.666 0.2467) - ( 17.00 1.681 0.2684) - ( 17.50 1.699 0.2900) - ( 18.00 1.719 0.3121) - ( 19.00 1.751 0.3554) - ( 19.50 1.767 0.3783) - ( 20.50 1.798 0.4212) - ( 21.00 1.810 0.4415) - ( 22.00 1.830 0.4830) - ( 23.00 1.847 0.5257) - ( 24.00 1.861 0.5694) - ( 25.00 1.872 0.6141) - ( 26.00 1.881 0.6593) - ( 28.00 1.894 0.7513) - ( 30.00 1.904 0.8441) - ( 32.00 1.915 0.9364) - ( 35.00 1.929 1.0722) - ( 40.00 1.903 1.2873) - ( 45.00 1.820 1.4796) - ( 50.00 1.690 1.6401) - ( 55.00 1.522 1.7609) - ( 60.00 1.323 1.8360) - ( 65.00 1.106 1.8614) - ( 70.00 0.880 1.8347) - ( 75.00 0.658 1.7567) - ( 80.00 0.449 1.6334) - ( 85.00 0.267 1.4847) - ( 90.00 0.124 1.3879) - ( 95.00 0.002 1.3912) - ( 100.00 -0.118 1.3795) - ( 105.00 -0.235 1.3528) - ( 110.00 -0.348 1.3114) - ( 115.00 -0.453 1.2557) - ( 120.00 -0.549 1.1864) - ( 125.00 -0.633 1.1041) - ( 130.00 -0.702 1.0102) - ( 135.00 -0.754 0.9060) - ( 140.00 -0.787 0.7935) - ( 145.00 -0.797 0.6750) - ( 150.00 -0.782 0.5532) - ( 155.00 -0.739 0.4318) - ( 160.00 -0.664 0.3147) - ( 170.00 -0.410 0.1144) - ( 175.00 -0.226 0.0702) - ( 180.00 0.000 0.0602) -); diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/NACA64_A17 b/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/NACA64_A17 deleted file mode 100755 index 11fa618d0..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/constant/airfoilProperties/NACA64_A17 +++ /dev/null @@ -1,147 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object airfoilProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -airfoilData -( -// alpha C_l C_d - (-180.00 0.000 0.0198) - (-175.00 0.374 0.0341) - (-170.00 0.749 0.0955) - (-160.00 0.659 0.2807) - (-155.00 0.736 0.3919) - (-150.00 0.783 0.5086) - (-145.00 0.803 0.6267) - (-140.00 0.798 0.7427) - (-135.00 0.771 0.8537) - (-130.00 0.724 0.9574) - (-125.00 0.660 1.0519) - (-120.00 0.581 1.1355) - (-115.00 0.491 1.2070) - (-110.00 0.390 1.2656) - (-105.00 0.282 1.3104) - (-100.00 0.169 1.3410) - ( -95.00 0.052 1.3572) - ( -90.00 -0.067 1.3587) - ( -85.00 -0.184 1.3456) - ( -80.00 -0.299 1.3181) - ( -75.00 -0.409 1.2765) - ( -70.00 -0.512 1.2212) - ( -65.00 -0.606 1.1532) - ( -60.00 -0.689 1.0731) - ( -55.00 -0.759 0.9822) - ( -50.00 -0.814 0.8820) - ( -45.00 -0.850 0.7742) - ( -40.00 -0.866 0.6610) - ( -35.00 -0.860 0.5451) - ( -30.00 -0.829 0.4295) - ( -25.00 -0.853 0.3071) - ( -24.00 -0.870 0.2814) - ( -23.00 -0.890 0.2556) - ( -22.00 -0.911 0.2297) - ( -21.00 -0.934 0.2040) - ( -20.00 -0.958 0.1785) - ( -19.00 -0.982 0.1534) - ( -18.00 -1.005 0.1288) - ( -17.00 -1.082 0.1037) - ( -16.00 -1.113 0.0786) - ( -15.00 -1.105 0.0535) - ( -14.00 -1.078 0.0283) - ( -13.50 -1.053 0.0158) - ( -13.00 -1.015 0.0151) - ( -12.00 -0.904 0.0134) - ( -11.00 -0.807 0.0121) - ( -10.00 -0.711 0.0111) - ( -9.00 -0.595 0.0099) - ( -8.00 -0.478 0.0091) - ( -7.00 -0.375 0.0086) - ( -6.00 -0.264 0.0082) - ( -5.00 -0.151 0.0079) - ( -4.00 -0.017 0.0072) - ( -3.00 0.088 0.0064) - ( -2.00 0.213 0.0054) - ( -1.00 0.328 0.0052) - ( 0.00 0.442 0.0052) - ( 1.00 0.556 0.0052) - ( 2.00 0.670 0.0053) - ( 3.00 0.784 0.0053) - ( 4.00 0.898 0.0054) - ( 5.00 1.011 0.0058) - ( 6.00 1.103 0.0091) - ( 7.00 1.181 0.0113) - ( 8.00 1.257 0.0124) - ( 8.50 1.293 0.0130) - ( 9.00 1.326 0.0136) - ( 9.50 1.356 0.0143) - ( 10.00 1.382 0.0150) - ( 10.50 1.400 0.0267) - ( 11.00 1.415 0.0383) - ( 11.50 1.425 0.0498) - ( 12.00 1.434 0.0613) - ( 12.50 1.443 0.0727) - ( 13.00 1.451 0.0841) - ( 13.50 1.453 0.0954) - ( 14.00 1.448 0.1065) - ( 14.50 1.444 0.1176) - ( 15.00 1.445 0.1287) - ( 15.50 1.447 0.1398) - ( 16.00 1.448 0.1509) - ( 16.50 1.444 0.1619) - ( 17.00 1.438 0.1728) - ( 17.50 1.439 0.1837) - ( 18.00 1.448 0.1947) - ( 18.50 1.452 0.2057) - ( 19.00 1.448 0.2165) - ( 19.50 1.438 0.2272) - ( 20.00 1.428 0.2379) - ( 21.00 1.401 0.2590) - ( 22.00 1.359 0.2799) - ( 23.00 1.300 0.3004) - ( 24.00 1.220 0.3204) - ( 25.00 1.168 0.3377) - ( 26.00 1.116 0.3554) - ( 28.00 1.015 0.3916) - ( 30.00 0.926 0.4294) - ( 32.00 0.855 0.4690) - ( 35.00 0.800 0.5324) - ( 40.00 0.804 0.6452) - ( 45.00 0.793 0.7573) - ( 50.00 0.763 0.8664) - ( 55.00 0.717 0.9708) - ( 60.00 0.656 1.0693) - ( 65.00 0.582 1.1606) - ( 70.00 0.495 1.2438) - ( 75.00 0.398 1.3178) - ( 80.00 0.291 1.3809) - ( 85.00 0.176 1.4304) - ( 90.00 0.053 1.4565) - ( 95.00 -0.074 1.4533) - ( 100.00 -0.199 1.4345) - ( 105.00 -0.321 1.4004) - ( 110.00 -0.436 1.3512) - ( 115.00 -0.543 1.2874) - ( 120.00 -0.640 1.2099) - ( 125.00 -0.723 1.1196) - ( 130.00 -0.790 1.0179) - ( 135.00 -0.840 0.9064) - ( 140.00 -0.868 0.7871) - ( 145.00 -0.872 0.6627) - ( 150.00 -0.850 0.5363) - ( 155.00 -0.798 0.4116) - ( 160.00 -0.714 0.2931) - ( 170.00 -0.749 0.0971) - ( 175.00 -0.374 0.0334) - ( 180.00 0.000 0.0198) -); diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/g b/exampleCases/example.ADM.ssc.zeromq/constant/g deleted file mode 100755 index 74304427f..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/constant/g +++ /dev/null @@ -1,22 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class uniformDimensionedVectorField; - location "constant"; - object g; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -dimensions [0 1 -2 0 0 0 0]; -value ( 0.0 0.0 -9.81 ); - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/polyMesh/blockMeshDict b/exampleCases/example.ADM.ssc.zeromq/constant/polyMesh/blockMeshDict deleted file mode 100755 index 575f61147..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/constant/polyMesh/blockMeshDict +++ /dev/null @@ -1,105 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object blockMeshDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../../setUp" - - - - -convertToMeters 1.0; - -vertices -( - ( $xMin $yMin $zMin) - ( $xMax $yMin $zMin) - ( $xMax $yMax $zMin) - ( $xMin $yMax $zMin) - ( $xMin $yMin $zMax) - ( $xMax $yMin $zMax) - ( $xMax $yMax $zMax) - ( $xMin $yMax $zMax) -); - -blocks -( - hex (0 1 2 3 4 5 6 7) ($nx $ny $nz) simpleGrading (1 1 1) -); - -edges -( -); - -boundary -( - lower - { - type wall; - faces - ( - (0 3 2 1) - ); - } - upper - { - type patch; - faces - ( - (4 5 6 7) - ); - } - west - { - type cyclic; - neighbourPatch east; - faces - ( - (0 4 7 3) - ); - } - east - { - type cyclic; - neighbourPatch west; - faces - ( - (1 2 6 5) - ); - } - north - { - type cyclic; - neighbourPatch south; - faces - ( - (3 7 6 2) - ); - } - south - { - type cyclic; - neighbourPatch north; - faces - ( - (0 1 5 4) - ); - } -); - -mergePatchPairs -( -); - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/transportProperties b/exampleCases/example.ADM.ssc.zeromq/constant/transportProperties deleted file mode 100755 index 3ee719c86..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/constant/transportProperties +++ /dev/null @@ -1,39 +0,0 @@ -/*---------------------------------------------------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.openfoam.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ - -FoamFile -{ - version 2.0; - format ascii; - - root ""; - case ""; - instance ""; - local ""; - - class dictionary; - object transportProperties; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -transportModel Newtonian; - -// Molecular viscosity -nu nu [0 2 -1 0 0 0 0] $nu; - -// Reference temperature -TRef TRef [0 0 0 1 0 0 0] $TRef; - -// Prandtl numbers -Pr Pr [0 0 0 0 0 0 0] $Pr; -Prt Prt [0 0 0 0 0 0 0] $Prt; -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/turbineArrayProperties b/exampleCases/example.ADM.ssc.zeromq/constant/turbineArrayProperties deleted file mode 100755 index 45f719a78..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/constant/turbineArrayProperties +++ /dev/null @@ -1,76 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object turbineProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -globalProperties -{ - outputControl "timeStep"; - outputInterval 1; -} - -// _SSC_ -sscProperties -{ - sscEnabled true; //Enable/disable ssc, if not present defaults to False - nInputsToSSC 3; // Number of inputs EACH turbine passes to the super controller - nOutputsFromSSC 2; // Number of outputs the super controller sends to EACH turbine - sscControllerType "zeromqSSC"; // The type of SSC -} - -turbine0 -{ - turbineType "NREL5MWRef"; - baseLocation (1000.0 1500.0 0.0); - nRadial 64; - azimuthMaxDis 2.0; - nAvgSector 1; - pointDistType "uniform"; - pointInterpType "linear"; - bladeUpdateType "oldPosition"; - epsilon 20.0; - forceScalar 1.0; - inflowVelocityScalar 0.94; - tipRootLossCorrType "Glauert"; - rotationDir "cw"; - Azimuth 0.0; - RotSpeed 9.15519863; - TorqueGen 0.0; - Pitch 0.0; - NacYaw 270.0; - fluidDensity 1.225; -} - -turbine1 -{ - turbineType "NREL5MWRef"; - baseLocation (1500.0 1500.0 0.0); - nRadial 64; - azimuthMaxDis 2.0; - nAvgSector 1; - pointDistType "uniform"; - pointInterpType "linear"; - bladeUpdateType "oldPosition"; - epsilon 20.0; - forceScalar 1.0; - inflowVelocityScalar 0.94; - tipRootLossCorrType "Glauert"; - rotationDir "cw"; - Azimuth 0.0; - RotSpeed 9.15519863; - TorqueGen 0.0; - Pitch 0.0; - NacYaw 270.0; - fluidDensity 1.225; -} diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/turbineProperties/NREL5MWRef b/exampleCases/example.ADM.ssc.zeromq/constant/turbineProperties/NREL5MWRef deleted file mode 100755 index c51e9a8fd..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/constant/turbineProperties/NREL5MWRef +++ /dev/null @@ -1,122 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.x | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ - -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object turbineProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -NumBl 3; -TipRad 63.0; -HubRad 1.5; -UndSling 0.0; -OverHang -5.01910; -NacelleLength 8; -NacelleFrontalArea 2; -NacelleCd 0.5; -TowerHt 87.6; -Twr2Shft 1.96256; -ShftTilt -5.0; -PreCone (-2.5 -2.5 -2.5); -GBRatio 97.0; -GBEfficiency 1.0; -GenEfficiency 0.944; -RatedRotSpeed 12.1; -GenIner 534.116; -HubIner 115.926E3; -BladeIner 11.776047E6; -GenTorqueControllerType "fiveRegion"; -//GenTorqueControllerType "speedTorqueTable"; -//GenTorqueControllerType "none"; -BladePitchControllerType "PIDSC"; -//BladePitchControllerType "none"; -NacYawControllerType "yawSC"; -RotSpeedLimiter false; -GenTorqueRateLimiter true; -NacYawRateLimiter true; -BladePitchRateLimiter true; -SpeedFilterCornerFrequency 2.0; - - -GenTorqueControllerParams -{ - RateLimitGenTorque 15.0E3; - SpeedTorqueTable - ( - // gen speed (RPM) gen torque (N-m) - ( 670.00 0.0 ) - ( 871.00 20000.0 ) - ( 1161.96 32000.0 ) - ( 1173.70 43093.6 ) - ); - CutInGenSpeed 670.0; - Region2StartGenSpeed 871.0; - Region2EndGenSpeed 1161.963; - CutInGenTorque 0.0; - RatedGenTorque 43.09355E3; - KGen 2.55764E-2; -} - -BladePitchControllerParams -{ - RateLimitBladePitch 8.000; - PitchMin 0.000; - PitchMax 90.000; - PitchK 6.302336; - PitchControlKP 1.82620057; - PitchControlKI 0.78265750; - PitchControlKD 0.000; -} - -NacYawControllerParams -{ - RateLimitNacYaw 2.0; -} - - - - -Airfoils -( - "Cylinder1" - "Cylinder2" - "DU40_A17" - "DU35_A17" - "DU30_A17" - "DU25_A17" - "DU21_A17" - "NACA64_A17" -); - - - -BladeData -( -// radius(m) c(m) twist(deg) airfoil - (2.8667 3.542 13.308 0) - (5.6 3.854 13.308 0) - (8.3333 4.167 13.308 1) - (11.75 4.557 13.308 2) - (15.85 4.652 11.48 3) - (19.95 4.458 10.162 3) - (24.05 4.249 9.011 4) - (28.15 4.007 7.795 5) - (32.25 3.748 6.544 5) - (36.35 3.502 5.361 6) - (40.45 3.256 4.188 6) - (44.55 3.01 3.125 7) - (48.65 2.764 2.319 7) - (52.75 2.518 1.526 7) - (56.1667 2.313 0.863 7) - (58.9 2.086 0.37 7) - (61.6333 1.419 0.106 7) -); diff --git a/exampleCases/example.ADM.ssc.zeromq/constant/turbulenceProperties b/exampleCases/example.ADM.ssc.zeromq/constant/turbulenceProperties deleted file mode 100755 index f8a545e0c..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/constant/turbulenceProperties +++ /dev/null @@ -1,22 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "constant"; - object turbulenceProperties; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -// simulationType RASModel; - simulationType LESModel; -// simulationType laminar; - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/runscript.preprocess b/exampleCases/example.ADM.ssc.zeromq/runscript.preprocess deleted file mode 100755 index 8d2aa51f7..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/runscript.preprocess +++ /dev/null @@ -1,170 +0,0 @@ -#!/bin/bash -#PBS -l walltime=4:00:00 -#PBS -l procs=1 -#PBS -A ssc -#PBS -q short - - - - - -# User Input. -OpenFOAMversion=2.4.x # OpenFOAM version - -startTime=20000 # Start time -precursorDir=/projects/ssc/flowLibrary/neutral_3kmx3kmx1km - -updateBCType=1 # Boolean for whether or not the boundary condition types will be updated over - # what is in the initial conditions files. Leave it 0 for precursors. -inflowDir='west' # For inflow/outflow cases, specify the inflow direction. Choices are 'west', - # 'east', 'south', 'west', 'southWest', 'northWest', 'southEast', and - # 'northEast'. There is a 'cyclic' option too in case you need to change - # back to cyclic or simply update the number of boundary face entries. -localRefinementLevels=0 # Number of levels of local refinement (requires system/topoSetDict and - # system/refineHexMeshDict). -globalRefinementLevels=0 # Number of levels of global refinement. -cores=1 # Enter the number of cores you will preprocess on. - - - - - - -# Define some functions for mesh refinement. -# Local refinement performed on one core. -refineMeshLocal() -{ - i=$1 - while [ $i -ge 1 ] - do - echo " -Performing level $i local refinement with topoSet/refineHexMesh" - echo " *selecting cells to refine..." - topoSet -dict system/topoSetDict.local.$i > log.topoSet.local.$i 2>&1 - - echo " *refining cells..." - refineHexMesh local -overwrite > log.refineHexMesh.local.$i 2>&1 - - let i=i-1 - done -} - -# Global refinement performed in parallel. -refineMeshGlobal() -{ - i=1 - while [ $i -le $1 ] - do - echo " -Performing level $i global refinement with refineMesh" - echo " *refining cells..." - mpirun -np $cores refineMesh -parallel -overwrite > log.refineMesh.global.$i 2>&1 - - let i=i+1 - done -} - - -# If running in parallel, cd to job launch directory -if [ $cores -gt 1 ] - then - cd $PBS_O_WORKDIR -fi - - -# Source the bash profile and then call the appropriate OpenFOAM version function -# so that all the modules and environment variables get set. -echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." -source $HOME/.bash_profile -OpenFOAM-$OpenFOAMversion - - -# Copy the controlDict.1 (assuming this is the one the actual solver will start -# out with) to controlDict. OpenFOAM reads "controlDict", not the numbered ones. -echo "Getting the control dictionary ready..." -cp system/controlDict.1 system/controlDict - - -# Copy the "clean" .original initial fields to a working copy. OpenFOAM does not -# read the ".original" initial fields--that's why they remain clean. -echo "Getting the initial condition directory from the precursor..." -rm -rf $startTime -cp -rf $precursorDir/$startTime $startTime - - -# Build the mesh. -echo "Copy the the base mesh from the precursor..." -rm -rf constant/polyMesh -cp -rf $precursorDir/constant/polyMesh ./constant - - -# Get the inflow data linked up. -echo "Linking the inflow data with this directory..." -ln -s $precursorDir/drivingData/boundaryData ./constant - - -# Get the driving source terms linked up. -echo "Linking the driving source terms with this directory..." -ln -s $precursorDir/drivingData/sources ./constant - - -# The initial fields come from the precursor which is periodic on all sides. The turbine -# case has inflow and outflow. Call the changeDictionary utility to update for inflow/outflow.. -if [ $updateBCType -eq 1 ] - then - echo "Using changeDictionary to update boundary conditions..." - changeDictionary -dict system/changeDictionaryDict.updateBCs.$inflowDir -time $startTime -enableFunctionEntries > log.changeDictionary.updateBCs.$inflowDir.1 2>&1 -fi - - -# Do serial local refinement -echo "Using refineHexMesh to perform " $localRefinementLevels " of local refinement..." -refineMeshLocal $localRefinementLevels - - -# If running in paralle from this point forward, then do the following: -if [ $cores -gt 1 ] - then - # Decompose the mesh and solution files (serial) - echo "Using decomposePar to decompose the problem for parallel processing..." - decomposePar -cellDist -force -time $startTime > log.decomposePar 2>&1 - - # Check the mesh - echo "Running checkMesh to report mesh diagnostics..." - mpirun -np $cores checkMesh -parallel > log.checkMesh.1 2>&1 - - # Perform global refinement to desired resolution. - echo "Using refineMesh to perform " $globalRefinementLevels " of global refinement..." - refineMeshGlobal $globalRefinementLevels - - # The mesh got globally refined, but the solution file did not, so - # the boundary fields may not have the correct number of entries. - # Use the changeDictionary utility to overwrite the spatially varying - # boundary data to a uniform single value. - if [ $updateBCType -eq 1 ] - then - echo "Using changeDictionary to ensure that the boundaries have the correct number of faces..." - mpirun -np $cores changeDictionary -dict system/changeDictionaryDict.updateBCs.$inflowDir -time $startTime -enableFunctionEntries -parallel > log.changeDictionary.updateBCs.$inflowDir.1 2>&1 - fi - - # Renumber the mesh for better matrix solver performance. - echo "Using renumberMesh to renumber the mesh for better matrix conditioning..." - mpirun -np $cores renumberMesh -parallel -overwrite -time $startTime > log.renumberMesh 2>&1 - - # Do one last check on the mesh. - echo "Running checkMesh to report mesh diagnostics..." - mpirun -np $cores checkMesh -parallel > log.checkMesh.3 2>&1 - - -# Otherwise, run in serial as follows: -else - # Renumber the mesh. - echo "Using renumberMesh to renumber the mesh for better matrix conditioning..." - renumberMesh -overwrite -time $startTime > log.renumberMesh 2>&1 - - # Decompose the mesh and solution files (serial) - echo "Using decomposePar to decompose the problem for parallel processing..." - decomposePar -cellDist -force -time $startTime > log.decomposePar 2>&1 - - # Check the mesh. - echo "Running checkMesh to report mesh diagnostics..." - checkMesh > log.checkMesh.1 2>&1 -fi diff --git a/exampleCases/example.ADM.ssc.zeromq/runscript.solve.1 b/exampleCases/example.ADM.ssc.zeromq/runscript.solve.1 deleted file mode 100755 index c8f167af9..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/runscript.solve.1 +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/bash -#PBS -l walltime=2:00:00 -#PBS -l procs=180 -#PBS -A ssc -#PBS -q short -#PBS -l qos=high - -cd $PBS_O_WORKDIR - - - - -# User Input. -OpenFOAMversion=2.4.x # OpenFOAM version -startTime=0 # Start time -cores=180 # Enter the number of cores you will preprocess on. -runNumber=1 # Enter the run number (useful for keeping track of restarts). -solver=windPlantSolver.ADM # Enter the name of the flow solver. - - - -echo "Starting OpenFOAM job at: " $(date) -echo "using " $cores " cores" - - -# Source the bash profile and then call the appropriate OpenFOAM version function -# so that all the modules and environment variables get set. -echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." -source $HOME/.bash_profile -OpenFOAM-2.4.develop - - -# Get the control dictionary for this particular run. -cp system/controlDict.$runNumber system/controlDict - - -# Run the solver. -mpirun -np $cores $solver -parallel > log.$runNumber.$solver 2>&1 - -echo "Ending OpenFOAM job at: " $(date) diff --git a/exampleCases/example.ADM.ssc.zeromq/setUp b/exampleCases/example.ADM.ssc.zeromq/setUp deleted file mode 100755 index 427ba153e..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/setUp +++ /dev/null @@ -1,103 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.4.x | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ - -// Domain size and number of cells. -xMin 0.0; // Minimum x-extent of domain (m). -yMin 0.0; // Minimum y-extent of domain (m). -zMin 0.0; // Minimum z-extent of domain (m). -xMax 3000.0; // Maximum x-extent of domain (m). -yMax 3000.0; // Maximum y-extent of domain (m). -zMax 1000.0; // Maximum z-extent of domain (m). -nx 300; // Number of cells in x-direction. -ny 300; // Number of cells in y-direction. -nz 100; // Number of cells in z-direction. - - - - -// Number of cores and domain decomposition information. -nCores 180; // Number of cores on which to run this case. -decompType simple; // Decomposition algorithm. "simple" and "scotch" are good choices. -decompOrder (6 6 5); // Order of the decomposition number of partitions in (x y z)-directions. - - - - -// Planar averaging and source term statistics options. -statisticsOn true; // Gather planar-averaged flow statistics. -statisticsFrequency 5; // Frequency in time steps of statistics gathering. -avgStartTime 20200; // Time to begin accumulating the mean; -corrStartTime 20400; // Time to begin accumulating the correlations; - - - -// Initial values for the variables. -// Note that U and T get overwritten if setFieldsABL is called. -U0Mag 8.0; // Initial condition for wind speed (m/s). -dir 270.0; // Initial condition for wind direction (deg). -windHeight 99.27; // Height at which to drive mean wind to U0Mag/dir (m). -p_rgh0 0.0; // Initial pressure (minus the hydrostatic variation and normalized by density) (m^2/s^2). -nuSgs0 0.0; // Initial SGS viscosity (m^2/s). -k0 0.1; // Initial SGS turbulent kinetic energy (m^2/s^2). -kappat0 0.0; // Initial SGS temperature diffusivity (m^2/s). -TGradUpper 0.003; // Potential temperature gradient above the strong inversion (K/m). -zInversion 750.0; // Height of the middle of the initial strong capping inversion (m). -inversionWidth 100.0; // Vertical width of the intial strong capping inversion (m). -TBottom 300.0; // Initial potential temperature at bottom of strong capping inversion (K). -TTop 305.0; // Initial potential temperature at top of strong capping inversion (K). - - - - -// General conditions and parameters. -Pr 0.7; // Molecular Prandtl number. -Prt 0.33333333; // Turbulent Prandtl number. -nu 1.0E-5; // Molecular viscosity (m^2/s). -TRef 300.0; // Reference potential temperature (K). -latitude 41.3; // Latitude on the Earth of the site (deg). -EarthPeriod 24.0; // Earth's rotation period (hr). - - - - -// SGS model inputs. -LESModel oneEqEddyABL; // SGS model selection. -ce 0.93; // SGS model constant. -ck 0.0673; // SGS model constant. - - - - -// Surface conditions. -qwall (0.0 0.0 0.0); // Temperature flux at wall (modify the z-value). A negative value is flux into domain (K-m/s). -Rwall (0.0 0.0 0.0 0.0 0.0 0.0); // Initial wall shear stress (m^2/s^2). -kappa 0.4; // von Karman constant. -z0 0.15; // Surface roughness (m). -//STABLE CASES -//betaM 15.0; // Monin-Obukhov wall shear stress model constant. -//gammaM 4.9; // Monin-Obukhov wall shear stress model constant. -//betaH 9.0; // Monin-Obukhov wall temperature flux model constant. -//gammaH 7.8; // Monin-Obukhov wall temperature flux model constant. -//alphaH 1.0; // Monin-Obukhov wall temperature flux model constant. -//heatingRate 0.0; // Surface temperature change rate (when not directly setting temperature flux) (K/s). -//NEUTRAL and UNSTABLE -betaM 16.0; -gammaM 5.0; -betaH 9.0; -gammaH 7.8; -alphaH 1.0; - - - - - - -#inputMode merge - -// ************************************************************************* // - diff --git a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.cyclic b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.cyclic deleted file mode 100755 index 389d1c7e8..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.cyclic +++ /dev/null @@ -1,261 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp"; - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - boundary - { - north - { - type cyclic; - } - south - { - type cyclic; - } - west - { - type cyclic; - } - east - { - type cyclic; - } - } - - - T - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - } - } - U - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - } - } - k - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - } - } - kappat - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - } - } - nuSgs - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - } - } - p_rgh - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - west - { - type cyclic; - } - east - { - type cyclic; - } - south - { - type cyclic; - } - north - { - type cyclic; - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "planarAverage"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.east b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.east deleted file mode 100755 index 3143cb1ab..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.east +++ /dev/null @@ -1,306 +0,0 @@ -/a*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp"; - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - boundary - { - west - { - type patch; - } - east - { - type patch; - } - } - - - - T - { - boundaryField - { - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - west - { - type zeroGradient; - value uniform 300; - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - west - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - west - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - west - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - west - { - type zeroGradient; - value uniform 0.1; - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - west - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - east - { - type fixedFluxPressure; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type fixedFluxPressure; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - east - { - type fixedValue; - value uniform (0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - east - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.north b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.north deleted file mode 100755 index 6d390357b..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.north +++ /dev/null @@ -1,217 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - - -#include "../setUp"; - - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - - boundary - { - north - { - type patch; - } - south - { - type patch; - } - } - - T - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - south - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - south - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - south - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - north - { - type zeroGradient; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - north - { - type zeroGradient; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - north - { - type fixedFluxPressure; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - north - { - type fixedValue; - value uniform (0 0 0); - } - south - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - north - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - south - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.northeast b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.northeast deleted file mode 100755 index 8c5231d75..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.northeast +++ /dev/null @@ -1,313 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp"; - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - boundary - { - north - { - type patch; - } - south - { - type patch; - } - west - { - type patch; - } - east - { - type patch; - } - } - - - T - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - south - { - type zeroGradient; - value uniform 300; - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - west - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - south - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - west - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - south - { - type zeroGradient; - value uniform 0.1; - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - west - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - north - { - type zeroGradient; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - north - { - type zeroGradient; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - north - { - type fixedFluxPressure; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - east - { - type fixedFluxPressure; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - north - { - type fixedValue; - value uniform (0 0 0); - } - south - { - type fixedValue; - value uniform (0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - north - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - south - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.northwest b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.northwest deleted file mode 100755 index 46c74d091..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.northwest +++ /dev/null @@ -1,313 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp"; - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - - boundary - { - north - { - type patch; - } - south - { - type patch; - } - west - { - type patch; - } - east - { - type patch; - } - } - - - T - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - south - { - type zeroGradient; - value uniform 300; - } - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - east - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - south - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - east - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - north - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - south - { - type zeroGradient; - value uniform 0.1; - } - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - east - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - north - { - type zeroGradient; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - north - { - type zeroGradient; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - north - { - type fixedFluxPressure; - value uniform 0.0; - } - south - { - type zeroGradient; - value uniform 0.0; - } - west - { - type fixedFluxPressure; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - north - { - type fixedValue; - value uniform (0 0 0); - } - south - { - type fixedValue; - value uniform (0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - north - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - south - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.south b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.south deleted file mode 100755 index c7b2263b6..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.south +++ /dev/null @@ -1,215 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp"; - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - - boundary - { - north - { - type patch; - } - south - { - type patch; - } - } - - T - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - north - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - north - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - north - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - south - { - type zeroGradient; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - south - { - type zeroGradient; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - south - { - type fixedFluxPressure; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - south - { - type fixedValue; - value uniform (0 0 0); - } - north - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - south - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - north - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.southeast b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.southeast deleted file mode 100755 index 685b7f941..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.southeast +++ /dev/null @@ -1,314 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp"; - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - - boundary - { - north - { - type patch; - } - south - { - type patch; - } - west - { - type patch; - } - east - { - type patch; - } - } - - - T - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - north - { - type zeroGradient; - value uniform 300; - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - west - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - north - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - west - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - north - { - type zeroGradient; - value uniform 0.1; - } - east - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - west - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - south - { - type zeroGradient; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - south - { - type zeroGradient; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - south - { - type fixedFluxPressure; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - east - { - type fixedFluxPressure; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - south - { - type fixedValue; - value uniform (0 0 0); - } - north - { - type fixedValue; - value uniform (0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - south - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - north - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.southwest b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.southwest deleted file mode 100755 index 9ab9bc83f..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.southwest +++ /dev/null @@ -1,313 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - - boundary - { - north - { - type patch; - } - south - { - type patch; - } - west - { - type patch; - } - east - { - type patch; - } - } - - T - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - north - { - type zeroGradient; - value uniform 300; - } - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - east - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - north - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - east - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - south - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - north - { - type zeroGradient; - value uniform 0.1; - } - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - east - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - south - { - type zeroGradient; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - south - { - type zeroGradient; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - south - { - type fixedFluxPressure; - value uniform 0.0; - } - north - { - type zeroGradient; - value uniform 0.0; - } - west - { - type fixedFluxPressure; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - south - { - type fixedValue; - value uniform (0 0 0); - } - north - { - type fixedValue; - value uniform (0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - south - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - north - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - west - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.west b/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.west deleted file mode 100755 index 34078e2b8..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/changeDictionaryDict.updateBCs.west +++ /dev/null @@ -1,215 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.0 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object changeDictionaryDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp"; - - -dictionaryReplacement -{ - - // Specify - // - all fvPatchFields with potential non-uniform values - // - all fvPatchFields originating from meshing - // - all fvPatchFields originating from mesh-redistribution - - boundary - { - west - { - type patch; - } - east - { - type patch; - } - } - - - T - { - boundaryField - { - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 300; - } - east - { - type zeroGradient; - value uniform 300; - } - } - } - U - { - boundaryField - { - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset (0 0 0); - value uniform (0 0 0); - } - east - { - type inletOutlet; - inletValue uniform (0 0 0); - value uniform (0 0 0); - } - } - } - k - { - boundaryField - { - west - { - type timeVaryingMappedFixedValue; - setAverage 0; - peturb 1e-05; - offset 0; - value uniform 0.1; - } - east - { - type zeroGradient; - value uniform 0.1; - } - } - } - kappat - { - boundaryField - { - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - } - } - nuSgs - { - boundaryField - { - west - { - type zeroGradient; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - } - } - p_rgh - { - boundaryField - { - west - { - type fixedFluxPressure; - value uniform 0.0; - } - east - { - type zeroGradient; - value uniform 0.0; - } - lower - { - type fixedFluxPressure; - value uniform 0.0; - } - upper - { - type fixedFluxPressure; - value uniform 0.0; - } - } - } - qwall - { - boundaryField - { - west - { - type fixedValue; - value uniform (0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0); - } - lower - { - type fixedValue; - value uniform (0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0); - } - } - } - Rwall - { - boundaryField - { - west - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - east - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - lower - { - type SchumannGrotzbach; - kappa $kappa; - z0 uniform $z0; - betaM $betaM; - gammaM $gammaM; - averageType "local"; - value uniform (0 0 0 0 0 0); - } - upper - { - type fixedValue; - value uniform (0 0 0 0 0 0); - } - } - } -} -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/controlDict b/exampleCases/example.ADM.ssc.zeromq/system/controlDict deleted file mode 100755 index 94f0bacaa..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/controlDict +++ /dev/null @@ -1,61 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object controlDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - - application ABLSolver; - - libs ("libuserfiniteVolume.so" "libuserincompressibleLESModels.so"); - - startFrom startTime; - - startTime 20000.0; - - stopAt endTime; - - endTime 23600.0; - - deltaT 0.5; - - writeControl adjustableRunTime; - - writeInterval 1000.0; - - purgeWrite 0; - - writeFormat binary; - - writePrecision 12; - - writeCompression compressed; - - timeFormat general; - - timePrecision 12; - - runTimeModifiable yes; - - adjustTimeStep no; - - maxCo 0.75; - - maxDeltaT 25.0; - - functions - { - } - -// ************************************************************************* // - diff --git a/exampleCases/example.ADM.ssc.zeromq/system/controlDict.1 b/exampleCases/example.ADM.ssc.zeromq/system/controlDict.1 deleted file mode 100755 index 94f0bacaa..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/controlDict.1 +++ /dev/null @@ -1,61 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object controlDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - - application ABLSolver; - - libs ("libuserfiniteVolume.so" "libuserincompressibleLESModels.so"); - - startFrom startTime; - - startTime 20000.0; - - stopAt endTime; - - endTime 23600.0; - - deltaT 0.5; - - writeControl adjustableRunTime; - - writeInterval 1000.0; - - purgeWrite 0; - - writeFormat binary; - - writePrecision 12; - - writeCompression compressed; - - timeFormat general; - - timePrecision 12; - - runTimeModifiable yes; - - adjustTimeStep no; - - maxCo 0.75; - - maxDeltaT 25.0; - - functions - { - } - -// ************************************************************************* // - diff --git a/exampleCases/example.ADM.ssc.zeromq/system/decomposeParDict b/exampleCases/example.ADM.ssc.zeromq/system/decomposeParDict deleted file mode 100755 index 565dd1343..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/decomposeParDict +++ /dev/null @@ -1,76 +0,0 @@ -/*-------------------------------*- C++ -*---------------------------------*\ -| ========= | -| \\ / OpenFOAM | -| \\ / | -| \\ / The Open Source CFD Toolbox | -| \\/ http://www.OpenFOAM.org | -\*-------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - note "mesh decomposition control dictionary"; - location "system"; - object decomposeParDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -numberOfSubdomains $nCores; -method $decompType; -preservePatches (north south east west); - -simpleCoeffs -{ - n $decompOrder; - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 3); - delta 0.001; - order xyz; -} - -metisCoeffs -{ - processorWeights - ( - ); -} - -scotchCoeffs -{ - //processorWeights - //( - // 1 - // 1 - // 1 - // 1 - //); - //writeGraph true; - //strategy "b"; -} - -manualCoeffs -{ - dataFile "decompositionData"; -} - - -//// Is the case distributed -distributed no; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/fvSchemes b/exampleCases/example.ADM.ssc.zeromq/system/fvSchemes deleted file mode 100755 index 12d01ece2..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/fvSchemes +++ /dev/null @@ -1,111 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object fvSchemes; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -ddtSchemes -{ - default backward; -// default CrankNicolson 1.0; -} - -gradSchemes -{ - default Gauss linear; - grad(U) Gauss linear; -} - -divSchemes -{ - default Gauss linear; - //div(phi,U) Gauss linear; - //div(phi,T) Gauss linear; - div(phi,U) Gauss localBlended linear upwind; - div(phi,T) Gauss localBlended linear upwind; - div(R) Gauss linear; - div(U) Gauss linear; - div((nuEff*dev(grad(U).T()))) Gauss linear; - div(B) Gauss linear; - div(phi,B) Gauss linear; - div(phi,k) Gauss linear; -} - -laplacianSchemes -{ - default Gauss linear corrected; - laplacian(rUA,p) Gauss linear corrected; - laplacian((1|A(U)),p) Gauss linear corrected; - laplacian(interpolate((1|A(U))),p) Gauss linear corrected; - laplacian(interpolate((1|A(U))),pd) Gauss linear corrected; - laplacian(nu,U) Gauss linear corrected; - laplacian(nuEff,U) Gauss linear corrected; - laplacian(kappaEff,T) Gauss linear corrected; - laplacian(DBEff,B) Gauss linear corrected; - laplacian(nuSgs,U) Gauss linear corrected; -} - -interpolationSchemes -{ - default linear; -} - -snGradSchemes -{ - default corrected; -} - -fluxRequired -{ - default no; - p_rgh ; -} - -schemeBlending -{ - - // Table of blending factors vs. cell face size. - faceSizeBlendingTable - ( - // area U T - (0.096 0.996 0.980 ) - (0.39 0.996 0.980 ) - (1.563 0.997 0.985 ) - (6.25 0.998 0.990 ) - (25 0.999 0.995 ) - (100 1.000 1.000 ) - (1E6 1.000 1.000 ) - ); - - - // Height above which blending factor begins to transition - // from heightBlendingFactor_z1 to heightBlendingFactor_z2. - heightBlending_z1 800.0; - - // Height above which blending factor is heightBlendingFactor_z2. - heightBlending_z2 1000.0; - - - heightBlendingFactorU_z1 1.0; - heightBlendingFactorU_z2 0.9; - - heightBlendingFactorT_z1 1.0; - heightBlendingFactorT_z2 0.9; - - - // In calculating height, use wall distance or absolute distance. - useWallDistZ false; -} - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/fvSolution b/exampleCases/example.ADM.ssc.zeromq/system/fvSolution deleted file mode 100755 index 38224f9d0..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/fvSolution +++ /dev/null @@ -1,102 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object fvSolution; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -solvers -{ - p_rgh - { - solver PCG; - preconditioner - { - preconditioner GAMG; - tolerance 1e-05; - relTol 0.01; - smoother DICGaussSeidel; - nPreSweeps 0; - nPostSweeps 2; - nFinestSweeps 2; - cacheAgglomeration true; - nCellsInCoarsestLevel 100; - agglomerator faceAreaPair; - mergeLevels 2; - } - tolerance 1e-06; - relTol 0.01; - maxIter 1000; - } - - p_rghFinal - { - $p_rgh; - relTol 0.0; - } - - "(U|T|k|epsilon|R)" - { - solver PBiCG; - preconditioner DILU; - tolerance 1e-6; - relTol 0.1; - maxIter 1000; - } - - "(U|T|k|epsilon|R)Final" - { - $U; - relTol 0.0; - } - - "(flm|fmm)" - { - solver PBiCG; - preconditioner DILU; - tolerance 1e-6; - relTol 0.1; - } - - "(flm|fmm)Final" - { - $flm; - relTol 0.0; - } - - -} - -PIMPLE -{ - momentumPredictor yes; - nOuterCorrectors 1; - nCorrectors 3; - nNonOrthogonalCorrectors 0; - pRefCell 0; - pRefValue 0; -} - -relaxationFactors -{ - fields - { - } - equations - { - "(U|T|k|epsilon|R)" 1.0; - "(U|T|k|epsilon|R)Final" 1.0; - } -} - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/refineMeshDict.local b/exampleCases/example.ADM.ssc.zeromq/system/refineMeshDict.local deleted file mode 100755 index da82aa356..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/refineMeshDict.local +++ /dev/null @@ -1,48 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.1.x | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object refineMeshDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -set local; - -coordinateSystem global; -//coordinateSystem patchLocal; - -globalCoeffs -{ - tan1 ( 1 0 0 ); - tan2 ( 0 1 0 ); - normal ( 0 0 1 ); -} - -patchLocalCoeffs -{ - patch top; - tan1 ( 1 0 0 ); - tan2 ( 0 1 0 ); - normal ( 0 0 1 ); -} - -directions ( tan1 tan2 normal ); - -useHexTopology yes; - -geometricCut no; - -writeMesh no; - - -// ************************************************************************* // - diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/boundaryDataPre b/exampleCases/example.ADM.ssc.zeromq/system/sampling/boundaryDataPre deleted file mode 100755 index e1ea28fd0..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/sampling/boundaryDataPre +++ /dev/null @@ -1,25 +0,0 @@ - boundaryDataPre - { - type surfaces; - functionObjectLibs ("libsampling.so"); - enabled true; - interpolationScheme isThisNeeded; - outputControl timeStep; - outputInterval 1; - surfaceFormat foamFile; - fields - ( - U - T - k - ); - surfaces - ( - south - { - type patch; - patches (south); - triangulate false; - } - ); - } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/fieldAverages b/exampleCases/example.ADM.ssc.zeromq/system/sampling/fieldAverages deleted file mode 100755 index 84c10394f..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/sampling/fieldAverages +++ /dev/null @@ -1,17 +0,0 @@ - fieldAverages - { - type fieldAverage; - functionObjectLibs ("libfieldFunctionObjects.so"); - enabled true; - outputControl outputTime; - timeStart 17000.0; - fields - ( - Cs - { - mean on; - prime2Mean off; - base time; - } - ); - } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData1 b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData1 deleted file mode 100755 index 12938cddb..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData1 +++ /dev/null @@ -1,223 +0,0 @@ - probe1 - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - U - T - p - p_rgh - kSgs - nuSgs - RdevSgs - qSgs - ); - - probeLocations - ( - (2500.001 500.001 5.001) - (2500.001 500.001 15.001) - (2500.001 500.001 25.001) - (2500.001 500.001 35.001) - (2500.001 500.001 45.001) - (2500.001 500.001 55.001) - (2500.001 500.001 65.001) - (2500.001 500.001 75.001) - (2500.001 500.001 85.001) - (2500.001 500.001 95.001) - (2500.001 500.001 105.001) - (2500.001 500.001 115.001) - (2500.001 500.001 125.001) - (2500.001 500.001 135.001) - (2500.001 500.001 145.001) - (2500.001 500.001 155.001) - (2500.001 500.001 165.001) - (2500.001 500.001 175.001) - (2500.001 500.001 185.001) - (2500.001 500.001 195.001) - (2500.001 500.001 205.001) - (2500.001 500.001 215.001) - (2500.001 500.001 225.001) - (2500.001 500.001 235.001) - (2500.001 500.001 245.001) - (2500.001 500.001 255.001) - (2500.001 500.001 265.001) - (2500.001 500.001 275.001) - (2500.001 500.001 285.001) - (2500.001 500.001 295.001) - (2500.001 500.001 305.001) - (2500.001 500.001 315.001) - (2500.001 500.001 325.001) - (2500.001 500.001 335.001) - (2500.001 500.001 345.001) - (2500.001 500.001 355.001) - (2500.001 500.001 365.001) - (2500.001 500.001 375.001) - (2500.001 500.001 385.001) - (2500.001 500.001 395.001) - (2500.001 500.001 405.001) - (2500.001 500.001 415.001) - (2500.001 500.001 425.001) - (2500.001 500.001 435.001) - (2500.001 500.001 445.001) - (2500.001 500.001 455.001) - (2500.001 500.001 465.001) - (2500.001 500.001 475.001) - (2500.001 500.001 485.001) - (2500.001 500.001 495.001) - (2500.001 500.001 505.001) - (2500.001 500.001 515.001) - (2500.001 500.001 525.001) - (2500.001 500.001 535.001) - (2500.001 500.001 545.001) - (2500.001 500.001 555.001) - (2500.001 500.001 565.001) - (2500.001 500.001 575.001) - (2500.001 500.001 585.001) - (2500.001 500.001 595.001) - (2500.001 500.001 605.001) - (2500.001 500.001 615.001) - (2500.001 500.001 625.001) - (2500.001 500.001 635.001) - (2500.001 500.001 645.001) - (2500.001 500.001 655.001) - (2500.001 500.001 665.001) - (2500.001 500.001 675.001) - (2500.001 500.001 685.001) - (2500.001 500.001 695.001) - (2500.001 500.001 705.001) - (2500.001 500.001 715.001) - (2500.001 500.001 725.001) - (2500.001 500.001 735.001) - (2500.001 500.001 745.001) - (2500.001 500.001 755.001) - (2500.001 500.001 765.001) - (2500.001 500.001 775.001) - (2500.001 500.001 785.001) - (2500.001 500.001 795.001) - (2500.001 500.001 805.001) - (2500.001 500.001 815.001) - (2500.001 500.001 825.001) - (2500.001 500.001 835.001) - (2500.001 500.001 845.001) - (2500.001 500.001 855.001) - (2500.001 500.001 865.001) - (2500.001 500.001 875.001) - (2500.001 500.001 885.001) - (2500.001 500.001 895.001) - (2500.001 500.001 905.001) - (2500.001 500.001 915.001) - (2500.001 500.001 925.001) - (2500.001 500.001 935.001) - (2500.001 500.001 945.001) - (2500.001 500.001 955.001) - (2500.001 500.001 965.001) - (2500.001 500.001 975.001) - (2500.001 500.001 985.001) - (2500.001 500.001 995.001) - (2500.001 500.001 1005.001) - (2500.001 500.001 1015.001) - (2500.001 500.001 1025.001) - (2500.001 500.001 1035.001) - (2500.001 500.001 1045.001) - (2500.001 500.001 1055.001) - (2500.001 500.001 1065.001) - (2500.001 500.001 1075.001) - (2500.001 500.001 1085.001) - (2500.001 500.001 1095.001) - (2500.001 500.001 1105.001) - (2500.001 500.001 1115.001) - (2500.001 500.001 1125.001) - (2500.001 500.001 1135.001) - (2500.001 500.001 1145.001) - (2500.001 500.001 1155.001) - (2500.001 500.001 1165.001) - (2500.001 500.001 1175.001) - (2500.001 500.001 1185.001) - (2500.001 500.001 1195.001) - (2500.001 500.001 1205.001) - (2500.001 500.001 1215.001) - (2500.001 500.001 1225.001) - (2500.001 500.001 1235.001) - (2500.001 500.001 1245.001) - (2500.001 500.001 1255.001) - (2500.001 500.001 1265.001) - (2500.001 500.001 1275.001) - (2500.001 500.001 1285.001) - (2500.001 500.001 1295.001) - (2500.001 500.001 1305.001) - (2500.001 500.001 1315.001) - (2500.001 500.001 1325.001) - (2500.001 500.001 1335.001) - (2500.001 500.001 1345.001) - (2500.001 500.001 1355.001) - (2500.001 500.001 1365.001) - (2500.001 500.001 1375.001) - (2500.001 500.001 1385.001) - (2500.001 500.001 1395.001) - (2500.001 500.001 1405.001) - (2500.001 500.001 1415.001) - (2500.001 500.001 1425.001) - (2500.001 500.001 1435.001) - (2500.001 500.001 1445.001) - (2500.001 500.001 1455.001) - (2500.001 500.001 1465.001) - (2500.001 500.001 1475.001) - (2500.001 500.001 1485.001) - (2500.001 500.001 1495.001) - (2500.001 500.001 1505.001) - (2500.001 500.001 1515.001) - (2500.001 500.001 1525.001) - (2500.001 500.001 1535.001) - (2500.001 500.001 1545.001) - (2500.001 500.001 1555.001) - (2500.001 500.001 1565.001) - (2500.001 500.001 1575.001) - (2500.001 500.001 1585.001) - (2500.001 500.001 1595.001) - (2500.001 500.001 1605.001) - (2500.001 500.001 1615.001) - (2500.001 500.001 1625.001) - (2500.001 500.001 1635.001) - (2500.001 500.001 1645.001) - (2500.001 500.001 1655.001) - (2500.001 500.001 1665.001) - (2500.001 500.001 1675.001) - (2500.001 500.001 1685.001) - (2500.001 500.001 1695.001) - (2500.001 500.001 1705.001) - (2500.001 500.001 1715.001) - (2500.001 500.001 1725.001) - (2500.001 500.001 1735.001) - (2500.001 500.001 1745.001) - (2500.001 500.001 1755.001) - (2500.001 500.001 1765.001) - (2500.001 500.001 1775.001) - (2500.001 500.001 1785.001) - (2500.001 500.001 1795.001) - (2500.001 500.001 1805.001) - (2500.001 500.001 1815.001) - (2500.001 500.001 1825.001) - (2500.001 500.001 1835.001) - (2500.001 500.001 1845.001) - (2500.001 500.001 1855.001) - (2500.001 500.001 1865.001) - (2500.001 500.001 1875.001) - (2500.001 500.001 1885.001) - (2500.001 500.001 1895.001) - (2500.001 500.001 1905.001) - (2500.001 500.001 1915.001) - (2500.001 500.001 1925.001) - (2500.001 500.001 1935.001) - (2500.001 500.001 1945.001) - (2500.001 500.001 1955.001) - (2500.001 500.001 1965.001) - (2500.001 500.001 1975.001) - (2500.001 500.001 1985.001) - (2500.001 500.001 1995.001) - ); - } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData1S b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData1S deleted file mode 100755 index 5b619fadc..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData1S +++ /dev/null @@ -1,18 +0,0 @@ - probe1S - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - Rwall - qwall - ); - - probeLocations - ( - (2500.001 500.001 0.0) - ); - } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData2 b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData2 deleted file mode 100755 index 01dc86420..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData2 +++ /dev/null @@ -1,223 +0,0 @@ - probe2 - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - U - T - p - p_rgh - kSgs - nuSgs - RdevSgs - qSgs - ); - - probeLocations - ( - (2500.001 1500.001 5.001) - (2500.001 1500.001 15.001) - (2500.001 1500.001 25.001) - (2500.001 1500.001 35.001) - (2500.001 1500.001 45.001) - (2500.001 1500.001 55.001) - (2500.001 1500.001 65.001) - (2500.001 1500.001 75.001) - (2500.001 1500.001 85.001) - (2500.001 1500.001 95.001) - (2500.001 1500.001 105.001) - (2500.001 1500.001 115.001) - (2500.001 1500.001 125.001) - (2500.001 1500.001 135.001) - (2500.001 1500.001 145.001) - (2500.001 1500.001 155.001) - (2500.001 1500.001 165.001) - (2500.001 1500.001 175.001) - (2500.001 1500.001 185.001) - (2500.001 1500.001 195.001) - (2500.001 1500.001 205.001) - (2500.001 1500.001 215.001) - (2500.001 1500.001 225.001) - (2500.001 1500.001 235.001) - (2500.001 1500.001 245.001) - (2500.001 1500.001 255.001) - (2500.001 1500.001 265.001) - (2500.001 1500.001 275.001) - (2500.001 1500.001 285.001) - (2500.001 1500.001 295.001) - (2500.001 1500.001 305.001) - (2500.001 1500.001 315.001) - (2500.001 1500.001 325.001) - (2500.001 1500.001 335.001) - (2500.001 1500.001 345.001) - (2500.001 1500.001 355.001) - (2500.001 1500.001 365.001) - (2500.001 1500.001 375.001) - (2500.001 1500.001 385.001) - (2500.001 1500.001 395.001) - (2500.001 1500.001 405.001) - (2500.001 1500.001 415.001) - (2500.001 1500.001 425.001) - (2500.001 1500.001 435.001) - (2500.001 1500.001 445.001) - (2500.001 1500.001 455.001) - (2500.001 1500.001 465.001) - (2500.001 1500.001 475.001) - (2500.001 1500.001 485.001) - (2500.001 1500.001 495.001) - (2500.001 1500.001 505.001) - (2500.001 1500.001 515.001) - (2500.001 1500.001 525.001) - (2500.001 1500.001 535.001) - (2500.001 1500.001 545.001) - (2500.001 1500.001 555.001) - (2500.001 1500.001 565.001) - (2500.001 1500.001 575.001) - (2500.001 1500.001 585.001) - (2500.001 1500.001 595.001) - (2500.001 1500.001 605.001) - (2500.001 1500.001 615.001) - (2500.001 1500.001 625.001) - (2500.001 1500.001 635.001) - (2500.001 1500.001 645.001) - (2500.001 1500.001 655.001) - (2500.001 1500.001 665.001) - (2500.001 1500.001 675.001) - (2500.001 1500.001 685.001) - (2500.001 1500.001 695.001) - (2500.001 1500.001 705.001) - (2500.001 1500.001 715.001) - (2500.001 1500.001 725.001) - (2500.001 1500.001 735.001) - (2500.001 1500.001 745.001) - (2500.001 1500.001 755.001) - (2500.001 1500.001 765.001) - (2500.001 1500.001 775.001) - (2500.001 1500.001 785.001) - (2500.001 1500.001 795.001) - (2500.001 1500.001 805.001) - (2500.001 1500.001 815.001) - (2500.001 1500.001 825.001) - (2500.001 1500.001 835.001) - (2500.001 1500.001 845.001) - (2500.001 1500.001 855.001) - (2500.001 1500.001 865.001) - (2500.001 1500.001 875.001) - (2500.001 1500.001 885.001) - (2500.001 1500.001 895.001) - (2500.001 1500.001 905.001) - (2500.001 1500.001 915.001) - (2500.001 1500.001 925.001) - (2500.001 1500.001 935.001) - (2500.001 1500.001 945.001) - (2500.001 1500.001 955.001) - (2500.001 1500.001 965.001) - (2500.001 1500.001 975.001) - (2500.001 1500.001 985.001) - (2500.001 1500.001 995.001) - (2500.001 1500.001 1005.001) - (2500.001 1500.001 1015.001) - (2500.001 1500.001 1025.001) - (2500.001 1500.001 1035.001) - (2500.001 1500.001 1045.001) - (2500.001 1500.001 1055.001) - (2500.001 1500.001 1065.001) - (2500.001 1500.001 1075.001) - (2500.001 1500.001 1085.001) - (2500.001 1500.001 1095.001) - (2500.001 1500.001 1105.001) - (2500.001 1500.001 1115.001) - (2500.001 1500.001 1125.001) - (2500.001 1500.001 1135.001) - (2500.001 1500.001 1145.001) - (2500.001 1500.001 1155.001) - (2500.001 1500.001 1165.001) - (2500.001 1500.001 1175.001) - (2500.001 1500.001 1185.001) - (2500.001 1500.001 1195.001) - (2500.001 1500.001 1205.001) - (2500.001 1500.001 1215.001) - (2500.001 1500.001 1225.001) - (2500.001 1500.001 1235.001) - (2500.001 1500.001 1245.001) - (2500.001 1500.001 1255.001) - (2500.001 1500.001 1265.001) - (2500.001 1500.001 1275.001) - (2500.001 1500.001 1285.001) - (2500.001 1500.001 1295.001) - (2500.001 1500.001 1305.001) - (2500.001 1500.001 1315.001) - (2500.001 1500.001 1325.001) - (2500.001 1500.001 1335.001) - (2500.001 1500.001 1345.001) - (2500.001 1500.001 1355.001) - (2500.001 1500.001 1365.001) - (2500.001 1500.001 1375.001) - (2500.001 1500.001 1385.001) - (2500.001 1500.001 1395.001) - (2500.001 1500.001 1405.001) - (2500.001 1500.001 1415.001) - (2500.001 1500.001 1425.001) - (2500.001 1500.001 1435.001) - (2500.001 1500.001 1445.001) - (2500.001 1500.001 1455.001) - (2500.001 1500.001 1465.001) - (2500.001 1500.001 1475.001) - (2500.001 1500.001 1485.001) - (2500.001 1500.001 1495.001) - (2500.001 1500.001 1505.001) - (2500.001 1500.001 1515.001) - (2500.001 1500.001 1525.001) - (2500.001 1500.001 1535.001) - (2500.001 1500.001 1545.001) - (2500.001 1500.001 1555.001) - (2500.001 1500.001 1565.001) - (2500.001 1500.001 1575.001) - (2500.001 1500.001 1585.001) - (2500.001 1500.001 1595.001) - (2500.001 1500.001 1605.001) - (2500.001 1500.001 1615.001) - (2500.001 1500.001 1625.001) - (2500.001 1500.001 1635.001) - (2500.001 1500.001 1645.001) - (2500.001 1500.001 1655.001) - (2500.001 1500.001 1665.001) - (2500.001 1500.001 1675.001) - (2500.001 1500.001 1685.001) - (2500.001 1500.001 1695.001) - (2500.001 1500.001 1705.001) - (2500.001 1500.001 1715.001) - (2500.001 1500.001 1725.001) - (2500.001 1500.001 1735.001) - (2500.001 1500.001 1745.001) - (2500.001 1500.001 1755.001) - (2500.001 1500.001 1765.001) - (2500.001 1500.001 1775.001) - (2500.001 1500.001 1785.001) - (2500.001 1500.001 1795.001) - (2500.001 1500.001 1805.001) - (2500.001 1500.001 1815.001) - (2500.001 1500.001 1825.001) - (2500.001 1500.001 1835.001) - (2500.001 1500.001 1845.001) - (2500.001 1500.001 1855.001) - (2500.001 1500.001 1865.001) - (2500.001 1500.001 1875.001) - (2500.001 1500.001 1885.001) - (2500.001 1500.001 1895.001) - (2500.001 1500.001 1905.001) - (2500.001 1500.001 1915.001) - (2500.001 1500.001 1925.001) - (2500.001 1500.001 1935.001) - (2500.001 1500.001 1945.001) - (2500.001 1500.001 1955.001) - (2500.001 1500.001 1965.001) - (2500.001 1500.001 1975.001) - (2500.001 1500.001 1985.001) - (2500.001 1500.001 1995.001) - ); - } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData2S b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData2S deleted file mode 100755 index 7e81799a0..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData2S +++ /dev/null @@ -1,18 +0,0 @@ - probe2S - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - Rwall - qwall - ); - - probeLocations - ( - (2500.001 1500.001 0.0) - ); - } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData3 b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData3 deleted file mode 100755 index 2a91805b2..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData3 +++ /dev/null @@ -1,223 +0,0 @@ - probe3 - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - U - T - p - p_rgh - kSgs - nuSgs - RdevSgs - qSgs - ); - - probeLocations - ( - (2500.001 2500.001 5.001) - (2500.001 2500.001 15.001) - (2500.001 2500.001 25.001) - (2500.001 2500.001 35.001) - (2500.001 2500.001 45.001) - (2500.001 2500.001 55.001) - (2500.001 2500.001 65.001) - (2500.001 2500.001 75.001) - (2500.001 2500.001 85.001) - (2500.001 2500.001 95.001) - (2500.001 2500.001 105.001) - (2500.001 2500.001 115.001) - (2500.001 2500.001 125.001) - (2500.001 2500.001 135.001) - (2500.001 2500.001 145.001) - (2500.001 2500.001 155.001) - (2500.001 2500.001 165.001) - (2500.001 2500.001 175.001) - (2500.001 2500.001 185.001) - (2500.001 2500.001 195.001) - (2500.001 2500.001 205.001) - (2500.001 2500.001 215.001) - (2500.001 2500.001 225.001) - (2500.001 2500.001 235.001) - (2500.001 2500.001 245.001) - (2500.001 2500.001 255.001) - (2500.001 2500.001 265.001) - (2500.001 2500.001 275.001) - (2500.001 2500.001 285.001) - (2500.001 2500.001 295.001) - (2500.001 2500.001 305.001) - (2500.001 2500.001 315.001) - (2500.001 2500.001 325.001) - (2500.001 2500.001 335.001) - (2500.001 2500.001 345.001) - (2500.001 2500.001 355.001) - (2500.001 2500.001 365.001) - (2500.001 2500.001 375.001) - (2500.001 2500.001 385.001) - (2500.001 2500.001 395.001) - (2500.001 2500.001 405.001) - (2500.001 2500.001 415.001) - (2500.001 2500.001 425.001) - (2500.001 2500.001 435.001) - (2500.001 2500.001 445.001) - (2500.001 2500.001 455.001) - (2500.001 2500.001 465.001) - (2500.001 2500.001 475.001) - (2500.001 2500.001 485.001) - (2500.001 2500.001 495.001) - (2500.001 2500.001 505.001) - (2500.001 2500.001 515.001) - (2500.001 2500.001 525.001) - (2500.001 2500.001 535.001) - (2500.001 2500.001 545.001) - (2500.001 2500.001 555.001) - (2500.001 2500.001 565.001) - (2500.001 2500.001 575.001) - (2500.001 2500.001 585.001) - (2500.001 2500.001 595.001) - (2500.001 2500.001 605.001) - (2500.001 2500.001 615.001) - (2500.001 2500.001 625.001) - (2500.001 2500.001 635.001) - (2500.001 2500.001 645.001) - (2500.001 2500.001 655.001) - (2500.001 2500.001 665.001) - (2500.001 2500.001 675.001) - (2500.001 2500.001 685.001) - (2500.001 2500.001 695.001) - (2500.001 2500.001 705.001) - (2500.001 2500.001 715.001) - (2500.001 2500.001 725.001) - (2500.001 2500.001 735.001) - (2500.001 2500.001 745.001) - (2500.001 2500.001 755.001) - (2500.001 2500.001 765.001) - (2500.001 2500.001 775.001) - (2500.001 2500.001 785.001) - (2500.001 2500.001 795.001) - (2500.001 2500.001 805.001) - (2500.001 2500.001 815.001) - (2500.001 2500.001 825.001) - (2500.001 2500.001 835.001) - (2500.001 2500.001 845.001) - (2500.001 2500.001 855.001) - (2500.001 2500.001 865.001) - (2500.001 2500.001 875.001) - (2500.001 2500.001 885.001) - (2500.001 2500.001 895.001) - (2500.001 2500.001 905.001) - (2500.001 2500.001 915.001) - (2500.001 2500.001 925.001) - (2500.001 2500.001 935.001) - (2500.001 2500.001 945.001) - (2500.001 2500.001 955.001) - (2500.001 2500.001 965.001) - (2500.001 2500.001 975.001) - (2500.001 2500.001 985.001) - (2500.001 2500.001 995.001) - (2500.001 2500.001 1005.001) - (2500.001 2500.001 1015.001) - (2500.001 2500.001 1025.001) - (2500.001 2500.001 1035.001) - (2500.001 2500.001 1045.001) - (2500.001 2500.001 1055.001) - (2500.001 2500.001 1065.001) - (2500.001 2500.001 1075.001) - (2500.001 2500.001 1085.001) - (2500.001 2500.001 1095.001) - (2500.001 2500.001 1105.001) - (2500.001 2500.001 1115.001) - (2500.001 2500.001 1125.001) - (2500.001 2500.001 1135.001) - (2500.001 2500.001 1145.001) - (2500.001 2500.001 1155.001) - (2500.001 2500.001 1165.001) - (2500.001 2500.001 1175.001) - (2500.001 2500.001 1185.001) - (2500.001 2500.001 1195.001) - (2500.001 2500.001 1205.001) - (2500.001 2500.001 1215.001) - (2500.001 2500.001 1225.001) - (2500.001 2500.001 1235.001) - (2500.001 2500.001 1245.001) - (2500.001 2500.001 1255.001) - (2500.001 2500.001 1265.001) - (2500.001 2500.001 1275.001) - (2500.001 2500.001 1285.001) - (2500.001 2500.001 1295.001) - (2500.001 2500.001 1305.001) - (2500.001 2500.001 1315.001) - (2500.001 2500.001 1325.001) - (2500.001 2500.001 1335.001) - (2500.001 2500.001 1345.001) - (2500.001 2500.001 1355.001) - (2500.001 2500.001 1365.001) - (2500.001 2500.001 1375.001) - (2500.001 2500.001 1385.001) - (2500.001 2500.001 1395.001) - (2500.001 2500.001 1405.001) - (2500.001 2500.001 1415.001) - (2500.001 2500.001 1425.001) - (2500.001 2500.001 1435.001) - (2500.001 2500.001 1445.001) - (2500.001 2500.001 1455.001) - (2500.001 2500.001 1465.001) - (2500.001 2500.001 1475.001) - (2500.001 2500.001 1485.001) - (2500.001 2500.001 1495.001) - (2500.001 2500.001 1505.001) - (2500.001 2500.001 1515.001) - (2500.001 2500.001 1525.001) - (2500.001 2500.001 1535.001) - (2500.001 2500.001 1545.001) - (2500.001 2500.001 1555.001) - (2500.001 2500.001 1565.001) - (2500.001 2500.001 1575.001) - (2500.001 2500.001 1585.001) - (2500.001 2500.001 1595.001) - (2500.001 2500.001 1605.001) - (2500.001 2500.001 1615.001) - (2500.001 2500.001 1625.001) - (2500.001 2500.001 1635.001) - (2500.001 2500.001 1645.001) - (2500.001 2500.001 1655.001) - (2500.001 2500.001 1665.001) - (2500.001 2500.001 1675.001) - (2500.001 2500.001 1685.001) - (2500.001 2500.001 1695.001) - (2500.001 2500.001 1705.001) - (2500.001 2500.001 1715.001) - (2500.001 2500.001 1725.001) - (2500.001 2500.001 1735.001) - (2500.001 2500.001 1745.001) - (2500.001 2500.001 1755.001) - (2500.001 2500.001 1765.001) - (2500.001 2500.001 1775.001) - (2500.001 2500.001 1785.001) - (2500.001 2500.001 1795.001) - (2500.001 2500.001 1805.001) - (2500.001 2500.001 1815.001) - (2500.001 2500.001 1825.001) - (2500.001 2500.001 1835.001) - (2500.001 2500.001 1845.001) - (2500.001 2500.001 1855.001) - (2500.001 2500.001 1865.001) - (2500.001 2500.001 1875.001) - (2500.001 2500.001 1885.001) - (2500.001 2500.001 1895.001) - (2500.001 2500.001 1905.001) - (2500.001 2500.001 1915.001) - (2500.001 2500.001 1925.001) - (2500.001 2500.001 1935.001) - (2500.001 2500.001 1945.001) - (2500.001 2500.001 1955.001) - (2500.001 2500.001 1965.001) - (2500.001 2500.001 1975.001) - (2500.001 2500.001 1985.001) - (2500.001 2500.001 1995.001) - ); - } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData3S b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData3S deleted file mode 100755 index f1da35cd9..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData3S +++ /dev/null @@ -1,18 +0,0 @@ - probe3S - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - Rwall - qwall - ); - - probeLocations - ( - (2500.001 2500.001 0.0) - ); - } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData4 b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData4 deleted file mode 100755 index 0bfd6b3fb..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData4 +++ /dev/null @@ -1,223 +0,0 @@ - probe4 - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - U - T - p - p_rgh - kSgs - nuSgs - RdevSgs - qSgs - ); - - probeLocations - ( - (2500.001 3500.001 5.001) - (2500.001 3500.001 15.001) - (2500.001 3500.001 25.001) - (2500.001 3500.001 35.001) - (2500.001 3500.001 45.001) - (2500.001 3500.001 55.001) - (2500.001 3500.001 65.001) - (2500.001 3500.001 75.001) - (2500.001 3500.001 85.001) - (2500.001 3500.001 95.001) - (2500.001 3500.001 105.001) - (2500.001 3500.001 115.001) - (2500.001 3500.001 125.001) - (2500.001 3500.001 135.001) - (2500.001 3500.001 145.001) - (2500.001 3500.001 155.001) - (2500.001 3500.001 165.001) - (2500.001 3500.001 175.001) - (2500.001 3500.001 185.001) - (2500.001 3500.001 195.001) - (2500.001 3500.001 205.001) - (2500.001 3500.001 215.001) - (2500.001 3500.001 225.001) - (2500.001 3500.001 235.001) - (2500.001 3500.001 245.001) - (2500.001 3500.001 255.001) - (2500.001 3500.001 265.001) - (2500.001 3500.001 275.001) - (2500.001 3500.001 285.001) - (2500.001 3500.001 295.001) - (2500.001 3500.001 305.001) - (2500.001 3500.001 315.001) - (2500.001 3500.001 325.001) - (2500.001 3500.001 335.001) - (2500.001 3500.001 345.001) - (2500.001 3500.001 355.001) - (2500.001 3500.001 365.001) - (2500.001 3500.001 375.001) - (2500.001 3500.001 385.001) - (2500.001 3500.001 395.001) - (2500.001 3500.001 405.001) - (2500.001 3500.001 415.001) - (2500.001 3500.001 425.001) - (2500.001 3500.001 435.001) - (2500.001 3500.001 445.001) - (2500.001 3500.001 455.001) - (2500.001 3500.001 465.001) - (2500.001 3500.001 475.001) - (2500.001 3500.001 485.001) - (2500.001 3500.001 495.001) - (2500.001 3500.001 505.001) - (2500.001 3500.001 515.001) - (2500.001 3500.001 525.001) - (2500.001 3500.001 535.001) - (2500.001 3500.001 545.001) - (2500.001 3500.001 555.001) - (2500.001 3500.001 565.001) - (2500.001 3500.001 575.001) - (2500.001 3500.001 585.001) - (2500.001 3500.001 595.001) - (2500.001 3500.001 605.001) - (2500.001 3500.001 615.001) - (2500.001 3500.001 625.001) - (2500.001 3500.001 635.001) - (2500.001 3500.001 645.001) - (2500.001 3500.001 655.001) - (2500.001 3500.001 665.001) - (2500.001 3500.001 675.001) - (2500.001 3500.001 685.001) - (2500.001 3500.001 695.001) - (2500.001 3500.001 705.001) - (2500.001 3500.001 715.001) - (2500.001 3500.001 725.001) - (2500.001 3500.001 735.001) - (2500.001 3500.001 745.001) - (2500.001 3500.001 755.001) - (2500.001 3500.001 765.001) - (2500.001 3500.001 775.001) - (2500.001 3500.001 785.001) - (2500.001 3500.001 795.001) - (2500.001 3500.001 805.001) - (2500.001 3500.001 815.001) - (2500.001 3500.001 825.001) - (2500.001 3500.001 835.001) - (2500.001 3500.001 845.001) - (2500.001 3500.001 855.001) - (2500.001 3500.001 865.001) - (2500.001 3500.001 875.001) - (2500.001 3500.001 885.001) - (2500.001 3500.001 895.001) - (2500.001 3500.001 905.001) - (2500.001 3500.001 915.001) - (2500.001 3500.001 925.001) - (2500.001 3500.001 935.001) - (2500.001 3500.001 945.001) - (2500.001 3500.001 955.001) - (2500.001 3500.001 965.001) - (2500.001 3500.001 975.001) - (2500.001 3500.001 985.001) - (2500.001 3500.001 995.001) - (2500.001 3500.001 1005.001) - (2500.001 3500.001 1015.001) - (2500.001 3500.001 1025.001) - (2500.001 3500.001 1035.001) - (2500.001 3500.001 1045.001) - (2500.001 3500.001 1055.001) - (2500.001 3500.001 1065.001) - (2500.001 3500.001 1075.001) - (2500.001 3500.001 1085.001) - (2500.001 3500.001 1095.001) - (2500.001 3500.001 1105.001) - (2500.001 3500.001 1115.001) - (2500.001 3500.001 1125.001) - (2500.001 3500.001 1135.001) - (2500.001 3500.001 1145.001) - (2500.001 3500.001 1155.001) - (2500.001 3500.001 1165.001) - (2500.001 3500.001 1175.001) - (2500.001 3500.001 1185.001) - (2500.001 3500.001 1195.001) - (2500.001 3500.001 1205.001) - (2500.001 3500.001 1215.001) - (2500.001 3500.001 1225.001) - (2500.001 3500.001 1235.001) - (2500.001 3500.001 1245.001) - (2500.001 3500.001 1255.001) - (2500.001 3500.001 1265.001) - (2500.001 3500.001 1275.001) - (2500.001 3500.001 1285.001) - (2500.001 3500.001 1295.001) - (2500.001 3500.001 1305.001) - (2500.001 3500.001 1315.001) - (2500.001 3500.001 1325.001) - (2500.001 3500.001 1335.001) - (2500.001 3500.001 1345.001) - (2500.001 3500.001 1355.001) - (2500.001 3500.001 1365.001) - (2500.001 3500.001 1375.001) - (2500.001 3500.001 1385.001) - (2500.001 3500.001 1395.001) - (2500.001 3500.001 1405.001) - (2500.001 3500.001 1415.001) - (2500.001 3500.001 1425.001) - (2500.001 3500.001 1435.001) - (2500.001 3500.001 1445.001) - (2500.001 3500.001 1455.001) - (2500.001 3500.001 1465.001) - (2500.001 3500.001 1475.001) - (2500.001 3500.001 1485.001) - (2500.001 3500.001 1495.001) - (2500.001 3500.001 1505.001) - (2500.001 3500.001 1515.001) - (2500.001 3500.001 1525.001) - (2500.001 3500.001 1535.001) - (2500.001 3500.001 1545.001) - (2500.001 3500.001 1555.001) - (2500.001 3500.001 1565.001) - (2500.001 3500.001 1575.001) - (2500.001 3500.001 1585.001) - (2500.001 3500.001 1595.001) - (2500.001 3500.001 1605.001) - (2500.001 3500.001 1615.001) - (2500.001 3500.001 1625.001) - (2500.001 3500.001 1635.001) - (2500.001 3500.001 1645.001) - (2500.001 3500.001 1655.001) - (2500.001 3500.001 1665.001) - (2500.001 3500.001 1675.001) - (2500.001 3500.001 1685.001) - (2500.001 3500.001 1695.001) - (2500.001 3500.001 1705.001) - (2500.001 3500.001 1715.001) - (2500.001 3500.001 1725.001) - (2500.001 3500.001 1735.001) - (2500.001 3500.001 1745.001) - (2500.001 3500.001 1755.001) - (2500.001 3500.001 1765.001) - (2500.001 3500.001 1775.001) - (2500.001 3500.001 1785.001) - (2500.001 3500.001 1795.001) - (2500.001 3500.001 1805.001) - (2500.001 3500.001 1815.001) - (2500.001 3500.001 1825.001) - (2500.001 3500.001 1835.001) - (2500.001 3500.001 1845.001) - (2500.001 3500.001 1855.001) - (2500.001 3500.001 1865.001) - (2500.001 3500.001 1875.001) - (2500.001 3500.001 1885.001) - (2500.001 3500.001 1895.001) - (2500.001 3500.001 1905.001) - (2500.001 3500.001 1915.001) - (2500.001 3500.001 1925.001) - (2500.001 3500.001 1935.001) - (2500.001 3500.001 1945.001) - (2500.001 3500.001 1955.001) - (2500.001 3500.001 1965.001) - (2500.001 3500.001 1975.001) - (2500.001 3500.001 1985.001) - (2500.001 3500.001 1995.001) - ); - } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData4S b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData4S deleted file mode 100755 index 470fc9f28..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData4S +++ /dev/null @@ -1,18 +0,0 @@ - probe4S - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - Rwall - qwall - ); - - probeLocations - ( - (2500.001 3500.001 0.0) - ); - } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData5 b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData5 deleted file mode 100755 index eac0bc00c..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData5 +++ /dev/null @@ -1,223 +0,0 @@ - probe5 - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - U - T - p - p_rgh - kSgs - nuSgs - RdevSgs - qSgs - ); - - probeLocations - ( - (2500.001 4500.001 5.001) - (2500.001 4500.001 15.001) - (2500.001 4500.001 25.001) - (2500.001 4500.001 35.001) - (2500.001 4500.001 45.001) - (2500.001 4500.001 55.001) - (2500.001 4500.001 65.001) - (2500.001 4500.001 75.001) - (2500.001 4500.001 85.001) - (2500.001 4500.001 95.001) - (2500.001 4500.001 105.001) - (2500.001 4500.001 115.001) - (2500.001 4500.001 125.001) - (2500.001 4500.001 135.001) - (2500.001 4500.001 145.001) - (2500.001 4500.001 155.001) - (2500.001 4500.001 165.001) - (2500.001 4500.001 175.001) - (2500.001 4500.001 185.001) - (2500.001 4500.001 195.001) - (2500.001 4500.001 205.001) - (2500.001 4500.001 215.001) - (2500.001 4500.001 225.001) - (2500.001 4500.001 235.001) - (2500.001 4500.001 245.001) - (2500.001 4500.001 255.001) - (2500.001 4500.001 265.001) - (2500.001 4500.001 275.001) - (2500.001 4500.001 285.001) - (2500.001 4500.001 295.001) - (2500.001 4500.001 305.001) - (2500.001 4500.001 315.001) - (2500.001 4500.001 325.001) - (2500.001 4500.001 335.001) - (2500.001 4500.001 345.001) - (2500.001 4500.001 355.001) - (2500.001 4500.001 365.001) - (2500.001 4500.001 375.001) - (2500.001 4500.001 385.001) - (2500.001 4500.001 395.001) - (2500.001 4500.001 405.001) - (2500.001 4500.001 415.001) - (2500.001 4500.001 425.001) - (2500.001 4500.001 435.001) - (2500.001 4500.001 445.001) - (2500.001 4500.001 455.001) - (2500.001 4500.001 465.001) - (2500.001 4500.001 475.001) - (2500.001 4500.001 485.001) - (2500.001 4500.001 495.001) - (2500.001 4500.001 505.001) - (2500.001 4500.001 515.001) - (2500.001 4500.001 525.001) - (2500.001 4500.001 535.001) - (2500.001 4500.001 545.001) - (2500.001 4500.001 555.001) - (2500.001 4500.001 565.001) - (2500.001 4500.001 575.001) - (2500.001 4500.001 585.001) - (2500.001 4500.001 595.001) - (2500.001 4500.001 605.001) - (2500.001 4500.001 615.001) - (2500.001 4500.001 625.001) - (2500.001 4500.001 635.001) - (2500.001 4500.001 645.001) - (2500.001 4500.001 655.001) - (2500.001 4500.001 665.001) - (2500.001 4500.001 675.001) - (2500.001 4500.001 685.001) - (2500.001 4500.001 695.001) - (2500.001 4500.001 705.001) - (2500.001 4500.001 715.001) - (2500.001 4500.001 725.001) - (2500.001 4500.001 735.001) - (2500.001 4500.001 745.001) - (2500.001 4500.001 755.001) - (2500.001 4500.001 765.001) - (2500.001 4500.001 775.001) - (2500.001 4500.001 785.001) - (2500.001 4500.001 795.001) - (2500.001 4500.001 805.001) - (2500.001 4500.001 815.001) - (2500.001 4500.001 825.001) - (2500.001 4500.001 835.001) - (2500.001 4500.001 845.001) - (2500.001 4500.001 855.001) - (2500.001 4500.001 865.001) - (2500.001 4500.001 875.001) - (2500.001 4500.001 885.001) - (2500.001 4500.001 895.001) - (2500.001 4500.001 905.001) - (2500.001 4500.001 915.001) - (2500.001 4500.001 925.001) - (2500.001 4500.001 935.001) - (2500.001 4500.001 945.001) - (2500.001 4500.001 955.001) - (2500.001 4500.001 965.001) - (2500.001 4500.001 975.001) - (2500.001 4500.001 985.001) - (2500.001 4500.001 995.001) - (2500.001 4500.001 1005.001) - (2500.001 4500.001 1015.001) - (2500.001 4500.001 1025.001) - (2500.001 4500.001 1035.001) - (2500.001 4500.001 1045.001) - (2500.001 4500.001 1055.001) - (2500.001 4500.001 1065.001) - (2500.001 4500.001 1075.001) - (2500.001 4500.001 1085.001) - (2500.001 4500.001 1095.001) - (2500.001 4500.001 1105.001) - (2500.001 4500.001 1115.001) - (2500.001 4500.001 1125.001) - (2500.001 4500.001 1135.001) - (2500.001 4500.001 1145.001) - (2500.001 4500.001 1155.001) - (2500.001 4500.001 1165.001) - (2500.001 4500.001 1175.001) - (2500.001 4500.001 1185.001) - (2500.001 4500.001 1195.001) - (2500.001 4500.001 1205.001) - (2500.001 4500.001 1215.001) - (2500.001 4500.001 1225.001) - (2500.001 4500.001 1235.001) - (2500.001 4500.001 1245.001) - (2500.001 4500.001 1255.001) - (2500.001 4500.001 1265.001) - (2500.001 4500.001 1275.001) - (2500.001 4500.001 1285.001) - (2500.001 4500.001 1295.001) - (2500.001 4500.001 1305.001) - (2500.001 4500.001 1315.001) - (2500.001 4500.001 1325.001) - (2500.001 4500.001 1335.001) - (2500.001 4500.001 1345.001) - (2500.001 4500.001 1355.001) - (2500.001 4500.001 1365.001) - (2500.001 4500.001 1375.001) - (2500.001 4500.001 1385.001) - (2500.001 4500.001 1395.001) - (2500.001 4500.001 1405.001) - (2500.001 4500.001 1415.001) - (2500.001 4500.001 1425.001) - (2500.001 4500.001 1435.001) - (2500.001 4500.001 1445.001) - (2500.001 4500.001 1455.001) - (2500.001 4500.001 1465.001) - (2500.001 4500.001 1475.001) - (2500.001 4500.001 1485.001) - (2500.001 4500.001 1495.001) - (2500.001 4500.001 1505.001) - (2500.001 4500.001 1515.001) - (2500.001 4500.001 1525.001) - (2500.001 4500.001 1535.001) - (2500.001 4500.001 1545.001) - (2500.001 4500.001 1555.001) - (2500.001 4500.001 1565.001) - (2500.001 4500.001 1575.001) - (2500.001 4500.001 1585.001) - (2500.001 4500.001 1595.001) - (2500.001 4500.001 1605.001) - (2500.001 4500.001 1615.001) - (2500.001 4500.001 1625.001) - (2500.001 4500.001 1635.001) - (2500.001 4500.001 1645.001) - (2500.001 4500.001 1655.001) - (2500.001 4500.001 1665.001) - (2500.001 4500.001 1675.001) - (2500.001 4500.001 1685.001) - (2500.001 4500.001 1695.001) - (2500.001 4500.001 1705.001) - (2500.001 4500.001 1715.001) - (2500.001 4500.001 1725.001) - (2500.001 4500.001 1735.001) - (2500.001 4500.001 1745.001) - (2500.001 4500.001 1755.001) - (2500.001 4500.001 1765.001) - (2500.001 4500.001 1775.001) - (2500.001 4500.001 1785.001) - (2500.001 4500.001 1795.001) - (2500.001 4500.001 1805.001) - (2500.001 4500.001 1815.001) - (2500.001 4500.001 1825.001) - (2500.001 4500.001 1835.001) - (2500.001 4500.001 1845.001) - (2500.001 4500.001 1855.001) - (2500.001 4500.001 1865.001) - (2500.001 4500.001 1875.001) - (2500.001 4500.001 1885.001) - (2500.001 4500.001 1895.001) - (2500.001 4500.001 1905.001) - (2500.001 4500.001 1915.001) - (2500.001 4500.001 1925.001) - (2500.001 4500.001 1935.001) - (2500.001 4500.001 1945.001) - (2500.001 4500.001 1955.001) - (2500.001 4500.001 1965.001) - (2500.001 4500.001 1975.001) - (2500.001 4500.001 1985.001) - (2500.001 4500.001 1995.001) - ); - } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData5S b/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData5S deleted file mode 100755 index 5933c36f2..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/sampling/probeData5S +++ /dev/null @@ -1,18 +0,0 @@ - probe5S - { - type probes; - functionObjectLibs ("libsampling.so"); - name probe1; - outputControl timeStep; - outputInterval 1; - fields - ( - Rwall - qwall - ); - - probeLocations - ( - (2500.001 4500.001 0.0) - ); - } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/sampling/sliceDataInstantaneous b/exampleCases/example.ADM.ssc.zeromq/system/sampling/sliceDataInstantaneous deleted file mode 100755 index 59199fc39..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/sampling/sliceDataInstantaneous +++ /dev/null @@ -1,53 +0,0 @@ - sliceDataInstantaneous - { - type surfaces; - functionObjectLibs ("libsampling.so"); - enabled true; - interpolationScheme cell; - outputControl adjustableTime; - writeInterval 60; - surfaceFormat vtk; - fields - ( - U - T - ); - surfaces - ( - slice_horizontal_1 - { - type plane; - basePoint (1500.01 1500.01 20.01); - normalVector (0 0 1); - triangulate false; - } - slice_horizontal_2 - { - type plane; - basePoint (1500.01 1500.01 80.01); - normalVector (0 0 1); - triangulate false; - } - slice_horizontal_3 - { - type plane; - basePoint (1500.01 1500.01 200.01); - normalVector (0 0 1); - triangulate false; - } - slice_cross_stream - { - type plane; - basePoint (1500.01 1500.01 84.0); - normalVector (0 1 0); - triangulate false; - } - slice_streamwise - { - type plane; - basePoint (1500.01 1500.01 84.0); - normalVector (1 0 0); - triangulate false; - } - ); - } diff --git a/exampleCases/example.ADM.ssc.zeromq/system/setFieldsABLDict b/exampleCases/example.ADM.ssc.zeromq/system/setFieldsABLDict deleted file mode 100755 index dacc350ce..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/setFieldsABLDict +++ /dev/null @@ -1,504 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0.x | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ - -FoamFile -{ - version 2.0; - format ascii; - - root ""; - case ""; - instance ""; - local ""; - - class dictionary; - object setFieldsABLDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#include "../setUp" - - -// Extents of the domain. -xMin $xMin; -yMin $yMin; -zMin $zMin; - -xMax $xMax; -yMax $yMax; -zMax $zMax; - -zRef $zMax; - -// Specify if distance from wall should be used as z. -useWallDistZ false; -scaleVelocityWithHeight false; - - -// Specify how to initialze the base velocity and temperature profile. -//velocityInitType "table"; -//velocityInitType "log"; -velocityInitType "geostrophic"; -//temperatureInitType "table"; -temperatureInitType "simple"; - -// Maximum perturbation of streamwise/spanwise flow near surface. -deltaU 0.25; -deltaV 0.25; - -// Total periods of perturbations in streamwise/spanwise in the domain. -Uperiods 12.0; -Vperiods 12.0; - -// Percentage of domain height (zMax) where peak in perturbation -// magnitude occurs. -zPeak 0.015; - -// Initial height of the center of the capping inversion. -zInversion $zInversion; - -// Width of the capping inversion. -widthInversion $inversionWidth; - -// Potential temperature at the bottom and top of the capping inversion. -Tbottom $TBottom; -Ttop $TTop; - -// Maximum temperature fluctuation size below capping inversion. -TPrimeScale 0.0; - -// Height rate of change of potential temperature above the inversion. -dTdz $TGradUpper; - -// Geostrophic wind speed magnitude. -Ug $U0Mag; - -// Geostrophic wind speed direction. -UgDir $dir; - -// Aerodynamic roughness height of surface. -z0 $z0; - -// von Karman constant. -kappa $kappa; - -// Vertical profile table. -profileTable -( -// z U V T - (0.0 0.0 0.0 273.121917725) - (5.0 1.82671529027 1.98969371553 282.524156211) - (10.0 2.52983624172 2.77228242751 283.156504284) - (15.0 3.01282071998 3.35521702288 283.64108812) - (20.0 3.35996148006 3.78823607698 284.090761147) - (25.0 3.8038057643 4.37960852586 284.554077196) - (30.0 4.03596125279 4.70538923119 284.966777157) - (35.0 4.38133296535 5.23253766126 285.360167677) - (40.0 4.56992779673 5.53523659867 285.747101612) - (45.0 4.80994398595 5.96180841679 286.095879197) - (50.0 5.00816921409 6.32774876853 286.444585293) - (55.0 5.14154903327 6.60160807137 286.787914506) - (60.0 5.36818530188 7.08896005703 287.063199891) - (65.0 5.44703987742 7.27484159809 287.379906732) - (70.0 5.57604433164 7.60608624795 287.638417176) - (75.0 5.72370142776 7.99632935101 287.863981004) - (80.0 5.77619905069 8.15139018101 288.127106742) - (85.0 5.87149793296 8.46369430537 288.331005696) - (90.0 5.98111916718 8.83268873958 288.509035882) - (95.0 6.01697152506 8.97407895539 288.724664101) - (100.0 6.06967854005 9.19927028309 288.909565287) - (105.0 6.1450628792 9.53721293929 289.053124377) - (110.0 6.19167607924 9.76288104253 289.198531813) - (115.0 6.22489630605 9.93628531022 289.344799656) - (120.0 6.27421288656 10.216282683 289.462005) - (125.0 6.32645248876 10.5156368594 289.57393273) - (130.0 6.34668810144 10.6457361726 289.712125634) - (135.0 6.36434613795 10.762203832 289.852433913) - (140.0 6.39842793739 11.0196195883 289.95191863) - (145.0 6.4342454375 11.2919310606 290.047089019) - (150.0 6.45180421766 11.4367005351 290.150649381) - (155.0 6.46406875681 11.544488333 290.256642472) - (160.0 6.48170756073 11.7056278368 290.348224267) - (165.0 6.50382814701 11.9112591447 290.427787992) - (170.0 6.52550956366 12.1127414485 290.506470121) - (175.0 6.54550549533 12.298300329 290.581768788) - (180.0 6.56550142701 12.4838592096 290.657067454) - (185.0 6.58511534034 12.6567515091 290.735008491) - (190.0 6.6045979288 12.8252894701 290.813857884) - (195.0 6.62432001649 12.9896812983 290.892328604) - (200.0 6.64532587961 13.1318488244 290.968769537) - (205.0 6.66633174272 13.2740163505 291.045210471) - (210.0 6.69104111181 13.4098514016 291.117435921) - (215.0 6.72036475996 13.5377966838 291.184409209) - (220.0 6.74968840812 13.6657419659 291.251382497) - (225.0 6.77805691412 13.7640369251 291.318657013) - (230.0 6.80578882059 13.8425700289 291.386132296) - (235.0 6.83352072706 13.9211031327 291.453607578) - (240.0 6.86307156947 13.9862481909 291.518273832) - (245.0 6.89380511232 14.0426881336 291.581113612) - (250.0 6.92453865516 14.0991280764 291.643953391) - (255.0 6.95361693104 14.1462680315 291.704700258) - (260.0 6.98077095142 14.1825967081 291.763014104) - (265.0 7.0079249718 14.2189253847 291.82132795) - (270.0 7.03507703408 14.2541299666 291.879606535) - (275.0 7.0622194383 14.283790106 291.937711201) - (280.0 7.08936184253 14.3134502454 291.995815867) - (285.0 7.11650424675 14.3431103848 292.053920533) - (290.0 7.1430391081 14.369131837 292.11328027) - (295.0 7.16932392788 14.3936557439 292.173156546) - (300.0 7.19560874767 14.4181796507 292.233032822) - (305.0 7.22180906756 14.4424461024 292.292838021) - (310.0 7.24680913749 14.4630556198 292.351633627) - (315.0 7.27180920741 14.4836651372 292.410429232) - (320.0 7.29680927734 14.5042746546 292.469224837) - (325.0 7.32153609499 14.5243042572 292.528664796) - (330.0 7.34543057757 14.5425674214 292.590067475) - (335.0 7.36932506015 14.5608305855 292.651470155) - (340.0 7.39321954273 14.5790937496 292.712872834) - (345.0 7.41696733387 14.597025575 292.773542958) - (350.0 7.44026003553 14.6139294685 292.831940429) - (355.0 7.46355273718 14.6308333621 292.890337899) - (360.0 7.48684543884 14.6477372556 292.94873537) - (365.0 7.51013186129 14.6646271523 293.007149353) - (370.0 7.53322339247 14.68108262 293.066075821) - (375.0 7.55631492366 14.6975380877 293.12500229) - (380.0 7.57940645484 14.7139935554 293.183928758) - (385.0 7.60249798603 14.7304490231 293.242855226) - (390.0 7.6257582057 14.7463924565 293.301506178) - (395.0 7.64912373233 14.7620162427 293.359985132) - (400.0 7.67248925896 14.7776400289 293.418464087) - (405.0 7.69585478559 14.7932638151 293.476943042) - (410.0 7.71922031222 14.8088876013 293.535421996) - (415.0 7.74300228036 14.8230663689 293.592791002) - (420.0 7.7667927399 14.8372156721 293.650137374) - (425.0 7.79058319945 14.8513649753 293.707483747) - (430.0 7.81437365899 14.8655142784 293.76483012) - (435.0 7.83815083397 14.8793492717 293.821767406) - (440.0 7.86181714661 14.8905612872 293.875290779) - (445.0 7.88548345926 14.9017733027 293.928814153) - (450.0 7.9091497719 14.9129853182 293.982337526) - (455.0 7.93281608455 14.9241973336 294.035860899) - (460.0 7.95648239719 14.9354093491 294.089384273) - (465.0 7.97905964048 14.9423301431 294.14128451) - (470.0 8.0016312311 14.9492286641 294.193176323) - (475.0 8.02420282171 14.956127185 294.245068135) - (480.0 8.04677441233 14.9630257059 294.296959948) - (485.0 8.06934600294 14.9699242269 294.34885176) - (490.0 8.0912068028 14.9742300558 294.40025773) - (495.0 8.11235909886 14.9759515346 294.45117942) - (500.0 8.13351139492 14.9776730134 294.502101111) - (505.0 8.15466369098 14.9793944922 294.553022801) - (510.0 8.17581598704 14.981115971 294.603944491) - (515.0 8.19696828309 14.9828374498 294.654866181) - (520.0 8.21724149816 14.9808198644 294.704354156) - (525.0 8.2364694612 14.9743564264 294.752137402) - (530.0 8.25569742424 14.9678929884 294.799920649) - (535.0 8.27492538727 14.9614295505 294.847703896) - (540.0 8.29415335031 14.9549661125 294.895487143) - (545.0 8.31338131334 14.9485026745 294.943270389) - (550.0 8.33260927638 14.9420392365 294.991053636) - (555.0 8.35050488468 14.9266129312 295.036341098) - (560.0 8.36808840645 14.9090871924 295.081043956) - (565.0 8.38567192822 14.8915614535 295.125746813) - (570.0 8.40325544999 14.8740357147 295.170449671) - (575.0 8.42083897176 14.8565099758 295.215152528) - (580.0 8.43842249352 14.838984237 295.259855386) - (585.0 8.45600601529 14.8214584982 295.304558243) - (590.0 8.47264685758 14.7968218302 295.348171206) - (595.0 8.48834031368 14.765038729 295.390688832) - (600.0 8.50403376979 14.7332556278 295.433206459) - (605.0 8.51972722589 14.7014725265 295.475724085) - (610.0 8.53542068199 14.6696894253 295.518241712) - (615.0 8.55111413809 14.6379063241 295.560759338) - (620.0 8.56680759419 14.6061232229 295.603276965) - (625.0 8.5825010503 14.5743401216 295.645794591) - (630.0 8.59715715424 14.5346556613 295.689519112) - (635.0 8.61058749747 14.4856347615 295.734669729) - (640.0 8.62401784069 14.4366138617 295.779820347) - (645.0 8.63744818391 14.3875929619 295.824970964) - (650.0 8.65087852713 14.338572062 295.870121581) - (655.0 8.66430887036 14.2895511622 295.915272198) - (660.0 8.67773921358 14.2405302624 295.960422815) - (665.0 8.6911695568 14.1915093626 296.005573433) - (670.0 8.70459990003 14.1424884628 296.05072405) - (675.0 8.71498597608 14.0837507537 296.096336227) - (680.0 8.72352399234 14.0191143362 296.142228601) - (685.0 8.7320620086 13.9544779188 296.188120975) - (690.0 8.74060002486 13.8898415013 296.234013348) - (695.0 8.74913804112 13.8252050838 296.279905722) - (700.0 8.75767605739 13.7605686663 296.325798096) - (705.0 8.76621407365 13.6959322489 296.371690469) - (710.0 8.77475208991 13.6312958314 296.417582843) - (715.0 8.78329010617 13.5666594139 296.463475217) - (720.0 8.79182812243 13.5020229965 296.50936759) - (725.0 8.79189547444 13.4277463368 296.562527014) - (730.0 8.79098910472 13.3523615098 296.616521801) - (735.0 8.79008273499 13.2769766828 296.670516587) - (740.0 8.78917636527 13.2015918559 296.724511374) - (745.0 8.78826999555 13.1262070289 296.778506161) - (750.0 8.78736362582 13.0508222019 296.832500948) - (755.0 8.7864572561 12.9754373749 296.886495735) - (760.0 8.78555088638 12.9000525479 296.940490522) - (765.0 8.78464451665 12.824667721 296.994485308) - (770.0 8.78373814693 12.749282894 297.048480095) - (775.0 8.78092431283 12.6731698157 297.101321687) - (780.0 8.77050848097 12.594154369 297.149567342) - (785.0 8.76009264911 12.5151389222 297.197812997) - (790.0 8.74967681725 12.4361234755 297.246058652) - (795.0 8.73926098539 12.3571080288 297.294304307) - (800.0 8.72884515353 12.278092582 297.342549962) - (805.0 8.71842932167 12.1990771353 297.390795617) - (810.0 8.70801348981 12.1200616885 297.439041272) - (815.0 8.69759765795 12.0410462418 297.487286927) - (820.0 8.68718182609 11.9620307951 297.535532582) - (825.0 8.67676599423 11.8830153483 297.583778237) - (830.0 8.66635016237 11.8039999016 297.632023892) - (835.0 8.65380285705 11.7267327361 297.688031136) - (840.0 8.63847548104 11.6517458454 297.754161782) - (845.0 8.62314810503 11.5767589547 297.820292429) - (850.0 8.60782072902 11.5017720641 297.886423076) - (855.0 8.59249335301 11.4267851734 297.952553722) - (860.0 8.57716597701 11.3517982828 298.018684369) - (865.0 8.561838601 11.2768113921 298.084815016) - (870.0 8.54651122499 11.2018245015 298.150945663) - (875.0 8.53118384898 11.1268376108 298.217076309) - (880.0 8.51585647297 11.0518507201 298.283206956) - (885.0 8.50052909696 10.9768638295 298.349337603) - (890.0 8.48520172096 10.9018769388 298.41546825) - (895.0 8.46987434495 10.8268900482 298.481598896) - (900.0 8.45883220551 10.7541011047 298.547345535) - (905.0 8.45238242046 10.6836676328 298.612680644) - (910.0 8.44593263542 10.6132341608 298.678015753) - (915.0 8.43948285037 10.5428006888 298.743350863) - (920.0 8.43303306533 10.4723672168 298.808685972) - (925.0 8.42658328028 10.4019337449 298.874021081) - (930.0 8.42013349524 10.3315002729 298.93935619) - (935.0 8.41368371019 10.2610668009 299.004691299) - (940.0 8.40723392515 10.190633329 299.070026409) - (945.0 8.4007841401 10.120199857 299.135361518) - (950.0 8.39433435506 10.049766385 299.200696627) - (955.0 8.38788457001 9.97933291304 299.266031736) - (960.0 8.38143478497 9.90889944107 299.331366845) - (965.0 8.37498499992 9.8384659691 299.396701955) - (970.0 8.37175628862 9.76984547069 299.458148741) - (975.0 8.3787220489 9.70696290595 299.507289259) - (980.0 8.38568780918 9.64408034121 299.556429777) - (985.0 8.39265356946 9.58119777647 299.605570296) - (990.0 8.39961932974 9.51831521173 299.654710814) - (995.0 8.40658509002 9.45543264699 299.703851332) - (1000.0 8.4135508503 9.39255008225 299.752991851) - (1005.0 8.42051661058 9.32966751751 299.802132369) - (1010.0 8.42748237086 9.26678495277 299.851272887) - (1015.0 8.43444813113 9.20390238803 299.900413405) - (1020.0 8.44141389141 9.14101982329 299.949553924) - (1025.0 8.44837965169 9.07813725854 299.998694442) - (1030.0 8.45534541197 9.0152546938 300.04783496) - (1035.0 8.46231117225 8.95237212906 300.096975478) - (1040.0 8.46927693253 8.88948956432 300.146115997) - (1045.0 8.47624269281 8.82660699958 300.195256515) - (1050.0 8.48495783258 8.77319458603 300.238852282) - (1055.0 8.49495774699 8.72673721576 300.278375887) - (1060.0 8.5049576614 8.6802798455 300.317899492) - (1065.0 8.51495757581 8.63382247523 300.357423097) - (1070.0 8.52495749023 8.58736510496 300.396946702) - (1075.0 8.53495740464 8.5409077347 300.436470307) - (1080.0 8.54495731905 8.49445036443 300.475993912) - (1085.0 8.55495723346 8.44799299416 300.515517517) - (1090.0 8.56495714787 8.4015356239 300.555041122) - (1095.0 8.57495706228 8.35507825363 300.594564727) - (1100.0 8.58495697669 8.30862088336 300.634088332) - (1105.0 8.5949568911 8.2621635131 300.673611937) - (1110.0 8.60495680552 8.21570614283 300.713135542) - (1115.0 8.61495671993 8.16924877256 300.752659147) - (1120.0 8.62495663434 8.1227914023 300.792182752) - (1125.0 8.63495654875 8.07633403203 300.831706357) - (1130.0 8.64495646316 8.02987666176 300.871229962) - (1135.0 8.65360052964 7.98996489564 300.907704255) - (1140.0 8.65972902324 7.96219751809 300.938521005) - (1145.0 8.66585751685 7.93443014055 300.969337756) - (1150.0 8.67198601045 7.906662763 301.000154506) - (1155.0 8.67811450406 7.87889538546 301.030971256) - (1160.0 8.68424299766 7.85112800791 301.061788006) - (1165.0 8.69037149126 7.82336063037 301.092604757) - (1170.0 8.69649998487 7.79559325282 301.123421507) - (1175.0 8.70262847847 7.76782587527 301.154238257) - (1180.0 8.70875697208 7.74005849773 301.185055007) - (1185.0 8.71488546568 7.71229112018 301.215871758) - (1190.0 8.72101395929 7.68452374264 301.246688508) - (1195.0 8.72714245289 7.65675636509 301.277505258) - (1200.0 8.7332709465 7.62898898755 301.308322009) - (1205.0 8.7393994401 7.60122161 301.339138759) - (1210.0 8.74552793371 7.57345423246 301.369955509) - (1215.0 8.75165642731 7.54568685491 301.400772259) - (1220.0 8.75778492092 7.51791947737 301.43158901) - (1225.0 8.76391341452 7.49015209982 301.46240576) - (1230.0 8.76818252215 7.46990516883 301.489568668) - (1235.0 8.76988179508 7.46005215541 301.511681645) - (1240.0 8.771581068 7.45019914198 301.533794623) - (1245.0 8.77328034093 7.44034612856 301.5559076) - (1250.0 8.77497961385 7.43049311513 301.578020578) - (1255.0 8.77667888677 7.42064010171 301.600133555) - (1260.0 8.7783781597 7.41078708828 301.622246532) - (1265.0 8.78007743262 7.40093407485 301.64435951) - (1270.0 8.78177670555 7.39108106143 301.666472487) - (1275.0 8.78347597847 7.381228048 301.688585464) - (1280.0 8.7851752514 7.37137503458 301.710698442) - (1285.0 8.78687452432 7.36152202115 301.732811419) - (1290.0 8.78857379725 7.35166900773 301.754924397) - (1295.0 8.79027307017 7.3418159943 301.777037374) - (1300.0 8.7919723431 7.33196298088 301.799150351) - (1305.0 8.79367161602 7.32210996745 301.821263329) - (1310.0 8.79537088895 7.31225695402 301.843376306) - (1315.0 8.79707016187 7.3024039406 301.865489283) - (1320.0 8.79876943479 7.29255092717 301.887602261) - (1325.0 8.80046870772 7.28269791375 301.909715238) - (1330.0 8.80216798064 7.27284490032 301.931828216) - (1335.0 8.80345002487 7.27037429336 301.950702634) - (1340.0 8.80449597234 7.27208116099 301.967744453) - (1345.0 8.8055419198 7.27378802862 301.984786271) - (1350.0 8.80658786727 7.27549489624 302.00182809) - (1355.0 8.80763381473 7.27720176387 302.018869908) - (1360.0 8.8086797622 7.2789086315 302.035911727) - (1365.0 8.80972570966 7.28061549913 302.052953545) - (1370.0 8.81077165713 7.28232236676 302.069995364) - (1375.0 8.81181760459 7.28402923439 302.087037182) - (1380.0 8.81286355206 7.28573610202 302.104079001) - (1385.0 8.81390949952 7.28744296965 302.121120819) - (1390.0 8.81495544699 7.28914983727 302.138162638) - (1395.0 8.81600139445 7.2908567049 302.155204456) - (1400.0 8.81704734192 7.29256357253 302.172246275) - (1405.0 8.81809328938 7.29427044016 302.189288094) - (1410.0 8.81913923685 7.29597730779 302.206329912) - (1415.0 8.82018518431 7.29768417542 302.223371731) - (1420.0 8.82123113178 7.29939104305 302.240413549) - (1425.0 8.82227707924 7.30109791068 302.257455368) - (1430.0 8.82332302671 7.30280477831 302.274497186) - (1435.0 8.82436897417 7.30451164593 302.291539005) - (1440.0 8.82541492164 7.30621851356 302.308580823) - (1445.0 8.8264608691 7.30792538119 302.325622642) - (1450.0 8.82980499965 7.31411337437 302.342200633) - (1455.0 8.83363827328 7.32125512601 302.358679903) - (1460.0 8.83747154691 7.32839687764 302.375159173) - (1465.0 8.84130482054 7.33553862927 302.391638443) - (1470.0 8.84513809417 7.34268038091 302.408117713) - (1475.0 8.8489713678 7.34982213254 302.424596984) - (1480.0 8.85280464143 7.35696388418 302.441076254) - (1485.0 8.85663791506 7.36410563581 302.457555524) - (1490.0 8.86047118869 7.37124738745 302.474034794) - (1495.0 8.86430446231 7.37838913908 302.490514064) - (1500.0 8.86813773594 7.38553089071 302.506993334) - (1505.0 8.87197100957 7.39267264235 302.523472605) - (1510.0 8.8758042832 7.39981439398 302.539951875) - (1515.0 8.87963755683 7.40695614562 302.556431145) - (1520.0 8.88347083046 7.41409789725 302.572910415) - (1525.0 8.88730410409 7.42123964888 302.589389685) - (1530.0 8.89113737772 7.42838140052 302.605868955) - (1535.0 8.89497065135 7.43552315215 302.622348226) - (1540.0 8.89880392498 7.44266490379 302.638827496) - (1545.0 8.90263719861 7.44980665542 302.655306766) - (1550.0 8.90647047224 7.45694840705 302.671786036) - (1555.0 8.91030374586 7.46409015869 302.688265306) - (1560.0 8.91413701949 7.47123191032 302.704744577) - (1565.0 8.91797029312 7.47837366196 302.721223847) - (1570.0 8.92180356675 7.48551541359 302.737703117) - (1575.0 8.92995697971 7.48958529161 302.756743245) - (1580.0 8.93926578965 7.49283361431 302.77646826) - (1585.0 8.94857459959 7.496081937 302.796193275) - (1590.0 8.95788340953 7.49933025969 302.81591829) - (1595.0 8.96719221947 7.50257858238 302.835643305) - (1600.0 8.97650102941 7.50582690508 302.85536832) - (1605.0 8.98580983935 7.50907522777 302.875093335) - (1610.0 8.9951186493 7.51232355046 302.89481835) - (1615.0 9.00442745924 7.51557187315 302.914543365) - (1620.0 9.01373626918 7.51882019585 302.93426838) - (1625.0 9.02304507912 7.52206851854 302.953993395) - (1630.0 9.03235388906 7.52531684123 302.973718411) - (1635.0 9.041662699 7.52856516392 302.993443426) - (1640.0 9.05097150894 7.53181348662 303.013168441) - (1645.0 9.06028031888 7.53506180931 303.032893456) - (1650.0 9.06958912882 7.538310132 303.052618471) - (1655.0 9.07889793876 7.5415584547 303.072343486) - (1660.0 9.0882067487 7.54480677739 303.092068501) - (1665.0 9.09751555864 7.54805510008 303.111793516) - (1670.0 9.10682436858 7.55130342277 303.131518531) - (1675.0 9.11613317852 7.55455174547 303.151243546) - (1680.0 9.12544198846 7.55780006816 303.170968561) - (1685.0 9.1347507984 7.56104839085 303.190693576) - (1690.0 9.14405960834 7.56429671354 303.210418591) - (1695.0 9.15336841829 7.56754503624 303.230143606) - (1700.0 9.16267722823 7.57079335893 303.249868621) - (1705.0 9.17198603817 7.57404168162 303.269593636) - (1710.0 9.18349377603 7.57239347669 303.290540127) - (1715.0 9.19922226437 7.56134659115 303.31383119) - (1720.0 9.2149507527 7.55029970561 303.337122252) - (1725.0 9.23067924103 7.53925282007 303.360413315) - (1730.0 9.24640772936 7.52820593453 303.383704377) - (1735.0 9.2621362177 7.51715904899 303.40699544) - (1740.0 9.27786470603 7.50611216345 303.430286502) - (1745.0 9.29359319436 7.49506527791 303.453577565) - (1750.0 9.3093216827 7.48401839237 303.476868627) - (1755.0 9.32505017103 7.47297150683 303.50015969) - (1760.0 9.34077865936 7.46192462129 303.523450752) - (1765.0 9.35650714769 7.45087773575 303.546741815) - (1770.0 9.37223563603 7.43983085021 303.570032877) - (1775.0 9.38796412436 7.42878396467 303.59332394) - (1780.0 9.40369261269 7.41773707912 303.616615003) - (1785.0 9.41942110102 7.40669019358 303.639906065) - (1790.0 9.43514958936 7.39564330804 303.663197128) - (1795.0 9.45087807769 7.3845964225 303.68648819) - (1800.0 9.46660656602 7.37354953696 303.709779253) - (1805.0 9.48233505436 7.36250265142 303.733070315) - (1810.0 9.49806354269 7.35145576588 303.756361378) - (1815.0 9.51379203102 7.34040888034 303.77965244) - (1820.0 9.52952051935 7.3293619948 303.802943503) - (1825.0 9.54524900769 7.31831510926 303.826234565) - (1830.0 9.56097749602 7.30726822372 303.849525628) - (1835.0 9.57670598435 7.29622133818 303.87281669) - (1840.0 9.59243447268 7.28517445264 303.896107753) - (1845.0 9.60816296102 7.2741275671 303.919398815) - (1850.0 9.62389144935 7.26308068156 303.942689878) - (1855.0 9.63961993768 7.25203379602 303.96598094) - (1860.0 9.65432709188 7.2376578099 303.988680381) - (1865.0 9.66596304977 7.21327107309 304.009600791) - (1870.0 9.67759900765 7.18888433629 304.0305212) - (1875.0 9.68923496554 7.16449759948 304.051441609) - (1880.0 9.70087092342 7.14011086267 304.072362018) - (1885.0 9.71250688131 7.11572412587 304.093282427) - (1890.0 9.72414283919 7.09133738906 304.114202836) - (1895.0 9.73577879708 7.06695065226 304.135123245) - (1900.0 9.74741475497 7.04256391545 304.156043654) - (1905.0 9.75905071285 7.01817717864 304.176964064) - (1910.0 9.77068667074 6.99379044184 304.197884473) - (1915.0 9.78232262862 6.96940370503 304.218804882) - (1920.0 9.79395858651 6.94501696822 304.239725291) - (1925.0 9.8055945444 6.92063023142 304.2606457) - (1930.0 9.81723050228 6.89624349461 304.281566109) - (1935.0 9.82886646017 6.8718567578 304.302486518) - (1940.0 9.84050241805 6.847470021 304.323406928) - (1945.0 9.85213837594 6.82308328419 304.344327337) - (1950.0 9.86377433382 6.79869654738 304.365247746) - (1955.0 9.87541029171 6.77430981058 304.386168155) - (1960.0 9.8870462496 6.74992307377 304.407088564) - (1965.0 9.89868220748 6.72553633696 304.428008973) - (1970.0 9.91031816537 6.70114960016 304.448929382) - (1975.0 9.92195412325 6.67676286335 304.469849792) - (1980.0 9.93359008114 6.65237612654 304.490770201) - (1985.0 9.94522603903 6.62798938974 304.51169061) - (1990.0 9.95686199691 6.60360265293 304.532611019) - (1995.0 9.9684979548 6.57921591612 304.553531428) - (2000.0 9.98013391268 6.55482917932 304.574451837) -); - -// Update internal field. -updateInternalFields true; - -// Update boundary field. -updateBoundaryFields false; - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/topoSetDict.local.1 b/exampleCases/example.ADM.ssc.zeromq/system/topoSetDict.local.1 deleted file mode 100755 index 5ca695970..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/topoSetDict.local.1 +++ /dev/null @@ -1,36 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object topoSetDict.local.2; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -actions -( - { - name local; - type cellSet; - action new; - source rotatedBoxToCell; - sourceInfo - { - origin ( 900.0 1325.0 0.0); - i ( 1950.0 0.0 0.0); - j ( 0.0 350.0 0.0); - k ( 0.0 0.0 230.0); - } - } - -); - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/system/topoSetDict.local.2 b/exampleCases/example.ADM.ssc.zeromq/system/topoSetDict.local.2 deleted file mode 100755 index eb488cf4f..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/system/topoSetDict.local.2 +++ /dev/null @@ -1,36 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 2.0 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object topoSetDict.local.2; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -actions -( - { - name local; - type cellSet; - action new; - source rotatedBoxToCell; - sourceInfo - { - origin ( 1000.0 1375.0 0.0); - i ( 1800.0 0.0 0.0); - j ( 0.0 250.0 0.0); - k ( 0.0 0.0 200.0); - } - } - -); - -// ************************************************************************* // diff --git a/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/.gitignore b/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/.gitignore deleted file mode 100644 index 5e5d223e5..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/.gitignore +++ /dev/null @@ -1,7 +0,0 @@ -## Ignore any compiled functions -*.pyc -*.o -cSSC -*.dll -*.exe -*.so \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/cSSC.c b/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/cSSC.c deleted file mode 100644 index ecd671d1f..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/cSSC.c +++ /dev/null @@ -1,45 +0,0 @@ -// COPIED AND MODIFIED FROM: http://zguide.zeromq.org/c:hwserver - -// Hello World server - -#include -#include -#include -#include -#include - -int main (void) -{ - printf("Setting up connection.\n"); - - - // Socket to talk to clients - void *context = zmq_ctx_new (); - void *responder = zmq_socket (context, ZMQ_REP); - int rc = zmq_bind (responder, "tcp://*:5553"); - - assert (rc == 0); - printf("Set up connection. Attempting to receive signals.\n"); - - while (1) { - char buffer [9900]; - - // Receive info from SOWFA - zmq_recv (responder, buffer, 9900, 0); - printf("Received signal [%s].\n", buffer); - - // Do your control stuff - // ... - // ... for this example case, just give constant output - char returnSignal [11] = "263.33 2.0"; // Make sure the dimensions are appropriate - // ... - // - - // Send back to SOWFA - printf ("Sending signal back to SOWFA [%s].\n",returnSignal); - zmq_send (responder, returnSignal, 9900, 0); - printf("Signal sent\n"); - - } - return 0; -} diff --git a/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/matlabSSC.m b/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/matlabSSC.m deleted file mode 100644 index 75ab25eda..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/matlabSSC.m +++ /dev/null @@ -1,61 +0,0 @@ -clear all; close all; clc; -% -% MATLAB can use zeroMQ, but it is not necessarily so straight-forward. The easiest solution found was -% using "jeroMQ", which can be downloaded from https://github.com/zeromq/jeromq. After installation, -% Update the path below and you should be all set. -% -% For more information, check out: -% https://mathworks.com/matlabcentral/answers/269061-how-do-i-integrate-zeromq-library-with-matlab-i-want-my-matlab-program-to-be-a-subscriber-of-zeromq -% -% Note: to install jeroMQ, you need to have 'maven' installed. When using Maven to install jeroMQ, -% you may run into an error about the unit testing. If so, disable them and run again using -% 'mvn install -DskipTests' -% -% Recommended Java JDK version: 1.8.0_171 (tested by excluding unit tests) -% -% -javaaddpath('/home/bartdoekemeijer/OpenFOAM_Develop/jeroMQ/jeromq/target/jeromq-0.4.4-SNAPSHOT.jar','-dpath'); - -import org.zeromq.* - - -disp(['Setting up the server...']); -context = zmq.Ctx(); -socket = context.createSocket(ZMQ.REP); -socket.bind('tcp://*:5553'); - -noMessagesReceived = 0; -disp(['Entering loop for collecting and sending data...']); -while 1 - - %% Receive information from SOWFA - % message = socket.recv(0); % Wait indefinitely until found a transmitter - message = socket.recv(1); % Do not wait for transmitter - if length(message) <= 0 - %disp([datestr(rem(now,1)) '__ no message received.']); - pause(0.05); % wait 50 ms - else - json_data = native2unicode(message.data)'; % Received message - - % cut down json_data to remove all non-used bytes - sortedFloats = textscan( json_data, '%f', 'Delimiter',' ' ); - inputsToSSC = sortedFloats{1}'; % row vector with data - disp([datestr(rem(now,1)) '__ message received: [' num2str(inputsToSSC) '].']); - - - % Do your control input stuff here - % ... - % ... - % ... - str_send = '263.35 2.0'; % This should be your next control inputs - - - % Send a message (control action) back to SOWFA - noMessagesReceived = noMessagesReceived + 1; - message = zmq.Msg(length(str_send)); - message.put(unicode2native(str_send)); - socket.send(message, 0); - end -end -% Close connection -socket.close() \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/pythonSSC.py b/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/pythonSSC.py deleted file mode 100644 index fda43b28c..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/pythonSSC.py +++ /dev/null @@ -1,27 +0,0 @@ -# COPIED AND MODIFIED FROM: http://zguide.zeromq.org/py:hwserver -# -# Hello World server in Python -# Binds REP socket to tcp://*:5555 -# Expects b"Hello" from client, replies with b"World" -# -# -# For peregrine: use 'module load python/2.7.6'. -# Otherwise: make sure you have pyzmq, through 'pip install pyzmq' -# -import time -import zmq - -context = zmq.Context() -socket = context.socket(zmq.REP) -socket.bind("tcp://*:5553") - -while True: - # Wait for next request from client - message = socket.recv() - print("Received request: %s" % message) - - # Do some 'work' - time.sleep(1) - - # Send reply back to client - socket.send(b"263.33 2.0") diff --git a/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/readme.txt b/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/readme.txt deleted file mode 100644 index f2903f012..000000000 --- a/exampleCases/example.ADM.ssc.zeromq/zeromqExamplesSSC/readme.txt +++ /dev/null @@ -1,46 +0,0 @@ -// -// _SSC_ readme.txt -// Author: Bart Doekemeijer -// Date: May 4, 2018 -// - -__Description: -This document is a short readme for using the zeromqSSC option for wind farm control. -Read it carefully and study the examples before applying your own controller to SOWFA. - - -__Guidelines: -The 'zeromqSSC' interface works using the zeroMQ tool (http://zeromq.org/). This is an -interfacing tool that allows the exchange of information between different programs and -even between different computers using a network communication protocol (e.g., tcp). -This communication typically is between two programs: a 'client' and a 'server'. - -In SOWFA, the 'server' is your controller implemented in the language of choice, and the -'client' is actually (the 'zeromqSSC' function included in) SOWFA. Note that information -is exchanged through a string of an array of numbers. The formatting from array to string, -and then the formatting from string back to array, should be done on both sides: the client -and the server. So, in your case, you will have to account for this in your supercontroller. - - -__ Usage: -1. Enable the SSC in the turbineArrayProperties, and set 'sscFunction' to 'zeromqSSC'. -2. Set the individual turbine yaw and blade pitch controller to "yawSC" and "PIDSC". -3. Start up your zeroMQ server (i.e., your wind farm controller code using zeroMQ). -4. Start up your SOWFA simulation. - - -__ Example cases: -Some examples cases are given in this folder for a wind farm controller in C, a wind farm -controller is Python, and a wind farm controller in MATLAB. These are just bare-bone -functions/placeholders for you to program your wind farm control solution in. - -Note: make sure to compile the C-example with -lzmq. E.g., for NRELs Peregrine HPC, use: -gcc -Wall -o cSSC -L /nopt/nrel/apps/zeromq/gcc/4.2.2/lib -lzmq \ - -I /nopt/nrel/apps/zeromq/gcc/4.2.2/include cSSC.c - - -__Debugging: -If there are any issues: check if this is an issue with SOWFA/zeromqSSC, or if this is a -problem with your controller. If the issue is on the SOWFA side, please submit an 'issue' -on the Github page (https://github.com/NREL/SOWFA). For zeromqSSC-related issues, contact -Bart Doekemeijer (TU Delft) or Paul Fleming (NREL). From 5ad61c9c420dde3318424f8a43a8f3745913c78c Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Wed, 7 Nov 2018 12:09:56 +0100 Subject: [PATCH 51/65] Bug fix and simplify TimeTableSSC --- .bash_profile | 7 ++---- .../superControllers/timeTableSSC.H | 24 +++++-------------- 2 files changed, 8 insertions(+), 23 deletions(-) diff --git a/.bash_profile b/.bash_profile index 75f829321..d15e954fb 100644 --- a/.bash_profile +++ b/.bash_profile @@ -87,16 +87,13 @@ SOWFA-2.4.x_SSC() # Set the ZeroMQ compilation option to true echo "Enabling the compilation and usage of ZeroMQ." - echo "Note that you must have zeroMQ installed and specified the appropriate directory." export COMPILEZEROMQ=1 export ZEROMQ_HOME=$HOME/OpenFOAM/zeroMQ/libzmq/install export ZEROMQ_INCLUDE=$ZEROMQ_HOME/include export ZEROMQ_LIB=$ZEROMQ_HOME/lib64 export LD_LIBRARY_PATH=$ZEROMQ_HOME/lib:$LD_LIBRARY_PATH - export LD_LIBRARY_PATH=$ZEROMQ_HOME/lib64:$LD_LIBRARY_PATH - - echo "Specified ZeroMQ /include/ directory: $ZEROMQ_INCLUDE" - echo "Specified ZeroMQ /lib64/ directory: $ZEROMQ_LIB" + export LD_LIBRARY_PATH=$ZEROMQ_HOME/lib64:$LD_LIBRARY_PATH + echo "Specified ZeroMQ directory: $ZEROMQ_HOME" foamDotFile=$FOAM_INST_DIR/$OPENFOAM_NAME/etc/bashrc diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.H index a7c992864..20678ffa0 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.H @@ -6,22 +6,10 @@ std::vector< std::vector > nextControlAction(numTurbines,std::vector Date: Wed, 7 Nov 2018 13:05:43 +0100 Subject: [PATCH 52/65] Set-up a working zeroMQ example case --- .bash_profile | 8 +++---- .../constant/turbineArrayProperties | 5 +--- .../runscript.preprocess | 10 ++++---- .../example.ADM.ssc.zeroMQ/runscript.solve.1 | 23 +++++++++++-------- exampleCases/example.ADM.ssc.zeroMQ/setUp | 2 +- .../zeromqSSC/.gitignore | 6 +++++ .../zeromqSSC/zeromqServerFLORIS.url | 2 ++ 7 files changed, 33 insertions(+), 23 deletions(-) create mode 100644 exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/.gitignore create mode 100644 exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/zeromqServerFLORIS.url diff --git a/.bash_profile b/.bash_profile index d15e954fb..19572b8ee 100644 --- a/.bash_profile +++ b/.bash_profile @@ -9,8 +9,8 @@ fi -# SOWFA-2.4.x -SOWFA-2.4.x() +# OpenFOAM-2.4.x +OpenFOAM-2.4.x() { # Unset OpenFOAM environment variables. if [ -z "$FOAM_INST_DIR" ]; then @@ -58,8 +58,8 @@ SOWFA-2.4.x() export PATH=$FOAM_USER_APPBIN:$PATH } -# SOWFA-2.4.x -SOWFA-2.4.x_SSC() +# OpenFOAM-2.4.x +OpenFOAM-2.4.x_SSC() { # Unset OpenFOAM environment variables. if [ -z "$FOAM_INST_DIR" ]; then diff --git a/exampleCases/example.ADM.ssc.zeroMQ/constant/turbineArrayProperties b/exampleCases/example.ADM.ssc.zeroMQ/constant/turbineArrayProperties index 03ba2956b..15876ce23 100755 --- a/exampleCases/example.ADM.ssc.zeroMQ/constant/turbineArrayProperties +++ b/exampleCases/example.ADM.ssc.zeroMQ/constant/turbineArrayProperties @@ -30,12 +30,9 @@ sscProperties nInputsToSSC 3; // Number of inputs EACH turbine passes to the super controller nOutputsFromSSC 2; // Number of outputs the super controller sends to EACH turbine sscControllerType "zeromqSSC"; // The type of SSC - zmqAddress "tcp://localhost:5551"; + zmqAddress "tcp://localhost:5553"; } -// MATLAB: phi=-10; D=126.4; locs=D*[0 0 0;0 2 0;0 4 0;5 0 0; 5 2 0; 5 4 0; 10 0 0; 10 2 0; 10 4 0]*rotz(phi); -// locs(:,1)=locs(:,1)-min(locs(:,1)) + (3000-(max(locs(:,1))-min(locs(:,1))))/2; locs(:,2)=locs(:,2)-min(locs(:,2)) + (3000-(max(locs(:,2))-min(locs(:,2))))/2; - turbine0 { turbineType "NREL5MWRef"; diff --git a/exampleCases/example.ADM.ssc.zeroMQ/runscript.preprocess b/exampleCases/example.ADM.ssc.zeroMQ/runscript.preprocess index 16ed0ea80..51edac6ff 100755 --- a/exampleCases/example.ADM.ssc.zeroMQ/runscript.preprocess +++ b/exampleCases/example.ADM.ssc.zeroMQ/runscript.preprocess @@ -1,10 +1,10 @@ #!/bin/bash -#PBS -N ADM_noPrecursor_preprocess -#PBS -l nodes=3:ppn=8 +#PBS -N ADM_pisoFoam_preprocess +#PBS -l nodes=1:ppn=1 # User Input. -OpenFOAMversion=2.4.0 # OpenFOAM version +OpenFOAMversion=2.4.x_SSC # OpenFOAM version startTime=0 # Start time updateBCType=0 # Boolean for whether or not the boundary condition types will be updated over # what is in the initial conditions files. Leave it 0 for precursors. @@ -65,8 +65,8 @@ fi # Source the bash profile and then call the appropriate OpenFOAM version function # so that all the modules and environment variables get set. echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." -#source $HOME/.bash_profile -#OpenFOAM-$OpenFOAMversion +source $HOME/.bash_profile +OpenFOAM-$OpenFOAMversion # Copy the controlDict.1 (assuming this is the one the actual solver will start diff --git a/exampleCases/example.ADM.ssc.zeroMQ/runscript.solve.1 b/exampleCases/example.ADM.ssc.zeroMQ/runscript.solve.1 index 191fffd4a..d31da19b5 100755 --- a/exampleCases/example.ADM.ssc.zeroMQ/runscript.solve.1 +++ b/exampleCases/example.ADM.ssc.zeroMQ/runscript.solve.1 @@ -1,16 +1,24 @@ #!/bin/bash -#PBS -N piso_9tb_SSC +#PBS -l walltime=48:00:00 #PBS -l nodes=1:ppn=8 +#PBS -N "ADM.ssc.zeroMQ" + + cd $PBS_O_WORKDIR + + + # User Input. +OpenFOAMversion=2.4.x_SSC # OpenFOAM version startTime=0 # Start time cores=8 # Enter the number of cores you will preprocess on. runNumber=1 # Enter the run number (useful for keeping track of restarts). solver=pisoFoamTurbine.ADM # Enter the name of the flow solver. + echo "Starting OpenFOAM job at: " $(date) echo "using " $cores " cores" @@ -18,19 +26,16 @@ echo "using " $cores " cores" # Source the bash profile and then call the appropriate OpenFOAM version function # so that all the modules and environment variables get set. echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." -module load openfoam/2.4.0 -module load matlab -export ZEROMQ_INCLUDE=$HOME/OpenFOAM/zeroMQ/libzmq/install/include -export ZEROMQ_LIB=$HOME/OpenFOAM/zeroMQ/libzmq/install/lib64 -export LD_LIBRARY_PATH=$HOME/OpenFOAM/zeroMQ/libzmq/install/lib:$LD_LIBRARY_PATH -export LD_LIBRARY_PATH=$HOME/OpenFOAM/zeroMQ/libzmq/install/lib64:$LD_LIBRARY_PATH +source $HOME/.bash_profile +OpenFOAM-$OpenFOAMversion + # Get the control dictionary for this particular run. cp system/controlDict.$runNumber system/controlDict # Run the solver. -(mpirun -np $cores $solver -parallel > log.$runNumber.$solver 2>&1) & -(cd zeromqServerFLORIS; matlab -nodisplay -noFigureWindows -logfile 'SSC_MATLAB.log' -r florisSSC) +(mpirun -np $cores $solver -parallel > log.$runNumber.$solver 2>&1) & +(cd zeromqSSC; matlab -nodisplay -noFigureWindows -logfile 'zeromqSSC_MATLAB.log' -r florisSSC) echo "Ending OpenFOAM job at: " $(date) \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc.zeroMQ/setUp b/exampleCases/example.ADM.ssc.zeroMQ/setUp index 4ad533e07..9b3566121 100755 --- a/exampleCases/example.ADM.ssc.zeroMQ/setUp +++ b/exampleCases/example.ADM.ssc.zeroMQ/setUp @@ -15,7 +15,7 @@ yMax 3000.0; // Maximum y-extent of domain zMax 1000.0; // Maximum z-extent of domain (m). nx 100; // Number of cells in x-direction. ny 100; // Number of cells in y-direction. -nz 33; // Number of cells in z-direction. +nz 34; // Number of cells in z-direction. diff --git a/exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/.gitignore b/exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/.gitignore new file mode 100644 index 000000000..41ba12d5a --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/.gitignore @@ -0,0 +1,6 @@ +* +** +**/** +*** +!.gitignore +!zeromqServerFLORIS.url \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/zeromqServerFLORIS.url b/exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/zeromqServerFLORIS.url new file mode 100644 index 000000000..96cd3be6d --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/zeromqServerFLORIS.url @@ -0,0 +1,2 @@ +[InternetShortcut] +URL=https://github.com/Bartdoekemeijer/zeromqServerFLORIS From d61fc08cac78350d928118b40e6f13d117e45a52 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Wed, 7 Nov 2018 13:11:18 +0100 Subject: [PATCH 53/65] Remove SCSimple case. This has been replaced by the TimeTableSSC code. --- .../controllers/superControllers/SCSimple.C | 88 ------------------- .../controllers/superControllers/SCSimple.H | 21 ----- .../horizontalAxisWindTurbinesADM.C | 8 +- 3 files changed, 1 insertion(+), 116 deletions(-) delete mode 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/SCSimple.C delete mode 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/SCSimple.H diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/SCSimple.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/SCSimple.C deleted file mode 100644 index 2344ddc80..000000000 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/SCSimple.C +++ /dev/null @@ -1,88 +0,0 @@ -//_SSC_ -// OVERALL IDEA: SIMPLE CONTROLLER DOES NOTHING WITH THE INPUTS EXCEPT EXTRACT THE TIME AND DETERMINE SETPOINTS FOR YAW AND PITCH - -// INPUT/OUTPUT -// inputArray, not used for now -// outputArray, for each turbine, yaw angle (compass deg) and minimum pitch (deg) -// simTime, needed to know what time it is -// numTurbines, number of turbines - - - -#include -#include // for malloc - -// The main function of the super controller -void SCSimpleADM(float * inputArray, float * outputArray, float simTime, int numTurbines) -{ - - //Define variables for handling SC_Struct - char buffer[500]; - - //Define firstTimecheck and file variables - static int isFirstCall = 1; - FILE *fp; //File ID - static int numRows = 0; - - //Declare reference vectors - static float timeVec[1000]; - static int turbineVec[1000]; - static float yawVec[1000]; - static float PitchMinVec[1000]; - float temp; - - //Initialize row and declare memory - if (isFirstCall == 1) - { - fprintf(stderr,"%s %d FIRST CALL \n",__FILE__,__LINE__); - - //Open file for writing - if((fp=fopen("SC_INPUT.txt", "r")) == NULL) { - fprintf(stderr,"Cannot open SC Input File.\n"); - } - - fgets(buffer,500,fp); - - //Now read the tables until END is found - //for (int i = 0; i < numRows; i++) - for (int i = 0; 1 > 0; i++) - { - if(fscanf (fp, "%f", &temp) < 1) - break; - timeVec[i] = temp; - fscanf (fp, "%f", &temp); - turbineVec[i] = temp; - fscanf (fp, "%f", &temp); - yawVec[i] = temp; - fscanf (fp, "%f", &temp); - PitchMinVec[i] = temp; - fprintf(stderr,"%s %d INPUTS %f %d %f %f \n",__FILE__,__LINE__,timeVec[i],turbineVec[i],yawVec[i],PitchMinVec[i]); - numRows++; - } - - //Close the file - fclose(fp); - - isFirstCall = 0; //Don't repeat - } - - //Now loop through the possible conditions and apply references - for (int i = 0; i < numRows; i++) - { - for (int turbineID = 0; turbineID < numTurbines; turbineID ++) - { - //fprintf(stderr,"%s %d tID %d turbVec %d localTime %f timeVec %f \n",__FILE__,__LINE__,turbineID,turbineVec[i],simTime,timeVec[i]); - - if (turbineID == turbineVec[i] && simTime >= timeVec[i]) // This condition applies to this turbine at this time - { - //fprintf(stderr,"%s %d UPDATING OUTPUT...........................................\n",__FILE__,__LINE__); - - // Set the yaw setpoint - outputArray[turbineID * 2] = yawVec[i]; - outputArray[turbineID * 2 + 1] = PitchMinVec[i]; - - } - } - } -} - diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/SCSimple.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/SCSimple.H deleted file mode 100644 index 1459e7927..000000000 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/SCSimple.H +++ /dev/null @@ -1,21 +0,0 @@ -//_SSC_ -const int MAX_ARRAY = 1000; -float inputArray[MAX_ARRAY]; -float outputArray[MAX_ARRAY]; - -SCSimpleADM(inputArray, outputArray, runTime_.value(), numTurbines ); - - -// Fix the units from compass deg to standard rad and place into the -// from SC dynamiclist, do this for each turbine -for(int i = 0; i < numTurbines; i++) -{ - // First collect the yaw target and correct - superInfoFromSSC[i*nOutputsFromSSC] = outputArray[i*nOutputsFromSSC]; - superInfoFromSSC[i*nOutputsFromSSC] = compassToStandard(superInfoFromSSC[i*nOutputsFromSSC]); - superInfoFromSSC[i*nOutputsFromSSC] = superInfoFromSSC[i*nOutputsFromSSC] * degRad; - - // Next collect the minimum pitch angle - superInfoFromSSC[i*nOutputsFromSSC+1] = outputArray[i*nOutputsFromSSC+1]; - superInfoFromSSC[i*nOutputsFromSSC+1] = superInfoFromSSC[i*nOutputsFromSSC+1] * degRad; -} diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C index 41ac629a7..471c4c5ce 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C @@ -38,7 +38,6 @@ License #include "interpolateXY.H" // SSC inclusions without dependencies -#include "controllers/superControllers/SCSimple.C" //_SSC_ inclusion #include "controllers/superControllers/timeTableSSC.C" //_SSC_ inclusion // SSC inclusions with dependencies @@ -1111,12 +1110,7 @@ void horizontalAxisWindTurbinesADM::superController() // The super controller code facilitates the exchangess void horizontalAxisWindTurbinesADM::callSuperController() { - // _SSC_, specific controller - if (sscControllerType == "simpleSSC") - { - #include "controllers/superControllers/SCSimple.H" - } - + // _SSC_, specific controller if (sscControllerType == "timeTableSSC") { #include "controllers/superControllers/timeTableSSC.H" From 5fd13ec2f7daba200eff8301d50c5e9310c08735 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Wed, 7 Nov 2018 13:33:54 +0100 Subject: [PATCH 54/65] Add a separate function that defines which measurements are used. This makes the solution more modular --- .../constant/turbineArrayProperties | 1 + .../constant/turbineArrayProperties | 3 ++- .../controllers/measurementFunctions/default.H | 9 +++++++++ .../controllers/yawControllers/yawSC.H | 4 +++- .../horizontalAxisWindTurbinesADM.C | 12 ++++++++++++ .../horizontalAxisWindTurbinesADM.H | 6 +++++- 6 files changed, 32 insertions(+), 3 deletions(-) create mode 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/measurementFunctions/default.H diff --git a/exampleCases/example.ADM.ssc.timeTable/constant/turbineArrayProperties b/exampleCases/example.ADM.ssc.timeTable/constant/turbineArrayProperties index 832c5e297..2a7ce36af 100755 --- a/exampleCases/example.ADM.ssc.timeTable/constant/turbineArrayProperties +++ b/exampleCases/example.ADM.ssc.timeTable/constant/turbineArrayProperties @@ -29,6 +29,7 @@ sscProperties nInputsToSSC 3; // Number of inputs EACH turbine passes to the super controller nOutputsFromSSC 2; // Number of outputs the super controller sends to EACH turbine sscControllerType "timeTableSSC"; // The type of SSC + sscMeasurementsFunction "default"; // Measurements function } turbine0 diff --git a/exampleCases/example.ADM.ssc.zeroMQ/constant/turbineArrayProperties b/exampleCases/example.ADM.ssc.zeroMQ/constant/turbineArrayProperties index 15876ce23..4c3bc9e1b 100755 --- a/exampleCases/example.ADM.ssc.zeroMQ/constant/turbineArrayProperties +++ b/exampleCases/example.ADM.ssc.zeroMQ/constant/turbineArrayProperties @@ -30,7 +30,8 @@ sscProperties nInputsToSSC 3; // Number of inputs EACH turbine passes to the super controller nOutputsFromSSC 2; // Number of outputs the super controller sends to EACH turbine sscControllerType "zeromqSSC"; // The type of SSC - zmqAddress "tcp://localhost:5553"; + sscMeasurementsFunction "default"; // Measurements function + zmqAddress "tcp://localhost:5553"; // zeroMQ connection port } turbine0 diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/measurementFunctions/default.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/measurementFunctions/default.H new file mode 100644 index 000000000..7a4f45b7c --- /dev/null +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/measurementFunctions/default.H @@ -0,0 +1,9 @@ +// Write measurements for the superController. In our example case, we have nInputsToSSC = 3 + +// Proceed turbine by turbine. + forAll(deltaNacYaw, i) + { + superInfoToSSC[i*nInputsToSSC+0] = powerGenerator[i]; // Generator power + superInfoToSSC[i*nInputsToSSC+1] = torqueRotor[i]; // Turbine rotor torque + superInfoToSSC[i*nInputsToSSC+2] = thrust[i]; // Turbine thrust force + } \ No newline at end of file diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/yawControllers/yawSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/yawControllers/yawSC.H index f1fc64e68..6939eefb8 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/yawControllers/yawSC.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/yawControllers/yawSC.H @@ -32,6 +32,7 @@ else if (yawError < 0) else deltaNacYaw[i] = Foam::constant::mathematical::pi / 180.0 * runTime_.deltaT().value(); // Yaw positive +/* // Write measurements for the superController. In our example case, we have nInputsToSSC = 3 if (Pstream::master()) { // Only write for 1 core to avoid the output being InfoToSSC*nCores @@ -44,4 +45,5 @@ if (Pstream::master()) { superInfoToSSC[i*nInputsToSSC+1] = 0.0; superInfoToSSC[i*nInputsToSSC+2] = 0.0; } -//} \ No newline at end of file +//} +*/ \ No newline at end of file diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C index 471c4c5ce..4a56bd1a0 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C @@ -171,6 +171,7 @@ horizontalAxisWindTurbinesADM::horizontalAxisWindTurbinesADM nInputsToSSC = int(readScalar(turbineArrayProperties.subDict("sscProperties").lookup("nInputsToSSC"))); nOutputsFromSSC = int(readScalar(turbineArrayProperties.subDict("sscProperties").lookup("nOutputsFromSSC"))); sscControllerType = word(turbineArrayProperties.subDict("sscProperties").lookup("sscControllerType")); + sscMeasurementsFunction = word(turbineArrayProperties.subDict("sscProperties").lookup("sscMeasurementsFunction")); if (sscControllerType == "zeromqSSC") { zmqAddress = string(turbineArrayProperties.subDict("sscProperties").lookup("zmqAddress")); @@ -1084,6 +1085,7 @@ void horizontalAxisWindTurbinesADM::superController() // if this is the master, call if (Pstream::master()) { + sscMeasurements(); // Gather measurements callSuperController(); // Call the superController function // Send result local @@ -1106,6 +1108,16 @@ void horizontalAxisWindTurbinesADM::superController() } +//_SSC_: define the call to the SSC measurement function +void horizontalAxisWindTurbinesADM::sscMeasurements() +{ + // _SSC_, specific measurement definition + if (sscMeasurementsFunction == "default") + { + #include "controllers/measurementFunctions/default.H" + } +} + //_SSC_: define the call to the simple controller // The super controller code facilitates the exchangess void horizontalAxisWindTurbinesADM::callSuperController() diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H index 0da5068aa..fcfe216e5 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H @@ -342,6 +342,7 @@ private: //_SSC_ Define the controller type and the IP address for the zeroMQ interface word sscControllerType; + word sscMeasurementsFunction; std::string zmqAddress; //- Engage a rotor speed limiter (do not let rotor speed exceed rated @@ -704,8 +705,11 @@ private: //- _SSC_: Define the super controller void superController(); - // _SSC_: Call the simple controller implementation + // _SSC_: Call the controller implementation void callSuperController(); + + // _SSC_: Call the SSC measurement function + void sscMeasurements(); //- Calculate the blade pitch. void controlBladePitch(); From ff84f14a6c91d432df198d7185fe62c43734be27 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Wed, 7 Nov 2018 13:35:35 +0100 Subject: [PATCH 55/65] Update gitignore file --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 87c8a23a1..f4dd36ac6 100644 --- a/.gitignore +++ b/.gitignore @@ -38,6 +38,8 @@ src/turbulenceModels/incompressible/LES/lnInclude/ *Cases/**/log.* *Cases/**/*.log *Cases/**/*.gz +*Cases/**/system/controlDict +*Cases/**/constant/polyMesh/boundary *Cases/**/constant/boundaryData *Cases/**/constant/sources *Cases/**/0 From 2b2875323dbdf7fd4bdfea5ff7acf80d98f009d2 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Wed, 7 Nov 2018 13:44:05 +0100 Subject: [PATCH 56/65] move superController functions separate from the ADM code, since they are general and can be used also with ALM and ALMAdvanced. This is in preparation for the ALMAdvanced SSC implementation --- .../horizontalAxisWindTurbinesADM.C | 8 ++++---- .../controllers => }/superControllers/timeTableSSC.C | 0 .../controllers => }/superControllers/timeTableSSC.H | 0 .../controllers => }/superControllers/zeromqSSC.C | 0 .../controllers => }/superControllers/zeromqSSC.H | 0 5 files changed, 4 insertions(+), 4 deletions(-) rename src/turbineModels/turbineModelsStandard/{horizontalAxisWindTurbinesADM/controllers => }/superControllers/timeTableSSC.C (100%) rename src/turbineModels/turbineModelsStandard/{horizontalAxisWindTurbinesADM/controllers => }/superControllers/timeTableSSC.H (100%) rename src/turbineModels/turbineModelsStandard/{horizontalAxisWindTurbinesADM/controllers => }/superControllers/zeromqSSC.C (100%) rename src/turbineModels/turbineModelsStandard/{horizontalAxisWindTurbinesADM/controllers => }/superControllers/zeromqSSC.H (100%) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C index 4a56bd1a0..fbf688f4d 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C @@ -38,7 +38,7 @@ License #include "interpolateXY.H" // SSC inclusions without dependencies -#include "controllers/superControllers/timeTableSSC.C" //_SSC_ inclusion +#include "../superControllers/timeTableSSC.C" //_SSC_ inclusion // SSC inclusions with dependencies #define DO_EXPAND(VAL) VAL ## 1 @@ -49,7 +49,7 @@ License #endif #if COMPILEZEROMQ == 1 // External definition for gcc compiler: '-D COMPILEZEROMQ=1' - #include "controllers/superControllers/zeromqSSC.C" //_SSC_ inclusion + #include "../superControllers/zeromqSSC.C" //_SSC_ inclusion #endif namespace Foam @@ -1125,13 +1125,13 @@ void horizontalAxisWindTurbinesADM::callSuperController() // _SSC_, specific controller if (sscControllerType == "timeTableSSC") { - #include "controllers/superControllers/timeTableSSC.H" + #include "../superControllers/timeTableSSC.H" } #if COMPILEZEROMQ == 1 if (sscControllerType == "zeromqSSC") { - #include "controllers/superControllers/zeromqSSC.H" + #include "../superControllers/zeromqSSC.H" } #else if (sscControllerType == "zeromqSSC") diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.C b/src/turbineModels/turbineModelsStandard/superControllers/timeTableSSC.C similarity index 100% rename from src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.C rename to src/turbineModels/turbineModelsStandard/superControllers/timeTableSSC.C diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.H b/src/turbineModels/turbineModelsStandard/superControllers/timeTableSSC.H similarity index 100% rename from src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC.H rename to src/turbineModels/turbineModelsStandard/superControllers/timeTableSSC.H diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C b/src/turbineModels/turbineModelsStandard/superControllers/zeromqSSC.C similarity index 100% rename from src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.C rename to src/turbineModels/turbineModelsStandard/superControllers/zeromqSSC.C diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H b/src/turbineModels/turbineModelsStandard/superControllers/zeromqSSC.H similarity index 100% rename from src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC.H rename to src/turbineModels/turbineModelsStandard/superControllers/zeromqSSC.H From 9d817c4a4e8269a54a254476d8789963c6e74a39 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Wed, 7 Nov 2018 15:49:48 +0100 Subject: [PATCH 57/65] Update ADM code and make SSC code ADM-specific --- .../superControllers/timeTableSSC_ADM.C} | 18 +++++++++--------- .../superControllers/timeTableSSC_ADM.H} | 2 +- .../superControllers/zeromqSSC_ADM.C} | 2 +- .../superControllers/zeromqSSC_ADM.H} | 2 +- .../horizontalAxisWindTurbinesADM.C | 8 ++++---- .../horizontalAxisWindTurbinesADM.H | 2 +- 6 files changed, 17 insertions(+), 17 deletions(-) rename src/turbineModels/turbineModelsStandard/{superControllers/timeTableSSC.C => horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC_ADM.C} (86%) rename src/turbineModels/turbineModelsStandard/{superControllers/timeTableSSC.H => horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC_ADM.H} (86%) rename src/turbineModels/turbineModelsStandard/{superControllers/zeromqSSC.C => horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC_ADM.C} (91%) rename src/turbineModels/turbineModelsStandard/{superControllers/zeromqSSC.H => horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC_ADM.H} (91%) diff --git a/src/turbineModels/turbineModelsStandard/superControllers/timeTableSSC.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC_ADM.C similarity index 86% rename from src/turbineModels/turbineModelsStandard/superControllers/timeTableSSC.C rename to src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC_ADM.C index cecf67f75..4b6b39320 100644 --- a/src/turbineModels/turbineModelsStandard/superControllers/timeTableSSC.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC_ADM.C @@ -18,7 +18,7 @@ #include // Read text file and format appropriately -void readInputSSC(char *inputFile, int nTurbs, int nControlVars, +void readInputSSC_ADM(char *inputFile, int nTurbs, int nControlVars, std::vector &nTurbInputs, std::vector< std::vector >&timeArray, std::vector< std::vector > > &controlArray) { @@ -86,7 +86,7 @@ void readInputSSC(char *inputFile, int nTurbs, int nControlVars, } // Function to determine next control setting -void lookupControlAction(float simTime, int nTurbs, int nControlVars, std::vector< std::vector >&timeArray, +void lookupControlAction_ADM(float simTime, int nTurbs, int nControlVars, std::vector< std::vector >&timeArray, std::vector< std::vector > > &controlArray, std::vector &nTurbInputs, std::vector< std::vector >&nextControlAction) { @@ -119,7 +119,7 @@ void lookupControlAction(float simTime, int nTurbs, int nControlVars, std::vecto } } -void SC_timeTable(int nTurbs,int nControlVars, std::vector< std::vector >&nextControlAction, float simTime) +void SC_timeTable_ADM(int nTurbs,int nControlVars, std::vector< std::vector >&nextControlAction, float simTime) { char *inputFile = "SC_INPUT.txt"; // Filename of input file/path address relative to main case folder @@ -130,12 +130,12 @@ void SC_timeTable(int nTurbs,int nControlVars, std::vector< std::vector > // Read input SSC file if first time this function is called if(isFirstCall == 1){ - readInputSSC(inputFile, nTurbs, nControlVars, nTurbInputs, timeArray, controlArray); + readInputSSC_ADM(inputFile, nTurbs, nControlVars, nTurbInputs, timeArray, controlArray); isFirstCall = 0; // disable for future calls } // Retrieve control settings for time instant 'simTime' - lookupControlAction(simTime, nTurbs, nControlVars, timeArray,controlArray, nTurbInputs,nextControlAction); + lookupControlAction_ADM(simTime, nTurbs, nControlVars, timeArray,controlArray, nTurbInputs,nextControlAction); /* // Print calculated control settings @@ -161,19 +161,19 @@ int main() printf("TIME = 5.0 SECONDS.\n"); simTime = 5.0; - SC_timeTable(nTurbs,nOutputsFromSSC,nextControlAction,simTime); + SC_timeTable_ADM(nTurbs,nOutputsFromSSC,nextControlAction,simTime); printf("TIME = 11 SECONDS.\n"); simTime = 11.0; - SC_timeTable(nTurbs,nOutputsFromSSC,nextControlAction,simTime); + SC_timeTable_ADM(nTurbs,nOutputsFromSSC,nextControlAction,simTime); printf("TIME = 15 SECONDS.\n"); simTime = 15.0; - SC_timeTable(nTurbs,nOutputsFromSSC,nextControlAction,simTime); + SC_timeTable_ADM(nTurbs,nOutputsFromSSC,nextControlAction,simTime); printf("TIME = 21 SECONDS.\n"); simTime = 21.0; - SC_timeTable(nTurbs,nOutputsFromSSC,nextControlAction,simTime); + SC_timeTable_ADM(nTurbs,nOutputsFromSSC,nextControlAction,simTime); return 0; }*/ \ No newline at end of file diff --git a/src/turbineModels/turbineModelsStandard/superControllers/timeTableSSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC_ADM.H similarity index 86% rename from src/turbineModels/turbineModelsStandard/superControllers/timeTableSSC.H rename to src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC_ADM.H index 20678ffa0..ab5b83e1a 100644 --- a/src/turbineModels/turbineModelsStandard/superControllers/timeTableSSC.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/timeTableSSC_ADM.H @@ -4,7 +4,7 @@ std::vector< std::vector > nextControlAction(numTurbines,std::vector(nOutputsFromSSC)); // Call the SC from external library -SC_timeTable(numTurbines,nOutputsFromSSC,nextControlAction,runTime_.value()); +SC_timeTable_ADM(numTurbines,nOutputsFromSSC,nextControlAction,runTime_.value()); // Copy entries to global variable and print the to-be-applied control settings for(int i=0; i < numTurbines; i++){ diff --git a/src/turbineModels/turbineModelsStandard/superControllers/zeromqSSC.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC_ADM.C similarity index 91% rename from src/turbineModels/turbineModelsStandard/superControllers/zeromqSSC.C rename to src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC_ADM.C index 171f28d92..8675be01c 100644 --- a/src/turbineModels/turbineModelsStandard/superControllers/zeromqSSC.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC_ADM.C @@ -15,7 +15,7 @@ #include #include -void SC_zeromq(std::string zmqAddress, float timeStep, std::vector infoToSC, std::vector &infoFromSC, int sizeInfoFromSSC ) +void SC_zeromq_ADM(std::string zmqAddress, float timeStep, std::vector infoToSC, std::vector &infoFromSC, int sizeInfoFromSSC ) { static int isFirstCall = 1; static void *context = zmq_ctx_new (); diff --git a/src/turbineModels/turbineModelsStandard/superControllers/zeromqSSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC_ADM.H similarity index 91% rename from src/turbineModels/turbineModelsStandard/superControllers/zeromqSSC.H rename to src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC_ADM.H index bd376709d..77b0c5361 100644 --- a/src/turbineModels/turbineModelsStandard/superControllers/zeromqSSC.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/controllers/superControllers/zeromqSSC_ADM.H @@ -30,7 +30,7 @@ for(int i = 0; i < nInputsToSSC*numTurbines; i++){ } // Call the SC from external library -SC_zeromq(zmqAddress, runTime_.value(), zeromqInfoToSC, zeromqInfoFromSC, sizeInfoFromSSC ); +SC_zeromq_ADM(zmqAddress, runTime_.value(), zeromqInfoToSC, zeromqInfoFromSC, sizeInfoFromSSC ); // Copy entries to global variable and print the to-be-applied control settings for(int i=0; i < numTurbines; i++){ diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C index fbf688f4d..1897f0936 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C @@ -38,7 +38,7 @@ License #include "interpolateXY.H" // SSC inclusions without dependencies -#include "../superControllers/timeTableSSC.C" //_SSC_ inclusion +#include "controllers/superControllers/timeTableSSC_ADM.C" //_SSC_ inclusion // SSC inclusions with dependencies #define DO_EXPAND(VAL) VAL ## 1 @@ -49,7 +49,7 @@ License #endif #if COMPILEZEROMQ == 1 // External definition for gcc compiler: '-D COMPILEZEROMQ=1' - #include "../superControllers/zeromqSSC.C" //_SSC_ inclusion + #include "controllers/superControllers/zeromqSSC_ADM.C" //_SSC_ inclusion #endif namespace Foam @@ -1125,13 +1125,13 @@ void horizontalAxisWindTurbinesADM::callSuperController() // _SSC_, specific controller if (sscControllerType == "timeTableSSC") { - #include "../superControllers/timeTableSSC.H" + #include "controllers/superControllers/timeTableSSC_ADM.H" } #if COMPILEZEROMQ == 1 if (sscControllerType == "zeromqSSC") { - #include "../superControllers/zeromqSSC.H" + #include "controllers/superControllers/zeromqSSC_ADM.H" } #else if (sscControllerType == "zeromqSSC") diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H index fcfe216e5..7a57db44f 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.H @@ -704,7 +704,7 @@ private: //- _SSC_: Define the super controller void superController(); - + // _SSC_: Call the controller implementation void callSuperController(); From 54e0a9bc20e91dc9f6bd201f36fe9a6b91212a38 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Wed, 7 Nov 2018 15:51:35 +0100 Subject: [PATCH 58/65] Add SSC for the ALMAdvanced code. Still needs two example cases for testing --- .../controllers/bladePitchControllers/PIDSC.H | 44 ++++ .../genTorqueControllers/TorqueSC.H | 1 + .../measurementFunctions/default.H | 9 + .../controllers/nacYawControllers/yawSC.H | 7 + .../timeTableSSC_ALMAdvanced.C | 179 ++++++++++++++++ .../timeTableSSC_ALMAdvanced.H | 15 ++ .../superControllers/zeromqSSC_ALMAdvanced.C | 73 +++++++ .../superControllers/zeromqSSC_ALMAdvanced.H | 41 ++++ .../horizontalAxisWindTurbinesALMAdvanced.C | 201 ++++++++++++++++-- .../horizontalAxisWindTurbinesALMAdvanced.H | 32 ++- 10 files changed, 586 insertions(+), 16 deletions(-) create mode 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/bladePitchControllers/PIDSC.H create mode 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/genTorqueControllers/TorqueSC.H create mode 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/measurementFunctions/default.H create mode 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/nacYawControllers/yawSC.H create mode 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/superControllers/timeTableSSC_ALMAdvanced.C create mode 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/superControllers/timeTableSSC_ALMAdvanced.H create mode 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/superControllers/zeromqSSC_ALMAdvanced.C create mode 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/superControllers/zeromqSSC_ALMAdvanced.H mode change 100755 => 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/horizontalAxisWindTurbinesALMAdvanced.C mode change 100755 => 100644 src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/horizontalAxisWindTurbinesALMAdvanced.H diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/bladePitchControllers/PIDSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/bladePitchControllers/PIDSC.H new file mode 100644 index 000000000..f9ab7ed49 --- /dev/null +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/bladePitchControllers/PIDSC.H @@ -0,0 +1,44 @@ + //_SSC_ version of PID where min pitch is set by super controller + + // If past first call to controller, apply control. + if (pastFirstTimeStep) + { + // Set the gain scheduling variable. + GK = 1.0 / (1.0 + (bladePitch[i]*degRad)/PitchK[j]); + + // Store the old value of speed error. + scalar speedErrorLast = speedError[i]; + + // Compute the low speed shaft speed error. + speedError[i] = rotorSpeedF[i] - RatedRotSpeed[j]; + + // Numerically integrate the speed error over time. + intSpeedError[i] += speedError[i] * dt; + + // Numerically take the deriviative of speed error w.r.t time. + scalar derivSpeedError = (speedError[i] - speedErrorLast) / dt; + + // Saturate the integrated speed error based on pitch saturation. + intSpeedError[i] = min(max(intSpeedError[i], superInfoFromSSC[i*nOutputsFromSSC+1]/(GK*PitchControlKI[j])), PitchMax[j]/(GK*PitchControlKI[j])); + + // Compute the pitch components from the proportional, integral, + // and derivative parts and sum them. + scalar pitchP = GK * PitchControlKP[j] * speedError[i]; + scalar pitchI = GK * PitchControlKI[j] * intSpeedError[i]; + scalar pitchD = GK * PitchControlKD[j] * derivSpeedError; + bladePitchCommanded = pitchP + pitchI + pitchD; + + // Saturate the pitch based on the pitch limits of the pitch + // actuator. + bladePitchCommanded = min(max(bladePitchCommanded, superInfoFromSSC[i*nOutputsFromSSC+1]), PitchMax[j]); + } + // If first call to controller, initialize some values. + else + { + // set integrated speed error such that if there is no speed error + // on the first real control step (see the else section below), there + // will not be a change in pitch. + GK = 1.0 / (1.0 + (bladePitch[i]*degRad)/PitchK[j]); + intSpeedError[i] = (bladePitch[i]*degRad) / (GK * PitchControlKI[j]); + } + diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/genTorqueControllers/TorqueSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/genTorqueControllers/TorqueSC.H new file mode 100644 index 000000000..e4101437a --- /dev/null +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/genTorqueControllers/TorqueSC.H @@ -0,0 +1 @@ +generatorTorqueCommanded = superInfoFromSSC[i * nOutputsFromSSC+2]; \ No newline at end of file diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/measurementFunctions/default.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/measurementFunctions/default.H new file mode 100644 index 000000000..7749daef1 --- /dev/null +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/measurementFunctions/default.H @@ -0,0 +1,9 @@ +// Write measurements for the superController. In our example case, we have nInputsToSSC = 3 + +// Proceed turbine by turbine. + forAll(deltaNacYaw, i) + { + superInfoToSSC[i*nInputsToSSC+0] = generatorPower[i]; + superInfoToSSC[i*nInputsToSSC+1] = rotorSpeed[i]; + superInfoToSSC[i*nInputsToSSC+2] = rotorAxialForce[i]; + } \ No newline at end of file diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/nacYawControllers/yawSC.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/nacYawControllers/yawSC.H new file mode 100644 index 000000000..d17800ad8 --- /dev/null +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/nacYawControllers/yawSC.H @@ -0,0 +1,7 @@ +// _SSC_ + +// Yaw controller: set commanded yaw angle in radians +float setpointYaw; +setpointYaw = superInfoFromSSC[i*nOutputsFromSSC]; +setpointYaw = compassToStandard(setpointYaw); // Rotate +nacYawCommanded = setpointYaw * degRad; // Degrees to radians diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/superControllers/timeTableSSC_ALMAdvanced.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/superControllers/timeTableSSC_ALMAdvanced.C new file mode 100644 index 000000000..cc2629ed4 --- /dev/null +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/superControllers/timeTableSSC_ALMAdvanced.C @@ -0,0 +1,179 @@ +// _SSC_ +// file: timeTableSSC.C +// by Paul Fleming & Bart Doekemeijer +// Date: 05/03/2018 +// +// Info: A superController code that loads a table and applies the control settings +// at the relevant timesteps. +// +// this function will read an ascii text file defined by "char *inputFile", +// and apply the specified control settings at the specified time steps. This +// controller code is compatible with the "yawSC.H" and "PIDSC.H" turbine +// controller files, but can easily be extended or modified to one's needs. +// + +#include +#include +#include +#include + +// Read text file and format appropriately +void readInputSSC_ALMAdvanced(char *inputFile, int nTurbs, int nControlVars, + std::vector &nTurbInputs, std::vector< std::vector >&timeArray, + std::vector< std::vector > > &controlArray) +{ + float controlTime; // Time at which the control action is applied + FILE *fp; // Input file handle + char buffer[500]; // Define variables for handling SC_Struct + int turbID; // Temporary turbine number + float temp; // Temporary variable for scanning over floats in the input file + + // Define temporary (multi-dimensional) vectors + std::vector tmpFloatVector; // Temporary float vector + std::vector< std::vector > tmpFloatMatrix; // Temporary float matrix + std::vector tmpControlVector(nControlVars, 0); // Temporary float vector + + //Open file for reading + if((fp=fopen(inputFile, "r")) == NULL) { + fprintf(stderr,"%s: line %d: Cannot find SSC Input File with path '%s'.\n",__FILE__,__LINE__,inputFile); + exit(1); + } + else { + fprintf(stderr,"Successfully opened SSC Input File '%s'.\n",inputFile); + } + + // Populate timeArray and controlArray for each turbine + for (int i = 0; i < nTurbs; i++){ + timeArray.push_back(tmpFloatVector); // Populate with nTurbs vectors + controlArray.push_back(tmpFloatMatrix); // Populate with nTurbs matrices + } + + //Read the tables until the file end is found + printf("SSC: Reading the input file line by line...\n"); + fgets(buffer,500,fp); //Advance past the first comment line + for (int i = 0; 1 > 0; i++) + { + if(fscanf (fp, "%f", &temp) < 1) + break; + controlTime = temp; // First entry should be the simulation time (s) + + fscanf (fp, "%f", &temp); + turbID = temp; // Second entry should be the turbine number + + // Check if turbID exceeds number of turbines defined + if (turbID > nTurbs-1) { + printf("SSC: ERROR. You have defined control inputs for undefined turbines (turbine[%d]). Ignoring this row of inputs.\n",turbID); + for (int cVar = 0; cVar < nControlVars; cVar++) { + fscanf (fp, "%f", &temp); + } + } + else { + // Process control settings for this row of text + timeArray[turbID].push_back(controlTime); // Append with controlTime + printf(" Turbine[%d], time: %f \n", turbID,timeArray[turbID][nTurbInputs[turbID]]); + for (int cVar = 0; cVar < nControlVars; cVar++) { + fscanf (fp, "%f", &temp); + tmpControlVector[cVar] = temp; + printf(" Control setting [%d]: %f \n", cVar,tmpControlVector[cVar]); + } + controlArray[turbID].push_back(tmpControlVector); // Append control vector to controlArray + nTurbInputs[turbID] = nTurbInputs[turbID]+1; // Add one to the nTurbInputs + } + + } + printf("Closing file...\n\n"); + fclose(fp); //Close the file +} + +// Function to determine next control setting +void lookupControlAction_ALMAdvanced(float simTime, int nTurbs, int nControlVars, std::vector< std::vector >&timeArray, + std::vector< std::vector > > &controlArray, std::vector &nTurbInputs, + std::vector< std::vector >&nextControlAction) +{ + int controlIndex=0; + int controlSettingAvailable=0; + + // Determine next control setting for each turbine + for (int i = 0; i < nTurbs; i++){ + controlSettingAvailable=0; + + // Find most recent timestamp of control settings for turbine i + for (int j = 0; j < nTurbInputs[i]; j++){ + if(simTime >= timeArray[i][j]){ + controlIndex = j; + controlSettingAvailable=1; + } + } + + // Write control settings of most recent time instant to outputs for turbine i + if (controlSettingAvailable == 1){ + for (int cVar = 0; cVar < nControlVars; cVar++){ + nextControlAction[i][cVar] = controlArray[i][controlIndex][cVar]; + } + } else { + printf("SSC: WARNING: NO INITIAL CONDITIONS DEFINED FOR TURBINE %d. ASSUMING ZEROS.\n", i); + for (int cVar = 0; cVar < nControlVars; cVar++){ + nextControlAction[i][cVar] = 0.0; + } + } + } +} + +void SC_timeTable_ALMAdvanced(int nTurbs,int nControlVars, std::vector< std::vector >&nextControlAction, float simTime) +{ + char *inputFile = "SC_INPUT.txt"; // Filename of input file/path address relative to main case folder + + static int isFirstCall = 1; + static std::vector nTurbInputs(nTurbs, 0); // Vector with number of input timestaps for each turbine + static std::vector< std::vector > timeArray; // Matrix with timestamps for each turbine + static std::vector< std::vector< std::vector > > controlArray; // Tensor (3D matrix) with control settings for each turbine at each timestamp + + // Read input SSC file if first time this function is called + if(isFirstCall == 1){ + readInputSSC_ALMAdvanced(inputFile, nTurbs, nControlVars, nTurbInputs, timeArray, controlArray); + isFirstCall = 0; // disable for future calls + } + + // Retrieve control settings for time instant 'simTime' + lookupControlAction_ALMAdvanced(simTime, nTurbs, nControlVars, timeArray,controlArray, nTurbInputs,nextControlAction); + + /* + // Print calculated control settings + for(int i=0; i < nTurbs; i++){ + for(int j=0; j tmpFloatVector(nControlVars, 0); // Vector with number of input timestaps for each turbine + std::vector< std::vector > nextControlAction(nTurbs,std::vector(nOutputsFromSSC)); // Matrix with current control actions for each turbine + + printf("TIME = 5.0 SECONDS.\n"); + simTime = 5.0; + SC_timeTable_ALMAdvanced(nTurbs,nOutputsFromSSC,nextControlAction,simTime); + + printf("TIME = 11 SECONDS.\n"); + simTime = 11.0; + SC_timeTable_ALMAdvanced(nTurbs,nOutputsFromSSC,nextControlAction,simTime); + + printf("TIME = 15 SECONDS.\n"); + simTime = 15.0; + SC_timeTable_ALMAdvanced(nTurbs,nOutputsFromSSC,nextControlAction,simTime); + + printf("TIME = 21 SECONDS.\n"); + simTime = 21.0; + SC_timeTable_ALMAdvanced(nTurbs,nOutputsFromSSC,nextControlAction,simTime); + + return 0; +}*/ \ No newline at end of file diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/superControllers/timeTableSSC_ALMAdvanced.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/superControllers/timeTableSSC_ALMAdvanced.H new file mode 100644 index 000000000..93540b1e6 --- /dev/null +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/superControllers/timeTableSSC_ALMAdvanced.H @@ -0,0 +1,15 @@ +//_SSC_ + +// Define variables: Matrix with current control actions for each turbine +std::vector< std::vector > nextControlAction(numTurbines,std::vector(nOutputsFromSSC)); + +// Call the SC from external library +SC_timeTable_ALMAdvanced(numTurbines,nOutputsFromSSC,nextControlAction,runTime_.value()); + +// Copy entries to global variable and print the to-be-applied control settings +for(int i=0; i < numTurbines; i++){ + for(int j=0; j // zeroMQ interface +#include +#include +#include +#include +#include +#include + +void SC_zeromq_ALMAdvanced(std::string zmqAddress, float timeStep, std::vector infoToSC, std::vector &infoFromSC, int sizeInfoFromSSC ) +{ + static int isFirstCall = 1; + static void *context = zmq_ctx_new (); + static void *requester = zmq_socket (context, ZMQ_REQ); + std::string strToSSC; // String that gets sent to SSC + char charFromSSC [9900]; + + // Establish connection of this is the first call to the SC + if (isFirstCall){ + std::cout << "0mq client: Connecting to 0mq server on address: " << zmqAddress << " ... \n"; + zmq_connect (requester, zmqAddress.c_str()); + isFirstCall = 0; // disable for future calls + } + + // Format the to be transmitted data from std::vector to char + std::stringstream ssToSC; // stringStream used to construct strToSSC + ssToSC << timeStep; // First entry is always timestep + for(size_t i = 0; i < infoToSC.size(); ++i) { + ssToSC << " " << infoToSC[i]; + } + strToSSC = ssToSC.str(); + std::cout << "infoToSC: [" << strToSSC << "] \n"; + + // Send and receive from SSC through zeroMQ + zmq_send (requester, strToSSC.c_str(), 9900, 0); + zmq_recv (requester, charFromSSC, 9900, 0); + + // Format received char/string to std::vector + std::cout << "infoFromSC: [" << charFromSSC << "] \n"; + std::stringstream ss(charFromSSC); + for(int i=0;i> infoFromSC[i]; + //printf("infoFromSC[%d] = %f \n",i,infoFromSC[i]); + } +} + +/* +int main() +{ + float timeStep = 10.0; + static std::vector infoToSC; + static std::vector infoFromSC; + + const int numTurbines = 2; + const int nInputsToSSC = 2; + const int nOutputsFromSSC = 2; + + for(int i = 0; i < 3; i++){ + printf("Call %d.\n",i); + #include "zeromqSSC.H" + } + + return 0; +} +*/ \ No newline at end of file diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/superControllers/zeromqSSC_ALMAdvanced.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/superControllers/zeromqSSC_ALMAdvanced.H new file mode 100644 index 000000000..b8304b7f6 --- /dev/null +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/controllers/superControllers/zeromqSSC_ALMAdvanced.H @@ -0,0 +1,41 @@ +// _SSC_ zeromqSSC.C +// +// This superController code serves as a zeroMQ client, which will communicate +// with a zeroMQ server. The zeroMQ server will be the remote controller, such as +// a MATLAB script, a Python script, or any other piece of software using the +// zeroMQ functionality. +// +// Authors: Bart Doekemeijer & Paul Fleming +// +static std::vector zeromqInfoToSC; +static std::vector zeromqInfoFromSC; +static int isFirstCall = 1; +int sizeInfoFromSSC = nOutputsFromSSC*numTurbines; + +if (isFirstCall == 1){ + // Initialize std::vectors with appropriate dimensions + for (int i=0; i < numTurbines*nInputsToSSC; i++){ + zeromqInfoToSC.push_back(0.0); // Initialize with zero values + // + } + for (int i=0; i < sizeInfoFromSSC; i++){ + zeromqInfoFromSC.push_back(0.0); // Initialize with zero values + } + isFirstCall = -1; // disable for future calls +} + +// Pass the SSC inputs to the local std::vector format +for(int i = 0; i < nInputsToSSC*numTurbines; i++){ + zeromqInfoToSC[i] = superInfoToSSC[i]; +} + +// Call the SC from external library +SC_zeromq_ALMAdvanced(zmqAddress, runTime_.value(), zeromqInfoToSC, zeromqInfoFromSC, sizeInfoFromSSC ); + +// Copy entries to global variable and print the to-be-applied control settings +for(int i=0; i < numTurbines; i++){ + for(int j=0; j. +And modified by the TUD to include: +- a matlab interface +- supercontroller +- forcescalar + \*---------------------------------------------------------------------------*/ /*---------------------------------------------------------------------------*\ @@ -36,6 +41,22 @@ License #include "horizontalAxisWindTurbinesALMAdvanced.H" #include "interpolateXY.H" + +// SSC inclusions without dependencies +#include "controllers/superControllers/timeTableSSC_ALMAdvanced.C" //_SSC_ inclusion + +// SSC inclusions with dependencies +#define DO_EXPAND(VAL) VAL ## 1 +#define EXPAND(VAL) DO_EXPAND(VAL) +#if !defined(COMPILEZEROMQ) || (EXPAND(COMPILEZEROMQ) == 1) // (Re)define if COMPILEZEROMQ undefined or empty string + #undef COMPILEZEROMQ + #define COMPILEZEROMQ 0 // Set default option to 0, meaning 'do not compile ZeroMQ interface' +#endif + +#if COMPILEZEROMQ == 1 // External definition for gcc compiler: '-D COMPILEZEROMQ=1' + #include "controllers/superControllers/zeromqSSC_ALMAdvanced.C" //_SSC_ inclusion +#endif + namespace Foam { namespace turbineModels @@ -184,22 +205,68 @@ horizontalAxisWindTurbinesALMAdvanced::horizontalAxisWindTurbinesALMAdvanced ) ); + // _SSC_ Import SSC setting from the turbineArrayProperties dictionary file // Read in the turbine array properties dictionary. This is the uppermost level dictionary // that describes where the turbines are, what kind they are, their initial state, and // information about how the actuator line method is applied to each turbine. { + sscEnabled = false; // _SSC_ Set default option to 'false' List listTemp = turbineArrayProperties.toc(); for (int i = 0; i < listTemp.size(); i++) { - if (listTemp[i] != "globalProperties") + if (listTemp[i] != "globalProperties" && listTemp[i] != "sscProperties") // _SSC_ Edit to ignore 'sscProperties' as a turbine { turbineName.append(listTemp[i]); } + + // _SSC_ Check for sscProperties subDict. If exists, import the 'sscEnabled' setting (backwards compatibility) + if (listTemp[i] == "sscProperties") + { + sscEnabled = turbineArrayProperties.subDict("sscProperties").lookupOrDefault("sscEnabled",false); + } + // } } numTurbines = turbineName.size(); + //_SSC_ If SSC enabled, read the number of inputs and outputs, and + // set up the dynamic arrays which will pass the memory between super controller and turbine controllers + if (sscEnabled) { + nInputsToSSC = int(readScalar(turbineArrayProperties.subDict("sscProperties").lookup("nInputsToSSC"))); + nOutputsFromSSC = int(readScalar(turbineArrayProperties.subDict("sscProperties").lookup("nOutputsFromSSC"))); + sscControllerType = word(turbineArrayProperties.subDict("sscProperties").lookup("sscControllerType")); + sscMeasurementsFunction = word(turbineArrayProperties.subDict("sscProperties").lookup("sscMeasurementsFunction")); + + if (sscControllerType == "zeromqSSC") { + zmqAddress = string(turbineArrayProperties.subDict("sscProperties").lookup("zmqAddress")); + } + + //Set up dynamic arrays + for (int si = 0; si < numTurbines * nInputsToSSC; si++) + { + superInfoToSSC.append(0.0); + } + for (int si = 0; si < numTurbines * nOutputsFromSSC; si++) + { + superInfoFromSSC.append(0.0); + } + + } + + // _SSC_ Report whether ssc has been enabled or disabled + if(Pstream::myProcNo() == 0) // Only print to log file for processor0, to avoid $nCores messages + { + if(sscEnabled) { + printf("The SSC is enabled.\n"); + printf(" The SSC is expecting %d inputs per turbine.\n",nInputsToSSC ); + printf(" The SSC is expecting %d outputs per turbine.\n",nOutputsFromSSC ); + } else { + printf("The SSC is disabled.\n"); + } + } + // + outputControl = turbineArrayProperties.subDict("globalProperties").lookupOrDefault("outputControl","timeStep"); outputInterval = turbineArrayProperties.subDict("globalProperties").lookupOrDefault("outputInterval",1); perturb = turbineArrayProperties.subDict("globalProperties").lookupOrDefault("perturb",1E-5); @@ -214,6 +281,7 @@ horizontalAxisWindTurbinesALMAdvanced::horizontalAxisWindTurbinesALMAdvanced turbineType.append(word(turbineArrayProperties.subDict(turbineName[i]).lookup("turbineType"))); includeNacelle.append(readBool(turbineArrayProperties.subDict(turbineName[i]).lookup("includeNacelle"))); includeTower.append(readBool(turbineArrayProperties.subDict(turbineName[i]).lookup("includeTower"))); + forceScalar.append(scalar(readScalar(turbineArrayProperties.subDict(turbineName[i]).lookup("forceScalar")))); baseLocation.append(vector(turbineArrayProperties.subDict(turbineName[i]).lookup("baseLocation"))); @@ -329,6 +397,7 @@ horizontalAxisWindTurbinesALMAdvanced::horizontalAxisWindTurbinesALMAdvanced } + // For each distinct turbine, read in properties of that turbine from separate // dictionaries. @@ -421,7 +490,7 @@ horizontalAxisWindTurbinesALMAdvanced::horizontalAxisWindTurbinesALMAdvanced { // Read nothing. } - else if (BladePitchControllerType[i] == "PID") + else if (BladePitchControllerType[i] == "PID"|| BladePitchControllerType[i] == "PIDSC" ) { PitchK.append(readScalar(turbineProperties.subDict("BladePitchControllerParams").lookup("PitchK"))); PitchMin.append(readScalar(turbineProperties.subDict("BladePitchControllerParams").lookup("PitchMin"))); @@ -460,8 +529,6 @@ horizontalAxisWindTurbinesALMAdvanced::horizontalAxisWindTurbinesALMAdvanced AirfoilType.append(turbineProperties.lookup("Airfoils")); - - BladeData.append(turbineProperties.lookup("BladeData")); { DynamicList station; @@ -561,6 +628,8 @@ horizontalAxisWindTurbinesALMAdvanced::horizontalAxisWindTurbinesALMAdvanced } } + + // Reassign airfoil type IDs to blades of each turbine based on the global // distinct list of airfoils. forAll(BladeAirfoilTypeID,i) @@ -638,6 +707,8 @@ horizontalAxisWindTurbinesALMAdvanced::horizontalAxisWindTurbinesALMAdvanced + + // Convert nacelle yaw from compass directions to the standard // convention of 0 degrees on the + x axis with positive degrees // in the counter-clockwise direction. @@ -1006,6 +1077,7 @@ horizontalAxisWindTurbinesALMAdvanced::horizontalAxisWindTurbinesALMAdvanced Pstream::scatter(towerPointsPerturbVector); + // Yaw the nacelle to initial position. deltaNacYaw = nacYaw; @@ -1554,7 +1626,8 @@ void horizontalAxisWindTurbinesALMAdvanced::controlGenTorque() scalar generatorTorqueCommanded = generatorTorque[i]; - + + // Apply a controller to update the rotor speed. if (GenTorqueControllerType[j] == "none") { @@ -1570,6 +1643,10 @@ void horizontalAxisWindTurbinesALMAdvanced::controlGenTorque() { #include "controllers/genTorqueControllers/speedTorqueTable.H" } + else if (GenTorqueControllerType[j] == "TorqueSC") + { + #include "controllers/genTorqueControllers/TorqueSC.H" + } // Limit the change in generator torque. if (GenTorqueRateLimiter[j]) @@ -1610,7 +1687,13 @@ void horizontalAxisWindTurbinesALMAdvanced::controlNacYaw() { #include "controllers/nacYawControllers/timeYawTable.H" } - + // _SSC_, set a case for yawSC + // simple function assumes the first entry per turbine in + // superInfoFromSSC is a yaw reference to seek + else if (NacYawControllerType[j] == "yawSC") + { + #include "controllers/nacYawControllers/yawSC.H" + } //Info << "nacYaw = " << nacYaw << endl; if (((nacYawCommanded - nacYaw[i]) / degRad) <= 180.0) @@ -1632,7 +1715,91 @@ void horizontalAxisWindTurbinesALMAdvanced::controlNacYaw() //Info << "deltaNacYaw = " << deltaNacYaw / degRad << endl; } } + +//_SSC_: define the super controller function +// The super controller code facilitates the exchangess +void horizontalAxisWindTurbinesALMAdvanced::superController() +{ + Info << "Entering SuperController" << endl; + + //As a first step spool up the "To" data from each of the turbines + List superInfoLocalIn(nInputsToSSC*numTurbines,0.0); + List superInfoLocalOut(nOutputsFromSSC*numTurbines,0.0); + + for(int si = 0; si < nInputsToSSC * numTurbines; si++) + { + superInfoLocalIn[si] = superInfoToSSC[si]; + } + + //Gather and scatter across procs + Pstream::gather(superInfoLocalIn,sumOp >()); + Pstream::scatter(superInfoLocalIn); + + // Send back out + for(int si = 0; si < nInputsToSSC *numTurbines; si++) + { + superInfoToSSC[si] = superInfoLocalIn[si]; + } + + // if this is the master, call + if (Pstream::master()) + { + sscMeasurements(); // Gather measurements + callSuperController(); // Call the superController function + + // Send result local + for(int si = 0; si < nOutputsFromSSC *numTurbines; si++) + { + superInfoLocalOut[si] = superInfoFromSSC[si]; + } + } + + //Gather and scatter across procs + Pstream::gather(superInfoLocalOut,sumOp >()); + Pstream::scatter(superInfoLocalOut); + + // Now reassign out/send back out + for(int si = 0; si < nOutputsFromSSC *numTurbines; si++) + { + superInfoFromSSC[si] = superInfoLocalOut[si]; + } + +} + +//_SSC_: define the call to the SSC measurement function +void horizontalAxisWindTurbinesALMAdvanced::sscMeasurements() +{ + // _SSC_, specific measurement definition + if (sscMeasurementsFunction == "default") + { + #include "controllers/measurementFunctions/default.H" + } +} + +//_SSC_: define the call to the simple controller +// The super controller code facilitates the exchangess +void horizontalAxisWindTurbinesALMAdvanced::callSuperController() +{ + // _SSC_, specific controller + if (sscControllerType == "timeTableSSC") + { + #include "controllers/superControllers/timeTableSSC_ALMAdvanced.H" + } + + #if COMPILEZEROMQ == 1 + if (sscControllerType == "zeromqSSC") + { + #include "controllers/superControllers/zeromqSSC_ALMAdvanced.H" + } + #else + if (sscControllerType == "zeromqSSC") + { + printf("\n \n ERROR: Please recompile SOWFA with the correct zeroMQ libraries to use the zeromqSSC controller functionality. \n\n"); + } + #endif +} + void horizontalAxisWindTurbinesALMAdvanced::controlBladePitch() { @@ -1660,7 +1827,11 @@ void horizontalAxisWindTurbinesALMAdvanced::controlBladePitch() { #include "controllers/bladePitchControllers/PID.H" } - + //_SSC_: allow a pidSC controller where the minimum pitch is chosen by super controller + else if (BladePitchControllerType[j] == "PIDSC") + { + #include "controllers/bladePitchControllers/PIDSC.H" + } // Apply pitch rate limiter. if (BladePitchRateLimiter[j]) { @@ -2364,8 +2535,8 @@ void horizontalAxisWindTurbinesALMAdvanced::computeBladePointForce() // Using Cl, Cd, wind velocity, chord, and actuator element width, calculate the // lift and drag per density. - bladePointCl[i][j][k] *= F; - bladePointCd[i][j][k] *= F; + bladePointCl[i][j][k] *= F* forceScalar[i]; + bladePointCd[i][j][k] *= F* forceScalar[i]; bladePointLift[i][j][k] = 0.5 * bladePointCl[i][j][k] * bladePointVmag[i][j][k] * bladePointVmag[i][j][k] * bladePointChord[i][j][k] * bladeDs[i][k]; bladePointDrag[i][j][k] = 0.5 * bladePointCd[i][j][k] * bladePointVmag[i][j][k] * bladePointVmag[i][j][k] * bladePointChord[i][j][k] * bladeDs[i][k]; @@ -2449,7 +2620,7 @@ void horizontalAxisWindTurbinesALMAdvanced::computeNacellePointForce() // We assume the nacelle creates drag only. Divide the drag up into portions // for each nacelle point based on the ratio of nacelle element length to total // nacelle length. - scalar contribution = nacelleDs[i][j] / NacelleLength[i]; + scalar contribution = nacelleDs[i][j] / NacelleLength[m]; if (nacelleForceProjectionType[i] == "advanced2") { @@ -3646,7 +3817,10 @@ void horizontalAxisWindTurbinesALMAdvanced::update() computeRotSpeed(); rotateBlades(); yawNacelle(); - + //_SSC_ + if (sscEnabled){ + superController(); + } // Find search cells. for(int i = 0; i < numTurbines; i++) { @@ -3689,7 +3863,10 @@ void horizontalAxisWindTurbinesALMAdvanced::update() computeRotSpeed(); rotateBlades(); yawNacelle(); - + //_SSC_ + if (sscEnabled){ + superController(); + } // Find search cells. for(int i = 0; i < numTurbines; i++) { diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/horizontalAxisWindTurbinesALMAdvanced.H b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/horizontalAxisWindTurbinesALMAdvanced.H old mode 100755 new mode 100644 index c6447b588..1ad12d866 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/horizontalAxisWindTurbinesALMAdvanced.H +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/horizontalAxisWindTurbinesALMAdvanced.H @@ -101,8 +101,8 @@ private: //- Revolutions per minute to radians per second conversion factor. const scalar rpmRadSec; - - + //- _SSC_ enabled option. + bool sscEnabled; //- Current time step size. scalar dt; @@ -249,7 +249,7 @@ private: DynamicList bladeEpsilon; DynamicList nacelleEpsilon; DynamicList towerEpsilon; - + DynamicList forceScalar; //- The velocity used to calculate tower and nacelle forces must be sampled // somewhere upstream of the actuator points. These variables describe how // far upstream the sampling occurs. @@ -418,6 +418,11 @@ private: // specified pitch). DynamicList BladePitchControllerType; + //_SSC_ Define the controller type and the IP address for the zeroMQ interface + word sscControllerType; + word sscMeasurementsFunction; + std::string zmqAddress; + //- Engage a rotor speed limiter (do not let rotor speed exceed rated // or become negative. DynamicList RotSpeedLimiter; @@ -769,7 +774,16 @@ private: DynamicList generatorPower; + //- _SSC_ size of arrays passed to and from super controller + // + // Note must be below superInfoBufferSize + int nInputsToSSC; + int nOutputsFromSSC; + //_SSC_ : Define a list for passing info between controllers and super controller + //List superInfo(1000,scalar::zero); + DynamicList superInfoFromSSC; // Array of data from the SSC + DynamicList superInfoToSSC; // Aray of data to the SSC //- Output Data File Information. //- List of output files for blade points. @@ -867,7 +881,8 @@ private: OFstream* generatorTorqueFile_; - + //- _SSC_, List contents of superInfo + OFstream* superInfoFile_; @@ -898,7 +913,16 @@ private: //- Calculate the nacelle yaw position. void controlNacYaw(); + + //- _SSC_: Define the super controller + void superController(); + // _SSC_: Call the simple controller implementation + void callSuperController(); + + // _SSC_: Call the SSC measurement function + void sscMeasurements(); + //- Calculate the blade pitch. void controlBladePitch(); From b0423e5da711da3f95487e00fcb3840e7c979cc3 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Wed, 7 Nov 2018 15:56:39 +0100 Subject: [PATCH 59/65] Add example case for ALMAdvanced with timeTable SSC --- .../0.original/U | 58 ++ .../0.original/k | 60 +++ .../0.original/nuSgs | 60 +++ .../0.original/p | 60 +++ .../SC_INPUT.txt | 7 + .../constant/LESProperties | 124 +++++ .../constant/airfoilProperties/Cylinder1 | 23 + .../constant/airfoilProperties/Cylinder2 | 23 + .../constant/airfoilProperties/DU21_A17 | 162 ++++++ .../constant/airfoilProperties/DU25_A17 | 161 ++++++ .../constant/airfoilProperties/DU30_A17 | 163 ++++++ .../constant/airfoilProperties/DU35_A17 | 155 ++++++ .../constant/airfoilProperties/DU40_A17 | 156 ++++++ .../constant/airfoilProperties/NACA64_A17 | 147 +++++ .../constant/polyMesh/blockMeshDict | 101 ++++ .../constant/transportProperties | 39 ++ .../constant/turbineArrayProperties | 107 ++++ .../constant/turbineProperties/NREL5MWRef | 130 +++++ .../constant/turbulenceProperties | 22 + .../runscript.preprocess | 155 ++++++ .../runscript.removeAll | 21 + .../runscript.solve.1 | 40 ++ .../example.ALMAdvanced.ssc.timeTable/setUp | 93 ++++ .../system/changeDictionaryDict.updateBCs | 200 +++++++ .../changeDictionaryDict.updateBCs.cyclic | 238 +++++++++ .../changeDictionaryDict.updateBCs.east | 290 ++++++++++ .../changeDictionaryDict.updateBCs.north | 200 +++++++ .../changeDictionaryDict.updateBCs.northeast | 290 ++++++++++ .../changeDictionaryDict.updateBCs.northwest | 290 ++++++++++ .../changeDictionaryDict.updateBCs.south | 200 +++++++ .../changeDictionaryDict.updateBCs.southeast | 290 ++++++++++ .../changeDictionaryDict.updateBCs.southwest | 290 ++++++++++ .../changeDictionaryDict.updateBCs.west | 200 +++++++ .../system/controlDict.1 | 66 +++ .../system/decomposeParDict | 76 +++ .../system/fvSchemes | 85 +++ .../system/fvSolution | 102 ++++ .../system/sampling/sliceDataInstantaneous | 59 ++ .../system/setFieldsABLDict | 504 ++++++++++++++++++ 39 files changed, 5447 insertions(+) create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/0.original/U create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/0.original/k create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/0.original/nuSgs create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/0.original/p create mode 100644 exampleCases/example.ALMAdvanced.ssc.timeTable/SC_INPUT.txt create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/constant/LESProperties create mode 100644 exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/Cylinder1 create mode 100644 exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/Cylinder2 create mode 100644 exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/DU21_A17 create mode 100644 exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/DU25_A17 create mode 100644 exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/DU30_A17 create mode 100644 exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/DU35_A17 create mode 100644 exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/DU40_A17 create mode 100644 exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/NACA64_A17 create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/constant/polyMesh/blockMeshDict create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/constant/transportProperties create mode 100644 exampleCases/example.ALMAdvanced.ssc.timeTable/constant/turbineArrayProperties create mode 100644 exampleCases/example.ALMAdvanced.ssc.timeTable/constant/turbineProperties/NREL5MWRef create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/constant/turbulenceProperties create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/runscript.preprocess create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/runscript.removeAll create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/runscript.solve.1 create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/setUp create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.cyclic create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.east create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.north create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.northeast create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.northwest create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.south create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.southeast create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.southwest create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.west create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/system/controlDict.1 create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/system/decomposeParDict create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/system/fvSchemes create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/system/fvSolution create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/system/sampling/sliceDataInstantaneous create mode 100755 exampleCases/example.ALMAdvanced.ssc.timeTable/system/setFieldsABLDict diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/0.original/U b/exampleCases/example.ALMAdvanced.ssc.timeTable/0.original/U new file mode 100755 index 000000000..6dbf85ec5 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/0.original/U @@ -0,0 +1,58 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volVectorField; + location "0"; + object U; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 1 -1 0 0 0 0]; + +internalField uniform ($U0Mag 0 0); + +boundaryField +{ + lower + { + type slip; + } + upper + { + type slip; + } + west + { + type fixedValue; + value uniform ($U0Mag 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform ($U0Mag 0 0); + } + south + { + type slip; + } + north + { + type slip; + } +} + + + +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/0.original/k b/exampleCases/example.ALMAdvanced.ssc.timeTable/0.original/k new file mode 100755 index 000000000..c76a7e261 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/0.original/k @@ -0,0 +1,60 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object k ; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -2 0 0 0 0]; + +internalField uniform 0.0; + +boundaryField +{ + lower + { + type zeroGradient; + value uniform 0.0; + } + upper + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedValue; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/0.original/nuSgs b/exampleCases/example.ALMAdvanced.ssc.timeTable/0.original/nuSgs new file mode 100755 index 000000000..18e32f76e --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/0.original/nuSgs @@ -0,0 +1,60 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.1.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object nuSgs; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -1 0 0 0 0]; + +internalField uniform $nuSgs0; + +boundaryField +{ + lower + { + type zeroGradient; + value uniform 0.0; + } + upper + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedValue; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/0.original/p b/exampleCases/example.ALMAdvanced.ssc.timeTable/0.original/p new file mode 100755 index 000000000..d77aa1268 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/0.original/p @@ -0,0 +1,60 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0000"; + object p; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -2 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + lower + { + type zeroGradient; + value uniform 0; + } + upper + { + type zeroGradient; + value uniform 0; + } + east + { + type fixedValue; + value uniform 0; + } + west + { + type zeroGradient; + value uniform 0; + } + south + { + type zeroGradient; + value uniform 0; + } + north + { + type zeroGradient; + value uniform 0; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/SC_INPUT.txt b/exampleCases/example.ALMAdvanced.ssc.timeTable/SC_INPUT.txt new file mode 100644 index 000000000..b54f8800d --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/SC_INPUT.txt @@ -0,0 +1,7 @@ +Time(s) Turbine Yaw(degCompass) Pitch(deg) +0 0 270 0.0 +5 0 260 0.0 +20 0 250 0.0 +30 0 240 0.0 +0 1 270 0.0 +10 1 280 0.0 \ No newline at end of file diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/LESProperties b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/LESProperties new file mode 100755 index 000000000..5fcbb46e9 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/LESProperties @@ -0,0 +1,124 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object LESProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +#include "../setUp" + + +LESModel $LESModel; +//LESModel SmagorinskyABL; +//LESModel Smagorinsky; +//LESModel dynLagrangianCsBound; + +delta smooth; + +SmagorinskyCoeffs +{ + ce $ce; + ck $ck; +} + +SmagorinskyABLCoeffs +{ + ce $ce; + ck $ck; + TName "T"; + kappatName "kappat"; +} + +oneEqEddyABLCoeffs +{ + ce $ce; + ck $ck; + TName "T"; + kappatName "kappat"; +} + +oneEqEddyCoeffs +{ + ce $ce; + ck $ck; +} + +printCoeffs on; + +dynLagrangianCsBoundCoeffs +{ + filter simple; +} + +cubeRootVolCoeffs +{ + deltaCoeff 1; +} + +PrandtlCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + smoothCoeffs + { + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + maxDeltaRatio 1.1; + } + + Cdelta 0.158; +} + +vanDriestCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + smoothCoeffs + { + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + maxDeltaRatio 1.1; + } + + Aplus 26; + Cdelta 0.158; +} + +smoothCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + maxDeltaRatio 1.1; +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/Cylinder1 b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/Cylinder1 new file mode 100644 index 000000000..7106c17d0 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/Cylinder1 @@ -0,0 +1,23 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.5000) + ( 0.00 0.000 0.5000) + ( 180.00 0.000 0.5000) +); diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/Cylinder2 b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/Cylinder2 new file mode 100644 index 000000000..b2e7923f1 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/Cylinder2 @@ -0,0 +1,23 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.3500) + ( 0.00 0.000 0.3500) + ( 180.00 0.000 0.3500) +); diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/DU21_A17 b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/DU21_A17 new file mode 100644 index 000000000..17eb9de96 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/DU21_A17 @@ -0,0 +1,162 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180 0 0.0185) + (-175 0.394 0.0332) + (-170 0.788 0.0945) + (-160 0.67 0.2809) + (-155 0.749 0.3932) + (-150 0.797 0.5112) + (-145 0.818 0.6309) + (-140 0.813 0.7485) + (-135 0.786 0.8612) + (-130 0.739 0.9665) + (-125 0.675 1.0625) + (-120 0.596 1.1476) + (-115 0.505 1.2206) + (-110 0.403 1.2805) + (-105 0.294 1.3265) + (-100 0.179 1.3582) + (-95 0.06 1.3752) + (-90 -0.06 1.3774) + (-85 -0.179 1.3648) + (-80 -0.295 1.3376) + (-75 -0.407 1.2962) + (-70 -0.512 1.2409) + (-65 -0.608 1.1725) + (-60 -0.693 1.0919) + (-55 -0.764 1.0002) + (-50 -0.82 0.899 ) + (-45 -0.857 0.79 ) + (-40 -0.875 0.6754) + (-35 -0.869 0.5579) + (-30 -0.838 0.4405) + (-25 -0.791 0.3256) + (-24 -0.794 0.3013) + (-23 -0.805 0.2762) + (-22 -0.821 0.2506) + (-21 -0.843 0.2246) + (-20 -0.869 0.1983) + (-19 -0.899 0.172 ) + (-18 -0.931 0.1457) + (-17 -0.964 0.1197) + (-16 -0.999 0.094 ) + (-15 -1.033 0.0689) + (-14.5 -1.05 0.0567) + (-12.01 -0.953 0.0271) + (-11 -0.9 0.0303) + (-9.98 -0.827 0.0287) + (-8.12 -0.536 0.0124) + (-7.62 -0.467 0.0109) + (-7.11 -0.393 0.0092) + (-6.6 -0.323 0.0083) + (-6.5 -0.311 0.0089) + (-6 -0.245 0.0082) + (-5.5 -0.178 0.0074) + (-5 -0.113 0.0069) + (-4.5 -0.048 0.0065) + (-4 0.016 0.0063) + (-3.5 0.08 0.0061) + (-3 0.145 0.0058) + (-2.5 0.208 0.0057) + (-2 0.27 0.0057) + (-1.5 0.333 0.0057) + (-1 0.396 0.0057) + (-0.5 0.458 0.0057) + ( 0 0.521 0.0057) + ( 0.5 0.583 0.0057) + ( 1 0.645 0.0058) + ( 1.5 0.706 0.0058) + ( 2 0.768 0.0059) + ( 2.5 0.828 0.0061) + ( 3 0.888 0.0063) + ( 3.5 0.948 0.0066) + ( 4 0.996 0.0071) + ( 4.5 1.046 0.0079) + ( 5 1.095 0.009 ) + ( 5.5 1.145 0.0103) + ( 6 1.192 0.0113) + ( 6.5 1.239 0.0122) + ( 7 1.283 0.0131) + ( 7.5 1.324 0.0139) + ( 8 1.358 0.0147) + ( 8.5 1.385 0.0158) + ( 9 1.403 0.0181) + ( 9.5 1.401 0.0211) + ( 10 1.358 0.0255) + ( 10.5 1.313 0.0301) + ( 11 1.287 0.0347) + ( 11.5 1.274 0.0401) + ( 12 1.272 0.0468) + ( 12.5 1.273 0.0545) + ( 13 1.273 0.0633) + ( 13.5 1.273 0.0722) + ( 14 1.272 0.0806) + ( 14.5 1.273 0.09 ) + ( 15 1.275 0.0987) + ( 15.5 1.281 0.1075) + ( 16 1.284 0.117 ) + ( 16.5 1.296 0.127 ) + ( 17 1.306 0.1368) + ( 17.5 1.308 0.1464) + ( 18 1.308 0.1562) + ( 18.5 1.308 0.1664) + ( 19 1.308 0.177 ) + ( 19.5 1.307 0.1878) + ( 20 1.311 0.1987) + ( 20.5 1.325 0.21 ) + ( 21 1.324 0.2214) + ( 22 1.277 0.2499) + ( 23 1.229 0.2786) + ( 24 1.182 0.3077) + ( 25 1.136 0.3371) + ( 26 1.093 0.3664) + ( 28 1.017 0.4246) + ( 30 0.962 0.4813) + ( 32 0.937 0.5356) + ( 35 0.947 0.6127) + ( 40 0.95 0.7396) + ( 45 0.928 0.8623) + ( 50 0.884 0.9781) + ( 55 0.821 1.0846) + ( 60 0.74 1.1796) + ( 65 0.646 1.2617) + ( 70 0.54 1.3297) + ( 75 0.425 1.3827) + ( 80 0.304 1.4202) + ( 85 0.179 1.4423) + ( 90 0.053 1.4512) + ( 95 -0.073 1.448 ) + ( 100 -0.198 1.4294) + ( 105 -0.319 1.3954) + ( 110 -0.434 1.3464) + ( 115 -0.541 1.2829) + ( 120 -0.637 1.2057) + ( 125 -0.72 1.1157) + ( 130 -0.787 1.0144) + ( 135 -0.836 0.9033) + ( 140 -0.864 0.7845) + ( 145 -0.869 0.6605) + ( 150 -0.847 0.5346) + ( 155 -0.795 0.4103) + ( 160 -0.711 0.2922) + ( 170 -0.788 0.0969) + ( 175 -0.394 0.0334) + ( 180 0 0.0185) +); diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/DU25_A17 b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/DU25_A17 new file mode 100644 index 000000000..56981e639 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/DU25_A17 @@ -0,0 +1,161 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0202) + (-175.00 0.368 0.0324) + (-170.00 0.735 0.0943) + (-160.00 0.695 0.2848) + (-155.00 0.777 0.4001) + (-150.00 0.828 0.5215) + (-145.00 0.850 0.6447) + (-140.00 0.846 0.7660) + (-135.00 0.818 0.8823) + (-130.00 0.771 0.9911) + (-125.00 0.705 1.0905) + (-120.00 0.624 1.1787) + (-115.00 0.530 1.2545) + (-110.00 0.426 1.3168) + (-105.00 0.314 1.3650) + (-100.00 0.195 1.3984) + ( -95.00 0.073 1.4169) + ( -90.00 -0.050 1.4201) + ( -85.00 -0.173 1.4081) + ( -80.00 -0.294 1.3811) + ( -75.00 -0.409 1.3394) + ( -70.00 -0.518 1.2833) + ( -65.00 -0.617 1.2138) + ( -60.00 -0.706 1.1315) + ( -55.00 -0.780 1.0378) + ( -50.00 -0.839 0.9341) + ( -45.00 -0.879 0.8221) + ( -40.00 -0.898 0.7042) + ( -35.00 -0.893 0.5829) + ( -30.00 -0.862 0.4616) + ( -25.00 -0.803 0.3441) + ( -24.00 -0.792 0.3209) + ( -23.00 -0.789 0.2972) + ( -22.00 -0.792 0.2730) + ( -21.00 -0.801 0.2485) + ( -20.00 -0.815 0.2237) + ( -19.00 -0.833 0.1990) + ( -18.00 -0.854 0.1743) + ( -17.00 -0.879 0.1498) + ( -16.00 -0.905 0.1256) + ( -15.00 -0.932 0.1020) + ( -14.00 -0.959 0.0789) + ( -13.00 -0.985 0.0567) + ( -13.00 -0.985 0.0567) + ( -12.01 -0.953 0.0271) + ( -11.00 -0.900 0.0303) + ( -9.98 -0.827 0.0287) + ( -8.98 -0.753 0.0271) + ( -8.47 -0.691 0.0264) + ( -7.45 -0.555 0.0114) + ( -6.42 -0.413 0.0094) + ( -5.40 -0.271 0.0086) + ( -5.00 -0.220 0.0073) + ( -4.50 -0.152 0.0071) + ( -4.00 -0.084 0.0070) + ( -3.50 -0.018 0.0069) + ( -3.00 0.049 0.0068) + ( -2.50 0.115 0.0068) + ( -2.00 0.181 0.0068) + ( -1.50 0.247 0.0067) + ( -1.00 0.312 0.0067) + ( -0.50 0.377 0.0067) + ( 0.00 0.444 0.0065) + ( 0.50 0.508 0.0065) + ( 1.00 0.573 0.0066) + ( 1.50 0.636 0.0067) + ( 2.00 0.701 0.0068) + ( 2.50 0.765 0.0069) + ( 3.00 0.827 0.0070) + ( 3.50 0.890 0.0071) + ( 4.00 0.952 0.0073) + ( 4.50 1.013 0.0076) + ( 5.00 1.062 0.0079) + ( 6.00 1.161 0.0099) + ( 6.50 1.208 0.0117) + ( 7.00 1.254 0.0132) + ( 7.50 1.301 0.0143) + ( 8.00 1.336 0.0153) + ( 8.50 1.369 0.0165) + ( 9.00 1.400 0.0181) + ( 9.50 1.428 0.0211) + ( 10.00 1.442 0.0262) + ( 10.50 1.427 0.0336) + ( 11.00 1.374 0.0420) + ( 11.50 1.316 0.0515) + ( 12.00 1.277 0.0601) + ( 12.50 1.250 0.0693) + ( 13.00 1.246 0.0785) + ( 13.50 1.247 0.0888) + ( 14.00 1.256 0.1000) + ( 14.50 1.260 0.1108) + ( 15.00 1.271 0.1219) + ( 15.50 1.281 0.1325) + ( 16.00 1.289 0.1433) + ( 16.50 1.294 0.1541) + ( 17.00 1.304 0.1649) + ( 17.50 1.309 0.1754) + ( 18.00 1.315 0.1845) + ( 18.50 1.320 0.1953) + ( 19.00 1.330 0.2061) + ( 19.50 1.343 0.2170) + ( 20.00 1.354 0.2280) + ( 20.50 1.359 0.2390) + ( 21.00 1.360 0.2536) + ( 22.00 1.325 0.2814) + ( 23.00 1.288 0.3098) + ( 24.00 1.251 0.3386) + ( 25.00 1.215 0.3678) + ( 26.00 1.181 0.3972) + ( 28.00 1.120 0.4563) + ( 30.00 1.076 0.5149) + ( 32.00 1.056 0.5720) + ( 35.00 1.066 0.6548) + ( 40.00 1.064 0.7901) + ( 45.00 1.035 0.9190) + ( 50.00 0.980 1.0378) + ( 55.00 0.904 1.1434) + ( 60.00 0.810 1.2333) + ( 65.00 0.702 1.3055) + ( 70.00 0.582 1.3587) + ( 75.00 0.456 1.3922) + ( 80.00 0.326 1.4063) + ( 85.00 0.197 1.4042) + ( 90.00 0.072 1.3985) + ( 95.00 -0.050 1.3973) + ( 100.00 -0.170 1.3810) + ( 105.00 -0.287 1.3498) + ( 110.00 -0.399 1.3041) + ( 115.00 -0.502 1.2442) + ( 120.00 -0.596 1.1709) + ( 125.00 -0.677 1.0852) + ( 130.00 -0.743 0.9883) + ( 135.00 -0.792 0.8818) + ( 140.00 -0.821 0.7676) + ( 145.00 -0.826 0.6481) + ( 150.00 -0.806 0.5264) + ( 155.00 -0.758 0.4060) + ( 160.00 -0.679 0.2912) + ( 170.00 -0.735 0.0995) + ( 175.00 -0.368 0.0356) + ( 180.00 0.000 0.0202) +); diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/DU30_A17 b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/DU30_A17 new file mode 100644 index 000000000..35fb11988 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/DU30_A17 @@ -0,0 +1,163 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0267) + (-175.00 0.274 0.0370) + (-170.00 0.547 0.0968) + (-160.00 0.685 0.2876) + (-155.00 0.766 0.4025) + (-150.00 0.816 0.5232) + (-145.00 0.836 0.6454) + (-140.00 0.832 0.7656) + (-135.00 0.804 0.8807) + (-130.00 0.756 0.9882) + (-125.00 0.690 1.0861) + (-120.00 0.609 1.1730) + (-115.00 0.515 1.2474) + (-110.00 0.411 1.3084) + (-105.00 0.300 1.3552) + (-100.00 0.182 1.3875) + ( -95.00 0.061 1.4048) + ( -90.00 -0.061 1.4070) + ( -85.00 -0.183 1.3941) + ( -80.00 -0.302 1.3664) + ( -75.00 -0.416 1.3240) + ( -70.00 -0.523 1.2676) + ( -65.00 -0.622 1.1978) + ( -60.00 -0.708 1.1156) + ( -55.00 -0.781 1.0220) + ( -50.00 -0.838 0.9187) + ( -45.00 -0.877 0.8074) + ( -40.00 -0.895 0.6904) + ( -35.00 -0.889 0.5703) + ( -30.00 -0.858 0.4503) + ( -25.00 -0.832 0.3357) + ( -24.00 -0.852 0.3147) + ( -23.00 -0.882 0.2946) + ( -22.00 -0.919 0.2752) + ( -21.00 -0.963 0.2566) + ( -20.00 -1.013 0.2388) + ( -19.00 -1.067 0.2218) + ( -18.00 -1.125 0.2056) + ( -17.00 -1.185 0.1901) + ( -16.00 -1.245 0.1754) + ( -15.25 -1.290 0.1649) + ( -14.24 -1.229 0.1461) + ( -13.24 -1.148 0.1263) + ( -12.22 -1.052 0.1051) + ( -11.22 -0.965 0.0886) + ( -10.19 -0.867 0.0740) + ( -9.70 -0.822 0.0684) + ( -9.18 -0.769 0.0605) + ( -8.18 -0.756 0.0270) + ( -7.19 -0.690 0.0180) + ( -6.65 -0.616 0.0166) + ( -6.13 -0.542 0.0152) + ( -6.00 -0.525 0.0117) + ( -5.50 -0.451 0.0105) + ( -5.00 -0.382 0.0097) + ( -4.50 -0.314 0.0092) + ( -4.00 -0.251 0.0091) + ( -3.50 -0.189 0.0089) + ( -3.00 -0.120 0.0089) + ( -2.50 -0.051 0.0088) + ( -2.00 0.017 0.0088) + ( -1.50 0.085 0.0088) + ( -1.00 0.152 0.0088) + ( -0.50 0.219 0.0088) + ( 0.00 0.288 0.0087) + ( 0.50 0.354 0.0087) + ( 1.00 0.421 0.0088) + ( 1.50 0.487 0.0089) + ( 2.00 0.554 0.0090) + ( 2.50 0.619 0.0091) + ( 3.00 0.685 0.0092) + ( 3.50 0.749 0.0093) + ( 4.00 0.815 0.0095) + ( 4.50 0.879 0.0096) + ( 5.00 0.944 0.0097) + ( 5.50 1.008 0.0099) + ( 6.00 1.072 0.0101) + ( 6.50 1.135 0.0103) + ( 7.00 1.197 0.0107) + ( 7.50 1.256 0.0112) + ( 8.00 1.305 0.0125) + ( 9.00 1.390 0.0155) + ( 9.50 1.424 0.0171) + ( 10.00 1.458 0.0192) + ( 10.50 1.488 0.0219) + ( 11.00 1.512 0.0255) + ( 11.50 1.533 0.0307) + ( 12.00 1.549 0.0370) + ( 12.50 1.558 0.0452) + ( 13.00 1.470 0.0630) + ( 13.50 1.398 0.0784) + ( 14.00 1.354 0.0931) + ( 14.50 1.336 0.1081) + ( 15.00 1.333 0.1239) + ( 15.50 1.326 0.1415) + ( 16.00 1.329 0.1592) + ( 16.50 1.326 0.1743) + ( 17.00 1.321 0.1903) + ( 17.50 1.331 0.2044) + ( 18.00 1.333 0.2186) + ( 18.50 1.340 0.2324) + ( 19.00 1.362 0.2455) + ( 19.50 1.382 0.2584) + ( 20.00 1.398 0.2689) + ( 20.50 1.426 0.2814) + ( 21.00 1.437 0.2943) + ( 22.00 1.418 0.3246) + ( 23.00 1.397 0.3557) + ( 24.00 1.376 0.3875) + ( 25.00 1.354 0.4198) + ( 26.00 1.332 0.4524) + ( 28.00 1.293 0.5183) + ( 30.00 1.265 0.5843) + ( 32.00 1.253 0.6492) + ( 35.00 1.264 0.7438) + ( 40.00 1.258 0.8970) + ( 45.00 1.217 1.0402) + ( 50.00 1.146 1.1686) + ( 55.00 1.049 1.2779) + ( 60.00 0.932 1.3647) + ( 65.00 0.799 1.4267) + ( 70.00 0.657 1.4621) + ( 75.00 0.509 1.4708) + ( 80.00 0.362 1.4544) + ( 85.00 0.221 1.4196) + ( 90.00 0.092 1.3938) + ( 95.00 -0.030 1.3943) + ( 100.00 -0.150 1.3798) + ( 105.00 -0.267 1.3504) + ( 110.00 -0.379 1.3063) + ( 115.00 -0.483 1.2481) + ( 120.00 -0.578 1.1763) + ( 125.00 -0.660 1.0919) + ( 130.00 -0.727 0.9962) + ( 135.00 -0.777 0.8906) + ( 140.00 -0.807 0.7771) + ( 145.00 -0.815 0.6581) + ( 150.00 -0.797 0.5364) + ( 155.00 -0.750 0.4157) + ( 160.00 -0.673 0.3000) + ( 170.00 -0.547 0.1051) + ( 175.00 -0.274 0.0388) + ( 180.00 0.000 0.0267) +); diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/DU35_A17 b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/DU35_A17 new file mode 100644 index 000000000..041013e24 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/DU35_A17 @@ -0,0 +1,155 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0407) + (-175.00 0.223 0.0507) + (-170.00 0.405 0.1055) + (-160.00 0.658 0.2982) + (-155.00 0.733 0.4121) + (-150.00 0.778 0.5308) + (-145.00 0.795 0.6503) + (-140.00 0.787 0.7672) + (-135.00 0.757 0.8785) + (-130.00 0.708 0.9819) + (-125.00 0.641 1.0756) + (-120.00 0.560 1.1580) + (-115.00 0.467 1.2280) + (-110.00 0.365 1.2847) + (-105.00 0.255 1.3274) + (-100.00 0.139 1.3557) + ( -95.00 0.021 1.3692) + ( -90.00 -0.098 1.3680) + ( -85.00 -0.216 1.3521) + ( -80.00 -0.331 1.3218) + ( -75.00 -0.441 1.2773) + ( -70.00 -0.544 1.2193) + ( -65.00 -0.638 1.1486) + ( -60.00 -0.720 1.0660) + ( -55.00 -0.788 0.9728) + ( -50.00 -0.840 0.8705) + ( -45.00 -0.875 0.7611) + ( -40.00 -0.889 0.6466) + ( -35.00 -0.880 0.5299) + ( -30.00 -0.846 0.4141) + ( -25.00 -0.784 0.3030) + ( -24.00 -0.768 0.2817) + ( -23.00 -0.751 0.2608) + ( -22.00 -0.733 0.2404) + ( -21.00 -0.714 0.2205) + ( -20.00 -0.693 0.2011) + ( -19.00 -0.671 0.1822) + ( -18.00 -0.648 0.1640) + ( -17.00 -0.624 0.1465) + ( -16.00 -0.601 0.1300) + ( -15.00 -0.579 0.1145) + ( -14.00 -0.559 0.1000) + ( -13.00 -0.539 0.0867) + ( -12.00 -0.519 0.0744) + ( -11.00 -0.499 0.0633) + ( -10.00 -0.480 0.0534) + ( -5.54 -0.385 0.0245) + ( -5.04 -0.359 0.0225) + ( -4.54 -0.360 0.0196) + ( -4.04 -0.355 0.0174) + ( -3.54 -0.307 0.0162) + ( -3.04 -0.246 0.0144) + ( -3.00 -0.240 0.0240) + ( -2.50 -0.163 0.0188) + ( -2.00 -0.091 0.0160) + ( -1.50 -0.019 0.0137) + ( -1.00 0.052 0.0118) + ( -0.50 0.121 0.0104) + ( 0.00 0.196 0.0094) + ( 0.50 0.265 0.0096) + ( 1.00 0.335 0.0098) + ( 1.50 0.404 0.0099) + ( 2.00 0.472 0.0100) + ( 2.50 0.540 0.0102) + ( 3.00 0.608 0.0103) + ( 3.50 0.674 0.0104) + ( 4.00 0.742 0.0105) + ( 4.50 0.809 0.0107) + ( 5.00 0.875 0.0108) + ( 5.50 0.941 0.0109) + ( 6.00 1.007 0.0110) + ( 6.50 1.071 0.0113) + ( 7.00 1.134 0.0115) + ( 7.50 1.198 0.0117) + ( 8.00 1.260 0.0120) + ( 8.50 1.318 0.0126) + ( 9.00 1.368 0.0133) + ( 9.50 1.422 0.0143) + ( 10.00 1.475 0.0156) + ( 10.50 1.523 0.0174) + ( 11.00 1.570 0.0194) + ( 11.50 1.609 0.0227) + ( 12.00 1.642 0.0269) + ( 12.50 1.675 0.0319) + ( 13.00 1.700 0.0398) + ( 13.50 1.717 0.0488) + ( 14.00 1.712 0.0614) + ( 14.50 1.703 0.0786) + ( 15.50 1.671 0.1173) + ( 16.00 1.649 0.1377) + ( 16.50 1.621 0.1600) + ( 17.00 1.598 0.1814) + ( 17.50 1.571 0.2042) + ( 18.00 1.549 0.2316) + ( 19.00 1.544 0.2719) + ( 19.50 1.549 0.2906) + ( 20.00 1.565 0.3085) + ( 21.00 1.565 0.3447) + ( 22.00 1.563 0.3820) + ( 23.00 1.558 0.4203) + ( 24.00 1.552 0.4593) + ( 25.00 1.546 0.4988) + ( 26.00 1.539 0.5387) + ( 28.00 1.527 0.6187) + ( 30.00 1.522 0.6978) + ( 32.00 1.529 0.7747) + ( 35.00 1.544 0.8869) + ( 40.00 1.529 1.0671) + ( 45.00 1.471 1.2319) + ( 50.00 1.376 1.3747) + ( 55.00 1.249 1.4899) + ( 60.00 1.097 1.5728) + ( 65.00 0.928 1.6202) + ( 70.00 0.750 1.6302) + ( 75.00 0.570 1.6031) + ( 80.00 0.396 1.5423) + ( 85.00 0.237 1.4598) + ( 90.00 0.101 1.4041) + ( 95.00 -0.022 1.4053) + ( 100.00 -0.143 1.3914) + ( 105.00 -0.261 1.3625) + ( 110.00 -0.374 1.3188) + ( 115.00 -0.480 1.2608) + ( 120.00 -0.575 1.1891) + ( 125.00 -0.659 1.1046) + ( 130.00 -0.727 1.0086) + ( 135.00 -0.778 0.9025) + ( 140.00 -0.809 0.7883) + ( 145.00 -0.818 0.6684) + ( 150.00 -0.800 0.5457) + ( 155.00 -0.754 0.4236) + ( 160.00 -0.677 0.3066) + ( 170.00 -0.417 0.1085) + ( 175.00 -0.229 0.0510) + ( 180.00 0.000 0.0407) +); diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/DU40_A17 b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/DU40_A17 new file mode 100644 index 000000000..6138a98dd --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/DU40_A17 @@ -0,0 +1,156 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0602) + (-175.00 0.218 0.0699) + (-170.00 0.397 0.1107) + (-160.00 0.642 0.3045) + (-155.00 0.715 0.4179) + (-150.00 0.757 0.5355) + (-145.00 0.772 0.6535) + (-140.00 0.762 0.7685) + (-135.00 0.731 0.8777) + (-130.00 0.680 0.9788) + (-125.00 0.613 1.0700) + (-120.00 0.532 1.1499) + (-115.00 0.439 1.2174) + (-110.00 0.337 1.2716) + (-105.00 0.228 1.3118) + (-100.00 0.114 1.3378) + ( -95.00 -0.002 1.3492) + ( -90.00 -0.120 1.3460) + ( -85.00 -0.236 1.3283) + ( -80.00 -0.349 1.2964) + ( -75.00 -0.456 1.2507) + ( -70.00 -0.557 1.1918) + ( -65.00 -0.647 1.1204) + ( -60.00 -0.727 1.0376) + ( -55.00 -0.792 0.9446) + ( -50.00 -0.842 0.8429) + ( -45.00 -0.874 0.7345) + ( -40.00 -0.886 0.6215) + ( -35.00 -0.875 0.5067) + ( -30.00 -0.839 0.3932) + ( -25.00 -0.777 0.2849) + ( -24.00 -0.761 0.2642) + ( -23.00 -0.744 0.2440) + ( -22.00 -0.725 0.2242) + ( -21.00 -0.706 0.2049) + ( -20.00 -0.685 0.1861) + ( -19.00 -0.662 0.1687) + ( -18.00 -0.635 0.1533) + ( -17.00 -0.605 0.1398) + ( -16.00 -0.571 0.1281) + ( -15.00 -0.534 0.1183) + ( -14.00 -0.494 0.1101) + ( -13.00 -0.452 0.1036) + ( -12.00 -0.407 0.0986) + ( -11.00 -0.360 0.0951) + ( -10.00 -0.311 0.0931) + ( -8.00 -0.208 0.0930) + ( -6.00 -0.111 0.0689) + ( -5.50 -0.090 0.0614) + ( -5.00 -0.072 0.0547) + ( -4.50 -0.065 0.0480) + ( -4.00 -0.054 0.0411) + ( -3.50 -0.017 0.0349) + ( -3.00 0.003 0.0299) + ( -2.50 0.014 0.0255) + ( -2.00 0.009 0.0198) + ( -1.50 0.004 0.0164) + ( -1.00 0.036 0.0147) + ( -0.50 0.073 0.0137) + ( 0.00 0.137 0.0113) + ( 0.50 0.213 0.0114) + ( 1.00 0.292 0.0118) + ( 1.50 0.369 0.0122) + ( 2.00 0.444 0.0124) + ( 2.50 0.514 0.0124) + ( 3.00 0.580 0.0123) + ( 3.50 0.645 0.0120) + ( 4.00 0.710 0.0119) + ( 4.50 0.776 0.0122) + ( 5.00 0.841 0.0125) + ( 5.50 0.904 0.0129) + ( 6.00 0.967 0.0135) + ( 6.50 1.027 0.0144) + ( 7.00 1.084 0.0158) + ( 7.50 1.140 0.0174) + ( 8.00 1.193 0.0198) + ( 8.50 1.242 0.0231) + ( 9.00 1.287 0.0275) + ( 9.50 1.333 0.0323) + ( 10.00 1.368 0.0393) + ( 10.50 1.400 0.0475) + ( 11.00 1.425 0.0580) + ( 11.50 1.449 0.0691) + ( 12.00 1.473 0.0816) + ( 12.50 1.494 0.0973) + ( 13.00 1.513 0.1129) + ( 13.50 1.538 0.1288) + ( 14.50 1.587 0.1650) + ( 15.00 1.614 0.1845) + ( 15.50 1.631 0.2052) + ( 16.00 1.649 0.2250) + ( 16.50 1.666 0.2467) + ( 17.00 1.681 0.2684) + ( 17.50 1.699 0.2900) + ( 18.00 1.719 0.3121) + ( 19.00 1.751 0.3554) + ( 19.50 1.767 0.3783) + ( 20.50 1.798 0.4212) + ( 21.00 1.810 0.4415) + ( 22.00 1.830 0.4830) + ( 23.00 1.847 0.5257) + ( 24.00 1.861 0.5694) + ( 25.00 1.872 0.6141) + ( 26.00 1.881 0.6593) + ( 28.00 1.894 0.7513) + ( 30.00 1.904 0.8441) + ( 32.00 1.915 0.9364) + ( 35.00 1.929 1.0722) + ( 40.00 1.903 1.2873) + ( 45.00 1.820 1.4796) + ( 50.00 1.690 1.6401) + ( 55.00 1.522 1.7609) + ( 60.00 1.323 1.8360) + ( 65.00 1.106 1.8614) + ( 70.00 0.880 1.8347) + ( 75.00 0.658 1.7567) + ( 80.00 0.449 1.6334) + ( 85.00 0.267 1.4847) + ( 90.00 0.124 1.3879) + ( 95.00 0.002 1.3912) + ( 100.00 -0.118 1.3795) + ( 105.00 -0.235 1.3528) + ( 110.00 -0.348 1.3114) + ( 115.00 -0.453 1.2557) + ( 120.00 -0.549 1.1864) + ( 125.00 -0.633 1.1041) + ( 130.00 -0.702 1.0102) + ( 135.00 -0.754 0.9060) + ( 140.00 -0.787 0.7935) + ( 145.00 -0.797 0.6750) + ( 150.00 -0.782 0.5532) + ( 155.00 -0.739 0.4318) + ( 160.00 -0.664 0.3147) + ( 170.00 -0.410 0.1144) + ( 175.00 -0.226 0.0702) + ( 180.00 0.000 0.0602) +); diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/NACA64_A17 b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/NACA64_A17 new file mode 100644 index 000000000..11fa618d0 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/airfoilProperties/NACA64_A17 @@ -0,0 +1,147 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0198) + (-175.00 0.374 0.0341) + (-170.00 0.749 0.0955) + (-160.00 0.659 0.2807) + (-155.00 0.736 0.3919) + (-150.00 0.783 0.5086) + (-145.00 0.803 0.6267) + (-140.00 0.798 0.7427) + (-135.00 0.771 0.8537) + (-130.00 0.724 0.9574) + (-125.00 0.660 1.0519) + (-120.00 0.581 1.1355) + (-115.00 0.491 1.2070) + (-110.00 0.390 1.2656) + (-105.00 0.282 1.3104) + (-100.00 0.169 1.3410) + ( -95.00 0.052 1.3572) + ( -90.00 -0.067 1.3587) + ( -85.00 -0.184 1.3456) + ( -80.00 -0.299 1.3181) + ( -75.00 -0.409 1.2765) + ( -70.00 -0.512 1.2212) + ( -65.00 -0.606 1.1532) + ( -60.00 -0.689 1.0731) + ( -55.00 -0.759 0.9822) + ( -50.00 -0.814 0.8820) + ( -45.00 -0.850 0.7742) + ( -40.00 -0.866 0.6610) + ( -35.00 -0.860 0.5451) + ( -30.00 -0.829 0.4295) + ( -25.00 -0.853 0.3071) + ( -24.00 -0.870 0.2814) + ( -23.00 -0.890 0.2556) + ( -22.00 -0.911 0.2297) + ( -21.00 -0.934 0.2040) + ( -20.00 -0.958 0.1785) + ( -19.00 -0.982 0.1534) + ( -18.00 -1.005 0.1288) + ( -17.00 -1.082 0.1037) + ( -16.00 -1.113 0.0786) + ( -15.00 -1.105 0.0535) + ( -14.00 -1.078 0.0283) + ( -13.50 -1.053 0.0158) + ( -13.00 -1.015 0.0151) + ( -12.00 -0.904 0.0134) + ( -11.00 -0.807 0.0121) + ( -10.00 -0.711 0.0111) + ( -9.00 -0.595 0.0099) + ( -8.00 -0.478 0.0091) + ( -7.00 -0.375 0.0086) + ( -6.00 -0.264 0.0082) + ( -5.00 -0.151 0.0079) + ( -4.00 -0.017 0.0072) + ( -3.00 0.088 0.0064) + ( -2.00 0.213 0.0054) + ( -1.00 0.328 0.0052) + ( 0.00 0.442 0.0052) + ( 1.00 0.556 0.0052) + ( 2.00 0.670 0.0053) + ( 3.00 0.784 0.0053) + ( 4.00 0.898 0.0054) + ( 5.00 1.011 0.0058) + ( 6.00 1.103 0.0091) + ( 7.00 1.181 0.0113) + ( 8.00 1.257 0.0124) + ( 8.50 1.293 0.0130) + ( 9.00 1.326 0.0136) + ( 9.50 1.356 0.0143) + ( 10.00 1.382 0.0150) + ( 10.50 1.400 0.0267) + ( 11.00 1.415 0.0383) + ( 11.50 1.425 0.0498) + ( 12.00 1.434 0.0613) + ( 12.50 1.443 0.0727) + ( 13.00 1.451 0.0841) + ( 13.50 1.453 0.0954) + ( 14.00 1.448 0.1065) + ( 14.50 1.444 0.1176) + ( 15.00 1.445 0.1287) + ( 15.50 1.447 0.1398) + ( 16.00 1.448 0.1509) + ( 16.50 1.444 0.1619) + ( 17.00 1.438 0.1728) + ( 17.50 1.439 0.1837) + ( 18.00 1.448 0.1947) + ( 18.50 1.452 0.2057) + ( 19.00 1.448 0.2165) + ( 19.50 1.438 0.2272) + ( 20.00 1.428 0.2379) + ( 21.00 1.401 0.2590) + ( 22.00 1.359 0.2799) + ( 23.00 1.300 0.3004) + ( 24.00 1.220 0.3204) + ( 25.00 1.168 0.3377) + ( 26.00 1.116 0.3554) + ( 28.00 1.015 0.3916) + ( 30.00 0.926 0.4294) + ( 32.00 0.855 0.4690) + ( 35.00 0.800 0.5324) + ( 40.00 0.804 0.6452) + ( 45.00 0.793 0.7573) + ( 50.00 0.763 0.8664) + ( 55.00 0.717 0.9708) + ( 60.00 0.656 1.0693) + ( 65.00 0.582 1.1606) + ( 70.00 0.495 1.2438) + ( 75.00 0.398 1.3178) + ( 80.00 0.291 1.3809) + ( 85.00 0.176 1.4304) + ( 90.00 0.053 1.4565) + ( 95.00 -0.074 1.4533) + ( 100.00 -0.199 1.4345) + ( 105.00 -0.321 1.4004) + ( 110.00 -0.436 1.3512) + ( 115.00 -0.543 1.2874) + ( 120.00 -0.640 1.2099) + ( 125.00 -0.723 1.1196) + ( 130.00 -0.790 1.0179) + ( 135.00 -0.840 0.9064) + ( 140.00 -0.868 0.7871) + ( 145.00 -0.872 0.6627) + ( 150.00 -0.850 0.5363) + ( 155.00 -0.798 0.4116) + ( 160.00 -0.714 0.2931) + ( 170.00 -0.749 0.0971) + ( 175.00 -0.374 0.0334) + ( 180.00 0.000 0.0198) +); diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/polyMesh/blockMeshDict b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/polyMesh/blockMeshDict new file mode 100755 index 000000000..463f233e0 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/polyMesh/blockMeshDict @@ -0,0 +1,101 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object blockMeshDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../../setUp" + + + + +convertToMeters 1.0; + +vertices +( + ( $xMin $yMin $zMin) + ( $xMax $yMin $zMin) + ( $xMax $yMax $zMin) + ( $xMin $yMax $zMin) + ( $xMin $yMin $zMax) + ( $xMax $yMin $zMax) + ( $xMax $yMax $zMax) + ( $xMin $yMax $zMax) +); + +blocks +( + hex (0 1 2 3 4 5 6 7) ($nx $ny $nz) simpleGrading (1 1 1) +); + +edges +( +); + +boundary +( + lower + { + type wall; + faces + ( + (0 3 2 1) + ); + } + upper + { + type wall; + faces + ( + (4 5 6 7) + ); + } + west + { + type patch; + faces + ( + (0 4 7 3) + ); + } + east + { + type patch; + faces + ( + (1 2 6 5) + ); + } + north + { + type wall; + faces + ( + (3 7 6 2) + ); + } + south + { + type wall; + faces + ( + (0 1 5 4) + ); + } +); + +mergePatchPairs +( +); + +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/transportProperties b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/transportProperties new file mode 100755 index 000000000..3ee719c86 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/transportProperties @@ -0,0 +1,39 @@ +/*---------------------------------------------------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.openfoam.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + + root ""; + case ""; + instance ""; + local ""; + + class dictionary; + object transportProperties; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +transportModel Newtonian; + +// Molecular viscosity +nu nu [0 2 -1 0 0 0 0] $nu; + +// Reference temperature +TRef TRef [0 0 0 1 0 0 0] $TRef; + +// Prandtl numbers +Pr Pr [0 0 0 0 0 0 0] $Pr; +Prt Prt [0 0 0 0 0 0 0] $Prt; +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/turbineArrayProperties b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/turbineArrayProperties new file mode 100644 index 000000000..ea804932c --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/turbineArrayProperties @@ -0,0 +1,107 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object turbineArrayProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +globalProperties +{ + outputControl "timeStep"; + outputInterval 1; +} + +// _SSC_ +sscProperties +{ + sscEnabled true; //Enable/disable ssc, if not present defaults to False + nInputsToSSC 3; // Number of inputs EACH turbine passes to the super controller + nOutputsFromSSC 2; // Number of outputs the super controller sends to EACH turbine + sscControllerType "timeTableSSC"; // The type of SSC + sscMeasurementsFunction "default"; +} + +turbine0 +{ + turbineType "NREL5MWRef"; + includeNacelle true; + includeTower true; + baseLocation (1000.0 1500.0 0.0); + numBladePoints 40; + numNacellePoints 10; + numTowerPoints 40; + forceScalar 1.0; + bladePointDistType "uniform"; + nacellePointDistType "uniform"; + towerPointDistType "uniform"; + bladeSearchCellMethod "disk"; + bladeActuatorPointInterpType "integral"; + nacelleActuatorPointInterpType "linear"; + towerActuatorPointInterpType "linear"; + actuatorUpdateType "oldPosition"; + bladeForceProjectionType "uniformGaussian"; + nacelleForceProjectionType "diskGaussian"; + towerForceProjectionType "advanced"; + bladeForceProjectionDirection "localVelocityAligned"; + bladeEpsilon (20.0 0.0 0.0); + nacelleEpsilon (20.0 20.0 0.0); + towerEpsilon (20.0 20.0 0.0); + nacelleSampleDistance 1.0; + towerSampleDistance 3.5; + tipRootLossCorrType "Glauert"; + rotationDir "cw"; + Azimuth 0.0; + RotSpeed 9.1552; + TorqueGen 0.0; + Pitch 0.0; + NacYaw 270.0; + fluidDensity 1.23; + velocityDragCorrType "none"; +} + +turbine1 +{ + turbineType "NREL5MWRef"; + includeNacelle true; + includeTower true; + baseLocation (2000.0 1500.0 0.0); + numBladePoints 40; + numNacellePoints 10; + numTowerPoints 40; + forceScalar 1.0; + bladePointDistType "uniform"; + nacellePointDistType "uniform"; + towerPointDistType "uniform"; + bladeSearchCellMethod "disk"; + bladeActuatorPointInterpType "integral"; + nacelleActuatorPointInterpType "linear"; + towerActuatorPointInterpType "linear"; + actuatorUpdateType "oldPosition"; + bladeForceProjectionType "uniformGaussian"; + nacelleForceProjectionType "diskGaussian"; + towerForceProjectionType "advanced"; + bladeForceProjectionDirection "localVelocityAligned"; + bladeEpsilon (20.0 0.0 0.0); + nacelleEpsilon (20.0 20.0 0.0); + towerEpsilon (20.0 20.0 0.0); + nacelleSampleDistance 1.0; + towerSampleDistance 3.5; + tipRootLossCorrType "Glauert"; + rotationDir "cw"; + Azimuth 0.0; + RotSpeed 9.1552; + TorqueGen 0.0; + Pitch 0.0; + NacYaw 270.0; + fluidDensity 1.23; + velocityDragCorrType "none"; +} \ No newline at end of file diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/turbineProperties/NREL5MWRef b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/turbineProperties/NREL5MWRef new file mode 100644 index 000000000..60ef6953c --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/turbineProperties/NREL5MWRef @@ -0,0 +1,130 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object turbineProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +NumBl 3; +TipRad 63.0; +HubRad 1.5; +UndSling 0.0; +OverHang -5.01910; +NacelleLength 8; +NacelleFrontalArea 2; +NacelleCd 0.5; +TowerHt 87.6; +Twr2Shft 1.96256; +ShftTilt -5.0; +PreCone (-2.5 -2.5 -2.5); +GBRatio 97.0; +GBEfficiency 1.0; +GenEfficiency 0.944; +RatedRotSpeed 12.1; +GenIner 534.116; +HubIner 115.926E3; +BladeIner 11.776047E6; +GenTorqueControllerType "fiveRegion"; +//GenTorqueControllerType "speedTorqueTable"; +//GenTorqueControllerType "none"; +BladePitchControllerType "PID"; +//BladePitchControllerType "none"; +NacYawControllerType "yawSC"; +RotSpeedLimiter false; +GenTorqueRateLimiter true; +NacYawRateLimiter true; +BladePitchRateLimiter true; +SpeedFilterCornerFrequency 2.0; + + +GenTorqueControllerParams +{ + RateLimitGenTorque 15.0E3; + SpeedTorqueTable + ( + // gen speed (RPM) gen torque (N-m) + ( 670.00 0.0 ) + ( 871.00 20000.0 ) + ( 1161.96 32000.0 ) + ( 1173.70 43093.6 ) + ); + CutInGenSpeed 670.0; + Region2StartGenSpeed 871.0; + Region2EndGenSpeed 1161.963; + CutInGenTorque 0.0; + RatedGenTorque 43.09355E3; + KGen 2.55764E-2; +} + +BladePitchControllerParams +{ + RateLimitBladePitch 8.000; + PitchMin 0.000; + PitchMax 90.000; + PitchK 6.302336; + PitchControlKP 1.82620057; + PitchControlKI 0.78265750; + PitchControlKD 0.000; +} + +NacYawControllerParams +{ + RateLimitNacYaw 2.0; +} + + + + +Airfoils +( + "Cylinder1" + "Cylinder2" + "DU40_A17" + "DU35_A17" + "DU30_A17" + "DU25_A17" + "DU21_A17" + "NACA64_A17" +); + + +BladeData +( +// radius(m) c(m) twist(deg) thickness(% of c) userDef airfoil + (2.8667 3.542 13.308 1.0 0 0) + (5.6 3.854 13.308 1.0 0 0) + (8.3333 4.167 13.308 1.0 0 1) + (11.75 4.557 13.308 0.4 0 2) + (15.85 4.652 11.48 0.35 0 3) + (19.95 4.458 10.162 0.35 0 3) + (24.05 4.249 9.011 0.30 0 4) + (28.15 4.007 7.795 0.25 0 5) + (32.25 3.748 6.544 0.25 0 5) + (36.35 3.502 5.361 0.21 0 6) + (40.45 3.256 4.188 0.21 0 6) + (44.55 3.01 3.125 0.18 0 7) + (48.65 2.764 2.319 0.18 0 7) + (52.75 2.518 1.526 0.18 0 7) + (56.1667 2.313 0.863 0.18 0 7) + (58.9 2.086 0.37 0.18 0 7) + (61.6333 1.419 0.106 0.18 0 7) +); + + +TowerData +( +// height(m) c(m) twist(deg) thickness(% of c) userDef airfoil + (0.0 6.00 0.0 1.0 0 0) + (50.0 6.00 0.0 1.0 0 0) + (87.6 3.87 0.0 1.0 0 0) +); diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/turbulenceProperties b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/turbulenceProperties new file mode 100755 index 000000000..f8a545e0c --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/constant/turbulenceProperties @@ -0,0 +1,22 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object turbulenceProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +// simulationType RASModel; + simulationType LESModel; +// simulationType laminar; + +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/runscript.preprocess b/exampleCases/example.ALMAdvanced.ssc.timeTable/runscript.preprocess new file mode 100755 index 000000000..4ca8ac963 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/runscript.preprocess @@ -0,0 +1,155 @@ +#!/bin/bash +#PBS -N ALMAdv_pisoFoam_preprocess +#PBS -l nodes=1:ppn=1 + + +# User Input. +OpenFOAMversion=2.4.x_SSC # OpenFOAM version +startTime=0 # Start time +updateBCType=0 # Boolean for whether or not the boundary condition types will be updated over + # what is in the initial conditions files. Leave it 0 for precursors. +inflowDir='west' # For inflow/outflow cases, specify the inflow direction. Choices are 'west', + # 'east', 'south', 'west', 'southWest', 'northWest', 'southEast', and + # 'northEast'. +refineMeshLocal=0 # Number of levels of local refinement (requires system/topoSetDict and + # system/refineHexMeshDict). +refineMeshGlobal=0 # Number of levels of global refinement. +parallel=0 # parallel untested! # Boolean for whether or not the preprocessing is run in parallel. +cores=1 # Enter the number of cores you will preprocess on. + + + + + + +# Define some functions for mesh refinement. +# Local refinement performed on one core. +refineMeshLocal() +{ + i=$1 + while [ $i -ge 1 ] + do + echo " -Performing level $i local refinement with topoSet/refineHexMesh" + echo " *selecting cells to refine..." + topoSet -dict system/topoSetDict.local.$i > log.topoSet.local.$i 2>&1 + + echo " *refining cells..." + refineHexMesh local -overwrite > log.refineHexMesh.local.$i 2>&1 + + let i=i-1 + done +} + +# Global refinement performed in parallel. +refineMeshGlobal() +{ + i=1 + while [ $i -le $1 ] + do + echo " -Performing level $i global refinement with refineMesh" + echo " *refining cells..." + mpirun -np $cores refineMesh -parallel -overwrite > log.refineMesh.global.$i 2>&1 + + let i=i+1 + done +} + + +# If running in parallel, cd to job launch directory +if [ $parallel -eq 1 ] + then + cd $PBS_O_WORKDIR +fi + + +# Source the bash profile and then call the appropriate OpenFOAM version function +# so that all the modules and environment variables get set. +echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." +source $HOME/.bash_profile +OpenFOAM-$OpenFOAMversion + + +# Copy the controlDict.1 (assuming this is the one the actual solver will start +# out with) to controlDict. OpenFOAM reads "controlDict", not the numbered ones. +echo "Getting the control dictionary ready..." +cp system/controlDict.1 system/controlDict + + +# Copy the "clean" .original initial fields to a working copy. OpenFOAM does not +# read the ".original" initial fields--that's why they remain clean. +echo "Getting the initial condition directory ready..." +rm -rf $startTime +cp -rf $startTime.original $startTime + + +# Build the mesh. +echo "Using blockMesh to create the base mesh..." +cp constant/polyMesh/blockMeshDict ./ +rm -rf constant/polyMesh/* +mv ./blockMeshDict constant/polyMesh +blockMesh > log.blockMesh 2>&1 + + +# The initial fields come from the precursor which is periodic on all sides. The turbine +# case has inflow and outflow. Call the changeDictionary utility to make the south and +# north sides inflow and outflow. +if [ $updateBCType -eq 1 ] + then + echo "Using changeDictionary to update boundary conditions..." + changeDictionary -dict system/changeDictionaryDict.updateBCs.$inflowDir > log.changeDictionary.updateBCs.$inflowDir.1 2>&1 +fi + + +# Do serial local refinement +echo "Using refineHexMesh to perform " $refineMeshLocal " of local refinement..." +refineMeshLocal $refineMeshLocal + + +# If running in paralle from this point forward, then do the following: +if [ $cores -gt 1 ] + then + # Decompose the mesh and solution files (serial) + echo "Using decomposePar to decompose the problem for parallel processing..." + decomposePar -cellDist -force > log.decomposePar 2>&1 + + # Check the mesh + echo "Running checkMesh to report mesh diagnostics..." + mpirun -np $cores checkMesh -parallel > log.checkMesh.1 2>&1 + + # Perform global refinement to desired resolution. + echo "Using refineMesh to perform " $refineMeshGlobal " of global refinement..." + refineMeshGlobal $refineMeshGlobal + + # The mesh got globally refined, but the solution file did not, so + # the boundary fields may not have the correct number of entries. + # Use the changeDictionary utility to overwrite the spatially varying + # boundary data to a uniform single value. + if [ $updateBCType -eq 1 ] + then + echo "Using changeDictionary to ensure that the boundaries have the correct number of faces..." + mpirun -np $cores changeDictionary -dict system/changeDictionaryDict.updateBCs.$inflowDir -parallel > log.changeDictionary.updateBCs.$inflowDir.1 2>&1 + fi + + # Renumber the mesh for better matrix solver performance. + echo "Using renumberMesh to renumber the mesh for better matrix conditioning..." + mpirun -np $cores renumberMesh -parallel -overwrite > log.renumberMesh 2>&1 + + # Do one last check on the mesh. + echo "Running checkMesh to report mesh diagnostics..." + mpirun -np $cores checkMesh -parallel > log.checkMesh.3 2>&1 + + +# Otherwise, run in serial as follows: +else + # Renumber the mesh. + echo "Using renumberMesh to renumber the mesh for better matrix conditioning..." + renumberMesh -overwrite > log.renumberMesh 2>&1 + + # Decompose the mesh and solution files (serial) + echo "Using decomposePar to decompose the problem for parallel processing..." + decomposePar -cellDist -force > log.decomposePar 2>&1 + + # Check the mesh. + echo "Running checkMesh to report mesh diagnostics..." + checkMesh > log.checkMesh.1 2>&1 +fi diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/runscript.removeAll b/exampleCases/example.ALMAdvanced.ssc.timeTable/runscript.removeAll new file mode 100755 index 000000000..463332f98 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/runscript.removeAll @@ -0,0 +1,21 @@ +#!/bin/bash + +# Remove initial conditions and temporary files +rm -rf 0 +rm -rf system/controlDict + +# Remove logs +rm -rf log.* +rm -rf runscript.solve.1.o* runscript.solve.1.e* + +# Remove processor files and folders +rm -rf processor* + +# Remove simulation output +rm -rf postProcessing +rm -rf turbineOutput + +# Remove polyMesh data +cp constant/polyMesh/blockMeshDict ./ +rm -rf constant/polyMesh/* +mv ./blockMeshDict constant/polyMesh \ No newline at end of file diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/runscript.solve.1 b/exampleCases/example.ALMAdvanced.ssc.timeTable/runscript.solve.1 new file mode 100755 index 000000000..c7e3c00a0 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/runscript.solve.1 @@ -0,0 +1,40 @@ +#!/bin/bash +#PBS -l walltime=48:00:00 +#PBS -l nodes=1:ppn=8 +#PBS -N "ALMAdv.ssc.timeTable" + + + +cd $PBS_O_WORKDIR + + + + +# User Input. +OpenFOAMversion=2.4.x_SSC # OpenFOAM version +startTime=0 # Start time +cores=8 # Enter the number of cores you will preprocess on. +runNumber=1 # Enter the run number (useful for keeping track of restarts). +solver=pisoFoamTurbine.ALMAdvanced # Enter the name of the flow solver. + + + +echo "Starting OpenFOAM job at: " $(date) +echo "using " $cores " cores" + + +# Source the bash profile and then call the appropriate OpenFOAM version function +# so that all the modules and environment variables get set. +echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." +source $HOME/.bash_profile +OpenFOAM-$OpenFOAMversion + + +# Get the control dictionary for this particular run. +cp system/controlDict.$runNumber system/controlDict + + +# Run the solver. +mpirun -np $cores $solver -parallel > log.$runNumber.$solver 2>&1 + +echo "Ending OpenFOAM job at: " $(date) \ No newline at end of file diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/setUp b/exampleCases/example.ALMAdvanced.ssc.timeTable/setUp new file mode 100755 index 000000000..4ad533e07 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/setUp @@ -0,0 +1,93 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.4.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +// Domain size and number of cells. +xMin 0.0; // Minimum x-extent of domain (m). +yMin 0.0; // Minimum y-extent of domain (m). +zMin 0.0; // Minimum z-extent of domain (m). +xMax 3000.0; // Maximum x-extent of domain (m). +yMax 3000.0; // Maximum y-extent of domain (m). +zMax 1000.0; // Maximum z-extent of domain (m). +nx 100; // Number of cells in x-direction. +ny 100; // Number of cells in y-direction. +nz 33; // Number of cells in z-direction. + + + + +// Number of cores and domain decomposition information. +nCores 8; // Number of cores on which to run this case. +decompType simple; // Decomposition algorithm. "simple" and "scotch" are good choices. +decompOrder (4 2 1); // Order of the decomposition number of partitions in (x y z)-directions. + + + + +// Planar averaging and source term statistics options. +statisticsOn true; // Gather planar-averaged flow statistics. +statisticsFrequency 5; // Frequency in time steps of statistics gathering. + + + + +// Initial values for the variables. +// Note that U and T get overwritten if setFieldsABL is called. +U0Mag 8.00; // Initial condition for wind speed (m/s). +dir 270.0; // Initial condition for wind direction (deg). +windHeight 90.0; // Height at which to drive mean wind to U0Mag/dir (m). +p_rgh0 0.0; // Initial pressure (minus the hydrostatic variation and normalized by density) (m^2/s^2). +nuSgs0 0.0; // Initial SGS viscosity (m^2/s). +k0 0.1; // Initial SGS turbulent kinetic energy (m^2/s^2). +kappat0 0.0; // Initial SGS temperature diffusivity (m^2/s). +TGradUpper 0.003; // Potential temperature gradient above the strong inversion (K/m). +zInversion 750.0; // Height of the middle of the initial strong capping inversion (m). +inversionWidth 100.0; // Vertical width of the intial strong capping inversion (m). +TBottom 300.0; // Initial potential temperature at bottom of strong capping inversion (K). +TTop 305.0; // Initial potential temperature at top of strong capping inversion (K). + + + + +// General conditions and parameters. +Pr 0.7; // Molecular Prandtl number. +Prt 0.33333333; // Turbulent Prandtl number. +nu 1.0E-5; // Molecular viscosity (m^2/s). +TRef 300.0; // Reference potential temperature (K). +latitude 41.3; // Latitude on the Earth of the site (deg). +EarthPeriod 24.0; // Earth's rotation period (hr). + + + + +// SGS model inputs. +LESModel oneEqEddy; // SGS model selection. +ce 0.93; // SGS model constant. +ck 0.0673; // SGS model constant. + + + + +// Surface conditions. +qwall (0.0 0.0 0.0); // Temperature flux at wall (modify the z-value). A negative value is flux into domain (K-m/s). +Rwall (0.0 0.0 0.0 0.0 0.0 0.0); // Initial wall shear stress (m^2/s^2). +kappa 0.4; // von Karman constant. +z0 0.01; // Surface roughness (m). +betaM 16.0; // Monin-Obukhov wall shear stress model constant. +gammaM 5.0; // Monin-Obukhov wall shear stress model constant. +betaH 9.0; // Monin-Obukhov wall temperature flux model constant. +gammaH 7.8; // Monin-Obukhov wall temperature flux model constant. +alphaH 1.0; // Monin-Obukhov wall temperature flux model constant. +heatingRate 0.0; // Surface temperature change rate (when not directly setting temperature flux) (K/s). + + + + +#inputMode merge + +// ************************************************************************* // + diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs new file mode 100755 index 000000000..b4ab16ba4 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs @@ -0,0 +1,200 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.cyclic b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.cyclic new file mode 100755 index 000000000..9d7df3a40 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.cyclic @@ -0,0 +1,238 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + U + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + k + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + kappat + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + nuSgs + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + p_rgh + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.east b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.east new file mode 100755 index 000000000..75ea86de5 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.east @@ -0,0 +1,290 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.north b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.north new file mode 100755 index 000000000..ab34b5c5a --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.north @@ -0,0 +1,200 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + south + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + south + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + south + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + north + { + type fixedFluxPressure; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.northeast b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.northeast new file mode 100755 index 000000000..9ef569c78 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.northeast @@ -0,0 +1,290 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + south + { + type zeroGradient; + value uniform 300; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + south + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + south + { + type zeroGradient; + value uniform 0.1; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + north + { + type fixedFluxPressure; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.northwest b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.northwest new file mode 100755 index 000000000..f62b02acb --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.northwest @@ -0,0 +1,290 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + south + { + type zeroGradient; + value uniform 300; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + east + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + south + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + south + { + type zeroGradient; + value uniform 0.1; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + east + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + north + { + type fixedFluxPressure; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedFluxPressure; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.south b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.south new file mode 100755 index 000000000..b4ab16ba4 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.south @@ -0,0 +1,200 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.southeast b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.southeast new file mode 100755 index 000000000..88a7ebf76 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.southeast @@ -0,0 +1,290 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.southwest b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.southwest new file mode 100755 index 000000000..6e9078e8e --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.southwest @@ -0,0 +1,290 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + east + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + east + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedFluxPressure; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.west b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.west new file mode 100755 index 000000000..7dec20912 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/changeDictionaryDict.updateBCs.west @@ -0,0 +1,200 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + east + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + east + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + west + { + type fixedFluxPressure; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/system/controlDict.1 b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/controlDict.1 new file mode 100755 index 000000000..92a8952aa --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/controlDict.1 @@ -0,0 +1,66 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object controlDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + + application ABLSolver; + + libs ("libuserfiniteVolume.so" "libuserincompressibleLESModels.so"); + + startFrom startTime; + + startTime 0.0; + + stopAt endTime; + + endTime 1000.0; + + deltaT 0.5; + + writeControl adjustableRunTime; + + writeInterval 99000.0; + + purgeWrite 0; + + writeFormat ascii; + + writePrecision 8; + + writeCompression compressed; + + timeFormat general; + + timePrecision 8; + + runTimeModifiable yes; + + adjustTimeStep no; + + maxCo 0.75; + + maxDeltaT 25.0; + + startTimeMean 1000.0; + + startTimeCorr 1000.0; + + functions + { + #include "sampling/sliceDataInstantaneous" + } + +// ************************************************************************* // + diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/system/decomposeParDict b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/decomposeParDict new file mode 100755 index 000000000..c7bea2ee8 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/decomposeParDict @@ -0,0 +1,76 @@ +/*-------------------------------*- C++ -*---------------------------------*\ +| ========= | +| \\ / OpenFOAM | +| \\ / | +| \\ / The Open Source CFD Toolbox | +| \\/ http://www.OpenFOAM.org | +\*-------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + note "mesh decomposition control dictionary"; + location "system"; + object decomposeParDict; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +numberOfSubdomains $nCores; +method $decompType; +//preservePatches (north south east west); + +simpleCoeffs +{ + n $decompOrder; + delta 0.001; +} + +hierarchicalCoeffs +{ + n (1 1 3); + delta 0.001; + order xyz; +} + +metisCoeffs +{ + processorWeights + ( + ); +} + +scotchCoeffs +{ + //processorWeights + //( + // 1 + // 1 + // 1 + // 1 + //); + //writeGraph true; + //strategy "b"; +} + +manualCoeffs +{ + dataFile "decompositionData"; +} + + +//// Is the case distributed +distributed no; +//// Per slave (so nProcs-1 entries) the directory above the case. +//roots +//( +// "/tmp" +// "/tmp" +//); + + +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/system/fvSchemes b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/fvSchemes new file mode 100755 index 000000000..ead2aeb21 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/fvSchemes @@ -0,0 +1,85 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSchemes; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +ddtSchemes +{ + default backward; +// default CrankNicolson 1.0; +} + +gradSchemes +{ + default Gauss linear; + grad(U) Gauss linear; +} + +divSchemes +{ + default Gauss linear; + //div(phi,U) Gauss linear; + //div(phi,T) Gauss linear; + div(phi,U) Gauss localBlended linear upwind; + div(phi,T) Gauss localBlended linear upwind; + div(R) Gauss linear; + div(U) Gauss linear; + div((nuEff*dev(grad(U).T()))) Gauss linear; + div(B) Gauss linear; + div(phi,B) Gauss linear; + div(phi,k) Gauss linear; +} + +laplacianSchemes +{ + default Gauss linear uncorrected; + laplacian(rUA,p) Gauss linear uncorrected; + laplacian((1|A(U)),p) Gauss linear uncorrected; + laplacian(interpolate((1|A(U))),p) Gauss linear uncorrected; + laplacian(interpolate((1|A(U))),pd) Gauss linear uncorrected; + laplacian(nu,U) Gauss linear uncorrected; + laplacian(nuEff,U) Gauss linear uncorrected; + laplacian(kappaEff,T) Gauss linear uncorrected; + laplacian(DBEff,B) Gauss linear uncorrected; + laplacian(nuSgs,U) Gauss linear uncorrected; +} + +interpolationSchemes +{ + default linear; +} + +snGradSchemes +{ + default uncorrected; +} + +fluxRequired +{ + default no; + p ; +} + +schemeBlending +{ + xBlending1 -10.0; + xBlending2 0.0; + xBlending3 60.0; + xBlending4 70.0; + blendingFactor1 0.85; + blendingFactor2 1.00; +} + +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/system/fvSolution b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/fvSolution new file mode 100755 index 000000000..b3f1a7e4a --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/fvSolution @@ -0,0 +1,102 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSolution; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +solvers +{ + "(p_rgh|p)" + { + solver PCG; + preconditioner + { + preconditioner GAMG; + tolerance 1e-05; + relTol 0.01; + smoother DICGaussSeidel; + nPreSweeps 0; + nPostSweeps 2; + nFinestSweeps 2; + cacheAgglomeration true; + nCellsInCoarsestLevel 100; + agglomerator faceAreaPair; + mergeLevels 2; + } + tolerance 1e-06; + relTol 0.01; + maxIter 1000; + } + + "(p_rghFinal|pFinal)" + { + $p; + relTol 0.0; + } + + "(U|T|k|epsilon|R)" + { + solver PBiCG; + preconditioner DILU; + tolerance 1e-6; + relTol 0.1; + maxIter 1000; + } + + "(U|T|k|epsilon|R)Final" + { + $U; + relTol 0.0; + } + + "(flm|fmm)" + { + solver PBiCG; + preconditioner DILU; + tolerance 1e-6; + relTol 0.1; + } + + "(flm|fmm)Final" + { + $flm; + relTol 0.0; + } + + +} + +PISO +{ + momentumPredictor yes; + nOuterCorrectors 1; + nCorrectors 3; + nNonOrthogonalCorrectors 0; + pRefPoint (-39.0 0 11.5); + pRefValue 0; +} + +relaxationFactors +{ + fields + { + } + equations + { + "(U|T|k|epsilon|R)" 1.0; + "(U|T|k|epsilon|R)Final" 1.0; + } +} + +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/system/sampling/sliceDataInstantaneous b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/sampling/sliceDataInstantaneous new file mode 100755 index 000000000..d80b1da9d --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/sampling/sliceDataInstantaneous @@ -0,0 +1,59 @@ + sliceDataInstantaneous + { + type surfaces; + functionObjectLibs ("libsampling.so"); + enabled true; + interpolationScheme cell; + outputControl adjustableTime; + writeInterval 5; + surfaceFormat vtk; + fields + ( + U + ); + surfaces + ( + slice_horizontal + { + type plane; + basePoint (1500.01 1500.01 90.01); + normalVector (0 0 1); + triangulate false; + } + slice_vertical_x500 + { + type plane; + basePoint (500.01 1500.01 90.01); + normalVector (1 0 0); + triangulate false; + } + slice_vertical_x3D + { + type plane; + basePoint (1379.2 1500.01 90.01); + normalVector (1 0 0); + triangulate false; + } + slice_vertical_x5D + { + type plane; + basePoint (1632.0 1500.01 90.01); + normalVector (1 0 0); + triangulate false; + } + slice_vertical_x7D + { + type plane; + basePoint (1884.8 1500.01 90.01); + normalVector (1 0 0); + triangulate false; + } + slice_vertical_x10D + { + type plane; + basePoint (2264.0 1500.01 90.01); + normalVector (1 0 0); + triangulate false; + } + ); + } diff --git a/exampleCases/example.ALMAdvanced.ssc.timeTable/system/setFieldsABLDict b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/setFieldsABLDict new file mode 100755 index 000000000..11b48e0bc --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.timeTable/system/setFieldsABLDict @@ -0,0 +1,504 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + + root ""; + case ""; + instance ""; + local ""; + + class dictionary; + object setFieldsABLDict; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +// Extents of the domain. +xMin $xMin; +yMin $yMin; +zMin $zMin; + +xMax $xMax; +yMax $yMax; +zMax $zMax; + +zRef $zMax; + +// Specify if distance from wall should be used as z. +useWallDistZ false; +scaleVelocityWithHeight false; + + +// Specify how to initialze the base velocity and temperature profile. +velocityInitType "table"; +//velocityInitType "log"; +//velocityInitType "geostrophic"; +temperatureInitType "table"; +//temperatureInitType "simple"; + +// Maximum perturbation of streamwise/spanwise flow near surface. +deltaU 0.25; +deltaV 0.25; + +// Total periods of perturbations in streamwise/spanwise in the domain. +Uperiods 12.0; +Vperiods 12.0; + +// Percentage of domain height (zMax) where peak in perturbation +// magnitude occurs. +zPeak 0.015; + +// Initial height of the center of the capping inversion. +zInversion $zInversion; + +// Width of the capping inversion. +widthInversion $inversionWidth; + +// Potential temperature at the bottom and top of the capping inversion. +Tbottom $TBottom; +Ttop $TTop; + +// Maximum temperature fluctuation size below capping inversion. +TPrimeScale 0.0; + +// Height rate of change of potential temperature above the inversion. +dTdz $TGradUpper; + +// Geostrophic wind speed magnitude. +Ug $U0Mag; + +// Geostrophic wind speed direction. +UgDir $dir; + +// Aerodynamic roughness height of surface. +z0 $z0; + +// von Karman constant. +kappa $kappa; + +// Vertical profile table. +profileTable +( +// z U V T + (0.0 0.0 0.0 273.121917725) + (5.0 1.82671529027 1.98969371553 282.524156211) + (10.0 2.52983624172 2.77228242751 283.156504284) + (15.0 3.01282071998 3.35521702288 283.64108812) + (20.0 3.35996148006 3.78823607698 284.090761147) + (25.0 3.8038057643 4.37960852586 284.554077196) + (30.0 4.03596125279 4.70538923119 284.966777157) + (35.0 4.38133296535 5.23253766126 285.360167677) + (40.0 4.56992779673 5.53523659867 285.747101612) + (45.0 4.80994398595 5.96180841679 286.095879197) + (50.0 5.00816921409 6.32774876853 286.444585293) + (55.0 5.14154903327 6.60160807137 286.787914506) + (60.0 5.36818530188 7.08896005703 287.063199891) + (65.0 5.44703987742 7.27484159809 287.379906732) + (70.0 5.57604433164 7.60608624795 287.638417176) + (75.0 5.72370142776 7.99632935101 287.863981004) + (80.0 5.77619905069 8.15139018101 288.127106742) + (85.0 5.87149793296 8.46369430537 288.331005696) + (90.0 5.98111916718 8.83268873958 288.509035882) + (95.0 6.01697152506 8.97407895539 288.724664101) + (100.0 6.06967854005 9.19927028309 288.909565287) + (105.0 6.1450628792 9.53721293929 289.053124377) + (110.0 6.19167607924 9.76288104253 289.198531813) + (115.0 6.22489630605 9.93628531022 289.344799656) + (120.0 6.27421288656 10.216282683 289.462005) + (125.0 6.32645248876 10.5156368594 289.57393273) + (130.0 6.34668810144 10.6457361726 289.712125634) + (135.0 6.36434613795 10.762203832 289.852433913) + (140.0 6.39842793739 11.0196195883 289.95191863) + (145.0 6.4342454375 11.2919310606 290.047089019) + (150.0 6.45180421766 11.4367005351 290.150649381) + (155.0 6.46406875681 11.544488333 290.256642472) + (160.0 6.48170756073 11.7056278368 290.348224267) + (165.0 6.50382814701 11.9112591447 290.427787992) + (170.0 6.52550956366 12.1127414485 290.506470121) + (175.0 6.54550549533 12.298300329 290.581768788) + (180.0 6.56550142701 12.4838592096 290.657067454) + (185.0 6.58511534034 12.6567515091 290.735008491) + (190.0 6.6045979288 12.8252894701 290.813857884) + (195.0 6.62432001649 12.9896812983 290.892328604) + (200.0 6.64532587961 13.1318488244 290.968769537) + (205.0 6.66633174272 13.2740163505 291.045210471) + (210.0 6.69104111181 13.4098514016 291.117435921) + (215.0 6.72036475996 13.5377966838 291.184409209) + (220.0 6.74968840812 13.6657419659 291.251382497) + (225.0 6.77805691412 13.7640369251 291.318657013) + (230.0 6.80578882059 13.8425700289 291.386132296) + (235.0 6.83352072706 13.9211031327 291.453607578) + (240.0 6.86307156947 13.9862481909 291.518273832) + (245.0 6.89380511232 14.0426881336 291.581113612) + (250.0 6.92453865516 14.0991280764 291.643953391) + (255.0 6.95361693104 14.1462680315 291.704700258) + (260.0 6.98077095142 14.1825967081 291.763014104) + (265.0 7.0079249718 14.2189253847 291.82132795) + (270.0 7.03507703408 14.2541299666 291.879606535) + (275.0 7.0622194383 14.283790106 291.937711201) + (280.0 7.08936184253 14.3134502454 291.995815867) + (285.0 7.11650424675 14.3431103848 292.053920533) + (290.0 7.1430391081 14.369131837 292.11328027) + (295.0 7.16932392788 14.3936557439 292.173156546) + (300.0 7.19560874767 14.4181796507 292.233032822) + (305.0 7.22180906756 14.4424461024 292.292838021) + (310.0 7.24680913749 14.4630556198 292.351633627) + (315.0 7.27180920741 14.4836651372 292.410429232) + (320.0 7.29680927734 14.5042746546 292.469224837) + (325.0 7.32153609499 14.5243042572 292.528664796) + (330.0 7.34543057757 14.5425674214 292.590067475) + (335.0 7.36932506015 14.5608305855 292.651470155) + (340.0 7.39321954273 14.5790937496 292.712872834) + (345.0 7.41696733387 14.597025575 292.773542958) + (350.0 7.44026003553 14.6139294685 292.831940429) + (355.0 7.46355273718 14.6308333621 292.890337899) + (360.0 7.48684543884 14.6477372556 292.94873537) + (365.0 7.51013186129 14.6646271523 293.007149353) + (370.0 7.53322339247 14.68108262 293.066075821) + (375.0 7.55631492366 14.6975380877 293.12500229) + (380.0 7.57940645484 14.7139935554 293.183928758) + (385.0 7.60249798603 14.7304490231 293.242855226) + (390.0 7.6257582057 14.7463924565 293.301506178) + (395.0 7.64912373233 14.7620162427 293.359985132) + (400.0 7.67248925896 14.7776400289 293.418464087) + (405.0 7.69585478559 14.7932638151 293.476943042) + (410.0 7.71922031222 14.8088876013 293.535421996) + (415.0 7.74300228036 14.8230663689 293.592791002) + (420.0 7.7667927399 14.8372156721 293.650137374) + (425.0 7.79058319945 14.8513649753 293.707483747) + (430.0 7.81437365899 14.8655142784 293.76483012) + (435.0 7.83815083397 14.8793492717 293.821767406) + (440.0 7.86181714661 14.8905612872 293.875290779) + (445.0 7.88548345926 14.9017733027 293.928814153) + (450.0 7.9091497719 14.9129853182 293.982337526) + (455.0 7.93281608455 14.9241973336 294.035860899) + (460.0 7.95648239719 14.9354093491 294.089384273) + (465.0 7.97905964048 14.9423301431 294.14128451) + (470.0 8.0016312311 14.9492286641 294.193176323) + (475.0 8.02420282171 14.956127185 294.245068135) + (480.0 8.04677441233 14.9630257059 294.296959948) + (485.0 8.06934600294 14.9699242269 294.34885176) + (490.0 8.0912068028 14.9742300558 294.40025773) + (495.0 8.11235909886 14.9759515346 294.45117942) + (500.0 8.13351139492 14.9776730134 294.502101111) + (505.0 8.15466369098 14.9793944922 294.553022801) + (510.0 8.17581598704 14.981115971 294.603944491) + (515.0 8.19696828309 14.9828374498 294.654866181) + (520.0 8.21724149816 14.9808198644 294.704354156) + (525.0 8.2364694612 14.9743564264 294.752137402) + (530.0 8.25569742424 14.9678929884 294.799920649) + (535.0 8.27492538727 14.9614295505 294.847703896) + (540.0 8.29415335031 14.9549661125 294.895487143) + (545.0 8.31338131334 14.9485026745 294.943270389) + (550.0 8.33260927638 14.9420392365 294.991053636) + (555.0 8.35050488468 14.9266129312 295.036341098) + (560.0 8.36808840645 14.9090871924 295.081043956) + (565.0 8.38567192822 14.8915614535 295.125746813) + (570.0 8.40325544999 14.8740357147 295.170449671) + (575.0 8.42083897176 14.8565099758 295.215152528) + (580.0 8.43842249352 14.838984237 295.259855386) + (585.0 8.45600601529 14.8214584982 295.304558243) + (590.0 8.47264685758 14.7968218302 295.348171206) + (595.0 8.48834031368 14.765038729 295.390688832) + (600.0 8.50403376979 14.7332556278 295.433206459) + (605.0 8.51972722589 14.7014725265 295.475724085) + (610.0 8.53542068199 14.6696894253 295.518241712) + (615.0 8.55111413809 14.6379063241 295.560759338) + (620.0 8.56680759419 14.6061232229 295.603276965) + (625.0 8.5825010503 14.5743401216 295.645794591) + (630.0 8.59715715424 14.5346556613 295.689519112) + (635.0 8.61058749747 14.4856347615 295.734669729) + (640.0 8.62401784069 14.4366138617 295.779820347) + (645.0 8.63744818391 14.3875929619 295.824970964) + (650.0 8.65087852713 14.338572062 295.870121581) + (655.0 8.66430887036 14.2895511622 295.915272198) + (660.0 8.67773921358 14.2405302624 295.960422815) + (665.0 8.6911695568 14.1915093626 296.005573433) + (670.0 8.70459990003 14.1424884628 296.05072405) + (675.0 8.71498597608 14.0837507537 296.096336227) + (680.0 8.72352399234 14.0191143362 296.142228601) + (685.0 8.7320620086 13.9544779188 296.188120975) + (690.0 8.74060002486 13.8898415013 296.234013348) + (695.0 8.74913804112 13.8252050838 296.279905722) + (700.0 8.75767605739 13.7605686663 296.325798096) + (705.0 8.76621407365 13.6959322489 296.371690469) + (710.0 8.77475208991 13.6312958314 296.417582843) + (715.0 8.78329010617 13.5666594139 296.463475217) + (720.0 8.79182812243 13.5020229965 296.50936759) + (725.0 8.79189547444 13.4277463368 296.562527014) + (730.0 8.79098910472 13.3523615098 296.616521801) + (735.0 8.79008273499 13.2769766828 296.670516587) + (740.0 8.78917636527 13.2015918559 296.724511374) + (745.0 8.78826999555 13.1262070289 296.778506161) + (750.0 8.78736362582 13.0508222019 296.832500948) + (755.0 8.7864572561 12.9754373749 296.886495735) + (760.0 8.78555088638 12.9000525479 296.940490522) + (765.0 8.78464451665 12.824667721 296.994485308) + (770.0 8.78373814693 12.749282894 297.048480095) + (775.0 8.78092431283 12.6731698157 297.101321687) + (780.0 8.77050848097 12.594154369 297.149567342) + (785.0 8.76009264911 12.5151389222 297.197812997) + (790.0 8.74967681725 12.4361234755 297.246058652) + (795.0 8.73926098539 12.3571080288 297.294304307) + (800.0 8.72884515353 12.278092582 297.342549962) + (805.0 8.71842932167 12.1990771353 297.390795617) + (810.0 8.70801348981 12.1200616885 297.439041272) + (815.0 8.69759765795 12.0410462418 297.487286927) + (820.0 8.68718182609 11.9620307951 297.535532582) + (825.0 8.67676599423 11.8830153483 297.583778237) + (830.0 8.66635016237 11.8039999016 297.632023892) + (835.0 8.65380285705 11.7267327361 297.688031136) + (840.0 8.63847548104 11.6517458454 297.754161782) + (845.0 8.62314810503 11.5767589547 297.820292429) + (850.0 8.60782072902 11.5017720641 297.886423076) + (855.0 8.59249335301 11.4267851734 297.952553722) + (860.0 8.57716597701 11.3517982828 298.018684369) + (865.0 8.561838601 11.2768113921 298.084815016) + (870.0 8.54651122499 11.2018245015 298.150945663) + (875.0 8.53118384898 11.1268376108 298.217076309) + (880.0 8.51585647297 11.0518507201 298.283206956) + (885.0 8.50052909696 10.9768638295 298.349337603) + (890.0 8.48520172096 10.9018769388 298.41546825) + (895.0 8.46987434495 10.8268900482 298.481598896) + (900.0 8.45883220551 10.7541011047 298.547345535) + (905.0 8.45238242046 10.6836676328 298.612680644) + (910.0 8.44593263542 10.6132341608 298.678015753) + (915.0 8.43948285037 10.5428006888 298.743350863) + (920.0 8.43303306533 10.4723672168 298.808685972) + (925.0 8.42658328028 10.4019337449 298.874021081) + (930.0 8.42013349524 10.3315002729 298.93935619) + (935.0 8.41368371019 10.2610668009 299.004691299) + (940.0 8.40723392515 10.190633329 299.070026409) + (945.0 8.4007841401 10.120199857 299.135361518) + (950.0 8.39433435506 10.049766385 299.200696627) + (955.0 8.38788457001 9.97933291304 299.266031736) + (960.0 8.38143478497 9.90889944107 299.331366845) + (965.0 8.37498499992 9.8384659691 299.396701955) + (970.0 8.37175628862 9.76984547069 299.458148741) + (975.0 8.3787220489 9.70696290595 299.507289259) + (980.0 8.38568780918 9.64408034121 299.556429777) + (985.0 8.39265356946 9.58119777647 299.605570296) + (990.0 8.39961932974 9.51831521173 299.654710814) + (995.0 8.40658509002 9.45543264699 299.703851332) + (1000.0 8.4135508503 9.39255008225 299.752991851) + (1005.0 8.42051661058 9.32966751751 299.802132369) + (1010.0 8.42748237086 9.26678495277 299.851272887) + (1015.0 8.43444813113 9.20390238803 299.900413405) + (1020.0 8.44141389141 9.14101982329 299.949553924) + (1025.0 8.44837965169 9.07813725854 299.998694442) + (1030.0 8.45534541197 9.0152546938 300.04783496) + (1035.0 8.46231117225 8.95237212906 300.096975478) + (1040.0 8.46927693253 8.88948956432 300.146115997) + (1045.0 8.47624269281 8.82660699958 300.195256515) + (1050.0 8.48495783258 8.77319458603 300.238852282) + (1055.0 8.49495774699 8.72673721576 300.278375887) + (1060.0 8.5049576614 8.6802798455 300.317899492) + (1065.0 8.51495757581 8.63382247523 300.357423097) + (1070.0 8.52495749023 8.58736510496 300.396946702) + (1075.0 8.53495740464 8.5409077347 300.436470307) + (1080.0 8.54495731905 8.49445036443 300.475993912) + (1085.0 8.55495723346 8.44799299416 300.515517517) + (1090.0 8.56495714787 8.4015356239 300.555041122) + (1095.0 8.57495706228 8.35507825363 300.594564727) + (1100.0 8.58495697669 8.30862088336 300.634088332) + (1105.0 8.5949568911 8.2621635131 300.673611937) + (1110.0 8.60495680552 8.21570614283 300.713135542) + (1115.0 8.61495671993 8.16924877256 300.752659147) + (1120.0 8.62495663434 8.1227914023 300.792182752) + (1125.0 8.63495654875 8.07633403203 300.831706357) + (1130.0 8.64495646316 8.02987666176 300.871229962) + (1135.0 8.65360052964 7.98996489564 300.907704255) + (1140.0 8.65972902324 7.96219751809 300.938521005) + (1145.0 8.66585751685 7.93443014055 300.969337756) + (1150.0 8.67198601045 7.906662763 301.000154506) + (1155.0 8.67811450406 7.87889538546 301.030971256) + (1160.0 8.68424299766 7.85112800791 301.061788006) + (1165.0 8.69037149126 7.82336063037 301.092604757) + (1170.0 8.69649998487 7.79559325282 301.123421507) + (1175.0 8.70262847847 7.76782587527 301.154238257) + (1180.0 8.70875697208 7.74005849773 301.185055007) + (1185.0 8.71488546568 7.71229112018 301.215871758) + (1190.0 8.72101395929 7.68452374264 301.246688508) + (1195.0 8.72714245289 7.65675636509 301.277505258) + (1200.0 8.7332709465 7.62898898755 301.308322009) + (1205.0 8.7393994401 7.60122161 301.339138759) + (1210.0 8.74552793371 7.57345423246 301.369955509) + (1215.0 8.75165642731 7.54568685491 301.400772259) + (1220.0 8.75778492092 7.51791947737 301.43158901) + (1225.0 8.76391341452 7.49015209982 301.46240576) + (1230.0 8.76818252215 7.46990516883 301.489568668) + (1235.0 8.76988179508 7.46005215541 301.511681645) + (1240.0 8.771581068 7.45019914198 301.533794623) + (1245.0 8.77328034093 7.44034612856 301.5559076) + (1250.0 8.77497961385 7.43049311513 301.578020578) + (1255.0 8.77667888677 7.42064010171 301.600133555) + (1260.0 8.7783781597 7.41078708828 301.622246532) + (1265.0 8.78007743262 7.40093407485 301.64435951) + (1270.0 8.78177670555 7.39108106143 301.666472487) + (1275.0 8.78347597847 7.381228048 301.688585464) + (1280.0 8.7851752514 7.37137503458 301.710698442) + (1285.0 8.78687452432 7.36152202115 301.732811419) + (1290.0 8.78857379725 7.35166900773 301.754924397) + (1295.0 8.79027307017 7.3418159943 301.777037374) + (1300.0 8.7919723431 7.33196298088 301.799150351) + (1305.0 8.79367161602 7.32210996745 301.821263329) + (1310.0 8.79537088895 7.31225695402 301.843376306) + (1315.0 8.79707016187 7.3024039406 301.865489283) + (1320.0 8.79876943479 7.29255092717 301.887602261) + (1325.0 8.80046870772 7.28269791375 301.909715238) + (1330.0 8.80216798064 7.27284490032 301.931828216) + (1335.0 8.80345002487 7.27037429336 301.950702634) + (1340.0 8.80449597234 7.27208116099 301.967744453) + (1345.0 8.8055419198 7.27378802862 301.984786271) + (1350.0 8.80658786727 7.27549489624 302.00182809) + (1355.0 8.80763381473 7.27720176387 302.018869908) + (1360.0 8.8086797622 7.2789086315 302.035911727) + (1365.0 8.80972570966 7.28061549913 302.052953545) + (1370.0 8.81077165713 7.28232236676 302.069995364) + (1375.0 8.81181760459 7.28402923439 302.087037182) + (1380.0 8.81286355206 7.28573610202 302.104079001) + (1385.0 8.81390949952 7.28744296965 302.121120819) + (1390.0 8.81495544699 7.28914983727 302.138162638) + (1395.0 8.81600139445 7.2908567049 302.155204456) + (1400.0 8.81704734192 7.29256357253 302.172246275) + (1405.0 8.81809328938 7.29427044016 302.189288094) + (1410.0 8.81913923685 7.29597730779 302.206329912) + (1415.0 8.82018518431 7.29768417542 302.223371731) + (1420.0 8.82123113178 7.29939104305 302.240413549) + (1425.0 8.82227707924 7.30109791068 302.257455368) + (1430.0 8.82332302671 7.30280477831 302.274497186) + (1435.0 8.82436897417 7.30451164593 302.291539005) + (1440.0 8.82541492164 7.30621851356 302.308580823) + (1445.0 8.8264608691 7.30792538119 302.325622642) + (1450.0 8.82980499965 7.31411337437 302.342200633) + (1455.0 8.83363827328 7.32125512601 302.358679903) + (1460.0 8.83747154691 7.32839687764 302.375159173) + (1465.0 8.84130482054 7.33553862927 302.391638443) + (1470.0 8.84513809417 7.34268038091 302.408117713) + (1475.0 8.8489713678 7.34982213254 302.424596984) + (1480.0 8.85280464143 7.35696388418 302.441076254) + (1485.0 8.85663791506 7.36410563581 302.457555524) + (1490.0 8.86047118869 7.37124738745 302.474034794) + (1495.0 8.86430446231 7.37838913908 302.490514064) + (1500.0 8.86813773594 7.38553089071 302.506993334) + (1505.0 8.87197100957 7.39267264235 302.523472605) + (1510.0 8.8758042832 7.39981439398 302.539951875) + (1515.0 8.87963755683 7.40695614562 302.556431145) + (1520.0 8.88347083046 7.41409789725 302.572910415) + (1525.0 8.88730410409 7.42123964888 302.589389685) + (1530.0 8.89113737772 7.42838140052 302.605868955) + (1535.0 8.89497065135 7.43552315215 302.622348226) + (1540.0 8.89880392498 7.44266490379 302.638827496) + (1545.0 8.90263719861 7.44980665542 302.655306766) + (1550.0 8.90647047224 7.45694840705 302.671786036) + (1555.0 8.91030374586 7.46409015869 302.688265306) + (1560.0 8.91413701949 7.47123191032 302.704744577) + (1565.0 8.91797029312 7.47837366196 302.721223847) + (1570.0 8.92180356675 7.48551541359 302.737703117) + (1575.0 8.92995697971 7.48958529161 302.756743245) + (1580.0 8.93926578965 7.49283361431 302.77646826) + (1585.0 8.94857459959 7.496081937 302.796193275) + (1590.0 8.95788340953 7.49933025969 302.81591829) + (1595.0 8.96719221947 7.50257858238 302.835643305) + (1600.0 8.97650102941 7.50582690508 302.85536832) + (1605.0 8.98580983935 7.50907522777 302.875093335) + (1610.0 8.9951186493 7.51232355046 302.89481835) + (1615.0 9.00442745924 7.51557187315 302.914543365) + (1620.0 9.01373626918 7.51882019585 302.93426838) + (1625.0 9.02304507912 7.52206851854 302.953993395) + (1630.0 9.03235388906 7.52531684123 302.973718411) + (1635.0 9.041662699 7.52856516392 302.993443426) + (1640.0 9.05097150894 7.53181348662 303.013168441) + (1645.0 9.06028031888 7.53506180931 303.032893456) + (1650.0 9.06958912882 7.538310132 303.052618471) + (1655.0 9.07889793876 7.5415584547 303.072343486) + (1660.0 9.0882067487 7.54480677739 303.092068501) + (1665.0 9.09751555864 7.54805510008 303.111793516) + (1670.0 9.10682436858 7.55130342277 303.131518531) + (1675.0 9.11613317852 7.55455174547 303.151243546) + (1680.0 9.12544198846 7.55780006816 303.170968561) + (1685.0 9.1347507984 7.56104839085 303.190693576) + (1690.0 9.14405960834 7.56429671354 303.210418591) + (1695.0 9.15336841829 7.56754503624 303.230143606) + (1700.0 9.16267722823 7.57079335893 303.249868621) + (1705.0 9.17198603817 7.57404168162 303.269593636) + (1710.0 9.18349377603 7.57239347669 303.290540127) + (1715.0 9.19922226437 7.56134659115 303.31383119) + (1720.0 9.2149507527 7.55029970561 303.337122252) + (1725.0 9.23067924103 7.53925282007 303.360413315) + (1730.0 9.24640772936 7.52820593453 303.383704377) + (1735.0 9.2621362177 7.51715904899 303.40699544) + (1740.0 9.27786470603 7.50611216345 303.430286502) + (1745.0 9.29359319436 7.49506527791 303.453577565) + (1750.0 9.3093216827 7.48401839237 303.476868627) + (1755.0 9.32505017103 7.47297150683 303.50015969) + (1760.0 9.34077865936 7.46192462129 303.523450752) + (1765.0 9.35650714769 7.45087773575 303.546741815) + (1770.0 9.37223563603 7.43983085021 303.570032877) + (1775.0 9.38796412436 7.42878396467 303.59332394) + (1780.0 9.40369261269 7.41773707912 303.616615003) + (1785.0 9.41942110102 7.40669019358 303.639906065) + (1790.0 9.43514958936 7.39564330804 303.663197128) + (1795.0 9.45087807769 7.3845964225 303.68648819) + (1800.0 9.46660656602 7.37354953696 303.709779253) + (1805.0 9.48233505436 7.36250265142 303.733070315) + (1810.0 9.49806354269 7.35145576588 303.756361378) + (1815.0 9.51379203102 7.34040888034 303.77965244) + (1820.0 9.52952051935 7.3293619948 303.802943503) + (1825.0 9.54524900769 7.31831510926 303.826234565) + (1830.0 9.56097749602 7.30726822372 303.849525628) + (1835.0 9.57670598435 7.29622133818 303.87281669) + (1840.0 9.59243447268 7.28517445264 303.896107753) + (1845.0 9.60816296102 7.2741275671 303.919398815) + (1850.0 9.62389144935 7.26308068156 303.942689878) + (1855.0 9.63961993768 7.25203379602 303.96598094) + (1860.0 9.65432709188 7.2376578099 303.988680381) + (1865.0 9.66596304977 7.21327107309 304.009600791) + (1870.0 9.67759900765 7.18888433629 304.0305212) + (1875.0 9.68923496554 7.16449759948 304.051441609) + (1880.0 9.70087092342 7.14011086267 304.072362018) + (1885.0 9.71250688131 7.11572412587 304.093282427) + (1890.0 9.72414283919 7.09133738906 304.114202836) + (1895.0 9.73577879708 7.06695065226 304.135123245) + (1900.0 9.74741475497 7.04256391545 304.156043654) + (1905.0 9.75905071285 7.01817717864 304.176964064) + (1910.0 9.77068667074 6.99379044184 304.197884473) + (1915.0 9.78232262862 6.96940370503 304.218804882) + (1920.0 9.79395858651 6.94501696822 304.239725291) + (1925.0 9.8055945444 6.92063023142 304.2606457) + (1930.0 9.81723050228 6.89624349461 304.281566109) + (1935.0 9.82886646017 6.8718567578 304.302486518) + (1940.0 9.84050241805 6.847470021 304.323406928) + (1945.0 9.85213837594 6.82308328419 304.344327337) + (1950.0 9.86377433382 6.79869654738 304.365247746) + (1955.0 9.87541029171 6.77430981058 304.386168155) + (1960.0 9.8870462496 6.74992307377 304.407088564) + (1965.0 9.89868220748 6.72553633696 304.428008973) + (1970.0 9.91031816537 6.70114960016 304.448929382) + (1975.0 9.92195412325 6.67676286335 304.469849792) + (1980.0 9.93359008114 6.65237612654 304.490770201) + (1985.0 9.94522603903 6.62798938974 304.51169061) + (1990.0 9.95686199691 6.60360265293 304.532611019) + (1995.0 9.9684979548 6.57921591612 304.553531428) + (2000.0 9.98013391268 6.55482917932 304.574451837) +); + +// Update internal field. +updateInternalFields true; + +// Update boundary field. +updateBoundaryFields false; + +// ************************************************************************* // From 3d8f7c0c8c6bbfe6b14cdb0687c633ff6b796921 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Wed, 7 Nov 2018 16:03:37 +0100 Subject: [PATCH 60/65] Add example case for ALMAdvanced with zeroMQ SSC --- .../0.original/U | 58 ++ .../0.original/k | 60 +++ .../0.original/nuSgs | 60 +++ .../0.original/p | 60 +++ .../SC_INPUT.txt | 7 + .../constant/LESProperties | 124 +++++ .../constant/airfoilProperties/Cylinder1 | 23 + .../constant/airfoilProperties/Cylinder2 | 23 + .../constant/airfoilProperties/DU21_A17 | 162 ++++++ .../constant/airfoilProperties/DU25_A17 | 161 ++++++ .../constant/airfoilProperties/DU30_A17 | 163 ++++++ .../constant/airfoilProperties/DU35_A17 | 155 ++++++ .../constant/airfoilProperties/DU40_A17 | 156 ++++++ .../constant/airfoilProperties/NACA64_A17 | 147 +++++ .../constant/polyMesh/blockMeshDict | 101 ++++ .../constant/transportProperties | 39 ++ .../constant/turbineArrayProperties | 108 ++++ .../constant/turbineProperties/NREL5MWRef | 130 +++++ .../constant/turbulenceProperties | 22 + .../runscript.preprocess | 155 ++++++ .../runscript.removeAll | 21 + .../runscript.solve.1 | 41 ++ .../example.ALMAdvanced.ssc.zeroMQ/setUp | 93 ++++ .../system/changeDictionaryDict.updateBCs | 200 +++++++ .../changeDictionaryDict.updateBCs.cyclic | 238 +++++++++ .../changeDictionaryDict.updateBCs.east | 290 ++++++++++ .../changeDictionaryDict.updateBCs.north | 200 +++++++ .../changeDictionaryDict.updateBCs.northeast | 290 ++++++++++ .../changeDictionaryDict.updateBCs.northwest | 290 ++++++++++ .../changeDictionaryDict.updateBCs.south | 200 +++++++ .../changeDictionaryDict.updateBCs.southeast | 290 ++++++++++ .../changeDictionaryDict.updateBCs.southwest | 290 ++++++++++ .../changeDictionaryDict.updateBCs.west | 200 +++++++ .../system/controlDict.1 | 66 +++ .../system/decomposeParDict | 76 +++ .../system/fvSchemes | 85 +++ .../system/fvSolution | 102 ++++ .../system/sampling/sliceDataInstantaneous | 59 ++ .../system/setFieldsABLDict | 504 ++++++++++++++++++ .../zeromqSSC/.gitignore | 6 + .../zeromqSSC/zeromqServerFLORIS.url | 2 + 41 files changed, 5457 insertions(+) create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/0.original/U create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/0.original/k create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/0.original/nuSgs create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/0.original/p create mode 100644 exampleCases/example.ALMAdvanced.ssc.zeroMQ/SC_INPUT.txt create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/LESProperties create mode 100644 exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/Cylinder1 create mode 100644 exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/Cylinder2 create mode 100644 exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/DU21_A17 create mode 100644 exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/DU25_A17 create mode 100644 exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/DU30_A17 create mode 100644 exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/DU35_A17 create mode 100644 exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/DU40_A17 create mode 100644 exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/NACA64_A17 create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/polyMesh/blockMeshDict create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/transportProperties create mode 100644 exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/turbineArrayProperties create mode 100644 exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/turbineProperties/NREL5MWRef create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/turbulenceProperties create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/runscript.preprocess create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/runscript.removeAll create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/runscript.solve.1 create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/setUp create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.cyclic create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.east create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.north create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.northeast create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.northwest create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.south create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.southeast create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.southwest create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.west create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/controlDict.1 create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/decomposeParDict create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/fvSchemes create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/fvSolution create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/sampling/sliceDataInstantaneous create mode 100755 exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/setFieldsABLDict create mode 100644 exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/.gitignore create mode 100644 exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/zeromqServerFLORIS.url diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/0.original/U b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/0.original/U new file mode 100755 index 000000000..6dbf85ec5 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/0.original/U @@ -0,0 +1,58 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volVectorField; + location "0"; + object U; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 1 -1 0 0 0 0]; + +internalField uniform ($U0Mag 0 0); + +boundaryField +{ + lower + { + type slip; + } + upper + { + type slip; + } + west + { + type fixedValue; + value uniform ($U0Mag 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform ($U0Mag 0 0); + } + south + { + type slip; + } + north + { + type slip; + } +} + + + +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/0.original/k b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/0.original/k new file mode 100755 index 000000000..c76a7e261 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/0.original/k @@ -0,0 +1,60 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object k ; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -2 0 0 0 0]; + +internalField uniform 0.0; + +boundaryField +{ + lower + { + type zeroGradient; + value uniform 0.0; + } + upper + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedValue; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/0.original/nuSgs b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/0.original/nuSgs new file mode 100755 index 000000000..18e32f76e --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/0.original/nuSgs @@ -0,0 +1,60 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.1.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object nuSgs; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -1 0 0 0 0]; + +internalField uniform $nuSgs0; + +boundaryField +{ + lower + { + type zeroGradient; + value uniform 0.0; + } + upper + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedValue; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/0.original/p b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/0.original/p new file mode 100755 index 000000000..d77aa1268 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/0.original/p @@ -0,0 +1,60 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0000"; + object p; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +dimensions [0 2 -2 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + lower + { + type zeroGradient; + value uniform 0; + } + upper + { + type zeroGradient; + value uniform 0; + } + east + { + type fixedValue; + value uniform 0; + } + west + { + type zeroGradient; + value uniform 0; + } + south + { + type zeroGradient; + value uniform 0; + } + north + { + type zeroGradient; + value uniform 0; + } +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/SC_INPUT.txt b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/SC_INPUT.txt new file mode 100644 index 000000000..b54f8800d --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/SC_INPUT.txt @@ -0,0 +1,7 @@ +Time(s) Turbine Yaw(degCompass) Pitch(deg) +0 0 270 0.0 +5 0 260 0.0 +20 0 250 0.0 +30 0 240 0.0 +0 1 270 0.0 +10 1 280 0.0 \ No newline at end of file diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/LESProperties b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/LESProperties new file mode 100755 index 000000000..5fcbb46e9 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/LESProperties @@ -0,0 +1,124 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object LESProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +#include "../setUp" + + +LESModel $LESModel; +//LESModel SmagorinskyABL; +//LESModel Smagorinsky; +//LESModel dynLagrangianCsBound; + +delta smooth; + +SmagorinskyCoeffs +{ + ce $ce; + ck $ck; +} + +SmagorinskyABLCoeffs +{ + ce $ce; + ck $ck; + TName "T"; + kappatName "kappat"; +} + +oneEqEddyABLCoeffs +{ + ce $ce; + ck $ck; + TName "T"; + kappatName "kappat"; +} + +oneEqEddyCoeffs +{ + ce $ce; + ck $ck; +} + +printCoeffs on; + +dynLagrangianCsBoundCoeffs +{ + filter simple; +} + +cubeRootVolCoeffs +{ + deltaCoeff 1; +} + +PrandtlCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + smoothCoeffs + { + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + maxDeltaRatio 1.1; + } + + Cdelta 0.158; +} + +vanDriestCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + smoothCoeffs + { + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + maxDeltaRatio 1.1; + } + + Aplus 26; + Cdelta 0.158; +} + +smoothCoeffs +{ + delta cubeRootVol; + cubeRootVolCoeffs + { + deltaCoeff 1; + } + + maxDeltaRatio 1.1; +} + + +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/Cylinder1 b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/Cylinder1 new file mode 100644 index 000000000..7106c17d0 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/Cylinder1 @@ -0,0 +1,23 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.5000) + ( 0.00 0.000 0.5000) + ( 180.00 0.000 0.5000) +); diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/Cylinder2 b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/Cylinder2 new file mode 100644 index 000000000..b2e7923f1 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/Cylinder2 @@ -0,0 +1,23 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.3500) + ( 0.00 0.000 0.3500) + ( 180.00 0.000 0.3500) +); diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/DU21_A17 b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/DU21_A17 new file mode 100644 index 000000000..17eb9de96 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/DU21_A17 @@ -0,0 +1,162 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180 0 0.0185) + (-175 0.394 0.0332) + (-170 0.788 0.0945) + (-160 0.67 0.2809) + (-155 0.749 0.3932) + (-150 0.797 0.5112) + (-145 0.818 0.6309) + (-140 0.813 0.7485) + (-135 0.786 0.8612) + (-130 0.739 0.9665) + (-125 0.675 1.0625) + (-120 0.596 1.1476) + (-115 0.505 1.2206) + (-110 0.403 1.2805) + (-105 0.294 1.3265) + (-100 0.179 1.3582) + (-95 0.06 1.3752) + (-90 -0.06 1.3774) + (-85 -0.179 1.3648) + (-80 -0.295 1.3376) + (-75 -0.407 1.2962) + (-70 -0.512 1.2409) + (-65 -0.608 1.1725) + (-60 -0.693 1.0919) + (-55 -0.764 1.0002) + (-50 -0.82 0.899 ) + (-45 -0.857 0.79 ) + (-40 -0.875 0.6754) + (-35 -0.869 0.5579) + (-30 -0.838 0.4405) + (-25 -0.791 0.3256) + (-24 -0.794 0.3013) + (-23 -0.805 0.2762) + (-22 -0.821 0.2506) + (-21 -0.843 0.2246) + (-20 -0.869 0.1983) + (-19 -0.899 0.172 ) + (-18 -0.931 0.1457) + (-17 -0.964 0.1197) + (-16 -0.999 0.094 ) + (-15 -1.033 0.0689) + (-14.5 -1.05 0.0567) + (-12.01 -0.953 0.0271) + (-11 -0.9 0.0303) + (-9.98 -0.827 0.0287) + (-8.12 -0.536 0.0124) + (-7.62 -0.467 0.0109) + (-7.11 -0.393 0.0092) + (-6.6 -0.323 0.0083) + (-6.5 -0.311 0.0089) + (-6 -0.245 0.0082) + (-5.5 -0.178 0.0074) + (-5 -0.113 0.0069) + (-4.5 -0.048 0.0065) + (-4 0.016 0.0063) + (-3.5 0.08 0.0061) + (-3 0.145 0.0058) + (-2.5 0.208 0.0057) + (-2 0.27 0.0057) + (-1.5 0.333 0.0057) + (-1 0.396 0.0057) + (-0.5 0.458 0.0057) + ( 0 0.521 0.0057) + ( 0.5 0.583 0.0057) + ( 1 0.645 0.0058) + ( 1.5 0.706 0.0058) + ( 2 0.768 0.0059) + ( 2.5 0.828 0.0061) + ( 3 0.888 0.0063) + ( 3.5 0.948 0.0066) + ( 4 0.996 0.0071) + ( 4.5 1.046 0.0079) + ( 5 1.095 0.009 ) + ( 5.5 1.145 0.0103) + ( 6 1.192 0.0113) + ( 6.5 1.239 0.0122) + ( 7 1.283 0.0131) + ( 7.5 1.324 0.0139) + ( 8 1.358 0.0147) + ( 8.5 1.385 0.0158) + ( 9 1.403 0.0181) + ( 9.5 1.401 0.0211) + ( 10 1.358 0.0255) + ( 10.5 1.313 0.0301) + ( 11 1.287 0.0347) + ( 11.5 1.274 0.0401) + ( 12 1.272 0.0468) + ( 12.5 1.273 0.0545) + ( 13 1.273 0.0633) + ( 13.5 1.273 0.0722) + ( 14 1.272 0.0806) + ( 14.5 1.273 0.09 ) + ( 15 1.275 0.0987) + ( 15.5 1.281 0.1075) + ( 16 1.284 0.117 ) + ( 16.5 1.296 0.127 ) + ( 17 1.306 0.1368) + ( 17.5 1.308 0.1464) + ( 18 1.308 0.1562) + ( 18.5 1.308 0.1664) + ( 19 1.308 0.177 ) + ( 19.5 1.307 0.1878) + ( 20 1.311 0.1987) + ( 20.5 1.325 0.21 ) + ( 21 1.324 0.2214) + ( 22 1.277 0.2499) + ( 23 1.229 0.2786) + ( 24 1.182 0.3077) + ( 25 1.136 0.3371) + ( 26 1.093 0.3664) + ( 28 1.017 0.4246) + ( 30 0.962 0.4813) + ( 32 0.937 0.5356) + ( 35 0.947 0.6127) + ( 40 0.95 0.7396) + ( 45 0.928 0.8623) + ( 50 0.884 0.9781) + ( 55 0.821 1.0846) + ( 60 0.74 1.1796) + ( 65 0.646 1.2617) + ( 70 0.54 1.3297) + ( 75 0.425 1.3827) + ( 80 0.304 1.4202) + ( 85 0.179 1.4423) + ( 90 0.053 1.4512) + ( 95 -0.073 1.448 ) + ( 100 -0.198 1.4294) + ( 105 -0.319 1.3954) + ( 110 -0.434 1.3464) + ( 115 -0.541 1.2829) + ( 120 -0.637 1.2057) + ( 125 -0.72 1.1157) + ( 130 -0.787 1.0144) + ( 135 -0.836 0.9033) + ( 140 -0.864 0.7845) + ( 145 -0.869 0.6605) + ( 150 -0.847 0.5346) + ( 155 -0.795 0.4103) + ( 160 -0.711 0.2922) + ( 170 -0.788 0.0969) + ( 175 -0.394 0.0334) + ( 180 0 0.0185) +); diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/DU25_A17 b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/DU25_A17 new file mode 100644 index 000000000..56981e639 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/DU25_A17 @@ -0,0 +1,161 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0202) + (-175.00 0.368 0.0324) + (-170.00 0.735 0.0943) + (-160.00 0.695 0.2848) + (-155.00 0.777 0.4001) + (-150.00 0.828 0.5215) + (-145.00 0.850 0.6447) + (-140.00 0.846 0.7660) + (-135.00 0.818 0.8823) + (-130.00 0.771 0.9911) + (-125.00 0.705 1.0905) + (-120.00 0.624 1.1787) + (-115.00 0.530 1.2545) + (-110.00 0.426 1.3168) + (-105.00 0.314 1.3650) + (-100.00 0.195 1.3984) + ( -95.00 0.073 1.4169) + ( -90.00 -0.050 1.4201) + ( -85.00 -0.173 1.4081) + ( -80.00 -0.294 1.3811) + ( -75.00 -0.409 1.3394) + ( -70.00 -0.518 1.2833) + ( -65.00 -0.617 1.2138) + ( -60.00 -0.706 1.1315) + ( -55.00 -0.780 1.0378) + ( -50.00 -0.839 0.9341) + ( -45.00 -0.879 0.8221) + ( -40.00 -0.898 0.7042) + ( -35.00 -0.893 0.5829) + ( -30.00 -0.862 0.4616) + ( -25.00 -0.803 0.3441) + ( -24.00 -0.792 0.3209) + ( -23.00 -0.789 0.2972) + ( -22.00 -0.792 0.2730) + ( -21.00 -0.801 0.2485) + ( -20.00 -0.815 0.2237) + ( -19.00 -0.833 0.1990) + ( -18.00 -0.854 0.1743) + ( -17.00 -0.879 0.1498) + ( -16.00 -0.905 0.1256) + ( -15.00 -0.932 0.1020) + ( -14.00 -0.959 0.0789) + ( -13.00 -0.985 0.0567) + ( -13.00 -0.985 0.0567) + ( -12.01 -0.953 0.0271) + ( -11.00 -0.900 0.0303) + ( -9.98 -0.827 0.0287) + ( -8.98 -0.753 0.0271) + ( -8.47 -0.691 0.0264) + ( -7.45 -0.555 0.0114) + ( -6.42 -0.413 0.0094) + ( -5.40 -0.271 0.0086) + ( -5.00 -0.220 0.0073) + ( -4.50 -0.152 0.0071) + ( -4.00 -0.084 0.0070) + ( -3.50 -0.018 0.0069) + ( -3.00 0.049 0.0068) + ( -2.50 0.115 0.0068) + ( -2.00 0.181 0.0068) + ( -1.50 0.247 0.0067) + ( -1.00 0.312 0.0067) + ( -0.50 0.377 0.0067) + ( 0.00 0.444 0.0065) + ( 0.50 0.508 0.0065) + ( 1.00 0.573 0.0066) + ( 1.50 0.636 0.0067) + ( 2.00 0.701 0.0068) + ( 2.50 0.765 0.0069) + ( 3.00 0.827 0.0070) + ( 3.50 0.890 0.0071) + ( 4.00 0.952 0.0073) + ( 4.50 1.013 0.0076) + ( 5.00 1.062 0.0079) + ( 6.00 1.161 0.0099) + ( 6.50 1.208 0.0117) + ( 7.00 1.254 0.0132) + ( 7.50 1.301 0.0143) + ( 8.00 1.336 0.0153) + ( 8.50 1.369 0.0165) + ( 9.00 1.400 0.0181) + ( 9.50 1.428 0.0211) + ( 10.00 1.442 0.0262) + ( 10.50 1.427 0.0336) + ( 11.00 1.374 0.0420) + ( 11.50 1.316 0.0515) + ( 12.00 1.277 0.0601) + ( 12.50 1.250 0.0693) + ( 13.00 1.246 0.0785) + ( 13.50 1.247 0.0888) + ( 14.00 1.256 0.1000) + ( 14.50 1.260 0.1108) + ( 15.00 1.271 0.1219) + ( 15.50 1.281 0.1325) + ( 16.00 1.289 0.1433) + ( 16.50 1.294 0.1541) + ( 17.00 1.304 0.1649) + ( 17.50 1.309 0.1754) + ( 18.00 1.315 0.1845) + ( 18.50 1.320 0.1953) + ( 19.00 1.330 0.2061) + ( 19.50 1.343 0.2170) + ( 20.00 1.354 0.2280) + ( 20.50 1.359 0.2390) + ( 21.00 1.360 0.2536) + ( 22.00 1.325 0.2814) + ( 23.00 1.288 0.3098) + ( 24.00 1.251 0.3386) + ( 25.00 1.215 0.3678) + ( 26.00 1.181 0.3972) + ( 28.00 1.120 0.4563) + ( 30.00 1.076 0.5149) + ( 32.00 1.056 0.5720) + ( 35.00 1.066 0.6548) + ( 40.00 1.064 0.7901) + ( 45.00 1.035 0.9190) + ( 50.00 0.980 1.0378) + ( 55.00 0.904 1.1434) + ( 60.00 0.810 1.2333) + ( 65.00 0.702 1.3055) + ( 70.00 0.582 1.3587) + ( 75.00 0.456 1.3922) + ( 80.00 0.326 1.4063) + ( 85.00 0.197 1.4042) + ( 90.00 0.072 1.3985) + ( 95.00 -0.050 1.3973) + ( 100.00 -0.170 1.3810) + ( 105.00 -0.287 1.3498) + ( 110.00 -0.399 1.3041) + ( 115.00 -0.502 1.2442) + ( 120.00 -0.596 1.1709) + ( 125.00 -0.677 1.0852) + ( 130.00 -0.743 0.9883) + ( 135.00 -0.792 0.8818) + ( 140.00 -0.821 0.7676) + ( 145.00 -0.826 0.6481) + ( 150.00 -0.806 0.5264) + ( 155.00 -0.758 0.4060) + ( 160.00 -0.679 0.2912) + ( 170.00 -0.735 0.0995) + ( 175.00 -0.368 0.0356) + ( 180.00 0.000 0.0202) +); diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/DU30_A17 b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/DU30_A17 new file mode 100644 index 000000000..35fb11988 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/DU30_A17 @@ -0,0 +1,163 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0267) + (-175.00 0.274 0.0370) + (-170.00 0.547 0.0968) + (-160.00 0.685 0.2876) + (-155.00 0.766 0.4025) + (-150.00 0.816 0.5232) + (-145.00 0.836 0.6454) + (-140.00 0.832 0.7656) + (-135.00 0.804 0.8807) + (-130.00 0.756 0.9882) + (-125.00 0.690 1.0861) + (-120.00 0.609 1.1730) + (-115.00 0.515 1.2474) + (-110.00 0.411 1.3084) + (-105.00 0.300 1.3552) + (-100.00 0.182 1.3875) + ( -95.00 0.061 1.4048) + ( -90.00 -0.061 1.4070) + ( -85.00 -0.183 1.3941) + ( -80.00 -0.302 1.3664) + ( -75.00 -0.416 1.3240) + ( -70.00 -0.523 1.2676) + ( -65.00 -0.622 1.1978) + ( -60.00 -0.708 1.1156) + ( -55.00 -0.781 1.0220) + ( -50.00 -0.838 0.9187) + ( -45.00 -0.877 0.8074) + ( -40.00 -0.895 0.6904) + ( -35.00 -0.889 0.5703) + ( -30.00 -0.858 0.4503) + ( -25.00 -0.832 0.3357) + ( -24.00 -0.852 0.3147) + ( -23.00 -0.882 0.2946) + ( -22.00 -0.919 0.2752) + ( -21.00 -0.963 0.2566) + ( -20.00 -1.013 0.2388) + ( -19.00 -1.067 0.2218) + ( -18.00 -1.125 0.2056) + ( -17.00 -1.185 0.1901) + ( -16.00 -1.245 0.1754) + ( -15.25 -1.290 0.1649) + ( -14.24 -1.229 0.1461) + ( -13.24 -1.148 0.1263) + ( -12.22 -1.052 0.1051) + ( -11.22 -0.965 0.0886) + ( -10.19 -0.867 0.0740) + ( -9.70 -0.822 0.0684) + ( -9.18 -0.769 0.0605) + ( -8.18 -0.756 0.0270) + ( -7.19 -0.690 0.0180) + ( -6.65 -0.616 0.0166) + ( -6.13 -0.542 0.0152) + ( -6.00 -0.525 0.0117) + ( -5.50 -0.451 0.0105) + ( -5.00 -0.382 0.0097) + ( -4.50 -0.314 0.0092) + ( -4.00 -0.251 0.0091) + ( -3.50 -0.189 0.0089) + ( -3.00 -0.120 0.0089) + ( -2.50 -0.051 0.0088) + ( -2.00 0.017 0.0088) + ( -1.50 0.085 0.0088) + ( -1.00 0.152 0.0088) + ( -0.50 0.219 0.0088) + ( 0.00 0.288 0.0087) + ( 0.50 0.354 0.0087) + ( 1.00 0.421 0.0088) + ( 1.50 0.487 0.0089) + ( 2.00 0.554 0.0090) + ( 2.50 0.619 0.0091) + ( 3.00 0.685 0.0092) + ( 3.50 0.749 0.0093) + ( 4.00 0.815 0.0095) + ( 4.50 0.879 0.0096) + ( 5.00 0.944 0.0097) + ( 5.50 1.008 0.0099) + ( 6.00 1.072 0.0101) + ( 6.50 1.135 0.0103) + ( 7.00 1.197 0.0107) + ( 7.50 1.256 0.0112) + ( 8.00 1.305 0.0125) + ( 9.00 1.390 0.0155) + ( 9.50 1.424 0.0171) + ( 10.00 1.458 0.0192) + ( 10.50 1.488 0.0219) + ( 11.00 1.512 0.0255) + ( 11.50 1.533 0.0307) + ( 12.00 1.549 0.0370) + ( 12.50 1.558 0.0452) + ( 13.00 1.470 0.0630) + ( 13.50 1.398 0.0784) + ( 14.00 1.354 0.0931) + ( 14.50 1.336 0.1081) + ( 15.00 1.333 0.1239) + ( 15.50 1.326 0.1415) + ( 16.00 1.329 0.1592) + ( 16.50 1.326 0.1743) + ( 17.00 1.321 0.1903) + ( 17.50 1.331 0.2044) + ( 18.00 1.333 0.2186) + ( 18.50 1.340 0.2324) + ( 19.00 1.362 0.2455) + ( 19.50 1.382 0.2584) + ( 20.00 1.398 0.2689) + ( 20.50 1.426 0.2814) + ( 21.00 1.437 0.2943) + ( 22.00 1.418 0.3246) + ( 23.00 1.397 0.3557) + ( 24.00 1.376 0.3875) + ( 25.00 1.354 0.4198) + ( 26.00 1.332 0.4524) + ( 28.00 1.293 0.5183) + ( 30.00 1.265 0.5843) + ( 32.00 1.253 0.6492) + ( 35.00 1.264 0.7438) + ( 40.00 1.258 0.8970) + ( 45.00 1.217 1.0402) + ( 50.00 1.146 1.1686) + ( 55.00 1.049 1.2779) + ( 60.00 0.932 1.3647) + ( 65.00 0.799 1.4267) + ( 70.00 0.657 1.4621) + ( 75.00 0.509 1.4708) + ( 80.00 0.362 1.4544) + ( 85.00 0.221 1.4196) + ( 90.00 0.092 1.3938) + ( 95.00 -0.030 1.3943) + ( 100.00 -0.150 1.3798) + ( 105.00 -0.267 1.3504) + ( 110.00 -0.379 1.3063) + ( 115.00 -0.483 1.2481) + ( 120.00 -0.578 1.1763) + ( 125.00 -0.660 1.0919) + ( 130.00 -0.727 0.9962) + ( 135.00 -0.777 0.8906) + ( 140.00 -0.807 0.7771) + ( 145.00 -0.815 0.6581) + ( 150.00 -0.797 0.5364) + ( 155.00 -0.750 0.4157) + ( 160.00 -0.673 0.3000) + ( 170.00 -0.547 0.1051) + ( 175.00 -0.274 0.0388) + ( 180.00 0.000 0.0267) +); diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/DU35_A17 b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/DU35_A17 new file mode 100644 index 000000000..041013e24 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/DU35_A17 @@ -0,0 +1,155 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0407) + (-175.00 0.223 0.0507) + (-170.00 0.405 0.1055) + (-160.00 0.658 0.2982) + (-155.00 0.733 0.4121) + (-150.00 0.778 0.5308) + (-145.00 0.795 0.6503) + (-140.00 0.787 0.7672) + (-135.00 0.757 0.8785) + (-130.00 0.708 0.9819) + (-125.00 0.641 1.0756) + (-120.00 0.560 1.1580) + (-115.00 0.467 1.2280) + (-110.00 0.365 1.2847) + (-105.00 0.255 1.3274) + (-100.00 0.139 1.3557) + ( -95.00 0.021 1.3692) + ( -90.00 -0.098 1.3680) + ( -85.00 -0.216 1.3521) + ( -80.00 -0.331 1.3218) + ( -75.00 -0.441 1.2773) + ( -70.00 -0.544 1.2193) + ( -65.00 -0.638 1.1486) + ( -60.00 -0.720 1.0660) + ( -55.00 -0.788 0.9728) + ( -50.00 -0.840 0.8705) + ( -45.00 -0.875 0.7611) + ( -40.00 -0.889 0.6466) + ( -35.00 -0.880 0.5299) + ( -30.00 -0.846 0.4141) + ( -25.00 -0.784 0.3030) + ( -24.00 -0.768 0.2817) + ( -23.00 -0.751 0.2608) + ( -22.00 -0.733 0.2404) + ( -21.00 -0.714 0.2205) + ( -20.00 -0.693 0.2011) + ( -19.00 -0.671 0.1822) + ( -18.00 -0.648 0.1640) + ( -17.00 -0.624 0.1465) + ( -16.00 -0.601 0.1300) + ( -15.00 -0.579 0.1145) + ( -14.00 -0.559 0.1000) + ( -13.00 -0.539 0.0867) + ( -12.00 -0.519 0.0744) + ( -11.00 -0.499 0.0633) + ( -10.00 -0.480 0.0534) + ( -5.54 -0.385 0.0245) + ( -5.04 -0.359 0.0225) + ( -4.54 -0.360 0.0196) + ( -4.04 -0.355 0.0174) + ( -3.54 -0.307 0.0162) + ( -3.04 -0.246 0.0144) + ( -3.00 -0.240 0.0240) + ( -2.50 -0.163 0.0188) + ( -2.00 -0.091 0.0160) + ( -1.50 -0.019 0.0137) + ( -1.00 0.052 0.0118) + ( -0.50 0.121 0.0104) + ( 0.00 0.196 0.0094) + ( 0.50 0.265 0.0096) + ( 1.00 0.335 0.0098) + ( 1.50 0.404 0.0099) + ( 2.00 0.472 0.0100) + ( 2.50 0.540 0.0102) + ( 3.00 0.608 0.0103) + ( 3.50 0.674 0.0104) + ( 4.00 0.742 0.0105) + ( 4.50 0.809 0.0107) + ( 5.00 0.875 0.0108) + ( 5.50 0.941 0.0109) + ( 6.00 1.007 0.0110) + ( 6.50 1.071 0.0113) + ( 7.00 1.134 0.0115) + ( 7.50 1.198 0.0117) + ( 8.00 1.260 0.0120) + ( 8.50 1.318 0.0126) + ( 9.00 1.368 0.0133) + ( 9.50 1.422 0.0143) + ( 10.00 1.475 0.0156) + ( 10.50 1.523 0.0174) + ( 11.00 1.570 0.0194) + ( 11.50 1.609 0.0227) + ( 12.00 1.642 0.0269) + ( 12.50 1.675 0.0319) + ( 13.00 1.700 0.0398) + ( 13.50 1.717 0.0488) + ( 14.00 1.712 0.0614) + ( 14.50 1.703 0.0786) + ( 15.50 1.671 0.1173) + ( 16.00 1.649 0.1377) + ( 16.50 1.621 0.1600) + ( 17.00 1.598 0.1814) + ( 17.50 1.571 0.2042) + ( 18.00 1.549 0.2316) + ( 19.00 1.544 0.2719) + ( 19.50 1.549 0.2906) + ( 20.00 1.565 0.3085) + ( 21.00 1.565 0.3447) + ( 22.00 1.563 0.3820) + ( 23.00 1.558 0.4203) + ( 24.00 1.552 0.4593) + ( 25.00 1.546 0.4988) + ( 26.00 1.539 0.5387) + ( 28.00 1.527 0.6187) + ( 30.00 1.522 0.6978) + ( 32.00 1.529 0.7747) + ( 35.00 1.544 0.8869) + ( 40.00 1.529 1.0671) + ( 45.00 1.471 1.2319) + ( 50.00 1.376 1.3747) + ( 55.00 1.249 1.4899) + ( 60.00 1.097 1.5728) + ( 65.00 0.928 1.6202) + ( 70.00 0.750 1.6302) + ( 75.00 0.570 1.6031) + ( 80.00 0.396 1.5423) + ( 85.00 0.237 1.4598) + ( 90.00 0.101 1.4041) + ( 95.00 -0.022 1.4053) + ( 100.00 -0.143 1.3914) + ( 105.00 -0.261 1.3625) + ( 110.00 -0.374 1.3188) + ( 115.00 -0.480 1.2608) + ( 120.00 -0.575 1.1891) + ( 125.00 -0.659 1.1046) + ( 130.00 -0.727 1.0086) + ( 135.00 -0.778 0.9025) + ( 140.00 -0.809 0.7883) + ( 145.00 -0.818 0.6684) + ( 150.00 -0.800 0.5457) + ( 155.00 -0.754 0.4236) + ( 160.00 -0.677 0.3066) + ( 170.00 -0.417 0.1085) + ( 175.00 -0.229 0.0510) + ( 180.00 0.000 0.0407) +); diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/DU40_A17 b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/DU40_A17 new file mode 100644 index 000000000..6138a98dd --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/DU40_A17 @@ -0,0 +1,156 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0602) + (-175.00 0.218 0.0699) + (-170.00 0.397 0.1107) + (-160.00 0.642 0.3045) + (-155.00 0.715 0.4179) + (-150.00 0.757 0.5355) + (-145.00 0.772 0.6535) + (-140.00 0.762 0.7685) + (-135.00 0.731 0.8777) + (-130.00 0.680 0.9788) + (-125.00 0.613 1.0700) + (-120.00 0.532 1.1499) + (-115.00 0.439 1.2174) + (-110.00 0.337 1.2716) + (-105.00 0.228 1.3118) + (-100.00 0.114 1.3378) + ( -95.00 -0.002 1.3492) + ( -90.00 -0.120 1.3460) + ( -85.00 -0.236 1.3283) + ( -80.00 -0.349 1.2964) + ( -75.00 -0.456 1.2507) + ( -70.00 -0.557 1.1918) + ( -65.00 -0.647 1.1204) + ( -60.00 -0.727 1.0376) + ( -55.00 -0.792 0.9446) + ( -50.00 -0.842 0.8429) + ( -45.00 -0.874 0.7345) + ( -40.00 -0.886 0.6215) + ( -35.00 -0.875 0.5067) + ( -30.00 -0.839 0.3932) + ( -25.00 -0.777 0.2849) + ( -24.00 -0.761 0.2642) + ( -23.00 -0.744 0.2440) + ( -22.00 -0.725 0.2242) + ( -21.00 -0.706 0.2049) + ( -20.00 -0.685 0.1861) + ( -19.00 -0.662 0.1687) + ( -18.00 -0.635 0.1533) + ( -17.00 -0.605 0.1398) + ( -16.00 -0.571 0.1281) + ( -15.00 -0.534 0.1183) + ( -14.00 -0.494 0.1101) + ( -13.00 -0.452 0.1036) + ( -12.00 -0.407 0.0986) + ( -11.00 -0.360 0.0951) + ( -10.00 -0.311 0.0931) + ( -8.00 -0.208 0.0930) + ( -6.00 -0.111 0.0689) + ( -5.50 -0.090 0.0614) + ( -5.00 -0.072 0.0547) + ( -4.50 -0.065 0.0480) + ( -4.00 -0.054 0.0411) + ( -3.50 -0.017 0.0349) + ( -3.00 0.003 0.0299) + ( -2.50 0.014 0.0255) + ( -2.00 0.009 0.0198) + ( -1.50 0.004 0.0164) + ( -1.00 0.036 0.0147) + ( -0.50 0.073 0.0137) + ( 0.00 0.137 0.0113) + ( 0.50 0.213 0.0114) + ( 1.00 0.292 0.0118) + ( 1.50 0.369 0.0122) + ( 2.00 0.444 0.0124) + ( 2.50 0.514 0.0124) + ( 3.00 0.580 0.0123) + ( 3.50 0.645 0.0120) + ( 4.00 0.710 0.0119) + ( 4.50 0.776 0.0122) + ( 5.00 0.841 0.0125) + ( 5.50 0.904 0.0129) + ( 6.00 0.967 0.0135) + ( 6.50 1.027 0.0144) + ( 7.00 1.084 0.0158) + ( 7.50 1.140 0.0174) + ( 8.00 1.193 0.0198) + ( 8.50 1.242 0.0231) + ( 9.00 1.287 0.0275) + ( 9.50 1.333 0.0323) + ( 10.00 1.368 0.0393) + ( 10.50 1.400 0.0475) + ( 11.00 1.425 0.0580) + ( 11.50 1.449 0.0691) + ( 12.00 1.473 0.0816) + ( 12.50 1.494 0.0973) + ( 13.00 1.513 0.1129) + ( 13.50 1.538 0.1288) + ( 14.50 1.587 0.1650) + ( 15.00 1.614 0.1845) + ( 15.50 1.631 0.2052) + ( 16.00 1.649 0.2250) + ( 16.50 1.666 0.2467) + ( 17.00 1.681 0.2684) + ( 17.50 1.699 0.2900) + ( 18.00 1.719 0.3121) + ( 19.00 1.751 0.3554) + ( 19.50 1.767 0.3783) + ( 20.50 1.798 0.4212) + ( 21.00 1.810 0.4415) + ( 22.00 1.830 0.4830) + ( 23.00 1.847 0.5257) + ( 24.00 1.861 0.5694) + ( 25.00 1.872 0.6141) + ( 26.00 1.881 0.6593) + ( 28.00 1.894 0.7513) + ( 30.00 1.904 0.8441) + ( 32.00 1.915 0.9364) + ( 35.00 1.929 1.0722) + ( 40.00 1.903 1.2873) + ( 45.00 1.820 1.4796) + ( 50.00 1.690 1.6401) + ( 55.00 1.522 1.7609) + ( 60.00 1.323 1.8360) + ( 65.00 1.106 1.8614) + ( 70.00 0.880 1.8347) + ( 75.00 0.658 1.7567) + ( 80.00 0.449 1.6334) + ( 85.00 0.267 1.4847) + ( 90.00 0.124 1.3879) + ( 95.00 0.002 1.3912) + ( 100.00 -0.118 1.3795) + ( 105.00 -0.235 1.3528) + ( 110.00 -0.348 1.3114) + ( 115.00 -0.453 1.2557) + ( 120.00 -0.549 1.1864) + ( 125.00 -0.633 1.1041) + ( 130.00 -0.702 1.0102) + ( 135.00 -0.754 0.9060) + ( 140.00 -0.787 0.7935) + ( 145.00 -0.797 0.6750) + ( 150.00 -0.782 0.5532) + ( 155.00 -0.739 0.4318) + ( 160.00 -0.664 0.3147) + ( 170.00 -0.410 0.1144) + ( 175.00 -0.226 0.0702) + ( 180.00 0.000 0.0602) +); diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/NACA64_A17 b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/NACA64_A17 new file mode 100644 index 000000000..11fa618d0 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/airfoilProperties/NACA64_A17 @@ -0,0 +1,147 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object airfoilProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +airfoilData +( +// alpha C_l C_d + (-180.00 0.000 0.0198) + (-175.00 0.374 0.0341) + (-170.00 0.749 0.0955) + (-160.00 0.659 0.2807) + (-155.00 0.736 0.3919) + (-150.00 0.783 0.5086) + (-145.00 0.803 0.6267) + (-140.00 0.798 0.7427) + (-135.00 0.771 0.8537) + (-130.00 0.724 0.9574) + (-125.00 0.660 1.0519) + (-120.00 0.581 1.1355) + (-115.00 0.491 1.2070) + (-110.00 0.390 1.2656) + (-105.00 0.282 1.3104) + (-100.00 0.169 1.3410) + ( -95.00 0.052 1.3572) + ( -90.00 -0.067 1.3587) + ( -85.00 -0.184 1.3456) + ( -80.00 -0.299 1.3181) + ( -75.00 -0.409 1.2765) + ( -70.00 -0.512 1.2212) + ( -65.00 -0.606 1.1532) + ( -60.00 -0.689 1.0731) + ( -55.00 -0.759 0.9822) + ( -50.00 -0.814 0.8820) + ( -45.00 -0.850 0.7742) + ( -40.00 -0.866 0.6610) + ( -35.00 -0.860 0.5451) + ( -30.00 -0.829 0.4295) + ( -25.00 -0.853 0.3071) + ( -24.00 -0.870 0.2814) + ( -23.00 -0.890 0.2556) + ( -22.00 -0.911 0.2297) + ( -21.00 -0.934 0.2040) + ( -20.00 -0.958 0.1785) + ( -19.00 -0.982 0.1534) + ( -18.00 -1.005 0.1288) + ( -17.00 -1.082 0.1037) + ( -16.00 -1.113 0.0786) + ( -15.00 -1.105 0.0535) + ( -14.00 -1.078 0.0283) + ( -13.50 -1.053 0.0158) + ( -13.00 -1.015 0.0151) + ( -12.00 -0.904 0.0134) + ( -11.00 -0.807 0.0121) + ( -10.00 -0.711 0.0111) + ( -9.00 -0.595 0.0099) + ( -8.00 -0.478 0.0091) + ( -7.00 -0.375 0.0086) + ( -6.00 -0.264 0.0082) + ( -5.00 -0.151 0.0079) + ( -4.00 -0.017 0.0072) + ( -3.00 0.088 0.0064) + ( -2.00 0.213 0.0054) + ( -1.00 0.328 0.0052) + ( 0.00 0.442 0.0052) + ( 1.00 0.556 0.0052) + ( 2.00 0.670 0.0053) + ( 3.00 0.784 0.0053) + ( 4.00 0.898 0.0054) + ( 5.00 1.011 0.0058) + ( 6.00 1.103 0.0091) + ( 7.00 1.181 0.0113) + ( 8.00 1.257 0.0124) + ( 8.50 1.293 0.0130) + ( 9.00 1.326 0.0136) + ( 9.50 1.356 0.0143) + ( 10.00 1.382 0.0150) + ( 10.50 1.400 0.0267) + ( 11.00 1.415 0.0383) + ( 11.50 1.425 0.0498) + ( 12.00 1.434 0.0613) + ( 12.50 1.443 0.0727) + ( 13.00 1.451 0.0841) + ( 13.50 1.453 0.0954) + ( 14.00 1.448 0.1065) + ( 14.50 1.444 0.1176) + ( 15.00 1.445 0.1287) + ( 15.50 1.447 0.1398) + ( 16.00 1.448 0.1509) + ( 16.50 1.444 0.1619) + ( 17.00 1.438 0.1728) + ( 17.50 1.439 0.1837) + ( 18.00 1.448 0.1947) + ( 18.50 1.452 0.2057) + ( 19.00 1.448 0.2165) + ( 19.50 1.438 0.2272) + ( 20.00 1.428 0.2379) + ( 21.00 1.401 0.2590) + ( 22.00 1.359 0.2799) + ( 23.00 1.300 0.3004) + ( 24.00 1.220 0.3204) + ( 25.00 1.168 0.3377) + ( 26.00 1.116 0.3554) + ( 28.00 1.015 0.3916) + ( 30.00 0.926 0.4294) + ( 32.00 0.855 0.4690) + ( 35.00 0.800 0.5324) + ( 40.00 0.804 0.6452) + ( 45.00 0.793 0.7573) + ( 50.00 0.763 0.8664) + ( 55.00 0.717 0.9708) + ( 60.00 0.656 1.0693) + ( 65.00 0.582 1.1606) + ( 70.00 0.495 1.2438) + ( 75.00 0.398 1.3178) + ( 80.00 0.291 1.3809) + ( 85.00 0.176 1.4304) + ( 90.00 0.053 1.4565) + ( 95.00 -0.074 1.4533) + ( 100.00 -0.199 1.4345) + ( 105.00 -0.321 1.4004) + ( 110.00 -0.436 1.3512) + ( 115.00 -0.543 1.2874) + ( 120.00 -0.640 1.2099) + ( 125.00 -0.723 1.1196) + ( 130.00 -0.790 1.0179) + ( 135.00 -0.840 0.9064) + ( 140.00 -0.868 0.7871) + ( 145.00 -0.872 0.6627) + ( 150.00 -0.850 0.5363) + ( 155.00 -0.798 0.4116) + ( 160.00 -0.714 0.2931) + ( 170.00 -0.749 0.0971) + ( 175.00 -0.374 0.0334) + ( 180.00 0.000 0.0198) +); diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/polyMesh/blockMeshDict b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/polyMesh/blockMeshDict new file mode 100755 index 000000000..463f233e0 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/polyMesh/blockMeshDict @@ -0,0 +1,101 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object blockMeshDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../../setUp" + + + + +convertToMeters 1.0; + +vertices +( + ( $xMin $yMin $zMin) + ( $xMax $yMin $zMin) + ( $xMax $yMax $zMin) + ( $xMin $yMax $zMin) + ( $xMin $yMin $zMax) + ( $xMax $yMin $zMax) + ( $xMax $yMax $zMax) + ( $xMin $yMax $zMax) +); + +blocks +( + hex (0 1 2 3 4 5 6 7) ($nx $ny $nz) simpleGrading (1 1 1) +); + +edges +( +); + +boundary +( + lower + { + type wall; + faces + ( + (0 3 2 1) + ); + } + upper + { + type wall; + faces + ( + (4 5 6 7) + ); + } + west + { + type patch; + faces + ( + (0 4 7 3) + ); + } + east + { + type patch; + faces + ( + (1 2 6 5) + ); + } + north + { + type wall; + faces + ( + (3 7 6 2) + ); + } + south + { + type wall; + faces + ( + (0 1 5 4) + ); + } +); + +mergePatchPairs +( +); + +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/transportProperties b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/transportProperties new file mode 100755 index 000000000..3ee719c86 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/transportProperties @@ -0,0 +1,39 @@ +/*---------------------------------------------------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.openfoam.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + + root ""; + case ""; + instance ""; + local ""; + + class dictionary; + object transportProperties; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +transportModel Newtonian; + +// Molecular viscosity +nu nu [0 2 -1 0 0 0 0] $nu; + +// Reference temperature +TRef TRef [0 0 0 1 0 0 0] $TRef; + +// Prandtl numbers +Pr Pr [0 0 0 0 0 0 0] $Pr; +Prt Prt [0 0 0 0 0 0 0] $Prt; +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/turbineArrayProperties b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/turbineArrayProperties new file mode 100644 index 000000000..870751321 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/turbineArrayProperties @@ -0,0 +1,108 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object turbineArrayProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +globalProperties +{ + outputControl "timeStep"; + outputInterval 1; +} + +// _SSC_ +sscProperties +{ + sscEnabled true; //Enable/disable ssc, if not present defaults to False + nInputsToSSC 3; // Number of inputs EACH turbine passes to the super controller + nOutputsFromSSC 2; // Number of outputs the super controller sends to EACH turbine + sscControllerType "zeromqSSC"; // The type of SSC + sscMeasurementsFunction "default"; // Measurements function + zmqAddress "tcp://localhost:5553"; // zeroMQ connection port +} + +turbine0 +{ + turbineType "NREL5MWRef"; + includeNacelle true; + includeTower true; + baseLocation (1000.0 1500.0 0.0); + numBladePoints 40; + numNacellePoints 10; + numTowerPoints 40; + forceScalar 1.0; + bladePointDistType "uniform"; + nacellePointDistType "uniform"; + towerPointDistType "uniform"; + bladeSearchCellMethod "disk"; + bladeActuatorPointInterpType "integral"; + nacelleActuatorPointInterpType "linear"; + towerActuatorPointInterpType "linear"; + actuatorUpdateType "oldPosition"; + bladeForceProjectionType "uniformGaussian"; + nacelleForceProjectionType "diskGaussian"; + towerForceProjectionType "advanced"; + bladeForceProjectionDirection "localVelocityAligned"; + bladeEpsilon (20.0 0.0 0.0); + nacelleEpsilon (20.0 20.0 0.0); + towerEpsilon (20.0 20.0 0.0); + nacelleSampleDistance 1.0; + towerSampleDistance 3.5; + tipRootLossCorrType "Glauert"; + rotationDir "cw"; + Azimuth 0.0; + RotSpeed 9.1552; + TorqueGen 0.0; + Pitch 0.0; + NacYaw 270.0; + fluidDensity 1.23; + velocityDragCorrType "none"; +} + +turbine1 +{ + turbineType "NREL5MWRef"; + includeNacelle true; + includeTower true; + baseLocation (2000.0 1500.0 0.0); + numBladePoints 40; + numNacellePoints 10; + numTowerPoints 40; + forceScalar 1.0; + bladePointDistType "uniform"; + nacellePointDistType "uniform"; + towerPointDistType "uniform"; + bladeSearchCellMethod "disk"; + bladeActuatorPointInterpType "integral"; + nacelleActuatorPointInterpType "linear"; + towerActuatorPointInterpType "linear"; + actuatorUpdateType "oldPosition"; + bladeForceProjectionType "uniformGaussian"; + nacelleForceProjectionType "diskGaussian"; + towerForceProjectionType "advanced"; + bladeForceProjectionDirection "localVelocityAligned"; + bladeEpsilon (20.0 0.0 0.0); + nacelleEpsilon (20.0 20.0 0.0); + towerEpsilon (20.0 20.0 0.0); + nacelleSampleDistance 1.0; + towerSampleDistance 3.5; + tipRootLossCorrType "Glauert"; + rotationDir "cw"; + Azimuth 0.0; + RotSpeed 9.1552; + TorqueGen 0.0; + Pitch 0.0; + NacYaw 270.0; + fluidDensity 1.23; + velocityDragCorrType "none"; +} \ No newline at end of file diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/turbineProperties/NREL5MWRef b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/turbineProperties/NREL5MWRef new file mode 100644 index 000000000..60ef6953c --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/turbineProperties/NREL5MWRef @@ -0,0 +1,130 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object turbineProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +NumBl 3; +TipRad 63.0; +HubRad 1.5; +UndSling 0.0; +OverHang -5.01910; +NacelleLength 8; +NacelleFrontalArea 2; +NacelleCd 0.5; +TowerHt 87.6; +Twr2Shft 1.96256; +ShftTilt -5.0; +PreCone (-2.5 -2.5 -2.5); +GBRatio 97.0; +GBEfficiency 1.0; +GenEfficiency 0.944; +RatedRotSpeed 12.1; +GenIner 534.116; +HubIner 115.926E3; +BladeIner 11.776047E6; +GenTorqueControllerType "fiveRegion"; +//GenTorqueControllerType "speedTorqueTable"; +//GenTorqueControllerType "none"; +BladePitchControllerType "PID"; +//BladePitchControllerType "none"; +NacYawControllerType "yawSC"; +RotSpeedLimiter false; +GenTorqueRateLimiter true; +NacYawRateLimiter true; +BladePitchRateLimiter true; +SpeedFilterCornerFrequency 2.0; + + +GenTorqueControllerParams +{ + RateLimitGenTorque 15.0E3; + SpeedTorqueTable + ( + // gen speed (RPM) gen torque (N-m) + ( 670.00 0.0 ) + ( 871.00 20000.0 ) + ( 1161.96 32000.0 ) + ( 1173.70 43093.6 ) + ); + CutInGenSpeed 670.0; + Region2StartGenSpeed 871.0; + Region2EndGenSpeed 1161.963; + CutInGenTorque 0.0; + RatedGenTorque 43.09355E3; + KGen 2.55764E-2; +} + +BladePitchControllerParams +{ + RateLimitBladePitch 8.000; + PitchMin 0.000; + PitchMax 90.000; + PitchK 6.302336; + PitchControlKP 1.82620057; + PitchControlKI 0.78265750; + PitchControlKD 0.000; +} + +NacYawControllerParams +{ + RateLimitNacYaw 2.0; +} + + + + +Airfoils +( + "Cylinder1" + "Cylinder2" + "DU40_A17" + "DU35_A17" + "DU30_A17" + "DU25_A17" + "DU21_A17" + "NACA64_A17" +); + + +BladeData +( +// radius(m) c(m) twist(deg) thickness(% of c) userDef airfoil + (2.8667 3.542 13.308 1.0 0 0) + (5.6 3.854 13.308 1.0 0 0) + (8.3333 4.167 13.308 1.0 0 1) + (11.75 4.557 13.308 0.4 0 2) + (15.85 4.652 11.48 0.35 0 3) + (19.95 4.458 10.162 0.35 0 3) + (24.05 4.249 9.011 0.30 0 4) + (28.15 4.007 7.795 0.25 0 5) + (32.25 3.748 6.544 0.25 0 5) + (36.35 3.502 5.361 0.21 0 6) + (40.45 3.256 4.188 0.21 0 6) + (44.55 3.01 3.125 0.18 0 7) + (48.65 2.764 2.319 0.18 0 7) + (52.75 2.518 1.526 0.18 0 7) + (56.1667 2.313 0.863 0.18 0 7) + (58.9 2.086 0.37 0.18 0 7) + (61.6333 1.419 0.106 0.18 0 7) +); + + +TowerData +( +// height(m) c(m) twist(deg) thickness(% of c) userDef airfoil + (0.0 6.00 0.0 1.0 0 0) + (50.0 6.00 0.0 1.0 0 0) + (87.6 3.87 0.0 1.0 0 0) +); diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/turbulenceProperties b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/turbulenceProperties new file mode 100755 index 000000000..f8a545e0c --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/constant/turbulenceProperties @@ -0,0 +1,22 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object turbulenceProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +// simulationType RASModel; + simulationType LESModel; +// simulationType laminar; + +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/runscript.preprocess b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/runscript.preprocess new file mode 100755 index 000000000..4ca8ac963 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/runscript.preprocess @@ -0,0 +1,155 @@ +#!/bin/bash +#PBS -N ALMAdv_pisoFoam_preprocess +#PBS -l nodes=1:ppn=1 + + +# User Input. +OpenFOAMversion=2.4.x_SSC # OpenFOAM version +startTime=0 # Start time +updateBCType=0 # Boolean for whether or not the boundary condition types will be updated over + # what is in the initial conditions files. Leave it 0 for precursors. +inflowDir='west' # For inflow/outflow cases, specify the inflow direction. Choices are 'west', + # 'east', 'south', 'west', 'southWest', 'northWest', 'southEast', and + # 'northEast'. +refineMeshLocal=0 # Number of levels of local refinement (requires system/topoSetDict and + # system/refineHexMeshDict). +refineMeshGlobal=0 # Number of levels of global refinement. +parallel=0 # parallel untested! # Boolean for whether or not the preprocessing is run in parallel. +cores=1 # Enter the number of cores you will preprocess on. + + + + + + +# Define some functions for mesh refinement. +# Local refinement performed on one core. +refineMeshLocal() +{ + i=$1 + while [ $i -ge 1 ] + do + echo " -Performing level $i local refinement with topoSet/refineHexMesh" + echo " *selecting cells to refine..." + topoSet -dict system/topoSetDict.local.$i > log.topoSet.local.$i 2>&1 + + echo " *refining cells..." + refineHexMesh local -overwrite > log.refineHexMesh.local.$i 2>&1 + + let i=i-1 + done +} + +# Global refinement performed in parallel. +refineMeshGlobal() +{ + i=1 + while [ $i -le $1 ] + do + echo " -Performing level $i global refinement with refineMesh" + echo " *refining cells..." + mpirun -np $cores refineMesh -parallel -overwrite > log.refineMesh.global.$i 2>&1 + + let i=i+1 + done +} + + +# If running in parallel, cd to job launch directory +if [ $parallel -eq 1 ] + then + cd $PBS_O_WORKDIR +fi + + +# Source the bash profile and then call the appropriate OpenFOAM version function +# so that all the modules and environment variables get set. +echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." +source $HOME/.bash_profile +OpenFOAM-$OpenFOAMversion + + +# Copy the controlDict.1 (assuming this is the one the actual solver will start +# out with) to controlDict. OpenFOAM reads "controlDict", not the numbered ones. +echo "Getting the control dictionary ready..." +cp system/controlDict.1 system/controlDict + + +# Copy the "clean" .original initial fields to a working copy. OpenFOAM does not +# read the ".original" initial fields--that's why they remain clean. +echo "Getting the initial condition directory ready..." +rm -rf $startTime +cp -rf $startTime.original $startTime + + +# Build the mesh. +echo "Using blockMesh to create the base mesh..." +cp constant/polyMesh/blockMeshDict ./ +rm -rf constant/polyMesh/* +mv ./blockMeshDict constant/polyMesh +blockMesh > log.blockMesh 2>&1 + + +# The initial fields come from the precursor which is periodic on all sides. The turbine +# case has inflow and outflow. Call the changeDictionary utility to make the south and +# north sides inflow and outflow. +if [ $updateBCType -eq 1 ] + then + echo "Using changeDictionary to update boundary conditions..." + changeDictionary -dict system/changeDictionaryDict.updateBCs.$inflowDir > log.changeDictionary.updateBCs.$inflowDir.1 2>&1 +fi + + +# Do serial local refinement +echo "Using refineHexMesh to perform " $refineMeshLocal " of local refinement..." +refineMeshLocal $refineMeshLocal + + +# If running in paralle from this point forward, then do the following: +if [ $cores -gt 1 ] + then + # Decompose the mesh and solution files (serial) + echo "Using decomposePar to decompose the problem for parallel processing..." + decomposePar -cellDist -force > log.decomposePar 2>&1 + + # Check the mesh + echo "Running checkMesh to report mesh diagnostics..." + mpirun -np $cores checkMesh -parallel > log.checkMesh.1 2>&1 + + # Perform global refinement to desired resolution. + echo "Using refineMesh to perform " $refineMeshGlobal " of global refinement..." + refineMeshGlobal $refineMeshGlobal + + # The mesh got globally refined, but the solution file did not, so + # the boundary fields may not have the correct number of entries. + # Use the changeDictionary utility to overwrite the spatially varying + # boundary data to a uniform single value. + if [ $updateBCType -eq 1 ] + then + echo "Using changeDictionary to ensure that the boundaries have the correct number of faces..." + mpirun -np $cores changeDictionary -dict system/changeDictionaryDict.updateBCs.$inflowDir -parallel > log.changeDictionary.updateBCs.$inflowDir.1 2>&1 + fi + + # Renumber the mesh for better matrix solver performance. + echo "Using renumberMesh to renumber the mesh for better matrix conditioning..." + mpirun -np $cores renumberMesh -parallel -overwrite > log.renumberMesh 2>&1 + + # Do one last check on the mesh. + echo "Running checkMesh to report mesh diagnostics..." + mpirun -np $cores checkMesh -parallel > log.checkMesh.3 2>&1 + + +# Otherwise, run in serial as follows: +else + # Renumber the mesh. + echo "Using renumberMesh to renumber the mesh for better matrix conditioning..." + renumberMesh -overwrite > log.renumberMesh 2>&1 + + # Decompose the mesh and solution files (serial) + echo "Using decomposePar to decompose the problem for parallel processing..." + decomposePar -cellDist -force > log.decomposePar 2>&1 + + # Check the mesh. + echo "Running checkMesh to report mesh diagnostics..." + checkMesh > log.checkMesh.1 2>&1 +fi diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/runscript.removeAll b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/runscript.removeAll new file mode 100755 index 000000000..463332f98 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/runscript.removeAll @@ -0,0 +1,21 @@ +#!/bin/bash + +# Remove initial conditions and temporary files +rm -rf 0 +rm -rf system/controlDict + +# Remove logs +rm -rf log.* +rm -rf runscript.solve.1.o* runscript.solve.1.e* + +# Remove processor files and folders +rm -rf processor* + +# Remove simulation output +rm -rf postProcessing +rm -rf turbineOutput + +# Remove polyMesh data +cp constant/polyMesh/blockMeshDict ./ +rm -rf constant/polyMesh/* +mv ./blockMeshDict constant/polyMesh \ No newline at end of file diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/runscript.solve.1 b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/runscript.solve.1 new file mode 100755 index 000000000..62799917e --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/runscript.solve.1 @@ -0,0 +1,41 @@ +#!/bin/bash +#PBS -l walltime=48:00:00 +#PBS -l nodes=1:ppn=8 +#PBS -N "ALMAdv.ssc.zeroMQ" + + + +cd $PBS_O_WORKDIR + + + + +# User Input. +OpenFOAMversion=2.4.x_SSC # OpenFOAM version +startTime=0 # Start time +cores=8 # Enter the number of cores you will preprocess on. +runNumber=1 # Enter the run number (useful for keeping track of restarts). +solver=pisoFoamTurbine.ALMAdvanced # Enter the name of the flow solver. + + + +echo "Starting OpenFOAM job at: " $(date) +echo "using " $cores " cores" + + +# Source the bash profile and then call the appropriate OpenFOAM version function +# so that all the modules and environment variables get set. +echo "Sourcing the bash profile, loading modules, and setting the OpenFOAM environment variables..." +source $HOME/.bash_profile +OpenFOAM-$OpenFOAMversion + + +# Get the control dictionary for this particular run. +cp system/controlDict.$runNumber system/controlDict + + +# Run the solver. +(mpirun -np $cores $solver -parallel > log.$runNumber.$solver 2>&1) & +(cd zeromqSSC; matlab -nodisplay -noFigureWindows -logfile 'zeromqSSC_MATLAB.log' -r florisSSC) + +echo "Ending OpenFOAM job at: " $(date) \ No newline at end of file diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/setUp b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/setUp new file mode 100755 index 000000000..4ad533e07 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/setUp @@ -0,0 +1,93 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.4.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +// Domain size and number of cells. +xMin 0.0; // Minimum x-extent of domain (m). +yMin 0.0; // Minimum y-extent of domain (m). +zMin 0.0; // Minimum z-extent of domain (m). +xMax 3000.0; // Maximum x-extent of domain (m). +yMax 3000.0; // Maximum y-extent of domain (m). +zMax 1000.0; // Maximum z-extent of domain (m). +nx 100; // Number of cells in x-direction. +ny 100; // Number of cells in y-direction. +nz 33; // Number of cells in z-direction. + + + + +// Number of cores and domain decomposition information. +nCores 8; // Number of cores on which to run this case. +decompType simple; // Decomposition algorithm. "simple" and "scotch" are good choices. +decompOrder (4 2 1); // Order of the decomposition number of partitions in (x y z)-directions. + + + + +// Planar averaging and source term statistics options. +statisticsOn true; // Gather planar-averaged flow statistics. +statisticsFrequency 5; // Frequency in time steps of statistics gathering. + + + + +// Initial values for the variables. +// Note that U and T get overwritten if setFieldsABL is called. +U0Mag 8.00; // Initial condition for wind speed (m/s). +dir 270.0; // Initial condition for wind direction (deg). +windHeight 90.0; // Height at which to drive mean wind to U0Mag/dir (m). +p_rgh0 0.0; // Initial pressure (minus the hydrostatic variation and normalized by density) (m^2/s^2). +nuSgs0 0.0; // Initial SGS viscosity (m^2/s). +k0 0.1; // Initial SGS turbulent kinetic energy (m^2/s^2). +kappat0 0.0; // Initial SGS temperature diffusivity (m^2/s). +TGradUpper 0.003; // Potential temperature gradient above the strong inversion (K/m). +zInversion 750.0; // Height of the middle of the initial strong capping inversion (m). +inversionWidth 100.0; // Vertical width of the intial strong capping inversion (m). +TBottom 300.0; // Initial potential temperature at bottom of strong capping inversion (K). +TTop 305.0; // Initial potential temperature at top of strong capping inversion (K). + + + + +// General conditions and parameters. +Pr 0.7; // Molecular Prandtl number. +Prt 0.33333333; // Turbulent Prandtl number. +nu 1.0E-5; // Molecular viscosity (m^2/s). +TRef 300.0; // Reference potential temperature (K). +latitude 41.3; // Latitude on the Earth of the site (deg). +EarthPeriod 24.0; // Earth's rotation period (hr). + + + + +// SGS model inputs. +LESModel oneEqEddy; // SGS model selection. +ce 0.93; // SGS model constant. +ck 0.0673; // SGS model constant. + + + + +// Surface conditions. +qwall (0.0 0.0 0.0); // Temperature flux at wall (modify the z-value). A negative value is flux into domain (K-m/s). +Rwall (0.0 0.0 0.0 0.0 0.0 0.0); // Initial wall shear stress (m^2/s^2). +kappa 0.4; // von Karman constant. +z0 0.01; // Surface roughness (m). +betaM 16.0; // Monin-Obukhov wall shear stress model constant. +gammaM 5.0; // Monin-Obukhov wall shear stress model constant. +betaH 9.0; // Monin-Obukhov wall temperature flux model constant. +gammaH 7.8; // Monin-Obukhov wall temperature flux model constant. +alphaH 1.0; // Monin-Obukhov wall temperature flux model constant. +heatingRate 0.0; // Surface temperature change rate (when not directly setting temperature flux) (K/s). + + + + +#inputMode merge + +// ************************************************************************* // + diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs new file mode 100755 index 000000000..b4ab16ba4 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs @@ -0,0 +1,200 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.cyclic b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.cyclic new file mode 100755 index 000000000..9d7df3a40 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.cyclic @@ -0,0 +1,238 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + U + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + k + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + kappat + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + nuSgs + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + } + } + p_rgh + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + west + { + type cyclic; + } + east + { + type cyclic; + } + south + { + type cyclic; + } + north + { + type cyclic; + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.east b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.east new file mode 100755 index 000000000..75ea86de5 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.east @@ -0,0 +1,290 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.north b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.north new file mode 100755 index 000000000..ab34b5c5a --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.north @@ -0,0 +1,200 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + south + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + south + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + south + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + north + { + type fixedFluxPressure; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.northeast b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.northeast new file mode 100755 index 000000000..9ef569c78 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.northeast @@ -0,0 +1,290 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + south + { + type zeroGradient; + value uniform 300; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + south + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + south + { + type zeroGradient; + value uniform 0.1; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + north + { + type fixedFluxPressure; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.northwest b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.northwest new file mode 100755 index 000000000..f62b02acb --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.northwest @@ -0,0 +1,290 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + south + { + type zeroGradient; + value uniform 300; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + east + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + south + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + north + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + south + { + type zeroGradient; + value uniform 0.1; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + east + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + north + { + type zeroGradient; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + north + { + type fixedFluxPressure; + value uniform 0.0; + } + south + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedFluxPressure; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.south b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.south new file mode 100755 index 000000000..b4ab16ba4 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.south @@ -0,0 +1,200 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.southeast b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.southeast new file mode 100755 index 000000000..88a7ebf76 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.southeast @@ -0,0 +1,290 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + west + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + west + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + east + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + west + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + east + { + type fixedFluxPressure; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.southwest b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.southwest new file mode 100755 index 000000000..6e9078e8e --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.southwest @@ -0,0 +1,290 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + north + { + type zeroGradient; + value uniform 300; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + east + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + north + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + south + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + north + { + type zeroGradient; + value uniform 0.1; + } + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + east + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + south + { + type zeroGradient; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + south + { + type fixedFluxPressure; + value uniform 0.0; + } + north + { + type zeroGradient; + value uniform 0.0; + } + west + { + type fixedFluxPressure; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + south + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + north + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.west b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.west new file mode 100755 index 000000000..7dec20912 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/changeDictionaryDict.updateBCs.west @@ -0,0 +1,200 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object changeDictionaryDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dictionaryReplacement +{ + + // Specify + // - all fvPatchFields with potential non-uniform values + // - all fvPatchFields originating from meshing + // - all fvPatchFields originating from mesh-redistribution + + + T + { + boundaryField + { + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 300; + } + east + { + type zeroGradient; + value uniform 300; + } + } + } + U + { + boundaryField + { + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset (0 0 0); + value uniform (0 0 0); + } + east + { + type inletOutlet; + inletValue uniform (0 0 0); + value uniform (0 0 0); + } + } + } + k + { + boundaryField + { + west + { + type timeVaryingMappedFixedValue; + setAverage 0; + peturb 1e-05; + offset 0; + value uniform 0.1; + } + east + { + type zeroGradient; + value uniform 0.1; + } + } + } + kappat + { + boundaryField + { + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + nuSgs + { + boundaryField + { + west + { + type zeroGradient; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + } + } + p_rgh + { + boundaryField + { + west + { + type fixedFluxPressure; + value uniform 0.0; + } + east + { + type zeroGradient; + value uniform 0.0; + } + lower + { + type fixedFluxPressure; + value uniform 0.0; + } + upper + { + type fixedFluxPressure; + value uniform 0.0; + } + } + } + qwall + { + boundaryField + { + west + { + type fixedValue; + value uniform (0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0); + } + lower + { + type fixedValue; + value uniform (0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0); + } + } + } + Rwall + { + boundaryField + { + west + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + east + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + lower + { + type SchumannGrotzbach; + kappa 0.4; + z0 uniform 0.01; + betaM 16.0; + gammaM 5.0; + averageType "local"; + value uniform (0 0 0 0 0 0); + } + upper + { + type fixedValue; + value uniform (0 0 0 0 0 0); + } + } + } +} +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/controlDict.1 b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/controlDict.1 new file mode 100755 index 000000000..92a8952aa --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/controlDict.1 @@ -0,0 +1,66 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object controlDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + + application ABLSolver; + + libs ("libuserfiniteVolume.so" "libuserincompressibleLESModels.so"); + + startFrom startTime; + + startTime 0.0; + + stopAt endTime; + + endTime 1000.0; + + deltaT 0.5; + + writeControl adjustableRunTime; + + writeInterval 99000.0; + + purgeWrite 0; + + writeFormat ascii; + + writePrecision 8; + + writeCompression compressed; + + timeFormat general; + + timePrecision 8; + + runTimeModifiable yes; + + adjustTimeStep no; + + maxCo 0.75; + + maxDeltaT 25.0; + + startTimeMean 1000.0; + + startTimeCorr 1000.0; + + functions + { + #include "sampling/sliceDataInstantaneous" + } + +// ************************************************************************* // + diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/decomposeParDict b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/decomposeParDict new file mode 100755 index 000000000..c7bea2ee8 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/decomposeParDict @@ -0,0 +1,76 @@ +/*-------------------------------*- C++ -*---------------------------------*\ +| ========= | +| \\ / OpenFOAM | +| \\ / | +| \\ / The Open Source CFD Toolbox | +| \\/ http://www.OpenFOAM.org | +\*-------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + note "mesh decomposition control dictionary"; + location "system"; + object decomposeParDict; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +numberOfSubdomains $nCores; +method $decompType; +//preservePatches (north south east west); + +simpleCoeffs +{ + n $decompOrder; + delta 0.001; +} + +hierarchicalCoeffs +{ + n (1 1 3); + delta 0.001; + order xyz; +} + +metisCoeffs +{ + processorWeights + ( + ); +} + +scotchCoeffs +{ + //processorWeights + //( + // 1 + // 1 + // 1 + // 1 + //); + //writeGraph true; + //strategy "b"; +} + +manualCoeffs +{ + dataFile "decompositionData"; +} + + +//// Is the case distributed +distributed no; +//// Per slave (so nProcs-1 entries) the directory above the case. +//roots +//( +// "/tmp" +// "/tmp" +//); + + +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/fvSchemes b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/fvSchemes new file mode 100755 index 000000000..ead2aeb21 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/fvSchemes @@ -0,0 +1,85 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSchemes; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +ddtSchemes +{ + default backward; +// default CrankNicolson 1.0; +} + +gradSchemes +{ + default Gauss linear; + grad(U) Gauss linear; +} + +divSchemes +{ + default Gauss linear; + //div(phi,U) Gauss linear; + //div(phi,T) Gauss linear; + div(phi,U) Gauss localBlended linear upwind; + div(phi,T) Gauss localBlended linear upwind; + div(R) Gauss linear; + div(U) Gauss linear; + div((nuEff*dev(grad(U).T()))) Gauss linear; + div(B) Gauss linear; + div(phi,B) Gauss linear; + div(phi,k) Gauss linear; +} + +laplacianSchemes +{ + default Gauss linear uncorrected; + laplacian(rUA,p) Gauss linear uncorrected; + laplacian((1|A(U)),p) Gauss linear uncorrected; + laplacian(interpolate((1|A(U))),p) Gauss linear uncorrected; + laplacian(interpolate((1|A(U))),pd) Gauss linear uncorrected; + laplacian(nu,U) Gauss linear uncorrected; + laplacian(nuEff,U) Gauss linear uncorrected; + laplacian(kappaEff,T) Gauss linear uncorrected; + laplacian(DBEff,B) Gauss linear uncorrected; + laplacian(nuSgs,U) Gauss linear uncorrected; +} + +interpolationSchemes +{ + default linear; +} + +snGradSchemes +{ + default uncorrected; +} + +fluxRequired +{ + default no; + p ; +} + +schemeBlending +{ + xBlending1 -10.0; + xBlending2 0.0; + xBlending3 60.0; + xBlending4 70.0; + blendingFactor1 0.85; + blendingFactor2 1.00; +} + +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/fvSolution b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/fvSolution new file mode 100755 index 000000000..b3f1a7e4a --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/fvSolution @@ -0,0 +1,102 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSolution; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +solvers +{ + "(p_rgh|p)" + { + solver PCG; + preconditioner + { + preconditioner GAMG; + tolerance 1e-05; + relTol 0.01; + smoother DICGaussSeidel; + nPreSweeps 0; + nPostSweeps 2; + nFinestSweeps 2; + cacheAgglomeration true; + nCellsInCoarsestLevel 100; + agglomerator faceAreaPair; + mergeLevels 2; + } + tolerance 1e-06; + relTol 0.01; + maxIter 1000; + } + + "(p_rghFinal|pFinal)" + { + $p; + relTol 0.0; + } + + "(U|T|k|epsilon|R)" + { + solver PBiCG; + preconditioner DILU; + tolerance 1e-6; + relTol 0.1; + maxIter 1000; + } + + "(U|T|k|epsilon|R)Final" + { + $U; + relTol 0.0; + } + + "(flm|fmm)" + { + solver PBiCG; + preconditioner DILU; + tolerance 1e-6; + relTol 0.1; + } + + "(flm|fmm)Final" + { + $flm; + relTol 0.0; + } + + +} + +PISO +{ + momentumPredictor yes; + nOuterCorrectors 1; + nCorrectors 3; + nNonOrthogonalCorrectors 0; + pRefPoint (-39.0 0 11.5); + pRefValue 0; +} + +relaxationFactors +{ + fields + { + } + equations + { + "(U|T|k|epsilon|R)" 1.0; + "(U|T|k|epsilon|R)Final" 1.0; + } +} + +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/sampling/sliceDataInstantaneous b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/sampling/sliceDataInstantaneous new file mode 100755 index 000000000..d80b1da9d --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/sampling/sliceDataInstantaneous @@ -0,0 +1,59 @@ + sliceDataInstantaneous + { + type surfaces; + functionObjectLibs ("libsampling.so"); + enabled true; + interpolationScheme cell; + outputControl adjustableTime; + writeInterval 5; + surfaceFormat vtk; + fields + ( + U + ); + surfaces + ( + slice_horizontal + { + type plane; + basePoint (1500.01 1500.01 90.01); + normalVector (0 0 1); + triangulate false; + } + slice_vertical_x500 + { + type plane; + basePoint (500.01 1500.01 90.01); + normalVector (1 0 0); + triangulate false; + } + slice_vertical_x3D + { + type plane; + basePoint (1379.2 1500.01 90.01); + normalVector (1 0 0); + triangulate false; + } + slice_vertical_x5D + { + type plane; + basePoint (1632.0 1500.01 90.01); + normalVector (1 0 0); + triangulate false; + } + slice_vertical_x7D + { + type plane; + basePoint (1884.8 1500.01 90.01); + normalVector (1 0 0); + triangulate false; + } + slice_vertical_x10D + { + type plane; + basePoint (2264.0 1500.01 90.01); + normalVector (1 0 0); + triangulate false; + } + ); + } diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/setFieldsABLDict b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/setFieldsABLDict new file mode 100755 index 000000000..11b48e0bc --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/system/setFieldsABLDict @@ -0,0 +1,504 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.0.x | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +FoamFile +{ + version 2.0; + format ascii; + + root ""; + case ""; + instance ""; + local ""; + + class dictionary; + object setFieldsABLDict; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "../setUp" + + +// Extents of the domain. +xMin $xMin; +yMin $yMin; +zMin $zMin; + +xMax $xMax; +yMax $yMax; +zMax $zMax; + +zRef $zMax; + +// Specify if distance from wall should be used as z. +useWallDistZ false; +scaleVelocityWithHeight false; + + +// Specify how to initialze the base velocity and temperature profile. +velocityInitType "table"; +//velocityInitType "log"; +//velocityInitType "geostrophic"; +temperatureInitType "table"; +//temperatureInitType "simple"; + +// Maximum perturbation of streamwise/spanwise flow near surface. +deltaU 0.25; +deltaV 0.25; + +// Total periods of perturbations in streamwise/spanwise in the domain. +Uperiods 12.0; +Vperiods 12.0; + +// Percentage of domain height (zMax) where peak in perturbation +// magnitude occurs. +zPeak 0.015; + +// Initial height of the center of the capping inversion. +zInversion $zInversion; + +// Width of the capping inversion. +widthInversion $inversionWidth; + +// Potential temperature at the bottom and top of the capping inversion. +Tbottom $TBottom; +Ttop $TTop; + +// Maximum temperature fluctuation size below capping inversion. +TPrimeScale 0.0; + +// Height rate of change of potential temperature above the inversion. +dTdz $TGradUpper; + +// Geostrophic wind speed magnitude. +Ug $U0Mag; + +// Geostrophic wind speed direction. +UgDir $dir; + +// Aerodynamic roughness height of surface. +z0 $z0; + +// von Karman constant. +kappa $kappa; + +// Vertical profile table. +profileTable +( +// z U V T + (0.0 0.0 0.0 273.121917725) + (5.0 1.82671529027 1.98969371553 282.524156211) + (10.0 2.52983624172 2.77228242751 283.156504284) + (15.0 3.01282071998 3.35521702288 283.64108812) + (20.0 3.35996148006 3.78823607698 284.090761147) + (25.0 3.8038057643 4.37960852586 284.554077196) + (30.0 4.03596125279 4.70538923119 284.966777157) + (35.0 4.38133296535 5.23253766126 285.360167677) + (40.0 4.56992779673 5.53523659867 285.747101612) + (45.0 4.80994398595 5.96180841679 286.095879197) + (50.0 5.00816921409 6.32774876853 286.444585293) + (55.0 5.14154903327 6.60160807137 286.787914506) + (60.0 5.36818530188 7.08896005703 287.063199891) + (65.0 5.44703987742 7.27484159809 287.379906732) + (70.0 5.57604433164 7.60608624795 287.638417176) + (75.0 5.72370142776 7.99632935101 287.863981004) + (80.0 5.77619905069 8.15139018101 288.127106742) + (85.0 5.87149793296 8.46369430537 288.331005696) + (90.0 5.98111916718 8.83268873958 288.509035882) + (95.0 6.01697152506 8.97407895539 288.724664101) + (100.0 6.06967854005 9.19927028309 288.909565287) + (105.0 6.1450628792 9.53721293929 289.053124377) + (110.0 6.19167607924 9.76288104253 289.198531813) + (115.0 6.22489630605 9.93628531022 289.344799656) + (120.0 6.27421288656 10.216282683 289.462005) + (125.0 6.32645248876 10.5156368594 289.57393273) + (130.0 6.34668810144 10.6457361726 289.712125634) + (135.0 6.36434613795 10.762203832 289.852433913) + (140.0 6.39842793739 11.0196195883 289.95191863) + (145.0 6.4342454375 11.2919310606 290.047089019) + (150.0 6.45180421766 11.4367005351 290.150649381) + (155.0 6.46406875681 11.544488333 290.256642472) + (160.0 6.48170756073 11.7056278368 290.348224267) + (165.0 6.50382814701 11.9112591447 290.427787992) + (170.0 6.52550956366 12.1127414485 290.506470121) + (175.0 6.54550549533 12.298300329 290.581768788) + (180.0 6.56550142701 12.4838592096 290.657067454) + (185.0 6.58511534034 12.6567515091 290.735008491) + (190.0 6.6045979288 12.8252894701 290.813857884) + (195.0 6.62432001649 12.9896812983 290.892328604) + (200.0 6.64532587961 13.1318488244 290.968769537) + (205.0 6.66633174272 13.2740163505 291.045210471) + (210.0 6.69104111181 13.4098514016 291.117435921) + (215.0 6.72036475996 13.5377966838 291.184409209) + (220.0 6.74968840812 13.6657419659 291.251382497) + (225.0 6.77805691412 13.7640369251 291.318657013) + (230.0 6.80578882059 13.8425700289 291.386132296) + (235.0 6.83352072706 13.9211031327 291.453607578) + (240.0 6.86307156947 13.9862481909 291.518273832) + (245.0 6.89380511232 14.0426881336 291.581113612) + (250.0 6.92453865516 14.0991280764 291.643953391) + (255.0 6.95361693104 14.1462680315 291.704700258) + (260.0 6.98077095142 14.1825967081 291.763014104) + (265.0 7.0079249718 14.2189253847 291.82132795) + (270.0 7.03507703408 14.2541299666 291.879606535) + (275.0 7.0622194383 14.283790106 291.937711201) + (280.0 7.08936184253 14.3134502454 291.995815867) + (285.0 7.11650424675 14.3431103848 292.053920533) + (290.0 7.1430391081 14.369131837 292.11328027) + (295.0 7.16932392788 14.3936557439 292.173156546) + (300.0 7.19560874767 14.4181796507 292.233032822) + (305.0 7.22180906756 14.4424461024 292.292838021) + (310.0 7.24680913749 14.4630556198 292.351633627) + (315.0 7.27180920741 14.4836651372 292.410429232) + (320.0 7.29680927734 14.5042746546 292.469224837) + (325.0 7.32153609499 14.5243042572 292.528664796) + (330.0 7.34543057757 14.5425674214 292.590067475) + (335.0 7.36932506015 14.5608305855 292.651470155) + (340.0 7.39321954273 14.5790937496 292.712872834) + (345.0 7.41696733387 14.597025575 292.773542958) + (350.0 7.44026003553 14.6139294685 292.831940429) + (355.0 7.46355273718 14.6308333621 292.890337899) + (360.0 7.48684543884 14.6477372556 292.94873537) + (365.0 7.51013186129 14.6646271523 293.007149353) + (370.0 7.53322339247 14.68108262 293.066075821) + (375.0 7.55631492366 14.6975380877 293.12500229) + (380.0 7.57940645484 14.7139935554 293.183928758) + (385.0 7.60249798603 14.7304490231 293.242855226) + (390.0 7.6257582057 14.7463924565 293.301506178) + (395.0 7.64912373233 14.7620162427 293.359985132) + (400.0 7.67248925896 14.7776400289 293.418464087) + (405.0 7.69585478559 14.7932638151 293.476943042) + (410.0 7.71922031222 14.8088876013 293.535421996) + (415.0 7.74300228036 14.8230663689 293.592791002) + (420.0 7.7667927399 14.8372156721 293.650137374) + (425.0 7.79058319945 14.8513649753 293.707483747) + (430.0 7.81437365899 14.8655142784 293.76483012) + (435.0 7.83815083397 14.8793492717 293.821767406) + (440.0 7.86181714661 14.8905612872 293.875290779) + (445.0 7.88548345926 14.9017733027 293.928814153) + (450.0 7.9091497719 14.9129853182 293.982337526) + (455.0 7.93281608455 14.9241973336 294.035860899) + (460.0 7.95648239719 14.9354093491 294.089384273) + (465.0 7.97905964048 14.9423301431 294.14128451) + (470.0 8.0016312311 14.9492286641 294.193176323) + (475.0 8.02420282171 14.956127185 294.245068135) + (480.0 8.04677441233 14.9630257059 294.296959948) + (485.0 8.06934600294 14.9699242269 294.34885176) + (490.0 8.0912068028 14.9742300558 294.40025773) + (495.0 8.11235909886 14.9759515346 294.45117942) + (500.0 8.13351139492 14.9776730134 294.502101111) + (505.0 8.15466369098 14.9793944922 294.553022801) + (510.0 8.17581598704 14.981115971 294.603944491) + (515.0 8.19696828309 14.9828374498 294.654866181) + (520.0 8.21724149816 14.9808198644 294.704354156) + (525.0 8.2364694612 14.9743564264 294.752137402) + (530.0 8.25569742424 14.9678929884 294.799920649) + (535.0 8.27492538727 14.9614295505 294.847703896) + (540.0 8.29415335031 14.9549661125 294.895487143) + (545.0 8.31338131334 14.9485026745 294.943270389) + (550.0 8.33260927638 14.9420392365 294.991053636) + (555.0 8.35050488468 14.9266129312 295.036341098) + (560.0 8.36808840645 14.9090871924 295.081043956) + (565.0 8.38567192822 14.8915614535 295.125746813) + (570.0 8.40325544999 14.8740357147 295.170449671) + (575.0 8.42083897176 14.8565099758 295.215152528) + (580.0 8.43842249352 14.838984237 295.259855386) + (585.0 8.45600601529 14.8214584982 295.304558243) + (590.0 8.47264685758 14.7968218302 295.348171206) + (595.0 8.48834031368 14.765038729 295.390688832) + (600.0 8.50403376979 14.7332556278 295.433206459) + (605.0 8.51972722589 14.7014725265 295.475724085) + (610.0 8.53542068199 14.6696894253 295.518241712) + (615.0 8.55111413809 14.6379063241 295.560759338) + (620.0 8.56680759419 14.6061232229 295.603276965) + (625.0 8.5825010503 14.5743401216 295.645794591) + (630.0 8.59715715424 14.5346556613 295.689519112) + (635.0 8.61058749747 14.4856347615 295.734669729) + (640.0 8.62401784069 14.4366138617 295.779820347) + (645.0 8.63744818391 14.3875929619 295.824970964) + (650.0 8.65087852713 14.338572062 295.870121581) + (655.0 8.66430887036 14.2895511622 295.915272198) + (660.0 8.67773921358 14.2405302624 295.960422815) + (665.0 8.6911695568 14.1915093626 296.005573433) + (670.0 8.70459990003 14.1424884628 296.05072405) + (675.0 8.71498597608 14.0837507537 296.096336227) + (680.0 8.72352399234 14.0191143362 296.142228601) + (685.0 8.7320620086 13.9544779188 296.188120975) + (690.0 8.74060002486 13.8898415013 296.234013348) + (695.0 8.74913804112 13.8252050838 296.279905722) + (700.0 8.75767605739 13.7605686663 296.325798096) + (705.0 8.76621407365 13.6959322489 296.371690469) + (710.0 8.77475208991 13.6312958314 296.417582843) + (715.0 8.78329010617 13.5666594139 296.463475217) + (720.0 8.79182812243 13.5020229965 296.50936759) + (725.0 8.79189547444 13.4277463368 296.562527014) + (730.0 8.79098910472 13.3523615098 296.616521801) + (735.0 8.79008273499 13.2769766828 296.670516587) + (740.0 8.78917636527 13.2015918559 296.724511374) + (745.0 8.78826999555 13.1262070289 296.778506161) + (750.0 8.78736362582 13.0508222019 296.832500948) + (755.0 8.7864572561 12.9754373749 296.886495735) + (760.0 8.78555088638 12.9000525479 296.940490522) + (765.0 8.78464451665 12.824667721 296.994485308) + (770.0 8.78373814693 12.749282894 297.048480095) + (775.0 8.78092431283 12.6731698157 297.101321687) + (780.0 8.77050848097 12.594154369 297.149567342) + (785.0 8.76009264911 12.5151389222 297.197812997) + (790.0 8.74967681725 12.4361234755 297.246058652) + (795.0 8.73926098539 12.3571080288 297.294304307) + (800.0 8.72884515353 12.278092582 297.342549962) + (805.0 8.71842932167 12.1990771353 297.390795617) + (810.0 8.70801348981 12.1200616885 297.439041272) + (815.0 8.69759765795 12.0410462418 297.487286927) + (820.0 8.68718182609 11.9620307951 297.535532582) + (825.0 8.67676599423 11.8830153483 297.583778237) + (830.0 8.66635016237 11.8039999016 297.632023892) + (835.0 8.65380285705 11.7267327361 297.688031136) + (840.0 8.63847548104 11.6517458454 297.754161782) + (845.0 8.62314810503 11.5767589547 297.820292429) + (850.0 8.60782072902 11.5017720641 297.886423076) + (855.0 8.59249335301 11.4267851734 297.952553722) + (860.0 8.57716597701 11.3517982828 298.018684369) + (865.0 8.561838601 11.2768113921 298.084815016) + (870.0 8.54651122499 11.2018245015 298.150945663) + (875.0 8.53118384898 11.1268376108 298.217076309) + (880.0 8.51585647297 11.0518507201 298.283206956) + (885.0 8.50052909696 10.9768638295 298.349337603) + (890.0 8.48520172096 10.9018769388 298.41546825) + (895.0 8.46987434495 10.8268900482 298.481598896) + (900.0 8.45883220551 10.7541011047 298.547345535) + (905.0 8.45238242046 10.6836676328 298.612680644) + (910.0 8.44593263542 10.6132341608 298.678015753) + (915.0 8.43948285037 10.5428006888 298.743350863) + (920.0 8.43303306533 10.4723672168 298.808685972) + (925.0 8.42658328028 10.4019337449 298.874021081) + (930.0 8.42013349524 10.3315002729 298.93935619) + (935.0 8.41368371019 10.2610668009 299.004691299) + (940.0 8.40723392515 10.190633329 299.070026409) + (945.0 8.4007841401 10.120199857 299.135361518) + (950.0 8.39433435506 10.049766385 299.200696627) + (955.0 8.38788457001 9.97933291304 299.266031736) + (960.0 8.38143478497 9.90889944107 299.331366845) + (965.0 8.37498499992 9.8384659691 299.396701955) + (970.0 8.37175628862 9.76984547069 299.458148741) + (975.0 8.3787220489 9.70696290595 299.507289259) + (980.0 8.38568780918 9.64408034121 299.556429777) + (985.0 8.39265356946 9.58119777647 299.605570296) + (990.0 8.39961932974 9.51831521173 299.654710814) + (995.0 8.40658509002 9.45543264699 299.703851332) + (1000.0 8.4135508503 9.39255008225 299.752991851) + (1005.0 8.42051661058 9.32966751751 299.802132369) + (1010.0 8.42748237086 9.26678495277 299.851272887) + (1015.0 8.43444813113 9.20390238803 299.900413405) + (1020.0 8.44141389141 9.14101982329 299.949553924) + (1025.0 8.44837965169 9.07813725854 299.998694442) + (1030.0 8.45534541197 9.0152546938 300.04783496) + (1035.0 8.46231117225 8.95237212906 300.096975478) + (1040.0 8.46927693253 8.88948956432 300.146115997) + (1045.0 8.47624269281 8.82660699958 300.195256515) + (1050.0 8.48495783258 8.77319458603 300.238852282) + (1055.0 8.49495774699 8.72673721576 300.278375887) + (1060.0 8.5049576614 8.6802798455 300.317899492) + (1065.0 8.51495757581 8.63382247523 300.357423097) + (1070.0 8.52495749023 8.58736510496 300.396946702) + (1075.0 8.53495740464 8.5409077347 300.436470307) + (1080.0 8.54495731905 8.49445036443 300.475993912) + (1085.0 8.55495723346 8.44799299416 300.515517517) + (1090.0 8.56495714787 8.4015356239 300.555041122) + (1095.0 8.57495706228 8.35507825363 300.594564727) + (1100.0 8.58495697669 8.30862088336 300.634088332) + (1105.0 8.5949568911 8.2621635131 300.673611937) + (1110.0 8.60495680552 8.21570614283 300.713135542) + (1115.0 8.61495671993 8.16924877256 300.752659147) + (1120.0 8.62495663434 8.1227914023 300.792182752) + (1125.0 8.63495654875 8.07633403203 300.831706357) + (1130.0 8.64495646316 8.02987666176 300.871229962) + (1135.0 8.65360052964 7.98996489564 300.907704255) + (1140.0 8.65972902324 7.96219751809 300.938521005) + (1145.0 8.66585751685 7.93443014055 300.969337756) + (1150.0 8.67198601045 7.906662763 301.000154506) + (1155.0 8.67811450406 7.87889538546 301.030971256) + (1160.0 8.68424299766 7.85112800791 301.061788006) + (1165.0 8.69037149126 7.82336063037 301.092604757) + (1170.0 8.69649998487 7.79559325282 301.123421507) + (1175.0 8.70262847847 7.76782587527 301.154238257) + (1180.0 8.70875697208 7.74005849773 301.185055007) + (1185.0 8.71488546568 7.71229112018 301.215871758) + (1190.0 8.72101395929 7.68452374264 301.246688508) + (1195.0 8.72714245289 7.65675636509 301.277505258) + (1200.0 8.7332709465 7.62898898755 301.308322009) + (1205.0 8.7393994401 7.60122161 301.339138759) + (1210.0 8.74552793371 7.57345423246 301.369955509) + (1215.0 8.75165642731 7.54568685491 301.400772259) + (1220.0 8.75778492092 7.51791947737 301.43158901) + (1225.0 8.76391341452 7.49015209982 301.46240576) + (1230.0 8.76818252215 7.46990516883 301.489568668) + (1235.0 8.76988179508 7.46005215541 301.511681645) + (1240.0 8.771581068 7.45019914198 301.533794623) + (1245.0 8.77328034093 7.44034612856 301.5559076) + (1250.0 8.77497961385 7.43049311513 301.578020578) + (1255.0 8.77667888677 7.42064010171 301.600133555) + (1260.0 8.7783781597 7.41078708828 301.622246532) + (1265.0 8.78007743262 7.40093407485 301.64435951) + (1270.0 8.78177670555 7.39108106143 301.666472487) + (1275.0 8.78347597847 7.381228048 301.688585464) + (1280.0 8.7851752514 7.37137503458 301.710698442) + (1285.0 8.78687452432 7.36152202115 301.732811419) + (1290.0 8.78857379725 7.35166900773 301.754924397) + (1295.0 8.79027307017 7.3418159943 301.777037374) + (1300.0 8.7919723431 7.33196298088 301.799150351) + (1305.0 8.79367161602 7.32210996745 301.821263329) + (1310.0 8.79537088895 7.31225695402 301.843376306) + (1315.0 8.79707016187 7.3024039406 301.865489283) + (1320.0 8.79876943479 7.29255092717 301.887602261) + (1325.0 8.80046870772 7.28269791375 301.909715238) + (1330.0 8.80216798064 7.27284490032 301.931828216) + (1335.0 8.80345002487 7.27037429336 301.950702634) + (1340.0 8.80449597234 7.27208116099 301.967744453) + (1345.0 8.8055419198 7.27378802862 301.984786271) + (1350.0 8.80658786727 7.27549489624 302.00182809) + (1355.0 8.80763381473 7.27720176387 302.018869908) + (1360.0 8.8086797622 7.2789086315 302.035911727) + (1365.0 8.80972570966 7.28061549913 302.052953545) + (1370.0 8.81077165713 7.28232236676 302.069995364) + (1375.0 8.81181760459 7.28402923439 302.087037182) + (1380.0 8.81286355206 7.28573610202 302.104079001) + (1385.0 8.81390949952 7.28744296965 302.121120819) + (1390.0 8.81495544699 7.28914983727 302.138162638) + (1395.0 8.81600139445 7.2908567049 302.155204456) + (1400.0 8.81704734192 7.29256357253 302.172246275) + (1405.0 8.81809328938 7.29427044016 302.189288094) + (1410.0 8.81913923685 7.29597730779 302.206329912) + (1415.0 8.82018518431 7.29768417542 302.223371731) + (1420.0 8.82123113178 7.29939104305 302.240413549) + (1425.0 8.82227707924 7.30109791068 302.257455368) + (1430.0 8.82332302671 7.30280477831 302.274497186) + (1435.0 8.82436897417 7.30451164593 302.291539005) + (1440.0 8.82541492164 7.30621851356 302.308580823) + (1445.0 8.8264608691 7.30792538119 302.325622642) + (1450.0 8.82980499965 7.31411337437 302.342200633) + (1455.0 8.83363827328 7.32125512601 302.358679903) + (1460.0 8.83747154691 7.32839687764 302.375159173) + (1465.0 8.84130482054 7.33553862927 302.391638443) + (1470.0 8.84513809417 7.34268038091 302.408117713) + (1475.0 8.8489713678 7.34982213254 302.424596984) + (1480.0 8.85280464143 7.35696388418 302.441076254) + (1485.0 8.85663791506 7.36410563581 302.457555524) + (1490.0 8.86047118869 7.37124738745 302.474034794) + (1495.0 8.86430446231 7.37838913908 302.490514064) + (1500.0 8.86813773594 7.38553089071 302.506993334) + (1505.0 8.87197100957 7.39267264235 302.523472605) + (1510.0 8.8758042832 7.39981439398 302.539951875) + (1515.0 8.87963755683 7.40695614562 302.556431145) + (1520.0 8.88347083046 7.41409789725 302.572910415) + (1525.0 8.88730410409 7.42123964888 302.589389685) + (1530.0 8.89113737772 7.42838140052 302.605868955) + (1535.0 8.89497065135 7.43552315215 302.622348226) + (1540.0 8.89880392498 7.44266490379 302.638827496) + (1545.0 8.90263719861 7.44980665542 302.655306766) + (1550.0 8.90647047224 7.45694840705 302.671786036) + (1555.0 8.91030374586 7.46409015869 302.688265306) + (1560.0 8.91413701949 7.47123191032 302.704744577) + (1565.0 8.91797029312 7.47837366196 302.721223847) + (1570.0 8.92180356675 7.48551541359 302.737703117) + (1575.0 8.92995697971 7.48958529161 302.756743245) + (1580.0 8.93926578965 7.49283361431 302.77646826) + (1585.0 8.94857459959 7.496081937 302.796193275) + (1590.0 8.95788340953 7.49933025969 302.81591829) + (1595.0 8.96719221947 7.50257858238 302.835643305) + (1600.0 8.97650102941 7.50582690508 302.85536832) + (1605.0 8.98580983935 7.50907522777 302.875093335) + (1610.0 8.9951186493 7.51232355046 302.89481835) + (1615.0 9.00442745924 7.51557187315 302.914543365) + (1620.0 9.01373626918 7.51882019585 302.93426838) + (1625.0 9.02304507912 7.52206851854 302.953993395) + (1630.0 9.03235388906 7.52531684123 302.973718411) + (1635.0 9.041662699 7.52856516392 302.993443426) + (1640.0 9.05097150894 7.53181348662 303.013168441) + (1645.0 9.06028031888 7.53506180931 303.032893456) + (1650.0 9.06958912882 7.538310132 303.052618471) + (1655.0 9.07889793876 7.5415584547 303.072343486) + (1660.0 9.0882067487 7.54480677739 303.092068501) + (1665.0 9.09751555864 7.54805510008 303.111793516) + (1670.0 9.10682436858 7.55130342277 303.131518531) + (1675.0 9.11613317852 7.55455174547 303.151243546) + (1680.0 9.12544198846 7.55780006816 303.170968561) + (1685.0 9.1347507984 7.56104839085 303.190693576) + (1690.0 9.14405960834 7.56429671354 303.210418591) + (1695.0 9.15336841829 7.56754503624 303.230143606) + (1700.0 9.16267722823 7.57079335893 303.249868621) + (1705.0 9.17198603817 7.57404168162 303.269593636) + (1710.0 9.18349377603 7.57239347669 303.290540127) + (1715.0 9.19922226437 7.56134659115 303.31383119) + (1720.0 9.2149507527 7.55029970561 303.337122252) + (1725.0 9.23067924103 7.53925282007 303.360413315) + (1730.0 9.24640772936 7.52820593453 303.383704377) + (1735.0 9.2621362177 7.51715904899 303.40699544) + (1740.0 9.27786470603 7.50611216345 303.430286502) + (1745.0 9.29359319436 7.49506527791 303.453577565) + (1750.0 9.3093216827 7.48401839237 303.476868627) + (1755.0 9.32505017103 7.47297150683 303.50015969) + (1760.0 9.34077865936 7.46192462129 303.523450752) + (1765.0 9.35650714769 7.45087773575 303.546741815) + (1770.0 9.37223563603 7.43983085021 303.570032877) + (1775.0 9.38796412436 7.42878396467 303.59332394) + (1780.0 9.40369261269 7.41773707912 303.616615003) + (1785.0 9.41942110102 7.40669019358 303.639906065) + (1790.0 9.43514958936 7.39564330804 303.663197128) + (1795.0 9.45087807769 7.3845964225 303.68648819) + (1800.0 9.46660656602 7.37354953696 303.709779253) + (1805.0 9.48233505436 7.36250265142 303.733070315) + (1810.0 9.49806354269 7.35145576588 303.756361378) + (1815.0 9.51379203102 7.34040888034 303.77965244) + (1820.0 9.52952051935 7.3293619948 303.802943503) + (1825.0 9.54524900769 7.31831510926 303.826234565) + (1830.0 9.56097749602 7.30726822372 303.849525628) + (1835.0 9.57670598435 7.29622133818 303.87281669) + (1840.0 9.59243447268 7.28517445264 303.896107753) + (1845.0 9.60816296102 7.2741275671 303.919398815) + (1850.0 9.62389144935 7.26308068156 303.942689878) + (1855.0 9.63961993768 7.25203379602 303.96598094) + (1860.0 9.65432709188 7.2376578099 303.988680381) + (1865.0 9.66596304977 7.21327107309 304.009600791) + (1870.0 9.67759900765 7.18888433629 304.0305212) + (1875.0 9.68923496554 7.16449759948 304.051441609) + (1880.0 9.70087092342 7.14011086267 304.072362018) + (1885.0 9.71250688131 7.11572412587 304.093282427) + (1890.0 9.72414283919 7.09133738906 304.114202836) + (1895.0 9.73577879708 7.06695065226 304.135123245) + (1900.0 9.74741475497 7.04256391545 304.156043654) + (1905.0 9.75905071285 7.01817717864 304.176964064) + (1910.0 9.77068667074 6.99379044184 304.197884473) + (1915.0 9.78232262862 6.96940370503 304.218804882) + (1920.0 9.79395858651 6.94501696822 304.239725291) + (1925.0 9.8055945444 6.92063023142 304.2606457) + (1930.0 9.81723050228 6.89624349461 304.281566109) + (1935.0 9.82886646017 6.8718567578 304.302486518) + (1940.0 9.84050241805 6.847470021 304.323406928) + (1945.0 9.85213837594 6.82308328419 304.344327337) + (1950.0 9.86377433382 6.79869654738 304.365247746) + (1955.0 9.87541029171 6.77430981058 304.386168155) + (1960.0 9.8870462496 6.74992307377 304.407088564) + (1965.0 9.89868220748 6.72553633696 304.428008973) + (1970.0 9.91031816537 6.70114960016 304.448929382) + (1975.0 9.92195412325 6.67676286335 304.469849792) + (1980.0 9.93359008114 6.65237612654 304.490770201) + (1985.0 9.94522603903 6.62798938974 304.51169061) + (1990.0 9.95686199691 6.60360265293 304.532611019) + (1995.0 9.9684979548 6.57921591612 304.553531428) + (2000.0 9.98013391268 6.55482917932 304.574451837) +); + +// Update internal field. +updateInternalFields true; + +// Update boundary field. +updateBoundaryFields false; + +// ************************************************************************* // diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/.gitignore b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/.gitignore new file mode 100644 index 000000000..41ba12d5a --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/.gitignore @@ -0,0 +1,6 @@ +* +** +**/** +*** +!.gitignore +!zeromqServerFLORIS.url \ No newline at end of file diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/zeromqServerFLORIS.url b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/zeromqServerFLORIS.url new file mode 100644 index 000000000..96cd3be6d --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/zeromqServerFLORIS.url @@ -0,0 +1,2 @@ +[InternetShortcut] +URL=https://github.com/Bartdoekemeijer/zeromqServerFLORIS From 54e3ea52259a005603dcbde042355e79e4c98e99 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Wed, 7 Nov 2018 16:15:15 +0100 Subject: [PATCH 61/65] Upload a simple MATLAB SSC file --- .../constant/turbineArrayProperties | 165 +----------------- .../example.ADM.ssc.zeroMQ/runscript.solve.1 | 2 +- .../zeromqSSC/.gitignore | 6 - .../zeromqSSC/exampleSSC.m | 63 +++++++ .../zeromqSSC/zeromqObj.m | 121 +++++++++++++ .../zeromqSSC/zeromqServerFLORIS.url | 2 - 6 files changed, 187 insertions(+), 172 deletions(-) delete mode 100644 exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/.gitignore create mode 100644 exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/exampleSSC.m create mode 100644 exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/zeromqObj.m delete mode 100644 exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/zeromqServerFLORIS.url diff --git a/exampleCases/example.ADM.ssc.zeroMQ/constant/turbineArrayProperties b/exampleCases/example.ADM.ssc.zeroMQ/constant/turbineArrayProperties index 4c3bc9e1b..7f758e575 100755 --- a/exampleCases/example.ADM.ssc.zeroMQ/constant/turbineArrayProperties +++ b/exampleCases/example.ADM.ssc.zeroMQ/constant/turbineArrayProperties @@ -37,7 +37,7 @@ sscProperties turbine0 { turbineType "NREL5MWRef"; - baseLocation (868.0 1120.8 0.0); + baseLocation (1000.0 1500.0 0.0); nRadial 64; azimuthMaxDis 2.0; nAvgSector 1; @@ -60,168 +60,7 @@ turbine0 turbine1 { turbineType "NREL5MWRef"; - baseLocation (1500.0 1120.8 0.0); - nRadial 64; - azimuthMaxDis 2.0; - nAvgSector 1; - pointDistType "uniform"; - pointInterpType "linear"; - bladeUpdateType "oldPosition"; - epsilon 20.0; - forceScalar 1.0; - inflowVelocityScalar 0.94; - tipRootLossCorrType "Glauert"; - rotationDir "cw"; - Azimuth 0.0; - RotSpeed 9.15519863; - TorqueGen 0.0; - Pitch 0.0; - NacYaw 270.0; - fluidDensity 1.225; -} - -turbine2 -{ - turbineType "NREL5MWRef"; - baseLocation (2132.0 1120.8 0.0); - nRadial 64; - azimuthMaxDis 2.0; - nAvgSector 1; - pointDistType "uniform"; - pointInterpType "linear"; - bladeUpdateType "oldPosition"; - epsilon 20.0; - forceScalar 1.0; - inflowVelocityScalar 0.94; - tipRootLossCorrType "Glauert"; - rotationDir "cw"; - Azimuth 0.0; - RotSpeed 9.15519863; - TorqueGen 0.0; - Pitch 0.0; - NacYaw 270.0; - fluidDensity 1.225; -} - -turbine3 -{ - turbineType "NREL5MWRef"; - baseLocation (868.0 1500.0 0.0); - nRadial 64; - azimuthMaxDis 2.0; - nAvgSector 1; - pointDistType "uniform"; - pointInterpType "linear"; - bladeUpdateType "oldPosition"; - epsilon 20.0; - forceScalar 1.0; - inflowVelocityScalar 0.94; - tipRootLossCorrType "Glauert"; - rotationDir "cw"; - Azimuth 0.0; - RotSpeed 9.15519863; - TorqueGen 0.0; - Pitch 0.0; - NacYaw 270.0; - fluidDensity 1.225; -} - -turbine4 -{ - turbineType "NREL5MWRef"; - baseLocation (1500.0 1500.0 0.0); - nRadial 64; - azimuthMaxDis 2.0; - nAvgSector 1; - pointDistType "uniform"; - pointInterpType "linear"; - bladeUpdateType "oldPosition"; - epsilon 20.0; - forceScalar 1.0; - inflowVelocityScalar 0.94; - tipRootLossCorrType "Glauert"; - rotationDir "cw"; - Azimuth 0.0; - RotSpeed 9.15519863; - TorqueGen 0.0; - Pitch 0.0; - NacYaw 270.0; - fluidDensity 1.225; -} - -turbine5 -{ - turbineType "NREL5MWRef"; - baseLocation (2132.0 1500.0 0.0); - nRadial 64; - azimuthMaxDis 2.0; - nAvgSector 1; - pointDistType "uniform"; - pointInterpType "linear"; - bladeUpdateType "oldPosition"; - epsilon 20.0; - forceScalar 1.0; - inflowVelocityScalar 0.94; - tipRootLossCorrType "Glauert"; - rotationDir "cw"; - Azimuth 0.0; - RotSpeed 9.15519863; - TorqueGen 0.0; - Pitch 0.0; - NacYaw 270.0; - fluidDensity 1.225; -} - -turbine6 -{ - turbineType "NREL5MWRef"; - baseLocation (868.0 1879.2 0.0); - nRadial 64; - azimuthMaxDis 2.0; - nAvgSector 1; - pointDistType "uniform"; - pointInterpType "linear"; - bladeUpdateType "oldPosition"; - epsilon 20.0; - forceScalar 1.0; - inflowVelocityScalar 0.94; - tipRootLossCorrType "Glauert"; - rotationDir "cw"; - Azimuth 0.0; - RotSpeed 9.15519863; - TorqueGen 0.0; - Pitch 0.0; - NacYaw 270.0; - fluidDensity 1.225; -} - -turbine7 -{ - turbineType "NREL5MWRef"; - baseLocation (1500.0 1879.2 0.0); - nRadial 64; - azimuthMaxDis 2.0; - nAvgSector 1; - pointDistType "uniform"; - pointInterpType "linear"; - bladeUpdateType "oldPosition"; - epsilon 20.0; - forceScalar 1.0; - inflowVelocityScalar 0.94; - tipRootLossCorrType "Glauert"; - rotationDir "cw"; - Azimuth 0.0; - RotSpeed 9.15519863; - TorqueGen 0.0; - Pitch 0.0; - NacYaw 270.0; - fluidDensity 1.225; -} - -turbine8 -{ - turbineType "NREL5MWRef"; - baseLocation (2132.0 1879.2 0.0); + baseLocation (2000.0 1500.0 0.0); nRadial 64; azimuthMaxDis 2.0; nAvgSector 1; diff --git a/exampleCases/example.ADM.ssc.zeroMQ/runscript.solve.1 b/exampleCases/example.ADM.ssc.zeroMQ/runscript.solve.1 index d31da19b5..77aa58ec5 100755 --- a/exampleCases/example.ADM.ssc.zeroMQ/runscript.solve.1 +++ b/exampleCases/example.ADM.ssc.zeroMQ/runscript.solve.1 @@ -36,6 +36,6 @@ cp system/controlDict.$runNumber system/controlDict # Run the solver. (mpirun -np $cores $solver -parallel > log.$runNumber.$solver 2>&1) & -(cd zeromqSSC; matlab -nodisplay -noFigureWindows -logfile 'zeromqSSC_MATLAB.log' -r florisSSC) +(cd zeromqSSC; matlab -nodisplay -noFigureWindows -logfile 'zeromqSSC_MATLAB.log' -r exampleSSC) echo "Ending OpenFOAM job at: " $(date) \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/.gitignore b/exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/.gitignore deleted file mode 100644 index 41ba12d5a..000000000 --- a/exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/.gitignore +++ /dev/null @@ -1,6 +0,0 @@ -* -** -**/** -*** -!.gitignore -!zeromqServerFLORIS.url \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/exampleSSC.m b/exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/exampleSSC.m new file mode 100644 index 000000000..b956b8f09 --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/exampleSSC.m @@ -0,0 +1,63 @@ +% clear all; close all; clc; +% +% MATLAB can use zeroMQ, but it is not necessarily so straight-forward. The easiest solution found was +% using "jeroMQ", which can be downloaded from https://github.com/zeromq/jeromq. After installation, +% Update the path below and you should be all set. +% +% For more information, check out: +% https://mathworks.com/matlabcentral/answers/269061-how-do-i-integrate-zeromq-library-with-matlab-i-want-my-matlab-program-to-be-a-subscriber-of-zeromq +% +% Note: to install jeroMQ, you need to have 'maven' installed. When using Maven to install jeroMQ, +% you may run into an error about the unit testing. If so, disable them and run again using +% 'mvn install -DskipTests' +% +% Recommended Java JDK version: 1.8.0_171 (tested by excluding unit tests) +% +% + +% Setup zeroMQ server +zmqJar = '/home/bmdoekemeijer/OpenFOAM/zeroMQ/jeromq-0.4.4-SNAPSHOT.jar'; +zmqPort = 5553; % Port to connect to (must match turbineArrayProperies) +zmqTimeout = 3600; % [s] +zmqVerbose = true; % Output text +zmqServer = zeromqObj(zmqJar,zmqPort,zmqTimeout,zmqVerbose); + +disp(['Entering wind farm controller loop...']); +measurementVector = []; +while 1 + % Receive information from SOWFA + dataReceived = zmqServer.receive(); + currentTime = dataReceived(1,1); + measurementVector = [measurementVector;dataReceived(1,2:end)]; + + if currentTime < 10 + yawAngleArrayOut = [270.0 270.0]; + pitchAngleArrayOut = [ 0.0 0.0]; + elseif currentTime < 20 + yawAngleArrayOut = [260.0 270.0]; + pitchAngleArrayOut = [ 0.0 0.0]; + elseif currentTime < 30 + yawAngleArrayOut = [260.0 280.0]; + pitchAngleArrayOut = [ 0.0 0.0]; + elseif currentTime < 50 + yawAngleArrayOut = [263.0 285.0]; + pitchAngleArrayOut = [ 0.0 0.0]; + else + yawAngleArrayOut = [240.0 270.0]; + pitchAngleArrayOut = [ 0.0 0.0]; + end + disp([datestr(rem(now,1)) '__ Synthesizing message string.']); + dataSend = setupZmqSignal(yawAngleArrayOut,pitchAngleArrayOut); + + % Send a message (control action) back to SOWFA + zmqServer.send(dataSend); +end +% Close connection +zmqServer.disconnect() + +function [dataOut] = setupZmqSignal(yawAngles,pitchAngles) +dataOut = []; +for i = 1:length(yawAngles) + dataOut = [dataOut yawAngles(i) pitchAngles(i)]; +end +end \ No newline at end of file diff --git a/exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/zeromqObj.m b/exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/zeromqObj.m new file mode 100644 index 000000000..47a5a505f --- /dev/null +++ b/exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/zeromqObj.m @@ -0,0 +1,121 @@ +classdef zeromqObj < handle + + properties (Access = public) + port + status + timeoutBuffer + verbose + lastMessageSent_string + lastMessageSent_data + lastMessageRecvd_string + lastMessageRecvd_data + end + + properties (Access = private) + context + socket + end + methods + function obj = zeromqObj(jeromqPath,port,timeoutBuffer,verbose) + % Import path and set-up zeroMQ commands + javaaddpath(jeromqPath,'-dpath'); + + % Setup connection details + obj.port = port; + obj.timeoutBuffer = timeoutBuffer; + obj.verbose = verbose; + + % Initialize empty strings and vectors + obj.lastMessageSent_string = ''; + obj.lastMessageSent_data = []; + obj.lastMessageRecvd_string = ''; + obj.lastMessageRecvd_data = []; + obj.status = 'initialized'; + + % Setup connection + obj.connect(); + end + + function [] = connect(obj) + import org.zeromq.* + + % Setup connection + if obj.verbose + disp([datestr(rem(now,1)) '__ Connecting to tcp://*:' num2str(obj.port) '.']); + end + + obj.context = zmq.Ctx(); + obj.socket = obj.context.createSocket(ZMQ.REP); + obj.socket.bind(['tcp://*:' num2str(obj.port)]); + obj.status = 'connected'; + end + + function [] = disconnect(obj) + if obj.verbose + disp([datestr(rem(now,1)) '__ Disconnecting from tcp://*:' num2str(obj.port) '.']); + end + obj.socket.close(); + obj.status = 'disconnected'; + end + + + function [dataReceived] = receive(obj) + message = ''; + timeoutTimer = tic; + while length(message) <= 0 + message = obj.socket.recv(1); % Receive information + if toc(timeoutTimer) > obj.timeoutBuffer % Time-out + obj.socket.close() + error([datestr(rem(now,1)) '__No message received within timeoutBuffer: ' ... + num2str(obj.timeoutBuffer) ' s. Exiting...']); + end + pause(0.010); % wait 10 ms + end + + % Once message received: convert to floats + json_data = native2unicode(message.data)'; % Received message + + % cut down json_data to remove all non-used bytes + sortedFloats = textscan( json_data, '%f', 'Delimiter',' ' ); + dataReceived = sortedFloats{1}'; % row vector with data + + obj.lastMessageRecvd_string = json_data; + obj.lastMessageRecvd_data = dataReceived; + + if obj.verbose + tmp_recvData_string = strjoin(arrayfun(@(x) num2str(x),dataReceived,'UniformOutput',false),' '); + disp([datestr(rem(now,1)) '__ Received data: [' num2str(tmp_recvData_string) ']']); + end + end + + function [] = send(obj,data) + if (size(data,1)>1 && size(data,2)>1) + error('Currently, we only support sending data in vector format.'); + end + + % Create string from data vector + str_send = num2str(data(1)); + for i = 2:length(data) + str_send = [str_send ' ' num2str(data(i))]; + end + + % Send a message + message = zmq.Msg(length(str_send)); + message.put(unicode2native(str_send)); + obj.socket.send(message, 0); + + obj.lastMessageSent_string = str_send; + obj.lastMessageSent_data = data; + + if obj.verbose + disp([datestr(rem(now,1)) '__ Sent message: [' str_send ']']); + end + end + + end + + methods (Hidden) + % + end +end + diff --git a/exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/zeromqServerFLORIS.url b/exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/zeromqServerFLORIS.url deleted file mode 100644 index 96cd3be6d..000000000 --- a/exampleCases/example.ADM.ssc.zeroMQ/zeromqSSC/zeromqServerFLORIS.url +++ /dev/null @@ -1,2 +0,0 @@ -[InternetShortcut] -URL=https://github.com/Bartdoekemeijer/zeromqServerFLORIS From c6d3574a9ab1fb7873716dfc1549f7847c4317c9 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Wed, 7 Nov 2018 16:24:18 +0100 Subject: [PATCH 62/65] Upload simple MATLAB zeroMQ example --- .../runscript.solve.1 | 2 +- .../zeromqSSC/.gitignore | 6 - .../zeromqSSC/exampleSSC.m | 63 +++++++++ .../zeromqSSC/zeromqObj.m | 121 ++++++++++++++++++ .../zeromqSSC/zeromqServerFLORIS.url | 2 - 5 files changed, 185 insertions(+), 9 deletions(-) delete mode 100644 exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/.gitignore create mode 100644 exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/exampleSSC.m create mode 100644 exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/zeromqObj.m delete mode 100644 exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/zeromqServerFLORIS.url diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/runscript.solve.1 b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/runscript.solve.1 index 62799917e..45fb775e5 100755 --- a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/runscript.solve.1 +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/runscript.solve.1 @@ -36,6 +36,6 @@ cp system/controlDict.$runNumber system/controlDict # Run the solver. (mpirun -np $cores $solver -parallel > log.$runNumber.$solver 2>&1) & -(cd zeromqSSC; matlab -nodisplay -noFigureWindows -logfile 'zeromqSSC_MATLAB.log' -r florisSSC) +(cd zeromqSSC; matlab -nodisplay -noFigureWindows -logfile 'zeromqSSC_MATLAB.log' -r exampleSSC) echo "Ending OpenFOAM job at: " $(date) \ No newline at end of file diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/.gitignore b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/.gitignore deleted file mode 100644 index 41ba12d5a..000000000 --- a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/.gitignore +++ /dev/null @@ -1,6 +0,0 @@ -* -** -**/** -*** -!.gitignore -!zeromqServerFLORIS.url \ No newline at end of file diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/exampleSSC.m b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/exampleSSC.m new file mode 100644 index 000000000..b956b8f09 --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/exampleSSC.m @@ -0,0 +1,63 @@ +% clear all; close all; clc; +% +% MATLAB can use zeroMQ, but it is not necessarily so straight-forward. The easiest solution found was +% using "jeroMQ", which can be downloaded from https://github.com/zeromq/jeromq. After installation, +% Update the path below and you should be all set. +% +% For more information, check out: +% https://mathworks.com/matlabcentral/answers/269061-how-do-i-integrate-zeromq-library-with-matlab-i-want-my-matlab-program-to-be-a-subscriber-of-zeromq +% +% Note: to install jeroMQ, you need to have 'maven' installed. When using Maven to install jeroMQ, +% you may run into an error about the unit testing. If so, disable them and run again using +% 'mvn install -DskipTests' +% +% Recommended Java JDK version: 1.8.0_171 (tested by excluding unit tests) +% +% + +% Setup zeroMQ server +zmqJar = '/home/bmdoekemeijer/OpenFOAM/zeroMQ/jeromq-0.4.4-SNAPSHOT.jar'; +zmqPort = 5553; % Port to connect to (must match turbineArrayProperies) +zmqTimeout = 3600; % [s] +zmqVerbose = true; % Output text +zmqServer = zeromqObj(zmqJar,zmqPort,zmqTimeout,zmqVerbose); + +disp(['Entering wind farm controller loop...']); +measurementVector = []; +while 1 + % Receive information from SOWFA + dataReceived = zmqServer.receive(); + currentTime = dataReceived(1,1); + measurementVector = [measurementVector;dataReceived(1,2:end)]; + + if currentTime < 10 + yawAngleArrayOut = [270.0 270.0]; + pitchAngleArrayOut = [ 0.0 0.0]; + elseif currentTime < 20 + yawAngleArrayOut = [260.0 270.0]; + pitchAngleArrayOut = [ 0.0 0.0]; + elseif currentTime < 30 + yawAngleArrayOut = [260.0 280.0]; + pitchAngleArrayOut = [ 0.0 0.0]; + elseif currentTime < 50 + yawAngleArrayOut = [263.0 285.0]; + pitchAngleArrayOut = [ 0.0 0.0]; + else + yawAngleArrayOut = [240.0 270.0]; + pitchAngleArrayOut = [ 0.0 0.0]; + end + disp([datestr(rem(now,1)) '__ Synthesizing message string.']); + dataSend = setupZmqSignal(yawAngleArrayOut,pitchAngleArrayOut); + + % Send a message (control action) back to SOWFA + zmqServer.send(dataSend); +end +% Close connection +zmqServer.disconnect() + +function [dataOut] = setupZmqSignal(yawAngles,pitchAngles) +dataOut = []; +for i = 1:length(yawAngles) + dataOut = [dataOut yawAngles(i) pitchAngles(i)]; +end +end \ No newline at end of file diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/zeromqObj.m b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/zeromqObj.m new file mode 100644 index 000000000..47a5a505f --- /dev/null +++ b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/zeromqObj.m @@ -0,0 +1,121 @@ +classdef zeromqObj < handle + + properties (Access = public) + port + status + timeoutBuffer + verbose + lastMessageSent_string + lastMessageSent_data + lastMessageRecvd_string + lastMessageRecvd_data + end + + properties (Access = private) + context + socket + end + methods + function obj = zeromqObj(jeromqPath,port,timeoutBuffer,verbose) + % Import path and set-up zeroMQ commands + javaaddpath(jeromqPath,'-dpath'); + + % Setup connection details + obj.port = port; + obj.timeoutBuffer = timeoutBuffer; + obj.verbose = verbose; + + % Initialize empty strings and vectors + obj.lastMessageSent_string = ''; + obj.lastMessageSent_data = []; + obj.lastMessageRecvd_string = ''; + obj.lastMessageRecvd_data = []; + obj.status = 'initialized'; + + % Setup connection + obj.connect(); + end + + function [] = connect(obj) + import org.zeromq.* + + % Setup connection + if obj.verbose + disp([datestr(rem(now,1)) '__ Connecting to tcp://*:' num2str(obj.port) '.']); + end + + obj.context = zmq.Ctx(); + obj.socket = obj.context.createSocket(ZMQ.REP); + obj.socket.bind(['tcp://*:' num2str(obj.port)]); + obj.status = 'connected'; + end + + function [] = disconnect(obj) + if obj.verbose + disp([datestr(rem(now,1)) '__ Disconnecting from tcp://*:' num2str(obj.port) '.']); + end + obj.socket.close(); + obj.status = 'disconnected'; + end + + + function [dataReceived] = receive(obj) + message = ''; + timeoutTimer = tic; + while length(message) <= 0 + message = obj.socket.recv(1); % Receive information + if toc(timeoutTimer) > obj.timeoutBuffer % Time-out + obj.socket.close() + error([datestr(rem(now,1)) '__No message received within timeoutBuffer: ' ... + num2str(obj.timeoutBuffer) ' s. Exiting...']); + end + pause(0.010); % wait 10 ms + end + + % Once message received: convert to floats + json_data = native2unicode(message.data)'; % Received message + + % cut down json_data to remove all non-used bytes + sortedFloats = textscan( json_data, '%f', 'Delimiter',' ' ); + dataReceived = sortedFloats{1}'; % row vector with data + + obj.lastMessageRecvd_string = json_data; + obj.lastMessageRecvd_data = dataReceived; + + if obj.verbose + tmp_recvData_string = strjoin(arrayfun(@(x) num2str(x),dataReceived,'UniformOutput',false),' '); + disp([datestr(rem(now,1)) '__ Received data: [' num2str(tmp_recvData_string) ']']); + end + end + + function [] = send(obj,data) + if (size(data,1)>1 && size(data,2)>1) + error('Currently, we only support sending data in vector format.'); + end + + % Create string from data vector + str_send = num2str(data(1)); + for i = 2:length(data) + str_send = [str_send ' ' num2str(data(i))]; + end + + % Send a message + message = zmq.Msg(length(str_send)); + message.put(unicode2native(str_send)); + obj.socket.send(message, 0); + + obj.lastMessageSent_string = str_send; + obj.lastMessageSent_data = data; + + if obj.verbose + disp([datestr(rem(now,1)) '__ Sent message: [' str_send ']']); + end + end + + end + + methods (Hidden) + % + end +end + diff --git a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/zeromqServerFLORIS.url b/exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/zeromqServerFLORIS.url deleted file mode 100644 index 96cd3be6d..000000000 --- a/exampleCases/example.ALMAdvanced.ssc.zeroMQ/zeromqSSC/zeromqServerFLORIS.url +++ /dev/null @@ -1,2 +0,0 @@ -[InternetShortcut] -URL=https://github.com/Bartdoekemeijer/zeromqServerFLORIS From 220a6f1e86fca7ca53e0156a792c86b9538be1aa Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Wed, 14 Nov 2018 16:00:21 +0100 Subject: [PATCH 63/65] Bug fix for addition of measurementFunction --- .../horizontalAxisWindTurbinesADM.C | 6 ++++++ .../horizontalAxisWindTurbinesALMAdvanced.C | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C index 1897f0936..ef2acb7b0 100755 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesADM/horizontalAxisWindTurbinesADM.C @@ -1094,6 +1094,12 @@ void horizontalAxisWindTurbinesADM::superController() superInfoLocalOut[si] = superInfoFromSSC[si]; } + } else { + // If not master, set measurements to zero + for(int si = 0; si < nInputsToSSC *numTurbines; si++) + { + superInfoToSSC[si] = 0.0; + } } //Gather and scatter across procs diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/horizontalAxisWindTurbinesALMAdvanced.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/horizontalAxisWindTurbinesALMAdvanced.C index 18bf09a98..4e5440bec 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/horizontalAxisWindTurbinesALMAdvanced.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/horizontalAxisWindTurbinesALMAdvanced.C @@ -1753,6 +1753,12 @@ void horizontalAxisWindTurbinesALMAdvanced::superController() superInfoLocalOut[si] = superInfoFromSSC[si]; } + } else { + // If not master, set measurements to zero + for(int si = 0; si < nInputsToSSC *numTurbines; si++) + { + superInfoToSSC[si] = 0.0; + } } //Gather and scatter across procs From 3e3c264d18fbd4a2a7a69a0b5a34b69208882e41 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Fri, 21 Dec 2018 10:24:26 +0100 Subject: [PATCH 64/65] Update horizontalAxisWindTurbinesALMAdvanced.C Bug fix for yaw actions in ALMAdvanced --- .../horizontalAxisWindTurbinesALMAdvanced.C | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/horizontalAxisWindTurbinesALMAdvanced.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/horizontalAxisWindTurbinesALMAdvanced.C index 4e5440bec..dc28cf953 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/horizontalAxisWindTurbinesALMAdvanced.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/horizontalAxisWindTurbinesALMAdvanced.C @@ -1696,13 +1696,17 @@ void horizontalAxisWindTurbinesALMAdvanced::controlNacYaw() } //Info << "nacYaw = " << nacYaw << endl; - if (((nacYawCommanded - nacYaw[i]) / degRad) <= 180.0) + if (((nacYawCommanded - nacYaw[i]) / degRad) <= -180.0) + { + deltaNacYaw[i] = nacYawCommanded - nacYaw[i] + (360.0*degRad); + } + else if (((nacYawCommanded - nacYaw[i]) / degRad) <= 180.0) { deltaNacYaw[i] = nacYawCommanded - nacYaw[i]; } else { - deltaNacYaw[i] = nacYaw[i] - ((360.0*degRad) - nacYawCommanded); + deltaNacYaw[i] = nacYawCommanded - nacYaw[i] - (360.0*degRad); } //Info << "deltaNacYaw = " << deltaNacYaw / degRad << endl; From 618c867641123aea2f45e9dd075955a49bcdcdb1 Mon Sep 17 00:00:00 2001 From: Bart Doekemeijer Date: Mon, 3 Jun 2019 11:52:19 +0200 Subject: [PATCH 65/65] Update horizontalAxisWindTurbinesALMAdvanced.C Bug fixes to avoid turbines from rotating a full circle to reach a small (but negative) deltaNacYaw setpoint. --- .../horizontalAxisWindTurbinesALMAdvanced.C | 20 +++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/horizontalAxisWindTurbinesALMAdvanced.C b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/horizontalAxisWindTurbinesALMAdvanced.C index dc28cf953..e4369ddc2 100644 --- a/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/horizontalAxisWindTurbinesALMAdvanced.C +++ b/src/turbineModels/turbineModelsStandard/horizontalAxisWindTurbinesALMAdvanced/horizontalAxisWindTurbinesALMAdvanced.C @@ -1696,17 +1696,25 @@ void horizontalAxisWindTurbinesALMAdvanced::controlNacYaw() } //Info << "nacYaw = " << nacYaw << endl; - if (((nacYawCommanded - nacYaw[i]) / degRad) <= -180.0) + deltaNacYaw[i] = nacYawCommanded - nacYaw[i]; // Standard calculation of delta yaw + // Ensure deltaNacYaw lies within [-360, 360] deg + if ((deltaNacYaw[i] / degRad) <= - 360.0) { - deltaNacYaw[i] = nacYawCommanded - nacYaw[i] + (360.0*degRad); + deltaNacYaw[i] = deltaNacYaw[i] + (360.0*degRad); } - else if (((nacYawCommanded - nacYaw[i]) / degRad) <= 180.0) + else if ((deltaNacYaw[i] / degRad) >= 360.0) { - deltaNacYaw[i] = nacYawCommanded - nacYaw[i]; + deltaNacYaw[i] = deltaNacYaw[i] - (360.0*degRad); + } + + // Now find the shortest distance to the setpoint + if ((deltaNacYaw[i] / degRad) <= - 180.0) + { + deltaNacYaw[i] = deltaNacYaw[i] + (360.0*degRad); } - else + else if ((deltaNacYaw[i] / degRad) >= 180.0) { - deltaNacYaw[i] = nacYawCommanded - nacYaw[i] - (360.0*degRad); + deltaNacYaw[i] = deltaNacYaw[i] - (360.0*degRad); } //Info << "deltaNacYaw = " << deltaNacYaw / degRad << endl;