ENH: for-range, forAllIters() ... in genericPatchFields/

- reduced clutter when iterating over containers
This commit is contained in:
Mark Olesen
2019-01-07 09:20:51 +01:00
parent b771fbb09d
commit 15c53a2ef1
10 changed files with 160 additions and 384 deletions

View File

@ -227,7 +227,7 @@ Foam::genericFaPatchField<Type>::genericFaPatchField
<< exit(FatalIOError); << exit(FatalIOError);
} }
sphericalTensorFields_.insert(key, fPtr); sphTensorFields_.insert(key, fPtr);
} }
else if else if
( (
@ -356,7 +356,7 @@ Foam::genericFaPatchField<Type>::genericFaPatchField
{ {
sphericalTensor vs(l[0]); sphericalTensor vs(l[0]);
sphericalTensorFields_.insert sphTensorFields_.insert
( (
key, key,
autoPtr<sphericalTensorField>::New autoPtr<sphericalTensorField>::New
@ -431,12 +431,7 @@ Foam::genericFaPatchField<Type>::genericFaPatchField
actualTypeName_(ptf.actualTypeName_), actualTypeName_(ptf.actualTypeName_),
dict_(ptf.dict_) dict_(ptf.dict_)
{ {
forAllConstIter forAllConstIters(ptf.scalarFields_, iter)
(
HashPtrTable<scalarField>,
ptf.scalarFields_,
iter
)
{ {
scalarFields_.insert scalarFields_.insert
( (
@ -445,12 +440,7 @@ Foam::genericFaPatchField<Type>::genericFaPatchField
); );
} }
forAllConstIter forAllConstIters(ptf.vectorFields_, iter)
(
HashPtrTable<vectorField>,
ptf.vectorFields_,
iter
)
{ {
vectorFields_.insert vectorFields_.insert
( (
@ -459,26 +449,16 @@ Foam::genericFaPatchField<Type>::genericFaPatchField
); );
} }
forAllConstIter forAllConstIters(ptf.sphTensorFields_, iter)
(
HashPtrTable<sphericalTensorField>,
ptf.sphericalTensorFields_,
iter
)
{ {
sphericalTensorFields_.insert sphTensorFields_.insert
( (
iter.key(), iter.key(),
autoPtr<sphericalTensorField>::New(*iter(), mapper) autoPtr<sphericalTensorField>::New(*iter(), mapper)
); );
} }
forAllConstIter forAllConstIters(ptf.symmTensorFields_, iter)
(
HashPtrTable<symmTensorField>,
ptf.symmTensorFields_,
iter
)
{ {
symmTensorFields_.insert symmTensorFields_.insert
( (
@ -487,12 +467,7 @@ Foam::genericFaPatchField<Type>::genericFaPatchField
); );
} }
forAllConstIter forAllConstIters(ptf.tensorFields_, iter)
(
HashPtrTable<tensorField>,
ptf.tensorFields_,
iter
)
{ {
tensorFields_.insert tensorFields_.insert
( (
@ -514,7 +489,7 @@ Foam::genericFaPatchField<Type>::genericFaPatchField
dict_(ptf.dict_), dict_(ptf.dict_),
scalarFields_(ptf.scalarFields_), scalarFields_(ptf.scalarFields_),
vectorFields_(ptf.vectorFields_), vectorFields_(ptf.vectorFields_),
sphericalTensorFields_(ptf.sphericalTensorFields_), sphTensorFields_(ptf.sphTensorFields_),
symmTensorFields_(ptf.symmTensorFields_), symmTensorFields_(ptf.symmTensorFields_),
tensorFields_(ptf.tensorFields_) tensorFields_(ptf.tensorFields_)
{} {}
@ -532,7 +507,7 @@ Foam::genericFaPatchField<Type>::genericFaPatchField
dict_(ptf.dict_), dict_(ptf.dict_),
scalarFields_(ptf.scalarFields_), scalarFields_(ptf.scalarFields_),
vectorFields_(ptf.vectorFields_), vectorFields_(ptf.vectorFields_),
sphericalTensorFields_(ptf.sphericalTensorFields_), sphTensorFields_(ptf.sphTensorFields_),
symmTensorFields_(ptf.symmTensorFields_), symmTensorFields_(ptf.symmTensorFields_),
tensorFields_(ptf.tensorFields_) tensorFields_(ptf.tensorFields_)
{} {}
@ -548,52 +523,27 @@ void Foam::genericFaPatchField<Type>::autoMap
{ {
calculatedFaPatchField<Type>::autoMap(m); calculatedFaPatchField<Type>::autoMap(m);
forAllIter forAllIters(scalarFields_, iter)
(
HashPtrTable<scalarField>,
scalarFields_,
iter
)
{ {
iter()->autoMap(m); iter()->autoMap(m);
} }
forAllIter forAllIters(vectorFields_, iter)
(
HashPtrTable<vectorField>,
vectorFields_,
iter
)
{ {
iter()->autoMap(m); iter()->autoMap(m);
} }
forAllIter forAllIters(sphTensorFields_, iter)
(
HashPtrTable<sphericalTensorField>,
sphericalTensorFields_,
iter
)
{ {
iter()->autoMap(m); iter()->autoMap(m);
} }
forAllIter forAllIters(symmTensorFields_, iter)
(
HashPtrTable<symmTensorField>,
symmTensorFields_,
iter
)
{ {
iter()->autoMap(m); iter()->autoMap(m);
} }
forAllIter forAllIters(tensorFields_, iter)
(
HashPtrTable<tensorField>,
tensorFields_,
iter
)
{ {
iter()->autoMap(m); iter()->autoMap(m);
} }
@ -612,83 +562,53 @@ void Foam::genericFaPatchField<Type>::rmap
const genericFaPatchField<Type>& dptf = const genericFaPatchField<Type>& dptf =
refCast<const genericFaPatchField<Type>>(ptf); refCast<const genericFaPatchField<Type>>(ptf);
forAllIter forAllIters(scalarFields_, iter )
(
HashPtrTable<scalarField>,
scalarFields_,
iter
)
{ {
HashPtrTable<scalarField>::const_iterator dptfIter = const auto iter2 = dptf.scalarFields_.cfind(iter.key());
dptf.scalarFields_.find(iter.key());
if (dptfIter != dptf.scalarFields_.end()) if (iter.found())
{ {
iter()->rmap(*dptfIter(), addr); iter()->rmap(*iter2(), addr);
} }
} }
forAllIter forAllIters(vectorFields_, iter)
(
HashPtrTable<vectorField>,
vectorFields_,
iter
)
{ {
HashPtrTable<vectorField>::const_iterator dptfIter = const auto iter2 = dptf.vectorFields_.cfind(iter.key());
dptf.vectorFields_.find(iter.key());
if (dptfIter != dptf.vectorFields_.end()) if (iter.found())
{ {
iter()->rmap(*dptfIter(), addr); iter()->rmap(*iter2(), addr);
} }
} }
forAllIter forAllIters(sphTensorFields_, iter)
(
HashPtrTable<sphericalTensorField>,
sphericalTensorFields_,
iter
)
{ {
HashPtrTable<sphericalTensorField>::const_iterator dptfIter = const auto iter2 = dptf.sphTensorFields_.cfind(iter.key());
dptf.sphericalTensorFields_.find(iter.key());
if (dptfIter != dptf.sphericalTensorFields_.end()) if (iter.found())
{ {
iter()->rmap(*dptfIter(), addr); iter()->rmap(*iter2(), addr);
} }
} }
forAllIter forAllIters(symmTensorFields_, iter)
(
HashPtrTable<symmTensorField>,
symmTensorFields_,
iter
)
{ {
HashPtrTable<symmTensorField>::const_iterator dptfIter = const auto iter2 = dptf.symmTensorFields_.cfind(iter.key());
dptf.symmTensorFields_.find(iter.key());
if (dptfIter != dptf.symmTensorFields_.end()) if (iter.found())
{ {
iter()->rmap(*dptfIter(), addr); iter()->rmap(*iter2(), addr);
} }
} }
forAllIter forAllIters(tensorFields_, iter)
(
HashPtrTable<tensorField>,
tensorFields_,
iter
)
{ {
HashPtrTable<tensorField>::const_iterator dptfIter = const auto iter2 = dptf.tensorFields_.find(iter.key());
dptf.tensorFields_.find(iter.key());
if (dptfIter != dptf.tensorFields_.end()) if (iter.found())
{ {
iter()->rmap(*dptfIter(), addr); iter()->rmap(*iter2(), addr);
} }
} }
} }
@ -807,9 +727,9 @@ void Foam::genericFaPatchField<Type>::write(Ostream& os) const
vectorFields_.find(key)() vectorFields_.find(key)()
->writeEntry(key, os); ->writeEntry(key, os);
} }
else if (sphericalTensorFields_.found(key)) else if (sphTensorFields_.found(key))
{ {
sphericalTensorFields_.find(key)() sphTensorFields_.find(key)()
->writeEntry(key, os); ->writeEntry(key, os);
} }
else if (symmTensorFields_.found(key)) else if (symmTensorFields_.found(key))

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | \\ / A nd | Copyright (C) 2019 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
| Copyright (C) 2011-2016 OpenFOAM Foundation | Copyright (C) 2011-2016 OpenFOAM Foundation
@ -59,14 +59,15 @@ class genericFaPatchField
: :
public calculatedFaPatchField<Type> public calculatedFaPatchField<Type>
{ {
// Private data // Private Data
const word actualTypeName_; const word actualTypeName_;
dictionary dict_; dictionary dict_;
HashPtrTable<scalarField> scalarFields_; HashPtrTable<scalarField> scalarFields_;
HashPtrTable<vectorField> vectorFields_; HashPtrTable<vectorField> vectorFields_;
HashPtrTable<sphericalTensorField> sphericalTensorFields_; HashPtrTable<sphericalTensorField> sphTensorFields_;
HashPtrTable<symmTensorField> symmTensorFields_; HashPtrTable<symmTensorField> symmTensorFields_;
HashPtrTable<tensorField> tensorFields_; HashPtrTable<tensorField> tensorFields_;
@ -138,9 +139,9 @@ public:
} }
// Member functions // Member Functions
// Mapping functions // Mapping Functions
//- Map (and resize as needed) from self given a mapping object //- Map (and resize as needed) from self given a mapping object
virtual void autoMap virtual void autoMap
@ -156,7 +157,7 @@ public:
); );
// Evaluation functions // Evaluation Functions
//- Return the matrix diagonal coefficients corresponding to the //- Return the matrix diagonal coefficients corresponding to the
// evaluation of the value of this patchField with given weights // evaluation of the value of this patchField with given weights

View File

@ -227,7 +227,7 @@ Foam::genericFvPatchField<Type>::genericFvPatchField
<< exit(FatalIOError); << exit(FatalIOError);
} }
sphericalTensorFields_.insert(key, fPtr); sphTensorFields_.insert(key, fPtr);
} }
else if else if
( (
@ -356,7 +356,7 @@ Foam::genericFvPatchField<Type>::genericFvPatchField
{ {
sphericalTensor vs(l[0]); sphericalTensor vs(l[0]);
sphericalTensorFields_.insert sphTensorFields_.insert
( (
key, key,
autoPtr<sphericalTensorField>::New autoPtr<sphericalTensorField>::New
@ -431,12 +431,7 @@ Foam::genericFvPatchField<Type>::genericFvPatchField
actualTypeName_(ptf.actualTypeName_), actualTypeName_(ptf.actualTypeName_),
dict_(ptf.dict_) dict_(ptf.dict_)
{ {
forAllConstIter forAllConstIters(ptf.scalarFields_, iter)
(
HashPtrTable<scalarField>,
ptf.scalarFields_,
iter
)
{ {
scalarFields_.insert scalarFields_.insert
( (
@ -445,12 +440,7 @@ Foam::genericFvPatchField<Type>::genericFvPatchField
); );
} }
forAllConstIter forAllConstIters(ptf.vectorFields_, iter)
(
HashPtrTable<vectorField>,
ptf.vectorFields_,
iter
)
{ {
vectorFields_.insert vectorFields_.insert
( (
@ -459,26 +449,16 @@ Foam::genericFvPatchField<Type>::genericFvPatchField
); );
} }
forAllConstIter forAllConstIters(ptf.sphTensorFields_, iter)
(
HashPtrTable<sphericalTensorField>,
ptf.sphericalTensorFields_,
iter
)
{ {
sphericalTensorFields_.insert sphTensorFields_.insert
( (
iter.key(), iter.key(),
autoPtr<sphericalTensorField>::New(*iter(), mapper) autoPtr<sphericalTensorField>::New(*iter(), mapper)
); );
} }
forAllConstIter forAllConstIters(ptf.symmTensorFields_, iter)
(
HashPtrTable<symmTensorField>,
ptf.symmTensorFields_,
iter
)
{ {
symmTensorFields_.insert symmTensorFields_.insert
( (
@ -487,12 +467,7 @@ Foam::genericFvPatchField<Type>::genericFvPatchField
); );
} }
forAllConstIter forAllConstIters(ptf.tensorFields_, iter)
(
HashPtrTable<tensorField>,
ptf.tensorFields_,
iter
)
{ {
tensorFields_.insert tensorFields_.insert
( (
@ -514,7 +489,7 @@ Foam::genericFvPatchField<Type>::genericFvPatchField
dict_(ptf.dict_), dict_(ptf.dict_),
scalarFields_(ptf.scalarFields_), scalarFields_(ptf.scalarFields_),
vectorFields_(ptf.vectorFields_), vectorFields_(ptf.vectorFields_),
sphericalTensorFields_(ptf.sphericalTensorFields_), sphTensorFields_(ptf.sphTensorFields_),
symmTensorFields_(ptf.symmTensorFields_), symmTensorFields_(ptf.symmTensorFields_),
tensorFields_(ptf.tensorFields_) tensorFields_(ptf.tensorFields_)
{} {}
@ -532,7 +507,7 @@ Foam::genericFvPatchField<Type>::genericFvPatchField
dict_(ptf.dict_), dict_(ptf.dict_),
scalarFields_(ptf.scalarFields_), scalarFields_(ptf.scalarFields_),
vectorFields_(ptf.vectorFields_), vectorFields_(ptf.vectorFields_),
sphericalTensorFields_(ptf.sphericalTensorFields_), sphTensorFields_(ptf.sphTensorFields_),
symmTensorFields_(ptf.symmTensorFields_), symmTensorFields_(ptf.symmTensorFields_),
tensorFields_(ptf.tensorFields_) tensorFields_(ptf.tensorFields_)
{} {}
@ -548,52 +523,27 @@ void Foam::genericFvPatchField<Type>::autoMap
{ {
calculatedFvPatchField<Type>::autoMap(m); calculatedFvPatchField<Type>::autoMap(m);
forAllIter forAllIters(scalarFields_, iter)
(
HashPtrTable<scalarField>,
scalarFields_,
iter
)
{ {
iter()->autoMap(m); iter()->autoMap(m);
} }
forAllIter forAllIters(vectorFields_, iter)
(
HashPtrTable<vectorField>,
vectorFields_,
iter
)
{ {
iter()->autoMap(m); iter()->autoMap(m);
} }
forAllIter forAllIters(sphTensorFields_, iter)
(
HashPtrTable<sphericalTensorField>,
sphericalTensorFields_,
iter
)
{ {
iter()->autoMap(m); iter()->autoMap(m);
} }
forAllIter forAllIters(symmTensorFields_, iter)
(
HashPtrTable<symmTensorField>,
symmTensorFields_,
iter
)
{ {
iter()->autoMap(m); iter()->autoMap(m);
} }
forAllIter forAllIters(tensorFields_, iter)
(
HashPtrTable<tensorField>,
tensorFields_,
iter
)
{ {
iter()->autoMap(m); iter()->autoMap(m);
} }
@ -612,83 +562,53 @@ void Foam::genericFvPatchField<Type>::rmap
const genericFvPatchField<Type>& dptf = const genericFvPatchField<Type>& dptf =
refCast<const genericFvPatchField<Type>>(ptf); refCast<const genericFvPatchField<Type>>(ptf);
forAllIter forAllIters(scalarFields_, iter)
(
HashPtrTable<scalarField>,
scalarFields_,
iter
)
{ {
HashPtrTable<scalarField>::const_iterator dptfIter = const auto iter2 = dptf.scalarFields_.cfind(iter.key());
dptf.scalarFields_.find(iter.key());
if (dptfIter != dptf.scalarFields_.end()) if (iter2.found())
{ {
iter()->rmap(*dptfIter(), addr); iter()->rmap(*iter2(), addr);
} }
} }
forAllIter forAllIters(vectorFields_, iter)
(
HashPtrTable<vectorField>,
vectorFields_,
iter
)
{ {
HashPtrTable<vectorField>::const_iterator dptfIter = const auto iter2 = dptf.vectorFields_.find(iter.key());
dptf.vectorFields_.find(iter.key());
if (dptfIter != dptf.vectorFields_.end()) if (iter2.found())
{ {
iter()->rmap(*dptfIter(), addr); iter()->rmap(*iter2(), addr);
} }
} }
forAllIter forAllIters(sphTensorFields_, iter)
(
HashPtrTable<sphericalTensorField>,
sphericalTensorFields_,
iter
)
{ {
HashPtrTable<sphericalTensorField>::const_iterator dptfIter = const auto iter2 = dptf.sphTensorFields_.find(iter.key());
dptf.sphericalTensorFields_.find(iter.key());
if (dptfIter != dptf.sphericalTensorFields_.end()) if (iter2.found())
{ {
iter()->rmap(*dptfIter(), addr); iter()->rmap(*iter2(), addr);
} }
} }
forAllIter forAllIters(symmTensorFields_, iter)
(
HashPtrTable<symmTensorField>,
symmTensorFields_,
iter
)
{ {
HashPtrTable<symmTensorField>::const_iterator dptfIter = const auto iter2 = dptf.symmTensorFields_.find(iter.key());
dptf.symmTensorFields_.find(iter.key());
if (dptfIter != dptf.symmTensorFields_.end()) if (iter2.found())
{ {
iter()->rmap(*dptfIter(), addr); iter()->rmap(*iter2(), addr);
} }
} }
forAllIter forAllIters(tensorFields_, iter)
(
HashPtrTable<tensorField>,
tensorFields_,
iter
)
{ {
HashPtrTable<tensorField>::const_iterator dptfIter = const auto iter2 = dptf.tensorFields_.find(iter.key());
dptf.tensorFields_.find(iter.key());
if (dptfIter != dptf.tensorFields_.end()) if (iter2.found())
{ {
iter()->rmap(*dptfIter(), addr); iter()->rmap(*iter2(), addr);
} }
} }
} }
@ -807,9 +727,9 @@ void Foam::genericFvPatchField<Type>::write(Ostream& os) const
vectorFields_.find(key)() vectorFields_.find(key)()
->writeEntry(key, os); ->writeEntry(key, os);
} }
else if (sphericalTensorFields_.found(key)) else if (sphTensorFields_.found(key))
{ {
sphericalTensorFields_.find(key)() sphTensorFields_.find(key)()
->writeEntry(key, os); ->writeEntry(key, os);
} }
else if (symmTensorFields_.found(key)) else if (symmTensorFields_.found(key))

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2009-2011, 2019 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
| Copyright (C) 2011-2016 OpenFOAM Foundation | Copyright (C) 2011-2016 OpenFOAM Foundation
@ -59,14 +59,15 @@ class genericFvPatchField
: :
public calculatedFvPatchField<Type> public calculatedFvPatchField<Type>
{ {
// Private data // Private Data
const word actualTypeName_; const word actualTypeName_;
dictionary dict_; dictionary dict_;
HashPtrTable<scalarField> scalarFields_; HashPtrTable<scalarField> scalarFields_;
HashPtrTable<vectorField> vectorFields_; HashPtrTable<vectorField> vectorFields_;
HashPtrTable<sphericalTensorField> sphericalTensorFields_; HashPtrTable<sphericalTensorField> sphTensorFields_;
HashPtrTable<symmTensorField> symmTensorFields_; HashPtrTable<symmTensorField> symmTensorFields_;
HashPtrTable<tensorField> tensorFields_; HashPtrTable<tensorField> tensorFields_;
@ -138,9 +139,9 @@ public:
} }
// Member functions // Member Functions
// Mapping functions // Mapping Functions
//- Map (and resize as needed) from self given a mapping object //- Map (and resize as needed) from self given a mapping object
virtual void autoMap virtual void autoMap
@ -156,7 +157,7 @@ public:
); );
// Evaluation functions // Evaluation Functions
//- Return the matrix diagonal coefficients corresponding to the //- Return the matrix diagonal coefficients corresponding to the
// evaluation of the value of this patchField with given weights // evaluation of the value of this patchField with given weights

View File

@ -2,10 +2,8 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2009-2011,2019 OpenCFD Ltd. \\ / A nd | Copyright (C) 2019 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
-------------------------------------------------------------------------------
| Copyright (C) 2011-2016 OpenFOAM Foundation
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.
@ -227,7 +225,7 @@ Foam::genericFvsPatchField<Type>::genericFvsPatchField
<< exit(FatalIOError); << exit(FatalIOError);
} }
sphericalTensorFields_.insert(key, fPtr); sphTensorFields_.insert(key, fPtr);
} }
else if else if
( (
@ -356,7 +354,7 @@ Foam::genericFvsPatchField<Type>::genericFvsPatchField
{ {
sphericalTensor vs(l[0]); sphericalTensor vs(l[0]);
sphericalTensorFields_.insert sphTensorFields_.insert
( (
key, key,
autoPtr<sphericalTensorField>::New autoPtr<sphericalTensorField>::New
@ -462,11 +460,11 @@ Foam::genericFvsPatchField<Type>::genericFvsPatchField
forAllConstIter forAllConstIter
( (
HashPtrTable<sphericalTensorField>, HashPtrTable<sphericalTensorField>,
ptf.sphericalTensorFields_, ptf.sphTensorFields_,
iter iter
) )
{ {
sphericalTensorFields_.insert sphTensorFields_.insert
( (
iter.key(), iter.key(),
autoPtr<sphericalTensorField>::New(*iter(), mapper) autoPtr<sphericalTensorField>::New(*iter(), mapper)
@ -514,7 +512,7 @@ Foam::genericFvsPatchField<Type>::genericFvsPatchField
dict_(ptf.dict_), dict_(ptf.dict_),
scalarFields_(ptf.scalarFields_), scalarFields_(ptf.scalarFields_),
vectorFields_(ptf.vectorFields_), vectorFields_(ptf.vectorFields_),
sphericalTensorFields_(ptf.sphericalTensorFields_), sphTensorFields_(ptf.sphTensorFields_),
symmTensorFields_(ptf.symmTensorFields_), symmTensorFields_(ptf.symmTensorFields_),
tensorFields_(ptf.tensorFields_) tensorFields_(ptf.tensorFields_)
{} {}
@ -532,7 +530,7 @@ Foam::genericFvsPatchField<Type>::genericFvsPatchField
dict_(ptf.dict_), dict_(ptf.dict_),
scalarFields_(ptf.scalarFields_), scalarFields_(ptf.scalarFields_),
vectorFields_(ptf.vectorFields_), vectorFields_(ptf.vectorFields_),
sphericalTensorFields_(ptf.sphericalTensorFields_), sphTensorFields_(ptf.sphTensorFields_),
symmTensorFields_(ptf.symmTensorFields_), symmTensorFields_(ptf.symmTensorFields_),
tensorFields_(ptf.tensorFields_) tensorFields_(ptf.tensorFields_)
{} {}
@ -548,52 +546,27 @@ void Foam::genericFvsPatchField<Type>::autoMap
{ {
calculatedFvsPatchField<Type>::autoMap(m); calculatedFvsPatchField<Type>::autoMap(m);
forAllIter forAllIters(scalarFields_, iter)
(
HashPtrTable<scalarField>,
scalarFields_,
iter
)
{ {
iter()->autoMap(m); iter()->autoMap(m);
} }
forAllIter forAllIters(vectorFields_, iter)
(
HashPtrTable<vectorField>,
vectorFields_,
iter
)
{ {
iter()->autoMap(m); iter()->autoMap(m);
} }
forAllIter forAllIters(sphTensorFields_, iter)
(
HashPtrTable<sphericalTensorField>,
sphericalTensorFields_,
iter
)
{ {
iter()->autoMap(m); iter()->autoMap(m);
} }
forAllIter forAllIters(symmTensorFields_, iter)
(
HashPtrTable<symmTensorField>,
symmTensorFields_,
iter
)
{ {
iter()->autoMap(m); iter()->autoMap(m);
} }
forAllIter forAllIters(tensorFields_, iter)
(
HashPtrTable<tensorField>,
tensorFields_,
iter
)
{ {
iter()->autoMap(m); iter()->autoMap(m);
} }
@ -612,83 +585,53 @@ void Foam::genericFvsPatchField<Type>::rmap
const genericFvsPatchField<Type>& dptf = const genericFvsPatchField<Type>& dptf =
refCast<const genericFvsPatchField<Type>>(ptf); refCast<const genericFvsPatchField<Type>>(ptf);
forAllIter forAllIters(scalarFields_, iter)
(
HashPtrTable<scalarField>,
scalarFields_,
iter
)
{ {
HashPtrTable<scalarField>::const_iterator dptfIter = const auto iter2 = dptf.scalarFields_.cfind(iter.key());
dptf.scalarFields_.find(iter.key());
if (dptfIter != dptf.scalarFields_.end()) if (iter2.found())
{ {
iter()->rmap(*dptfIter(), addr); iter()->rmap(*iter2(), addr);
} }
} }
forAllIter forAllIters(vectorFields_, iter)
(
HashPtrTable<vectorField>,
vectorFields_,
iter
)
{ {
HashPtrTable<vectorField>::const_iterator dptfIter = const auto iter2 = dptf.vectorFields_.find(iter.key());
dptf.vectorFields_.find(iter.key());
if (dptfIter != dptf.vectorFields_.end()) if (iter2.found())
{ {
iter()->rmap(*dptfIter(), addr); iter()->rmap(*iter2(), addr);
} }
} }
forAllIter forAllIters(sphTensorFields_, iter)
(
HashPtrTable<sphericalTensorField>,
sphericalTensorFields_,
iter
)
{ {
HashPtrTable<sphericalTensorField>::const_iterator dptfIter = const auto iter2 = dptf.sphTensorFields_.find(iter.key());
dptf.sphericalTensorFields_.find(iter.key());
if (dptfIter != dptf.sphericalTensorFields_.end()) if (iter2.found())
{ {
iter()->rmap(*dptfIter(), addr); iter()->rmap(*iter2(), addr);
} }
} }
forAllIter forAllIters(symmTensorFields_, iter)
(
HashPtrTable<symmTensorField>,
symmTensorFields_,
iter
)
{ {
HashPtrTable<symmTensorField>::const_iterator dptfIter = const auto iter2 = dptf.symmTensorFields_.find(iter.key());
dptf.symmTensorFields_.find(iter.key());
if (dptfIter != dptf.symmTensorFields_.end()) if (iter2.found())
{ {
iter()->rmap(*dptfIter(), addr); iter()->rmap(*iter2(), addr);
} }
} }
forAllIter forAllIters(tensorFields_, iter)
(
HashPtrTable<tensorField>,
tensorFields_,
iter
)
{ {
HashPtrTable<tensorField>::const_iterator dptfIter = const auto iter2 = dptf.tensorFields_.find(iter.key());
dptf.tensorFields_.find(iter.key());
if (dptfIter != dptf.tensorFields_.end()) if (iter2.found())
{ {
iter()->rmap(*dptfIter(), addr); iter()->rmap(*iter2(), addr);
} }
} }
} }
@ -807,9 +750,9 @@ void Foam::genericFvsPatchField<Type>::write(Ostream& os) const
vectorFields_.find(key)() vectorFields_.find(key)()
->writeEntry(key, os); ->writeEntry(key, os);
} }
else if (sphericalTensorFields_.found(key)) else if (sphTensorFields_.found(key))
{ {
sphericalTensorFields_.find(key)() sphTensorFields_.find(key)()
->writeEntry(key, os); ->writeEntry(key, os);
} }
else if (symmTensorFields_.found(key)) else if (symmTensorFields_.found(key))

View File

@ -2,10 +2,8 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2009-2011,2019 OpenCFD Ltd. \\ / A nd | Copyright (C) 2019 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
-------------------------------------------------------------------------------
| Copyright (C) 2011-2016 OpenFOAM Foundation
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.
@ -59,14 +57,15 @@ class genericFvsPatchField
: :
public calculatedFvsPatchField<Type> public calculatedFvsPatchField<Type>
{ {
// Private data // Private Data
const word actualTypeName_; const word actualTypeName_;
dictionary dict_; dictionary dict_;
HashPtrTable<scalarField> scalarFields_; HashPtrTable<scalarField> scalarFields_;
HashPtrTable<vectorField> vectorFields_; HashPtrTable<vectorField> vectorFields_;
HashPtrTable<sphericalTensorField> sphericalTensorFields_; HashPtrTable<sphericalTensorField> sphTensorFields_;
HashPtrTable<symmTensorField> symmTensorFields_; HashPtrTable<symmTensorField> symmTensorFields_;
HashPtrTable<tensorField> tensorFields_; HashPtrTable<tensorField> tensorFields_;
@ -138,9 +137,9 @@ public:
} }
// Member functions // Member Functions
// Mapping functions // Mapping Functions
//- Map (and resize as needed) from self given a mapping object //- Map (and resize as needed) from self given a mapping object
virtual void autoMap virtual void autoMap
@ -156,7 +155,7 @@ public:
); );
// Evaluation functions // Evaluation Functions
//- Return the matrix diagonal coefficients corresponding to the //- Return the matrix diagonal coefficients corresponding to the
// evaluation of the value of this patchField with given weights // evaluation of the value of this patchField with given weights

View File

@ -2,10 +2,8 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2009-2011,2019 OpenCFD Ltd. \\ / A nd | Copyright (C) 2019 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
-------------------------------------------------------------------------------
| Copyright (C) 2011 OpenFOAM Foundation
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.

View File

@ -2,10 +2,8 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2009-2011 OpenCFD Ltd. \\ / A nd | Copyright (C) 2019 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
-------------------------------------------------------------------------------
| Copyright (C) 2011 OpenFOAM Foundation
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.

View File

@ -207,7 +207,7 @@ Foam::genericPointPatchField<Type>::genericPointPatchField
<< exit(FatalIOError); << exit(FatalIOError);
} }
sphericalTensorFields_.insert(key, fPtr); sphTensorFields_.insert(key, fPtr);
} }
else if else if
( (
@ -328,9 +328,9 @@ Foam::genericPointPatchField<Type>::genericPointPatchField
); );
} }
forAllConstIters(ptf.sphericalTensorFields_, iter) forAllConstIters(ptf.sphTensorFields_, iter)
{ {
sphericalTensorFields_.insert sphTensorFields_.insert
( (
iter.key(), iter.key(),
autoPtr<sphericalTensorField>::New(*iter(), mapper) autoPtr<sphericalTensorField>::New(*iter(), mapper)
@ -369,7 +369,7 @@ Foam::genericPointPatchField<Type>::genericPointPatchField
dict_(ptf.dict_), dict_(ptf.dict_),
scalarFields_(ptf.scalarFields_), scalarFields_(ptf.scalarFields_),
vectorFields_(ptf.vectorFields_), vectorFields_(ptf.vectorFields_),
sphericalTensorFields_(ptf.sphericalTensorFields_), sphTensorFields_(ptf.sphTensorFields_),
symmTensorFields_(ptf.symmTensorFields_), symmTensorFields_(ptf.symmTensorFields_),
tensorFields_(ptf.tensorFields_) tensorFields_(ptf.tensorFields_)
{} {}
@ -393,7 +393,7 @@ void Foam::genericPointPatchField<Type>::autoMap
iter()->autoMap(m); iter()->autoMap(m);
} }
forAllIters(sphericalTensorFields_, iter) forAllIters(sphTensorFields_, iter)
{ {
iter()->autoMap(m); iter()->autoMap(m);
} }
@ -422,56 +422,51 @@ void Foam::genericPointPatchField<Type>::rmap
forAllIters(scalarFields_, iter) forAllIters(scalarFields_, iter)
{ {
HashPtrTable<scalarField>::const_iterator dptfIter = const auto iter2 = dptf.scalarFields_.cfind(iter.key());
dptf.scalarFields_.find(iter.key());
if (dptfIter.found()) if (iter2.found())
{ {
iter()->rmap(*dptfIter(), addr); iter()->rmap(*iter2(), addr);
} }
} }
forAllIters(vectorFields_, iter) forAllIters(vectorFields_, iter)
{ {
HashPtrTable<vectorField>::const_iterator dptfIter = const auto iter2 = dptf.vectorFields_.cfind(iter.key());
dptf.vectorFields_.find(iter.key());
if (dptfIter.found()) if (iter2.found())
{ {
iter()->rmap(*dptfIter(), addr); iter()->rmap(*iter2(), addr);
} }
} }
forAllIters(sphericalTensorFields_, iter) forAllIters(sphTensorFields_, iter)
{ {
HashPtrTable<sphericalTensorField>::const_iterator dptfIter = const auto iter2 = dptf.sphTensorFields_.find(iter.key());
dptf.sphericalTensorFields_.find(iter.key());
if (dptfIter.found()) if (iter2.found())
{ {
iter()->rmap(*dptfIter(), addr); iter()->rmap(*iter2(), addr);
} }
} }
forAllIters(symmTensorFields_, iter) forAllIters(symmTensorFields_, iter)
{ {
HashPtrTable<symmTensorField>::const_iterator dptfIter = const auto iter2 = dptf.symmTensorFields_.find(iter.key());
dptf.symmTensorFields_.find(iter.key());
if (dptfIter.found()) if (iter2.found())
{ {
iter()->rmap(*dptfIter(), addr); iter()->rmap(*iter2(), addr);
} }
} }
forAllIters(tensorFields_, iter) forAllIters(tensorFields_, iter)
{ {
HashPtrTable<tensorField>::const_iterator dptfIter = const auto iter2 = dptf.tensorFields_.find(iter.key());
dptf.tensorFields_.find(iter.key());
if (dptfIter != tensorFields_.end()) if (iter2.found())
{ {
iter()->rmap(*dptfIter(), addr); iter()->rmap(*iter2(), addr);
} }
} }
} }
@ -511,9 +506,9 @@ void Foam::genericPointPatchField<Type>::write(Ostream& os) const
{ {
vectorFields_.find(key)()->writeEntry(key, os); vectorFields_.find(key)()->writeEntry(key, os);
} }
else if (sphericalTensorFields_.found(key)) else if (sphTensorFields_.found(key))
{ {
sphericalTensorFields_.find(key)()->writeEntry(key, os); sphTensorFields_.find(key)()->writeEntry(key, os);
} }
else if (symmTensorFields_.found(key)) else if (symmTensorFields_.found(key))
{ {

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2009-2011, 2016 OpenCFD Ltd. \\ / A nd | Copyright (C) 2009-2011, 2016-2019 OpenCFD Ltd.
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
| Copyright (C) 2011-2016 OpenFOAM Foundation | Copyright (C) 2011-2016 OpenFOAM Foundation
@ -55,14 +55,15 @@ class genericPointPatchField
: :
public calculatedPointPatchField<Type> public calculatedPointPatchField<Type>
{ {
// Private data // Private Data
const word actualTypeName_; const word actualTypeName_;
dictionary dict_; dictionary dict_;
HashPtrTable<scalarField> scalarFields_; HashPtrTable<scalarField> scalarFields_;
HashPtrTable<vectorField> vectorFields_; HashPtrTable<vectorField> vectorFields_;
HashPtrTable<sphericalTensorField> sphericalTensorFields_; HashPtrTable<sphericalTensorField> sphTensorFields_;
HashPtrTable<symmTensorField> symmTensorFields_; HashPtrTable<symmTensorField> symmTensorFields_;
HashPtrTable<tensorField> tensorFields_; HashPtrTable<tensorField> tensorFields_;
@ -135,9 +136,9 @@ public:
} }
// Member functions // Member Functions
// Mapping functions // Mapping Functions
//- Map (and resize as needed) from self given a mapping object //- Map (and resize as needed) from self given a mapping object
virtual void autoMap virtual void autoMap