From 376912eff2e820418c86535bfdfc5ea872874d25 Mon Sep 17 00:00:00 2001 From: sergio <sergio> Date: Tue, 14 Feb 2017 08:30:53 -0800 Subject: [PATCH] ENH: adding runTime selectable wallDist calculation to inverseDistanceDiffusivity --- .../inverseDistanceDiffusivity.C | 45 +++++-------------- .../inverseDistanceDiffusivity.H | 4 +- 2 files changed, 12 insertions(+), 37 deletions(-) diff --git a/src/fvMotionSolver/motionDiffusivity/inverseDistance/inverseDistanceDiffusivity.C b/src/fvMotionSolver/motionDiffusivity/inverseDistance/inverseDistanceDiffusivity.C index 273e91e5dec..d628d09563d 100644 --- a/src/fvMotionSolver/motionDiffusivity/inverseDistance/inverseDistanceDiffusivity.C +++ b/src/fvMotionSolver/motionDiffusivity/inverseDistance/inverseDistanceDiffusivity.C @@ -3,7 +3,7 @@ \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation - \\/ M anipulation | + \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -29,6 +29,7 @@ License #include "HashSet.H" #include "surfaceInterpolate.H" #include "zeroGradientFvPatchFields.H" +#include "wallDist.H" // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // @@ -68,42 +69,18 @@ Foam::inverseDistanceDiffusivity::~inverseDistanceDiffusivity() // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -Foam::tmp<Foam::scalarField> Foam::inverseDistanceDiffusivity::y() const -{ - labelHashSet patchSet(mesh().boundaryMesh().patchSet(patchNames_)); - - if (patchSet.size()) - { - return tmp<scalarField> - ( - new scalarField(patchWave(mesh(), patchSet, false).distance()) - ); - } - else - { - return tmp<scalarField>(new scalarField(mesh().nCells(), 1.0)); - } -} - - void Foam::inverseDistanceDiffusivity::correct() { - volScalarField y_ - ( - IOobject + faceDiffusivity_ = + 1.0 + /fvc::interpolate ( - "y", - mesh().time().timeName(), - mesh() - ), - mesh(), - dimless, - zeroGradientFvPatchScalarField::typeName - ); - y_.primitiveFieldRef() = y(); - y_.correctBoundaryConditions(); - - faceDiffusivity_ = 1.0/fvc::interpolate(y_); + wallDist::New + ( + mesh(), + mesh().boundaryMesh().patchSet(patchNames_) + ).y() + ); } diff --git a/src/fvMotionSolver/motionDiffusivity/inverseDistance/inverseDistanceDiffusivity.H b/src/fvMotionSolver/motionDiffusivity/inverseDistance/inverseDistanceDiffusivity.H index e5f6f3c9a56..05e5439479a 100644 --- a/src/fvMotionSolver/motionDiffusivity/inverseDistance/inverseDistanceDiffusivity.H +++ b/src/fvMotionSolver/motionDiffusivity/inverseDistance/inverseDistanceDiffusivity.H @@ -3,7 +3,7 @@ \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation - \\/ M anipulation | + \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -60,8 +60,6 @@ class inverseDistanceDiffusivity // Private Member Functions - //- Return patch-cell-centre distance field - tmp<scalarField> y() const; //- Disallow default bitwise copy construct inverseDistanceDiffusivity(const inverseDistanceDiffusivity&); -- GitLab