ENH: New atmospheric boundary layer (ABL) model suite (Part 1)

Please refer to the header file documentation for complete set of details.

  ENH: add new fvOptions for ABL modelling

    - atmAmbientTurbSource
    - atmBuoyancyTurbSource
    - atmCoriolisUSource
    - atmLengthScaleTurbSource
    - atmPlantCanopyTurbSource
    - atmPlantCanopyUSource
    - atmPlantCanopyTSource
    - atmNutSource

  ENH: add new boundary conditions for ABL modelling
       with PatchFunction1 and TimeFunction1 support

    - atmAlphatkWallFunction
    - atmEpsilonWallFunction
    - atmNutkWallFunction
    - atmNutUWallFunction
    - atmNutWallFunction
    - atmOmegaWallFunction
    - atmTurbulentHeatFluxTemperature

  STYLE: change names of nutkAtmRoughWallFunction -> atmNutkWallFunction by
         ensuring the bitwise backward compatibility

  ENH: add new variable-scaling force computation method to actuationDiskSource

  ENH: review actuationDiskSource and radialActuationDiskSource

  ENH: add new function object, ObukhovLength

  ENH: add new ABL tutorials/verifications

    - verificationAndValidation/atmosphericModels/atmFlatTerrain
      - verification with the Leipzig field experiment
      - illustration of precursor/successor field mapping
    - verificationAndValidation/atmosphericModels/atmForestStability
      - verification with the Sweden field experiment
    - update incompressible/simpleFoam/turbineSiting
This commit is contained in:
Kutalmis Bercin
2020-05-05 14:20:45 +01:00
committed by Andrew Heather
parent 70cd6c6176
commit 41e264f27d
386 changed files with 53513 additions and 349 deletions

View File

@ -6,7 +6,7 @@
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
flowVelocity (0 0 0);
flowVelocity (10 0 0);
pressure 0;
turbulentKE 1.3;
turbulentEpsilon 0.01;

View File

@ -36,7 +36,8 @@ boundaryField
terrain
{
type nutkAtmRoughWallFunction;
type atmNutkWallFunction;
boundNut false;
z0 $z0;
value uniform 0.0;
}

View File

@ -18,31 +18,50 @@ FoamFile
disk1
{
type actuationDiskSource;
fields (U);
variant Froude; // variableScaling;
selectionMode cellSet;
cellSet actuationDisk1;
diskDir (1 0 0); // Orientation of the disk
diskArea 40;
diskDir (1 0 0);
writeToFile true;
sink true;
Cp 0.386;
Ct 0.58;
diskArea 40;
upstreamPoint (581849 4785810 1065);
monitorMethod points;
monitorCoeffs
{
points
(
(581849 4785810 1065)
);
}
}
disk2
{
type actuationDiskSource;
fields (U);
variant Froude; // variableScaling;
selectionMode cellSet;
cellSet actuationDisk2;
diskDir (1 0 0); // Orientation of the disk
writeToFile true;
sink true;
Cp 0.53;
Ct 0.58;
diskArea 40;
upstreamPoint (581753 4785663 1070);
diskDir (1 0 0);
monitorMethod points;
monitorCoeffs
{
points
(
(581753 4785663 1070)
);
}
}