|
[Sponsors] |
Simulation of pressure line discharge in a turbulent model |
![]() |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
![]() |
![]() |
#1 |
New Member
Martin Felipe Ramirez Muņoz
Join Date: Jun 2020
Posts: 1
Rep Power: 0 ![]() |
Hi all,
I thank you for entering this publication. The context of my concern is as follows, I want to simulate the discharge of a pressure pipe on a hydraulic structure and observe the interaction that occurs with a pipe at the outlet for open flow conditions, initially create a mesh of the structure and pipe in conjunction with an elbow as accessory for the discharge at the entrance, in the SALOME 9.3 software, creating the mesh of the faces of 'wall-elbow', 'Atmosphere', 'wall-solid', 'Inlet' and 'Outlet' In geometry, two objects were merged, which were an inspection box with their respective pipes and an elbow. The mesh was imported into OpenFOAM through the ideasUnvToFoam intermediary which allows to bring the unv file to a representation of 'polyMesh'. For which the 'boundary' file is built, which contains 6 faces, taking the output and input of the elbow as 'defaultFaces', which are modified with an 'empty' value so that they do not have an interaction within the simulation. Code:
FoamFile { version 2.0; format ascii; class polyBoundaryMesh; location "constant/polyMesh"; object boundary; } 6 ( wall-elbow { type wall; nFaces 290; startFace 581153; } Atmosphere { type patch; nFaces 290; startFace 581153; } wall-solid { type wall; nFaces 290; startFace 581153; } Inlet { type patch; nFaces 290; startFace 581153; } Outlet { type patch; nFaces 290; startFace 581153; } defaultFaces { type empty; nFaces 290; startFace 581153; } ) Code:
FoamFile { version 2.0; format ascii; class dictionary; location "system"; object setFieldsDict; } defaultFieldValues ( volScalarFieldValue alpha.water 0 ); regions ( cylinderToCell { p1 (0.40 -1 0.40); // center of first circle p2 (0.40 0 0.40); // center of second circle radius 0.04021; // radius of cylinder fieldValues ( volScalarFieldValue alpha.water 1 ); } ); Code:
FoamFile { version 2.0; format ascii; class dictionary; location "system"; object setFieldsDict; } solvers { "alpha.water.*" { nAlphaCorr 1; nAlphaSubCycles 1; cAlpha 1; MULESCorr yes; nLimiterIter 3; solver smoothSolver; smoother symGaussSeidel; tolerance 1e-8; relTol 0; } pcorrFinal { solver PCG; preconditioner { preconditioner GAMG; tolerance 1e-5; relTol 0; smoother GaussSeidel; nPreSweeps 0; nPostSweeps 2; nFinestSweeps 2; cacheAgglomeration true; nCellsInCoarsestLevel 10; agglomerator faceAreaPair; mergeLevels 1; } tolerance 1e-5; relTol 0; maxIter 50; } p_rgh { solver GAMG; tolerance 5e-9; relTol 0.01; smoother GaussSeidel; nPreSweeps 0; nPostSweeps 2; cacheAgglomeration true; nCellsInCoarsestLevel 10; agglomerator faceAreaPair; mergeLevels 1; maxIter 50; }; p_rghFinal { $p_rgh; tolerance 5e-9; relTol 0; } "(U|k|omega).*" { solver smoothSolver; smoother symGaussSeidel; nSeewps 1; tolerance 1e-6; relTol 0.1; }; } PIMPLE { momentumPredictor no; nCorrectors 2; nNonOrthogonalCorrectors 0; } relaxationFactors { equations { ".*" 1; } } Code:
FoamFile { version 2.0; format ascii; class volScalarField; location "0"; object alpha.water; } dimensions [0 0 0 0 0 0 0] internalField uniform 0; boundaryField { Inlet { type fixedValue; value uniform 1; } wall-solid { type zeroGradient; } wall-elbow { type zeroGradient; } Outlet { type zeroGradient; value uniform 0; } Atmosphere { type inletOutlet; inletValue uniform 0; value uniform 0; } } Code:
FoamFile { version 2.0; format ascii; class volVectorField; object U; } dimensions [0 1 -1 0 0 0 0]; internalField uniform (0 2.29 0); boundaryField { Inlet { type flowRateInletVelocity; volumetricFlowRate constant 0.20; } wall-solid { type fixedValue; value uniform (0 0 0); } Atmosphere { type pressureInletOutletVelocity; value uniform (0 0 0); } Outlet { type inletOutlet; inletValue uniform (0 0 0); value $internalField; } wall-elbow { type fixedValue; value uniform (0 0 0); } } Code:
FoamFile { version 2.0; format ascii; class volScalarField; object p_rgh; } dimensions [1 -1 -2 0 0 0 0]; internalField uniform 78451.04; boundaryField { Atmosphere { type totalPressure; p0 uniform 101325; U U; phi phi; rho rho; psi none; gamma 1; value uniform 101325; } Outlet { type zeroGradient; } Inlet { type fixedFluxPressure; value uniform 78451.04; } ".*" { type fixedFluxPressure; value uniform 101325; } } Code:
FoamFile { version 2.0; format ascii; class volScalarField; object k; } dimensions [0 2 -2 0 0 0 0]; internalField uniform 0.00969; boundaryField { Inlet { type fixedValue; intensity 0.0351; value $internalField; } wall-solid { type kqRWallFunction; value $internalField; } wall-elbow { type kqRWallFunction; value $internalField; } ".*" { type inletOutlet; inletValue $internalField; value $internalField ; } } Code:
FoamFile { version 2.0; format ascii; class volScalarField; object omega; } dimensions [0 0 -1 0 0 0 0]; internalField uniform 32.22; boundaryField { Inlet { type fixedValue; value $internalField; } wall-solid { type omegaWallFunction; value $internalField; } wall-elbow { type omegaWallFunction; value $internalField; } ".*" { type inletOutlet; inletValue $internalField; value $internalField; } } Code:
{ version 2.0; format ascii; class volScalarField; location "0"; object nut; } dimensions [0 2 -1 0 0 0 0]; internalField uniform 0; boundaryField { wall-solid { type nutkWallFunction; value uniform 0; } wall-elbow { type nutkWallFunction; value uniform 0; } ".*" { type calculated; value uniform 0; } } Code:
FoamFile { version 2.0; format ascii; class dictionary; location "constant"; object turbulenceProperties; } simulationType RAS; RAS { RASModel kOmegaSST; turbulence on; printCoeffs on; } Code:
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; Code:
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); Code:
FoamFile { version 2.0; format ascii; class dictionary; location "system"; object controlDict; } application interFoam; startFrom startTime; startTime 0; stopAt endTime; endTime 10; deltaT 0.0000001; writeControl adjustableRunTime; writeInterval 0.05; purgeWrite 0; writeFormat ascii; writePrecision 6; writeCompression compressed; timeFormat general; timePrecision 6; runTimeModifiable yes; adjustTimeStep yes; maxCo 6; maxAlphaCo 6; maxDeltaT 1; functions { inletFlux { type faceSource; functionObjectLibs ("libfieldFunctionObjects.so"); outputControl timeStep; log true; // Output field values as well valueOutput false; source patch; sourceName Inlet; operation sum; fields ( rhoPhi ); } OutletFlux { $inletFlux; sourceName Outlet; } AtmosphereFlux { $inletFlux; sourceName Atmosphere; } } Code:
Courant Number mean: 0.00202408 max: 0.0216337 Interface Courant Number mean: 0 max: 0 deltaT = 7.19942e-06 Time = 7.19942e-06 smoothSolver: Solving for alpha.water, Initial residual = 1.79803e-06, Final residual = 4.27735e-12, No Iterations 1 Phase-1 volume fraction = 0.00838449 Min(alpha.water) = 0 Max(alpha.water) = 1 MULES: Correcting alpha.water Phase-1 volume fraction = 0.00838449 Min(alpha.water) = -1.61933e-13 Max(alpha.water) = 1 GAMG: Solving for p_rgh, Initial residual = 1, Final residual = 1.24433e+37, No Iterations 50 time step continuity errors : sum local = 1.71056e+34, global = -5.28206e+32, cumulative = -5.28206e+32 GAMG: Solving for p_rgh, Initial residual = 1, Final residual = 4.3059e-09, No Iterations 19 time step continuity errors : sum local = 1.42133e+59, global = 7.45096e+58, cumulative = 7.45096e+58 smoothSolver: Solving for omega, Initial residual = 0.811838, Final residual = 0.0685701, No Iterations 7 smoothSolver: Solving for k, Initial residual = 0.999997, Final residual = 0.0973059, No Iterations 40 bounding k, min: 8.78028e-62 max: 0.0785186 average: 0.00967384 ExecutionTime = 12.45 s ClockTime = 14 s Courant Number mean: 1.10307e+67 max: 2.31367e+69 Interface Courant Number mean: 0 max: 0 deltaT = 1.86701e-74 Time = 7.19942e-06 smoothSolver: Solving for alpha.water, Initial residual = 1.2844e-08, Final residual = 2.55005e-13, No Iterations 1 Phase-1 volume fraction = 0.00838449 Min(alpha.water) = -7.91099e-14 Max(alpha.water) = 1 MULES: Correcting alpha.water Phase-1 volume fraction = 0.00838449 Min(alpha.water) = -2.03375e-12 Max(alpha.water) = 1 GAMG: Solving for p_rgh, Initial residual = 1, Final residual = 0.00547086, No Iterations 5 time step continuity errors : sum local = 2.88229e-05, global = -1.51418e-06, cumulative = 7.45096e+58 GAMG: Solving for p_rgh, Initial residual = 0.310287, Final residual = 4.13946e-09, No Iterations 37 time step continuity errors : sum local = 4.48349e-11, global = 4.75626e-12, cumulative = 7.45096e+58 smoothSolver: Solving for omega, Initial residual = 0.00265864, Final residual = 3.78146e-05, No Iterations 1 smoothSolver: Solving for k, Initial residual = 2.73075e-06, Final residual = 9.66491e-11, No Iterations 1 ExecutionTime = 16.4 s ClockTime = 18 s Courant Number mean: 0.0109246 max: 3.60706 Interface Courant Number mean: 0 max: 0 deltaT = 2.17757e-74 Time = 7.19942e-06 smoothSolver: Solving for alpha.water, Initial residual = 5.45264e-09, Final residual = 5.45264e-09, No Iterations 0 Phase-1 volume fraction = 0.00838449 Min(alpha.water) = -2.03375e-12 Max(alpha.water) = 1 MULES: Correcting alpha.water Phase-1 volume fraction = 0.00838449 Min(alpha.water) = -2.03375e-12 Max(alpha.water) = 1 GAMG: Solving for p_rgh, Initial residual = 0.399741, Final residual = 0.00178865, No Iterations 5 time step continuity errors : sum local = 2.75265e-05, global = -1.45885e-06, cumulative = 7.45096e+58 GAMG: Solving for p_rgh, Initial residual = 0.296846, Final residual = 0.00128416, No Iterations 50 time step continuity errors : sum local = 1.17308e-05, global = -3.1497e-07, cumulative = 7.45096e+58 smoothSolver: Solving for omega, Initial residual = 0.00213625, Final residual = 2.79442e-05, No Iterations 1 smoothSolver: Solving for k, Initial residual = 0.000438583, Final residual = 9.42752e-08, No Iterations 1 bounding k, min: 2.22045e-16 max: 0.0785185 average: 0.00967385 ExecutionTime = 21.27 s ClockTime = 23 s Thank you. Martin Ramirez |
|
![]() |
![]() |
![]() |
|
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Simulation of a single bubble with a VOF-method | Suzzn | CFX | 21 | January 29, 2018 00:58 |
High pressure nitrogen discharge simulation in Fluent | jzapatau | FLUENT | 0 | October 2, 2016 17:54 |
[OpenFOAM] Annoying issue of automatic "Rescale to Data Range " with paraFoam/paraview 3.12 | keepfit | ParaView | 60 | September 18, 2013 03:23 |
[blockMesh] non-orthogonal faces and incorrect orientation? | nennbs | OpenFOAM Meshing & Mesh Conversion | 7 | April 17, 2013 05:42 |
OpenFOAM 1.7.1 installation problem on OpenSUSE 11.3 | flakid | OpenFOAM Installation | 16 | December 28, 2010 08:48 |