source: proiecte/hpl/openmpi_compiled/share/man/man3/MPI_Type_create_f90_real.3 @ 97

Last change on this file since 97 was 97, checked in by (none), 14 years ago

Adding compiled files

File size: 4.3 KB
Line 
1.\"Copyright 2006-2008 Sun Microsystems, Inc.
2.\"Copyright (c) 1996 Thinking Machines
3.TH MPI_Type_create_f90_real 3 "Dec 08, 2009" "1.4" "Open MPI"
4
5.SH NAME
6.nf
7\fBMPI_Type_create_f90_real\fP \- Returns a bounded MPI real datatype
8
9.SH SYNTAX
10.ft R
11
12.SH C Syntax
13.nf
14#include <mpi.h>
15int MPI_Type_create_f90_real(int \fIp\fP, int \fIr\fP, MPI_Datatype *\fInewtype\fP)
16
17.SH Fortran Syntax
18.nf
19INCLUDE 'mpif.h'
20MPI_TYPE_CREATE_F90_REAL (\fIP, R, NEWTYPE, IERROR\fP)
21        INTEGER \fIP, R, NEWTYPE, IERROR\fP
22
23.SH C++ Syntax
24.nf
25#include <mpi.h>
26static MPI::Datatype MPI::Datatype::Create_f90_real(int \fIp\fP, int \fIr\fP)
27
28.SH INPUT PARAMETERS
29.ft R
30.TP 1i
31p
32Precision, in decimal digits (integer).
33.TP 1i
34r
35Decimal exponent range (integer).
36
37.SH OUTPUT PARAMETERS
38.ft R
39.TP 1i
40newtype
41New data type (handle).
42.TP 1i
43IERROR
44Fortran only: Error status (integer).
45
46.SH DESCRIPTION
47.ft R
48This function provides a way to declare KIND-parameterized REAL MPI
49datatypes. The arguments are interpreted in a similar fashion to the
50F90 function SELECTED_REAL_KIND. The parameters \fIp\fP and \fIr\fP
51must be scalar integers. The argument \fIp\fP represents the required
52level of numerical precision, in decimal digits. The \fIr\fP parameter
53indicates the range of exponents desired: the returned datatype will
54have at least one exponent between \+\fIr\fP and \-\fIr\fP (inclusive).
55.sp
56Either \fIp\fP or \fIr\fP, but not both, may be omitted from calls to
57SELECTED_REAL_KIND. Similarly, either argument to
58MPI_Type_create_f90_real may be set to MPI_UNDEFINED.
59
60.SH NOTES
61.ft R
62It is erroneous to supply values for \fIp\fP and \fIr\fP not supported by
63the compiler.
64.sp
65The Fortran function SELECTED_REAL_KIND maps a large number of
66(\fIp,r\fP) pairs to a much smaller number of KIND parameters
67supported by the compiler. KIND parameters are not specified by the
68language and are not portable. From the point of view of the language,
69variables of the same base type and KIND parameter are equivalent,
70even if their KIND parameters were generated by different (\fIp,r\fP)
71arguments to SELECTED_REAL_KIND. However, to help facilitate
72interoperability in a heterogeneous environment, equivalency is more
73strictly defined for datatypes returned by
74MPI_Type_create_f90_real. Two MPI datatypes, each generated by this
75function, will match if and only if they have identical values for
76both \fIp\fP and \fIr\fP.
77.sp
78The interaction between the datatypes returned by this function and
79the external32 data representation \- used by MPI_Pack_external,
80MPI_Unpack_external and many MPI_File functions \- is subtle. The
81external32 representation of returned datatypes is as follows.
82.sp
83.nf
84        if (\fIp\fP > 33) and/or (\fIr\fP > 4931):
85                external32 size = n/a (undefined)
86        else if (\fIp\fP > 15) and/or (\fIr\fP > 307):
87                external32 size = 16
88        else if (\fIp\fP > 6) and/or (\fIr\fP > 37):
89                external32 size = 8
90        else:
91                external32 size = 4
92.fi
93.sp
94If the external32 representation of a datatype is undefined, so are
95the results of using that datatype in operations that require the
96external32 format. Care should be taken not to use incompatible
97datatypes indirectly, e.g., as part of another datatype or through a
98duplicated datatype, in these functions.
99.sp
100If a variable is declared specifying a nondefault KIND value that was
101not obtained with SELECTED_REAL_KIND (i.e., \fIp\fP and/or \fIr\fP are
102unknown), the only way to obtain a matching MPI datatype is to use the
103functions MPI_Sizeof and MPI_Type_match_size.
104
105.SH ERRORS
106.ft R
107Almost all MPI routines return an error value; C routines as
108the value of the function and Fortran routines in the last argument. C++
109functions do not return errors. If the default error handler is set to
110MPI::ERRORS_THROW_EXCEPTIONS, then on error the C++ exception mechanism
111will be used to throw an MPI:Exception object.
112.sp
113Before the error value is returned, the current MPI error handler is
114called. By default, this error handler aborts the MPI job, except for
115I/O function errors. The error handler may be changed with
116MPI_Comm_set_errhandler; the predefined error handler MPI_ERRORS_RETURN
117may be used to cause error values to be returned. Note that MPI does not
118guarantee that an MPI program can continue past an error.
119.sp
120See the MPI man page for a full list of MPI error codes.
121
122.SH SEE ALSO
123.ft R
124.nf
125MPI_Pack_external
126MPI_Sizeof
127MPI_Type_match_size
128MPI_Unpack_external
129SELECTED_REAL_KIND
130
Note: See TracBrowser for help on using the repository browser.