manpagez: man pages & more
man MPI_Type_create_struct(3)
Home | html | info | man
MPI_Type_create_struct(3OpenMPI)              MPI_Type_create_struct(3OpenMPI)




NAME

       MPI_Type_create_struct - Creates a structured data type.



SYNTAX


C Syntax

       #include <mpi.h>
       int MPI_Type_create_struct(int count, int array_of_blocklengths[],
            MPI_Aint array_of_displacements[], MPI_Datatype array_of_types[],
            MPI_Datatype *newtype)



Fortran Syntax (see FORTRAN 77 NOTES)

       INCLUDE 'mpif.h'
       MPI_TYPE_CREATE_STRUCT(COUNT, ARRAY_OF_BLOCKLENGTHS,
                 ARRAY_OF_DISPLACEMENTS, ARRAY_OF_TYPES, NEWTYPE, IERROR)
            INTEGER   COUNT, ARRAY_OF_BLOCKLENGTHS(*), ARRAY_OF_TYPES(*),
            INTEGER NEWTYPE, IERROR
            INTEGER(KIND=MPI_ADDRESS_KIND) ARRAY_OF_DISPLACEMENTS(*)



C++ Syntax

       #include <mpi.h>
       static MPI::Datatype MPI::Datatype::Create_struct(int count,
            const int array_of_blocklengths[], const MPI::Aint
            array_of_displacements[], const MPI::Datatype
            array_of_types[])



INPUT PARAMETERS

       count     Number  of  blocks  (integer)  --  also  number of entries in
                 arrays    array_of_types,     array_of_displacements,     and
                 array_of_blocklengths.

       array_of_blocklengths
                 Number of elements in each block (array of integers).

       array_of_displacements
                 Byte displacement of each block (array of integers).

       array_of_types
                 Type of elements in each block (array of handles to data-type
                 objects).



OUTPUT PARAMETERS

       newtype   New data type (handle).

       IERROR    Fortran only: Error status (integer).



DESCRIPTION

       MPI_Type_create_struct creates a structured  data  type.  This  routine
       replaces MPI_Type_struct, which is now deprecated.

       NOTE  - This routine replaces MPI_Type_struct, which is deprecated. See
       the man page MPI_Type_struct(3) for information about that routine.



FORTRAN 77 NOTES

       The  MPI  standard  prescribes  portable   Fortran   syntax   for   the
       ARRAY_OF_DISPLACEMENTS(*)  argument  only  for  Fortran 90.  FORTRAN 77
       users may use the non-portable syntax

            INTEGER*MPI_ADDRESS_KIND ARRAY_OF_DISPLACEMENTS(*)

       where MPI_ADDRESS_KIND is a constant defined in mpif.h  and  gives  the
       length of the declared integer in bytes.



ERRORS

       Almost  all MPI routines return an error value; C routines as the value
       of the function and Fortran routines in the last  argument.  C++  func-
       tions  do  not  return  errors.  If the default error handler is set to
       MPI::ERRORS_THROW_EXCEPTIONS, then on error the C++ exception mechanism
       will be used to throw an MPI:Exception object.

       Before  the  error  value is returned, the current MPI error handler is
       called. By default, this error handler aborts the MPI job,  except  for
       I/O   function   errors.   The   error  handler  may  be  changed  with
       MPI_Comm_set_errhandler; the predefined error handler MPI_ERRORS_RETURN
       may  be  used  to cause error values to be returned. Note that MPI does
       not guarantee that an MPI program can continue past an error.



SEE ALSO

       MPI_Type_struct(3), MPI_Type_create_hindexed(3)




Open MPI 1.2                    September 2006MPI_Type_create_struct(3OpenMPI)

Mac OS X 10.6 - Generated Thu Sep 17 20:13:18 CDT 2009
© manpagez.com 2000-2024
Individual documents may contain additional copyright information.