Go to the source code of this file.
Data Structures | |
class | surfProgress_t |
class | ConcreteLocalElement |
Provides access to a local element. More... | |
class | parallelSurfaceTransfer_c |
class | meshState |
class | sendState |
Describes the outgoing mesh. More... | |
class | entityPackList |
class | meshChunk |
Manages the on-the-wire mesh format when sending or receiving tet mesh chunks. More... | |
struct | meshChunk::header_t |
class | faceSender |
Sends faces across the wire to one destination. More... | |
class | ConcreteNetworkElement |
Provides access to an element received off the network. More... | |
class | faceReceiver |
Receives faces from the wire. More... | |
class | VerboseSurfProgress_t |
Functions | |
static bbox3d | getPrismBox (int t, const PrismMesh &mesh) |
static bbox3d | getTriangleBox (int t, const TriangleSurfaceMesh &mesh) |
int | bytesToXfer (int nBytes) |
template<class D, class S> | |
void | copy (D *dest, const S *src, int n) |
void | ParallelSurfaceTransfer (collide_t voxels, MPI_Comm mpi_comm, int valsPerFace, int valsPerPt, const double *srcFaceVals, const double *srcPtVals, const PrismMesh &srcMesh, double *destFaceVals, double *destPtVals, const TriangleSurfaceMesh &destMesh) |
Transfer this data from srcMesh to destMesh, where the srcMesh is a doubly-extruded surface mesh of prisms, and destMesh is a surface mesh of triangles. |
Definition at line 126 of file parallelsurfacetransfer.C.
References bbox3d::add(), conn, bbox3d::empty(), PrismMesh::getPoint(), and PrismMesh::getPrism().
Referenced by parallelSurfaceTransfer_c::transfer().
static bbox3d getTriangleBox | ( | int | t, | |
const TriangleSurfaceMesh & | mesh | |||
) | [static] |
Definition at line 134 of file parallelsurfacetransfer.C.
References bbox3d::add(), conn, bbox3d::empty(), TriangleSurfaceMesh::getPoint(), and TriangleSurfaceMesh::getTriangle().
Referenced by parallelSurfaceTransfer_c::transfer().
Definition at line 143 of file parallelsurfacetransfer.C.
Referenced by meshChunk::faceDataRecordSize(), meshChunk::getFaceData(), tetMeshChunk::getTetData(), tetMeshChunk::headerSize(), meshChunk::headerSize(), meshChunk::sendFacesSize(), tetMeshChunk::sendTetsSize(), and tetMeshChunk::tetDataRecordSize().
void copy | ( | D * | dest, | |
const S * | src, | |||
int | n | |||
) | [inline] |
Definition at line 149 of file parallelsurfacetransfer.C.
Referenced by CkArray::broadcastHomeElements(), CfutureSet(), cgSolver::cgSolver(), CmiCopyMsg(), CmiGetNonLocalNodeQ(), NetFEM_elems::copy(), dupargv(), faceSender::putFace(), tetSender::putTet(), and rfmodel::TreeModel::treeTest().
void ParallelSurfaceTransfer | ( | collide_t | voxels, | |
MPI_Comm | mpi_comm, | |||
int | valsPerFace, | |||
int | valsPerPt, | |||
const double * | srcFace, | |||
const double * | srcPt, | |||
const PrismMesh & | srcMesh, | |||
double * | destFace, | |||
double * | destPt, | |||
const TriangleSurfaceMesh & | destMesh | |||
) |
Transfer this data from srcMesh to destMesh, where the srcMesh is a doubly-extruded surface mesh of prisms, and destMesh is a surface mesh of triangles.
There are valsPerFace double's associated with each prism of the mesh, stored in srcFace and destFace; there are valsPerPt double's associated with each point of the mesh, stored in srcPt and destPt;
Definition at line 624 of file parallelsurfacetransfer.C.
References surfProgress_t::p(), PUP::t, and parallelSurfaceTransfer_c::transfer().