diff --git a/validationCases/03_freeConvection/Allrun b/validationCases/03_freeConvection/Allrun index d1f8168..69a8fa6 100755 --- a/validationCases/03_freeConvection/Allrun +++ b/validationCases/03_freeConvection/Allrun @@ -23,10 +23,10 @@ done #-- Run on single processor -runApplication `getApplication` +#runApplication `getApplication` # Decompose -#runApplication decomposePar -allRegions +runApplication decomposePar -allRegions # Run #runParallel `getApplication` @@ -35,9 +35,9 @@ runApplication `getApplication` #runApplication reconstructPar -allRegions -echo -echo "creating files for paraview post-processing" -echo -paraFoam -touchAll +#echo +#echo "creating files for paraview post-processing" +#echo +#paraFoam -touchAll #------------------------------------------------------------------------------ diff --git a/validationCases/03_freeConvection/system/blockMeshDict b/validationCases/03_freeConvection/system/blockMeshDict index aa49d82..1192f3f 100644 --- a/validationCases/03_freeConvection/system/blockMeshDict +++ b/validationCases/03_freeConvection/system/blockMeshDict @@ -39,7 +39,7 @@ vertices blocks ( - hex (0 1 2 3 4 5 6 7) (72 210 1) simpleGrading (1 1 1) + hex (0 1 2 3 4 5 6 7) (200 105 1) simpleGrading (1 1 1) ); edges diff --git a/validationCases/03_freeConvection/system/bottomAir/fvSchemes b/validationCases/03_freeConvection/system/bottomAir/fvSchemes index 35665e0..eb73848 100644 --- a/validationCases/03_freeConvection/system/bottomAir/fvSchemes +++ b/validationCases/03_freeConvection/system/bottomAir/fvSchemes @@ -16,7 +16,7 @@ FoamFile ddtSchemes { - default Euler; + default Euler; //backward; } gradSchemes @@ -26,15 +26,14 @@ gradSchemes divSchemes { - default none; - - div(phi,U) Gauss upwind; - div(phi,K) Gauss linear; - div(phi,h) Gauss upwind; - div(phi,k) Gauss upwind; - div(phi,epsilon) Gauss upwind; - div(phi,R) Gauss upwind; - div(R) Gauss linear; + default none; + div(phi,U) Gauss linear; // limitedLinear 1; + div(phi,K) Gauss linear; //limitedLinear 1; + div(phi,h) Gauss linear; //limitedLinear 1; + div(phi,k) Gauss linear; //limitedLinear 1; + div(phi,epsilon) Gauss linear; //limitedLinear 1; + div(phi,R) Gauss linear; //limitedLinear 1; + div(R) Gauss linear; //limitedLinear 1; div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear; } diff --git a/validationCases/03_freeConvection/system/bottomAir/fvSolution b/validationCases/03_freeConvection/system/bottomAir/fvSolution index 2e7f73d..8f0c43a 100644 --- a/validationCases/03_freeConvection/system/bottomAir/fvSolution +++ b/validationCases/03_freeConvection/system/bottomAir/fvSolution @@ -33,8 +33,8 @@ solvers p_rgh { - solver GAMG; - //nCellsInCoarsestLevel 120; + solver PCG; + preconditioner DIC; tolerance 1e-9; relTol 0.01; @@ -68,7 +68,7 @@ solvers PIMPLE { momentumPredictor yes; - nCorrectors 10; + nCorrectors 5; nNonOrthogonalCorrectors 0; } diff --git a/validationCases/03_freeConvection/system/controlDict b/validationCases/03_freeConvection/system/controlDict index 46a81dc..4b50688 100644 --- a/validationCases/03_freeConvection/system/controlDict +++ b/validationCases/03_freeConvection/system/controlDict @@ -23,13 +23,13 @@ startTime 0; stopAt endTime; -endTime 3500; +endTime 15000; -deltaT 0.001; +deltaT 0.0005; writeControl adjustableRunTime; -writeInterval 10; +writeInterval 100; purgeWrite 0; @@ -41,9 +41,9 @@ writeCompression off; timeFormat general; -timePrecision 6; +timePrecision 8; -runTimeModifiable no; +runTimeModifiable yes; maxCo 0.6; @@ -52,8 +52,180 @@ maxDi 10.0; adjustTimeStep no; +cycleInterval 1.0; +subCycleTime 0.1; +solidDeltaT 0.1; + functions { + #includeFunc solidTopAirT + #includeFunc solidBottomAirT + + solidProbeCentroid + { + type probes; + functionObjectLibs ("libsampling.so"); + writeControl writeTime; + region solid; + probeLocations + ( + ( 0.1 0.0525 0.0005) + ); + fields + ( + T + ); + } + solidProbeXL97.5 + { + type probes; + functionObjectLibs ("libsampling.so"); + writeControl writeTime; + region solid; + probeLocations + ( + ( 0.195 0.0525 0.0005) + ); + fields + ( + T + ); + } + patchProbeSolidToTopAirXL97.5 + { + type patchProbes; + functionObjectLibs ("libfieldFunctionObjects.so"); + writeControl writeTime; + region solid; + patchName solid_to_topAir; + probeLocations + ( + ( 0.195 0.055 0.0005) + ); + + fields + ( + T + ); + } + patchProbeSolidToBottomAirXL97.5 + { + type patchProbes; + functionObjectLibs ("libfieldFunctionObjects.so"); + writeControl writeTime; + region solid; + patchName solid_to_bottomAir; + probeLocations + ( + ( 0.195 0.05 0.0005) + ); + fields + ( + T + ); + } + // Instantaneous wall heat flux + whfSolidTopAir + { + type wallHeatFlux; + libs ( "libfieldFunctionObjects.so" ); + region solid; + writeControl writeTime; + patches ( solid_to_topAir); + } + + whfSolidBottomAir + { + type wallHeatFlux; + libs ( "libfieldFunctionObjects.so" ); + region solid; + writeControl writeTime; + patches ( solid_to_bottomAir); + } + solidPatchProbeBottomAirWallHeatFlux + { + type patchProbes; + functionObjectLibs ("libfieldFunctionObjects.so"); + writeControl writeTime; + region solid; + patchName solid_to_bottomAir; + + probeLocations + ( + (0.1965 0.05 0.0005) + ); + fields + ( + wallHeatFlux + ); + } + solidPatchProbeTopAirWallHeatFlux + { + type patchProbes; + functionObjectLibs ("libfieldFunctionObjects.so"); + writeControl writeTime; + region solid; + patchName solid_to_topAir; + + probeLocations + ( + (0.1965 0.055 0.0005) + ); + fields + ( + wallHeatFlux + ); + } + // + whftSolidTopAir + { + type wallHeatFluxT; + libs ( "libmyfieldFunctionObjects.so" ); + region solid; + writeControl writeTime; + patches ( solid_to_topAir); + } + whftSolidBottomAir + { + type wallHeatFluxT; + libs ( "libfieldFunctionObjects.so" ); + region solid; + writeControl writeTime; + patches ( solid_to_bottomAir); + } + solidPatchProbeBottomAirWallHeatFluxT + { + type patchProbes; + functionObjectLibs ("libfieldFunctionObjects.so"); + region solid; + patchName solid_to_bottomAir; + + probeLocations + ( + (0.1965 0.05 0.0005) + ); + fields + ( + wallHeatFluxT + ); + } + solidPatchProbeTopAirWallHeatFluxT + { + type patchProbes; + functionObjectLibs ("libfieldFunctionObjects.so"); + region solid; + patchName solid_to_topAir; + + probeLocations + ( + (0.1965 0.055 0.0005) + ); + fields + ( + wallHeatFluxT + ); + } + } // ************************************************************************* // diff --git a/validationCases/03_freeConvection/system/solid/fvSchemes b/validationCases/03_freeConvection/system/solid/fvSchemes index e5250d7..398b144 100644 --- a/validationCases/03_freeConvection/system/solid/fvSchemes +++ b/validationCases/03_freeConvection/system/solid/fvSchemes @@ -16,7 +16,7 @@ FoamFile ddtSchemes { - default Euler; + default Euler; } gradSchemes diff --git a/validationCases/03_freeConvection/system/solidBottomAirT b/validationCases/03_freeConvection/system/solidBottomAirT new file mode 100644 index 0000000..077a21d --- /dev/null +++ b/validationCases/03_freeConvection/system/solidBottomAirT @@ -0,0 +1,33 @@ +/*--------------------------------*- C++ -*----------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | Web: www.OpenFOAM.org + \\/ M anipulation | +------------------------------------------------------------------------------- +Description + Writes graph data for specified fields along a line, specified by start + and end points. + +\*---------------------------------------------------------------------------*/ + +start ( 0.0 0.05 0.0005 ); +end ( 0.2 0.05 0.0005 ); +fields ( T ); +region solid; +writeControl writeTime; + +// Sampling and I/O settings +#includeEtc "caseDicts/postProcessing/graphs/sampleDict.cfg" + +// Override settings here, e.g. +setConfig +{ + type midPoint; //face; + axis x; +} + +// Must be last entry +#includeEtc "caseDicts/postProcessing/graphs/graph.cfg" + +// ************************************************************************* // diff --git a/validationCases/03_freeConvection/system/solidTopAirT b/validationCases/03_freeConvection/system/solidTopAirT new file mode 100644 index 0000000..d5c0efd --- /dev/null +++ b/validationCases/03_freeConvection/system/solidTopAirT @@ -0,0 +1,33 @@ +/*--------------------------------*- C++ -*----------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | Web: www.OpenFOAM.org + \\/ M anipulation | +------------------------------------------------------------------------------- +Description + Writes graph data for specified fields along a line, specified by start + and end points. + +\*---------------------------------------------------------------------------*/ + +start ( 0.0 0.055 0.0005 ); +end ( 0.2 0.055 0.0005 ); +fields ( T ); +region solid; +writeControl writeTime; + +// Sampling and I/O settings +#includeEtc "caseDicts/postProcessing/graphs/sampleDict.cfg" + +// Override settings here, e.g. +setConfig +{ + type midPointAndFace; + axis x; +} + +// Must be last entry +#includeEtc "caseDicts/postProcessing/graphs/graph.cfg" + +// ************************************************************************* // diff --git a/validationCases/03_freeConvection/system/topAir/fvSchemes b/validationCases/03_freeConvection/system/topAir/fvSchemes index 35665e0..eb73848 100644 --- a/validationCases/03_freeConvection/system/topAir/fvSchemes +++ b/validationCases/03_freeConvection/system/topAir/fvSchemes @@ -16,7 +16,7 @@ FoamFile ddtSchemes { - default Euler; + default Euler; //backward; } gradSchemes @@ -26,15 +26,14 @@ gradSchemes divSchemes { - default none; - - div(phi,U) Gauss upwind; - div(phi,K) Gauss linear; - div(phi,h) Gauss upwind; - div(phi,k) Gauss upwind; - div(phi,epsilon) Gauss upwind; - div(phi,R) Gauss upwind; - div(R) Gauss linear; + default none; + div(phi,U) Gauss linear; // limitedLinear 1; + div(phi,K) Gauss linear; //limitedLinear 1; + div(phi,h) Gauss linear; //limitedLinear 1; + div(phi,k) Gauss linear; //limitedLinear 1; + div(phi,epsilon) Gauss linear; //limitedLinear 1; + div(phi,R) Gauss linear; //limitedLinear 1; + div(R) Gauss linear; //limitedLinear 1; div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear; } diff --git a/validationCases/03_freeConvection/system/topAir/fvSolution b/validationCases/03_freeConvection/system/topAir/fvSolution index 00a9878..8f0c43a 100644 --- a/validationCases/03_freeConvection/system/topAir/fvSolution +++ b/validationCases/03_freeConvection/system/topAir/fvSolution @@ -33,7 +33,8 @@ solvers p_rgh { - solver GAMG; + solver PCG; + preconditioner DIC; tolerance 1e-9; relTol 0.01;