fix mpi mesh curving

This commit is contained in:
Lukas 2019-08-26 13:16:28 +02:00
parent 287256a626
commit 55203ae730

View File

@ -1295,10 +1295,17 @@ namespace netgen
Point<3> pp = xa[jj]; Point<3> pp = xa[jj];
// ref -> ProjectToSurface (pp, mesh.GetFaceDescriptor(el.GetIndex()).SurfNr()); // ref -> ProjectToSurface (pp, mesh.GetFaceDescriptor(el.GetIndex()).SurfNr());
/**
with MPI and an interior surface element between volume elements assigned to different
procs, only one of them has the surf-el
**/
SurfaceElementIndex sei = top.GetFace2SurfaceElement (f+1)-1; SurfaceElementIndex sei = top.GetFace2SurfaceElement (f+1)-1;
PointGeomInfo gi = mesh[sei].GeomInfoPi(1); if (sei != SurfaceElementIndex(-1)) {
PointGeomInfo gi = mesh[sei].GeomInfoPi(1);
ref -> ProjectToSurface (pp, surfnr[facenr], gi); ref -> ProjectToSurface (pp, surfnr[facenr], gi);
}
else
{ ref -> ProjectToSurface (pp, surfnr[facenr]); }
Vec<3> dist = pp-xa[jj]; Vec<3> dist = pp-xa[jj];
CalcTrigShape (order1, lami[fnums[1]]-lami[fnums[0]], CalcTrigShape (order1, lami[fnums[1]]-lami[fnums[0]],