- added UPstream::allGatherValues() with a direct call to MPI_Allgather. This enables possible benefit from a variety of internal algorithms and simplifies the caller Old: labelList nPerProc ( UPstream::listGatherValues<label>(patch_.size(), myComm) ); Pstream::broadcast(nPerProc, myComm); New: const labelList nPerProc ( UPstream::allGatherValues<label>(patch_.size(), myComm) ); - Pstream::allGatherList uses MPI_Allgather for contiguous values instead of the hand-rolled tree walking involved with gatherList/scatterList. - - simplified the calling parameters for mpiGather/mpiScatter. Since send/recv data types are identical, the send/recv count is also always identical. Eliminates the possibility of any discrepancies. Since this is a low-level call, it does not affect much code. Currently just Foam::profilingPstream and a UPstream internal. BUG: call to MPI_Allgather had hard-coded MPI_BYTE (not the data type) - a latent bug since it is currently only passed char data anyhow |
||
---|---|---|
.. | ||
surfaceAdd | ||
surfaceBooleanFeatures | ||
surfaceCheck | ||
surfaceClean | ||
surfaceCoarsen | ||
surfaceConvert | ||
surfaceFeatureConvert | ||
surfaceFeatureExtract | ||
surfaceFind | ||
surfaceHookUp | ||
surfaceInertia | ||
surfaceInflate | ||
surfaceLambdaMuSmooth | ||
surfaceMeshConvert | ||
surfaceMeshExport | ||
surfaceMeshExtract | ||
surfaceMeshImport | ||
surfaceMeshInfo | ||
surfaceOrient | ||
surfacePatch | ||
surfacePointMerge | ||
surfaceRedistributePar | ||
surfaceRefineRedGreen | ||
surfaceSplitByPatch | ||
surfaceSplitByTopology | ||
surfaceSplitNonManifolds | ||
surfaceSubset | ||
surfaceToPatch | ||
surfaceTransformPoints | ||
README |
2008-10-23 Contents: surfaceAdd - adds to surface files. (but does not intersect or anything) surfaceBooleanOp - Boolean operations (add, or, xor) on closed surfaces. Probably not working. surfaceCheck - checks surface for incorrect topology. Checks normals of neighbouring faces. surfaceCoarsen - Stan Melax coarsening algorithm surfaceConvert - Converts surfaces to/from various formats surfaceMeshExtract - Extracts mesh patches (or faceSets) and writes as a single surface. - foamToSurface duplicates this surfaceFind - Finds nearest vertex and face to given point. surfacePointMerge - Explicit point merge of surface. surfaceSetOutside - Orient normals on (closed) surface. surfaceSmooth - Laplacian smoothing on surface vertices surfaceSubset - Subsets surface surfaceToPatch - Applies region information of surfaces to mesh. Each external face of mesh gets region number of nearest surface triangle. ------------------------------------------------------------------------------- surfaceMeshConvert - Similar to surfaceConvert, but uses surfMesh library