XMDF  2.2
4.15.8. Reading mesh geometry

The functions for reading mesh geometry are also similar to their serial counterparts. In parallel, the functions require additional parameters that specify where in the geometry to begin reading values. The functions are listed below:

C
int xfReadXNodeLocations(xid a_Id, int a_ StartIndex, int a_nNodes, double *a_Locs, int a_Stride);
int xfReadYNodeLocations(xid a_Id, int a_ StartIndex, int a_nNodes, double *a_Locs, int a_Stride);
int xfReadZNodeLocations(xid a_Id, int a_ StartIndex, int a_nNodes, double *a_Locs, int a_Stride);
int xfReadElemTypes(xid a_Id, int a_ StartIndex, int a_nElems, int *a_Type, int a_Stride);
int xfReadElemNodeIds(xid a_Id, int a_ StartIndex, int a_nElems, int a_nMaxNodes, int *a_NodeIds, int a_Stride);
a_Id xid of the group containing the dataset
a_StartIndex indices corresponding to the starting location of the values in the mesh to be read
a_nNodes number of nodes to be read
a_nElems number of elements to be read
a_nMaxNodes maximum number of nodes on an element
a_Locs x, y, and z node locations read from the mesh
a_Type types of elements to be read
a_NodeIds node ids corresponding to the elements to be read
FORTRAN
SUBROUTINE XF_READ_X_NODE_LOCATIONS (a_Id, a_StartIndex, a_nNodes, a_Locs, &
a_Stride, error)
INTEGER(HID_T), INTENT(IN) :: a_Id, a_StartIndex
INTEGER, INTENT(IN) :: a_nNodes
REAL*8, DIMENSION(*), INTENT(OUT) :: a_Locs
INTEGER, INTENT(IN) :: a_Stride
INTEGER, INTENT(OUT) :: error
SUBROUTINE XF_READ_Y_NODE_LOCATIONS (a_Id, a_StartIndex, a_nNodes, a_Locs, &
a_Stride, error)
INTEGER(HID_T), INTENT(IN) :: a_Id, a_StartIndex
INTEGER, INTENT(IN) :: a_nNodes
REAL*8, DIMENSION(*), INTENT(OUT) :: a_Locs
INTEGER, INTENT(IN) :: a_Stride
INTEGER, INTENT(OUT) :: error
SUBROUTINE XF_READ_Z_NODE_LOCATIONS (a_Id, a_StartIndex, a_nNodes, a_Locs, &
a_Stride, error)
INTEGER(HID_T), INTENT(IN) :: a_Id, a_StartIndex
INTEGER, INTENT(IN) :: a_nNodes
REAL*8, DIMENSION(*), INTENT(OUT) :: a_Locs
INTEGER, INTENT(IN) :: a_Stride
INTEGER, INTENT(OUT) :: error
SUBROUTINE XF_READ_ELEM_TYPES_PAR (a_Id, a_StartIndex a_nElems, a_Type, &
a_Stride, error)
INTEGER(HID_T), INTENT(IN) :: a_Id, a_StartIndex
INTEGER, INTENT(IN) :: a_nElems
INTEGER, DIMENSION(*), INTENT(OUT) :: a_Type
INTEGER, INTENT(IN) :: a_Stride
INTEGER, INTENT(OUT) :: error
SUBROUTINE XF_READ_ELEM_NODE_IDS_PAR (a_Id, a_StartIndex, a_nElems, a_nMaxNodes, &
a_Ids, a_Stride, error)
INTEGER(HID_T), INTENT(IN) :: a_Id, a_StartIndex
INTEGER, INTENT(IN) :: a_nElems, a_nMaxNodes
INTEGER, DIMENSION(*), INTENT(OUT) :: a_Ids
INTEGER, INTENT(IN) :: a_Stride
INTEGER, INTENT(OUT) :: error