From e907cec9efa3972c3ee1cde6c426b16138bafa19 Mon Sep 17 00:00:00 2001 From: graham Date: Mon, 11 Oct 2010 13:04:39 +0100 Subject: [PATCH 01/13] BUG: Use SMALL for tet quality to relate to precision. Added comment about this being an ad-hoc limit. --- .../polyMeshTetDecomposition/polyMeshTetDecomposition.C | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/OpenFOAM/meshes/polyMesh/polyMeshTetDecomposition/polyMeshTetDecomposition.C b/src/OpenFOAM/meshes/polyMesh/polyMeshTetDecomposition/polyMeshTetDecomposition.C index 8f29b9e934..4187da2d93 100644 --- a/src/OpenFOAM/meshes/polyMesh/polyMeshTetDecomposition/polyMeshTetDecomposition.C +++ b/src/OpenFOAM/meshes/polyMesh/polyMeshTetDecomposition/polyMeshTetDecomposition.C @@ -27,7 +27,10 @@ License // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // -const Foam::scalar Foam::polyMeshTetDecomposition::minTetQuality = 1e-12; +// Note: the use of this tolerance is ad-hoc, there may be extreme +// cases where the resulting tetrahedra still have particle tracking +// problems. +const Foam::scalar Foam::polyMeshTetDecomposition::minTetQuality = SMALL; // * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // From ca8f5aee759975b444fcf2c68aec804aa9113686 Mon Sep 17 00:00:00 2001 From: Henry Date: Mon, 11 Oct 2010 14:16:57 +0100 Subject: [PATCH 02/13] Tutorials: Added libOpenFOAM.so to libs when used to avoid paraFoam failing --- .../multiRegionHeater/system/controlDict | 8 ++++++-- .../snappyMultiRegionHeater/system/controlDict | 8 ++++++-- .../multiRegionHeater/system/controlDict | 9 +++++++-- .../system/controlDict | 13 ++++++------- .../system/controlDict | 8 ++++++-- .../t-junction-with-fan/system/controlDict | 9 +++++++-- .../pimpleFoam/t-junction/system/controlDict | 9 +++++++-- .../simpleFoam/motorBike/system/controlDict | 7 +++++-- .../filter/system/controlDict | 9 +++++++-- .../hotBoxes/system/controlDict | 17 ++++++++--------- .../simpleHarmonicMotion/system/controlDict | 9 +-------- 11 files changed, 66 insertions(+), 40 deletions(-) diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/controlDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/controlDict index 590a47c55a..86119ee8da 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/controlDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/controlDict @@ -15,8 +15,6 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -libs ("libcompressibleTurbulenceModel.so" "libcompressibleRASModels.so"); - application chtMultiRegionFoam; startFrom latestTime; @@ -54,5 +52,11 @@ maxDi 10.0; adjustTimeStep yes; +libs +( + "libOpenFOAM.so" + "libcompressibleTurbulenceModel.so" + "libcompressibleRASModels.so" +); // ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/controlDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/controlDict index ec9f3455bd..1d46884f63 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/controlDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/controlDict @@ -15,8 +15,6 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -libs ("libcompressibleTurbulenceModel.so" "libcompressibleRASModels.so"); - application chtMultiRegionFoam; startFrom latestTime; @@ -53,5 +51,11 @@ maxDi 10.0; adjustTimeStep yes; +libs +( + "libOpenFOAM.so" + "libcompressibleTurbulenceModel.so" + "libcompressibleRASModels.so" +); // ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/controlDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/controlDict index 32e60a1dd1..f6ba2fe5fb 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/controlDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/system/controlDict @@ -15,8 +15,6 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -libs ("libcompressibleTurbulenceModel.so" "libcompressibleRASModels.so"); - application chtMultiRegionSimpleFoam; startFrom startTime; @@ -47,4 +45,11 @@ timePrecision 6; runTimeModifiable true; +libs +( + "libOpenFOAM.so" + "libcompressibleTurbulenceModel.so" + "libcompressibleRASModels.so" +); + // ************************************************************************* // diff --git a/tutorials/incompressible/boundaryFoam/boundaryWallFunctionsProfile/system/controlDict b/tutorials/incompressible/boundaryFoam/boundaryWallFunctionsProfile/system/controlDict index 8df3f4af88..7aafcc5b17 100644 --- a/tutorials/incompressible/boundaryFoam/boundaryWallFunctionsProfile/system/controlDict +++ b/tutorials/incompressible/boundaryFoam/boundaryWallFunctionsProfile/system/controlDict @@ -17,13 +17,6 @@ FoamFile application boundaryFoam; -libs -( - "libOpenFOAM.so" - "libinterpolationTables_16x.so" - "libtabulatedWallFunctionFvPatchFields_16x.so" -); - startFrom startTime; startTime 0; @@ -54,5 +47,11 @@ runTimeModifiable true; graphFormat raw; +libs +( + "libOpenFOAM.so" + "libinterpolationTables_16x.so" + "libtabulatedWallFunctionFvPatchFields_16x.so" +); // ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/system/controlDict b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/system/controlDict index df1315c043..db20cc9714 100644 --- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/system/controlDict +++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/system/controlDict @@ -49,14 +49,18 @@ adjustTimeStep yes; maxCo 0.9; -libs ("libforces.so"); +libs +( + "libOpenFOAM.so" + "libforces.so" +); functions { forces { type forces; - functionObjectLibs ( "libforces.so" ); + functionObjectLibs ("libforces.so"); outputControl timeStep; outputInterval 10; patches (wing); diff --git a/tutorials/incompressible/pimpleFoam/t-junction-with-fan/system/controlDict b/tutorials/incompressible/pimpleFoam/t-junction-with-fan/system/controlDict index 7008751838..9dc31d5561 100644 --- a/tutorials/incompressible/pimpleFoam/t-junction-with-fan/system/controlDict +++ b/tutorials/incompressible/pimpleFoam/t-junction-with-fan/system/controlDict @@ -15,8 +15,6 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -libs ("libOpenFOAM.so" "libincompressibleTurbulenceModel.so" "libincompressibleRASModels.so"); - application pimpleFoam; startFrom startTime; @@ -51,6 +49,13 @@ adjustTimeStep yes; maxCo 5; +libs +( + "libOpenFOAM.so" + "libincompressibleTurbulenceModel.so" + "libincompressibleRASModels.so" +); + functions { probes diff --git a/tutorials/incompressible/pimpleFoam/t-junction/system/controlDict b/tutorials/incompressible/pimpleFoam/t-junction/system/controlDict index 7008751838..e5b21cbaea 100644 --- a/tutorials/incompressible/pimpleFoam/t-junction/system/controlDict +++ b/tutorials/incompressible/pimpleFoam/t-junction/system/controlDict @@ -15,8 +15,6 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -libs ("libOpenFOAM.so" "libincompressibleTurbulenceModel.so" "libincompressibleRASModels.so"); - application pimpleFoam; startFrom startTime; @@ -51,6 +49,13 @@ adjustTimeStep yes; maxCo 5; +libs +( + "libOpenFOAM.so" + "libinterpolationTables_16x.so" + "libtabulatedWallFunctionFvPatchFields_16x.so" +); + functions { probes diff --git a/tutorials/incompressible/simpleFoam/motorBike/system/controlDict b/tutorials/incompressible/simpleFoam/motorBike/system/controlDict index 7be247e079..c81f8fd588 100644 --- a/tutorials/incompressible/simpleFoam/motorBike/system/controlDict +++ b/tutorials/incompressible/simpleFoam/motorBike/system/controlDict @@ -14,8 +14,6 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -libs ("libincompressibleRASModels.so"); - application simpleFoam; startFrom startTime; @@ -46,6 +44,11 @@ timePrecision 6; runTimeModifiable true; +libs +( + "libOpenFOAM.so" + "libincompressibleRASModels.so" +); functions { diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/system/controlDict b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/system/controlDict index 8aa86473df..6190c66a07 100644 --- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/system/controlDict +++ b/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/system/controlDict @@ -15,8 +15,6 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -libs ("libOpenFOAM.so" "libcompressibleTurbulenceModel.so" "libcompressibleRASModels.so" "libradiation.so"); - application porousExplicitSourceReactingParcelFoam; startFrom startTime; @@ -53,5 +51,12 @@ maxCo 1.0; maxDeltaT 1; +libs +( + "libOpenFOAM.so" + "libcompressibleTurbulenceModel.so" + "libcompressibleRASModels.so" + "libradiation.so" +); // ************************************************************************* // diff --git a/tutorials/lagrangian/reactingParcelFilmFoam/hotBoxes/system/controlDict b/tutorials/lagrangian/reactingParcelFilmFoam/hotBoxes/system/controlDict index f2ddb38b90..caf18048c1 100644 --- a/tutorials/lagrangian/reactingParcelFilmFoam/hotBoxes/system/controlDict +++ b/tutorials/lagrangian/reactingParcelFilmFoam/hotBoxes/system/controlDict @@ -15,15 +15,6 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -libs -( - "libOpenFOAM.so" - "libcompressibleTurbulenceModel.so" - "libcompressibleRASModels.so" - "libSLGThermo.so" - "libsurfaceFilmModels.so" -); - application reactingParcelFoam; startFrom latestTime; // startTime; @@ -60,5 +51,13 @@ maxCo 0.5; maxDeltaT 0.005; +libs +( + "libOpenFOAM.so" + "libcompressibleTurbulenceModel.so" + "libcompressibleRASModels.so" + "libSLGThermo.so" + "libsurfaceFilmModels.so" +); // ************************************************************************* // diff --git a/tutorials/mesh/moveDynamicMesh/simpleHarmonicMotion/system/controlDict b/tutorials/mesh/moveDynamicMesh/simpleHarmonicMotion/system/controlDict index 2d71827bb4..9e9f696faa 100644 --- a/tutorials/mesh/moveDynamicMesh/simpleHarmonicMotion/system/controlDict +++ b/tutorials/mesh/moveDynamicMesh/simpleHarmonicMotion/system/controlDict @@ -53,16 +53,9 @@ maxDeltaT 0.025; libs ( + "libOpenFOAM.so" "libincompressibleRASModels.so" "libforces.so" ); - -// libs -// ( -// "libgenericPatchFields.so" -// "libincompressibleRASModels.so" -// "libforces.so" -// ); - // ************************************************************************* // From 216f0a0cd10b1faa22ba19830604c24e6e02d264 Mon Sep 17 00:00:00 2001 From: Henry Date: Mon, 11 Oct 2010 16:18:49 +0100 Subject: [PATCH 03/13] pimpleDyMFoam: Corrected caching of rUA/rAU --- .../solvers/incompressible/pimpleFoam/UEqn.H | 4 ++-- .../solvers/incompressible/pimpleFoam/pEqn.H | 8 ++++---- .../pimpleFoam/pimpleDyMFoam/createFields.H | 2 +- .../pimpleFoam/pimpleDyMFoam/pEqn.H | 1 + .../incompressible/pimpleDyMFoam/movingCone/0/U | 16 ++++++++-------- .../incompressible/pimpleDyMFoam/movingCone/0/p | 16 ++++++++-------- .../pimpleDyMFoam/movingCone/system/fvSolution | 10 ++++++++-- 7 files changed, 32 insertions(+), 25 deletions(-) diff --git a/applications/solvers/incompressible/pimpleFoam/UEqn.H b/applications/solvers/incompressible/pimpleFoam/UEqn.H index 3574c6553a..3655677979 100644 --- a/applications/solvers/incompressible/pimpleFoam/UEqn.H +++ b/applications/solvers/incompressible/pimpleFoam/UEqn.H @@ -9,7 +9,7 @@ tmp UEqn UEqn().relax(); -volScalarField rUA = 1.0/UEqn().A(); +volScalarField rAU = 1.0/UEqn().A(); if (momentumPredictor) { @@ -17,6 +17,6 @@ if (momentumPredictor) } else { - U = rUA*(UEqn().H() - fvc::grad(p)); + U = rAU*(UEqn().H() - fvc::grad(p)); U.correctBoundaryConditions(); } diff --git a/applications/solvers/incompressible/pimpleFoam/pEqn.H b/applications/solvers/incompressible/pimpleFoam/pEqn.H index b5dc23a58c..acd86ed4b0 100644 --- a/applications/solvers/incompressible/pimpleFoam/pEqn.H +++ b/applications/solvers/incompressible/pimpleFoam/pEqn.H @@ -1,4 +1,4 @@ -U = rUA*UEqn().H(); +U = rAU*UEqn().H(); if (nCorr <= 1) { @@ -6,7 +6,7 @@ if (nCorr <= 1) } phi = (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, U, phi); + + fvc::ddtPhiCorr(rAU, U, phi); adjustPhi(phi, U, p); @@ -16,7 +16,7 @@ for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) // Pressure corrector fvScalarMatrix pEqn ( - fvm::laplacian(rUA, p) == fvc::div(phi) + fvm::laplacian(rAU, p) == fvc::div(phi) ); pEqn.setReference(pRefCell, pRefValue); @@ -47,5 +47,5 @@ for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) // Explicitly relax pressure for momentum corrector p.relax(); -U -= rUA*fvc::grad(p); +U -= rAU*fvc::grad(p); U.correctBoundaryConditions(); diff --git a/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/createFields.H b/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/createFields.H index bc798ba988..16b3bd977d 100644 --- a/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/createFields.H +++ b/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/createFields.H @@ -27,7 +27,7 @@ mesh ); -# include "createPhi.H" + #include "createPhi.H" label pRefCell = 0; diff --git a/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/pEqn.H b/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/pEqn.H index 155f43a632..74045cabb7 100644 --- a/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/pEqn.H +++ b/applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/pEqn.H @@ -46,6 +46,7 @@ for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) #include "continuityErrs.H" +// Explicitly relax pressure for momentum corrector p.relax(); // Make the fluxes relative to the mesh motion diff --git a/tutorials/incompressible/pimpleDyMFoam/movingCone/0/U b/tutorials/incompressible/pimpleDyMFoam/movingCone/0/U index b3bc15c145..ddeb5b36b8 100644 --- a/tutorials/incompressible/pimpleDyMFoam/movingCone/0/U +++ b/tutorials/incompressible/pimpleDyMFoam/movingCone/0/U @@ -20,47 +20,47 @@ internalField uniform (0 0 0); boundaryField { - movingWall + movingWall { type fixedValue; value uniform (1 0 0); } - farFieldMoving + farFieldMoving { type fixedValue; value uniform (0 0 0); } - fixedWall + fixedWall { type fixedValue; value uniform (0 0 0); } - axis + axis { type symmetryPlane; } - left + left { type pressureInletOutletVelocity; value uniform (0 0 0); } - farField + farField { type fixedValue; value uniform (0 0 0); } - back + back { type wedge; } - front + front { type wedge; } diff --git a/tutorials/incompressible/pimpleDyMFoam/movingCone/0/p b/tutorials/incompressible/pimpleDyMFoam/movingCone/0/p index 112e30ef2f..9f13ffc4a4 100644 --- a/tutorials/incompressible/pimpleDyMFoam/movingCone/0/p +++ b/tutorials/incompressible/pimpleDyMFoam/movingCone/0/p @@ -20,27 +20,27 @@ internalField uniform 0; boundaryField { - movingWall + movingWall { type zeroGradient; } - farFieldMoving + farFieldMoving { type zeroGradient; } - fixedWall + fixedWall { type zeroGradient; } - axis + axis { type symmetryPlane; } - left + left { type totalPressure; p0 uniform 0; @@ -52,17 +52,17 @@ boundaryField value uniform 0; } - farField + farField { type zeroGradient; } - back + back { type wedge; } - front + front { type wedge; } diff --git a/tutorials/incompressible/pimpleDyMFoam/movingCone/system/fvSolution b/tutorials/incompressible/pimpleDyMFoam/movingCone/system/fvSolution index 6bc425e2f6..f93592537c 100644 --- a/tutorials/incompressible/pimpleDyMFoam/movingCone/system/fvSolution +++ b/tutorials/incompressible/pimpleDyMFoam/movingCone/system/fvSolution @@ -21,7 +21,7 @@ solvers { solver PCG; preconditioner DIC; - tolerance 0.01; + tolerance 0.02; relTol 0; } @@ -30,7 +30,7 @@ solvers solver PCG; preconditioner DIC; tolerance 1e-06; - relTol 0.05; + relTol 0.01; } pFinal @@ -66,10 +66,16 @@ solvers PIMPLE { + correctPhi yes; nOuterCorrectors 2; nCorrectors 1; nNonOrthogonalCorrectors 0; } +relaxationFactors +{ + U 1; + UFinal 1; +} // ************************************************************************* // From 3e49bb14e5e0167d6d33ced18bfa3d904b771b48 Mon Sep 17 00:00:00 2001 From: mattijs Date: Mon, 11 Oct 2010 16:24:07 +0100 Subject: [PATCH 04/13] BUG: plane : fix 3-plane intersection --- .../meshes/primitiveShapes/plane/plane.C | 31 +++++++++---------- .../meshes/primitiveShapes/plane/plane.H | 2 +- 2 files changed, 16 insertions(+), 17 deletions(-) diff --git a/src/OpenFOAM/meshes/primitiveShapes/plane/plane.C b/src/OpenFOAM/meshes/primitiveShapes/plane/plane.C index d4407a7d68..8ced550982 100644 --- a/src/OpenFOAM/meshes/primitiveShapes/plane/plane.C +++ b/src/OpenFOAM/meshes/primitiveShapes/plane/plane.C @@ -272,10 +272,10 @@ const Foam::point& Foam::plane::refPoint() const } -// Return coefficcients for plane equation: ax + by + cz + d = 0 -Foam::scalarList Foam::plane::planeCoeffs() const +// Return coefficients for plane equation: ax + by + cz + d = 0 +Foam::FixedList Foam::plane::planeCoeffs() const { - scalarList C(4); + FixedList C(4); scalar magX = mag(unitVector_.x()); scalar magY = mag(unitVector_.y()); @@ -291,8 +291,8 @@ Foam::scalarList Foam::plane::planeCoeffs() const } else { - C[0] = 0; - C[1] = 0; + C[0] = unitVector_.x()/unitVector_.z(); + C[1] = unitVector_.y()/unitVector_.z(); C[2] = 1; } } @@ -300,14 +300,14 @@ Foam::scalarList Foam::plane::planeCoeffs() const { if (magY > magZ) { - C[0] = 0; + C[0] = unitVector_.x()/unitVector_.y(); C[1] = 1; C[2] = unitVector_.z()/unitVector_.y(); } else { - C[0] = 0; - C[1] = 0; + C[0] = unitVector_.x()/unitVector_.z(); + C[1] = unitVector_.y()/unitVector_.z(); C[2] = 1; } } @@ -422,19 +422,18 @@ Foam::point Foam::plane::planePlaneIntersect const plane& plane3 ) const { - List pcs(3); - pcs[0]= planeCoeffs(); - pcs[1]= plane2.planeCoeffs(); - pcs[2]= plane3.planeCoeffs(); + FixedList coeffs1(planeCoeffs()); + FixedList coeffs2(plane2.planeCoeffs()); + FixedList coeffs3(plane3.planeCoeffs()); tensor a ( - pcs[0][0],pcs[0][1],pcs[0][2], - pcs[1][0],pcs[1][1],pcs[1][2], - pcs[2][0],pcs[2][1],pcs[2][2] + coeffs1[0],coeffs1[1],coeffs1[2], + coeffs2[0],coeffs2[1],coeffs2[2], + coeffs3[0],coeffs3[1],coeffs3[2] ); - vector b(pcs[0][3],pcs[1][3],pcs[2][3]); + vector b(coeffs1[3],coeffs2[3],coeffs3[3]); return (inv(a) & (-b)); } diff --git a/src/OpenFOAM/meshes/primitiveShapes/plane/plane.H b/src/OpenFOAM/meshes/primitiveShapes/plane/plane.H index 44eb20cbc0..89fb6afd28 100644 --- a/src/OpenFOAM/meshes/primitiveShapes/plane/plane.H +++ b/src/OpenFOAM/meshes/primitiveShapes/plane/plane.H @@ -149,7 +149,7 @@ public: //- Return coefficients for the // plane equation: ax + by + cz + d = 0 - scalarList planeCoeffs() const; + FixedList planeCoeffs() const; //- Return nearest point in the plane for the given point point nearestPoint(const point& p) const; From eb51614780e1c5324da78ef18f4acec7e3bb3343 Mon Sep 17 00:00:00 2001 From: Henry Date: Mon, 11 Oct 2010 20:10:34 +0100 Subject: [PATCH 05/13] Renamed rUA -> rAU --- applications/solvers/DNS/dnsFoam/dnsFoam.C | 10 ++++----- .../solvers/combustion/PDRFoam/pEqn.H | 6 ++--- applications/solvers/combustion/XiFoam/pEqn.H | 14 ++++++------ .../solvers/combustion/dieselFoam/pEqn.H | 14 ++++++------ .../solvers/combustion/engineFoam/pEqn.H | 10 ++++----- .../solvers/combustion/fireFoam/pEqn.H | 16 +++++++------- .../solvers/combustion/reactingFoam/pEqn.H | 14 ++++++------ .../solvers/combustion/rhoReactingFoam/pEqn.H | 14 ++++++------ .../solvers/compressible/rhoPimpleFoam/UEqn.H | 4 ++-- .../solvers/compressible/rhoPimpleFoam/pEqn.H | 12 +++++----- .../rhoPorousMRFPimpleFoam/UEqn.H | 4 ++-- .../rhoPorousMRFPimpleFoam/pEqn.H | 14 ++++++------ .../solvers/compressible/rhoSimpleFoam/pEqn.H | 10 ++++----- .../solvers/compressible/sonicFoam/pEqn.H | 10 ++++----- .../sonicLiquidFoam/sonicLiquidFoam.C | 10 ++++----- .../electromagnetics/mhdFoam/mhdFoam.C | 10 ++++----- .../buoyantBoussinesqPimpleFoam/pEqn.H | 14 ++++++------ .../buoyantBoussinesqSimpleFoam/pEqn.H | 12 +++++----- .../heatTransfer/buoyantPimpleFoam/pEqn.H | 14 ++++++------ .../heatTransfer/buoyantSimpleFoam/pEqn.H | 12 +++++----- .../heatTransfer/buoyantSimpleFoam_old/pEqn.H | 14 ++++++------ .../chtMultiRegionSimpleFoam/fluid/pEqn.H | 12 +++++----- .../chtMultiRegionFoam/fluid/pEqn.H | 14 ++++++------ .../incompressible/channelFoam/channelFoam.C | 14 ++++++------ .../solvers/incompressible/icoFoam/icoFoam.C | 10 ++++----- .../nonNewtonianIcoFoam/nonNewtonianIcoFoam.C | 10 ++++----- .../pimpleFoam/pimpleDyMFoam/UEqn.H | 22 +++++++++++++++++++ .../incompressible/pisoFoam/pisoFoam.C | 10 ++++----- .../shallowWaterFoam/shallowWaterFoam.C | 16 +++++++------- .../lagrangian/coalChemistryFoam/pEqn.H | 14 ++++++------ .../lagrangian/reactingParcelFilmFoam/pEqn.H | 14 ++++++------ .../lagrangian/reactingParcelFoam/pEqn.H | 14 ++++++------ .../solvers/multiphase/cavitatingFoam/pEqn.H | 14 ++++++------ .../compressibleInterDyMFoam/pEqn.H | 14 ++++++------ .../multiphase/compressibleInterFoam/pEqn.H | 14 ++++++------ .../multiphase/interPhaseChangeFoam/pEqn.H | 14 ++++++------ .../solvers/multiphase/settlingFoam/pEqn.H | 16 +++++++------- applications/test/LduMatrix/LduMatrixTest3.C | 10 ++++----- .../pressureGradientExplicitSource.C | 14 ++++++------ .../rhoPisoTwinParcelFoam/pEqn.H | 14 ++++++------ .../les/throttle/system/fvSchemes | 2 +- .../les/throttle3D/system/fvSchemes | 2 +- .../ras/throttle/system/fvSchemes | 2 +- 43 files changed, 263 insertions(+), 241 deletions(-) create mode 100644 applications/solvers/incompressible/pimpleFoam/pimpleDyMFoam/UEqn.H diff --git a/applications/solvers/DNS/dnsFoam/dnsFoam.C b/applications/solvers/DNS/dnsFoam/dnsFoam.C index eb1e69c41b..34f212bc4d 100644 --- a/applications/solvers/DNS/dnsFoam/dnsFoam.C +++ b/applications/solvers/DNS/dnsFoam/dnsFoam.C @@ -85,15 +85,15 @@ int main(int argc, char *argv[]) for (int corr=1; corr<=1; corr++) { - volScalarField rUA = 1.0/UEqn.A(); + volScalarField rAU = 1.0/UEqn.A(); - U = rUA*UEqn.H(); + U = rAU*UEqn.H(); phi = (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, U, phi); + + fvc::ddtPhiCorr(rAU, U, phi); fvScalarMatrix pEqn ( - fvm::laplacian(rUA, p) == fvc::div(phi) + fvm::laplacian(rAU, p) == fvc::div(phi) ); pEqn.solve(); @@ -102,7 +102,7 @@ int main(int argc, char *argv[]) #include "continuityErrs.H" - U -= rUA*fvc::grad(p); + U -= rAU*fvc::grad(p); U.correctBoundaryConditions(); } diff --git a/applications/solvers/combustion/PDRFoam/pEqn.H b/applications/solvers/combustion/PDRFoam/pEqn.H index 524c8eac74..9042837f54 100644 --- a/applications/solvers/combustion/PDRFoam/pEqn.H +++ b/applications/solvers/combustion/PDRFoam/pEqn.H @@ -1,6 +1,6 @@ rho = thermo.rho(); -volScalarField rUA = 1.0/UEqn.A(); +volScalarField rAU = 1.0/UEqn.A(); U = invA & UEqn.H(); if (transonic) @@ -11,7 +11,7 @@ if (transonic) fvc::interpolate(psi) *( (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, rho, U, phi) + + fvc::ddtPhiCorr(rAU, rho, U, phi) ) ); @@ -38,7 +38,7 @@ else fvc::interpolate(rho)* ( (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, rho, U, phi) + + fvc::ddtPhiCorr(rAU, rho, U, phi) ); for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) diff --git a/applications/solvers/combustion/XiFoam/pEqn.H b/applications/solvers/combustion/XiFoam/pEqn.H index 9443f909a3..3d414f4af6 100644 --- a/applications/solvers/combustion/XiFoam/pEqn.H +++ b/applications/solvers/combustion/XiFoam/pEqn.H @@ -1,7 +1,7 @@ rho = thermo.rho(); -volScalarField rUA = 1.0/UEqn.A(); -U = rUA*UEqn.H(); +volScalarField rAU = 1.0/UEqn.A(); +U = rAU*UEqn.H(); if (transonic) { @@ -11,7 +11,7 @@ if (transonic) fvc::interpolate(psi) *( (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, rho, U, phi) + + fvc::ddtPhiCorr(rAU, rho, U, phi) ) ); @@ -21,7 +21,7 @@ if (transonic) ( fvm::ddt(psi, p) + fvm::div(phid, p) - - fvm::laplacian(rho*rUA, p) + - fvm::laplacian(rho*rAU, p) ); pEqn.solve(); @@ -38,7 +38,7 @@ else fvc::interpolate(rho) *( (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, rho, U, phi) + + fvc::ddtPhiCorr(rAU, rho, U, phi) ); for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) @@ -47,7 +47,7 @@ else ( fvm::ddt(psi, p) + fvc::div(phi) - - fvm::laplacian(rho*rUA, p) + - fvm::laplacian(rho*rAU, p) ); pEqn.solve(); @@ -62,7 +62,7 @@ else #include "rhoEqn.H" #include "compressibleContinuityErrs.H" -U -= rUA*fvc::grad(p); +U -= rAU*fvc::grad(p); U.correctBoundaryConditions(); DpDt = fvc::DDt(surfaceScalarField("phiU", phi/fvc::interpolate(rho)), p); diff --git a/applications/solvers/combustion/dieselFoam/pEqn.H b/applications/solvers/combustion/dieselFoam/pEqn.H index d74947fe53..f1b66877a0 100644 --- a/applications/solvers/combustion/dieselFoam/pEqn.H +++ b/applications/solvers/combustion/dieselFoam/pEqn.H @@ -1,7 +1,7 @@ rho = thermo.rho(); -volScalarField rUA = 1.0/UEqn.A(); -U = rUA*UEqn.H(); +volScalarField rAU = 1.0/UEqn.A(); +U = rAU*UEqn.H(); if (transonic) { @@ -11,7 +11,7 @@ if (transonic) fvc::interpolate(psi) *( (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, rho, U, phi) + + fvc::ddtPhiCorr(rAU, rho, U, phi) ) ); @@ -21,7 +21,7 @@ if (transonic) ( fvm::ddt(psi, p) + fvm::div(phid, p) - - fvm::laplacian(rho*rUA, p) + - fvm::laplacian(rho*rAU, p) == Sevap ); @@ -40,7 +40,7 @@ else fvc::interpolate(rho) *( (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, rho, U, phi) + + fvc::ddtPhiCorr(rAU, rho, U, phi) ); for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) @@ -49,7 +49,7 @@ else ( fvm::ddt(psi, p) + fvc::div(phi) - - fvm::laplacian(rho*rUA, p) + - fvm::laplacian(rho*rAU, p) == Sevap ); @@ -66,7 +66,7 @@ else #include "rhoEqn.H" #include "compressibleContinuityErrs.H" -U -= rUA*fvc::grad(p); +U -= rAU*fvc::grad(p); U.correctBoundaryConditions(); DpDt = fvc::DDt(surfaceScalarField("phiU", phi/fvc::interpolate(rho)), p); diff --git a/applications/solvers/combustion/engineFoam/pEqn.H b/applications/solvers/combustion/engineFoam/pEqn.H index 39b4967312..913180f794 100644 --- a/applications/solvers/combustion/engineFoam/pEqn.H +++ b/applications/solvers/combustion/engineFoam/pEqn.H @@ -1,7 +1,7 @@ rho = thermo.rho(); -volScalarField rUA = 1.0/UEqn.A(); -U = rUA*UEqn.H(); +volScalarField rAU = 1.0/UEqn.A(); +U = rAU*UEqn.H(); if (transonic) { @@ -18,7 +18,7 @@ if (transonic) ( fvm::ddt(psi, p) + fvm::div(phid, p, "div(phid,p)") - - fvm::laplacian(rho*rUA, p) + - fvm::laplacian(rho*rAU, p) ); pEqn.solve(); @@ -40,7 +40,7 @@ else ( fvm::ddt(psi, p) + fvc::div(phi) - - fvm::laplacian(rho*rUA, p) + - fvm::laplacian(rho*rAU, p) ); pEqn.solve(); @@ -55,7 +55,7 @@ else #include "rhoEqn.H" #include "compressibleContinuityErrs.H" -U -= rUA*fvc::grad(p); +U -= rAU*fvc::grad(p); U.correctBoundaryConditions(); DpDt = fvc::DDt(surfaceScalarField("phiU", phi/fvc::interpolate(rho)), p); diff --git a/applications/solvers/combustion/fireFoam/pEqn.H b/applications/solvers/combustion/fireFoam/pEqn.H index b31a7c6636..135b55d879 100644 --- a/applications/solvers/combustion/fireFoam/pEqn.H +++ b/applications/solvers/combustion/fireFoam/pEqn.H @@ -1,29 +1,29 @@ rho = thermo.rho(); -volScalarField rUA = 1.0/UEqn.A(); -surfaceScalarField rhorUAf("(rho*(1|A(U)))", fvc::interpolate(rho*rUA)); -U = rUA*UEqn.H(); +volScalarField rAU = 1.0/UEqn.A(); +surfaceScalarField rhorAUf("(rho*(1|A(U)))", fvc::interpolate(rho*rAU)); +U = rAU*UEqn.H(); surfaceScalarField phiU ( fvc::interpolate(rho) *( (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, rho, U, phi) + + fvc::ddtPhiCorr(rAU, rho, U, phi) ) ); -phi = phiU - rhorUAf*ghf*fvc::snGrad(rho)*mesh.magSf(); +phi = phiU - rhorAUf*ghf*fvc::snGrad(rho)*mesh.magSf(); for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) { - surfaceScalarField rhorUAf = fvc::interpolate(rho*rUA); + surfaceScalarField rhorAUf = fvc::interpolate(rho*rAU); fvScalarMatrix p_rghEqn ( fvm::ddt(psi, p_rgh) + fvc::ddt(psi, rho)*gh + fvc::div(phi) - - fvm::laplacian(rhorUAf, p_rgh) + - fvm::laplacian(rhorAUf, p_rgh) ); p_rghEqn.solve @@ -52,7 +52,7 @@ p = p_rgh + rho*gh; #include "rhoEqn.H" #include "compressibleContinuityErrs.H" -U += rUA*fvc::reconstruct((phi - phiU)/rhorUAf); +U += rAU*fvc::reconstruct((phi - phiU)/rhorAUf); U.correctBoundaryConditions(); DpDt = fvc::DDt(surfaceScalarField("phiU", phi/fvc::interpolate(rho)), p); diff --git a/applications/solvers/combustion/reactingFoam/pEqn.H b/applications/solvers/combustion/reactingFoam/pEqn.H index 9443f909a3..3d414f4af6 100644 --- a/applications/solvers/combustion/reactingFoam/pEqn.H +++ b/applications/solvers/combustion/reactingFoam/pEqn.H @@ -1,7 +1,7 @@ rho = thermo.rho(); -volScalarField rUA = 1.0/UEqn.A(); -U = rUA*UEqn.H(); +volScalarField rAU = 1.0/UEqn.A(); +U = rAU*UEqn.H(); if (transonic) { @@ -11,7 +11,7 @@ if (transonic) fvc::interpolate(psi) *( (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, rho, U, phi) + + fvc::ddtPhiCorr(rAU, rho, U, phi) ) ); @@ -21,7 +21,7 @@ if (transonic) ( fvm::ddt(psi, p) + fvm::div(phid, p) - - fvm::laplacian(rho*rUA, p) + - fvm::laplacian(rho*rAU, p) ); pEqn.solve(); @@ -38,7 +38,7 @@ else fvc::interpolate(rho) *( (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, rho, U, phi) + + fvc::ddtPhiCorr(rAU, rho, U, phi) ); for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) @@ -47,7 +47,7 @@ else ( fvm::ddt(psi, p) + fvc::div(phi) - - fvm::laplacian(rho*rUA, p) + - fvm::laplacian(rho*rAU, p) ); pEqn.solve(); @@ -62,7 +62,7 @@ else #include "rhoEqn.H" #include "compressibleContinuityErrs.H" -U -= rUA*fvc::grad(p); +U -= rAU*fvc::grad(p); U.correctBoundaryConditions(); DpDt = fvc::DDt(surfaceScalarField("phiU", phi/fvc::interpolate(rho)), p); diff --git a/applications/solvers/combustion/rhoReactingFoam/pEqn.H b/applications/solvers/combustion/rhoReactingFoam/pEqn.H index c76ab5110b..45ae3c1e5f 100644 --- a/applications/solvers/combustion/rhoReactingFoam/pEqn.H +++ b/applications/solvers/combustion/rhoReactingFoam/pEqn.H @@ -5,14 +5,14 @@ // pressure solution - done in 2 parts. Part 1: thermo.rho() -= psi*p; - volScalarField rUA = 1.0/UEqn.A(); - U = rUA*UEqn.H(); + volScalarField rAU = 1.0/UEqn.A(); + U = rAU*UEqn.H(); if (transonic) { surfaceScalarField phiv = (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, rho, U, phi); + + fvc::ddtPhiCorr(rAU, rho, U, phi); phi = fvc::interpolate(rho)*phiv; @@ -28,7 +28,7 @@ ( fvc::ddt(rho) + fvc::div(phi) + correction(fvm::ddt(psi, p) + fvm::div(phid, p)) - - fvm::laplacian(rho*rUA, p) + - fvm::laplacian(rho*rAU, p) ); pEqn.solve @@ -58,7 +58,7 @@ fvc::interpolate(rho) *( (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, rho, U, phi) + + fvc::ddtPhiCorr(rAU, rho, U, phi) ); for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) @@ -67,7 +67,7 @@ ( fvc::ddt(rho) + psi*correction(fvm::ddt(p)) + fvc::div(phi) - - fvm::laplacian(rho*rUA, p) + - fvm::laplacian(rho*rAU, p) ); pEqn.solve @@ -98,7 +98,7 @@ #include "rhoEqn.H" #include "compressibleContinuityErrs.H" - U -= rUA*fvc::grad(p); + U -= rAU*fvc::grad(p); U.correctBoundaryConditions(); DpDt = fvc::DDt(surfaceScalarField("phiU", phi/fvc::interpolate(rho)), p); diff --git a/applications/solvers/compressible/rhoPimpleFoam/UEqn.H b/applications/solvers/compressible/rhoPimpleFoam/UEqn.H index 954907d203..45aa8f7790 100644 --- a/applications/solvers/compressible/rhoPimpleFoam/UEqn.H +++ b/applications/solvers/compressible/rhoPimpleFoam/UEqn.H @@ -9,7 +9,7 @@ tmp UEqn UEqn().relax(); -volScalarField rUA = 1.0/UEqn().A(); +volScalarField rAU = 1.0/UEqn().A(); if (momentumPredictor) { @@ -17,6 +17,6 @@ if (momentumPredictor) } else { - U = rUA*(UEqn().H() - fvc::grad(p)); + U = rAU*(UEqn().H() - fvc::grad(p)); U.correctBoundaryConditions(); } diff --git a/applications/solvers/compressible/rhoPimpleFoam/pEqn.H b/applications/solvers/compressible/rhoPimpleFoam/pEqn.H index c0dba194e7..84e6451890 100644 --- a/applications/solvers/compressible/rhoPimpleFoam/pEqn.H +++ b/applications/solvers/compressible/rhoPimpleFoam/pEqn.H @@ -1,6 +1,6 @@ rho = thermo.rho(); -U = rUA*UEqn().H(); +U = rAU*UEqn().H(); if (nCorr <= 1) { @@ -15,7 +15,7 @@ if (transonic) fvc::interpolate(psi) *( (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, rho, U, phi) + + fvc::ddtPhiCorr(rAU, rho, U, phi) ) ); @@ -25,7 +25,7 @@ if (transonic) ( fvm::ddt(psi, p) + fvm::div(phid, p) - - fvm::laplacian(rho*rUA, p) + - fvm::laplacian(rho*rAU, p) ); pEqn.solve @@ -55,7 +55,7 @@ else fvc::interpolate(rho)* ( (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, rho, U, phi) + + fvc::ddtPhiCorr(rAU, rho, U, phi) ); for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) @@ -65,7 +65,7 @@ else ( fvm::ddt(psi, p) + fvc::div(phi) - - fvm::laplacian(rho*rUA, p) + - fvm::laplacian(rho*rAU, p) ); pEqn.solve @@ -101,7 +101,7 @@ rho = thermo.rho(); Info<< "rho max/min : " << max(rho).value() << " " << min(rho).value() << endl; -U -= rUA*fvc::grad(p); +U -= rAU*fvc::grad(p); U.correctBoundaryConditions(); DpDt = fvc::DDt(surfaceScalarField("phiU", phi/fvc::interpolate(rho)), p); diff --git a/applications/solvers/compressible/rhoPorousMRFPimpleFoam/UEqn.H b/applications/solvers/compressible/rhoPorousMRFPimpleFoam/UEqn.H index a331d7dbb8..0b0364b706 100644 --- a/applications/solvers/compressible/rhoPorousMRFPimpleFoam/UEqn.H +++ b/applications/solvers/compressible/rhoPorousMRFPimpleFoam/UEqn.H @@ -12,7 +12,7 @@ UEqn().relax(); mrfZones.addCoriolis(rho, UEqn()); pZones.addResistance(UEqn()); -volScalarField rUA = 1.0/UEqn().A(); +volScalarField rAU = 1.0/UEqn().A(); if (momentumPredictor) { @@ -20,6 +20,6 @@ if (momentumPredictor) } else { - U = rUA*(UEqn().H() - fvc::grad(p)); + U = rAU*(UEqn().H() - fvc::grad(p)); U.correctBoundaryConditions(); } diff --git a/applications/solvers/compressible/rhoPorousMRFPimpleFoam/pEqn.H b/applications/solvers/compressible/rhoPorousMRFPimpleFoam/pEqn.H index 6be6584202..590a3c1950 100644 --- a/applications/solvers/compressible/rhoPorousMRFPimpleFoam/pEqn.H +++ b/applications/solvers/compressible/rhoPorousMRFPimpleFoam/pEqn.H @@ -1,7 +1,7 @@ rho = thermo.rho(); -volScalarField rUA = 1.0/UEqn().A(); -U = rUA*UEqn().H(); +volScalarField rAU = 1.0/UEqn().A(); +U = rAU*UEqn().H(); if (nCorr <= 1) { @@ -16,7 +16,7 @@ if (transonic) fvc::interpolate(psi) *( (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, rho, U, phi) + + fvc::ddtPhiCorr(rAU, rho, U, phi) ) ); mrfZones.relativeFlux(fvc::interpolate(psi), phid); @@ -27,7 +27,7 @@ if (transonic) ( fvm::ddt(psi, p) + fvm::div(phid, p) - - fvm::laplacian(rho*rUA, p) + - fvm::laplacian(rho*rAU, p) ); pEqn.solve @@ -57,7 +57,7 @@ else fvc::interpolate(rho)* ( (fvc::interpolate(U) & mesh.Sf()) - //+ fvc::ddtPhiCorr(rUA, rho, U, phi) + //+ fvc::ddtPhiCorr(rAU, rho, U, phi) ); mrfZones.relativeFlux(fvc::interpolate(rho), phi); @@ -68,7 +68,7 @@ else ( fvm::ddt(psi, p) + fvc::div(phi) - - fvm::laplacian(rho*rUA, p) + - fvm::laplacian(rho*rAU, p) ); pEqn.solve @@ -109,7 +109,7 @@ else << " " << min(rho).value() << endl; } -U -= rUA*fvc::grad(p); +U -= rAU*fvc::grad(p); U.correctBoundaryConditions(); DpDt = fvc::DDt(surfaceScalarField("phiU", phi/fvc::interpolate(rho)), p); diff --git a/applications/solvers/compressible/rhoSimpleFoam/pEqn.H b/applications/solvers/compressible/rhoSimpleFoam/pEqn.H index 96d8280559..a082cac880 100644 --- a/applications/solvers/compressible/rhoSimpleFoam/pEqn.H +++ b/applications/solvers/compressible/rhoSimpleFoam/pEqn.H @@ -3,8 +3,8 @@ rho = max(rho, rhoMin); rho = min(rho, rhoMax); rho.relax(); -volScalarField rUA = 1.0/UEqn().A(); -U = rUA*UEqn().H(); +volScalarField rAU = 1.0/UEqn().A(); +U = rAU*UEqn().H(); UEqn.clear(); bool closedVolume = false; @@ -22,7 +22,7 @@ if (transonic) fvScalarMatrix pEqn ( fvm::div(phid, p) - - fvm::laplacian(rho*rUA, p) + - fvm::laplacian(rho*rAU, p) ); // Relax the pressure equation to ensure diagonal-dominance @@ -47,7 +47,7 @@ else { fvScalarMatrix pEqn ( - fvm::laplacian(rho*rUA, p) == fvc::div(phi) + fvm::laplacian(rho*rAU, p) == fvc::div(phi) ); pEqn.setReference(pRefCell, pRefValue); @@ -67,7 +67,7 @@ else // Explicitly relax pressure for momentum corrector p.relax(); -U -= rUA*fvc::grad(p); +U -= rAU*fvc::grad(p); U.correctBoundaryConditions(); // For closed-volume cases adjust the pressure and density levels diff --git a/applications/solvers/compressible/sonicFoam/pEqn.H b/applications/solvers/compressible/sonicFoam/pEqn.H index 96a500d4c2..8d6040b530 100644 --- a/applications/solvers/compressible/sonicFoam/pEqn.H +++ b/applications/solvers/compressible/sonicFoam/pEqn.H @@ -1,7 +1,7 @@ rho = thermo.rho(); -volScalarField rUA = 1.0/UEqn.A(); -U = rUA*UEqn.H(); +volScalarField rAU = 1.0/UEqn.A(); +U = rAU*UEqn.H(); surfaceScalarField phid ( @@ -9,7 +9,7 @@ surfaceScalarField phid fvc::interpolate(psi) *( (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, rho, U, phi) + + fvc::ddtPhiCorr(rAU, rho, U, phi) ) ); @@ -19,7 +19,7 @@ for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) ( fvm::ddt(psi, p) + fvm::div(phid, p) - - fvm::laplacian(rho*rUA, p) + - fvm::laplacian(rho*rAU, p) ); pEqn.solve(); @@ -33,5 +33,5 @@ for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) #include "rhoEqn.H" #include "compressibleContinuityErrs.H" -U -= rUA*fvc::grad(p); +U -= rAU*fvc::grad(p); U.correctBoundaryConditions(); diff --git a/applications/solvers/compressible/sonicLiquidFoam/sonicLiquidFoam.C b/applications/solvers/compressible/sonicLiquidFoam/sonicLiquidFoam.C index c785343af7..c92f3d82f9 100644 --- a/applications/solvers/compressible/sonicLiquidFoam/sonicLiquidFoam.C +++ b/applications/solvers/compressible/sonicLiquidFoam/sonicLiquidFoam.C @@ -71,8 +71,8 @@ int main(int argc, char *argv[]) for (int corr=0; corr UEqn +( + fvm::ddt(U) + + fvm::div(phi, U) + + turbulence->divDevReff(U) +); + +UEqn().relax(); + +rAU = 1.0/UEqn().A(); + +if (momentumPredictor) +{ + solve(UEqn() == -fvc::grad(p)); +} +else +{ + U = rAU*(UEqn().H() - fvc::grad(p)); + U.correctBoundaryConditions(); +} diff --git a/applications/solvers/incompressible/pisoFoam/pisoFoam.C b/applications/solvers/incompressible/pisoFoam/pisoFoam.C index 5f7e6dd8e0..47414bf173 100644 --- a/applications/solvers/incompressible/pisoFoam/pisoFoam.C +++ b/applications/solvers/incompressible/pisoFoam/pisoFoam.C @@ -79,11 +79,11 @@ int main(int argc, char *argv[]) for (int corr=0; corr p_rghEqnComp; @@ -24,27 +24,27 @@ } - U = rUA*UEqn.H(); + U = rAU*UEqn.H(); surfaceScalarField phiU ( "phiU", (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, rho, U, phi) + + fvc::ddtPhiCorr(rAU, rho, U, phi) ); phi = phiU + ( fvc::interpolate(interface.sigmaK())*fvc::snGrad(alpha1) - ghf*fvc::snGrad(rho) - )*rUAf*mesh.magSf(); + )*rAUf*mesh.magSf(); for(int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) { fvScalarMatrix p_rghEqnIncomp ( fvc::div(phi) - - fvm::laplacian(rUAf, p_rgh) + - fvm::laplacian(rAUf, p_rgh) ); solve @@ -75,7 +75,7 @@ } } - U += rUA*fvc::reconstruct((phi - phiU)/rUAf); + U += rAU*fvc::reconstruct((phi - phiU)/rAUf); U.correctBoundaryConditions(); p = max diff --git a/applications/solvers/multiphase/compressibleInterFoam/pEqn.H b/applications/solvers/multiphase/compressibleInterFoam/pEqn.H index eefe6bec08..7054fe1d44 100644 --- a/applications/solvers/multiphase/compressibleInterFoam/pEqn.H +++ b/applications/solvers/multiphase/compressibleInterFoam/pEqn.H @@ -1,6 +1,6 @@ { - volScalarField rUA = 1.0/UEqn.A(); - surfaceScalarField rUAf = fvc::interpolate(rUA); + volScalarField rAU = 1.0/UEqn.A(); + surfaceScalarField rAUf = fvc::interpolate(rAU); tmp p_rghEqnComp; @@ -24,27 +24,27 @@ } - U = rUA*UEqn.H(); + U = rAU*UEqn.H(); surfaceScalarField phiU ( "phiU", (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, rho, U, phi) + + fvc::ddtPhiCorr(rAU, rho, U, phi) ); phi = phiU + ( fvc::interpolate(interface.sigmaK())*fvc::snGrad(alpha1) - ghf*fvc::snGrad(rho) - )*rUAf*mesh.magSf(); + )*rAUf*mesh.magSf(); for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) { fvScalarMatrix p_rghEqnIncomp ( fvc::div(phi) - - fvm::laplacian(rUAf, p_rgh) + - fvm::laplacian(rAUf, p_rgh) ); solve @@ -75,7 +75,7 @@ } } - U += rUA*fvc::reconstruct((phi - phiU)/rUAf); + U += rAU*fvc::reconstruct((phi - phiU)/rAUf); U.correctBoundaryConditions(); p = max diff --git a/applications/solvers/multiphase/interPhaseChangeFoam/pEqn.H b/applications/solvers/multiphase/interPhaseChangeFoam/pEqn.H index cb42a4474a..4f4e68cb59 100644 --- a/applications/solvers/multiphase/interPhaseChangeFoam/pEqn.H +++ b/applications/solvers/multiphase/interPhaseChangeFoam/pEqn.H @@ -1,14 +1,14 @@ { - volScalarField rUA = 1.0/UEqn.A(); - surfaceScalarField rUAf = fvc::interpolate(rUA); + volScalarField rAU = 1.0/UEqn.A(); + surfaceScalarField rAUf = fvc::interpolate(rAU); - U = rUA*UEqn.H(); + U = rAU*UEqn.H(); surfaceScalarField phiU ( "phiU", (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, rho, U, phi) + + fvc::ddtPhiCorr(rAU, rho, U, phi) ); adjustPhi(phiU, U, p_rgh); @@ -17,7 +17,7 @@ ( fvc::interpolate(interface.sigmaK())*fvc::snGrad(alpha1) - ghf*fvc::snGrad(rho) - )*rUAf*mesh.magSf(); + )*rAUf*mesh.magSf(); Pair > vDotP = twoPhaseProperties->vDotP(); const volScalarField& vDotcP = vDotP[0](); @@ -27,7 +27,7 @@ { fvScalarMatrix p_rghEqn ( - fvc::div(phi) - fvm::laplacian(rUAf, p_rgh) + fvc::div(phi) - fvm::laplacian(rAUf, p_rgh) - (vDotvP - vDotcP)*(pSat - rho*gh) + fvm::Sp(vDotvP - vDotcP, p_rgh) ); @@ -52,7 +52,7 @@ } } - U += rUA*fvc::reconstruct((phi - phiU)/rUAf); + U += rAU*fvc::reconstruct((phi - phiU)/rAUf); U.correctBoundaryConditions(); #include "continuityErrs.H" diff --git a/applications/solvers/multiphase/settlingFoam/pEqn.H b/applications/solvers/multiphase/settlingFoam/pEqn.H index 3d1e6816d7..806909ffe7 100644 --- a/applications/solvers/multiphase/settlingFoam/pEqn.H +++ b/applications/solvers/multiphase/settlingFoam/pEqn.H @@ -1,27 +1,27 @@ -volScalarField rUA = 1.0/UEqn.A(); +volScalarField rAU = 1.0/UEqn.A(); -surfaceScalarField rUAf +surfaceScalarField rAUf ( "(rho*(1|A(U)))", - fvc::interpolate(rho)*fvc::interpolate(rUA) + fvc::interpolate(rho)*fvc::interpolate(rAU) ); -U = rUA*UEqn.H(); +U = rAU*UEqn.H(); phi = fvc::interpolate(rho) *( (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, rho, U, phi) + + fvc::ddtPhiCorr(rAU, rho, U, phi) ); surfaceScalarField phiU("phiU", phi); -phi -= ghf*fvc::snGrad(rho)*rUAf*mesh.magSf(); +phi -= ghf*fvc::snGrad(rho)*rAUf*mesh.magSf(); for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) { fvScalarMatrix p_rghEqn ( - fvm::laplacian(rUAf, p_rgh) == fvc::ddt(rho) + fvc::div(phi) + fvm::laplacian(rAUf, p_rgh) == fvc::ddt(rho) + fvc::div(phi) ); p_rghEqn.setReference(pRefCell, getRefCellValue(p_rgh, pRefCell)); @@ -49,5 +49,5 @@ if (p_rgh.needReference()) #include "rhoEqn.H" #include "compressibleContinuityErrs.H" -U += rUA*fvc::reconstruct((phi - phiU)/rUAf); +U += rAU*fvc::reconstruct((phi - phiU)/rAUf); U.correctBoundaryConditions(); diff --git a/applications/test/LduMatrix/LduMatrixTest3.C b/applications/test/LduMatrix/LduMatrixTest3.C index 741e07d990..35e8a4ab85 100644 --- a/applications/test/LduMatrix/LduMatrixTest3.C +++ b/applications/test/LduMatrix/LduMatrixTest3.C @@ -102,11 +102,11 @@ int main(int argc, char *argv[]) for (int corr=0; corr("(1|A(" + U_.name() + "))"); // Integrate flow variables over cell set scalar volTot = 0.0; scalar magUbarAve = 0.0; - scalar rUAave = 0.0; + scalar rAUave = 0.0; forAllConstIter(cellSet, selectedCellSet_, iter) { label cellI = iter.key(); @@ -176,27 +176,27 @@ void Foam::pressureGradientExplicitSource::update() volTot += volCell; magUbarAve += (flowDir_ & U_[cellI])*volCell; - rUAave += rUA[cellI]*volCell; + rAUave += rAU[cellI]*volCell; } // Collect across all processors reduce(volTot, sumOp()); reduce(magUbarAve, sumOp()); - reduce(rUAave, sumOp()); + reduce(rAUave, sumOp()); // Volume averages magUbarAve /= volTot; - rUAave /= volTot; + rAUave /= volTot; // Calculate the pressure gradient increment needed to adjust the average // flow-rate to the desired value - scalar gradPplus = (mag(Ubar_) - magUbarAve)/rUAave; + scalar gradPplus = (mag(Ubar_) - magUbarAve)/rAUave; // Apply correction to velocity field forAllConstIter(cellSet, selectedCellSet_, iter) { label cellI = iter.key(); - U_[cellI] += flowDir_*rUA[cellI]*gradPplus; + U_[cellI] += flowDir_*rAU[cellI]*gradPplus; } // Update pressure gradient diff --git a/tutorials/lagrangian/rhoPisoTwinParcelFoam/rhoPisoTwinParcelFoam/pEqn.H b/tutorials/lagrangian/rhoPisoTwinParcelFoam/rhoPisoTwinParcelFoam/pEqn.H index 9443f909a3..3d414f4af6 100644 --- a/tutorials/lagrangian/rhoPisoTwinParcelFoam/rhoPisoTwinParcelFoam/pEqn.H +++ b/tutorials/lagrangian/rhoPisoTwinParcelFoam/rhoPisoTwinParcelFoam/pEqn.H @@ -1,7 +1,7 @@ rho = thermo.rho(); -volScalarField rUA = 1.0/UEqn.A(); -U = rUA*UEqn.H(); +volScalarField rAU = 1.0/UEqn.A(); +U = rAU*UEqn.H(); if (transonic) { @@ -11,7 +11,7 @@ if (transonic) fvc::interpolate(psi) *( (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, rho, U, phi) + + fvc::ddtPhiCorr(rAU, rho, U, phi) ) ); @@ -21,7 +21,7 @@ if (transonic) ( fvm::ddt(psi, p) + fvm::div(phid, p) - - fvm::laplacian(rho*rUA, p) + - fvm::laplacian(rho*rAU, p) ); pEqn.solve(); @@ -38,7 +38,7 @@ else fvc::interpolate(rho) *( (fvc::interpolate(U) & mesh.Sf()) - + fvc::ddtPhiCorr(rUA, rho, U, phi) + + fvc::ddtPhiCorr(rAU, rho, U, phi) ); for (int nonOrth=0; nonOrth<=nNonOrthCorr; nonOrth++) @@ -47,7 +47,7 @@ else ( fvm::ddt(psi, p) + fvc::div(phi) - - fvm::laplacian(rho*rUA, p) + - fvm::laplacian(rho*rAU, p) ); pEqn.solve(); @@ -62,7 +62,7 @@ else #include "rhoEqn.H" #include "compressibleContinuityErrs.H" -U -= rUA*fvc::grad(p); +U -= rAU*fvc::grad(p); U.correctBoundaryConditions(); DpDt = fvc::DDt(surfaceScalarField("phiU", phi/fvc::interpolate(rho)), p); diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/fvSchemes b/tutorials/multiphase/cavitatingFoam/les/throttle/system/fvSchemes index ea089af844..6de4135a48 100644 --- a/tutorials/multiphase/cavitatingFoam/les/throttle/system/fvSchemes +++ b/tutorials/multiphase/cavitatingFoam/les/throttle/system/fvSchemes @@ -44,7 +44,7 @@ laplacianSchemes laplacian(nuf,rhoU) Gauss linear corrected; laplacian(muEff,U) Gauss linear corrected; laplacian(rrhoUAf,p) Gauss linear corrected; - laplacian(rUAf,p) Gauss linear corrected; + laplacian(rAUf,p) Gauss linear corrected; laplacian(DkEff,k) Gauss linear corrected; laplacian(1,p) Gauss linear corrected; } diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/fvSchemes b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/fvSchemes index ea089af844..6de4135a48 100644 --- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/fvSchemes +++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/fvSchemes @@ -44,7 +44,7 @@ laplacianSchemes laplacian(nuf,rhoU) Gauss linear corrected; laplacian(muEff,U) Gauss linear corrected; laplacian(rrhoUAf,p) Gauss linear corrected; - laplacian(rUAf,p) Gauss linear corrected; + laplacian(rAUf,p) Gauss linear corrected; laplacian(DkEff,k) Gauss linear corrected; laplacian(1,p) Gauss linear corrected; } diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/fvSchemes b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/fvSchemes index 48be074223..f3c3cc3d66 100644 --- a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/fvSchemes +++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/fvSchemes @@ -45,7 +45,7 @@ laplacianSchemes laplacian(nuf,rhoU) Gauss linear corrected; laplacian(muEff,U) Gauss linear corrected; laplacian(rrhoUAf,p) Gauss linear corrected; - laplacian(rUAf,p) Gauss linear corrected; + laplacian(rAUf,p) Gauss linear corrected; laplacian(DomegaEff,omega) Gauss linear corrected; laplacian(DkEff,k) Gauss linear corrected; laplacian(1,p) Gauss linear corrected; From b8b3252a1693cd3a26d08beb4378496888905cb3 Mon Sep 17 00:00:00 2001 From: andy Date: Tue, 12 Oct 2010 09:58:41 +0100 Subject: [PATCH 06/13] STYLE: using rAU instead of rUA for kinematic surface film --- .../kinematicSingleLayer.C | 2506 ++++++++--------- 1 file changed, 1253 insertions(+), 1253 deletions(-) diff --git a/src/surfaceFilmModels/surfaceFilmModel/kinematicSingleLayer/kinematicSingleLayer.C b/src/surfaceFilmModels/surfaceFilmModel/kinematicSingleLayer/kinematicSingleLayer.C index 5655c4b6e9..5c81e24cc3 100644 --- a/src/surfaceFilmModels/surfaceFilmModel/kinematicSingleLayer/kinematicSingleLayer.C +++ b/src/surfaceFilmModels/surfaceFilmModel/kinematicSingleLayer/kinematicSingleLayer.C @@ -1,1253 +1,1253 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2009-2010 OpenCFD Ltd. - \\/ M anipulation | -------------------------------------------------------------------------------- -License - This file is part of OpenFOAM. - - OpenFOAM is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - OpenFOAM is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License - along with OpenFOAM. If not, see . - -\*---------------------------------------------------------------------------*/ - -#include "kinematicSingleLayer.H" -#include "fvm.H" -#include "fvcDiv.H" -#include "fvcLaplacian.H" -#include "fvcSnGrad.H" -#include "fvcReconstruct.H" -#include "fvcVolumeIntegrate.H" -#include "addToRunTimeSelectionTable.H" -#include "directMappedWallPolyPatch.H" - -// Sub-models -#include "injectionModel.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - namespace surfaceFilmModels - { - defineTypeNameAndDebug(kinematicSingleLayer, 0); - addToRunTimeSelectionTable - ( - surfaceFilmModel, - kinematicSingleLayer, - mesh - ); - } -} - - -// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // - -bool Foam::surfaceFilmModels::kinematicSingleLayer::read() -{ - if (surfaceFilmModel::read()) - { - solution().lookup("momentumPredictor") >> momentumPredictor_; - solution().lookup("nOuterCorr") >> nOuterCorr_; - solution().lookup("nCorr") >> nCorr_; - solution().lookup("nNonOrthCorr") >> nNonOrthCorr_; - - coeffs_.lookup("Cf") >> Cf_; - - return true; - } - else - { - return false; - } -} - - -void Foam::surfaceFilmModels::kinematicSingleLayer::initialise() -{ - if (debug) - { - Pout<< "kinematicSingleLayer::initialise()" << endl; - } - - label nBoundaryFaces = 0; - DynamicList