diff --git a/.github/workflows/openfoam.yml b/.github/workflows/openfoam.yml new file mode 100644 index 00000000..9fb5e1f0 --- /dev/null +++ b/.github/workflows/openfoam.yml @@ -0,0 +1,40 @@ +name: openfoam + +on: + push: + branches: [ of2206 ] + pull_request: + branches: [ of2206 ] + +jobs: + build-and-test: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: setup openfoam + run: | + curl -s https://dl.openfoam.com/add-debian-repo.sh | sudo bash + sudo apt-get install libglu1-mesa + wget -q -O - https://dl.openfoam.com/add-debian-repo.sh | sudo bash + sudo apt-get update + sudo apt-get install openfoam2206-default + - name: compile library + run: | + export WM_NCOMPPROCS=2 + openfoam2206 -c ./Allwmake + openfoam2206 -c ./get-gmsh.sh + - name: test + run: | + python -m pip install --upgrade pip + pip install oftest scipy casefoam + openfoam2206 -c "py.test --writeNSteps=1 run/" + openfoam2206 -c "py.test -m 'not slow'" + + - name: upload logs + if: ${{ failure() }} + uses: actions/upload-artifact@v2 + with: + name: logs + path: logs diff --git a/.gitignore b/.gitignore index d63c044e..2d878df0 100644 --- a/.gitignore +++ b/.gitignore @@ -35,12 +35,16 @@ lnInclude #OpenFOAM Cases CasesTri -polyMesh/* -0.[0-9]* [1-9]* *e-* +*/polyMesh/* +0.[0-9]* +[1-9]* +*e-* processor* logs AlphaInit controlDict.orig +*.msh +gmsh-*-Linux64 # Build directories - anywhere linux*Clang*/ diff --git a/.vscode/c_cpp_properties.json b/.vscode/c_cpp_properties.json index 53efe53e..bb366d82 100644 --- a/.vscode/c_cpp_properties.json +++ b/.vscode/c_cpp_properties.json @@ -4,18 +4,12 @@ "name": "Linux", "includePath": [ "${workspaceFolder}/**", - "${FOAM_SRC}/OpenFOAM/lnInclude", - "${FOAM_SRC}/finiteVolume/lnInclude" - ], - "browse.path":[ - "${workspaceFolder}/**", - "${FOAM_SRC}/OpenFOAM/lnInclude", - "${FOAM_SRC}/finiteVolume/lnInclude" + "${FOAM_SRC}/**" ], "defines": [], "compilerPath": "/usr/bin/gcc", "cStandard": "c11", - "cppStandard": "c++17", + "cppStandard": "c++11", "intelliSenseMode": "clang-x64" } ], diff --git a/.vscode/launch.json b/.vscode/launch.json index 447de6d2..1362c25b 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -1,17 +1,31 @@ { - // Use IntelliSense to learn about possible attributes. - // Hover to view descriptions of existing attributes. - // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { - "name": "(gdb) Launch", + "name": "OF-Debug", + "type": "cppdbg", + "request": "attach", + "processId": "${command:pickProcess}", + "program": "${env:FOAM_USER_APPBIN}/${fileBasenameNoExtension}", + "MIMode": "gdb", + "setupCommands": [ + { + "description": "Enable pretty-printing for gdb", + "text": "-enable-pretty-printing", + "ignoreFailures": true + } + ], + "preLaunchTask": "wmake-build", + "miDebuggerPath": "/usr/bin/gdb" + }, + { + "name": "multiRegionPhaseChangeFlow", "type": "cppdbg", "request": "launch", - "program": "enter program name, for example ${workspaceFolder}/a.out", + "program": "${env:FOAM_USER_APPBIN}/multiRegionPhaseChangeFlow", "args": [], "stopAtEntry": false, - "cwd": "${workspaceFolder}", + "cwd": "/media/henning/ssd1linux/libsAndApps/release/TwoPhaseFlow/testsuite/cht/fixedFlux", //"${input:casepath}", "environment": [], "externalConsole": false, "MIMode": "gdb", @@ -23,5 +37,5 @@ } ] } - ] + ], } \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json index f329c0c5..0793ed4b 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -2,13 +2,13 @@ "files.associations": { "*.H": "cpp", "*.C": "cpp", - "vector": "cpp", - "limits": "cpp" + "random": "cpp", + "vector": "cpp" }, - "C_Cpp.intelliSenseEngine": "Tag Parser", "python.testing.pytestArgs": [ "." ], "python.testing.unittestEnabled": false, - "python.testing.pytestEnabled": true + "python.testing.pytestEnabled": true, + "python.formatting.provider": "black" } \ No newline at end of file diff --git a/.vscode/tasks.json b/.vscode/tasks.json index 6c283859..7e488ffb 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -1,12 +1,42 @@ { - // See https://go.microsoft.com/fwlink/?LinkId=733558 - // for the documentation about the tasks.json format "version": "2.0.0", "tasks": [ { - "label": "echo", "type": "shell", - "command": "echo Hello" + "label": "wmake-build", + "command": "wmake", + "problemMatcher": [ + "$gcc" + ], + "group": "build" + }, + { + "type": "shell", + "label": "Allwmake", + "command": "./Allwmake", + "problemMatcher": [ + "$gcc" + ], + "group": "build" + }, + { + "type": "cppbuild", + "label": "C/C++: cpp build active file", + "command": "/usr/bin/cpp", + "args": [ + "-g", + "${file}", + "-o", + "${fileDirname}/${fileBasenameNoExtension}" + ], + "options": { + "cwd": "/usr/bin" + }, + "problemMatcher": [ + "$gcc" + ], + "group": "build", + "detail": "compiler: /usr/bin/cpp" } ] } \ No newline at end of file diff --git a/apps/benchmark/reconstructInterface/Make/options b/apps/benchmark/reconstructInterface/Make/options index 026c8c5c..013e9ab0 100755 --- a/apps/benchmark/reconstructInterface/Make/options +++ b/apps/benchmark/reconstructInterface/Make/options @@ -1,5 +1,6 @@ EXE_INC = \ -I../../../src/VoF/lnInclude \ + -I$(FOAM_UTILITIES)/preProcessing/setAlphaField/alphaFieldFunctions/lnInclude \ -I../../../src/postProcessing/lnInclude \ -I../../../src/surfaceForces/lnInclude \ -I$(LIB_SRC)/finiteVolume/lnInclude \ @@ -9,6 +10,7 @@ EXE_INC = \ EXE_LIBS = \ -L$(FOAM_USER_LIBBIN) \ + -lalphaFieldFunctions \ -lfiniteVolume \ -lmeshTools \ -lsurfMesh \ diff --git a/apps/benchmark/reconstructInterface/reconstructInterface.C b/apps/benchmark/reconstructInterface/reconstructInterface.C index 106a7a5e..fa2342f0 100755 --- a/apps/benchmark/reconstructInterface/reconstructInterface.C +++ b/apps/benchmark/reconstructInterface/reconstructInterface.C @@ -41,7 +41,6 @@ Author #include "cutCellImpFunc.H" #include "cutCellIso.H" #include "reconstructionError.H" -#include "isoCutCell.H" #include "surfaceForces.H" @@ -171,7 +170,7 @@ int main(int argc, char *argv[]) ) ); - vector centre = initAlphaFieldDict.lookup("origin"); + vector centre = initAlphaFieldDict.get("origin"); // scalar radius = readScalar(initAlphaFieldDict.lookup("radius")); Random rndCentre(1234567); @@ -221,7 +220,7 @@ int main(int argc, char *argv[]) initAlphaFieldDict.set("origin",centrePos); } - centre = initAlphaFieldDict.lookup("origin"); + centre = initAlphaFieldDict.get("origin"); Info << "centre " << centre << endl; @@ -229,7 +228,7 @@ int main(int argc, char *argv[]) ( implicitFunction::New ( - word(initAlphaFieldDict.lookup("type")), + word(initAlphaFieldDict.get("type")), initAlphaFieldDict ) ); diff --git a/apps/initAlphaField/Make/options b/apps/initAlphaField/Make/options index 741f55f4..8b6a4486 100755 --- a/apps/initAlphaField/Make/options +++ b/apps/initAlphaField/Make/options @@ -1,5 +1,6 @@ EXE_INC = \ -I../../src/VoF/lnInclude \ + -I$(FOAM_UTILITIES)/preProcessing/setAlphaField/alphaFieldFunctions/lnInclude \ -I$(LIB_SRC)/finiteVolume/lnInclude \ -I$(LIB_SRC)/meshTools/lnInclude \ -I$(LIB_SRC)/surfMesh/lnInclude \ @@ -9,6 +10,7 @@ EXE_INC = \ EXE_LIBS = \ -L$(FOAM_USER_LIBBIN) \ + -lalphaFieldFunctions \ -lfiniteVolume \ -lsurfMesh \ -lVoF \ diff --git a/apps/initAlphaField/initAlphaField.C b/apps/initAlphaField/initAlphaField.C index 018ad878..bb737299 100755 --- a/apps/initAlphaField/initAlphaField.C +++ b/apps/initAlphaField/initAlphaField.C @@ -33,8 +33,6 @@ Author \*---------------------------------------------------------------------------*/ #include "fvCFD.H" -#include "isoCutFace.H" -#include "isoCutCell.H" #include "searchableCylinder.H" #include "searchableSurface.H" #include "mathematicalConstants.H" diff --git a/apps/setFieldfromTable/Make/options b/apps/setFieldfromTable/Make/options index 0bbfb85b..37a2cbc3 100644 --- a/apps/setFieldfromTable/Make/options +++ b/apps/setFieldfromTable/Make/options @@ -1,4 +1,5 @@ EXE_INC = \ + -I$(FOAM_UTILITIES)/preProcessing/setAlphaField/alphaFieldFunctions/lnInclude \ -I$(LIB_SRC)/finiteVolume/lnInclude \ -I$(LIB_SRC)/dynamicMesh/lnInclude \ -I$(LIB_SRC)/dynamicMesh/dynamicMesh/lnInclude \ @@ -7,6 +8,7 @@ EXE_INC = \ -I../../src/VoF/lnInclude EXE_LIBS = \ + -lalphaFieldFunctions \ -lfiniteVolume \ -ldynamicMesh \ -lmeshTools \ diff --git a/apps/setFieldfromTable/setFieldfromTable.C b/apps/setFieldfromTable/setFieldfromTable.C index f757c746..eb59441b 100644 --- a/apps/setFieldfromTable/setFieldfromTable.C +++ b/apps/setFieldfromTable/setFieldfromTable.C @@ -102,7 +102,7 @@ int main(int argc, char *argv[]) Foam::autoPtr func = implicitFunction::New ( - setFieldTableDict.get("function"), + setFieldTableDict.get("type"), setFieldTableDict ); diff --git a/apps/setFieldfromTable/setFieldfromTableDict b/apps/setFieldfromTable/setFieldfromTableDict index f8ba74da..e532ca89 100644 --- a/apps/setFieldfromTable/setFieldfromTableDict +++ b/apps/setFieldfromTable/setFieldfromTableDict @@ -23,13 +23,13 @@ hasHeaderLine false; timeColumn 0; valueColumns (1); -function composedFunction; +type composedFunction; mode add; composedFunctions { plane { - function plane; + type plane; centre (0 1. 0); normal (0 1 0); @@ -37,7 +37,7 @@ composedFunctions sphere { - function impSphere; + type impSphere; radius 0.4; centre (0.5 0.8 0.5); scale 1; @@ -45,7 +45,7 @@ composedFunctions sphere2 { - function impSphere; + type impSphere; radius 0.4; centre (0.5 0.5 0.5); } diff --git a/get-gmsh.sh b/get-gmsh.sh index f2fffadd..838072b3 100755 --- a/get-gmsh.sh +++ b/get-gmsh.sh @@ -1,7 +1,7 @@ #!/bin/sh cd "${0%/*}" || exit # Run from this directory -wget https://gmsh.info/bin/Linux/gmsh-3.0.6-Linux64.tgz -tar zxvf gmsh-3.0.6-Linux64.tgz -cp gmsh-3.0.6-Linux64/bin/gmsh $FOAM_USER_APPBIN/gmshv306 -rm gmsh-3.0.6-Linux64.tgz +wget https://gmsh.info/bin/Linux/gmsh-4.9.3-Linux64.tgz +tar zxvf gmsh-4.9.3-Linux64.tgz +cp gmsh-4.9.3-Linux64/bin/gmsh $FOAM_USER_APPBIN/gmshv493 +rm gmsh-4.9.3-Linux64.tgz diff --git a/modules/multiDimAMR b/modules/multiDimAMR index cbd97304..ce0f044a 160000 --- a/modules/multiDimAMR +++ b/modules/multiDimAMR @@ -1 +1 @@ -Subproject commit cbd97304f8e291d08457afce24ca13286a98b6e9 +Subproject commit ce0f044acdbecb1b976299365121e54dcefc2f1f diff --git a/pytest.ini b/pytest.ini index e2958c9b..9371bbb0 100644 --- a/pytest.ini +++ b/pytest.ini @@ -1,5 +1,7 @@ [pytest] #minversion = 6.0 +markers = + slow: marks tests as slow (deselect with '-m "not slow"') addopts = -ra -v --import-mode=importlib --tb=short --cache-clear testpaths = testsuite diff --git a/run/Reorientation/system/blockMeshDict b/run/Reorientation/system/blockMeshDict index 5478dd44..3f35dc13 100644 --- a/run/Reorientation/system/blockMeshDict +++ b/run/Reorientation/system/blockMeshDict @@ -15,7 +15,7 @@ FoamFile // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -convertToMeters 0.001; +scale 0.001; vertices // testZelle is 80 mm hoch galube ich ( diff --git a/run/Reorientation/system/setAlphaFieldDict b/run/Reorientation/system/setAlphaFieldDict index 8de6d47d..6eee2519 100644 --- a/run/Reorientation/system/setAlphaFieldDict +++ b/run/Reorientation/system/setAlphaFieldDict @@ -17,7 +17,7 @@ FoamFile field alpha.phase1; type plane; -direction (0 1 0); +normal (0 1 0); origin (0 1e-6 0); diff --git a/run/benchmark/acceleration/tiltedBox/tiltedBox/system/blockMeshDict b/run/benchmark/acceleration/tiltedBox/tiltedBox/system/blockMeshDict index ce5ac05c..e1ab3429 100755 --- a/run/benchmark/acceleration/tiltedBox/tiltedBox/system/blockMeshDict +++ b/run/benchmark/acceleration/tiltedBox/tiltedBox/system/blockMeshDict @@ -14,7 +14,7 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -convertToMeters 1; +scale 1; vertices ( diff --git a/run/benchmark/phaseChange/scriven3D/scriven3D/system/controlDict b/run/benchmark/phaseChange/scriven3D/scriven3D/system/controlDict index d9f04fe9..0a542191 100755 --- a/run/benchmark/phaseChange/scriven3D/scriven3D/system/controlDict +++ b/run/benchmark/phaseChange/scriven3D/scriven3D/system/controlDict @@ -1,4 +1,4 @@ -k/*--------------------------------*- C++ -*----------------------------------*\ +/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: plus | @@ -96,14 +96,22 @@ functions intPsi { - type fieldIntegrate; - libs ("libpostProcess.so"); + type volFieldValue; + libs ("libfieldFunctionObjects.so"); - // Write at same frequency as fields writeControl timeStep; - writeInterval 10; - region fluid; - field psi0_; + writeInterval 1; + writeFields false; + log true; + region fluid; + + operation volIntegrate; + + fields + ( + psi0_ + ); + } } diff --git a/run/benchmark/phaseChange/scriven3D/scriven3D/system/fluid/blockMeshDict b/run/benchmark/phaseChange/scriven3D/scriven3D/system/fluid/blockMeshDict index 9298c5e2..6d2d57bf 100755 --- a/run/benchmark/phaseChange/scriven3D/scriven3D/system/fluid/blockMeshDict +++ b/run/benchmark/phaseChange/scriven3D/scriven3D/system/fluid/blockMeshDict @@ -14,7 +14,7 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -convertToMeters 0.001; +scale 0.001; vertices ( diff --git a/run/benchmark/phaseChange/scriven3D/scriven3D/system/fluid/setFieldfromTableDict b/run/benchmark/phaseChange/scriven3D/scriven3D/system/fluid/setFieldfromTableDict index 18e38afa..e80067fa 100644 --- a/run/benchmark/phaseChange/scriven3D/scriven3D/system/fluid/setFieldfromTableDict +++ b/run/benchmark/phaseChange/scriven3D/scriven3D/system/fluid/setFieldfromTableDict @@ -23,19 +23,10 @@ hasHeaderLine false; timeColumn 0; valueColumns (1); -function sphere; +type sphere; scale -1; origin (0 0 0); radius 50e-6; - - - - - - - - - // ************************************************************************* // diff --git a/run/benchmark/phaseChange/scrivenWedge/scrivenWedge/system/controlDict b/run/benchmark/phaseChange/scrivenWedge/scrivenWedge/system/controlDict index 4b61e117..cd57b612 100755 --- a/run/benchmark/phaseChange/scrivenWedge/scrivenWedge/system/controlDict +++ b/run/benchmark/phaseChange/scrivenWedge/scrivenWedge/system/controlDict @@ -101,14 +101,22 @@ functions intPsi { - type fieldIntegrate; - libs ("libpostProcess.so"); + type volFieldValue; + libs ("libfieldFunctionObjects.so"); - // Write at same frequency as fields writeControl timeStep; writeInterval 1; - region fluid; - field psi0_; + writeFields false; + log true; + region fluid; + + operation volIntegrate; + + fields + ( + psi0_ + ); + } } diff --git a/run/benchmark/phaseChange/scrivenWedge/scrivenWedge/system/fluid/blockMeshDict b/run/benchmark/phaseChange/scrivenWedge/scrivenWedge/system/fluid/blockMeshDict index f20697bc..5ab3fbdd 100755 --- a/run/benchmark/phaseChange/scrivenWedge/scrivenWedge/system/fluid/blockMeshDict +++ b/run/benchmark/phaseChange/scrivenWedge/scrivenWedge/system/fluid/blockMeshDict @@ -14,7 +14,7 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -convertToMeters 0.001; +scale 0.001; vertices ( diff --git a/run/benchmark/phaseChange/scrivenWedge/scrivenWedge/system/fluid/setFieldfromTableDict b/run/benchmark/phaseChange/scrivenWedge/scrivenWedge/system/fluid/setFieldfromTableDict index 8de568fd..b8c48efa 100755 --- a/run/benchmark/phaseChange/scrivenWedge/scrivenWedge/system/fluid/setFieldfromTableDict +++ b/run/benchmark/phaseChange/scrivenWedge/scrivenWedge/system/fluid/setFieldfromTableDict @@ -22,7 +22,7 @@ hasHeaderLine false; timeColumn 0; valueColumns (1); -function sphere; +type sphere; origin (0 0 0); radius 50e-6; scale -1; diff --git a/run/benchmark/phaseChange/stefanProblem/stefanProblem/constant/fluid/polyMesh/boundary b/run/benchmark/phaseChange/stefanProblem/stefanProblem/constant/fluid/polyMesh/boundary index 84d0ffb4..d4298044 100644 --- a/run/benchmark/phaseChange/stefanProblem/stefanProblem/constant/fluid/polyMesh/boundary +++ b/run/benchmark/phaseChange/stefanProblem/stefanProblem/constant/fluid/polyMesh/boundary @@ -1,14 +1,15 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v1812 | -| \\ / A nd | Web: www.OpenFOAM.com | +| \\ / O peration | Version: 2206 | +| \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; + arch "LSB;label=32;scalar=64"; class polyBoundaryMesh; location "constant/fluid/polyMesh"; object boundary; diff --git a/run/benchmark/phaseChange/stefanProblem/stefanProblem/constant/fluid/polyMesh/faces b/run/benchmark/phaseChange/stefanProblem/stefanProblem/constant/fluid/polyMesh/faces index daf290c0..a9a9b685 100644 --- a/run/benchmark/phaseChange/stefanProblem/stefanProblem/constant/fluid/polyMesh/faces +++ b/run/benchmark/phaseChange/stefanProblem/stefanProblem/constant/fluid/polyMesh/faces @@ -1,14 +1,15 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v1812 | -| \\ / A nd | Web: www.OpenFOAM.com | +| \\ / O peration | Version: 2206 | +| \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; + arch "LSB;label=32;scalar=64"; class faceList; location "constant/fluid/polyMesh"; object faces; diff --git a/run/benchmark/phaseChange/stefanProblem/stefanProblem/constant/fluid/polyMesh/neighbour b/run/benchmark/phaseChange/stefanProblem/stefanProblem/constant/fluid/polyMesh/neighbour index c836e5e1..32a934b0 100644 --- a/run/benchmark/phaseChange/stefanProblem/stefanProblem/constant/fluid/polyMesh/neighbour +++ b/run/benchmark/phaseChange/stefanProblem/stefanProblem/constant/fluid/polyMesh/neighbour @@ -1,16 +1,17 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v1812 | -| \\ / A nd | Web: www.OpenFOAM.com | +| \\ / O peration | Version: 2206 | +| \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; + arch "LSB;label=32;scalar=64"; + note "nPoints:404 nCells:100 nFaces:501 nInternalFaces:99"; class labelList; - note "nPoints: 404 nCells: 100 nFaces: 501 nInternalFaces: 99"; location "constant/fluid/polyMesh"; object neighbour; } diff --git a/run/benchmark/phaseChange/stefanProblem/stefanProblem/constant/fluid/polyMesh/owner b/run/benchmark/phaseChange/stefanProblem/stefanProblem/constant/fluid/polyMesh/owner index 88299292..eade427e 100644 --- a/run/benchmark/phaseChange/stefanProblem/stefanProblem/constant/fluid/polyMesh/owner +++ b/run/benchmark/phaseChange/stefanProblem/stefanProblem/constant/fluid/polyMesh/owner @@ -1,16 +1,17 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v1812 | -| \\ / A nd | Web: www.OpenFOAM.com | +| \\ / O peration | Version: 2206 | +| \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; + arch "LSB;label=32;scalar=64"; + note "nPoints:404 nCells:100 nFaces:501 nInternalFaces:99"; class labelList; - note "nPoints: 404 nCells: 100 nFaces: 501 nInternalFaces: 99"; location "constant/fluid/polyMesh"; object owner; } diff --git a/run/benchmark/phaseChange/stefanProblem/stefanProblem/constant/fluid/polyMesh/points b/run/benchmark/phaseChange/stefanProblem/stefanProblem/constant/fluid/polyMesh/points index 51e64542..32c07205 100644 --- a/run/benchmark/phaseChange/stefanProblem/stefanProblem/constant/fluid/polyMesh/points +++ b/run/benchmark/phaseChange/stefanProblem/stefanProblem/constant/fluid/polyMesh/points @@ -1,14 +1,15 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: v1812 | -| \\ / A nd | Web: www.OpenFOAM.com | +| \\ / O peration | Version: 2206 | +| \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; + arch "LSB;label=32;scalar=64"; class vectorField; location "constant/fluid/polyMesh"; object points; diff --git a/run/benchmark/phaseChange/stefanProblem/stefanProblem/system/controlDict b/run/benchmark/phaseChange/stefanProblem/stefanProblem/system/controlDict index 4fac321b..40270be9 100755 --- a/run/benchmark/phaseChange/stefanProblem/stefanProblem/system/controlDict +++ b/run/benchmark/phaseChange/stefanProblem/stefanProblem/system/controlDict @@ -91,26 +91,41 @@ functions intPsi { - type fieldIntegrate; - libs ("libpostProcess.so"); + type volFieldValue; + libs ("libfieldFunctionObjects.so"); - // Write at same frequency as fields writeControl timeStep; writeInterval 1; - region fluid; - field psi0_; - } + writeFields false; + log true; + region fluid; - intPsiSource + operation volIntegrate; + + fields + ( + psi0_ + ); + + } + intPsi { - type fieldIntegrate; - libs ("libpostProcess.so"); + type volFieldValue; + libs ("libfieldFunctionObjects.so"); - // Write at same frequency as fields writeControl timeStep; writeInterval 1; - region fluid; - field massSource_; + writeFields false; + log true; + region fluid; + + operation volIntegrate; + + fields + ( + psi0_ + ); + } } diff --git a/run/benchmark/phaseChange/stefanProblem/stefanProblem/system/fluid/blockMeshDict b/run/benchmark/phaseChange/stefanProblem/stefanProblem/system/fluid/blockMeshDict index 4fcdf825..76868bec 100755 --- a/run/benchmark/phaseChange/stefanProblem/stefanProblem/system/fluid/blockMeshDict +++ b/run/benchmark/phaseChange/stefanProblem/stefanProblem/system/fluid/blockMeshDict @@ -14,7 +14,7 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -convertToMeters 0.001; +scale 0.001; vertices ( diff --git a/run/benchmark/phaseChange/suckingInterface/suckingInterface/system/controlDict b/run/benchmark/phaseChange/suckingInterface/suckingInterface/system/controlDict index 6e72c57a..59eae3ac 100755 --- a/run/benchmark/phaseChange/suckingInterface/suckingInterface/system/controlDict +++ b/run/benchmark/phaseChange/suckingInterface/suckingInterface/system/controlDict @@ -86,26 +86,42 @@ functions intPsi { - type fieldIntegrate; - libs ("libpostProcess.so"); + type volFieldValue; + libs ("libfieldFunctionObjects.so"); - // Write at same frequency as fields writeControl timeStep; writeInterval 1; - region fluid; - field psi0_; + writeFields false; + log true; + region fluid; + + operation volIntegrate; + + fields + ( + psi0_ + ); + } intPsiSource { - type fieldIntegrate; - libs ("libpostProcess.so"); + type volFieldValue; + libs ("libfieldFunctionObjects.so"); - // Write at same frequency as fields writeControl timeStep; writeInterval 1; - region fluid; - field massSource_; + writeFields false; + log true; + region fluid; + + operation volIntegrate; + + fields + ( + psi0_ + ); + } } diff --git a/run/benchmark/phaseChange/suckingInterface/suckingInterface/system/fluid/blockMeshDict b/run/benchmark/phaseChange/suckingInterface/suckingInterface/system/fluid/blockMeshDict index 9ba8eab9..caff05d3 100755 --- a/run/benchmark/phaseChange/suckingInterface/suckingInterface/system/fluid/blockMeshDict +++ b/run/benchmark/phaseChange/suckingInterface/suckingInterface/system/fluid/blockMeshDict @@ -14,7 +14,7 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -convertToMeters 0.001; +scale 0.001; vertices ( diff --git a/run/benchmark/phaseChange/suckingInterface/suckingInterface/system/fluid/fvSolution b/run/benchmark/phaseChange/suckingInterface/suckingInterface/system/fluid/fvSolution index 38d72319..da654a93 100755 --- a/run/benchmark/phaseChange/suckingInterface/suckingInterface/system/fluid/fvSolution +++ b/run/benchmark/phaseChange/suckingInterface/suckingInterface/system/fluid/fvSolution @@ -114,10 +114,8 @@ solvers "(U|h|T.*|k|epsilon|R)" { - solver PBiCGStab; - preconditioner DILU; - //olver smoothSolver;; - //smoother symGaussSeidel; + solver smoothSolver;; + smoother symGaussSeidel; tolerance 1e-7; relTol 0.; minIter 15; diff --git a/run/benchmark/phaseChange/suckingInterface/suckingInterface/system/fluid/setFieldfromTableDict b/run/benchmark/phaseChange/suckingInterface/suckingInterface/system/fluid/setFieldfromTableDict index 00139af1..ac1dcb9e 100644 --- a/run/benchmark/phaseChange/suckingInterface/suckingInterface/system/fluid/setFieldfromTableDict +++ b/run/benchmark/phaseChange/suckingInterface/suckingInterface/system/fluid/setFieldfromTableDict @@ -23,18 +23,9 @@ hasHeaderLine false; timeColumn 0; valueColumns (1); -function plane; +type plane; origin (0 0 0); normal (1 0 0); - - - - - - - - - // ************************************************************************* // diff --git a/run/benchmark/surfaceTension/advectedCircle/advectedCircle/system/blockMeshDict b/run/benchmark/surfaceTension/advectedCircle/advectedCircle/system/blockMeshDict index 0d88e456..9c6c2c8e 100755 --- a/run/benchmark/surfaceTension/advectedCircle/advectedCircle/system/blockMeshDict +++ b/run/benchmark/surfaceTension/advectedCircle/advectedCircle/system/blockMeshDict @@ -14,7 +14,7 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -convertToMeters 1; +scale 1; vertices ( diff --git a/run/benchmark/surfaceTension/advectedCircle/advectedCircle/system/fvSolution b/run/benchmark/surfaceTension/advectedCircle/advectedCircle/system/fvSolution index c5a7543e..dd8e608e 100755 --- a/run/benchmark/surfaceTension/advectedCircle/advectedCircle/system/fvSolution +++ b/run/benchmark/surfaceTension/advectedCircle/advectedCircle/system/fvSolution @@ -71,8 +71,8 @@ solvers U { - solver PBiCGStab; - preconditioner DILU; + solver smoothSolver; + smoother symGaussSeidel; tolerance 1e-20; relTol 0; minIter 10; @@ -80,8 +80,8 @@ solvers UFinal { - solver PBiCGStab; - preconditioner DILU; + solver smoothSolver; + smoother symGaussSeidel; tolerance 1e-20; relTol 0; minIter 10; diff --git a/run/benchmark/surfaceTension/advectedCircle/advectedCircle/system/setAlphaFieldDict b/run/benchmark/surfaceTension/advectedCircle/advectedCircle/system/setAlphaFieldDict index 4f217690..682dbe04 100755 --- a/run/benchmark/surfaceTension/advectedCircle/advectedCircle/system/setAlphaFieldDict +++ b/run/benchmark/surfaceTension/advectedCircle/advectedCircle/system/setAlphaFieldDict @@ -19,7 +19,7 @@ type sin; period 0.003; direction (1 0 0); up (0 1 0); -centre (-7.5e-4 0 0); +origin (-7.5e-4 0 0); amplitude 3e-5;; // ************************************************************************* // diff --git a/run/benchmark/surfaceTension/advectedCircle/advectedCircleTri/Allrun b/run/benchmark/surfaceTension/advectedCircle/advectedCircleTri/Allrun index 62c9c528..bab6bb00 100755 --- a/run/benchmark/surfaceTension/advectedCircle/advectedCircleTri/Allrun +++ b/run/benchmark/surfaceTension/advectedCircle/advectedCircleTri/Allrun @@ -5,7 +5,7 @@ cd ${0%/*} || exit 1 # Run from this directory . $WM_PROJECT_DIR/bin/tools/RunFunctions restore0Dir touch sinwavetri.foam -gmshv306 -3 triSquare.geo +gmshv493 -3 triSquare.geo echo '$End' >> triSquare.msh runApplication gmshToFoam triSquare.msh runApplication changeDictionary diff --git a/run/benchmark/surfaceTension/advectedCircle/advectedCircleTri/system/blockMeshDict b/run/benchmark/surfaceTension/advectedCircle/advectedCircleTri/system/blockMeshDict index 530ed388..b018e973 100755 --- a/run/benchmark/surfaceTension/advectedCircle/advectedCircleTri/system/blockMeshDict +++ b/run/benchmark/surfaceTension/advectedCircle/advectedCircleTri/system/blockMeshDict @@ -14,7 +14,7 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -convertToMeters 0.0015; +scale 0.0015; vertices ( diff --git a/run/benchmark/surfaceTension/advectedCircle/advectedCircleTri/system/fvSolution b/run/benchmark/surfaceTension/advectedCircle/advectedCircleTri/system/fvSolution index c5a7543e..dd8e608e 100755 --- a/run/benchmark/surfaceTension/advectedCircle/advectedCircleTri/system/fvSolution +++ b/run/benchmark/surfaceTension/advectedCircle/advectedCircleTri/system/fvSolution @@ -71,8 +71,8 @@ solvers U { - solver PBiCGStab; - preconditioner DILU; + solver smoothSolver; + smoother symGaussSeidel; tolerance 1e-20; relTol 0; minIter 10; @@ -80,8 +80,8 @@ solvers UFinal { - solver PBiCGStab; - preconditioner DILU; + solver smoothSolver; + smoother symGaussSeidel; tolerance 1e-20; relTol 0; minIter 10; diff --git a/run/benchmark/surfaceTension/advectedCircle/advectedCircleTri/system/setAlphaFieldDict b/run/benchmark/surfaceTension/advectedCircle/advectedCircleTri/system/setAlphaFieldDict index 4f217690..682dbe04 100755 --- a/run/benchmark/surfaceTension/advectedCircle/advectedCircleTri/system/setAlphaFieldDict +++ b/run/benchmark/surfaceTension/advectedCircle/advectedCircleTri/system/setAlphaFieldDict @@ -19,7 +19,7 @@ type sin; period 0.003; direction (1 0 0); up (0 1 0); -centre (-7.5e-4 0 0); +origin (-7.5e-4 0 0); amplitude 3e-5;; // ************************************************************************* // diff --git a/run/benchmark/surfaceTension/advectedCircle/advectedCircleTri/triSquare.msh b/run/benchmark/surfaceTension/advectedCircle/advectedCircleTri/triSquare.msh deleted file mode 100644 index 710a8257..00000000 --- a/run/benchmark/surfaceTension/advectedCircle/advectedCircleTri/triSquare.msh +++ /dev/null @@ -1,44 +0,0 @@ -$MeshFormat -2.2 0 8 -$EndMeshFormat -$PhysicalNames -5 -2 2 "left" -2 3 "right" -2 4 "frontAndBack" -2 5 "walls" -3 1 "internal" -$EndPhysicalNames -$Nodes -10 -1 -2 -0.05 -0.5 -2 2 -0.05 -0.5 -3 2 -0.05 0.5 -4 -2 -0.05 0.5 -5 -2 0.05 0.5 -6 -2 0.05 -0.5 -7 2 0.05 -0.5 -8 2 0.05 0.5 -9 0 -0.05 0 -10 0 0.05 0 -$EndNodes -$Elements -16 -1 2 2 4 6 1 2 9 -2 2 2 4 6 3 4 9 -3 2 2 4 6 1 9 4 -4 2 2 4 6 2 3 9 -5 2 2 4 28 6 7 10 -6 2 2 4 28 8 5 10 -7 2 2 4 28 6 10 5 -8 2 2 4 28 7 8 10 -9 3 2 2 15 4 1 6 5 -10 3 2 5 19 1 2 7 6 -11 3 2 3 23 2 3 8 7 -12 3 2 5 27 3 4 5 8 -13 6 2 1 1 2 1 9 7 6 10 -14 6 2 1 1 4 3 9 5 8 10 -15 6 2 1 1 9 1 4 10 6 5 -16 6 2 1 1 3 2 9 8 7 10 -$EndElements -$End diff --git a/run/benchmark/surfaceTension/curvatureCircle/curvature2D/system/blockMeshDict b/run/benchmark/surfaceTension/curvatureCircle/curvature2D/system/blockMeshDict index e95a6eb5..6932d6e4 100755 --- a/run/benchmark/surfaceTension/curvatureCircle/curvature2D/system/blockMeshDict +++ b/run/benchmark/surfaceTension/curvatureCircle/curvature2D/system/blockMeshDict @@ -14,7 +14,7 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -convertToMeters 1; +scale 1; vertices ( diff --git a/run/benchmark/surfaceTension/curvatureCircle/curvature2D/system/setAlphaFieldDict b/run/benchmark/surfaceTension/curvatureCircle/curvature2D/system/setAlphaFieldDict index 7ce51d2d..d8f0e6e5 100755 --- a/run/benchmark/surfaceTension/curvatureCircle/curvature2D/system/setAlphaFieldDict +++ b/run/benchmark/surfaceTension/curvatureCircle/curvature2D/system/setAlphaFieldDict @@ -19,7 +19,7 @@ field "alpha1"; type cylinder; radius 0.49999999; direction (0 1 0); -centre (1.01 0 1.01); +origin (1.01 0 1.01); // ************************************************************************* // diff --git a/run/benchmark/surfaceTension/curvatureCircle/curvature2DTri/Allclean b/run/benchmark/surfaceTension/curvatureCircle/curvature2DTri/Allclean index 68dcf800..fdffeed9 100755 --- a/run/benchmark/surfaceTension/curvatureCircle/curvature2DTri/Allclean +++ b/run/benchmark/surfaceTension/curvatureCircle/curvature2DTri/Allclean @@ -5,6 +5,6 @@ cd ${0%/*} || exit 1 # Run from this directory . $WM_PROJECT_DIR/bin/tools/CleanFunctions cleanCase -rm -rf 0 isoFaces +rm -rf 0 isoFaces triSquare.msh #------------------------------------------------------------------------------ diff --git a/run/benchmark/surfaceTension/curvatureCircle/curvature2DTri/Allrun b/run/benchmark/surfaceTension/curvatureCircle/curvature2DTri/Allrun index 8296b466..0e4e56e2 100755 --- a/run/benchmark/surfaceTension/curvatureCircle/curvature2DTri/Allrun +++ b/run/benchmark/surfaceTension/curvatureCircle/curvature2DTri/Allrun @@ -4,8 +4,7 @@ cd ${0%/*} || exit 1 # Run from this directory . $WM_PROJECT_DIR/bin/tools/RunFunctions touch curvature.foam -gmshv306 -3 triSquare.geo -echo '$End' >> triSquare.msh +gmshv493 -3 triSquare.geo runApplication gmshToFoam triSquare.msh runApplication changeDictionary restore0Dir diff --git a/run/benchmark/surfaceTension/curvatureCircle/curvature2DTri/system/blockMeshDict b/run/benchmark/surfaceTension/curvatureCircle/curvature2DTri/system/blockMeshDict index e95a6eb5..6932d6e4 100755 --- a/run/benchmark/surfaceTension/curvatureCircle/curvature2DTri/system/blockMeshDict +++ b/run/benchmark/surfaceTension/curvatureCircle/curvature2DTri/system/blockMeshDict @@ -14,7 +14,7 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -convertToMeters 1; +scale 1; vertices ( diff --git a/run/benchmark/surfaceTension/curvatureCircle/curvature2DTri/system/setAlphaFieldDict b/run/benchmark/surfaceTension/curvatureCircle/curvature2DTri/system/setAlphaFieldDict index 7ce51d2d..d8f0e6e5 100755 --- a/run/benchmark/surfaceTension/curvatureCircle/curvature2DTri/system/setAlphaFieldDict +++ b/run/benchmark/surfaceTension/curvatureCircle/curvature2DTri/system/setAlphaFieldDict @@ -19,7 +19,7 @@ field "alpha1"; type cylinder; radius 0.49999999; direction (0 1 0); -centre (1.01 0 1.01); +origin (1.01 0 1.01); // ************************************************************************* // diff --git a/run/benchmark/surfaceTension/curvatureCircle/curvature2DTri/triSquare.msh b/run/benchmark/surfaceTension/curvatureCircle/curvature2DTri/triSquare.msh deleted file mode 100644 index 72e3ac8b..00000000 --- a/run/benchmark/surfaceTension/curvatureCircle/curvature2DTri/triSquare.msh +++ /dev/null @@ -1,1003 +0,0 @@ -$MeshFormat -2.2 0 8 -$EndMeshFormat -$PhysicalNames -4 -2 2 "back" -2 3 "rim" -2 4 "front" -3 1 "internal" -$EndPhysicalNames -$Nodes -266 -1 -0 -0.05 0 -2 2 -0.05 0 -3 2 -0.05 2 -4 0 -0.05 2 -5 0 0.05 2 -6 0 0.05 0 -7 2 0.05 0 -8 2 0.05 2 -9 0.2222222222218165 -0.05 0 -10 0.4444444444434286 -0.05 0 -11 0.6666666666650021 -0.05 0 -12 0.8888888888865757 -0.05 0 -13 1.111111111108767 -0.05 0 -14 1.333333333331575 -0.05 0 -15 1.555555555554383 -0.05 0 -16 1.777777777777192 -0.05 0 -17 2 -0.05 0.2222222222218165 -18 2 -0.05 0.4444444444434286 -19 2 -0.05 0.6666666666650021 -20 2 -0.05 0.8888888888865757 -21 2 -0.05 1.111111111108767 -22 2 -0.05 1.333333333331575 -23 2 -0.05 1.555555555554383 -24 2 -0.05 1.777777777777192 -25 1.777777777776852 -0.05 2 -26 1.555555555555864 -0.05 2 -27 1.333333333335184 -0.05 2 -28 1.111111111114503 -0.05 2 -29 0.8888888888925885 -0.05 2 -30 0.6666666666694414 -0.05 2 -31 0.4444444444462943 -0.05 2 -32 0.2222222222231471 -0.05 2 -33 0 -0.05 1.777777777776852 -34 0 -0.05 1.555555555555864 -35 0 -0.05 1.333333333335184 -36 0 -0.05 1.111111111114503 -37 0 -0.05 0.8888888888925885 -38 0 -0.05 0.6666666666694414 -39 0 -0.05 0.4444444444462943 -40 0 -0.05 0.2222222222231471 -41 0 0.05 1.777777777776852 -42 0 0.05 1.555555555555864 -43 0 0.05 1.333333333335184 -44 0 0.05 1.111111111114503 -45 0 0.05 0.8888888888925885 -46 0 0.05 0.6666666666694414 -47 0 0.05 0.4444444444462943 -48 0 0.05 0.2222222222231471 -49 0.2222222222218165 0.05 0 -50 0.4444444444434286 0.05 0 -51 0.6666666666650021 0.05 0 -52 0.8888888888865757 0.05 0 -53 1.111111111108767 0.05 0 -54 1.333333333331575 0.05 0 -55 1.555555555554383 0.05 0 -56 1.777777777777192 0.05 0 -57 2 0.05 0.2222222222218165 -58 2 0.05 0.4444444444434286 -59 2 0.05 0.6666666666650021 -60 2 0.05 0.8888888888865757 -61 2 0.05 1.111111111108767 -62 2 0.05 1.333333333331575 -63 2 0.05 1.555555555554383 -64 2 0.05 1.777777777777192 -65 1.777777777776852 0.05 2 -66 1.555555555555864 0.05 2 -67 1.333333333335184 0.05 2 -68 1.111111111114503 0.05 2 -69 0.8888888888925885 0.05 2 -70 0.6666666666694414 0.05 2 -71 0.4444444444462943 0.05 2 -72 0.2222222222231471 0.05 2 -73 1.008882266433366 -0.05 1.003270929861117 -74 1.416666666666894 -0.05 1.416666666666443 -75 0.5870986626406687 -0.05 1.420578125716495 -76 1.416666666666502 -0.05 0.58333333333307 -77 0.5807382936228226 -0.05 0.5866138859950274 -78 0.9996632857399345 -0.05 1.582643375854696 -79 1.562307823955064 -0.05 1.030318326056299 -80 0.4173566241453439 -0.05 0.9996632857399461 -81 1.030318326056293 -0.05 0.4376921760449784 -82 1.665598290598542 -0.05 1.665598290598175 -83 0.3344017094018713 -0.05 1.665598290598663 -84 1.665598290598065 -0.05 0.3344017094013922 -85 0.3344017094012708 -0.05 0.3344017094019804 -86 1.13161375661422 -0.05 1.285052910052513 -87 0.7264522412322941 -0.05 1.146533029032955 -88 1.288666524529382 -0.05 0.8699226662690922 -89 0.8516259285403525 -0.05 0.7305864992421995 -90 1.297649533118867 -0.05 1.687703706420593 -91 0.3122962935794548 -0.05 1.297649533118919 -92 1.688049975453314 -0.05 0.7032907664093321 -93 0.703290766409281 -0.05 0.3119500245467329 -94 1.690954779520614 -0.05 1.306840704128668 -95 1.306840704128645 -0.05 0.3090452204793769 -96 0.6979603544504887 -0.05 1.68864386387067 -97 0.3113561361293212 -0.05 0.6979603544505086 -98 1.377912874588844 -0.05 1.144022802498461 -99 0.8568440069012876 -0.05 1.323672160554052 -100 1.144022802498482 -0.05 0.622087125411206 -101 0.6761399779738868 -0.05 0.857265869963486 -102 0.99998247010613 -0.05 1.803573795519565 -103 0.1964262044804551 -0.05 0.9999824701061333 -104 1.799411884411671 -0.05 0.999999999997671 -105 0.9999999999976706 -0.05 0.2005881155883505 -106 1.457210711773072 -0.05 1.809338336364794 -107 0.1906616636352317 -0.05 1.45721071177312 -108 1.809387803369438 -0.05 0.5429236167309509 -109 0.5429236167309028 -0.05 0.1906121966305876 -110 1.810701487701287 -0.05 1.453427322518931 -111 1.453427322518897 -0.05 0.1892985122986967 -112 0.5472585429928489 -0.05 1.81037135689416 -113 0.189628643105823 -0.05 0.5472585429928827 -114 1.210412440067874 -0.05 1.488883253423635 -115 0.5111167465764207 -0.05 1.21041244006791 -116 1.492334695453989 -0.05 0.7907408975659884 -117 0.788889049583438 -0.05 0.5102274656217533 -118 1.190619524068427 -0.05 1.074217581852836 -119 1.075320075976742 -0.05 0.8228249988961952 -120 0.7883498305516383 -0.05 1.501741997935555 -121 0.4983990717978669 -0.05 0.7883419663537012 -122 1.811456165380825 -0.05 1.81145616538082 -123 0.1951115405061553 -0.05 1.804888459493844 -124 1.804888459493696 -0.05 0.1951115405061828 -125 0.1951115405061281 -0.05 0.1951115405062905 -126 1.441885411967884 -0.05 1.58621607860563 -127 0.4144114762789607 -0.05 1.442537321809523 -128 1.586857274950241 -0.05 0.5584859156431052 -129 0.5577447676942731 -0.05 0.4141165106727005 -130 1.603774829582057 -0.05 1.449106218160141 -131 1.449106218160137 -0.05 0.3962251704178981 -132 0.5615800960527461 -0.05 1.588245159470844 -133 0.4120447702918962 -0.05 0.5614488283111334 -134 0.9731688732764706 -0.05 1.181320828040965 -135 0.8231574228780214 -0.05 0.9735906029623728 -136 1.518570324431383 -0.05 1.253411708507248 -137 1.253411708507264 -0.05 0.4814296755686236 -138 0.1494421005277161 -0.05 1.221262763553946 -139 1.221262763553938 -0.05 1.850557899472312 -140 0.7791247684344389 -0.05 1.846216026689749 -141 0.1537839733102517 -0.05 0.7791247684344456 -142 1.839788562235696 -0.05 1.220987553661376 -143 1.220987553661366 -0.05 0.1602114377643059 -144 0.7792109092121347 -0.05 0.1542720135355118 -145 1.845727986464514 -0.05 0.7792109092121458 -146 1.653519700217031 -0.05 1.857278558468758 -147 0.1440349827086516 -0.05 1.652206159039669 -148 1.857551188736131 -0.05 1.6527630223659 -149 0.3486876919140633 -0.05 1.856171621397333 -150 1.651449481188447 -0.05 0.1437623524412543 -151 0.1438283786026444 -0.05 0.3486876919141189 -152 1.85597491069224 -0.05 0.3478207066607542 -153 0.3478207066607094 -0.05 0.1440250893077717 -154 0.7035002424143305 -0.05 1.308622396758385 -155 1.395379204476062 -0.05 0.9908479602542757 -156 0.6912850430977036 -0.05 0.703731598046483 -157 0.9826012899755654 -0.05 0.6176431997891976 -158 0.8612259166571928 -0.05 1.684619537770038 -159 0.315400615049041 -0.05 0.8612247932003567 -160 1.682206674910885 -0.05 1.162311658470252 -161 1.162311658470248 -0.05 0.3177933250891271 -162 1.132302938268942 -0.05 1.683694338930928 -163 1.679621438607653 -0.05 0.8667230866507073 -164 0.3163056610691033 -0.05 1.132302938268967 -165 0.8708276274297054 -0.05 0.319172173928713 -166 1.300767543065493 -0.05 1.292537234203102 -167 1.012588733221726 -0.05 1.402921872082391 -168 0.598046095025601 -0.05 1.013545669626528 -169 1.29323175381464 -0.05 0.7006044198156187 -170 1.008882266433366 0.05 1.003270929861117 -171 1.416666666666894 0.05 1.416666666666443 -172 0.5870986626406687 0.05 1.420578125716495 -173 1.416666666666502 0.05 0.58333333333307 -174 0.5807382936228226 0.05 0.5866138859950274 -175 0.9996632857399345 0.05 1.582643375854696 -176 1.562307823955064 0.05 1.030318326056299 -177 0.4173566241453439 0.05 0.9996632857399461 -178 1.030318326056293 0.05 0.4376921760449784 -179 1.665598290598542 0.05 1.665598290598175 -180 0.3344017094018713 0.05 1.665598290598663 -181 1.665598290598065 0.05 0.3344017094013922 -182 0.3344017094012708 0.05 0.3344017094019804 -183 1.13161375661422 0.05 1.285052910052513 -184 0.7264522412322941 0.05 1.146533029032955 -185 1.288666524529382 0.05 0.8699226662690922 -186 0.8516259285403525 0.05 0.7305864992421995 -187 1.297649533118867 0.05 1.687703706420593 -188 0.3122962935794548 0.05 1.297649533118919 -189 1.688049975453314 0.05 0.7032907664093321 -190 0.703290766409281 0.05 0.3119500245467329 -191 1.690954779520614 0.05 1.306840704128668 -192 1.306840704128645 0.05 0.3090452204793769 -193 0.6979603544504887 0.05 1.68864386387067 -194 0.3113561361293212 0.05 0.6979603544505086 -195 1.377912874588844 0.05 1.144022802498461 -196 0.8568440069012876 0.05 1.323672160554052 -197 1.144022802498482 0.05 0.622087125411206 -198 0.6761399779738868 0.05 0.857265869963486 -199 0.99998247010613 0.05 1.803573795519565 -200 0.1964262044804551 0.05 0.9999824701061333 -201 1.799411884411671 0.05 0.999999999997671 -202 0.9999999999976706 0.05 0.2005881155883505 -203 1.457210711773072 0.05 1.809338336364794 -204 0.1906616636352317 0.05 1.45721071177312 -205 1.809387803369438 0.05 0.5429236167309509 -206 0.5429236167309028 0.05 0.1906121966305876 -207 1.810701487701287 0.05 1.453427322518931 -208 1.453427322518897 0.05 0.1892985122986967 -209 0.5472585429928489 0.05 1.81037135689416 -210 0.189628643105823 0.05 0.5472585429928827 -211 1.210412440067874 0.05 1.488883253423635 -212 0.5111167465764207 0.05 1.21041244006791 -213 1.492334695453989 0.05 0.7907408975659884 -214 0.788889049583438 0.05 0.5102274656217533 -215 1.190619524068427 0.05 1.074217581852836 -216 1.075320075976742 0.05 0.8228249988961952 -217 0.7883498305516383 0.05 1.501741997935555 -218 0.4983990717978669 0.05 0.7883419663537012 -219 1.811456165380825 0.05 1.81145616538082 -220 0.1951115405061553 0.05 1.804888459493844 -221 1.804888459493696 0.05 0.1951115405061828 -222 0.1951115405061281 0.05 0.1951115405062905 -223 1.441885411967884 0.05 1.58621607860563 -224 0.4144114762789607 0.05 1.442537321809523 -225 1.586857274950241 0.05 0.5584859156431052 -226 0.5577447676942731 0.05 0.4141165106727005 -227 1.603774829582057 0.05 1.449106218160141 -228 1.449106218160137 0.05 0.3962251704178981 -229 0.5615800960527461 0.05 1.588245159470844 -230 0.4120447702918962 0.05 0.5614488283111334 -231 0.9731688732764706 0.05 1.181320828040965 -232 0.8231574228780214 0.05 0.9735906029623728 -233 1.518570324431383 0.05 1.253411708507248 -234 1.253411708507264 0.05 0.4814296755686236 -235 0.1494421005277161 0.05 1.221262763553946 -236 1.221262763553938 0.05 1.850557899472312 -237 0.7791247684344389 0.05 1.846216026689749 -238 0.1537839733102517 0.05 0.7791247684344456 -239 1.839788562235696 0.05 1.220987553661376 -240 1.220987553661366 0.05 0.1602114377643059 -241 0.7792109092121347 0.05 0.1542720135355118 -242 1.845727986464514 0.05 0.7792109092121458 -243 1.653519700217031 0.05 1.857278558468758 -244 0.1440349827086516 0.05 1.652206159039669 -245 1.857551188736131 0.05 1.6527630223659 -246 0.3486876919140633 0.05 1.856171621397333 -247 1.651449481188447 0.05 0.1437623524412543 -248 0.1438283786026444 0.05 0.3486876919141189 -249 1.85597491069224 0.05 0.3478207066607542 -250 0.3478207066607094 0.05 0.1440250893077717 -251 0.7035002424143305 0.05 1.308622396758385 -252 1.395379204476062 0.05 0.9908479602542757 -253 0.6912850430977036 0.05 0.703731598046483 -254 0.9826012899755654 0.05 0.6176431997891976 -255 0.8612259166571928 0.05 1.684619537770038 -256 0.315400615049041 0.05 0.8612247932003567 -257 1.682206674910885 0.05 1.162311658470252 -258 1.162311658470248 0.05 0.3177933250891271 -259 1.132302938268942 0.05 1.683694338930928 -260 1.679621438607653 0.05 0.8667230866507073 -261 0.3163056610691033 0.05 1.132302938268967 -262 0.8708276274297054 0.05 0.319172173928713 -263 1.300767543065493 0.05 1.292537234203102 -264 1.012588733221726 0.05 1.402921872082391 -265 0.598046095025601 0.05 1.013545669626528 -266 1.29323175381464 0.05 0.7006044198156187 -$EndNodes -$Elements -720 -1 2 2 2 6 92 116 128 -2 2 2 2 6 93 117 129 -3 2 2 2 6 76 128 116 -4 2 2 2 6 77 129 117 -5 2 2 2 6 89 119 135 -6 2 2 2 6 90 114 126 -7 2 2 2 6 91 115 127 -8 2 2 2 6 74 126 114 -9 2 2 2 6 75 127 115 -10 2 2 2 6 73 135 119 -11 2 2 2 6 88 118 119 -12 2 2 2 6 73 119 118 -13 2 2 2 6 79 136 98 -14 2 2 2 6 81 137 100 -15 2 2 2 6 87 134 99 -16 2 2 2 6 89 135 101 -17 2 2 2 6 87 135 134 -18 2 2 2 6 99 167 120 -19 2 2 2 6 101 168 121 -20 2 2 2 6 98 166 118 -21 2 2 2 6 100 169 119 -22 2 2 2 6 167 78 120 -23 2 2 2 6 168 80 121 -24 2 2 2 6 30 112 140 -25 2 2 2 6 38 113 141 -26 2 2 2 6 22 110 142 -27 2 2 2 6 14 111 143 -28 2 2 2 6 35 138 107 -29 2 2 2 6 27 139 106 -30 2 2 2 6 11 144 109 -31 2 2 2 6 19 145 108 -32 2 2 2 6 166 86 118 -33 2 2 2 6 169 88 119 -34 2 2 2 6 3 25 122 -35 2 2 2 6 2 17 124 -36 2 2 2 6 4 33 123 -37 2 2 2 6 1 9 125 -38 2 2 2 6 2 124 16 -39 2 2 2 6 1 125 40 -40 2 2 2 6 3 122 24 -41 2 2 2 6 4 123 32 -42 2 2 2 6 34 35 107 -43 2 2 2 6 26 27 106 -44 2 2 2 6 30 31 112 -45 2 2 2 6 22 23 110 -46 2 2 2 6 10 11 109 -47 2 2 2 6 38 39 113 -48 2 2 2 6 18 19 108 -49 2 2 2 6 14 15 111 -50 2 2 2 6 96 140 112 -51 2 2 2 6 97 141 113 -52 2 2 2 6 94 142 110 -53 2 2 2 6 95 143 111 -54 2 2 2 6 91 107 138 -55 2 2 2 6 90 106 139 -56 2 2 2 6 93 109 144 -57 2 2 2 6 92 108 145 -58 2 2 2 6 86 134 118 -59 2 2 2 6 79 160 136 -60 2 2 2 6 81 161 137 -61 2 2 2 6 79 98 155 -62 2 2 2 6 87 99 154 -63 2 2 2 6 81 100 157 -64 2 2 2 6 89 101 156 -65 2 2 2 6 73 134 135 -66 2 2 2 6 28 29 102 -67 2 2 2 6 36 37 103 -68 2 2 2 6 20 21 104 -69 2 2 2 6 12 13 105 -70 2 2 2 6 73 118 134 -71 2 2 2 6 78 158 120 -72 2 2 2 6 80 159 121 -73 2 2 2 6 28 102 139 -74 2 2 2 6 36 103 138 -75 2 2 2 6 29 140 102 -76 2 2 2 6 37 141 103 -77 2 2 2 6 20 104 145 -78 2 2 2 6 12 105 144 -79 2 2 2 6 21 142 104 -80 2 2 2 6 13 143 105 -81 2 2 2 6 90 126 106 -82 2 2 2 6 91 127 107 -83 2 2 2 6 92 128 108 -84 2 2 2 6 93 129 109 -85 2 2 2 6 82 130 110 -86 2 2 2 6 83 132 112 -87 2 2 2 6 84 131 111 -88 2 2 2 6 85 133 113 -89 2 2 2 6 75 120 132 -90 2 2 2 6 96 132 120 -91 2 2 2 6 77 121 133 -92 2 2 2 6 97 133 121 -93 2 2 2 6 77 117 156 -94 2 2 2 6 89 156 117 -95 2 2 2 6 78 114 162 -96 2 2 2 6 80 115 164 -97 2 2 2 6 102 162 139 -98 2 2 2 6 103 164 138 -99 2 2 2 6 104 163 145 -100 2 2 2 6 105 165 144 -101 2 2 2 6 104 142 160 -102 2 2 2 6 102 140 158 -103 2 2 2 6 105 143 161 -104 2 2 2 6 103 141 159 -105 2 2 2 6 75 115 154 -106 2 2 2 6 87 154 115 -107 2 2 2 6 79 155 116 -108 2 2 2 6 88 116 155 -109 2 2 2 6 89 117 157 -110 2 2 2 6 81 157 117 -111 2 2 2 6 83 127 132 -112 2 2 2 6 82 126 130 -113 2 2 2 6 85 129 133 -114 2 2 2 6 84 128 131 -115 2 2 2 6 82 106 126 -116 2 2 2 6 83 107 127 -117 2 2 2 6 84 108 128 -118 2 2 2 6 85 109 129 -119 2 2 2 6 90 162 114 -120 2 2 2 6 91 164 115 -121 2 2 2 6 94 110 130 -122 2 2 2 6 95 111 131 -123 2 2 2 6 96 112 132 -124 2 2 2 6 97 113 133 -125 2 2 2 6 78 167 114 -126 2 2 2 6 76 116 169 -127 2 2 2 6 80 168 115 -128 2 2 2 6 92 163 116 -129 2 2 2 6 93 165 117 -130 2 2 2 6 79 116 163 -131 2 2 2 6 81 117 165 -132 2 2 2 6 25 26 146 -133 2 2 2 6 33 34 147 -134 2 2 2 6 17 18 152 -135 2 2 2 6 9 10 153 -136 2 2 2 6 23 24 148 -137 2 2 2 6 15 16 150 -138 2 2 2 6 31 32 149 -139 2 2 2 6 39 40 151 -140 2 2 2 6 86 167 134 -141 2 2 2 6 99 134 167 -142 2 2 2 6 87 168 135 -143 2 2 2 6 101 135 168 -144 2 2 2 6 86 114 167 -145 2 2 2 6 87 115 168 -146 2 2 2 6 88 169 116 -147 2 2 2 6 78 162 102 -148 2 2 2 6 78 102 158 -149 2 2 2 6 80 164 103 -150 2 2 2 6 80 103 159 -151 2 2 2 6 79 163 104 -152 2 2 2 6 79 104 160 -153 2 2 2 6 81 165 105 -154 2 2 2 6 81 105 161 -155 2 2 2 6 82 146 106 -156 2 2 2 6 83 147 107 -157 2 2 2 6 84 152 108 -158 2 2 2 6 85 153 109 -159 2 2 2 6 82 110 148 -160 2 2 2 6 83 112 149 -161 2 2 2 6 84 111 150 -162 2 2 2 6 85 113 151 -163 2 2 2 6 74 114 166 -164 2 2 2 6 86 166 114 -165 2 2 2 6 74 166 136 -166 2 2 2 6 98 136 166 -167 2 2 2 6 76 169 137 -168 2 2 2 6 100 137 169 -169 2 2 2 6 96 120 158 -170 2 2 2 6 97 121 159 -171 2 2 2 6 29 30 140 -172 2 2 2 6 37 38 141 -173 2 2 2 6 21 22 142 -174 2 2 2 6 13 14 143 -175 2 2 2 6 35 36 138 -176 2 2 2 6 27 28 139 -177 2 2 2 6 11 12 144 -178 2 2 2 6 19 20 145 -179 2 2 2 6 94 136 160 -180 2 2 2 6 95 137 161 -181 2 2 2 6 98 118 155 -182 2 2 2 6 88 155 118 -183 2 2 2 6 100 119 157 -184 2 2 2 6 89 157 119 -185 2 2 2 6 74 136 130 -186 2 2 2 6 94 130 136 -187 2 2 2 6 76 137 131 -188 2 2 2 6 95 131 137 -189 2 2 2 6 26 106 146 -190 2 2 2 6 34 107 147 -191 2 2 2 6 18 108 152 -192 2 2 2 6 10 109 153 -193 2 2 2 6 23 148 110 -194 2 2 2 6 15 150 111 -195 2 2 2 6 31 149 112 -196 2 2 2 6 39 151 113 -197 2 2 2 6 75 154 120 -198 2 2 2 6 99 120 154 -199 2 2 2 6 101 121 156 -200 2 2 2 6 77 156 121 -201 2 2 2 6 74 130 126 -202 2 2 2 6 75 132 127 -203 2 2 2 6 76 131 128 -204 2 2 2 6 77 133 129 -205 2 2 2 6 25 146 122 -206 2 2 2 6 17 152 124 -207 2 2 2 6 33 147 123 -208 2 2 2 6 9 153 125 -209 2 2 2 6 24 122 148 -210 2 2 2 6 16 124 150 -211 2 2 2 6 32 123 149 -212 2 2 2 6 40 125 151 -213 2 2 2 6 82 122 146 -214 2 2 2 6 83 123 147 -215 2 2 2 6 82 148 122 -216 2 2 2 6 83 149 123 -217 2 2 2 6 84 124 152 -218 2 2 2 6 84 150 124 -219 2 2 2 6 85 125 153 -220 2 2 2 6 85 151 125 -221 2 2 2 6 90 139 162 -222 2 2 2 6 91 138 164 -223 2 2 2 6 92 145 163 -224 2 2 2 6 93 144 165 -225 2 2 2 6 94 160 142 -226 2 2 2 6 95 161 143 -227 2 2 2 6 96 158 140 -228 2 2 2 6 97 159 141 -229 2 2 4 28 189 213 225 -230 2 2 4 28 190 214 226 -231 2 2 4 28 173 225 213 -232 2 2 4 28 174 226 214 -233 2 2 4 28 186 216 232 -234 2 2 4 28 187 211 223 -235 2 2 4 28 188 212 224 -236 2 2 4 28 171 223 211 -237 2 2 4 28 172 224 212 -238 2 2 4 28 170 232 216 -239 2 2 4 28 185 215 216 -240 2 2 4 28 170 216 215 -241 2 2 4 28 176 233 195 -242 2 2 4 28 178 234 197 -243 2 2 4 28 184 231 196 -244 2 2 4 28 186 232 198 -245 2 2 4 28 184 232 231 -246 2 2 4 28 196 264 217 -247 2 2 4 28 198 265 218 -248 2 2 4 28 195 263 215 -249 2 2 4 28 197 266 216 -250 2 2 4 28 264 175 217 -251 2 2 4 28 265 177 218 -252 2 2 4 28 70 209 237 -253 2 2 4 28 46 210 238 -254 2 2 4 28 62 207 239 -255 2 2 4 28 54 208 240 -256 2 2 4 28 43 235 204 -257 2 2 4 28 67 236 203 -258 2 2 4 28 51 241 206 -259 2 2 4 28 59 242 205 -260 2 2 4 28 263 183 215 -261 2 2 4 28 266 185 216 -262 2 2 4 28 8 65 219 -263 2 2 4 28 7 57 221 -264 2 2 4 28 5 41 220 -265 2 2 4 28 6 49 222 -266 2 2 4 28 7 221 56 -267 2 2 4 28 6 222 48 -268 2 2 4 28 8 219 64 -269 2 2 4 28 5 220 72 -270 2 2 4 28 42 43 204 -271 2 2 4 28 66 67 203 -272 2 2 4 28 70 71 209 -273 2 2 4 28 62 63 207 -274 2 2 4 28 50 51 206 -275 2 2 4 28 46 47 210 -276 2 2 4 28 58 59 205 -277 2 2 4 28 54 55 208 -278 2 2 4 28 193 237 209 -279 2 2 4 28 194 238 210 -280 2 2 4 28 191 239 207 -281 2 2 4 28 192 240 208 -282 2 2 4 28 188 204 235 -283 2 2 4 28 187 203 236 -284 2 2 4 28 190 206 241 -285 2 2 4 28 189 205 242 -286 2 2 4 28 183 231 215 -287 2 2 4 28 176 257 233 -288 2 2 4 28 178 258 234 -289 2 2 4 28 176 195 252 -290 2 2 4 28 184 196 251 -291 2 2 4 28 178 197 254 -292 2 2 4 28 186 198 253 -293 2 2 4 28 170 231 232 -294 2 2 4 28 68 69 199 -295 2 2 4 28 44 45 200 -296 2 2 4 28 60 61 201 -297 2 2 4 28 52 53 202 -298 2 2 4 28 170 215 231 -299 2 2 4 28 175 255 217 -300 2 2 4 28 177 256 218 -301 2 2 4 28 68 199 236 -302 2 2 4 28 44 200 235 -303 2 2 4 28 69 237 199 -304 2 2 4 28 45 238 200 -305 2 2 4 28 60 201 242 -306 2 2 4 28 52 202 241 -307 2 2 4 28 61 239 201 -308 2 2 4 28 53 240 202 -309 2 2 4 28 187 223 203 -310 2 2 4 28 188 224 204 -311 2 2 4 28 189 225 205 -312 2 2 4 28 190 226 206 -313 2 2 4 28 179 227 207 -314 2 2 4 28 180 229 209 -315 2 2 4 28 181 228 208 -316 2 2 4 28 182 230 210 -317 2 2 4 28 172 217 229 -318 2 2 4 28 193 229 217 -319 2 2 4 28 174 218 230 -320 2 2 4 28 194 230 218 -321 2 2 4 28 174 214 253 -322 2 2 4 28 186 253 214 -323 2 2 4 28 175 211 259 -324 2 2 4 28 177 212 261 -325 2 2 4 28 199 259 236 -326 2 2 4 28 200 261 235 -327 2 2 4 28 201 260 242 -328 2 2 4 28 202 262 241 -329 2 2 4 28 201 239 257 -330 2 2 4 28 199 237 255 -331 2 2 4 28 202 240 258 -332 2 2 4 28 200 238 256 -333 2 2 4 28 172 212 251 -334 2 2 4 28 184 251 212 -335 2 2 4 28 176 252 213 -336 2 2 4 28 185 213 252 -337 2 2 4 28 186 214 254 -338 2 2 4 28 178 254 214 -339 2 2 4 28 180 224 229 -340 2 2 4 28 179 223 227 -341 2 2 4 28 182 226 230 -342 2 2 4 28 181 225 228 -343 2 2 4 28 179 203 223 -344 2 2 4 28 180 204 224 -345 2 2 4 28 181 205 225 -346 2 2 4 28 182 206 226 -347 2 2 4 28 187 259 211 -348 2 2 4 28 188 261 212 -349 2 2 4 28 191 207 227 -350 2 2 4 28 192 208 228 -351 2 2 4 28 193 209 229 -352 2 2 4 28 194 210 230 -353 2 2 4 28 175 264 211 -354 2 2 4 28 173 213 266 -355 2 2 4 28 177 265 212 -356 2 2 4 28 189 260 213 -357 2 2 4 28 190 262 214 -358 2 2 4 28 176 213 260 -359 2 2 4 28 178 214 262 -360 2 2 4 28 65 66 243 -361 2 2 4 28 41 42 244 -362 2 2 4 28 57 58 249 -363 2 2 4 28 49 50 250 -364 2 2 4 28 63 64 245 -365 2 2 4 28 55 56 247 -366 2 2 4 28 71 72 246 -367 2 2 4 28 47 48 248 -368 2 2 4 28 183 264 231 -369 2 2 4 28 196 231 264 -370 2 2 4 28 184 265 232 -371 2 2 4 28 198 232 265 -372 2 2 4 28 183 211 264 -373 2 2 4 28 184 212 265 -374 2 2 4 28 185 266 213 -375 2 2 4 28 175 259 199 -376 2 2 4 28 175 199 255 -377 2 2 4 28 177 261 200 -378 2 2 4 28 177 200 256 -379 2 2 4 28 176 260 201 -380 2 2 4 28 176 201 257 -381 2 2 4 28 178 262 202 -382 2 2 4 28 178 202 258 -383 2 2 4 28 179 243 203 -384 2 2 4 28 180 244 204 -385 2 2 4 28 181 249 205 -386 2 2 4 28 182 250 206 -387 2 2 4 28 179 207 245 -388 2 2 4 28 180 209 246 -389 2 2 4 28 181 208 247 -390 2 2 4 28 182 210 248 -391 2 2 4 28 171 211 263 -392 2 2 4 28 183 263 211 -393 2 2 4 28 171 263 233 -394 2 2 4 28 195 233 263 -395 2 2 4 28 173 266 234 -396 2 2 4 28 197 234 266 -397 2 2 4 28 193 217 255 -398 2 2 4 28 194 218 256 -399 2 2 4 28 69 70 237 -400 2 2 4 28 45 46 238 -401 2 2 4 28 61 62 239 -402 2 2 4 28 53 54 240 -403 2 2 4 28 43 44 235 -404 2 2 4 28 67 68 236 -405 2 2 4 28 51 52 241 -406 2 2 4 28 59 60 242 -407 2 2 4 28 191 233 257 -408 2 2 4 28 192 234 258 -409 2 2 4 28 195 215 252 -410 2 2 4 28 185 252 215 -411 2 2 4 28 197 216 254 -412 2 2 4 28 186 254 216 -413 2 2 4 28 171 233 227 -414 2 2 4 28 191 227 233 -415 2 2 4 28 173 234 228 -416 2 2 4 28 192 228 234 -417 2 2 4 28 66 203 243 -418 2 2 4 28 42 204 244 -419 2 2 4 28 58 205 249 -420 2 2 4 28 50 206 250 -421 2 2 4 28 63 245 207 -422 2 2 4 28 55 247 208 -423 2 2 4 28 71 246 209 -424 2 2 4 28 47 248 210 -425 2 2 4 28 172 251 217 -426 2 2 4 28 196 217 251 -427 2 2 4 28 198 218 253 -428 2 2 4 28 174 253 218 -429 2 2 4 28 171 227 223 -430 2 2 4 28 172 229 224 -431 2 2 4 28 173 228 225 -432 2 2 4 28 174 230 226 -433 2 2 4 28 65 243 219 -434 2 2 4 28 57 249 221 -435 2 2 4 28 41 244 220 -436 2 2 4 28 49 250 222 -437 2 2 4 28 64 219 245 -438 2 2 4 28 56 221 247 -439 2 2 4 28 72 220 246 -440 2 2 4 28 48 222 248 -441 2 2 4 28 179 219 243 -442 2 2 4 28 180 220 244 -443 2 2 4 28 179 245 219 -444 2 2 4 28 180 246 220 -445 2 2 4 28 181 221 249 -446 2 2 4 28 181 247 221 -447 2 2 4 28 182 222 250 -448 2 2 4 28 182 248 222 -449 2 2 4 28 187 236 259 -450 2 2 4 28 188 235 261 -451 2 2 4 28 189 242 260 -452 2 2 4 28 190 241 262 -453 2 2 4 28 191 257 239 -454 2 2 4 28 192 258 240 -455 2 2 4 28 193 255 237 -456 2 2 4 28 194 256 238 -457 3 2 3 15 4 33 41 5 -458 3 2 3 15 33 34 42 41 -459 3 2 3 15 34 35 43 42 -460 3 2 3 15 35 36 44 43 -461 3 2 3 15 36 37 45 44 -462 3 2 3 15 37 38 46 45 -463 3 2 3 15 38 39 47 46 -464 3 2 3 15 39 40 48 47 -465 3 2 3 15 40 1 6 48 -466 3 2 3 19 1 9 49 6 -467 3 2 3 19 9 10 50 49 -468 3 2 3 19 10 11 51 50 -469 3 2 3 19 11 12 52 51 -470 3 2 3 19 12 13 53 52 -471 3 2 3 19 13 14 54 53 -472 3 2 3 19 14 15 55 54 -473 3 2 3 19 15 16 56 55 -474 3 2 3 19 16 2 7 56 -475 3 2 3 23 2 17 57 7 -476 3 2 3 23 17 18 58 57 -477 3 2 3 23 18 19 59 58 -478 3 2 3 23 19 20 60 59 -479 3 2 3 23 20 21 61 60 -480 3 2 3 23 21 22 62 61 -481 3 2 3 23 22 23 63 62 -482 3 2 3 23 23 24 64 63 -483 3 2 3 23 24 3 8 64 -484 3 2 3 27 3 25 65 8 -485 3 2 3 27 25 26 66 65 -486 3 2 3 27 26 27 67 66 -487 3 2 3 27 27 28 68 67 -488 3 2 3 27 28 29 69 68 -489 3 2 3 27 29 30 70 69 -490 3 2 3 27 30 31 71 70 -491 3 2 3 27 31 32 72 71 -492 3 2 3 27 32 4 5 72 -493 6 2 1 1 116 92 128 213 189 225 -494 6 2 1 1 117 93 129 214 190 226 -495 6 2 1 1 128 76 116 225 173 213 -496 6 2 1 1 129 77 117 226 174 214 -497 6 2 1 1 119 89 135 216 186 232 -498 6 2 1 1 114 90 126 211 187 223 -499 6 2 1 1 115 91 127 212 188 224 -500 6 2 1 1 126 74 114 223 171 211 -501 6 2 1 1 127 75 115 224 172 212 -502 6 2 1 1 135 73 119 232 170 216 -503 6 2 1 1 118 88 119 215 185 216 -504 6 2 1 1 119 73 118 216 170 215 -505 6 2 1 1 136 79 98 233 176 195 -506 6 2 1 1 137 81 100 234 178 197 -507 6 2 1 1 134 87 99 231 184 196 -508 6 2 1 1 135 89 101 232 186 198 -509 6 2 1 1 135 87 134 232 184 231 -510 6 2 1 1 167 99 120 264 196 217 -511 6 2 1 1 168 101 121 265 198 218 -512 6 2 1 1 166 98 118 263 195 215 -513 6 2 1 1 169 100 119 266 197 216 -514 6 2 1 1 78 167 120 175 264 217 -515 6 2 1 1 80 168 121 177 265 218 -516 6 2 1 1 112 30 140 209 70 237 -517 6 2 1 1 113 38 141 210 46 238 -518 6 2 1 1 110 22 142 207 62 239 -519 6 2 1 1 111 14 143 208 54 240 -520 6 2 1 1 138 35 107 235 43 204 -521 6 2 1 1 139 27 106 236 67 203 -522 6 2 1 1 144 11 109 241 51 206 -523 6 2 1 1 145 19 108 242 59 205 -524 6 2 1 1 86 166 118 183 263 215 -525 6 2 1 1 88 169 119 185 266 216 -526 6 2 1 1 25 3 122 65 8 219 -527 6 2 1 1 17 2 124 57 7 221 -528 6 2 1 1 33 4 123 41 5 220 -529 6 2 1 1 9 1 125 49 6 222 -530 6 2 1 1 124 2 16 221 7 56 -531 6 2 1 1 125 1 40 222 6 48 -532 6 2 1 1 122 3 24 219 8 64 -533 6 2 1 1 123 4 32 220 5 72 -534 6 2 1 1 35 34 107 43 42 204 -535 6 2 1 1 27 26 106 67 66 203 -536 6 2 1 1 31 30 112 71 70 209 -537 6 2 1 1 23 22 110 63 62 207 -538 6 2 1 1 11 10 109 51 50 206 -539 6 2 1 1 39 38 113 47 46 210 -540 6 2 1 1 19 18 108 59 58 205 -541 6 2 1 1 15 14 111 55 54 208 -542 6 2 1 1 140 96 112 237 193 209 -543 6 2 1 1 141 97 113 238 194 210 -544 6 2 1 1 142 94 110 239 191 207 -545 6 2 1 1 143 95 111 240 192 208 -546 6 2 1 1 107 91 138 204 188 235 -547 6 2 1 1 106 90 139 203 187 236 -548 6 2 1 1 109 93 144 206 190 241 -549 6 2 1 1 108 92 145 205 189 242 -550 6 2 1 1 134 86 118 231 183 215 -551 6 2 1 1 160 79 136 257 176 233 -552 6 2 1 1 161 81 137 258 178 234 -553 6 2 1 1 98 79 155 195 176 252 -554 6 2 1 1 99 87 154 196 184 251 -555 6 2 1 1 100 81 157 197 178 254 -556 6 2 1 1 101 89 156 198 186 253 -557 6 2 1 1 134 73 135 231 170 232 -558 6 2 1 1 29 28 102 69 68 199 -559 6 2 1 1 37 36 103 45 44 200 -560 6 2 1 1 21 20 104 61 60 201 -561 6 2 1 1 13 12 105 53 52 202 -562 6 2 1 1 118 73 134 215 170 231 -563 6 2 1 1 158 78 120 255 175 217 -564 6 2 1 1 159 80 121 256 177 218 -565 6 2 1 1 102 28 139 199 68 236 -566 6 2 1 1 103 36 138 200 44 235 -567 6 2 1 1 140 29 102 237 69 199 -568 6 2 1 1 141 37 103 238 45 200 -569 6 2 1 1 104 20 145 201 60 242 -570 6 2 1 1 105 12 144 202 52 241 -571 6 2 1 1 142 21 104 239 61 201 -572 6 2 1 1 143 13 105 240 53 202 -573 6 2 1 1 126 90 106 223 187 203 -574 6 2 1 1 127 91 107 224 188 204 -575 6 2 1 1 128 92 108 225 189 205 -576 6 2 1 1 129 93 109 226 190 206 -577 6 2 1 1 130 82 110 227 179 207 -578 6 2 1 1 132 83 112 229 180 209 -579 6 2 1 1 131 84 111 228 181 208 -580 6 2 1 1 133 85 113 230 182 210 -581 6 2 1 1 120 75 132 217 172 229 -582 6 2 1 1 132 96 120 229 193 217 -583 6 2 1 1 121 77 133 218 174 230 -584 6 2 1 1 133 97 121 230 194 218 -585 6 2 1 1 117 77 156 214 174 253 -586 6 2 1 1 156 89 117 253 186 214 -587 6 2 1 1 114 78 162 211 175 259 -588 6 2 1 1 115 80 164 212 177 261 -589 6 2 1 1 162 102 139 259 199 236 -590 6 2 1 1 164 103 138 261 200 235 -591 6 2 1 1 163 104 145 260 201 242 -592 6 2 1 1 165 105 144 262 202 241 -593 6 2 1 1 142 104 160 239 201 257 -594 6 2 1 1 140 102 158 237 199 255 -595 6 2 1 1 143 105 161 240 202 258 -596 6 2 1 1 141 103 159 238 200 256 -597 6 2 1 1 115 75 154 212 172 251 -598 6 2 1 1 154 87 115 251 184 212 -599 6 2 1 1 155 79 116 252 176 213 -600 6 2 1 1 116 88 155 213 185 252 -601 6 2 1 1 117 89 157 214 186 254 -602 6 2 1 1 157 81 117 254 178 214 -603 6 2 1 1 127 83 132 224 180 229 -604 6 2 1 1 126 82 130 223 179 227 -605 6 2 1 1 129 85 133 226 182 230 -606 6 2 1 1 128 84 131 225 181 228 -607 6 2 1 1 106 82 126 203 179 223 -608 6 2 1 1 107 83 127 204 180 224 -609 6 2 1 1 108 84 128 205 181 225 -610 6 2 1 1 109 85 129 206 182 226 -611 6 2 1 1 162 90 114 259 187 211 -612 6 2 1 1 164 91 115 261 188 212 -613 6 2 1 1 110 94 130 207 191 227 -614 6 2 1 1 111 95 131 208 192 228 -615 6 2 1 1 112 96 132 209 193 229 -616 6 2 1 1 113 97 133 210 194 230 -617 6 2 1 1 167 78 114 264 175 211 -618 6 2 1 1 116 76 169 213 173 266 -619 6 2 1 1 168 80 115 265 177 212 -620 6 2 1 1 163 92 116 260 189 213 -621 6 2 1 1 165 93 117 262 190 214 -622 6 2 1 1 116 79 163 213 176 260 -623 6 2 1 1 117 81 165 214 178 262 -624 6 2 1 1 26 25 146 66 65 243 -625 6 2 1 1 34 33 147 42 41 244 -626 6 2 1 1 18 17 152 58 57 249 -627 6 2 1 1 10 9 153 50 49 250 -628 6 2 1 1 24 23 148 64 63 245 -629 6 2 1 1 16 15 150 56 55 247 -630 6 2 1 1 32 31 149 72 71 246 -631 6 2 1 1 40 39 151 48 47 248 -632 6 2 1 1 167 86 134 264 183 231 -633 6 2 1 1 134 99 167 231 196 264 -634 6 2 1 1 168 87 135 265 184 232 -635 6 2 1 1 135 101 168 232 198 265 -636 6 2 1 1 114 86 167 211 183 264 -637 6 2 1 1 115 87 168 212 184 265 -638 6 2 1 1 169 88 116 266 185 213 -639 6 2 1 1 162 78 102 259 175 199 -640 6 2 1 1 102 78 158 199 175 255 -641 6 2 1 1 164 80 103 261 177 200 -642 6 2 1 1 103 80 159 200 177 256 -643 6 2 1 1 163 79 104 260 176 201 -644 6 2 1 1 104 79 160 201 176 257 -645 6 2 1 1 165 81 105 262 178 202 -646 6 2 1 1 105 81 161 202 178 258 -647 6 2 1 1 146 82 106 243 179 203 -648 6 2 1 1 147 83 107 244 180 204 -649 6 2 1 1 152 84 108 249 181 205 -650 6 2 1 1 153 85 109 250 182 206 -651 6 2 1 1 110 82 148 207 179 245 -652 6 2 1 1 112 83 149 209 180 246 -653 6 2 1 1 111 84 150 208 181 247 -654 6 2 1 1 113 85 151 210 182 248 -655 6 2 1 1 114 74 166 211 171 263 -656 6 2 1 1 166 86 114 263 183 211 -657 6 2 1 1 166 74 136 263 171 233 -658 6 2 1 1 136 98 166 233 195 263 -659 6 2 1 1 169 76 137 266 173 234 -660 6 2 1 1 137 100 169 234 197 266 -661 6 2 1 1 120 96 158 217 193 255 -662 6 2 1 1 121 97 159 218 194 256 -663 6 2 1 1 30 29 140 70 69 237 -664 6 2 1 1 38 37 141 46 45 238 -665 6 2 1 1 22 21 142 62 61 239 -666 6 2 1 1 14 13 143 54 53 240 -667 6 2 1 1 36 35 138 44 43 235 -668 6 2 1 1 28 27 139 68 67 236 -669 6 2 1 1 12 11 144 52 51 241 -670 6 2 1 1 20 19 145 60 59 242 -671 6 2 1 1 136 94 160 233 191 257 -672 6 2 1 1 137 95 161 234 192 258 -673 6 2 1 1 118 98 155 215 195 252 -674 6 2 1 1 155 88 118 252 185 215 -675 6 2 1 1 119 100 157 216 197 254 -676 6 2 1 1 157 89 119 254 186 216 -677 6 2 1 1 136 74 130 233 171 227 -678 6 2 1 1 130 94 136 227 191 233 -679 6 2 1 1 137 76 131 234 173 228 -680 6 2 1 1 131 95 137 228 192 234 -681 6 2 1 1 106 26 146 203 66 243 -682 6 2 1 1 107 34 147 204 42 244 -683 6 2 1 1 108 18 152 205 58 249 -684 6 2 1 1 109 10 153 206 50 250 -685 6 2 1 1 148 23 110 245 63 207 -686 6 2 1 1 150 15 111 247 55 208 -687 6 2 1 1 149 31 112 246 71 209 -688 6 2 1 1 151 39 113 248 47 210 -689 6 2 1 1 154 75 120 251 172 217 -690 6 2 1 1 120 99 154 217 196 251 -691 6 2 1 1 121 101 156 218 198 253 -692 6 2 1 1 156 77 121 253 174 218 -693 6 2 1 1 130 74 126 227 171 223 -694 6 2 1 1 132 75 127 229 172 224 -695 6 2 1 1 131 76 128 228 173 225 -696 6 2 1 1 133 77 129 230 174 226 -697 6 2 1 1 146 25 122 243 65 219 -698 6 2 1 1 152 17 124 249 57 221 -699 6 2 1 1 147 33 123 244 41 220 -700 6 2 1 1 153 9 125 250 49 222 -701 6 2 1 1 122 24 148 219 64 245 -702 6 2 1 1 124 16 150 221 56 247 -703 6 2 1 1 123 32 149 220 72 246 -704 6 2 1 1 125 40 151 222 48 248 -705 6 2 1 1 122 82 146 219 179 243 -706 6 2 1 1 123 83 147 220 180 244 -707 6 2 1 1 148 82 122 245 179 219 -708 6 2 1 1 149 83 123 246 180 220 -709 6 2 1 1 124 84 152 221 181 249 -710 6 2 1 1 150 84 124 247 181 221 -711 6 2 1 1 125 85 153 222 182 250 -712 6 2 1 1 151 85 125 248 182 222 -713 6 2 1 1 139 90 162 236 187 259 -714 6 2 1 1 138 91 164 235 188 261 -715 6 2 1 1 145 92 163 242 189 260 -716 6 2 1 1 144 93 165 241 190 262 -717 6 2 1 1 160 94 142 257 191 239 -718 6 2 1 1 161 95 143 258 192 240 -719 6 2 1 1 158 96 140 255 193 237 -720 6 2 1 1 159 97 141 256 194 238 -$EndElements -$End diff --git a/run/benchmark/surfaceTension/curvatureSphere/curvature3D/system/blockMeshDict b/run/benchmark/surfaceTension/curvatureSphere/curvature3D/system/blockMeshDict index f230a845..f1559d76 100755 --- a/run/benchmark/surfaceTension/curvatureSphere/curvature3D/system/blockMeshDict +++ b/run/benchmark/surfaceTension/curvatureSphere/curvature3D/system/blockMeshDict @@ -14,7 +14,7 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -convertToMeters 1; +scale 1; vertices ( diff --git a/run/benchmark/surfaceTension/curvatureSphere/curvature3D/system/setAlphaFieldDict b/run/benchmark/surfaceTension/curvatureSphere/curvature3D/system/setAlphaFieldDict index 7ce51d2d..d8f0e6e5 100755 --- a/run/benchmark/surfaceTension/curvatureSphere/curvature3D/system/setAlphaFieldDict +++ b/run/benchmark/surfaceTension/curvatureSphere/curvature3D/system/setAlphaFieldDict @@ -19,7 +19,7 @@ field "alpha1"; type cylinder; radius 0.49999999; direction (0 1 0); -centre (1.01 0 1.01); +origin (1.01 0 1.01); // ************************************************************************* // diff --git a/run/benchmark/surfaceTension/curvatureSphere/curvature3DTri/Allrun b/run/benchmark/surfaceTension/curvatureSphere/curvature3DTri/Allrun index 41b763bf..05cc07e5 100755 --- a/run/benchmark/surfaceTension/curvatureSphere/curvature3DTri/Allrun +++ b/run/benchmark/surfaceTension/curvatureSphere/curvature3DTri/Allrun @@ -6,7 +6,7 @@ cd ${0%/*} || exit 1 # Run from this directory touch curv3d.foam restore0Dir -gmshv306 -3 -optimize_netgen triBlock.geo +gmshv493 -3 -optimize_netgen triBlock.geo echo '$End' >> triBlock.msh #sbatch Allrun_Slurm runApplication gmshToFoam triBlock.msh diff --git a/run/benchmark/surfaceTension/curvatureSphere/curvature3DTri/system/blockMeshDict b/run/benchmark/surfaceTension/curvatureSphere/curvature3DTri/system/blockMeshDict index f230a845..f1559d76 100755 --- a/run/benchmark/surfaceTension/curvatureSphere/curvature3DTri/system/blockMeshDict +++ b/run/benchmark/surfaceTension/curvatureSphere/curvature3DTri/system/blockMeshDict @@ -14,7 +14,7 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -convertToMeters 1; +scale 1; vertices ( diff --git a/run/benchmark/surfaceTension/curvatureSphere/curvature3DTri/system/setAlphaFieldDict b/run/benchmark/surfaceTension/curvatureSphere/curvature3DTri/system/setAlphaFieldDict index 7ce51d2d..d8f0e6e5 100755 --- a/run/benchmark/surfaceTension/curvatureSphere/curvature3DTri/system/setAlphaFieldDict +++ b/run/benchmark/surfaceTension/curvatureSphere/curvature3DTri/system/setAlphaFieldDict @@ -19,7 +19,7 @@ field "alpha1"; type cylinder; radius 0.49999999; direction (0 1 0); -centre (1.01 0 1.01); +origin (1.01 0 1.01); // ************************************************************************* // diff --git a/run/benchmark/surfaceTension/curvatureSphere/curvature3DTri/triBlock.msh b/run/benchmark/surfaceTension/curvatureSphere/curvature3DTri/triBlock.msh deleted file mode 100644 index 47f111e1..00000000 --- a/run/benchmark/surfaceTension/curvatureSphere/curvature3DTri/triBlock.msh +++ /dev/null @@ -1,77 +0,0 @@ -$MeshFormat -2.2 0 8 -$EndMeshFormat -$PhysicalNames -2 -2 1 "rim" -3 2 "internal" -$EndPhysicalNames -$Nodes -14 -1 0 0 1 -2 0 0 0 -3 0 1 1 -4 0 1 0 -5 1 0 1 -6 1 0 0 -7 1 1 1 -8 1 1 0 -9 0 0.5 0.5 -10 1 0.5 0.5 -11 0.5 0 0.5 -12 0.5 1 0.5 -13 0.5 0.5 0 -14 0.5 0.5 1 -$EndNodes -$Elements -48 -1 2 2 1 1 1 9 2 -2 2 2 1 1 1 3 9 -3 2 2 1 1 2 9 4 -4 2 2 1 1 3 4 9 -5 2 2 1 2 6 10 5 -6 2 2 1 2 10 7 5 -7 2 2 1 2 8 10 6 -8 2 2 1 2 10 8 7 -9 2 2 1 3 2 11 1 -10 2 2 1 3 11 5 1 -11 2 2 1 3 6 11 2 -12 2 2 1 3 11 6 5 -13 2 2 1 4 3 12 4 -14 2 2 1 4 3 7 12 -15 2 2 1 4 4 12 8 -16 2 2 1 4 7 8 12 -17 2 2 1 5 4 13 2 -18 2 2 1 5 13 6 2 -19 2 2 1 5 8 13 4 -20 2 2 1 5 13 8 6 -21 2 2 1 6 1 14 3 -22 2 2 1 6 1 5 14 -23 2 2 1 6 3 14 7 -24 2 2 1 6 5 7 14 -25 4 2 2 1 14 9 12 10 -26 4 2 2 1 12 9 13 10 -27 4 2 2 1 9 14 11 10 -28 4 2 2 1 13 9 11 10 -29 4 2 2 1 12 4 8 13 -30 4 2 2 1 3 7 14 12 -31 4 2 2 1 9 3 1 14 -32 4 2 2 1 5 1 14 11 -33 4 2 2 1 4 3 9 12 -34 4 2 2 1 2 13 11 6 -35 4 2 2 1 8 13 6 10 -36 4 2 2 1 2 4 9 13 -37 4 2 2 1 2 9 1 11 -38 4 2 2 1 7 12 8 10 -39 4 2 2 1 11 5 6 10 -40 4 2 2 1 7 5 14 10 -41 4 2 2 1 9 2 13 11 -42 4 2 2 1 9 3 14 12 -43 4 2 2 1 9 4 12 13 -44 4 2 2 1 1 9 14 11 -45 4 2 2 1 8 12 13 10 -46 4 2 2 1 13 11 6 10 -47 4 2 2 1 7 14 12 10 -48 4 2 2 1 14 5 11 10 -$EndElements -$End diff --git a/run/benchmark/surfaceTension/curvatureWall/curvatureWall/system/blockMeshDict b/run/benchmark/surfaceTension/curvatureWall/curvatureWall/system/blockMeshDict index 98d3ab52..3304626a 100755 --- a/run/benchmark/surfaceTension/curvatureWall/curvatureWall/system/blockMeshDict +++ b/run/benchmark/surfaceTension/curvatureWall/curvatureWall/system/blockMeshDict @@ -14,7 +14,7 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -convertToMeters 0.5; +scale 0.5; vertices ( diff --git a/run/benchmark/surfaceTension/curvatureWall/curvatureWallTri/Allrun b/run/benchmark/surfaceTension/curvatureWall/curvatureWallTri/Allrun index 15db6724..c95bcbe7 100755 --- a/run/benchmark/surfaceTension/curvatureWall/curvatureWallTri/Allrun +++ b/run/benchmark/surfaceTension/curvatureWall/curvatureWallTri/Allrun @@ -4,7 +4,7 @@ cd ${0%/*} || exit 1 # Run from this directory . $WM_PROJECT_DIR/bin/tools/RunFunctions touch curvature.foam -gmshv306 -3 triSquare.geo +gmshv493 -3 triSquare.geo echo '$End' >> triSquare.msh runApplication gmshToFoam triSquare.msh runApplication changeDictionary diff --git a/run/benchmark/surfaceTension/curvatureWall/curvatureWallTri/system/blockMeshDict b/run/benchmark/surfaceTension/curvatureWall/curvatureWallTri/system/blockMeshDict index e95a6eb5..6932d6e4 100755 --- a/run/benchmark/surfaceTension/curvatureWall/curvatureWallTri/system/blockMeshDict +++ b/run/benchmark/surfaceTension/curvatureWall/curvatureWallTri/system/blockMeshDict @@ -14,7 +14,7 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -convertToMeters 1; +scale 1; vertices ( diff --git a/run/benchmark/surfaceTension/curvatureWall/curvatureWallTri/system/setAlphaFieldDict b/run/benchmark/surfaceTension/curvatureWall/curvatureWallTri/system/setAlphaFieldDict index 7ce51d2d..d8f0e6e5 100755 --- a/run/benchmark/surfaceTension/curvatureWall/curvatureWallTri/system/setAlphaFieldDict +++ b/run/benchmark/surfaceTension/curvatureWall/curvatureWallTri/system/setAlphaFieldDict @@ -19,7 +19,7 @@ field "alpha1"; type cylinder; radius 0.49999999; direction (0 1 0); -centre (1.01 0 1.01); +origin (1.01 0 1.01); // ************************************************************************* // diff --git a/run/benchmark/surfaceTension/curvatureWall/curvatureWallTri/triSquare.msh b/run/benchmark/surfaceTension/curvatureWall/curvatureWallTri/triSquare.msh deleted file mode 100644 index d64bf333..00000000 --- a/run/benchmark/surfaceTension/curvatureWall/curvatureWallTri/triSquare.msh +++ /dev/null @@ -1,42 +0,0 @@ -$MeshFormat -2.2 0 8 -$EndMeshFormat -$PhysicalNames -3 -2 2 "walls" -2 3 "frontAndBack" -3 1 "internal" -$EndPhysicalNames -$Nodes -10 -1 -0.5 -0.05 -1 -2 0.5 -0.05 -1 -3 0.5 -0.05 1 -4 -0.5 -0.05 1 -5 -0.5 0.05 1 -6 -0.5 0.05 -1 -7 0.5 0.05 -1 -8 0.5 0.05 1 -9 0 -0.05 0 -10 0 0.05 0 -$EndNodes -$Elements -16 -1 2 2 3 6 1 2 9 -2 2 2 3 6 3 4 9 -3 2 2 3 6 1 9 4 -4 2 2 3 6 2 3 9 -5 2 2 3 28 6 7 10 -6 2 2 3 28 8 5 10 -7 2 2 3 28 6 10 5 -8 2 2 3 28 7 8 10 -9 3 2 2 15 4 1 6 5 -10 3 2 2 19 1 2 7 6 -11 3 2 2 23 2 3 8 7 -12 3 2 2 27 3 4 5 8 -13 6 2 1 1 2 1 9 7 6 10 -14 6 2 1 1 4 3 9 5 8 10 -15 6 2 1 1 9 1 4 10 6 5 -16 6 2 1 1 3 2 9 8 7 10 -$EndElements -$End diff --git a/run/benchmark/surfaceTension/sinWave/sinWave/system/blockMeshDict b/run/benchmark/surfaceTension/sinWave/sinWave/system/blockMeshDict index d3ab71f8..a0cb6802 100755 --- a/run/benchmark/surfaceTension/sinWave/sinWave/system/blockMeshDict +++ b/run/benchmark/surfaceTension/sinWave/sinWave/system/blockMeshDict @@ -14,7 +14,7 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -convertToMeters 0.0015; +scale 0.0015; vertices ( diff --git a/run/benchmark/surfaceTension/sinWave/sinWave/system/setAlphaFieldDict b/run/benchmark/surfaceTension/sinWave/sinWave/system/setAlphaFieldDict index 4f217690..682dbe04 100755 --- a/run/benchmark/surfaceTension/sinWave/sinWave/system/setAlphaFieldDict +++ b/run/benchmark/surfaceTension/sinWave/sinWave/system/setAlphaFieldDict @@ -19,7 +19,7 @@ type sin; period 0.003; direction (1 0 0); up (0 1 0); -centre (-7.5e-4 0 0); +origin (-7.5e-4 0 0); amplitude 3e-5;; // ************************************************************************* // diff --git a/run/benchmark/surfaceTension/sinWaveTri/sinWaveTri/Allrun b/run/benchmark/surfaceTension/sinWaveTri/sinWaveTri/Allrun index ad7cea6d..47b13b66 100755 --- a/run/benchmark/surfaceTension/sinWaveTri/sinWaveTri/Allrun +++ b/run/benchmark/surfaceTension/sinWaveTri/sinWaveTri/Allrun @@ -5,7 +5,7 @@ cd ${0%/*} || exit 1 # Run from this directory . $WM_PROJECT_DIR/bin/tools/RunFunctions restore0Dir touch sinwavetri.foam -gmshv306 -3 triSquare.geo +gmshv493 -3 triSquare.geo echo '$End' >> triSquare.msh runApplication gmshToFoam triSquare.msh runApplication changeDictionary diff --git a/run/benchmark/surfaceTension/sinWaveTri/sinWaveTri/system/blockMeshDict b/run/benchmark/surfaceTension/sinWaveTri/sinWaveTri/system/blockMeshDict index d3ab71f8..a0cb6802 100755 --- a/run/benchmark/surfaceTension/sinWaveTri/sinWaveTri/system/blockMeshDict +++ b/run/benchmark/surfaceTension/sinWaveTri/sinWaveTri/system/blockMeshDict @@ -14,7 +14,7 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -convertToMeters 0.0015; +scale 0.0015; vertices ( diff --git a/run/benchmark/surfaceTension/sinWaveTri/sinWaveTri/system/setAlphaFieldDict b/run/benchmark/surfaceTension/sinWaveTri/sinWaveTri/system/setAlphaFieldDict index 4f217690..682dbe04 100755 --- a/run/benchmark/surfaceTension/sinWaveTri/sinWaveTri/system/setAlphaFieldDict +++ b/run/benchmark/surfaceTension/sinWaveTri/sinWaveTri/system/setAlphaFieldDict @@ -19,7 +19,7 @@ type sin; period 0.003; direction (1 0 0); up (0 1 0); -centre (-7.5e-4 0 0); +origin (-7.5e-4 0 0); amplitude 3e-5;; // ************************************************************************* // diff --git a/run/benchmark/surfaceTension/sinWaveTri/sinWaveTri/triSquare.msh b/run/benchmark/surfaceTension/sinWaveTri/sinWaveTri/triSquare.msh deleted file mode 100644 index 0da8343c..00000000 --- a/run/benchmark/surfaceTension/sinWaveTri/sinWaveTri/triSquare.msh +++ /dev/null @@ -1,42 +0,0 @@ -$MeshFormat -2.2 0 8 -$EndMeshFormat -$PhysicalNames -3 -2 2 "frontAndBack" -2 3 "walls" -3 1 "internal" -$EndPhysicalNames -$Nodes -10 -1 -0.0015 -0.0005 -0.0045 -2 0.0015 -0.0005 -0.0045 -3 0.0015 -0.0005 0.0045 -4 -0.0015 -0.0005 0.0045 -5 -0.0015 0.0005 0.0045 -6 -0.0015 0.0005 -0.0045 -7 0.0015 0.0005 -0.0045 -8 0.0015 0.0005 0.0045 -9 0 -0.0005 0 -10 0 0.0005 0 -$EndNodes -$Elements -16 -1 2 2 2 6 1 9 4 -2 2 2 2 6 2 3 9 -3 2 2 2 6 1 2 9 -4 2 2 2 6 3 4 9 -5 2 2 2 28 6 10 5 -6 2 2 2 28 7 8 10 -7 2 2 2 28 6 7 10 -8 2 2 2 28 8 5 10 -9 3 2 3 15 4 1 6 5 -10 3 2 3 19 1 2 7 6 -11 3 2 3 23 2 3 8 7 -12 3 2 3 27 3 4 5 8 -13 6 2 1 1 1 4 9 6 5 10 -14 6 2 1 1 2 9 3 7 10 8 -15 6 2 1 1 1 9 2 6 10 7 -16 6 2 1 1 3 9 4 8 10 5 -$EndElements -$End diff --git a/run/coffeePot/constant/fluid/thermophysicalProperties.air b/run/coffeePot/constant/fluid/thermophysicalProperties.air index 220bc2d1..f1d7342f 100755 --- a/run/coffeePot/constant/fluid/thermophysicalProperties.air +++ b/run/coffeePot/constant/fluid/thermophysicalProperties.air @@ -19,8 +19,8 @@ thermoType { type heRhoThermo; mixture pureMixture; - transport tabulated; - thermo hTabulated; + transport const; // tabulated + thermo hConst; // hTabulated equationOfState perfectGas; specie specie; energy sensibleInternalEnergy; @@ -37,19 +37,21 @@ mixture Cp 2030; Hf 0; Sf 0; - CpFile "thermo/cp.dat"; - sampleRate 1; - nPoints 100; - TMin 1; - TMax 1000; + // CpFile "thermo/cp.dat"; + // sampleRate 1; + // nPoints 100; + // TMin 1; + // TMax 1000; } transport { - MuFile "thermo/mu.dat"; - KappaFile "thermo/kappa.dat"; - nPoints 100; - TMin 1; - TMax 1000; + mu 1e-5; + Pr 1; + // MuFile "thermo/mu.dat"; + // KappaFile "thermo/kappa.dat"; + // nPoints 100; + // TMin 1; + // TMax 1000; } } diff --git a/run/coffeePot/constant/fluid/thermophysicalProperties.water b/run/coffeePot/constant/fluid/thermophysicalProperties.water index c5c81c38..ae9a57ba 100755 --- a/run/coffeePot/constant/fluid/thermophysicalProperties.water +++ b/run/coffeePot/constant/fluid/thermophysicalProperties.water @@ -34,7 +34,6 @@ mixture } equationOfState { - //R 1024; rho0 958.4; T0 373; beta 6.9e-4; @@ -48,7 +47,6 @@ mixture { mu 0.00028176; Pr 1.7703430104321904; - //Pr 0.17703430104321904; } } diff --git a/run/coffeePot/system/controlDict b/run/coffeePot/system/controlDict index 81acd7dd..c2d0ae7a 100755 --- a/run/coffeePot/system/controlDict +++ b/run/coffeePot/system/controlDict @@ -64,14 +64,22 @@ functions intPsi { - type fieldIntegrate; - functionObjectLibs ("libpostProcess.so"); + type volFieldValue; + libs ("libfieldFunctionObjects.so"); - // Write at same frequency as fields writeControl timeStep; writeInterval 1; - region fluid; - field psi0_; + writeFields false; + log true; + region fluid; + + operation volIntegrate; + + fields + ( + psi0_ + ); + } } diff --git a/run/coffeePot/system/fluid/blockMeshDict b/run/coffeePot/system/fluid/blockMeshDict index 46fc0409..24e9e210 100755 --- a/run/coffeePot/system/fluid/blockMeshDict +++ b/run/coffeePot/system/fluid/blockMeshDict @@ -14,7 +14,7 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -convertToMeters 0.001; +scale 0.001; vertices ( diff --git a/run/coffeePot/system/fluid/fvSolution b/run/coffeePot/system/fluid/fvSolution index feda7a72..ba9a2f65 100755 --- a/run/coffeePot/system/fluid/fvSolution +++ b/run/coffeePot/system/fluid/fvSolution @@ -32,7 +32,7 @@ solvers advectionScheme isoAdvection; reconstructionScheme isoAlpha; vof2IsoTol 1e-8; - surfCellTol 1e-5; + surfCellTol 1e-6; snapTol 1e-10; writeVTK true; } diff --git a/run/coffeePot/system/fluid/setFieldsDict b/run/coffeePot/system/fluid/setFieldsDict index 40dd8f4c..e565823c 100755 --- a/run/coffeePot/system/fluid/setFieldsDict +++ b/run/coffeePot/system/fluid/setFieldsDict @@ -17,9 +17,9 @@ FoamFile defaultFieldValues ( - volScalarFieldValue T 300 - volScalarFieldValue T.air 300 - volScalarFieldValue T.water 300 + volScalarFieldValue T 350 + volScalarFieldValue T.air 350 + volScalarFieldValue T.water 350 ); regions @@ -29,9 +29,9 @@ regions box (-100 -100 -100) (100 0.04 100); fieldValues ( - volScalarFieldValue T 373.15 - volScalarFieldValue T.air 373.15 - volScalarFieldValue T.water 373.15 + volScalarFieldValue T 370 + volScalarFieldValue T.air 370 + volScalarFieldValue T.water 370 ); } ); diff --git a/run/coffeePot/system/fvSolution b/run/coffeePot/system/fvSolution index 0e4e5224..5238220f 100755 --- a/run/coffeePot/system/fvSolution +++ b/run/coffeePot/system/fvSolution @@ -15,90 +15,6 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -solvers -{ - "alpha.*" - { - nAlphaCorr 1; - nAlphaSubCycles 2; - cAlpha 1; - - MULESCorr no; - nLimiterIter 5; - - solver smoothSolver; - smoother symGaussSeidel; - tolerance 1e-8; - relTol 0; - advectionScheme asasd; - reconstructionScheme plicRDFN; - vof2IsoTol 1e-8; - surfCellTol 1e-8; - writeVTK true; - } - - ".*(rho|rhoFinal)" - { - solver diagonal; - } - - "pcorr.*" - { - solver PCG; - preconditioner - { - preconditioner GAMG; - tolerance 1e-05; - relTol 0; - smoother DICGaussSeidel; - } - tolerance 1e-05; - relTol 0; - maxIter 100; - } - - p_rgh - { - solver GAMG; - tolerance 1e-07; - relTol 0.01; - smoother DIC; - } - - p_rghFinal - { - solver PCG; - preconditioner - { - preconditioner GAMG; - tolerance 1e-07; - relTol 0; - nVcycles 2; - smoother DICGaussSeidel; - nPreSweeps 2; - } - tolerance 1e-07; - relTol 0; - maxIter 20; - } - - U - { - solver smoothSolver; - smoother GaussSeidel; - tolerance 1e-06; - relTol 0; - nSweeps 1; - } - - "(T|k|B|nuTilda).*" - { - solver smoothSolver; - smoother symGaussSeidel; - tolerance 1e-08; - relTol 0; - } -} PIMPLE { diff --git a/run/coffeePot/system/solid/setFieldsDict b/run/coffeePot/system/solid/setFieldsDict index 0f1c9e3e..0e393ea2 100755 --- a/run/coffeePot/system/solid/setFieldsDict +++ b/run/coffeePot/system/solid/setFieldsDict @@ -17,7 +17,7 @@ FoamFile defaultFieldValues ( - volScalarFieldValue T 300 + volScalarFieldValue T 350 ); regions @@ -27,7 +27,7 @@ regions box (-100 -100 -100) (100 0.04 100); fieldValues ( - volScalarFieldValue T 378 + volScalarFieldValue T 370 ); } diff --git a/run/depthCharge2D/constant/thermophysicalProperties.air b/run/depthCharge2D/constant/thermophysicalProperties.air index 7b5b7b15..0dc91557 100755 --- a/run/depthCharge2D/constant/thermophysicalProperties.air +++ b/run/depthCharge2D/constant/thermophysicalProperties.air @@ -20,7 +20,7 @@ thermoType type heRhoThermo; mixture multiComponentMixture; transport const; - thermo hConst; + thermo eConst; equationOfState perfectGas; specie specie; energy sensibleInternalEnergy; @@ -41,7 +41,7 @@ steam } thermodynamics { - Cp 1007; + Cv 1554.8; Hf 0; } transport @@ -59,7 +59,7 @@ air } thermodynamics { - Cp 1007; + Cv 716; Hf 0; } transport diff --git a/run/depthCharge2D/system/blockMeshDict b/run/depthCharge2D/system/blockMeshDict index eb62f4d3..e5c51966 100755 --- a/run/depthCharge2D/system/blockMeshDict +++ b/run/depthCharge2D/system/blockMeshDict @@ -14,7 +14,7 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -convertToMeters 1; +scale 1; vertices ( diff --git a/run/velocityStaticCircle/system/blockMeshDict b/run/velocityStaticCircle/system/blockMeshDict index 62d4b571..d0827f46 100755 --- a/run/velocityStaticCircle/system/blockMeshDict +++ b/run/velocityStaticCircle/system/blockMeshDict @@ -14,7 +14,7 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -convertToMeters 1; +scale 1; vertices ( diff --git a/run/velocityStaticCircle/system/setAlphaFieldDict b/run/velocityStaticCircle/system/setAlphaFieldDict index 7ce51d2d..d8f0e6e5 100755 --- a/run/velocityStaticCircle/system/setAlphaFieldDict +++ b/run/velocityStaticCircle/system/setAlphaFieldDict @@ -19,7 +19,7 @@ field "alpha1"; type cylinder; radius 0.49999999; direction (0 1 0); -centre (1.01 0 1.01); +origin (1.01 0 1.01); // ************************************************************************* // diff --git a/solver/compressibleInterFlow/YEqns.H b/solver/compressibleInterFlow/YEqns.H index 7b78c839..8c4b7339 100644 --- a/solver/compressibleInterFlow/YEqns.H +++ b/solver/compressibleInterFlow/YEqns.H @@ -1,15 +1,9 @@ { - // autoPtr - // massTransferPtr(fluid.massTransfer()); - - // phaseSystem::massTransferTable& - // massTransfer(massTransferPtr()); PtrList& Y1 = mixture.phase1().Y(); PtrList& Y2 = mixture.phase2().Y(); - // why alphaEff ? - volScalarField muEff = turbulence.muEff(); //mixture.phase1().rho(); - // volScalarField muEff2 = turbulence.alphaEff(); //mixture.phase2().rho(); + + volScalarField muEff(turbulence.muEff()); if (!Y1.empty()) { label inertIndex1 = mixture.phase1().inertIndex(); @@ -21,13 +15,13 @@ if (Y1iEqn.valid()) { - Y1iEqn = - ( - Y1iEqn + // Y1iEqn = + // ( + // Y1iEqn // == // *massTransfer[Y1[i].name()] // + fvOptions(alpha1, rho1, Y1[i]) - ); + // ); Y1iEqn->relax(); Y1iEqn->solve(mesh.solver("Yi")); diff --git a/solver/multiRegionPhaseChangeFlow/Make/options b/solver/multiRegionPhaseChangeFlow/Make/options index 3be98730..ebdc276d 100644 --- a/solver/multiRegionPhaseChangeFlow/Make/options +++ b/solver/multiRegionPhaseChangeFlow/Make/options @@ -46,6 +46,7 @@ EXE_LIBS = \ -ldynamicFvMesh \ -lregionModels \ -lsampling \ + -lthermoTools \ -L$(FOAM_USER_LIBBIN) \ -lVoFphaseModelCompressibleTurbulenceModels \ -lVoF \ diff --git a/solver/multiRegionPhaseChangeFlow/fluid/YEqns.H b/solver/multiRegionPhaseChangeFlow/fluid/YEqns.H index 95c95aec..219a99ec 100644 --- a/solver/multiRegionPhaseChangeFlow/fluid/YEqns.H +++ b/solver/multiRegionPhaseChangeFlow/fluid/YEqns.H @@ -2,7 +2,7 @@ PtrList& Y1 = mixture.phase1().Y(); PtrList& Y2 = mixture.phase2().Y(); - volScalarField muEff = turbulence.muEff(); + volScalarField muEff(turbulence.muEff()); if (!Y1.empty()) { label inertIndex1 = mixture.phase1().inertIndex(); diff --git a/solver/multiRegionPhaseChangeFlow/fluid/compressibleAlphaEqnSubCycle.H b/solver/multiRegionPhaseChangeFlow/fluid/compressibleAlphaEqnSubCycle.H index 66f9d2dd..31d91533 100644 --- a/solver/multiRegionPhaseChangeFlow/fluid/compressibleAlphaEqnSubCycle.H +++ b/solver/multiRegionPhaseChangeFlow/fluid/compressibleAlphaEqnSubCycle.H @@ -2,20 +2,14 @@ // new U and phi for propagating alpha1 in all but the first outer iteration if (oCorr != 0) { -// // We are recalculating alpha1 from the its old time value + alpha1 = alpha1.oldTime(); -// // Temporarily storing new U and phi values in prevIter storage -// U.storePrevIter(); -// phi.storePrevIter(); -// // Overwriting new U and phi values with mixture of old and new values -// phi = 0.5*(phi + phi.oldTime()); -// U = 0.5*(U + U.oldTime()); } tmp talphaPhi1(alphaPhi10); -volScalarField tCpl = mixture.thermo1().Cp(); -volScalarField tCpv = mixture.thermo2().Cp(); +volScalarField tCpl(mixture.thermo1().Cp()); +volScalarField tCpv(mixture.thermo2().Cp()); if (nAlphaSubCycles > 1) { @@ -92,12 +86,6 @@ else #include "alphaEqn.H" } -// if (oCorr != 0) -// { -// // Restoring new U and phi values temporarily saved in prevIter() above -// U = U.prevIter(); -// phi = phi.prevIter(); -// } rho = alpha1*rho1 + alpha2*rho2; diff --git a/solver/multiRegionPhaseChangeFlow/multiRegionPhaseChangeFlow.C b/solver/multiRegionPhaseChangeFlow/multiRegionPhaseChangeFlow.C index 37f2b9f3..c57489ee 100644 --- a/solver/multiRegionPhaseChangeFlow/multiRegionPhaseChangeFlow.C +++ b/solver/multiRegionPhaseChangeFlow/multiRegionPhaseChangeFlow.C @@ -57,7 +57,7 @@ Description #include "advectionSchemes.H" #include "surfaceForces.H" -#include "alphaContactAngleFvPatchScalarField.H" +#include "alphaContactAngleTwoPhaseFvPatchScalarField.H" #include "singleComponentPhaseChange.H" diff --git a/solver/multiRegionPhaseChangeFlow/updateThermo.H b/solver/multiRegionPhaseChangeFlow/updateThermo.H new file mode 100644 index 00000000..031bdea6 --- /dev/null +++ b/solver/multiRegionPhaseChangeFlow/updateThermo.H @@ -0,0 +1,6 @@ +mixture.correct(); + +turbulence.correctPhasePhi(); +surfForces.correct(); +phaseChange.correctSatProperties(p,T); +phaseChange.correct(); diff --git a/src/VoF/Make/files b/src/VoF/Make/files index 8a86a57b..41a14c80 100644 --- a/src/VoF/Make/files +++ b/src/VoF/Make/files @@ -10,28 +10,7 @@ cellCuts/cutFace/cutFaceImpFunc.C surfaceIterators/surfaceIteratorPLIC.C surfaceIterators/surfaceIteratorIso.C -/* Run-time selectable implicitFunctions */ -implicitFunctions/implicitFunction.C -implicitFunctions/sphere/sphereImplicitFunction.C -implicitFunctions/sin/sinImplicitFunction.C -implicitFunctions/ellipsoid/ellipsoidImplicitFunction.C -implicitFunctions/paraboloid/paraboloidImplicitFunction.C -implicitFunctions/plane/planeImplicitFunction.C -implicitFunctions/cylinder/cylinderImplicitFunction.C -implicitFunctions/composedFunction/composedFunctionImplicitFunction.C - -zoneDistribute/zoneStencils/zoneCellStencils.C -zoneDistribute/zoneStencils/zoneCPCStencil.C -zoneDistribute/zoneDistribute.C -zoneDistribute/zoneDistributePoints.C - -multiDimPolyFitter/multiDimPolyFunctions/multiDimPolyFunctions.C -multiDimPolyFitter/multiDimPolyFunctions/polyDegree1.C -multiDimPolyFitter/multiDimPolyFunctions/polyDegree2.C multiDimPolyFitter/multiDimPolyFunctions/paraboloid.C -multiDimPolyFitter/multiDimPolyFitter.C -multiDimPolyFitter/leastSquareGrad.C -multiDimPolyFitter/leastSquareInterpolate.C multiDimPolyFitter/leastSquareFitParabolid.C reconstructedDistanceFunction/reconstructedDistanceFunction.C diff --git a/src/VoF/Make/options b/src/VoF/Make/options index 7c6b2322..fa95491e 100644 --- a/src/VoF/Make/options +++ b/src/VoF/Make/options @@ -1,12 +1,17 @@ EXE_INC = \ + -I$(FOAM_UTILITIES)/preProcessing/setAlphaField/alphaFieldFunctions/lnInclude \ -I$(LIB_SRC)/finiteVolume/lnInclude \ + -I$(LIB_SRC)/fileFormats/lnInclude \ -I$(LIB_SRC)/surfMesh/lnInclude \ -I$(LIB_SRC)/meshTools/lnInclude \ + -I$(LIB_SRC)/fileFormat/lnInclude \ -I$(LIB_SRC)/transportModels/interfaceProperties/lnInclude \ -I$(LIB_SRC)/transportModels/twoPhaseProperties/lnInclude LIB_LIBS = \ + -lalphaFieldFunctions \ -lfiniteVolume \ + -lfileFormats \ -lsurfMesh \ -lmeshTools \ -ltwoPhaseMixture \ diff --git a/src/VoF/advectionSchemes/MULES/MULESScheme.C b/src/VoF/advectionSchemes/MULES/MULESScheme.C index dceca836..5c56dd3e 100644 --- a/src/VoF/advectionSchemes/MULES/MULESScheme.C +++ b/src/VoF/advectionSchemes/MULES/MULESScheme.C @@ -115,11 +115,6 @@ Foam::advection::MULESScheme::MULESScheme alpha1_.mesh(), dimensionedScalar("nHatf", dimArea, 0.0) ) - - - - - { //- Reference to mesh @@ -132,21 +127,45 @@ Foam::advection::MULESScheme::MULESScheme MULESCorr_ = (alphaControls.lookupOrDefault("MULESCorr", false)); -// Apply the compression correction from the previous iteration -// Improves efficiency for steady-simulations but can only be applied -// once the alpha field is reasonably steady, i.e. fully developed + // Apply the compression correction from the previous iteration + // Improves efficiency for steady-simulations but can only be applied + // once the alpha field is reasonably steady, i.e. fully developed alphaApplyPrevCorr_ = - ( - alphaControls.lookupOrDefault("alphaApplyPrevCorr", false) - ); - //Isotropic compression coefficient + ( + alphaControls.lookupOrDefault("alphaApplyPrevCorr", false) + ); + + //Isotropic compression coefficient icAlpha_ = - ( - alphaControls.lookupOrDefault("icAlpha", 0) - ); + ( + alphaControls.lookupOrDefault("icAlpha", 0) + ); cAlpha_ = readScalar(alphaControls.lookup("cAlpha")); + // Shear compression coefficient + scAlpha_ = + ( + alphaControls.getOrDefault("scAlpha", 0) + ); + + IOobject alphaPhi10Header + ( + IOobject::groupName("alphaPhi0", alpha1.group()), + mesh_.time().timeName(), + mesh_, + IOobject::READ_IF_PRESENT, + IOobject::AUTO_WRITE + ); + + alphaRestart_ = + alphaPhi10Header.typeHeaderOk(true); + + if (alphaRestart_) + { + Info << "Restarting alpha" << endl; + } + } @@ -159,19 +178,18 @@ Foam::advection::MULESScheme::~MULESScheme() // * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // - -// ************************************************************************* // -void Foam::advection::MULESScheme::advect() +template +void Foam::advection::MULESScheme::advect(const SpType& Sp, const SuType& Su) { updateNHatf(); word alphaScheme("div(phi,alpha)"); word alpharScheme("div(phirb,alpha)"); + // Set the off-centering coefficient according to ddt scheme scalar ocCoeff = 0; { - - tmp> ddtAlpha + tmp> tddtAlpha ( fv::ddtScheme::New ( @@ -179,18 +197,17 @@ void Foam::advection::MULESScheme::advect() mesh_.ddtScheme("ddt(alpha)") ) ); - - // Set the off-centering coefficient according to ddt scheme + const fv::ddtScheme& ddtAlpha = tddtAlpha(); if ( - isType>(ddtAlpha()) - || isType>(ddtAlpha()) + isType>(ddtAlpha) + || isType>(ddtAlpha) ) { ocCoeff = 0; } - else if (isType>(ddtAlpha())) + else if (isType>(ddtAlpha)) { if (nAlphaSubCycles_ > 1) { @@ -200,9 +217,16 @@ void Foam::advection::MULESScheme::advect() << exit(FatalError); } - ocCoeff = - refCast>(ddtAlpha()) - .ocCoeff(); + if + ( + alphaRestart_ + || mesh_.time().timeIndex() > mesh_.time().startTimeIndex() + 1 + ) + { + ocCoeff = + refCast>(ddtAlpha) + .ocCoeff(); + } } else { @@ -212,6 +236,7 @@ void Foam::advection::MULESScheme::advect() } } + // Set the time blending factor, 1 for Euler scalar cnCoeff = 1.0/(1.0 + ocCoeff); // Standard face-flux compression coefficient @@ -224,6 +249,13 @@ void Foam::advection::MULESScheme::advect() phic += (cAlpha_*icAlpha_)*fvc::interpolate(mag(U_)); } + // Add the optional shear compression contribution + if (scAlpha_ > 0) + { + phic += + scAlpha_*mag(mesh_.delta() & fvc::interpolate(symm(fvc::grad(U_)))); + } + surfaceScalarField::Boundary& phicBf = phic.boundaryFieldRef(); @@ -262,6 +294,10 @@ void Foam::advection::MULESScheme::advect() phiCN, upwind(mesh_, phiCN) ).fvmDiv(phiCN, alpha1_) + // - fvm::Sp(fvc::ddt(dimensionedScalar("1", dimless, 1), mesh) + // + fvc::div(phiCN), alpha1) + == + Su + fvm::Sp(Sp , alpha1_) ); alpha1Eqn.solve(); @@ -278,7 +314,15 @@ void Foam::advection::MULESScheme::advect() if (alphaApplyPrevCorr_) { Info<< "Applying the previous iteration compression flux" << endl; - MULES::correct(alpha1_, alphaPhi_, talphaPhiCorr0_, 1, 0); + MULES::correct + ( + geometricOneField(), + alpha1_, + alphaPhi_, + talphaPhiCorr0_, + oneField(), + zeroField() + ); alphaPhi_ += talphaPhiCorr0_; } @@ -288,7 +332,6 @@ void Foam::advection::MULESScheme::advect() alpha2_ = 1.0 - alpha1_; - // mixture.correct(); updateNHatf(); } @@ -297,256 +340,25 @@ void Foam::advection::MULESScheme::advect() { surfaceScalarField phir(phic*nHatf_); - tmp talphaPhiUn - ( - fvc::flux - ( - phi_, - alpha1_, - alphaScheme - ) - + fvc::flux - ( - -fvc::flux(-phir, alpha2_, alpharScheme), - alpha1_, - alpharScheme - ) - ); - - // Calculate the Crank-Nicolson off-centred alpha flux -// if (ocCoeff > 0) -// { -// talphaPhiUn = -// cnCoeff*talphaPhiUn + (1.0 - cnCoeff)*alphaPhi_.oldTime(); -// } - - if (MULESCorr_) - { - tmp talphaPhiCorr(talphaPhiUn - alphaPhi_); - volScalarField alpha10("alpha10", alpha1_); - - MULES::correct(alpha1_, talphaPhiUn, talphaPhiCorr.ref(), 1, 0); - - // Under-relax the correction for all but the 1st corrector - if (aCorr == 0) - { - alphaPhi_ += talphaPhiCorr(); - } - else - { - alpha1_ = 0.5*alpha1_ + 0.5*alpha10; - alphaPhi_ += 0.5*talphaPhiCorr(); - } - } - else - { - alphaPhi_ = talphaPhiUn; - - MULES::explicitSolve(alpha1_, phiCN, alphaPhi_, 1, 0); - } - - alpha2_ = 1.0 - alpha1_; - - // mixture.correct(); - updateNHatf(); - } - - if (alphaApplyPrevCorr_ && MULESCorr_) - { - talphaPhiCorr0_ = alphaPhi_ - talphaPhiCorr0_; - } - - if - ( - word(mesh_.ddtScheme("ddt(rho,U)")) - == fv::EulerDdtScheme::typeName - ) - { -// rhoPhi = alphaPhi_*(rho1 - rho2) + phiCN*rho2; - } - else - { - if (ocCoeff > 0) - { - // Calculate the end-of-time-step alpha flux - alphaPhi_ = (alphaPhi_ - (1.0 - cnCoeff)*alphaPhi_.oldTime())/cnCoeff; - } - - // Calculate the end-of-time-step mass flux - //rhoPhi = alphaPhi_*(rho1 - rho2) + phi_*rho2; - } - - Info<< "Phase-1 volume fraction = " - << alpha1_.weightedAverage(mesh_.Vsc()).value() - << " Min(" << alpha1_.name() << ") = " << min(alpha1_).value() - << " Max(" << alpha1_.name() << ") = " << max(alpha1_).value() - << endl; -} - -void Foam::advection::MULESScheme::advect(const volScalarField::Internal& Sp,const volScalarField::Internal& Su) -{ - updateNHatf(); - - word alphaScheme("div(phi,alpha)"); - word alpharScheme("div(phirb,alpha)"); - - scalar ocCoeff = 0; - { - - tmp> ddtAlpha + tmp talphaPhi1Un ( - fv::ddtScheme::New + fvc::flux ( - mesh_, - mesh_.ddtScheme("ddt(alpha)") + phi_, + cnCoeff*alpha1_ + (1.0 - cnCoeff)*alpha1_.oldTime(), + alphaScheme ) - ); - - // Set the off-centering coefficient according to ddt scheme - - if - ( - isType>(ddtAlpha()) - || isType>(ddtAlpha()) - ) - { - ocCoeff = 0; - } - else if (isType>(ddtAlpha())) - { - if (nAlphaSubCycles_ > 1) - { - FatalErrorInFunction - << "Sub-cycling is not supported " - "with the CrankNicolson ddt scheme" - << exit(FatalError); - } - - ocCoeff = - refCast>(ddtAlpha()) - .ocCoeff(); - } - else - { - FatalErrorInFunction - << "Only Euler and CrankNicolson ddt schemes are supported" - << exit(FatalError); - } - } - - scalar cnCoeff = 1.0/(1.0 + ocCoeff); - - // Standard face-flux compression coefficient - surfaceScalarField phic(cAlpha_*mag(phi_/mesh_.magSf())); - - // Add the optional isotropic compression contribution - if (icAlpha_ > 0) - { - phic *= (1.0 - icAlpha_); - phic += (cAlpha_*icAlpha_)*fvc::interpolate(mag(U_)); - } - - surfaceScalarField::Boundary& phicBf = - phic.boundaryFieldRef(); - - // Do not compress interface at non-coupled boundary faces - // (inlets, outlets etc.) - forAll(phic.boundaryField(), patchi) - { - fvsPatchScalarField& phicp = phicBf[patchi]; - - if (!phicp.coupled()) - { - phicp == 0; - } - } - - tmp phiCN(phi_); - - // Calculate the Crank-Nicolson off-centred volumetric flux - if (ocCoeff > 0) - { - phiCN = cnCoeff*phi_ + (1.0 - cnCoeff)*phi_.oldTime(); - } - - if (MULESCorr_) - { - fvScalarMatrix alpha1Eqn - ( + + fvc::flux ( - LTS_ - ? fv::localEulerDdtScheme(mesh_).fvmDdt(alpha1_) - : fv::EulerDdtScheme(mesh_).fvmDdt(alpha1_) + -fvc::flux(-phir, alpha2_, alpharScheme), + alpha1_, + alpharScheme ) - + fv::gaussConvectionScheme - ( - mesh_, - phiCN, - upwind(mesh_, phiCN) - ).fvmDiv(phiCN, alpha1_) - == - Su + fvm::Sp(Sp , alpha1_) ); - alpha1Eqn.solve(); - - Info<< "Phase-1 volume fraction = " - << alpha1_.weightedAverage(mesh_.Vsc()).value() - << " Min(" << alpha1_.name() << ") = " << min(alpha1_).value() - << " Max(" << alpha1_.name() << ") = " << max(alpha1_).value() - << endl; - - tmp talphaPhiUD(alpha1Eqn.flux()); - alphaPhi_ = talphaPhiUD(); - - if (alphaApplyPrevCorr_) - { - Info<< "Applying the previous iteration compression flux" << endl; - MULES::correct(alpha1_, alphaPhi_, talphaPhiCorr0_, 1, 0); - - alphaPhi_ += talphaPhiCorr0_; - } - - // Cache the upwind-flux - talphaPhiCorr0_ = talphaPhiUD; - - alpha2_ = 1.0 - alpha1_; - - // mixture.correct(); - updateNHatf(); - } - - - for (int aCorr=0; aCorr talphaPhiUn - ( - fvc::flux - ( - phi_, - alpha1_, - alphaScheme - ) - + fvc::flux - ( - -fvc::flux(-phir, alpha2_, alpharScheme), - alpha1_, - alpharScheme - ) - ); - - // Calculate the Crank-Nicolson off-centred alpha flux -// if (ocCoeff > 0) -// { -// talphaPhiUn = -// cnCoeff*talphaPhiUn + (1.0 - cnCoeff)*alphaPhi_.oldTime(); -// } - if (MULESCorr_) { - tmp talphaPhiCorr(talphaPhiUn - alphaPhi_); + tmp talphaPhi1Corr(talphaPhi1Un - alphaPhi_); volScalarField alpha10("alpha10", alpha1_); MULES::correct @@ -557,44 +369,41 @@ void Foam::advection::MULESScheme::advect(const volScalarField::Internal& Sp,con alphaPhi_, Sp, Su, - 1, - 0 + oneField(), + zeroField() ); // Under-relax the correction for all but the 1st corrector if (aCorr == 0) { - alphaPhi_ += talphaPhiCorr(); + alphaPhi_ += talphaPhi1Corr(); } else { alpha1_ = 0.5*alpha1_ + 0.5*alpha10; - alphaPhi_ += 0.5*talphaPhiCorr(); + alphaPhi_ += 0.5*talphaPhi1Corr(); } } else { - - alphaPhi_ = talphaPhiUn; - + alphaPhi_ = talphaPhi1Un; MULES::explicitSolve ( - geometricOneField(), - alpha1_, - phiCN, - alphaPhi_, - Sp, - Su, - 1, - 0 + geometricOneField(), + alpha1_, + phiCN, + alphaPhi_, + Sp, + Su, + oneField(), + zeroField() ); } alpha2_ = 1.0 - alpha1_; - // mixture.correct(); - updateNHatf(); + updateNHatf(); } if (alphaApplyPrevCorr_ && MULESCorr_) @@ -606,20 +415,23 @@ void Foam::advection::MULESScheme::advect(const volScalarField::Internal& Sp,con ( word(mesh_.ddtScheme("ddt(rho,U)")) == fv::EulerDdtScheme::typeName + || word(mesh_.ddtScheme("ddt(rho,U)")) + == fv::localEulerDdtScheme::typeName ) { -// rhoPhi = alphaPhi_*(rho1 - rho2) + phiCN*rho2; + // rhoPhi = alphaPhi_*(rho1 - rho2) + phiCN*rho2; } else { if (ocCoeff > 0) { // Calculate the end-of-time-step alpha flux - alphaPhi_ = (alphaPhi_ - (1.0 - cnCoeff)*alphaPhi_.oldTime())/cnCoeff; + alphaPhi_ = + (alphaPhi_ - (1.0 - cnCoeff)*alphaPhi_.oldTime())/cnCoeff; } // Calculate the end-of-time-step mass flux - //rhoPhi = alphaPhi_*(rho1 - rho2) + phi_*rho2; + // rhoPhi = alphaPhi10*(rho1f - rho2f) + phi*rho2f; } Info<< "Phase-1 volume fraction = " @@ -629,4 +441,3 @@ void Foam::advection::MULESScheme::advect(const volScalarField::Internal& Sp,con << endl; } - diff --git a/src/VoF/advectionSchemes/MULES/MULESScheme.H b/src/VoF/advectionSchemes/MULES/MULESScheme.H index 07c77e69..880c5425 100644 --- a/src/VoF/advectionSchemes/MULES/MULESScheme.H +++ b/src/VoF/advectionSchemes/MULES/MULESScheme.H @@ -38,8 +38,10 @@ SourceFiles #include "typeInfo.H" #include "advectionSchemes.H" #include "volFields.H" +#include "volFieldsFwd.H" #include "dimensionedScalar.H" #include "autoPtr.H" +#include "zeroField.H" #include "volPointInterpolation.H" #include "reconstructionSchemes.H" @@ -92,9 +94,14 @@ private: // Isotropic compression coefficient scalar icAlpha_; + // Shear compression coefficient + scalar scAlpha_; + //- Compression coefficient scalar cAlpha_; + bool alphaRestart_; + void alphaEqn(); void updateNHatf(); @@ -133,10 +140,28 @@ public: virtual ~MULESScheme(); - - virtual void advect(); - - virtual void advect(const volScalarField::Internal& Sp,const volScalarField::Internal& Su); + //- Advect the free surface. Updates alpha field, taking into account + // multiple calls within a single time step. + template < class SpType, class SuType > + void advect(const SpType& Sp, const SuType& Su); + + //- advection of the interface + virtual void advect() + { + zeroField Sp; + zeroField Su; + advect(Sp,Su); + } + + //- advection of the interface with source terms + virtual void advect + ( + const volScalarField::Internal& Sp, + const volScalarField::Internal& Su + ) + { + advect(Sp,Su); + } }; diff --git a/src/VoF/advectionSchemes/geoAdvection/geoAdvection.C b/src/VoF/advectionSchemes/geoAdvection/geoAdvection.C index 69da0b59..a951a5a2 100644 --- a/src/VoF/advectionSchemes/geoAdvection/geoAdvection.C +++ b/src/VoF/advectionSchemes/geoAdvection/geoAdvection.C @@ -37,6 +37,7 @@ License #include "cellSet.H" #include "meshTools.H" #include "OBJstream.H" +#include "processorPolyPatch.H" #include "addToRunTimeSelectionTable.H" diff --git a/src/VoF/advectionSchemes/isoAdvection/isoAdvection.C b/src/VoF/advectionSchemes/isoAdvection/isoAdvection.C index a45de67d..15a447ee 100644 --- a/src/VoF/advectionSchemes/isoAdvection/isoAdvection.C +++ b/src/VoF/advectionSchemes/isoAdvection/isoAdvection.C @@ -39,6 +39,7 @@ License #include "meshTools.H" #include "OBJstream.H" #include "syncTools.H" +#include "profiling.H" #include "addToRunTimeSelectionTable.H" @@ -188,6 +189,7 @@ void Foam::advection::isoAdvection::extendMarkedCells void Foam::advection::isoAdvection::timeIntegratedFlux() { // Get time step + addProfilingInFunction(geometricVoF); const scalar dt = mesh_.time().deltaTValue(); // Create object for interpolating velocity to isoface centres @@ -553,6 +555,7 @@ void Foam::advection::isoAdvection::checkIfOnProcPatch(const label facei) void Foam::advection::isoAdvection::applyBruteForceBounding() { + addProfilingInFunction(geometricVoF); bool alpha1Changed = false; scalar snapAlphaTol = modelDict().lookupOrDefault("snapTol", 0); diff --git a/src/VoF/advectionSchemes/isoAdvection/isoAdvectionTemplates.C b/src/VoF/advectionSchemes/isoAdvection/isoAdvectionTemplates.C index 6aa6e4fa..ec1343e0 100644 --- a/src/VoF/advectionSchemes/isoAdvection/isoAdvectionTemplates.C +++ b/src/VoF/advectionSchemes/isoAdvection/isoAdvectionTemplates.C @@ -118,6 +118,7 @@ void Foam::advection::isoAdvection::limitFluxes const SuType& Su ) { + addProfilingInFunction(geometricVoF); DebugInFunction << endl; const scalar aTol = 1.0e-12; // Note: tolerances @@ -223,6 +224,7 @@ void Foam::advection::isoAdvection::boundFlux const SuType& Su ) { + addProfilingInFunction(geometricVoF); DebugInFunction << endl; scalar rDeltaT = 1/mesh_.time().deltaTValue(); @@ -374,6 +376,7 @@ void Foam::advection::isoAdvection::boundFlux template void Foam::advection::isoAdvection::advect(const SpType& Sp, const SuType& Su) { + addProfilingInFunction(geometricVoF); DebugInFunction << endl; if (mesh_.topoChanging()) diff --git a/src/VoF/advectionSchemes/newAdvectionSchemes.C b/src/VoF/advectionSchemes/newAdvectionSchemes.C index 68e7bdbd..f5546e33 100644 --- a/src/VoF/advectionSchemes/newAdvectionSchemes.C +++ b/src/VoF/advectionSchemes/newAdvectionSchemes.C @@ -50,29 +50,22 @@ Foam::advectionSchemes::New ).subDict("solvers").subDict(alpha1.name()).lookup("advectionScheme") ); - //word advectionSchemesTypeName = word(advectionSchemesCoeffs_.lookup("advectionScheme")); - - Info<< "Selecting advectionSchemes: " << advectionSchemesTypeName << endl; - componentsConstructorTable::iterator cstrIter = - componentsConstructorTablePtr_ - ->find(advectionSchemesTypeName); + auto ctorPtr = componentsConstructorTable(advectionSchemesTypeName); - if (cstrIter == componentsConstructorTablePtr_->end()) + if (!ctorPtr) { - FatalErrorIn + FatalErrorInLookup ( - "advectionSchemes::New" - ) << "Unknown advectionSchemes type " - << advectionSchemesTypeName << endl << endl - << "Valid advectionSchemess are : " << endl - << componentsConstructorTablePtr_->sortedToc() - << exit(FatalError); + "advectionSchemes", + advectionSchemesTypeName, + *componentsConstructorTablePtr_ + ) << exit(FatalError); } - return autoPtr(cstrIter()( alpha1, phi,U)); + return autoPtr(ctorPtr(alpha1, phi,U)); } diff --git a/src/VoF/cellCuts/cutCell/cutCellImpFunc.C b/src/VoF/cellCuts/cutCell/cutCellImpFunc.C index f1731cce..126d058c 100644 --- a/src/VoF/cellCuts/cutCell/cutCellImpFunc.C +++ b/src/VoF/cellCuts/cutCell/cutCellImpFunc.C @@ -31,8 +31,8 @@ License Foam::point Foam::cutCellImpFunc::bisection(point p0, point p1) { // return - vector start = p0; - vector end = p1; + //vector start = p0; + //vector end = p1; scalar a = func_.value(p0); scalar b = func_.value(p1); if (a * b > 0) @@ -413,7 +413,9 @@ Foam::label Foam::cutCellImpFunc::calcSubCell VOF_ = subCellVolume_ / mesh_.V()[cellI_]; - scalar error = GREAT; + // DEBUGGING + //scalar error = GREAT; + DynamicList interfacePoints(1000); DynamicList interfaceLocalFacePoints(1000); @@ -539,9 +541,10 @@ Foam::label Foam::cutCellImpFunc::calcSubCell subCellVolume_ ); scalar newVoF = subCellVolume_ / mesh_.V()[cellI_]; - error = (newVoF-VOF_)/newVoF; VOF_ = newVoF; + // DEBUGGING + // error = (newVoF-VOF_)/newVoF; // Info << "error " << error << endl; // Info << "celli " << cellI << " VOF_ " << VOF_ << endl; diff --git a/src/VoF/implicitFunctions/composedFunction/composedFunctionImplicitFunction.C b/src/VoF/implicitFunctions/composedFunction/composedFunctionImplicitFunction.C deleted file mode 100644 index 7711f550..00000000 --- a/src/VoF/implicitFunctions/composedFunction/composedFunctionImplicitFunction.C +++ /dev/null @@ -1,207 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2019 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- - | Copyright (C) 2019 DLR -------------------------------------------------------------------------------- - -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "composedFunctionImplicitFunction.H" -#include "scalarField.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - namespace implicitFunctions - { - defineTypeNameAndDebug(composedFunctionImplicitFunction, 0); - addToRunTimeSelectionTable - ( - implicitFunction, - composedFunctionImplicitFunction, - dict - ); - } -} - -// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // - -const Foam::Enum -< - Foam::implicitFunctions::composedFunctionImplicitFunction::modeType -> -Foam::implicitFunctions::composedFunctionImplicitFunction::modeTypeNames -({ - { modeType::ADD, "add" }, - { modeType::SUBTRACT, "subtract" }, - { modeType::MINDIST, "minDist" }, - { modeType::INTERSECT, "intersect" }, -}); - -Foam::label -Foam::implicitFunctions::composedFunctionImplicitFunction::selectFunction -( - const scalarField& values -) const -{ - switch (mode_) - { - case modeType::MINDIST: - { - scalarField absVal(mag(values)); - return findMin(absVal); - } - case modeType::ADD: - { - return findMax(values); - } - case modeType::SUBTRACT: - { - // Note: start at the second entry - const label idx = findMin(values, 1); - - if (values[idx] < values[0] && pos(values[0])) - { - return idx; - } - else - { - return 0; - } - } - case modeType::INTERSECT: - { - return findMin(values); - } - default: - { - FatalErrorInFunction - << "This mode is not supported only " << nl - << "Supported modes are: " << nl - << modeTypeNames - << abort(FatalError); - } - } - - return -1; -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::implicitFunctions::composedFunctionImplicitFunction:: -composedFunctionImplicitFunction -( - const dictionary& dict -) -: - functions_(dict.subDict("composedFunction").size()), - mode_(modeTypeNames.get("mode", dict)), - values_(dict.subDict("composedFunction").size()) -{ - const dictionary& funcDict = dict.subDict("composedFunction"); - label funcI = 0; - - forAllConstIters(funcDict, iter) - { - const word& key = iter().keyword(); - - if (!funcDict.isDict(key)) - { - FatalErrorInFunction - << "Found non-dictionary entry " << iter() - << " in top-level dictionary " << funcDict - << exit(FatalError); - } - - const dictionary& compFuncDict = funcDict.subDict(key); - - functions_.set - ( - funcI, - implicitFunction::New - ( - word(compFuncDict.lookup("type")), - compFuncDict - ) - ); - - ++funcI; - } -} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -Foam::scalar Foam::implicitFunctions::composedFunctionImplicitFunction::value -( - const vector& p -) const -{ - forAll(values_,i) - { - values_[i] = functions_[i].value(p); - } - - const label idx = selectFunction(values_); - - return values_[idx]; -} - - -Foam::vector Foam::implicitFunctions::composedFunctionImplicitFunction::grad -( - const vector& p -) const -{ - forAll(values_,i) - { - values_[i] = mag(functions_[i].value(p)); - } - - const label minIdx = findMin(values_); - - return functions_[minIdx].grad(p); -} - - -Foam::scalar -Foam::implicitFunctions::composedFunctionImplicitFunction::distanceToSurfaces -( - const vector& p -) const -{ - forAll(values_,i) - { - values_[i] = mag(functions_[i].value(p)); - } - - const label minIdx = findMin(values_); - - return functions_[minIdx].distanceToSurfaces(p); -} - - -// ************************************************************************* // diff --git a/src/VoF/implicitFunctions/composedFunction/composedFunctionImplicitFunction.H b/src/VoF/implicitFunctions/composedFunction/composedFunctionImplicitFunction.H deleted file mode 100644 index 782d0da1..00000000 --- a/src/VoF/implicitFunctions/composedFunction/composedFunctionImplicitFunction.H +++ /dev/null @@ -1,171 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2019 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- - | Copyright (C) 2019 DLR -------------------------------------------------------------------------------- - -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::implicitFunctions::composedFunctionImplicitFunction - -Description - Handles multiple implicit functions and offers multiple ways to combine - them - -Usage - Example of function object partial specification: - \verbatim - function composedFunctionImplicitFunction; - mode minDist; - // following mode are available: - // "add" "subtract" "minDist" "intersect" - composedFunctionImplicitFunctions - { - plane - { - function plane; - origin (0 1. 0); - normal (0 1 0); - - } - - sphere - { - function sphere; - radius 0.4; - origin (0.5 1.5 0.5); - scale 1; - } - - sphere2 - { - function sphere; - radius 0.4; - origin (0.5 0.5 0.5); - scale -1; - } - } - \endverbatim - - Original code supplied by Henning Scheufler, DLR (2019) - -SourceFiles - composedFunctionImplicitFunction.C - -\*---------------------------------------------------------------------------*/ - -#ifndef implicitFunctions_composedFunctionImplicitFunction_H -#define implicitFunctions_composedFunctionImplicitFunction_H - -#include "implicitFunction.H" -#include "scalarField.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace implicitFunctions -{ - -/*---------------------------------------------------------------------------*\ - Class composedFunctionImplicitFunction Declaration -\*---------------------------------------------------------------------------*/ - -class composedFunctionImplicitFunction -: - public implicitFunction -{ -private: - - // Private Member Data - //- Enumeration defining the valid actions - enum class modeType - { - ADD, - SUBTRACT, - MINDIST, - INTERSECT - }; - - //- The setActions text representations - static const Enum modeTypeNames; - - //- Stores the functions - PtrList functions_; - - //- Mode - modeType mode_; - - //- Needed for finding the closest function. - // Note: avoid creation every call - mutable scalarField values_; - - label selectFunction(const scalarField& values) const; - - - // Private Member Functions - - //- No copy construct - composedFunctionImplicitFunction - ( - const composedFunctionImplicitFunction& - ) = delete; - - //- No bitwise assignment - void operator=(const composedFunctionImplicitFunction&) = delete; - - -public: - - //- Runtime type information - TypeName("composedFunction"); - - - // Constructors - - //- Construct from dictionary - composedFunctionImplicitFunction(const dictionary& dict); - - - //- Destructor - virtual ~composedFunctionImplicitFunction() = default; - - - // Member Functions - - virtual scalar value(const vector& p) const; - - virtual vector grad(const vector& p) const; - - virtual scalar distanceToSurfaces(const vector& p) const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -} // End namespace implicitFunctions -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/src/VoF/implicitFunctions/cylinder/cylinderImplicitFunction.C b/src/VoF/implicitFunctions/cylinder/cylinderImplicitFunction.C deleted file mode 100644 index e4672c2d..00000000 --- a/src/VoF/implicitFunctions/cylinder/cylinderImplicitFunction.C +++ /dev/null @@ -1,86 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2019 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- - | Copyright (C) 2019 DLR -------------------------------------------------------------------------------- - -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "cylinderImplicitFunction.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - namespace implicitFunctions - { - defineTypeNameAndDebug(cylinderImplicitFunction, 0); - addToRunTimeSelectionTable - ( - implicitFunction, - cylinderImplicitFunction, - dict - ); - } -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::implicitFunctions::cylinderImplicitFunction::cylinderImplicitFunction -( - const point& origin, - const scalar radius, - const scalar scale, - const vector& direction -) -: - origin_(origin), - radius_(radius), - scale_(scale), - direction_(direction), - project_(tensor::I) -{ - direction_.normalise(); - project_ = tensor::I - direction_*direction_; // outer product -} - - -Foam::implicitFunctions::cylinderImplicitFunction::cylinderImplicitFunction -( - const dictionary& dict -) -: - origin_(dict.get("origin")), - radius_(dict.get("radius")), - scale_(dict.lookupOrDefault("scale", 1)), - direction_(dict.get("direction")), - project_(tensor::I) -{ - direction_.normalise(); - project_ = tensor::I - (direction_ * direction_); // outer product -} - - -// ************************************************************************* // diff --git a/src/VoF/implicitFunctions/cylinder/cylinderImplicitFunction.H b/src/VoF/implicitFunctions/cylinder/cylinderImplicitFunction.H deleted file mode 100644 index cfe98bbb..00000000 --- a/src/VoF/implicitFunctions/cylinder/cylinderImplicitFunction.H +++ /dev/null @@ -1,138 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2019 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- - | Copyright (C) 2019 DLR -------------------------------------------------------------------------------- - -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::implicitFunctions::cylinderImplicitFunction - -Description - creates a infintite long cylinderImplicitFunction - - Original code supplied by Henning Scheufler, DLR (2019) - -SourceFiles - cylinderImplicitFunction.C - -\*---------------------------------------------------------------------------*/ - -#ifndef implicitFunction_cylinderImplicitFunction_H -#define implicitFunction_cylinderImplicitFunction_H - -#include "implicitFunction.H" -#include "point.H" -#include "tensor.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace implicitFunctions -{ - -/*---------------------------------------------------------------------------*\ - Class cylinderImplicitFunction Declaration -\*---------------------------------------------------------------------------*/ - -class cylinderImplicitFunction -: - public implicitFunction -{ -private: - - // Private Member Data - - //- Origin point - const point origin_; - - //- Radius - const scalar radius_; - - const scalar scale_; - - vector direction_; - - tensor project_; - - - // Private Member Functions - - //- No copy construct - cylinderImplicitFunction(const cylinderImplicitFunction&) = delete; - - //- No bitwise assignment - void operator=(const cylinderImplicitFunction&) = delete; - - -public: - - //- Runtime type information - TypeName("cylinder"); - - - // Constructors - - //- Construct from components - cylinderImplicitFunction - ( - const point& origin, - const scalar radius, - const scalar scale, - const vector& direction - ); - - //- Construct from dictionary - cylinderImplicitFunction(const dictionary& dict); - - - //- Destructor - virtual ~cylinderImplicitFunction() = default; - - virtual scalar value(const vector& p) const - { - return (-mag(project_ & (p - origin_)) + radius_)*scale_; - } - - virtual vector grad(const vector& p) const - { - return -(project_ & (p - origin_))*scale_; - } - - virtual scalar distanceToSurfaces(const vector& p) const - { - return mag(mag(project_ & (p - origin_)) - radius_)*scale_; - } -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace implicitFunctions -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/src/VoF/implicitFunctions/ellipsoid/ellipsoidImplicitFunction.C b/src/VoF/implicitFunctions/ellipsoid/ellipsoidImplicitFunction.C deleted file mode 100644 index 6b9567ed..00000000 --- a/src/VoF/implicitFunctions/ellipsoid/ellipsoidImplicitFunction.C +++ /dev/null @@ -1,68 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2019 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- - | Copyright (C) 2019 DLR -------------------------------------------------------------------------------- - -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . -\*---------------------------------------------------------------------------*/ - -#include "ellipsoidImplicitFunction.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - namespace implicitFunctions - { - defineTypeNameAndDebug(ellipsoidImplicitFunction, 0); - addToRunTimeSelectionTable - ( - implicitFunction, - ellipsoidImplicitFunction, - dict - ); - } -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::implicitFunctions::ellipsoidImplicitFunction::ellipsoidImplicitFunction -( - const vector& semiAxis -) -: - semiAxis_(semiAxis) -{} - - -Foam::implicitFunctions::ellipsoidImplicitFunction::ellipsoidImplicitFunction -( - const dictionary& dict -) -: - semiAxis_(dict.get("semiAxis")) -{} - - -// ************************************************************************* // diff --git a/src/VoF/implicitFunctions/ellipsoid/ellipsoidImplicitFunction.H b/src/VoF/implicitFunctions/ellipsoid/ellipsoidImplicitFunction.H deleted file mode 100644 index a395a297..00000000 --- a/src/VoF/implicitFunctions/ellipsoid/ellipsoidImplicitFunction.H +++ /dev/null @@ -1,138 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2019-2019 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- - | Copyright (C) 2019-2019 DLR -------------------------------------------------------------------------------- - -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::implicitFunctions::ellipsoidImplicitFunction - -Description - creates an ellipsoidImplicitFunction - - Original code supplied by Henning Scheufler, DLR (2019) - -SourceFiles - ellipsoidImplicitFunction.C - -\*---------------------------------------------------------------------------*/ - -#ifndef implicitFunction_ellipsoidImplicitFunction_H -#define implicitFunction_ellipsoidImplicitFunction_H - -#include "implicitFunction.H" -#include "mathematicalConstants.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace implicitFunctions -{ - -/*---------------------------------------------------------------------------*\ - Class ellipsoidImplicitFunction Declaration -\*---------------------------------------------------------------------------*/ - -class ellipsoidImplicitFunction -: - public implicitFunction -{ -private: - - // Private Member Data - - //- Axis - vector semiAxis_; - - //- Origin point - vector origin_; - - - // Private Member Functions - - //- No copy construct - ellipsoidImplicitFunction(const ellipsoidImplicitFunction&) = delete; - - //- No bitwise assignment - void operator=(const ellipsoidImplicitFunction&) = delete; - - -public: - - //- Runtime type information - TypeName("ellipsoidImplicitFunction"); - - - // Constructors - - //- Construct from components - ellipsoidImplicitFunction(const vector& semiAxis); - - //- Construct from dictionary - ellipsoidImplicitFunction(const dictionary& dict); - - - //- Destructor - virtual ~ellipsoidImplicitFunction() = default; - - virtual scalar value(const vector& p) const - { - return - -sqrt - ( - sqr((p.x() - origin_.x())/semiAxis_.x()) - + sqr((p.y() - origin_.y())/semiAxis_.y()) - + sqr((p.z() - origin_.z())/semiAxis_.z()) - ) + 1; - } - - virtual vector grad(const vector& p) const - { - // normal_ has the length of one - return vector - ( - 2*(p.x() - origin_.x())/sqr(semiAxis_.x()), - 2*(p.y() - origin_.y())/sqr(semiAxis_.y()), - 2*(p.z() - origin_.z())/sqr(semiAxis_.z()) - ); - } - - virtual scalar distanceToSurfaces(const vector& p) const - { - NotImplemented; - return GREAT; - } -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace implicitFunctions -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/src/VoF/implicitFunctions/implicitFunction.C b/src/VoF/implicitFunctions/implicitFunction.C deleted file mode 100644 index 27ea09fd..00000000 --- a/src/VoF/implicitFunctions/implicitFunction.C +++ /dev/null @@ -1,70 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2019 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- - | Copyright (C) 2019 DLR -------------------------------------------------------------------------------- - -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "implicitFunction.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - defineTypeNameAndDebug(implicitFunction, 0); - defineRunTimeSelectionTable(implicitFunction, dict); -} - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -Foam::autoPtr Foam::implicitFunction::New -( - const word& functionType, - const dictionary& dict -) -{ - const auto& cstrIter = dictConstructorTablePtr_->find(functionType); - - if (!cstrIter.found()) - { - FatalErrorInFunction - << "Unknown implicitFunction type " << functionType - << nl << nl - << "Valid implicitFunction types : " << nl - << dictConstructorTablePtr_->sortedToc() - << exit(FatalError); - } - - return autoPtr(cstrIter()(dict)); -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::implicitFunction::implicitFunction() -{} - - -// ************************************************************************* // diff --git a/src/VoF/implicitFunctions/implicitFunction.H b/src/VoF/implicitFunctions/implicitFunction.H deleted file mode 100644 index 1d66a280..00000000 --- a/src/VoF/implicitFunctions/implicitFunction.H +++ /dev/null @@ -1,126 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2019 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- - | Copyright (C) 2019 DLR -------------------------------------------------------------------------------- - -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::implicitFunction - -Description - Base class for implicit functions - - Original code supplied by Henning Scheufler, DLR (2019) - -SourceFiles - implicitFunction.C - -\*---------------------------------------------------------------------------*/ - -#ifndef implicitFunction_H -#define implicitFunction_H - -#include "autoPtr.H" -#include "dictionary.H" -#include "vector.H" -#include "runTimeSelectionTables.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -/*---------------------------------------------------------------------------*\ - Class implicitFunction Declaration -\*---------------------------------------------------------------------------*/ - -class implicitFunction -{ - // Private Member Functions - - //- No copy construct - implicitFunction(const implicitFunction&) = delete; - - //- No copy assignment - void operator=(const implicitFunction&) = delete; - - -public: - - //- Runtime type information - TypeName("implicitFunction"); - - //- Declare run-time constructor selection table - declareRunTimeSelectionTable - ( - autoPtr, - implicitFunction, - dict, - ( - const dictionary& dict - ), - (dict) - ); - - //- Constructor - implicitFunction(); - - //- Return a reference to the selected implicitFunction - static autoPtr New - ( - const word& implicitFunctionType, - const dictionary& dict - ); - - //- Destructor - virtual ~implicitFunction() = default; - - - // Member Functions - - virtual scalar value(const vector& p) const - { - return GREAT; - } - - virtual vector grad(const vector& p) const - { - return vector::max; - } - - virtual scalar distanceToSurfaces(const vector& p) const - { - return GREAT; - } -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/src/VoF/implicitFunctions/paraboloid/paraboloidImplicitFunction.C b/src/VoF/implicitFunctions/paraboloid/paraboloidImplicitFunction.C deleted file mode 100644 index 48d31a0f..00000000 --- a/src/VoF/implicitFunctions/paraboloid/paraboloidImplicitFunction.C +++ /dev/null @@ -1,70 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2019 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- - | Copyright (C) 2019 DLR -------------------------------------------------------------------------------- - -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "paraboloidImplicitFunction.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - namespace implicitFunctions - { - defineTypeNameAndDebug(paraboloidImplicitFunction, 0); - addToRunTimeSelectionTable - ( - implicitFunction, - paraboloidImplicitFunction, - dict - ); - } - -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::implicitFunctions::paraboloidImplicitFunction::paraboloidImplicitFunction -( - const vector& coeffs -) -: - coeffs_(coeffs) -{} - - -Foam::implicitFunctions::paraboloidImplicitFunction::paraboloidImplicitFunction -( - const dictionary& dict -) -: - coeffs_(dict.get("coeffs")) -{} - - -// ************************************************************************* // diff --git a/src/VoF/implicitFunctions/paraboloid/paraboloidImplicitFunction.H b/src/VoF/implicitFunctions/paraboloid/paraboloidImplicitFunction.H deleted file mode 100644 index ba1a4e99..00000000 --- a/src/VoF/implicitFunctions/paraboloid/paraboloidImplicitFunction.H +++ /dev/null @@ -1,129 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2019 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- - | Copyright (C) 2019 DLR -------------------------------------------------------------------------------- - -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::implicitFunctions::paraboloidImplicitFunction - -Description - creates a paraboloid - - Original code supplied by Henning Scheufler, DLR (2019) - -SourceFiles - paraboloidImplicitFunction.C - -\*---------------------------------------------------------------------------*/ - -#ifndef implicitFunction_paraboloidImplicitFunction_H -#define implicitFunction_paraboloidImplicitFunction_H - -#include "implicitFunction.H" -#include "mathematicalConstants.H" - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace implicitFunctions -{ - -/*---------------------------------------------------------------------------*\ - class paraboloidImplicitFunction Declaration -\*---------------------------------------------------------------------------*/ - -class paraboloidImplicitFunction -: - public implicitFunction -{ -private: - - // Private Member Data - - //- Coefficients of ax^2 + bx*y + cy^2 - vector coeffs_; - - - // Private Member Functions - - //- No copy construct - paraboloidImplicitFunction(const paraboloidImplicitFunction&); - - //- No bitwise assignment - void operator=(const paraboloidImplicitFunction&); - - -public: - - //- Runtime type information - TypeName("paraboloid"); - - - // Constructors - - //- Construct from components - paraboloidImplicitFunction(const vector& coeffs); - - //- Construct from dictionary - paraboloidImplicitFunction(const dictionary& dict); - - - //- Destructor - virtual ~paraboloidImplicitFunction() = default; - - virtual scalar value(const vector& p) const - { - return - coeffs_.x()*sqr(p.x()) - + coeffs_.y()*p.x()*p.y() - + coeffs_.z()*sqr(p.y()) - - p.z(); - } - - virtual vector grad(const vector& p) const - { - NotImplemented; - return vector::zero; - } - - virtual scalar distanceToSurfaces(const vector& p) const - { - NotImplemented; - return 0; - } -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace implicitFunctions -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/src/VoF/implicitFunctions/plane/planeImplicitFunction.C b/src/VoF/implicitFunctions/plane/planeImplicitFunction.C deleted file mode 100644 index 1b05a8d5..00000000 --- a/src/VoF/implicitFunctions/plane/planeImplicitFunction.C +++ /dev/null @@ -1,74 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2019 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- - | Copyright (C) 2019 DLR -------------------------------------------------------------------------------- - -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "planeImplicitFunction.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - namespace implicitFunctions - { - defineTypeNameAndDebug(planeImplicitFunction, 0); - addToRunTimeSelectionTable - ( - implicitFunction, - planeImplicitFunction, - dict - ); - } -} - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::implicitFunctions::planeImplicitFunction::planeImplicitFunction -( - const vector& origin, - const vector& normal -) -: - origin_(origin), - normal_(normal) -{} - - -Foam::implicitFunctions::planeImplicitFunction::planeImplicitFunction -( - const dictionary& dict -) -: - origin_(dict.get("origin")), - normal_(dict.get("normal")) -{ - normal_.normalise(); -} - - -// ************************************************************************* // diff --git a/src/VoF/implicitFunctions/plane/planeImplicitFunction.H b/src/VoF/implicitFunctions/plane/planeImplicitFunction.H deleted file mode 100644 index 361ee18d..00000000 --- a/src/VoF/implicitFunctions/plane/planeImplicitFunction.H +++ /dev/null @@ -1,130 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2019 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- - | Copyright (C) 2019 DLR -------------------------------------------------------------------------------- - -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::implicitFunctions::planeImplicitFunction - -Description - creates a plane - - Original code supplied by Henning Scheufler, DLR (2019) - -SourceFiles - planeImplicitFunction.C - -\*---------------------------------------------------------------------------*/ - -#ifndef implicitFunction_planeImplicitFunction_H -#define implicitFunction_planeImplicitFunction_H - -#include "implicitFunction.H" -#include "mathematicalConstants.H" - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace implicitFunctions -{ - -/*---------------------------------------------------------------------------*\ - Class planeImplicitFunction Declaration -\*---------------------------------------------------------------------------*/ - -class planeImplicitFunction -: - public implicitFunction -{ -private: - - // Private Member Data - - //- ax^2 + bx*y + cy^2 - //- Reference point - vector origin_; - - //- Normal vector - vector normal_; - - - // Private Member Functions - - //- No copy construct - planeImplicitFunction(const planeImplicitFunction&); - - //- No assignment - void operator=(const planeImplicitFunction&); - - -public: - - //- Runtime type information - TypeName("plane"); - - - // Constructors - - //- Construct from components - planeImplicitFunction(const vector& origin, const vector& normal); - - //- Construct from dictionary (used by implicitFunctions) - planeImplicitFunction(const dictionary& dict); - - - //- Destructor - virtual ~planeImplicitFunction() = default; - - - virtual scalar value(const vector& p) const - { - return -normal_ & (origin_ - p); - } - - virtual vector grad(const vector& p) const - { - // normal_ has the length of one - return normal_; - } - - virtual scalar distanceToSurfaces(const vector& p) const - { - // normal_ has the length of one - return mag((p - origin_) & -normal_); - } -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace implicitFunctions -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/src/VoF/implicitFunctions/sin/sinImplicitFunction.C b/src/VoF/implicitFunctions/sin/sinImplicitFunction.C deleted file mode 100644 index 425ded51..00000000 --- a/src/VoF/implicitFunctions/sin/sinImplicitFunction.C +++ /dev/null @@ -1,86 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2019 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- - | Copyright (C) 2019 DLR -------------------------------------------------------------------------------- - -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "sinImplicitFunction.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - namespace implicitFunctions - { - defineTypeNameAndDebug(sinImplicitFunction, 0); - addToRunTimeSelectionTable - ( - implicitFunction, - sinImplicitFunction, - dict - ); - } -} - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::implicitFunctions::sinImplicitFunction::sinImplicitFunction -( - const scalar period, - const scalar phase, - const scalar amplitude, - const vector& direction, - const vector& up, - const vector& origin -) -: - period_(period), - phase_(phase), - amplitude_(amplitude), - up_(up), - direction_(direction), - origin_(origin) -{} - - -Foam::implicitFunctions::sinImplicitFunction::sinImplicitFunction -( - const dictionary& dict -) -: - period_(dict.get("period")), - phase_(dict.lookupOrDefault("phase",0.0)), - amplitude_(dict.get("amplitude")), - up_(dict.get("up")), - direction_(dict.get("direction")), - origin_(dict.get("origin")) -{ - direction_.normalise(); - up_.normalise(); -} - - -// ************************************************************************* // diff --git a/src/VoF/implicitFunctions/sin/sinImplicitFunction.H b/src/VoF/implicitFunctions/sin/sinImplicitFunction.H deleted file mode 100644 index 977aa1e7..00000000 --- a/src/VoF/implicitFunctions/sin/sinImplicitFunction.H +++ /dev/null @@ -1,148 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2019 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- - | Copyright (C) 2019 DLR -------------------------------------------------------------------------------- - -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::implicitFunctions::sinImplicitFunction - -Description - - Original code supplied by Henning Scheufler, DLR (2019) - -SourceFiles - sinImplicitFunction.C - -\*---------------------------------------------------------------------------*/ - -#ifndef implicitFunction_sinImplicitFunction_H -#define implicitFunction_sinImplicitFunction_H - -#include "implicitFunction.H" -#include "mathematicalConstants.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace implicitFunctions -{ - -/*---------------------------------------------------------------------------*\ - Class sinImplicitFunction Declaration -\*---------------------------------------------------------------------------*/ - -class sinImplicitFunction -: - public implicitFunction -{ -private: - - // Private Member Data - - //- origin point - const scalar period_; - - //- Radius - const scalar phase_; - - const scalar amplitude_; - - vector up_; - - vector direction_; - - vector origin_; - - - // Private Member Functions - - //- No copy construct - sinImplicitFunction(const sinImplicitFunction&) = delete; - - //- No bitwise assignment - void operator=(const sinImplicitFunction&) = delete; - - -public: - - //- Runtime type information - TypeName("sin"); - - - // Constructors - - //- Construct from components - sinImplicitFunction - ( - const scalar period, - const scalar phase, - const scalar amplitude, - const vector& direction, - const vector& up, - const vector& origin - ); - - //- Construct from dictionary (used by implicitFunctions) - sinImplicitFunction(const dictionary& dict); - - - //- Destructor - virtual ~sinImplicitFunction() = default; - - virtual scalar value(const vector& p) const - { - const scalar x = (p - origin_) & direction_; - const scalar z = (p - origin_) & -up_; - - return - z - - amplitude_ - *Foam::sin(2*constant::mathematical::pi*x/period_ + phase_); - } - - virtual vector grad(const vector& p) const - { - NotImplemented; - return vector::zero; - } - - virtual scalar distanceToSurfaces(const vector& p) const - { - NotImplemented; - return 0; - } -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace implicitFunctions -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/src/VoF/implicitFunctions/sphere/sphereImplicitFunction.C b/src/VoF/implicitFunctions/sphere/sphereImplicitFunction.C deleted file mode 100644 index 05d63e46..00000000 --- a/src/VoF/implicitFunctions/sphere/sphereImplicitFunction.C +++ /dev/null @@ -1,74 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2019 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- - | Copyright (C) 2019 DLR -------------------------------------------------------------------------------- - -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "sphereImplicitFunction.H" -#include "addToRunTimeSelectionTable.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - namespace implicitFunctions - { - defineTypeNameAndDebug(sphereImplicitFunction, 0); - addToRunTimeSelectionTable - ( - implicitFunction, - sphereImplicitFunction, - dict - ); - } -} - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::implicitFunctions::sphereImplicitFunction::sphereImplicitFunction -( - const point& origin, - const scalar radius, - const scalar scale -) -: - origin_(origin), - radius_(radius), - scale_(scale) -{} - - -Foam::implicitFunctions::sphereImplicitFunction::sphereImplicitFunction -( - const dictionary& dict -) -: - origin_(dict.get("origin")), - radius_(dict.get("radius")), - scale_(dict.lookupOrDefault("scale" ,1)) -{} - - -// ************************************************************************* // diff --git a/src/VoF/implicitFunctions/sphere/sphereImplicitFunction.H b/src/VoF/implicitFunctions/sphere/sphereImplicitFunction.H deleted file mode 100644 index 964d2fba..00000000 --- a/src/VoF/implicitFunctions/sphere/sphereImplicitFunction.H +++ /dev/null @@ -1,132 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2019 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- - | Copyright (C) 2019 DLR -------------------------------------------------------------------------------- - -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -Class - Foam::implicitFunctions::sphereImplicitFunction - -Description - Creates a sphere - - Original code supplied by Henning Scheufler, DLR (2019) - -SourceFiles - sphereImplicitFunction.C - -\*---------------------------------------------------------------------------*/ - -#ifndef implicitFunction_sphereImplicitFunction_H -#define implicitFunction_sphereImplicitFunction_H - -#include "implicitFunction.H" -#include "point.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ -namespace implicitFunctions -{ - -/*---------------------------------------------------------------------------*\ - Class sphereImplicitFunction Declaration -\*---------------------------------------------------------------------------*/ - -class sphereImplicitFunction -: - public implicitFunction -{ - // Private Member Data - - //- Origin point - const point origin_; - - //- Radius - const scalar radius_; - - const scalar scale_; - - - // Private Member Functions - - //- No copy construct - sphereImplicitFunction(const sphereImplicitFunction&); - - //- No copy assignment - void operator=(const sphereImplicitFunction&) = delete; - - -public: - - //- Runtime type information - TypeName("sphere"); - - - // Constructors - - //- Construct from components - sphereImplicitFunction - ( - const point&, - const scalar radius, - const scalar scale - ); - - //- Construct from dictionary - sphereImplicitFunction(const dictionary& dict); - - //- Destructor - virtual ~sphereImplicitFunction() = default; - - - // Member Functions - - virtual scalar value(const vector& p) const - { - return (-mag(p - origin_) + radius_)*scale_; - } - - virtual vector grad(const vector& p) const - { - return (origin_ - p)*scale_; - } - - virtual scalar distanceToSurfaces(const vector& p) const - { - return mag(mag(p-origin_) - radius_)*scale_; - } -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace implicitFunctions -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // diff --git a/src/VoF/markInterfaceRegion/markInterfaceRegion.C b/src/VoF/markInterfaceRegion/markInterfaceRegion.C index ea90f6e7..b488232b 100644 --- a/src/VoF/markInterfaceRegion/markInterfaceRegion.C +++ b/src/VoF/markInterfaceRegion/markInterfaceRegion.C @@ -28,7 +28,7 @@ License #include "wedgePolyPatch.H" #include "indexedOctree.H" #include "treeDataPoint.H" -#include "alphaContactAngleFvPatchScalarField.H" +#include "alphaContactAngleTwoPhaseFvPatchScalarField.H" // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // diff --git a/src/VoF/multiDimPolyFitter/leastSquareGrad.C b/src/VoF/multiDimPolyFitter/leastSquareGrad.C deleted file mode 100644 index cb4a1116..00000000 --- a/src/VoF/multiDimPolyFitter/leastSquareGrad.C +++ /dev/null @@ -1,178 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2019-2019 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- - | Copyright (C) 2019-2019 DLR -------------------------------------------------------------------------------- - -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "leastSquareGrad.H" - -#include "emptyPolyPatch.H" -#include "processorPolyPatch.H" -#include "wedgePolyPatch.H" - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -template -Foam::leastSquareGrad::leastSquareGrad -( - word functionName, - Vector