curved elements: parallel and 2d

This commit is contained in:
Joachim Schoeberl 2011-08-09 21:23:05 +00:00
parent 8a450b506b
commit 5733e491fe

View File

@ -450,18 +450,20 @@ namespace netgen
Array<int> master_edgeorder;
Array<int> master_edgecoeffsindex;
Array<Vec<3> > master_edgecoeffs;
MyMPI_Bcast (master_edgeorder, 0);
MyMPI_Bcast (master_edgecoeffsindex, 0);
MyMPI_Bcast (master_edgecoeffs, 0);
Array<int> master_faceorder;
Array<int> master_facecoeffsindex;
Array<Vec<3> > master_facecoeffs;
MyMPI_Bcast (master_edgeorder, 0);
MyMPI_Bcast (master_edgecoeffsindex, 0);
MyMPI_Bcast (master_edgecoeffs, 0);
if (mesh.GetDimension() == 3)
{
MyMPI_Bcast (master_faceorder, 0);
MyMPI_Bcast (master_facecoeffsindex, 0);
MyMPI_Bcast (master_facecoeffs, 0);
}
const MeshTopology & top = mesh.GetTopology();
@ -487,6 +489,8 @@ namespace netgen
edgecoeffs[edgecoeffsindex[i]+j] = master_edgecoeffs[master_edgecoeffsindex[glob-1]+j];
}
if (mesh.GetDimension() == 3)
{
faceorder.SetSize (top.GetNFaces());
facecoeffsindex.SetSize (top.GetNFaces()+1);
facecoeffsindex[0] = 0;
@ -506,13 +510,14 @@ namespace netgen
for (int j = 0; j < ncoefs; j++)
facecoeffs[facecoeffsindex[i]+j] = master_facecoeffs[master_facecoeffsindex[glob-1]+j];
}
/*
}
else
{
faceorder.SetSize (top.GetNFaces());
faceorder = 1;
facecoeffsindex.SetSize (top.GetNFaces()+1);
facecoeffsindex = 0;
*/
}
ishighorder = 1;
return;
@ -1040,10 +1045,13 @@ namespace netgen
MyMPI_Bcast (edgecoeffsindex, 0);
MyMPI_Bcast (edgecoeffs, 0);
if (mesh.GetDimension() == 3)
{
MyMPI_Bcast (faceorder, 0);
MyMPI_Bcast (facecoeffsindex, 0);
MyMPI_Bcast (facecoeffs, 0);
}
}
#endif