From e4449067dbe080fd693c457966da3a37d0317fbb Mon Sep 17 00:00:00 2001 From: "Edgar P. Burkhart" Date: Fri, 4 Mar 2022 13:30:05 +0100 Subject: [PATCH] Added olaFlow input files --- olaflow/of/0.org/U | 67 ++++ olaflow/of/0.org/alpha.water | 61 +++ olaflow/of/0.org/alpha.water.org | 61 +++ olaflow/of/0.org/epsilon | 68 ++++ olaflow/of/0.org/k | 69 ++++ olaflow/of/0.org/nut | 78 ++++ olaflow/of/0.org/omega | 68 ++++ olaflow/of/0.org/p_rgh | 71 ++++ olaflow/of/0.org/porosityIndex | 59 +++ olaflow/of/0.org/porosityIndex.org | 59 +++ olaflow/of/constant/g | 22 ++ olaflow/of/constant/porosityDict | 29 ++ olaflow/of/constant/transportProperties | 37 ++ olaflow/of/constant/turbulenceProperties | 29 ++ olaflow/of/constant/turbulenceProperties_keps | 29 ++ olaflow/of/constant/turbulenceProperties_sst | 29 ++ olaflow/of/constant/waveDict | 37 ++ olaflow/of/system/blockMeshDict | 81 ++++ olaflow/of/system/controlDict | 138 +++++++ olaflow/of/system/decomposeParDict | 50 +++ olaflow/of/system/fvSchemes | 79 ++++ olaflow/of/system/fvSolution | 95 +++++ olaflow/of/system/setFieldsDict | 53 +++ olaflow/of/system/snappyHexMeshDict | 359 ++++++++++++++++++ 24 files changed, 1728 insertions(+) create mode 100644 olaflow/of/0.org/U create mode 100644 olaflow/of/0.org/alpha.water create mode 100644 olaflow/of/0.org/alpha.water.org create mode 100644 olaflow/of/0.org/epsilon create mode 100644 olaflow/of/0.org/k create mode 100644 olaflow/of/0.org/nut create mode 100644 olaflow/of/0.org/omega create mode 100644 olaflow/of/0.org/p_rgh create mode 100644 olaflow/of/0.org/porosityIndex create mode 100644 olaflow/of/0.org/porosityIndex.org create mode 100644 olaflow/of/constant/g create mode 100644 olaflow/of/constant/porosityDict create mode 100644 olaflow/of/constant/transportProperties create mode 100644 olaflow/of/constant/turbulenceProperties create mode 100644 olaflow/of/constant/turbulenceProperties_keps create mode 100644 olaflow/of/constant/turbulenceProperties_sst create mode 100644 olaflow/of/constant/waveDict create mode 100644 olaflow/of/system/blockMeshDict create mode 100644 olaflow/of/system/controlDict create mode 100644 olaflow/of/system/decomposeParDict create mode 100644 olaflow/of/system/fvSchemes create mode 100644 olaflow/of/system/fvSolution create mode 100644 olaflow/of/system/setFieldsDict create mode 100644 olaflow/of/system/snappyHexMeshDict diff --git a/olaflow/of/0.org/U b/olaflow/of/0.org/U new file mode 100644 index 0000000..d8e9345 --- /dev/null +++ b/olaflow/of/0.org/U @@ -0,0 +1,67 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.7.x | +| \\ / A nd | Web: www.OpenFOAM.com | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volVectorField; + location "0"; + object U; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 1 -1 0 0 0 0]; + +internalField uniform (0 0 0); + +boundaryField +{ + inlet + { + type waveVelocity; + waveDictName waveDict; + value uniform (0 0 0); + } + atmosphere + { + type pressureInletOutletVelocity; + value uniform (0 0 0); + } + "wall." + { + type fixedValue; + value uniform (0 0 0); + } + bathy + { + type fixedValue; + value uniform (0 0 0); + } + bloc0 + { + type fixedValue; + value uniform (0 0 0); + } + bloc1 + { + type fixedValue; + value uniform (0 0 0); + } + defaultFaces + { + type empty; + } + outlet + { + type waveAbsorption2DVelocity; + value uniform (0 0 0); + } +} + + +// ************************************************************************* // diff --git a/olaflow/of/0.org/alpha.water b/olaflow/of/0.org/alpha.water new file mode 100644 index 0000000..49520af --- /dev/null +++ b/olaflow/of/0.org/alpha.water @@ -0,0 +1,61 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.5-dev | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + object alpha.water; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 0 0 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + inlet + { + type waveAlpha; + waveDictName waveDict; + value uniform 0; + } + outlet + { + type zeroGradient; + } + "wall." + { + type zeroGradient; + } + bathy + { + type zeroGradient; + } + bloc0 + { + type zeroGradient; + } + bloc1 + { + type zeroGradient; + } + defaultFaces + { + type empty; + } + atmosphere + { + type inletOutlet; + inletValue uniform 0; + value uniform 0; + } +} + +// ************************************************************************* // diff --git a/olaflow/of/0.org/alpha.water.org b/olaflow/of/0.org/alpha.water.org new file mode 100644 index 0000000..49520af --- /dev/null +++ b/olaflow/of/0.org/alpha.water.org @@ -0,0 +1,61 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.5-dev | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + object alpha.water; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 0 0 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + inlet + { + type waveAlpha; + waveDictName waveDict; + value uniform 0; + } + outlet + { + type zeroGradient; + } + "wall." + { + type zeroGradient; + } + bathy + { + type zeroGradient; + } + bloc0 + { + type zeroGradient; + } + bloc1 + { + type zeroGradient; + } + defaultFaces + { + type empty; + } + atmosphere + { + type inletOutlet; + inletValue uniform 0; + value uniform 0; + } +} + +// ************************************************************************* // diff --git a/olaflow/of/0.org/epsilon b/olaflow/of/0.org/epsilon new file mode 100644 index 0000000..706ec43 --- /dev/null +++ b/olaflow/of/0.org/epsilon @@ -0,0 +1,68 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.1.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + object epsilon; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 2 -3 0 0 0 0]; + +internalField uniform 0.0001; + +boundaryField +{ + inlet + { + type inletOutlet; + inletValue uniform 0.0001; + value uniform 0.0001; + } + outlet + { + type inletOutlet; + inletValue uniform 0.0001; + value uniform 0.0001; + } + "wall." + { + type epsilonWallFunction; + value uniform 0.0001; + } + bathy + { + type epsilonWallFunction; + value uniform 0.0001; + } + bloc0 + { + type epsilonWallFunction; + value uniform 0.0001; + } + bloc1 + { + type epsilonWallFunction; + value uniform 0.0001; + } + defaultFaces + { + type empty; + } + atmosphere + { + type inletOutlet; + inletValue uniform 0.0001; + value uniform 0.0001; + } +} + + +// ************************************************************************* // diff --git a/olaflow/of/0.org/k b/olaflow/of/0.org/k new file mode 100644 index 0000000..83de11c --- /dev/null +++ b/olaflow/of/0.org/k @@ -0,0 +1,69 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.7.1 | +| \\ / A nd | Web: www.OpenFOAM.com | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object k; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 2 -2 0 0 0 0]; + +internalField uniform 0.00000001; + +boundaryField +{ + inlet + { + type inletOutlet; + inletValue uniform 0.00000001; + value uniform 0.00000001; + } + outlet + { + type inletOutlet; + inletValue uniform 0.00000001; + value uniform 0.00000001; + } + "wall." + { + type kqRWallFunction; + value uniform 0.00000001; + } + bathy + { + type kqRWallFunction; + value uniform 0.00000001; + } + bloc0 + { + type kqRWallFunction; + value uniform 0.00000001; + } + bloc1 + { + type kqRWallFunction; + value uniform 0.00000001; + } + defaultFaces + { + type empty; + } + atmosphere + { + type inletOutlet; + inletValue uniform 0.00000001; + value uniform 0.00000001; + } +} + + +// ************************************************************************* // diff --git a/olaflow/of/0.org/nut b/olaflow/of/0.org/nut new file mode 100644 index 0000000..29da2ca --- /dev/null +++ b/olaflow/of/0.org/nut @@ -0,0 +1,78 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 3.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object nut; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 2 -1 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + inlet + { + type calculated; + value uniform 0; + } + outlet + { + type calculated; + value uniform 0; + } + "wall." + { + type nutkWallFunction; + Cmu 0.09; + kappa 0.41; + E 9.8; + value uniform 0; + } + atmosphere + { + type calculated; + value uniform 0; + } + defaultFaces + { + type empty; + } + bathy + { + type nutkWallFunction; + Cmu 0.09; + kappa 0.41; + E 9.8; + value uniform 0; + } + bloc0 + { + type nutkWallFunction; + Cmu 0.09; + kappa 0.41; + E 9.8; + value uniform 0; + } + bloc1 + { + type nutkWallFunction; + Cmu 0.09; + kappa 0.41; + E 9.8; + value uniform 0; + } +} + + +// ************************************************************************* // diff --git a/olaflow/of/0.org/omega b/olaflow/of/0.org/omega new file mode 100644 index 0000000..98f8314 --- /dev/null +++ b/olaflow/of/0.org/omega @@ -0,0 +1,68 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.7.1 | +| \\ / A nd | Web: www.OpenFOAM.com | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + object omega; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 0 -1 0 0 0 0]; + +internalField uniform 0.001; + +boundaryField +{ + inlet + { + type inletOutlet; + inletValue uniform 0.001; + value uniform 0.001; + } + outlet + { + type inletOutlet; + inletValue uniform 0.001; + value uniform 0.001; + } + "wall." + { + type omegaWallFunction; + value uniform 0.001; + } + bathy + { + type omegaWallFunction; + value uniform 0.001; + } + bloc0 + { + type omegaWallFunction; + value uniform 0.001; + } + bloc1 + { + type omegaWallFunction; + value uniform 0.001; + } + defaultFaces + { + type empty; + } + atmosphere + { + type inletOutlet; + inletValue uniform 0.001; + value uniform 0.001; + } +} + + +// ************************************************************************* // diff --git a/olaflow/of/0.org/p_rgh b/olaflow/of/0.org/p_rgh new file mode 100644 index 0000000..eb45d1a --- /dev/null +++ b/olaflow/of/0.org/p_rgh @@ -0,0 +1,71 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.5-dev | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + object p_rgh; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [1 -1 -2 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + "wall." + { + type fixedFluxPressure; + value uniform 0; + } + bathy + { + type fixedFluxPressure; + value uniform 0; + } + bloc0 + { + type fixedFluxPressure; + value uniform 0; + } + bloc1 + { + type fixedFluxPressure; + value uniform 0; + } + defaultFaces + { + type empty; + } + outlet + { + type fixedFluxPressure; + value uniform 0; + } + inlet + { + type fixedFluxPressure; + value uniform 0; + } + atmosphere + { + type totalPressure; + U U; + phi phi; + rho rho; + psi none; + gamma 1; + p0 uniform 0; + value uniform 0; + } +} + + +// ************************************************************************* // diff --git a/olaflow/of/0.org/porosityIndex b/olaflow/of/0.org/porosityIndex new file mode 100644 index 0000000..b9c5790 --- /dev/null +++ b/olaflow/of/0.org/porosityIndex @@ -0,0 +1,59 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.1.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object porosityIndex; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 0 0 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + inlet + { + type zeroGradient; + } + outlet + { + type zeroGradient; + } + "wall." + { + type zeroGradient; + } + bathy + { + type zeroGradient; + } + bloc0 + { + type zeroGradient; + } + bloc1 + { + type zeroGradient; + } + defaultFaces + { + type empty; + } + atmosphere + { + type zeroGradient; + } +} + + +// ************************************************************************* // diff --git a/olaflow/of/0.org/porosityIndex.org b/olaflow/of/0.org/porosityIndex.org new file mode 100644 index 0000000..b9c5790 --- /dev/null +++ b/olaflow/of/0.org/porosityIndex.org @@ -0,0 +1,59 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.1.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object porosityIndex; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 0 0 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + inlet + { + type zeroGradient; + } + outlet + { + type zeroGradient; + } + "wall." + { + type zeroGradient; + } + bathy + { + type zeroGradient; + } + bloc0 + { + type zeroGradient; + } + bloc1 + { + type zeroGradient; + } + defaultFaces + { + type empty; + } + atmosphere + { + type zeroGradient; + } +} + + +// ************************************************************************* // diff --git a/olaflow/of/constant/g b/olaflow/of/constant/g new file mode 100644 index 0000000..c1dbc16 --- /dev/null +++ b/olaflow/of/constant/g @@ -0,0 +1,22 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.1.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class uniformDimensionedVectorField; + location "constant"; + object g; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 1 -2 0 0 0 0]; +value ( 0 0 -9.81 ); + + +// ************************************************************************* // diff --git a/olaflow/of/constant/porosityDict b/olaflow/of/constant/porosityDict new file mode 100644 index 0000000..6fbce5d --- /dev/null +++ b/olaflow/of/constant/porosityDict @@ -0,0 +1,29 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.1.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object porosityDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +// Materials: clear region, core, secondary armour layer, primary armour layer +// a,b,c: tuning parameters +a 2(0 50); +b 2(0 1.2); +c 2(0 0.34); + +// D50: mean nominal diameter +D50 2(1 4); +// porosity (phi) +porosity 2(1 0.5); + +// ************************************************************************* // diff --git a/olaflow/of/constant/transportProperties b/olaflow/of/constant/transportProperties new file mode 100644 index 0000000..d3edb56 --- /dev/null +++ b/olaflow/of/constant/transportProperties @@ -0,0 +1,37 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 3.0.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object transportProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +phases (water air); + +water +{ + transportModel Newtonian; + nu [0 2 -1 0 0 0 0] 1e-06; + rho [1 -3 0 0 0 0 0] 1000; +} + +air +{ + transportModel Newtonian; + nu [0 2 -1 0 0 0 0] 1.48e-05; + rho [1 -3 0 0 0 0 0] 1; +} + +sigma [1 0 -2 0 0 0 0] 0.07; + + +// ************************************************************************* // diff --git a/olaflow/of/constant/turbulenceProperties b/olaflow/of/constant/turbulenceProperties new file mode 100644 index 0000000..35b1307 --- /dev/null +++ b/olaflow/of/constant/turbulenceProperties @@ -0,0 +1,29 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.1.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object turbulenceProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +simulationType RAS; + +RAS +{ + RASModel kEpsilon; + + turbulence on; + + printCoeffs on; +} + +// ************************************************************************* // diff --git a/olaflow/of/constant/turbulenceProperties_keps b/olaflow/of/constant/turbulenceProperties_keps new file mode 100644 index 0000000..35b1307 --- /dev/null +++ b/olaflow/of/constant/turbulenceProperties_keps @@ -0,0 +1,29 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.1.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object turbulenceProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +simulationType RAS; + +RAS +{ + RASModel kEpsilon; + + turbulence on; + + printCoeffs on; +} + +// ************************************************************************* // diff --git a/olaflow/of/constant/turbulenceProperties_sst b/olaflow/of/constant/turbulenceProperties_sst new file mode 100644 index 0000000..187f845 --- /dev/null +++ b/olaflow/of/constant/turbulenceProperties_sst @@ -0,0 +1,29 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.1.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object turbulenceProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +simulationType RAS; + +RAS +{ + RASModel kOmegaSST; + + turbulence on; + + printCoeffs on; +} + +// ************************************************************************* // diff --git a/olaflow/of/constant/waveDict b/olaflow/of/constant/waveDict new file mode 100644 index 0000000..d274bbd --- /dev/null +++ b/olaflow/of/constant/waveDict @@ -0,0 +1,37 @@ +/*---------------------------------------------------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.3 | +| \\ / A nd | Web: http://www.openfoam.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object waveDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +//waveType regular; +//waveTheory cnoidal; +//genAbs 1; +//absDir 0.0; +//nPaddles 1; +//wavePeriod 20.0; +//waveHeight 15.0; +//waveDir 0.0; +//wavePhase 0.; +//tSmooth 0.0; + +waveType solitary; +waveTheory Boussinesq; +genAbs 0; +absDir 0.0; +nPaddles 1; +waveHeight 7.5; +waveDir 0.0; + +// ************************************************************************* // diff --git a/olaflow/of/system/blockMeshDict b/olaflow/of/system/blockMeshDict new file mode 100644 index 0000000..922f7de --- /dev/null +++ b/olaflow/of/system/blockMeshDict @@ -0,0 +1,81 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.7.1 | +| \\ / A nd | Web: www.OpenFOAM.com | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object blockMeshDict; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +scale 1; + +vertices +( + (0 0 -30) + (150 0 -30) + (150 0 20) + (0 0 20) + (0 1 -30) + (150 1 -30) + (150 1 20) + (0 1 20) +); + +blocks +( + hex (0 1 5 4 3 2 6 7) (300 1 100) simpleGrading (1 1 1) +); + +edges +( +); + +boundary +( + inlet + { + type patch; + faces + ( + (0 4 7 3) + ); + } + outlet + { + type patch; + faces + ( + (1 5 6 2) + ); + } + wall1 + { + type wall; + faces + ( + (0 1 5 4) + ); + } + atmosphere + { + type patch; + faces + ( + (3 2 6 7) + ); + } +); + +mergePatchPairs +( +); + +// ************************************************************************* // diff --git a/olaflow/of/system/controlDict b/olaflow/of/system/controlDict new file mode 100644 index 0000000..8c12c73 --- /dev/null +++ b/olaflow/of/system/controlDict @@ -0,0 +1,138 @@ +/*---------------------------------------------------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.3 | +| \\ / A nd | Web: http://www.openfoam.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + location "system"; + class dictionary; + object controlDict; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +application olaFlow; + +startFrom latestTime; + +startTime 0; + +stopAt endTime; + +endTime 60; + +deltaT 0.1; + +writeControl adjustableRunTime; + +writeInterval 0.5; + +purgeWrite 0; + +writeFormat ascii; + +writePrecision 6; + +compression off; + +timeFormat general; + +timePrecision 6; + +runTimeModifiable yes; + +adjustTimeStep yes; + +maxCo 0.45; +maxAlphaCo 0.45; + +maxDeltaT 0.5; +/* +functions +{ + gaugesVOF + { + type sets; + libs ("libsampling.so"); + writeControl outputTime; + writeInterval 1; + setFormat raw; + surfaceFormat raw; + interpolationScheme cell; + fields ( alpha.water ); + sets + ( + GaugeVOF01 + { + type lineCellFace; + axis xyz; + start ( 0.5 0.001 0 ); + end ( 0.5 0.001 1.2 ); + } + GaugeVOF02 + { + type lineCellFace; + axis xyz; + start ( 9.25 0.001 0 ); + end ( 9.25 0.001 1.2 ); + } + GaugeVOF03 + { + type lineCellFace; + axis xyz; + start ( 15.75 0.001 0 ); + end ( 15.75 0.001 1.2 ); + } + GaugeVOF04 + { + type lineCellFace; + axis xyz; + start ( 17.75 0.001 0 ); + end ( 17.75 0.001 1.2 ); + } + GaugeVOF05 + { + type lineCellFace; + axis xyz; + start ( 21.1 0.001 0 ); + end ( 21.1 0.001 1.2 ); + } + ); + } + gaugesP + { + type sets; + libs ("libsampling.so"); + writeControl outputTime; + writeInterval 1; + setFormat raw; + surfaceFormat raw; + interpolationScheme cellPointFace; + fields ( p ); + sets + ( + GaugesP + { + type boundaryPoints; + axis xyz; + patches 1(caisson); + points ((18.0 0.01 0.75) + (18.00 0.01 0.80) + (18.00 0.01 0.85) + (18.00 0.01 0.95) + (18.01 0.01 0.70) + (18.25 0.01 0.70) + (18.50 0.01 0.70) + (18.75 0.01 0.70)); + maxDistance 0.01; + } + ); + } +} +*/ +// ************************************************************************* // diff --git a/olaflow/of/system/decomposeParDict b/olaflow/of/system/decomposeParDict new file mode 100644 index 0000000..3407e5d --- /dev/null +++ b/olaflow/of/system/decomposeParDict @@ -0,0 +1,50 @@ +/*---------------------------------------------------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.3 | +| \\ / A nd | Web: http://www.openfoam.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + location "system"; + class dictionary; + object decomposeParDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +numberOfSubdomains 4; + +method simple; + +simpleCoeffs +{ + n ( 2 2 1 ); + delta 0.001; +} + +hierarchicalCoeffs +{ + n ( 1 1 1 ); + delta 0.001; + order xyz; +} + +metisCoeffs +{ + processorWeights ( 1 1 1 1 ); +} + +manualCoeffs +{ + dataFile ""; +} + +distributed no; + +roots (); + + +// ************************************************************************* // diff --git a/olaflow/of/system/fvSchemes b/olaflow/of/system/fvSchemes new file mode 100644 index 0000000..c0ac5b1 --- /dev/null +++ b/olaflow/of/system/fvSchemes @@ -0,0 +1,79 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.3.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSchemes; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +ddtSchemes +{ + default Euler; +} + +gradSchemes +{ + default Gauss linear; +} + +divSchemes +{ + div(rhoPhi,U) Gauss limitedLinearV 1; + div(U) Gauss linear; + div((rhoPhi|interpolate(porosity)),U) Gauss limitedLinearV 1; + div(rhoPhiPor,UPor) Gauss limitedLinearV 1; + div(rhoPhi,UPor) Gauss limitedLinearV 1; + div(rhoPhiPor,U) Gauss limitedLinearV 1; + div(phi,alpha) Gauss vanLeer; + div(phirb,alpha) Gauss interfaceCompression; + div((muEff*dev(T(grad(U))))) Gauss linear; + div(phi,k) Gauss upwind; + div(phi,epsilon) Gauss upwind; + div((phi|interpolate(porosity)),k) Gauss upwind; + div((phi*interpolate(rho)),k) Gauss upwind; + div((phi|interpolate(porosity)),epsilon) Gauss upwind; + div(phi,omega) Gauss upwind; + div((phi|interpolate(porosity)),omega) Gauss upwind; + div((phi*interpolate(rho)),omega) Gauss upwind; + div((phi*interpolate(rho)),epsilon) Gauss upwind; +} + +laplacianSchemes +{ + default Gauss linear corrected; +} + +interpolationSchemes +{ + default linear; +} + +snGradSchemes +{ + default corrected; +} + +fluxRequired +{ + default no; + p_rgh; + pcorr; + alpha.water; +} + +wallDist +{ + method meshWave; +} + + +// ************************************************************************* // diff --git a/olaflow/of/system/fvSolution b/olaflow/of/system/fvSolution new file mode 100644 index 0000000..ca48d43 --- /dev/null +++ b/olaflow/of/system/fvSolution @@ -0,0 +1,95 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 2.3.0 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSolution; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +solvers +{ + "alpha.water.*" + { + nAlphaCorr 1; + nAlphaSubCycles 2; + alphaOuterCorrectors yes; + cAlpha 1; + + MULESCorr no; + nLimiterIter 3; + + solver smoothSolver; + smoother symGaussSeidel; + tolerance 1e-8; + relTol 0; + } + + "pcorr.*" + { + solver PCG; + preconditioner DIC; + tolerance 1e-5; + relTol 0; + } + + p_rgh + { + solver PCG; + preconditioner DIC; + tolerance 1e-07; + relTol 0.05; + } + + p_rghFinal + { + $p_rgh; + relTol 0; + } + + U + { + solver smoothSolver; + smoother symGaussSeidel; + tolerance 1e-06; + relTol 0; + } + + "(k|epsilon|omega|B|nuTilda).*" + { + solver smoothSolver; + smoother symGaussSeidel; + tolerance 1e-08; + relTol 0; + } +} + +PIMPLE +{ + momentumPredictor no; + nOuterCorrectors 1; + nCorrectors 3; + nNonOrthogonalCorrectors 0; +} + +relaxationFactors +{ + fields + { + } + equations + { + ".*" 1; + } +} + + +// ************************************************************************* // diff --git a/olaflow/of/system/setFieldsDict b/olaflow/of/system/setFieldsDict new file mode 100644 index 0000000..1cb3097 --- /dev/null +++ b/olaflow/of/system/setFieldsDict @@ -0,0 +1,53 @@ +/*---------------------------------------------------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.3 | +| \\ / A nd | Web: http://www.openfoam.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object setFieldsDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +defaultFieldValues +( + volScalarFieldValue alpha.water 0 + volScalarFieldValue porosityIndex 0 +); + +regions +( + boxToCell + { + box (-10 -10 -100) (500 10 5); + + fieldValues + ( + volScalarFieldValue alpha.water 1 + ); + } + surfaceToCell + { + file "./constant/triSurface/rubble.stl"; + outsidePoints ((0 0 0)); // definition of outside + includeCut true; // cells cut by surface + includeInside true; // cells not on outside of surf + includeOutside false; // cells on outside of surf + nearDistance -1; // cells with centre near surf + // (set to -1 if not used) + curvature -100; // cells within nearDistance + // and near surf curvature + // (set to -100 if not used) + + fieldValues + ( + volScalarFieldValue porosityIndex 1 + ); + } +); diff --git a/olaflow/of/system/snappyHexMeshDict b/olaflow/of/system/snappyHexMeshDict new file mode 100644 index 0000000..489169b --- /dev/null +++ b/olaflow/of/system/snappyHexMeshDict @@ -0,0 +1,359 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.7.1 | +| \\ / A nd | Web: www.OpenFOAM.com | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object snappyHexMeshDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +// Which of the steps to run +castellatedMesh true; +snap false; +addLayers false; + + +// Geometry. Definition of all surfaces. All surfaces are of class +// searchableSurface. +// Surfaces are used +// - to specify refinement for any mesh cell intersecting it +// - to specify refinement for any mesh cell inside/outside/near +// - to 'snap' the mesh boundary to the surface +geometry +{ + + bloc0.stl + { + type triSurfaceMesh; + name bloc0; + } + bloc1.stl + { + type triSurfaceMesh; + name bloc1; + } + + bathy.stl + { + type triSurfaceMesh; + name bathy; + } + +}; + + + +// Settings for the castellatedMesh generation. +castellatedMeshControls +{ + + // Refinement parameters + // ~~~~~~~~~~~~~~~~~~~~~ + + // If local number of cells is >= maxLocalCells on any processor + // switches from from refinement followed by balancing + // (current method) to (weighted) balancing before refinement. + maxLocalCells 10000000; + + // Overall cell limit (approximately). Refinement will stop immediately + // upon reaching this number so a refinement level might not complete. + // Note that this is the number of cells before removing the part which + // is not 'visible' from the keepPoint. The final number of cells might + // actually be a lot less. + maxGlobalCells 10000000; + + // The surface refinement loop might spend lots of iterations refining just a + // few cells. This setting will cause refinement to stop if <= minimumRefine + // are selected for refinement. Note: it will at least do one iteration + // (unless the number of cells to refine is 0) + minRefinementCells 10; + + // Allow a certain level of imbalance during refining + // (since balancing is quite expensive) + // Expressed as fraction of perfect balance (= overall number of cells / + // nProcs). 0=balance always. + maxLoadUnbalance 0.10; + + + // Number of buffer layers between different levels. + // 1 means normal 2:1 refinement restriction, larger means slower + // refinement. + nCellsBetweenLevels 3; + + + + // Explicit feature edge refinement + // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + // Specifies a level for any cell intersected by its edges. + // This is a featureEdgeMesh, read from constant/triSurface for now. + features + ( + //{ + // file "tanque.stl"; + // level 2; + //} + ); + + + + // Surface based refinement + // ~~~~~~~~~~~~~~~~~~~~~~~~ + + // Specifies two levels for every surface. The first is the minimum level, + // every cell intersecting a surface gets refined up to the minimum level. + // The second level is the maximum level. Cells that 'see' multiple + // intersections where the intersections make an + // angle > resolveFeatureAngle get refined up to the maximum level. + + refinementSurfaces + { + + //caisson + //{ + // // Surface-wise min and max refinement level + // level ( 1 1 ); + //} + bathy + { + level ( 0 0 ); + } + bloc0 + { + level ( 0 0 ); + } + bloc1 + { + level ( 0 0 ); + } + + } + + // Resolve sharp angles + resolveFeatureAngle 65; + + + // Region-wise refinement + // ~~~~~~~~~~~~~~~~~~~~~~ + + // Specifies refinement level for cells in relation to a surface. One of + // three modes + // - distance. 'levels' specifies per distance to the surface the + // wanted refinement level. The distances need to be specified in + // descending order. + // - inside. 'levels' is only one entry and only the level is used. All + // cells inside the surface get refined up to the level. The surface + // needs to be closed for this to be possible. + // - outside. Same but cells outside. + + refinementRegions + { + //mode distance; + //levels + //( + // (1.0 4) + // (2.0 3) + //); + } + + + // Mesh selection + // ~~~~~~~~~~~~~~ + + // After refinement patches get added for all refinementSurfaces and + // all cells intersecting the surfaces get put into these patches. The + // section reachable from the locationInMesh is kept. + // NOTE: This point should never be on a face, always inside a cell, even + // after refinement. + locationInMesh (0.25 0.01 0.25); + + // Whether any faceZones (as specified in the refinementSurfaces) + // are only on the boundary of corresponding cellZones or also allow + // free-standing zone faces. Not used if there are no faceZones. + allowFreeStandingZoneFaces true; +} + + + +// Settings for the snapping. +snapControls +{ + //- Number of patch smoothing iterations before finding correspondence + // to surface + nSmoothPatch 3; + + //- Relative distance for points to be attracted by surface feature point + // or edge. True distance is this factor times local + // maximum edge length. + tolerance 4.0; + + //- Number of mesh displacement relaxation iterations. + nSolveIter 30; + + //- Maximum number of snapping relaxation iterations. Should stop + // before upon reaching a correct mesh. + nRelaxIter 5; +} + + + +// Settings for the layer addition. +addLayersControls +{ + // Are the thickness parameters below relative to the undistorted + // size of the refined cell outside layer (true) or absolute sizes (false). + relativeSizes true; + + // Per final patch (so not geometry!) the layer information + layers + { + //batimetria_patch0 + //{ + // nSurfaceLayers 2; //was 1 //was 4 + //} + } + + // Expansion factor for layer mesh + expansionRatio 1.0; + + //- Wanted thickness of final added cell layer. If multiple layers + // is the thickness of the layer furthest away from the wall. + // See relativeSizes parameter. + finalLayerThickness 0.3; + + //- Minimum thickness of cell layer. If for any reason layer + // cannot be above minThickness do not add layer. + // Relative to undistorted size of cell outside layer. + minThickness 0.1; + + //- If points get not extruded do nGrow layers of connected faces that are + // also not grown. This helps convergence of the layer addition process + // close to features. + nGrow 1; + + + // Advanced settings + + //- When not to extrude surface. 0 is flat surface, 90 is when two faces + // make straight angle. + featureAngle 30; + + //- Maximum number of snapping relaxation iterations. Should stop + // before upon reaching a correct mesh. + nRelaxIter 3; + + // Number of smoothing iterations of surface normals + nSmoothSurfaceNormals 1; + + // Number of smoothing iterations of interior mesh movement direction + nSmoothNormals 3; + + // Smooth layer thickness over surface patches + nSmoothThickness 10; + + // Stop layer growth on highly warped cells + maxFaceThicknessRatio 0.5; + + // Reduce layer growth where ratio thickness to medial + // distance is large + maxThicknessToMedialRatio 0.3; + + // Angle used to pick up medial axis points + minMedianAxisAngle 130; + + // Create buffer region for new layer terminations + nBufferCellsNoExtrude 0; + + // Overall max number of layer addition iterations + nLayerIter 50; +} + + + +// Generic mesh quality settings. At any undoable phase these determine +// where to undo. +meshQualityControls +{ + //- Maximum non-orthogonality allowed. Set to 180 to disable. + maxNonOrtho 65; + + //- Max skewness allowed. Set to <0 to disable. + maxBoundarySkewness 20; + maxInternalSkewness 4; + + //- Max concaveness allowed. Is angle (in degrees) below which concavity + // is allowed. 0 is straight face, <0 would be convex face. + // Set to 180 to disable. + maxConcave 80; + + //- Minimum projected area v.s. actual area. Set to -1 to disable. + minFlatness 0.5; + + //- Minimum pyramid volume. Is absolute volume of cell pyramid. + // Set to a sensible fraction of the smallest cell volume expected. + // Set to very negative number (e.g. -1E30) to disable. + minVol 1e-13; + + //- Minimum quality of the tet formed by the face-centre + // and variable base point minimum decomposition triangles and + // the cell centre. This has to be a positive number for tracking + // to work. Set to very negative number (e.g. -1E30) to + // disable. + // <0 = inside out tet, + // 0 = flat tet + // 1 = regular tet + minTetQuality 1e-30; + + //- Minimum face area. Set to <0 to disable. + minArea -1; + + //- Minimum face twist. Set to <-1 to disable. dot product of face normal + //- and face centre triangles normal + minTwist 0.02; + + //- minimum normalised cell determinant + //- 1 = hex, <= 0 = folded or flattened illegal cell + minDeterminant 0.001; + + //- minFaceWeight (0 -> 0.5) + minFaceWeight 0.02; + + //- minVolRatio (0 -> 1) + minVolRatio 0.01; + + //must be >0 for Fluent compatibility + minTriangleTwist -1; + + + // Advanced + + //- Number of error distribution iterations + nSmoothScale 4; + //- amount to scale back displacement at error points + errorReduction 0.75; +} + + +// Advanced + +// Flags for optional output +// 0 : only write final meshes +// 1 : write intermediate meshes +// 2 : write volScalarField with cellLevel for postprocessing +// 4 : write current intersections as .obj files +debug 0; + + +// Merge tolerance. Is fraction of overall bounding box of initial mesh. +// Note: the write tolerance needs to be higher than this. +mergeTolerance 1E-6; + + +// ************************************************************************* //