From 536269a2670852d211728afabb8f255119aa1509 Mon Sep 17 00:00:00 2001 From: mattijs Date: Thu, 23 Oct 2008 20:53:45 +0100 Subject: [PATCH 1/3] use new bounding box --- src/meshTools/searchableSurface/distributedTriSurfaceMesh.C | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/meshTools/searchableSurface/distributedTriSurfaceMesh.C b/src/meshTools/searchableSurface/distributedTriSurfaceMesh.C index adfe29401e..a3e499bd65 100644 --- a/src/meshTools/searchableSurface/distributedTriSurfaceMesh.C +++ b/src/meshTools/searchableSurface/distributedTriSurfaceMesh.C @@ -1904,8 +1904,8 @@ void Foam::distributedTriSurfaceMesh::distribute } else { - dict_.set("bounds", procBb_[Pstream::myProcNo()]); procBb_.transfer(newProcBb); + dict_.set("bounds", procBb_[Pstream::myProcNo()]); } } From 0f646646cdc80ac6a7780061989046bb0c8dfbb6 Mon Sep 17 00:00:00 2001 From: mattijs Date: Thu, 23 Oct 2008 20:54:06 +0100 Subject: [PATCH 2/3] resetting zones upon reading --- src/OpenFOAM/meshes/polyMesh/polyMeshIO.C | 58 ++++++++++++++++++++++- 1 file changed, 56 insertions(+), 2 deletions(-) diff --git a/src/OpenFOAM/meshes/polyMesh/polyMeshIO.C b/src/OpenFOAM/meshes/polyMesh/polyMeshIO.C index e9a6d14069..c7a474e2b8 100644 --- a/src/OpenFOAM/meshes/polyMesh/polyMeshIO.C +++ b/src/OpenFOAM/meshes/polyMesh/polyMeshIO.C @@ -284,12 +284,34 @@ Foam::polyMesh::readUpdateState Foam::polyMesh::readUpdate() *this ); + label oldSize = pointZones_.size(); + + if (newPointZones.size() <= pointZones_.size()) + { + pointZones_.setSize(newPointZones.size()); + } + + // Reset existing ones + forAll (pointZones_, czI) + { + pointZones_[czI] = newPointZones[czI]; + } + + // Extend with extra ones + pointZones_.setSize(newPointZones.size()); + + for (label czI = oldSize; czI < newPointZones.size(); czI++) + { + pointZones_.set(czI, newPointZones[czI].clone(pointZones_)); + } + pointZones_.setSize(newPointZones.size()); forAll (pointZones_, pzI) { pointZones_[pzI] = newPointZones[pzI]; } + faceZoneMesh newFaceZones ( IOobject @@ -305,7 +327,14 @@ Foam::polyMesh::readUpdateState Foam::polyMesh::readUpdate() *this ); - faceZones_.setSize(newFaceZones.size()); + oldSize = faceZones_.size(); + + if (newFaceZones.size() <= faceZones_.size()) + { + faceZones_.setSize(newFaceZones.size()); + } + + // Reset existing ones forAll (faceZones_, fzI) { faceZones_[fzI].resetAddressing @@ -315,6 +344,15 @@ Foam::polyMesh::readUpdateState Foam::polyMesh::readUpdate() ); } + // Extend with extra ones + faceZones_.setSize(newFaceZones.size()); + + for (label fzI = oldSize; fzI < newFaceZones.size(); fzI++) + { + faceZones_.set(fzI, newFaceZones[fzI].clone(faceZones_)); + } + + cellZoneMesh newCellZones ( IOobject @@ -330,12 +368,28 @@ Foam::polyMesh::readUpdateState Foam::polyMesh::readUpdate() *this ); - cellZones_.setSize(newCellZones.size()); + oldSize = cellZones_.size(); + + if (newCellZones.size() <= cellZones_.size()) + { + cellZones_.setSize(newCellZones.size()); + } + + // Reset existing ones forAll (cellZones_, czI) { cellZones_[czI] = newCellZones[czI]; } + // Extend with extra ones + cellZones_.setSize(newCellZones.size()); + + for (label czI = oldSize; czI < newCellZones.size(); czI++) + { + cellZones_.set(czI, newCellZones[czI].clone(cellZones_)); + } + + if (boundaryChanged) { return polyMesh::TOPO_PATCH_CHANGE; From dab67ba5bbaf5a5680c1d61f2d4a3924dfaff6d8 Mon Sep 17 00:00:00 2001 From: mattijs Date: Mon, 27 Oct 2008 09:07:29 +0000 Subject: [PATCH 3/3] pointZones resetting during update --- src/OpenFOAM/meshes/polyMesh/polyMeshIO.C | 6 ------ 1 file changed, 6 deletions(-) diff --git a/src/OpenFOAM/meshes/polyMesh/polyMeshIO.C b/src/OpenFOAM/meshes/polyMesh/polyMeshIO.C index c7a474e2b8..8589047396 100644 --- a/src/OpenFOAM/meshes/polyMesh/polyMeshIO.C +++ b/src/OpenFOAM/meshes/polyMesh/polyMeshIO.C @@ -305,12 +305,6 @@ Foam::polyMesh::readUpdateState Foam::polyMesh::readUpdate() pointZones_.set(czI, newPointZones[czI].clone(pointZones_)); } - pointZones_.setSize(newPointZones.size()); - forAll (pointZones_, pzI) - { - pointZones_[pzI] = newPointZones[pzI]; - } - faceZoneMesh newFaceZones (