diff --git a/src/finiteVolume/fvMesh/wallDist/nearWallDist.C b/src/finiteVolume/fvMesh/wallDist/nearWallDist.C index eaa3cc3b79..1c2266c3fe 100644 --- a/src/finiteVolume/fvMesh/wallDist/nearWallDist.C +++ b/src/finiteVolume/fvMesh/wallDist/nearWallDist.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -31,7 +31,7 @@ License // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // -void Foam::nearWallDist::doAll() +void Foam::nearWallDist::calculate() { cellDistFuncs wallUtils(mesh_); @@ -101,7 +101,7 @@ Foam::nearWallDist::nearWallDist(const Foam::fvMesh& mesh) ), mesh_(mesh) { - doAll(); + calculate(); } @@ -115,16 +115,28 @@ Foam::nearWallDist::~nearWallDist() void Foam::nearWallDist::correct() { - if (mesh_.changing()) + if (mesh_.topoChanging()) { - // Update size of GeometricBoundaryField - forAll(mesh_.boundary(), patchI) + const DimensionedField& V = mesh_.V(); + const fvBoundaryMesh& bnd = mesh_.boundary(); + + this->setSize(bnd.size()); + forAll(*this, patchI) { - operator[](patchI).setSize(mesh_.boundary()[patchI].size()); + this->set + ( + patchI, + fvPatchField::New + ( + calculatedFvPatchScalarField::typeName, + bnd[patchI], + V + ) + ); } } - doAll(); + calculate(); } diff --git a/src/finiteVolume/fvMesh/wallDist/nearWallDist.H b/src/finiteVolume/fvMesh/wallDist/nearWallDist.H index d8fe6ca387..284a60583f 100644 --- a/src/finiteVolume/fvMesh/wallDist/nearWallDist.H +++ b/src/finiteVolume/fvMesh/wallDist/nearWallDist.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -38,7 +38,6 @@ SourceFiles #include "volFields.H" - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam @@ -47,7 +46,7 @@ namespace Foam class fvMesh; /*---------------------------------------------------------------------------*\ - Class nearWallDist Declaration + Class nearWallDist Declaration \*---------------------------------------------------------------------------*/ class nearWallDist @@ -62,8 +61,8 @@ class nearWallDist // Private Member Functions - //- Do all calculations. - void doAll(); + //- Do all calculations + void calculate(); //- Disallow default bitwise copy construct nearWallDist(const nearWallDist&);