diff --git a/src/finiteVolume/fvMesh/fvPatches/basic/coupled/coupledFvPatch.C b/src/finiteVolume/fvMesh/fvPatches/basic/coupled/coupledFvPatch.C index cfefade9fa90c681d79472247f026bb6436bb20e..bc434e21a8dd986c15513950f1565e84b07b2aec 100644 --- a/src/finiteVolume/fvMesh/fvPatches/basic/coupled/coupledFvPatch.C +++ b/src/finiteVolume/fvMesh/fvPatches/basic/coupled/coupledFvPatch.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 @@ -21,32 +21,30 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. -Description - coupledFvPatch is an abstract base class for patches that couple regions - of the computational domain e.g. cyclic and processor-processor links. - \*---------------------------------------------------------------------------*/ #include "coupledFvPatch.H" -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // namespace Foam { - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -defineTypeNameAndDebug(coupledFvPatch, 0); + defineTypeNameAndDebug(coupledFvPatch, 0); +} // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // -coupledFvPatch::~coupledFvPatch() +Foam::coupledFvPatch::~coupledFvPatch() {} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +Foam::tmp<Foam::vectorField> Foam::coupledFvPatch::delta() const +{ + return Cf() - Cn(); +} -} // End namespace Foam // ************************************************************************* // diff --git a/src/finiteVolume/fvMesh/fvPatches/constraint/cyclic/cyclicFvPatch.C b/src/finiteVolume/fvMesh/fvPatches/constraint/cyclic/cyclicFvPatch.C index d127cf3a022750d308ebe59512c5045d20ecfbdb..5b6ed73144675f19d52bac221012e407d7e9180f 100644 --- a/src/finiteVolume/fvMesh/fvPatches/constraint/cyclic/cyclicFvPatch.C +++ b/src/finiteVolume/fvMesh/fvPatches/constraint/cyclic/cyclicFvPatch.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 @@ -39,13 +39,12 @@ namespace Foam // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -// Make patch weighting factors void Foam::cyclicFvPatch::makeWeights(scalarField& w) const { const cyclicFvPatch& nbrPatch = neighbFvPatch(); - const scalarField deltas(nf() & fvPatch::delta()); - const scalarField nbrDeltas(nbrPatch.nf() & nbrPatch.fvPatch::delta()); + const scalarField deltas(nf()&coupledFvPatch::delta()); + const scalarField nbrDeltas(nbrPatch.nf()&nbrPatch.coupledFvPatch::delta()); forAll(deltas, facei) { @@ -57,11 +56,10 @@ void Foam::cyclicFvPatch::makeWeights(scalarField& w) const } -// Return delta (P to N) vectors across coupled patch Foam::tmp<Foam::vectorField> Foam::cyclicFvPatch::delta() const { - const vectorField patchD(fvPatch::delta()); - const vectorField nbrPatchD(neighbFvPatch().fvPatch::delta()); + const vectorField patchD(coupledFvPatch::delta()); + const vectorField nbrPatchD(neighbFvPatch().coupledFvPatch::delta()); tmp<vectorField> tpdv(new vectorField(patchD.size())); vectorField& pdv = tpdv(); diff --git a/src/finiteVolume/fvMesh/fvPatches/constraint/cyclicACMI/cyclicACMIFvPatch.C b/src/finiteVolume/fvMesh/fvPatches/constraint/cyclicACMI/cyclicACMIFvPatch.C index fe674cf98e3c5e5d58fa5d8ce3559e62dba00a29..b87157e34335a9914a7999cbd612c130733f350d 100644 --- a/src/finiteVolume/fvMesh/fvPatches/constraint/cyclicACMI/cyclicACMIFvPatch.C +++ b/src/finiteVolume/fvMesh/fvPatches/constraint/cyclicACMI/cyclicACMIFvPatch.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2013-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -36,6 +36,7 @@ namespace Foam addToRunTimeSelectionTable(fvPatch, cyclicACMIFvPatch, polyPatch); } + // * * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * // void Foam::cyclicACMIFvPatch::updateAreas() const @@ -82,13 +83,13 @@ void Foam::cyclicACMIFvPatch::makeWeights(scalarField& w) const const cyclicACMIFvPatch& nbrPatch = neighbFvPatch(); const fvPatch& nbrPatchNonOverlap = nonOverlapPatch(); - const scalarField deltas(nf() & fvPatch::delta()); + const scalarField deltas(nf() & coupledFvPatch::delta()); const scalarField nbrDeltas ( interpolate ( - nbrPatch.nf() & nbrPatch.fvPatch::delta(), + nbrPatch.nf() & nbrPatch.coupledFvPatch::delta(), nbrPatchNonOverlap.nf() & nbrPatchNonOverlap.delta() ) ); @@ -124,13 +125,13 @@ Foam::tmp<Foam::vectorField> Foam::cyclicACMIFvPatch::delta() const const cyclicACMIFvPatch& nbrPatchCoupled = neighbFvPatch(); const fvPatch& nbrPatchNonOverlap = nonOverlapPatch(); - const vectorField patchD(fvPatch::delta()); + const vectorField patchD(coupledFvPatch::delta()); vectorField nbrPatchD ( interpolate ( - nbrPatchCoupled.fvPatch::delta(), + nbrPatchCoupled.coupledFvPatch::delta(), nbrPatchNonOverlap.delta() ) ); @@ -175,7 +176,7 @@ Foam::tmp<Foam::vectorField> Foam::cyclicACMIFvPatch::delta() const } else { - return fvPatch::delta(); + return coupledFvPatch::delta(); } } diff --git a/src/finiteVolume/fvMesh/fvPatches/constraint/cyclicAMI/cyclicAMIFvPatch.C b/src/finiteVolume/fvMesh/fvPatches/constraint/cyclicAMI/cyclicAMIFvPatch.C index 584e9d77314ed4d9078786093d0d85e030232e03..5d8935139df4c38d726ef9fc50338d5413c9584b 100644 --- a/src/finiteVolume/fvMesh/fvPatches/constraint/cyclicAMI/cyclicAMIFvPatch.C +++ b/src/finiteVolume/fvMesh/fvPatches/constraint/cyclicAMI/cyclicAMIFvPatch.C @@ -51,7 +51,7 @@ void Foam::cyclicAMIFvPatch::makeWeights(scalarField& w) const { const cyclicAMIFvPatch& nbrPatch = neighbFvPatch(); - const scalarField deltas(nf() & fvPatch::delta()); + const scalarField deltas(nf() & coupledFvPatch::delta()); tmp<scalarField> tnbrDeltas; if (applyLowWeightCorrection()) @@ -59,13 +59,14 @@ void Foam::cyclicAMIFvPatch::makeWeights(scalarField& w) const tnbrDeltas = interpolate ( - nbrPatch.nf() & nbrPatch.fvPatch::delta(), + nbrPatch.nf() & nbrPatch.coupledFvPatch::delta(), scalarField(this->size(), 1.0) ); } else { - tnbrDeltas = interpolate(nbrPatch.nf() & nbrPatch.fvPatch::delta()); + tnbrDeltas = + interpolate(nbrPatch.nf() & nbrPatch.coupledFvPatch::delta()); } const scalarField& nbrDeltas = tnbrDeltas(); @@ -92,7 +93,7 @@ Foam::tmp<Foam::vectorField> Foam::cyclicAMIFvPatch::delta() const if (coupled()) { - const vectorField patchD(fvPatch::delta()); + const vectorField patchD(coupledFvPatch::delta()); tmp<vectorField> tnbrPatchD; if (applyLowWeightCorrection()) @@ -100,13 +101,13 @@ Foam::tmp<Foam::vectorField> Foam::cyclicAMIFvPatch::delta() const tnbrPatchD = interpolate ( - nbrPatch.fvPatch::delta(), + nbrPatch.coupledFvPatch::delta(), vectorField(this->size(), vector::zero) ); } else { - tnbrPatchD = interpolate(nbrPatch.fvPatch::delta()); + tnbrPatchD = interpolate(nbrPatch.coupledFvPatch::delta()); } const vectorField& nbrPatchD = tnbrPatchD(); @@ -140,7 +141,7 @@ Foam::tmp<Foam::vectorField> Foam::cyclicAMIFvPatch::delta() const } else { - return fvPatch::delta(); + return coupledFvPatch::delta(); } } diff --git a/src/finiteVolume/fvMesh/fvPatches/constraint/processor/processorFvPatch.C b/src/finiteVolume/fvMesh/fvPatches/constraint/processor/processorFvPatch.C index 9a2c1568a971c177c422301559c65385db661cea..66f0b756fbb82cede7e6cd18397e568dade61b27 100644 --- a/src/finiteVolume/fvMesh/fvPatches/constraint/processor/processorFvPatch.C +++ b/src/finiteVolume/fvMesh/fvPatches/constraint/processor/processorFvPatch.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 @@ -27,20 +27,18 @@ License #include "addToRunTimeSelectionTable.H" #include "transformField.H" -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // namespace Foam { - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -defineTypeNameAndDebug(processorFvPatch, 0); -addToRunTimeSelectionTable(fvPatch, processorFvPatch, polyPatch); + defineTypeNameAndDebug(processorFvPatch, 0); + addToRunTimeSelectionTable(fvPatch, processorFvPatch, polyPatch); +} // * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // -void processorFvPatch::makeWeights(scalarField& w) const +void Foam::processorFvPatch::makeWeights(scalarField& w) const { if (Pstream::parRun()) { @@ -56,7 +54,8 @@ void processorFvPatch::makeWeights(scalarField& w) const - procPolyPatch_.neighbFaceCellCentres()) ); - w = neighbFaceCentresCn/((nf()&fvPatch::delta()) + neighbFaceCentresCn); + w = neighbFaceCentresCn + /((nf()&coupledFvPatch::delta()) + neighbFaceCentresCn); } else { @@ -65,7 +64,7 @@ void processorFvPatch::makeWeights(scalarField& w) const } -tmp<vectorField> processorFvPatch::delta() const +Foam::tmp<Foam::vectorField> Foam::processorFvPatch::delta() const { if (Pstream::parRun()) { @@ -73,7 +72,7 @@ tmp<vectorField> processorFvPatch::delta() const if (parallel()) { return - fvPatch::delta() + coupledFvPatch::delta() - ( procPolyPatch_.neighbFaceCentres() - procPolyPatch_.neighbFaceCellCentres() @@ -82,7 +81,7 @@ tmp<vectorField> processorFvPatch::delta() const else { return - fvPatch::delta() + coupledFvPatch::delta() - transform ( forwardT(), @@ -95,12 +94,12 @@ tmp<vectorField> processorFvPatch::delta() const } else { - return fvPatch::delta(); + return coupledFvPatch::delta(); } } -tmp<labelField> processorFvPatch::interfaceInternalField +Foam::tmp<Foam::labelField> Foam::processorFvPatch::interfaceInternalField ( const labelUList& internalData ) const @@ -109,7 +108,7 @@ tmp<labelField> processorFvPatch::interfaceInternalField } -void processorFvPatch::initInternalFieldTransfer +void Foam::processorFvPatch::initInternalFieldTransfer ( const Pstream::commsTypes commsType, const labelUList& iF @@ -119,7 +118,7 @@ void processorFvPatch::initInternalFieldTransfer } -tmp<labelField> processorFvPatch::internalFieldTransfer +Foam::tmp<Foam::labelField> Foam::processorFvPatch::internalFieldTransfer ( const Pstream::commsTypes commsType, const labelUList& @@ -129,8 +128,4 @@ tmp<labelField> processorFvPatch::internalFieldTransfer } -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - // ************************************************************************* // diff --git a/src/finiteVolume/fvMesh/fvPatches/fvPatch/fvPatch.C b/src/finiteVolume/fvMesh/fvPatches/fvPatch/fvPatch.C index e7dd41207e179ec4c42c8e153fae34bee4047374..d7f1bcd39e4e5756f15402ecc1096e6769bb10e1 100644 --- a/src/finiteVolume/fvMesh/fvPatches/fvPatch/fvPatch.C +++ b/src/finiteVolume/fvMesh/fvPatches/fvPatch/fvPatch.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -40,6 +40,7 @@ namespace Foam addToRunTimeSelectionTable(fvPatch, fvPatch, polyPatch); } + // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::fvPatch::fvPatch(const polyPatch& p, const fvBoundaryMesh& bm)