mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
BUG: singleCellFvMesh : locally (but not globally) zero sized patches
This commit is contained in:
@ -42,12 +42,13 @@ void Foam::singleCellFvMesh::agglomerateMesh
|
|||||||
const polyBoundaryMesh& oldPatches = mesh.boundaryMesh();
|
const polyBoundaryMesh& oldPatches = mesh.boundaryMesh();
|
||||||
|
|
||||||
// Check agglomeration within patch face range and continuous
|
// Check agglomeration within patch face range and continuous
|
||||||
labelList nAgglom(oldPatches.size());
|
labelList nAgglom(oldPatches.size(), 0);
|
||||||
|
|
||||||
forAll(oldPatches, patchI)
|
forAll(oldPatches, patchI)
|
||||||
{
|
{
|
||||||
const polyPatch& pp = oldPatches[patchI];
|
const polyPatch& pp = oldPatches[patchI];
|
||||||
|
if (pp.size() > 0)
|
||||||
|
{
|
||||||
nAgglom[patchI] = max(agglom[patchI])+1;
|
nAgglom[patchI] = max(agglom[patchI])+1;
|
||||||
|
|
||||||
forAll(pp, i)
|
forAll(pp, i)
|
||||||
@ -63,6 +64,7 @@ void Foam::singleCellFvMesh::agglomerateMesh
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Check agglomeration is sync
|
// Check agglomeration is sync
|
||||||
{
|
{
|
||||||
@ -155,6 +157,8 @@ void Foam::singleCellFvMesh::agglomerateMesh
|
|||||||
|
|
||||||
forAll(oldPatches, patchI)
|
forAll(oldPatches, patchI)
|
||||||
{
|
{
|
||||||
|
patchStarts[patchI] = coarseI;
|
||||||
|
|
||||||
const polyPatch& pp = oldPatches[patchI];
|
const polyPatch& pp = oldPatches[patchI];
|
||||||
|
|
||||||
if (pp.size() > 0)
|
if (pp.size() > 0)
|
||||||
@ -170,8 +174,6 @@ void Foam::singleCellFvMesh::agglomerateMesh
|
|||||||
// From agglomeration to compact patch face
|
// From agglomeration to compact patch face
|
||||||
labelList agglomToFace(nAgglom[patchI], -1);
|
labelList agglomToFace(nAgglom[patchI], -1);
|
||||||
|
|
||||||
patchStarts[patchI] = coarseI;
|
|
||||||
|
|
||||||
forAll(pp, i)
|
forAll(pp, i)
|
||||||
{
|
{
|
||||||
label myAgglom = agglom[patchI][i];
|
label myAgglom = agglom[patchI][i];
|
||||||
@ -223,10 +225,10 @@ void Foam::singleCellFvMesh::agglomerateMesh
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
patchSizes[patchI] = coarseI-patchStarts[patchI];
|
patchSizes[patchI] = coarseI-patchStarts[patchI];
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
//Pout<< "patchStarts:" << patchStarts << endl;
|
//Pout<< "patchStarts:" << patchStarts << endl;
|
||||||
//Pout<< "patchSizes:" << patchSizes << endl;
|
//Pout<< "patchSizes:" << patchSizes << endl;
|
||||||
|
|||||||
Reference in New Issue
Block a user