MPI_TYPE_HVECTOR, MPI_Type_hvector Purpose Returns a new datatype that represents equally-spaced blocks. The spacing between the start of each block is given in bytes. C synopsis #include int MPI_Type_hvector(int count,int blocklength,MPI_Aint stride, MPI_Datatype oldtype,MPI_Datatype *newtype); FORTRAN synopsis include 'mpif.h' or use mpi MPI_TYPE_HVECTOR(INTEGER COUNT,INTEGER BLOCKLENGTH,INTEGER STRIDE, INTEGER OLDTYPE,INTEGER NEWTYPE,INTEGER IERROR) Parameters count is the number of blocks (non-negative integer) (IN) blocklength is the number of oldtype instances in each block (non-negative integer) (IN) stride is an integer specifying the number of bytes between start of each block. (IN) oldtype is the old datatype (handle) (IN) newtype is the new datatype (handle) (OUT) IERROR is the FORTRAN return code. It is always the last argument. Description This subroutine returns a new datatype that represents count equally-spaced blocks. Each block is a concatenation of blocklength instances of oldtype. The origins of the blocks are spaced stride units apart where the counting unit is one byte. Notes MPI_TYPE_CREATE_HVECTOR supersedes MPI_TYPE_HVECTOR. For FORTRAN 64-bit codes, an INTEGER may not be enough to represent the stride. When the stride is known to be small enough, this subroutine remains usable at your own risk. New codes should always use MPI_TYPE_CREATE_HVECTOR. newtype must be committed using MPI_TYPE_COMMIT before being used for communication. Errors Invalid count count < 0 Invalid blocklength blocklength < 0 Undefined oldtype Oldtype is MPI_LB, MPI_UB or MPI_PACKED MPI not initialized MPI already finalized Related information MPI_TYPE_COMMIT MPI_TYPE_FREE MPI_TYPE_GET_CONTENTS MPI_TYPE_GET_ENVELOPE