|
[Sponsors] | |||||
|
|
|
#1 |
|
Member
Join Date: Feb 2020
Posts: 79
Rep Power: 7 ![]() |
Hi,
I am trying to calculate a fan that I already know the performance. To do that, I use simpleFoam in Openfoam 2006. The computation seems to converge but the results diverge from the expected performance ??? controlDict Code:
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "system";
object controlDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
saveIter 50;
application simpleFoam;
startFrom startTime;
//startFrom latestTime;
startTime 0;
stopAt endTime;
endTime 500;
deltaT 1;
writeControl timeStep;
writeInterval $saveIter;
purgeWrite 0;
writeFormat ascii;
writePrecision 7;
writeCompression off;
timeFormat general;
timePrecision 6;
runTimeModifiable true;
functions
{
forcesBlades
{
type forces;
libs (forces);
log yes;
patches (fan);
rho rhoInf; // Indicates incompressible
log true;
rhoInf 0.607; // Redundant for incompressible
CofR (0 0 0); // Rotation around centre line of propeller
pitchAxis (1 0 0);
}
yPlusPump
{
type yPlus;
libs ("libfieldFunctionObjects.so");
writeControl timeStep;
writeInterval $saveIter;
patches ("fan wallinlet body");
}
}
// ************************************************************************* //
fvSolution Code:
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object fvSolution;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
SIMPLE
{
// Non-orthogonal correctors for robustness on tet meshes. Porous baffles require a
// higher number of corrections.
nNonOrthogonalCorrectors 5;
consistent no; // Setting this impairs stability of porous baffles
residualControl
{
p 0.0001;
U 0.0001;
"(k|epsilon|omega|f|v2|nuTilda)" 0.0001;
}
pRefValue 0;
pRefCell 0;
}
potentialFlow
{
nNonOrthogonalCorrectors 8;
PhiRefValue 0;
PhiRefCell 0;
}
solvers
{
"(p|p_rgh|pcorr)"
{
solver GAMG;
tolerance 1e-8;
relTol 0.01;
smoother symGaussSeidel;
nPreSweeps 0;
nPostSweeps 2;
cacheAgglomeration on;
agglomerator faceAreaPair;
nCellsInCoarsestLevel 10;
mergeLevels 1;
maxIter 20;
}
"(pFinal|p_rghFinal|pcorrFinal)"
{
$p;
relTol 0;
}
U
{
solver smoothSolver;
smoother symGaussSeidel;
tolerance 1e-8;
relTol 0.1;
nSweeps 1;
}
UFinal
{
$U;
relTol 0;
}
"(k|omega|nuTilda)"
{
solver smoothSolver;
smoother GaussSeidel;
tolerance 1e-8;
relTol 0.1;
nSweeps 1;
minIter 1;
}
"(k|omega|nuTilda)Final"
{
$k;
relTol 0;
}
Phi
{
solver GAMG;
tolerance 1e-7;
relTol 0.01;
smoother GaussSeidel;
nPreSweeps 0;
nPostSweeps 2;
cacheAgglomeration on;
agglomerator faceAreaPair;
nCellsInCoarsestLevel 10;
mergeLevels 1;
}
}
relaxationFactors
{
// Conservative settings to solve reliably on bad
// meshes
equations
{
U 0.6;
k 0.5;
omega 0.5;
}
fields
{
p 0.3;
}
}
cache
{
grad(U);
}
// ************************************************************************* //
fvScheme Code:
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object fvSchemes;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
ddtSchemes
{
default steadyState;
}
divSchemes
{
default none;
// Use second-order accurate convection
// Bounded schemes for steady-state solution
div(phi,U) bounded Gauss linearUpwindV grad(U);
div((nuEff*dev2(T(grad(U))))) Gauss linear;
div(div(phi,U)) Gauss linear;
div(phi,k) bounded Gauss upwind;
div(phi,omega) bounded Gauss upwind;
}
gradSchemes
{
// Limit gradient to improve stability when bad cells encountered
// (0 = no limiting; 1 = do not exceed surrounding cells)
default cellLimited Gauss linear 0.95;
grad(p) Gauss linear;
grad(p_rgh) Gauss linear;
grad(k) cellLimited Gauss linear 0.9;
grad(omega) cellLimited Gauss linear 0.9;
}
laplacianSchemes
{
// Limited explicit correction to the surface normal gradient,
// for stability in highly non-orthogonal cells.
// (0 = uncorrected, fully implicit; 1 = full correction)
default Gauss linear limited 0.3;
laplacian(DomegaEff,omega) Gauss linear limited 0.3
laplacian(DkEff,k) Gauss linear limited 0.3;
}
interpolationSchemes
{
default linear;
}
snGradSchemes
{
// Limited explicit correction to the surface normal gradient,
// for stability in highly non-orthogonal cells.
// (0 = uncorrected, fully implicit; 1 = full correction)
default limited 0.3;
}
wallDist
{
method meshWave;
}
// ************************************************************************* //
The pressure increase to much but the absorbed power decrease. That make no sense to me. Thank you. Best regards, |
|
|
|
|
|
|
|
|
#2 |
|
Member
Join Date: Feb 2020
Posts: 79
Rep Power: 7 ![]() |
I forgot to precise that the BC are mass flow rate at inlet and fixed static pressure at outlet.
k-SST omega for the turbulence. |
|
|
|
|
|
![]() |
| Thread Tools | Search this Thread |
| Display Modes | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| simpleFoam tutorial PitzDaily using Reynolds stress tensor (LRR RASModel) | dlahaye | OpenFOAM Running, Solving & CFD | 24 | August 4, 2023 15:29 |
| SimpleFOAM results way off from measurements and analytical calculation | Deagle | OpenFOAM Running, Solving & CFD | 1 | December 14, 2016 04:07 |
| Determining the calculation sequence of the regions in multe regions calculation | peterhess | OpenFOAM Running, Solving & CFD | 4 | March 9, 2016 04:07 |
| simpleFoam parallel solver & Fluent polyhedral mesh | Zlatko | OpenFOAM Running, Solving & CFD | 3 | September 26, 2014 07:53 |
| Fan efficiency Calculation | sivakumar | OpenFOAM Post-Processing | 3 | March 28, 2014 06:29 |