Provided by: openmpi-doc_1.10.2-8ubuntu1_all bug

NAME

       MPI_Type_create_resized  -  Returns  a  new  data type with new extent and upper and lower
       bounds.

SYNTAX

C Syntax

       #include <mpi.h>
       int MPI_Type_create_resized(MPI_Datatype oldtype, MPI_Aint lb,
            MPI_Aint extent, MPI_Datatype *newtype)

Fortran Syntax (see FORTRAN 77 NOTES)

       INCLUDE 'mpif.h'
       MPI_TYPE_CREATE_RESIZED(OLDTYPE, LB, EXTENT, NEWTYPE, IERROR)
            INTEGER   OLDTYPE, NEWTYPE, IERROR
            INTEGER(KIND=MPI_ADDRESS_KIND)     LB, EXTENT

C++ Syntax

       #include <mpi.h>
       MPI::Datatype MPI::Datatype::Create_resized(const MPI::Aint lb,
            const MPI::Aint extent) const

INPUT PARAMETERS

       oldtype   Input data type (handle).

       lb        New lower bound of data type (integer).

       extent    New extent of data type (integer).

OUTPUT PARAMETERS

       newtype   Output data type (handle).

       IERROR    Fortran only: Error status (integer).

DESCRIPTION

       MPI_Type_create_resized returns in newtype a handle to a new data type that  is  identical
       to  oldtype,  except  that  the lower bound of this new data type is set to be lb, and its
       upper bound is set to be lb + extent. Any previous lb and ub markers are erased, and a new
       pair  of  lower bound and upper bound markers are put in the positions indicated by the lb
       and  extent  arguments.  This  affects  the  behavior  of  the  data  type  when  used  in
       communication operations, with count > 1, and when used in the construction of new derived
       data types.

FORTRAN 77 NOTES

       The MPI standard prescribes portable Fortran syntax for the LB and EXTENT  arguments  only
       for Fortran 90. FORTRAN 77 users may use the non-portable syntax

            INTEGER*MPI_ADDRESS_KIND LB
       or
            INTEGER*MPI_ADDRESS_KIND EXTENT

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

NOTE

       Use of MPI_Type_create_resized is  strongly  recommended  over  the  old  MPI-1  functions
       MPI_Type_extent and MPI_Type_lb.

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++ functions 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_get_extent