From 6a9cfbe53b98614a876758a4ce629986830999f9 Mon Sep 17 00:00:00 2001 From: Henry <Henry> Date: Tue, 4 Dec 2012 14:57:56 +0000 Subject: [PATCH] fvMesh: added delta() function which returns the face-delta surface field --- src/finiteVolume/fvMesh/fvMesh.H | 3 ++ src/finiteVolume/fvMesh/fvMeshGeometry.C | 47 ++++++++++++++++++++++++ 2 files changed, 50 insertions(+) diff --git a/src/finiteVolume/fvMesh/fvMesh.H b/src/finiteVolume/fvMesh/fvMesh.H index 97c1b0db589..7cb9d97a00b 100644 --- a/src/finiteVolume/fvMesh/fvMesh.H +++ b/src/finiteVolume/fvMesh/fvMesh.H @@ -312,6 +312,9 @@ public: //- Return face centres as surfaceVectorField const surfaceVectorField& Cf() const; + //- Return face deltas as surfaceVectorField + tmp<surfaceVectorField> delta() const; + // Edit diff --git a/src/finiteVolume/fvMesh/fvMeshGeometry.C b/src/finiteVolume/fvMesh/fvMeshGeometry.C index 5abdb45d118..ddd395a7229 100644 --- a/src/finiteVolume/fvMesh/fvMeshGeometry.C +++ b/src/finiteVolume/fvMesh/fvMeshGeometry.C @@ -372,6 +372,53 @@ const surfaceVectorField& fvMesh::Cf() const } +tmp<surfaceVectorField> fvMesh::delta() const +{ + if (debug) + { + Info<< "void fvMesh::delta() : " + << "calculating face deltas" + << endl; + } + + tmp<surfaceVectorField> tdelta + ( + new surfaceVectorField + ( + IOobject + ( + "delta", + pointsInstance(), + meshSubDir, + *this, + IOobject::NO_READ, + IOobject::NO_WRITE, + false + ), + *this, + dimLength + ) + ); + surfaceVectorField& delta = tdelta(); + + const volVectorField& C = this->C(); + const labelUList& owner = this->owner(); + const labelUList& neighbour = this->neighbour(); + + forAll(owner, facei) + { + delta[facei] = C[neighbour[facei]] - C[owner[facei]]; + } + + forAll(delta.boundaryField(), patchi) + { + delta.boundaryField()[patchi] = boundary()[patchi].delta(); + } + + return tdelta; +} + + const surfaceScalarField& fvMesh::phi() const { if (!phiPtr_) -- GitLab