From 4a45e4f519feef615630ca50dc13f8f0517c17f9 Mon Sep 17 00:00:00 2001 From: Henry Weller Date: Mon, 5 Dec 2016 08:44:43 +0000 Subject: [PATCH] thermalBaffle: ensure mappedPatchBase is updated following mesh topology changes Patch contributed by Mattijs Janssens Resolves bug-report http://bugs.openfoam.org/view.php?id=2323 --- ...allHeatFluxTemperatureFvPatchScalarField.C | 1 - .../thermalBaffle1DFvPatchScalarField.C | 3 ++- .../mappedField/mappedFieldFvPatchField.C | 21 +++++++++++++++++++ .../mappedField/mappedFieldFvPatchField.H | 16 ++++++++++++++ .../mappedFixedValueFvPatchField.C | 1 - .../pyrolysisModel/pyrolysisModel.C | 2 -- .../thermalBaffleFvPatchScalarField.C | 1 - 7 files changed, 39 insertions(+), 6 deletions(-) diff --git a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.C b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.C index 7401f2746..4c74daaf8 100644 --- a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.C +++ b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/derivedFvPatchFields/externalWallHeatFluxTemperature/externalWallHeatFluxTemperatureFvPatchScalarField.C @@ -27,7 +27,6 @@ License #include "addToRunTimeSelectionTable.H" #include "fvPatchFieldMapper.H" #include "volFields.H" -#include "mappedPatchBase.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarField.C b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarField.C index afbad9981..71c695e80 100644 --- a/src/TurbulenceModels/compressible/turbulentFluidThermoModels/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarField.C +++ b/src/TurbulenceModels/compressible/turbulentFluidThermoModels/derivedFvPatchFields/thermalBaffle1D/thermalBaffle1DFvPatchScalarField.C @@ -25,7 +25,6 @@ License #include "volFields.H" #include "surfaceFields.H" -#include "mappedPatchBase.H" #include "turbulentFluidThermoModel.H" #include "mapDistribute.H" @@ -298,6 +297,8 @@ void thermalBaffle1DFvPatchScalarField::autoMap const fvPatchFieldMapper& m ) { + mappedPatchBase::clearOut(); + mixedFvPatchScalarField::autoMap(m); if (this->owner()) diff --git a/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedFieldFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedFieldFvPatchField.C index dafc629b5..ee4b7fa9d 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedFieldFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedFieldFvPatchField.C @@ -138,6 +138,27 @@ Foam::mappedFieldFvPatchField::mappedFieldFvPatchField // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // +template +void Foam::mappedFieldFvPatchField::autoMap +( + const fvPatchFieldMapper& m +) +{ + mappedPatchBase::clearOut(); +} + + +template +void Foam::mappedFieldFvPatchField::rmap +( + const fvPatchScalarField& ptf, + const labelList& addr +) +{ + mappedPatchBase::clearOut(); +} + + template void Foam::mappedFieldFvPatchField::updateCoeffs() { diff --git a/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedFieldFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedFieldFvPatchField.H index 2c2026545..ab52c3d32 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedFieldFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/mappedField/mappedFieldFvPatchField.H @@ -193,6 +193,22 @@ public: // Member functions + // Mapping functions + + //- Map (and resize as needed) from self given a mapping object + virtual void autoMap + ( + const fvPatchFieldMapper& + ); + + //- Reverse map the given fvPatchField onto this fvPatchField + virtual void rmap + ( + const fvPatchScalarField&, + const labelList& + ); + + // Evaluation functions //- Update the coefficients associated with the patch field diff --git a/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedValue/mappedFixedValueFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedValue/mappedFixedValueFvPatchField.C index 13e09b1d8..9754e04a6 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedValue/mappedFixedValueFvPatchField.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/mappedFixedValue/mappedFixedValueFvPatchField.C @@ -24,7 +24,6 @@ License \*---------------------------------------------------------------------------*/ #include "mappedFixedValueFvPatchField.H" -#include "mappedPatchBase.H" #include "volFields.H" // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // diff --git a/src/regionModels/pyrolysisModels/pyrolysisModel/pyrolysisModel.C b/src/regionModels/pyrolysisModels/pyrolysisModel/pyrolysisModel.C index 2b1f968f6..61f550234 100644 --- a/src/regionModels/pyrolysisModels/pyrolysisModel/pyrolysisModel.C +++ b/src/regionModels/pyrolysisModels/pyrolysisModel/pyrolysisModel.C @@ -24,8 +24,6 @@ License \*---------------------------------------------------------------------------*/ #include "pyrolysisModel.H" -#include "fvMesh.H" -#include "mappedFieldFvPatchField.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/src/regionModels/thermalBaffleModels/derivedFvPatchFields/thermalBaffle/thermalBaffleFvPatchScalarField.C b/src/regionModels/thermalBaffleModels/derivedFvPatchFields/thermalBaffle/thermalBaffleFvPatchScalarField.C index 70a3a0f2c..e7e9f9af1 100644 --- a/src/regionModels/thermalBaffleModels/derivedFvPatchFields/thermalBaffle/thermalBaffleFvPatchScalarField.C +++ b/src/regionModels/thermalBaffleModels/derivedFvPatchFields/thermalBaffle/thermalBaffleFvPatchScalarField.C @@ -26,7 +26,6 @@ License #include "thermalBaffleFvPatchScalarField.H" #include "addToRunTimeSelectionTable.H" #include "emptyPolyPatch.H" -#include "polyPatch.H" #include "mappedWallPolyPatch.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //