MPI_Type_create_subarray関数
n 次元配列の n 次元サブ配列で構成される新しいデータ型を定義します。 サブ配列は、完全な配列内の任意の場所に配置できます。 配列内に完全に含まれている限り、0 以外のサイズを指定できます。
構文
int MPIAPI MPI_Type_create_subarray(
int ndims,
_In_count_(ndims) int array_of_sizes[],
_In_count_(ndims) int array_of_subsizes[],
_In_count_(ndims) int array_of_starts[],
int order,
MPI_Datatype oldtype,
_Out_ MPI_Datatype *newtype
);
パラメーター
ndims
配列ディメンションの数と、 array_of_sizes、array_of_subsizes、 array_of_starts パラメーター内 の要素の 数。
array_of_sizes
配列全体の各次元内の要素の数。
array_of_subsizes
サブ配列の各ディメンション内の要素の数。
array_of_starts
各ディメンションのサブ配列の開始インデックス。
order
ディメンションの順序。
MPI_ORDER_C
特定の行のすべての要素が連続して格納される行メジャーの順序。
MPI_ORDER_FORTRAN
特定の列のすべての要素が連続して格納される列の主な順序。
Note
C プログラムと Fortran プログラムはどちらもどちらの順序でも使用できます。 定義された値には、一般的な使用法が反映されます。
oldtype
各要素のデータ型を指定します。
newtype [out]
戻り値には、新しいデータ型を表す MPI_Datatype ハンドルが含まれます。
戻り値
成功 したMPI_SUCCESS を返します。 それ以外の場合、戻り値はエラー コードです。
Fortran では、戻り値は IERROR パラメーターに格納されます。
Fortran
MPI_TYPE_CREATE_SUBARRAY(NDIMS, ARRAY_OF_SIZES, ARRAY_OF_SUBSIZES, ARRAY_OF_STARTS, ORDER, OLDTYPE, NEWTYPE, IERROR)
NDIMS, ARRAY_OF_SIZES, ARRAY_OF_SUBSIZES, ARRAY_OF_STARTS, ORDER, OLDTYPE, NEWTYPE, IERROR
注釈
サブ配列のサイズが配列のサイズを超えた場合、関数はエラーを返します。 ディメンション i ごとに、 array_of_subsizes[i] パラメーターの値は 1 以上で、 array_of_sizes[i] パラメーター以下である必要があります。
サブ配列が配列の境界外で開始または終了した場合、関数はエラーを返します。 ディメンション i の場合、パラメーターの値は 0 で、 array_of_starts[i] パラメーターと array_of_subsizes[i] パラメーターの合計は 、array_of_sizes[i] パラメーターの値以下である必要があります。 たとえば、サブ配列のサイズが配列と同じ場合、サブ配列はインデックス 0 から始まる必要があります。 配列は、0 から始まるインデックスが作成されると見なされます。
要件
製品 |
HPC Pack 2012 MS-MPI 再頒布可能パッケージ、HPC Pack 2008 R2 MS-MPI 再頒布可能パッケージ、HPC Pack 2008 MS-MPI 再頒布可能パッケージまたは HPC Pack 2008 クライアント ユーティリティ |
ヘッダー |
Mpi.h;Mpif.h |
ライブラリ |
Msmpi.lib |
[DLL] |
Msmpi.dll |