polyMeshMap: New mesh to mesh map for the new mapping update function mapMesh(const polyMeshMap&)

This new mapping structure is designed to support run-time mesh-to-mesh mapping
to allow arbitrary changes to the mesh structure, for example during extreme
motion requiring significant topology change including region disconnection etc.
This commit is contained in:
Henry Weller
2022-04-04 11:15:41 +01:00
parent 1aa194e18b
commit 7592a81c6e
403 changed files with 4953 additions and 1999 deletions

View File

@ -799,7 +799,7 @@ int main(int argc, char *argv[])
autoPtr<polyTopoChangeMap> map = meshMod.changeMesh(mesh, false);
// Update fields
mesh.updateMesh(map);
mesh.topoChange(map);

View File

@ -219,7 +219,7 @@ int main(int argc, char *argv[])
autoPtr<polyTopoChangeMap> map = meshMod.changeMesh(mesh, false);
// Update fields
mesh.updateMesh(map);
mesh.topoChange(map);
// Move mesh (since morphing does not do this)
if (map().hasMotionPoints())

View File

@ -124,7 +124,7 @@ int main(int argc, char *argv[])
labelList(0), // oldPatchNMeshPoints,
autoPtr<scalarField>() // oldCellVolumesPtr
);
refData.updateMesh(map);
refData.topoChange(map);
refData.write();
Info<< "End" << endl;

View File

@ -512,7 +512,7 @@ int main(int argc, char *argv[])
autoPtr<polyTopoChangeMap> map = meshMod.changeMesh(mesh, false);
// Update fields
mesh.updateMesh(map);
mesh.topoChange(map);
// Optionally inflate mesh
if (map().hasMotionPoints())

View File

@ -1003,7 +1003,7 @@ int main(int argc, char *argv[])
// Update fields
mesh.updateMesh(map);
mesh.topoChange(map);
// Update proc maps
if
@ -1319,7 +1319,7 @@ int main(int argc, char *argv[])
{
cellSet cs(*iter());
Info<< " " << cs.name() << endl;
cs.updateMesh(map());
cs.topoChange(map());
cs.instance() = mesh.facesInstance();
cs.write();
}
@ -1335,7 +1335,7 @@ int main(int argc, char *argv[])
{
faceSet fs(*iter());
Info<< " " << fs.name() << endl;
fs.updateMesh(map());
fs.topoChange(map());
fs.instance() = mesh.facesInstance();
fs.write();
}
@ -1351,7 +1351,7 @@ int main(int argc, char *argv[])
{
pointSet ps(*iter());
Info<< " " << ps.name() << endl;
ps.updateMesh(map());
ps.topoChange(map());
ps.instance() = mesh.facesInstance();
ps.write();
}

View File

@ -115,7 +115,7 @@ int main(int argc, char *argv[])
autoPtr<polyTopoChangeMap> map = meshMod.changeMesh(mesh, false);
// Update fields
mesh.updateMesh(map);
mesh.topoChange(map);
// Move mesh (since morphing does not do this)
if (map().hasMotionPoints())
@ -131,7 +131,7 @@ int main(int argc, char *argv[])
Info<< "Writing mesh to time " << runTime.timeName() << endl;
mesh.write();
refData.updateMesh(map);
refData.topoChange(map);
refData.write();
Info<< "End\n" << endl;

View File

@ -769,7 +769,7 @@ void createAndWriteRegion
Info<< "Mapping fields" << endl;
// Map existing fields
newMesh().updateMesh(map());
newMesh().topoChange(map());
// Add subsetted fields
subsetVolFields<volScalarField>