From b31f8894aa95e4c1d9820eb142eaf0fba2008cf9 Mon Sep 17 00:00:00 2001 From: mattijs <mattijs> Date: Fri, 15 Oct 2010 15:41:32 +0100 Subject: [PATCH] ENH: setFields : all face sets to set patch values --- .../preProcessing/setFields/setFields.C | 260 +++++++++++++++--- .../preProcessing/setFields/setFieldsDict | 13 + .../sets/cellSources/boxToCell/boxToCell.H | 5 + .../sets/cellSources/cellToCell/cellToCell.H | 5 + .../cylinderToCell/cylinderToCell.H | 5 + .../sets/cellSources/faceToCell/faceToCell.H | 5 + .../faceZoneToCell/faceZoneToCell.H | 5 + .../cellSources/fieldToCell/fieldToCell.H | 5 + .../cellSources/labelToCell/labelToCell.H | 5 + .../sets/cellSources/nbrToCell/nbrToCell.H | 5 + .../cellSources/nearestToCell/nearestToCell.H | 5 + .../cellSources/pointToCell/pointToCell.H | 5 + .../cellSources/regionToCell/regionToCell.H | 5 + .../rotatedBoxToCell/rotatedBoxToCell.H | 5 + .../cellSources/shapeToCell/shapeToCell.H | 5 + .../cellSources/sphereToCell/sphereToCell.H | 5 + .../cellSources/surfaceToCell/surfaceToCell.H | 5 + .../sets/cellSources/zoneToCell/zoneToCell.H | 5 + .../setToCellZone/setToCellZone.H | 5 + .../boundaryToFace/boundaryToFace.H | 5 + .../sets/faceSources/boxToFace/boxToFace.H | 5 + .../sets/faceSources/cellToFace/cellToFace.H | 5 + .../sets/faceSources/faceToFace/faceToFace.H | 5 + .../faceSources/labelToFace/labelToFace.H | 5 + .../faceSources/normalToFace/normalToFace.H | 5 + .../faceSources/patchToFace/patchToFace.H | 5 + .../faceSources/pointToFace/pointToFace.H | 5 + .../sets/faceSources/zoneToFace/zoneToFace.H | 5 + .../faceZoneToFaceZone/faceZoneToFaceZone.H | 5 + .../setToFaceZone/setToFaceZone.H | 5 + .../setsToFaceZone/setsToFaceZone.H | 5 + .../sets/pointSources/boxToPoint/boxToPoint.H | 5 + .../pointSources/cellToPoint/cellToPoint.H | 5 + .../pointSources/faceToPoint/faceToPoint.H | 5 + .../pointSources/labelToPoint/labelToPoint.H | 5 + .../nearestToPoint/nearestToPoint.H | 5 + .../pointSources/pointToPoint/pointToPoint.H | 5 + .../surfaceToPoint/surfaceToPoint.H | 5 + .../pointSources/zoneToPoint/zoneToPoint.H | 5 + .../setToPointZone/setToPointZone.H | 5 + .../sets/topoSetSource/topoSetSource.H | 14 + .../hotRoom/Allrun | 3 +- .../hotRoom/Allrun | 3 +- .../buoyantPimpleFoam/hotRoom/Allclean | 1 - .../buoyantPimpleFoam/hotRoom/Allrun | 3 +- .../buoyantSimpleFoam/hotRoom/Allrun | 3 +- 46 files changed, 446 insertions(+), 44 deletions(-) diff --git a/applications/utilities/preProcessing/setFields/setFields.C b/applications/utilities/preProcessing/setFields/setFields.C index 55b58e16b4d..797b44437ef 100644 --- a/applications/utilities/preProcessing/setFields/setFields.C +++ b/applications/utilities/preProcessing/setFields/setFields.C @@ -22,7 +22,7 @@ License along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. Description - Selects a cell set through a dictionary. + Set values on a selected set of cells/patchfaces through a dictionary. \*---------------------------------------------------------------------------*/ @@ -32,12 +32,13 @@ Description #include "fvMesh.H" #include "topoSetSource.H" #include "cellSet.H" +#include "faceSet.H" #include "volFields.H" using namespace Foam; template<class Type> -bool setFieldType +bool setCellFieldType ( const word& fieldTypeDesc, const fvMesh& mesh, @@ -65,7 +66,8 @@ bool setFieldType // Check field exists if (fieldHeader.headerOk()) { - Info<< " Setting " << fieldHeader.headerClassName() + Info<< " Setting internal values of " + << fieldHeader.headerClassName() << " " << fieldName << endl; fieldType field(fieldHeader, mesh); @@ -96,7 +98,7 @@ bool setFieldType { WarningIn ( - "void setFieldType" + "void setCellFieldType" "(const fvMesh& mesh, const labelList& selectedCells," "Istream& fieldValueStream)" ) << "Field " << fieldName << " not found" << endl; @@ -106,17 +108,17 @@ bool setFieldType } -class setField +class setCellField { public: - setField() + setCellField() {} - autoPtr<setField> clone() const + autoPtr<setCellField> clone() const { - return autoPtr<setField>(new setField()); + return autoPtr<setCellField>(new setCellField()); } class iNew @@ -132,37 +134,200 @@ public: selectedCells_(selectedCells) {} - autoPtr<setField> operator()(Istream& fieldValues) const + autoPtr<setCellField> operator()(Istream& fieldValues) const { word fieldType(fieldValues); if ( !( - setFieldType<scalar> + setCellFieldType<scalar> (fieldType, mesh_, selectedCells_, fieldValues) - || setFieldType<vector> + || setCellFieldType<vector> (fieldType, mesh_, selectedCells_, fieldValues) - || setFieldType<sphericalTensor> + || setCellFieldType<sphericalTensor> (fieldType, mesh_, selectedCells_, fieldValues) - || setFieldType<symmTensor> + || setCellFieldType<symmTensor> (fieldType, mesh_, selectedCells_, fieldValues) - || setFieldType<tensor> + || setCellFieldType<tensor> (fieldType, mesh_, selectedCells_, fieldValues) ) ) { - WarningIn("setField::iNew::operator()(Istream& is)") + WarningIn("setCellField::iNew::operator()(Istream& is)") << "field type " << fieldType << " not currently supported" << endl; } - return autoPtr<setField>(new setField()); + return autoPtr<setCellField>(new setCellField()); } }; }; +template<class Type> +bool setFaceFieldType +( + const word& fieldTypeDesc, + const fvMesh& mesh, + const labelList& selectedFaces, + Istream& fieldValueStream +) +{ + typedef GeometricField<Type, fvPatchField, volMesh> fieldType; + + if (fieldTypeDesc != fieldType::typeName + "Value") + { + return false; + } + + word fieldName(fieldValueStream); + + IOobject fieldHeader + ( + fieldName, + mesh.time().timeName(), + mesh, + IOobject::MUST_READ + ); + + // Check field exists + if (fieldHeader.headerOk()) + { + Info<< " Setting patchField values of " + << fieldHeader.headerClassName() + << " " << fieldName << endl; + + fieldType field(fieldHeader, mesh); + + const Type& value = pTraits<Type>(fieldValueStream); + + // Create flat list of selected faces and their value. + Field<Type> allBoundaryValues(mesh.nFaces()-mesh.nInternalFaces()); + forAll(field.boundaryField(), patchi) + { + SubField<Type> + ( + allBoundaryValues, + field.boundaryField()[patchi].size(), + field.boundaryField()[patchi].patch().start() + - mesh.nInternalFaces() + ).assign(field.boundaryField()[patchi]); + } + + // Override + labelList nChanged(field.boundaryField().size(), 0); + forAll(selectedFaces, i) + { + label facei = selectedFaces[i]; + if (mesh.isInternalFace(facei)) + { + WarningIn("setFaceFieldType(..)") + << "Ignoring internal face " << facei << endl; + } + else + { + label bFaceI = facei-mesh.nInternalFaces(); + allBoundaryValues[bFaceI] = value; + nChanged[mesh.boundaryMesh().patchID()[bFaceI]]++; + } + } + + Pstream::listCombineGather(nChanged, plusEqOp<label>()); + Pstream::listCombineScatter(nChanged); + + // Reassign. + forAll(field.boundaryField(), patchi) + { + if (nChanged[patchi] > 0) + { + Info<< " On patch " + << field.boundaryField()[patchi].patch().name() + << " set " << nChanged[patchi] << " values" << endl; + field.boundaryField()[patchi] == SubField<Type> + ( + allBoundaryValues, + field.boundaryField()[patchi].size(), + field.boundaryField()[patchi].patch().start() + - mesh.nInternalFaces() + ); + } + } + + field.write(); + } + else + { + WarningIn + ( + "void setFaceFieldType" + "(const fvMesh& mesh, const labelList& selectedFaces," + "Istream& fieldValueStream)" + ) << "Field " << fieldName << " not found" << endl; + } + + return true; +} + + +class setFaceField +{ + +public: + + setFaceField() + {} + + autoPtr<setFaceField> clone() const + { + return autoPtr<setFaceField>(new setFaceField()); + } + + class iNew + { + const fvMesh& mesh_; + const labelList& selectedFaces_; + + public: + + iNew(const fvMesh& mesh, const labelList& selectedFaces) + : + mesh_(mesh), + selectedFaces_(selectedFaces) + {} + + autoPtr<setFaceField> operator()(Istream& fieldValues) const + { + word fieldType(fieldValues); + + if + ( + !( + setFaceFieldType<scalar> + (fieldType, mesh_, selectedFaces_, fieldValues) + || setFaceFieldType<vector> + (fieldType, mesh_, selectedFaces_, fieldValues) + || setFaceFieldType<sphericalTensor> + (fieldType, mesh_, selectedFaces_, fieldValues) + || setFaceFieldType<symmTensor> + (fieldType, mesh_, selectedFaces_, fieldValues) + || setFaceFieldType<tensor> + (fieldType, mesh_, selectedFaces_, fieldValues) + ) + ) + { + WarningIn("setFaceField::iNew::operator()(Istream& is)") + << "field type " << fieldType << " not currently supported" + << endl; + } + + return autoPtr<setFaceField>(new setFaceField()); + } + }; +}; + + + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // int main(int argc, char *argv[]) @@ -194,10 +359,10 @@ int main(int argc, char *argv[]) if (setFieldsDict.found("defaultFieldValues")) { Info<< "Setting field default values" << endl; - PtrList<setField> defaultFieldValues + PtrList<setCellField> defaultFieldValues ( setFieldsDict.lookup("defaultFieldValues"), - setField::iNew(mesh, labelList(mesh.nCells())) + setCellField::iNew(mesh, labelList(mesh.nCells())) ); Info<< endl; } @@ -211,29 +376,54 @@ int main(int argc, char *argv[]) { const entry& region = regions[regionI]; - autoPtr<topoSetSource> cellSelector = + autoPtr<topoSetSource> source = topoSetSource::New(region.keyword(), mesh, region.dict()); - cellSet selectedCellSet - ( - mesh, - "cellSet", - mesh.nCells()/10+1 // Reasonable size estimate. - ); + if (source().setType() == topoSetSource::CELLSETSOURCE) + { + cellSet selectedCellSet + ( + mesh, + "cellSet", + mesh.nCells()/10+1 // Reasonable size estimate. + ); - cellSelector->applyToSet - ( - topoSetSource::NEW, - selectedCellSet - ); + source->applyToSet + ( + topoSetSource::NEW, + selectedCellSet + ); - PtrList<setField> fieldValues - ( - region.dict().lookup("fieldValues"), - setField::iNew(mesh, selectedCellSet.toc()) - ); + PtrList<setCellField> fieldValues + ( + region.dict().lookup("fieldValues"), + setCellField::iNew(mesh, selectedCellSet.toc()) + ); + } + else if (source().setType() == topoSetSource::FACESETSOURCE) + { + faceSet selectedFaceSet + ( + mesh, + "faceSet", + (mesh.nFaces()-mesh.nInternalFaces())/10+1 + ); + + source->applyToSet + ( + topoSetSource::NEW, + selectedFaceSet + ); + + PtrList<setFaceField> fieldValues + ( + region.dict().lookup("fieldValues"), + setFaceField::iNew(mesh, selectedFaceSet.toc()) + ); + } } + Info<< "\nEnd\n" << endl; return 0; diff --git a/applications/utilities/preProcessing/setFields/setFieldsDict b/applications/utilities/preProcessing/setFields/setFieldsDict index 8d33be4c8f9..c58e622ff7e 100644 --- a/applications/utilities/preProcessing/setFields/setFieldsDict +++ b/applications/utilities/preProcessing/setFields/setFieldsDict @@ -23,6 +23,8 @@ defaultFieldValues regions ( + // Set cell values + // (does zerogradient on boundaries) boxToCell { box (0 0 -1) (0.1461 0.292 1); @@ -32,6 +34,17 @@ regions volScalarFieldValue gamma 1 ); } + + // Set patch values (using ==) + boxToFace + { + box (0 0 -1) (0.1461 0.292 1); + + fieldValues + ( + volScalarFieldValue gamma 1 + ); + } ); // ************************************************************************* // diff --git a/src/meshTools/sets/cellSources/boxToCell/boxToCell.H b/src/meshTools/sets/cellSources/boxToCell/boxToCell.H index e7061070f8d..be354677045 100644 --- a/src/meshTools/sets/cellSources/boxToCell/boxToCell.H +++ b/src/meshTools/sets/cellSources/boxToCell/boxToCell.H @@ -102,6 +102,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return CELLSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/cellSources/cellToCell/cellToCell.H b/src/meshTools/sets/cellSources/cellToCell/cellToCell.H index 7660c4bb83d..75fa47c3b16 100644 --- a/src/meshTools/sets/cellSources/cellToCell/cellToCell.H +++ b/src/meshTools/sets/cellSources/cellToCell/cellToCell.H @@ -93,6 +93,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return CELLSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/cellSources/cylinderToCell/cylinderToCell.H b/src/meshTools/sets/cellSources/cylinderToCell/cylinderToCell.H index 1581e8dcdfc..bd67e09c67f 100644 --- a/src/meshTools/sets/cellSources/cylinderToCell/cylinderToCell.H +++ b/src/meshTools/sets/cellSources/cylinderToCell/cylinderToCell.H @@ -109,6 +109,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return CELLSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/cellSources/faceToCell/faceToCell.H b/src/meshTools/sets/cellSources/faceToCell/faceToCell.H index 4b1673d35ce..768ec475e11 100644 --- a/src/meshTools/sets/cellSources/faceToCell/faceToCell.H +++ b/src/meshTools/sets/cellSources/faceToCell/faceToCell.H @@ -119,6 +119,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return CELLSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/cellSources/faceZoneToCell/faceZoneToCell.H b/src/meshTools/sets/cellSources/faceZoneToCell/faceZoneToCell.H index 7ee8b3d6da1..132c46d60bb 100644 --- a/src/meshTools/sets/cellSources/faceZoneToCell/faceZoneToCell.H +++ b/src/meshTools/sets/cellSources/faceZoneToCell/faceZoneToCell.H @@ -116,6 +116,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return CELLSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/cellSources/fieldToCell/fieldToCell.H b/src/meshTools/sets/cellSources/fieldToCell/fieldToCell.H index a0a89221159..6a34e222082 100644 --- a/src/meshTools/sets/cellSources/fieldToCell/fieldToCell.H +++ b/src/meshTools/sets/cellSources/fieldToCell/fieldToCell.H @@ -115,6 +115,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return CELLSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/cellSources/labelToCell/labelToCell.H b/src/meshTools/sets/cellSources/labelToCell/labelToCell.H index 8704f543672..16a8f72e00b 100644 --- a/src/meshTools/sets/cellSources/labelToCell/labelToCell.H +++ b/src/meshTools/sets/cellSources/labelToCell/labelToCell.H @@ -100,6 +100,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return CELLSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/cellSources/nbrToCell/nbrToCell.H b/src/meshTools/sets/cellSources/nbrToCell/nbrToCell.H index 8a604f45bfe..35d8a5525d9 100644 --- a/src/meshTools/sets/cellSources/nbrToCell/nbrToCell.H +++ b/src/meshTools/sets/cellSources/nbrToCell/nbrToCell.H @@ -101,6 +101,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return CELLSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/cellSources/nearestToCell/nearestToCell.H b/src/meshTools/sets/cellSources/nearestToCell/nearestToCell.H index 8c3555b0468..b61c8edd3ad 100644 --- a/src/meshTools/sets/cellSources/nearestToCell/nearestToCell.H +++ b/src/meshTools/sets/cellSources/nearestToCell/nearestToCell.H @@ -100,6 +100,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return CELLSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/cellSources/pointToCell/pointToCell.H b/src/meshTools/sets/cellSources/pointToCell/pointToCell.H index 6e1a596a45e..3c903a0b5c9 100644 --- a/src/meshTools/sets/cellSources/pointToCell/pointToCell.H +++ b/src/meshTools/sets/cellSources/pointToCell/pointToCell.H @@ -115,6 +115,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return CELLSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/cellSources/regionToCell/regionToCell.H b/src/meshTools/sets/cellSources/regionToCell/regionToCell.H index 07ebb502555..bf4d9a33925 100644 --- a/src/meshTools/sets/cellSources/regionToCell/regionToCell.H +++ b/src/meshTools/sets/cellSources/regionToCell/regionToCell.H @@ -105,6 +105,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return CELLSETSOURCE; + } + virtual void applyToSet(const topoSetSource::setAction action, topoSet&) const; diff --git a/src/meshTools/sets/cellSources/rotatedBoxToCell/rotatedBoxToCell.H b/src/meshTools/sets/cellSources/rotatedBoxToCell/rotatedBoxToCell.H index 7fef8788640..9119938a488 100644 --- a/src/meshTools/sets/cellSources/rotatedBoxToCell/rotatedBoxToCell.H +++ b/src/meshTools/sets/cellSources/rotatedBoxToCell/rotatedBoxToCell.H @@ -111,6 +111,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return CELLSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/cellSources/shapeToCell/shapeToCell.H b/src/meshTools/sets/cellSources/shapeToCell/shapeToCell.H index 3a7294cebd9..8dffc55b1d6 100644 --- a/src/meshTools/sets/cellSources/shapeToCell/shapeToCell.H +++ b/src/meshTools/sets/cellSources/shapeToCell/shapeToCell.H @@ -109,6 +109,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return CELLSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/cellSources/sphereToCell/sphereToCell.H b/src/meshTools/sets/cellSources/sphereToCell/sphereToCell.H index 553e6a29d3e..9f7de5539f4 100644 --- a/src/meshTools/sets/cellSources/sphereToCell/sphereToCell.H +++ b/src/meshTools/sets/cellSources/sphereToCell/sphereToCell.H @@ -105,6 +105,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return CELLSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/cellSources/surfaceToCell/surfaceToCell.H b/src/meshTools/sets/cellSources/surfaceToCell/surfaceToCell.H index e91e04f1ae3..48de11e0c5c 100644 --- a/src/meshTools/sets/cellSources/surfaceToCell/surfaceToCell.H +++ b/src/meshTools/sets/cellSources/surfaceToCell/surfaceToCell.H @@ -195,6 +195,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return CELLSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/cellSources/zoneToCell/zoneToCell.H b/src/meshTools/sets/cellSources/zoneToCell/zoneToCell.H index bb5504a1771..edcb0fc391e 100644 --- a/src/meshTools/sets/cellSources/zoneToCell/zoneToCell.H +++ b/src/meshTools/sets/cellSources/zoneToCell/zoneToCell.H @@ -101,6 +101,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return CELLSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/cellZoneSources/setToCellZone/setToCellZone.H b/src/meshTools/sets/cellZoneSources/setToCellZone/setToCellZone.H index bbe2b656a12..22c37deafa2 100644 --- a/src/meshTools/sets/cellZoneSources/setToCellZone/setToCellZone.H +++ b/src/meshTools/sets/cellZoneSources/setToCellZone/setToCellZone.H @@ -93,6 +93,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return CELLZONESOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/faceSources/boundaryToFace/boundaryToFace.H b/src/meshTools/sets/faceSources/boundaryToFace/boundaryToFace.H index 95afaa8ab00..fd36cd12a39 100644 --- a/src/meshTools/sets/faceSources/boundaryToFace/boundaryToFace.H +++ b/src/meshTools/sets/faceSources/boundaryToFace/boundaryToFace.H @@ -92,6 +92,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return FACESETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/faceSources/boxToFace/boxToFace.H b/src/meshTools/sets/faceSources/boxToFace/boxToFace.H index 63a5c93ad4b..76db6b5fa58 100644 --- a/src/meshTools/sets/faceSources/boxToFace/boxToFace.H +++ b/src/meshTools/sets/faceSources/boxToFace/boxToFace.H @@ -101,6 +101,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return FACESETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/faceSources/cellToFace/cellToFace.H b/src/meshTools/sets/faceSources/cellToFace/cellToFace.H index 91302c3d7ba..4a32c9f4be8 100644 --- a/src/meshTools/sets/faceSources/cellToFace/cellToFace.H +++ b/src/meshTools/sets/faceSources/cellToFace/cellToFace.H @@ -120,6 +120,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return FACESETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/faceSources/faceToFace/faceToFace.H b/src/meshTools/sets/faceSources/faceToFace/faceToFace.H index 90bbc1d33af..cd12b07624c 100644 --- a/src/meshTools/sets/faceSources/faceToFace/faceToFace.H +++ b/src/meshTools/sets/faceSources/faceToFace/faceToFace.H @@ -93,6 +93,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return FACESETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/faceSources/labelToFace/labelToFace.H b/src/meshTools/sets/faceSources/labelToFace/labelToFace.H index 2434e39c9a9..dd42f98a5a9 100644 --- a/src/meshTools/sets/faceSources/labelToFace/labelToFace.H +++ b/src/meshTools/sets/faceSources/labelToFace/labelToFace.H @@ -100,6 +100,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return FACESETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/faceSources/normalToFace/normalToFace.H b/src/meshTools/sets/faceSources/normalToFace/normalToFace.H index 3c287a1b69e..508c7c9a362 100644 --- a/src/meshTools/sets/faceSources/normalToFace/normalToFace.H +++ b/src/meshTools/sets/faceSources/normalToFace/normalToFace.H @@ -98,6 +98,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return FACESETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/faceSources/patchToFace/patchToFace.H b/src/meshTools/sets/faceSources/patchToFace/patchToFace.H index 12a1ff170b8..dd407edb030 100644 --- a/src/meshTools/sets/faceSources/patchToFace/patchToFace.H +++ b/src/meshTools/sets/faceSources/patchToFace/patchToFace.H @@ -101,6 +101,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return FACESETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/faceSources/pointToFace/pointToFace.H b/src/meshTools/sets/faceSources/pointToFace/pointToFace.H index c8a2439e6a2..6a6a090fa0d 100644 --- a/src/meshTools/sets/faceSources/pointToFace/pointToFace.H +++ b/src/meshTools/sets/faceSources/pointToFace/pointToFace.H @@ -118,6 +118,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return FACESETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/faceSources/zoneToFace/zoneToFace.H b/src/meshTools/sets/faceSources/zoneToFace/zoneToFace.H index 9e04ef45a88..1496af2d5ae 100644 --- a/src/meshTools/sets/faceSources/zoneToFace/zoneToFace.H +++ b/src/meshTools/sets/faceSources/zoneToFace/zoneToFace.H @@ -101,6 +101,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return FACESETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/faceZoneSources/faceZoneToFaceZone/faceZoneToFaceZone.H b/src/meshTools/sets/faceZoneSources/faceZoneToFaceZone/faceZoneToFaceZone.H index 8cfcb5066f3..1818e508276 100644 --- a/src/meshTools/sets/faceZoneSources/faceZoneToFaceZone/faceZoneToFaceZone.H +++ b/src/meshTools/sets/faceZoneSources/faceZoneToFaceZone/faceZoneToFaceZone.H @@ -93,6 +93,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return FACEZONESOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/faceZoneSources/setToFaceZone/setToFaceZone.H b/src/meshTools/sets/faceZoneSources/setToFaceZone/setToFaceZone.H index b062f440e56..ae120debb03 100644 --- a/src/meshTools/sets/faceZoneSources/setToFaceZone/setToFaceZone.H +++ b/src/meshTools/sets/faceZoneSources/setToFaceZone/setToFaceZone.H @@ -94,6 +94,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return FACEZONESOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/faceZoneSources/setsToFaceZone/setsToFaceZone.H b/src/meshTools/sets/faceZoneSources/setsToFaceZone/setsToFaceZone.H index f326ec06018..d1edb5417ae 100644 --- a/src/meshTools/sets/faceZoneSources/setsToFaceZone/setsToFaceZone.H +++ b/src/meshTools/sets/faceZoneSources/setsToFaceZone/setsToFaceZone.H @@ -97,6 +97,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return FACEZONESOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/pointSources/boxToPoint/boxToPoint.H b/src/meshTools/sets/pointSources/boxToPoint/boxToPoint.H index b403d851e11..9d9c0eed37c 100644 --- a/src/meshTools/sets/pointSources/boxToPoint/boxToPoint.H +++ b/src/meshTools/sets/pointSources/boxToPoint/boxToPoint.H @@ -101,6 +101,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return POINTSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/pointSources/cellToPoint/cellToPoint.H b/src/meshTools/sets/pointSources/cellToPoint/cellToPoint.H index 6306ee5a0bc..849bb70b8e8 100644 --- a/src/meshTools/sets/pointSources/cellToPoint/cellToPoint.H +++ b/src/meshTools/sets/pointSources/cellToPoint/cellToPoint.H @@ -115,6 +115,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return POINTSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/pointSources/faceToPoint/faceToPoint.H b/src/meshTools/sets/pointSources/faceToPoint/faceToPoint.H index b8a966b07fa..17488ba33fe 100644 --- a/src/meshTools/sets/pointSources/faceToPoint/faceToPoint.H +++ b/src/meshTools/sets/pointSources/faceToPoint/faceToPoint.H @@ -115,6 +115,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return POINTSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/pointSources/labelToPoint/labelToPoint.H b/src/meshTools/sets/pointSources/labelToPoint/labelToPoint.H index 0b809b69edd..13b85be591d 100644 --- a/src/meshTools/sets/pointSources/labelToPoint/labelToPoint.H +++ b/src/meshTools/sets/pointSources/labelToPoint/labelToPoint.H @@ -100,6 +100,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return POINTSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/pointSources/nearestToPoint/nearestToPoint.H b/src/meshTools/sets/pointSources/nearestToPoint/nearestToPoint.H index 5c746890b80..19d72cfeacc 100644 --- a/src/meshTools/sets/pointSources/nearestToPoint/nearestToPoint.H +++ b/src/meshTools/sets/pointSources/nearestToPoint/nearestToPoint.H @@ -100,6 +100,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return POINTSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/pointSources/pointToPoint/pointToPoint.H b/src/meshTools/sets/pointSources/pointToPoint/pointToPoint.H index b76332d7845..3f890b3400f 100644 --- a/src/meshTools/sets/pointSources/pointToPoint/pointToPoint.H +++ b/src/meshTools/sets/pointSources/pointToPoint/pointToPoint.H @@ -93,6 +93,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return POINTSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/pointSources/surfaceToPoint/surfaceToPoint.H b/src/meshTools/sets/pointSources/surfaceToPoint/surfaceToPoint.H index 56e786fe61c..0c4372c0ddf 100644 --- a/src/meshTools/sets/pointSources/surfaceToPoint/surfaceToPoint.H +++ b/src/meshTools/sets/pointSources/surfaceToPoint/surfaceToPoint.H @@ -123,6 +123,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return POINTSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/pointSources/zoneToPoint/zoneToPoint.H b/src/meshTools/sets/pointSources/zoneToPoint/zoneToPoint.H index 58ca2b2cf40..9fd4444552c 100644 --- a/src/meshTools/sets/pointSources/zoneToPoint/zoneToPoint.H +++ b/src/meshTools/sets/pointSources/zoneToPoint/zoneToPoint.H @@ -101,6 +101,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return POINTSETSOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/pointZoneSources/setToPointZone/setToPointZone.H b/src/meshTools/sets/pointZoneSources/setToPointZone/setToPointZone.H index 5226f708ac7..21d4f640b8d 100644 --- a/src/meshTools/sets/pointZoneSources/setToPointZone/setToPointZone.H +++ b/src/meshTools/sets/pointZoneSources/setToPointZone/setToPointZone.H @@ -93,6 +93,11 @@ public: // Member Functions + virtual sourceType setType() const + { + return POINTZONESOURCE; + } + virtual void applyToSet ( const topoSetSource::setAction action, diff --git a/src/meshTools/sets/topoSetSource/topoSetSource.H b/src/meshTools/sets/topoSetSource/topoSetSource.H index 5bbe71eb745..81ca1cf38c3 100644 --- a/src/meshTools/sets/topoSetSource/topoSetSource.H +++ b/src/meshTools/sets/topoSetSource/topoSetSource.H @@ -67,6 +67,18 @@ public: // Public data types + //- Enumeration defining the types of sources + enum sourceType + { + CELLSETSOURCE, + FACESETSOURCE, + POINTSETSOURCE, + + CELLZONESOURCE, + FACEZONESOURCE, + POINTZONESOURCE + }; + //- Enumeration defining the valid actions enum setAction { @@ -268,6 +280,8 @@ public: // Member Functions + virtual sourceType setType() const = 0; + virtual void applyToSet(const setAction action, topoSet&) const = 0; }; diff --git a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/Allrun b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/Allrun index 800bb573199..9f8c5b0cb5b 100755 --- a/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/Allrun +++ b/tutorials/heatTransfer/buoyantBoussinesqPimpleFoam/hotRoom/Allrun @@ -6,10 +6,9 @@ cd ${0%/*} || exit 1 # run from this directory application=`getApplication` -compileApplication ../../buoyantPimpleFoam/hotRoom/setHotRoom runApplication blockMesh cp 0/T.org 0/T -runApplication setHotRoom +runApplication setFields runApplication $application # ----------------------------------------------------------------- end-of-file diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/Allrun b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/Allrun index 800bb573199..9f8c5b0cb5b 100755 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/Allrun +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/hotRoom/Allrun @@ -6,10 +6,9 @@ cd ${0%/*} || exit 1 # run from this directory application=`getApplication` -compileApplication ../../buoyantPimpleFoam/hotRoom/setHotRoom runApplication blockMesh cp 0/T.org 0/T -runApplication setHotRoom +runApplication setFields runApplication $application # ----------------------------------------------------------------- end-of-file diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/Allclean b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/Allclean index 536b51a14e5..25243dd42f8 100755 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/Allclean +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/Allclean @@ -6,6 +6,5 @@ cd ${0%/*} || exit 1 # run from this directory cleanCase cp 0/T.org 0/T -wclean setHotRoom # ----------------------------------------------------------------- end-of-file diff --git a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/Allrun b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/Allrun index 3aafa6fd942..31c6c104c4d 100755 --- a/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/Allrun +++ b/tutorials/heatTransfer/buoyantPimpleFoam/hotRoom/Allrun @@ -7,9 +7,8 @@ cd ${0%/*} || exit 1 # run from this directory # Get application name application=`getApplication` -compileApplication setHotRoom runApplication blockMesh -runApplication setHotRoom +runApplication setFields runApplication $application # ----------------------------------------------------------------- end-of-file diff --git a/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/Allrun b/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/Allrun index cb0be1e6e06..7b90a31601b 100755 --- a/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/Allrun +++ b/tutorials/heatTransfer/buoyantSimpleFoam/hotRoom/Allrun @@ -6,9 +6,8 @@ cd ${0%/*} || exit 1 # run from this directory application=`getApplication` -compileApplication ../../buoyantPimpleFoam/hotRoom/setHotRoom runApplication blockMesh -runApplication setHotRoom +runApplication setFields runApplication $application # ----------------------------------------------------------------- end-of-file -- GitLab