Megosztás:


MPI_Type_create_subarray függvény

Egy új adattípust határoz meg, amely egy n-dimenziós tömb n dimenziós részarrázatából áll. Az alarray a teljes tömbön belül bárhol elhelyezhető. Bármilyen nem nulla méretű lehet, feltéve, hogy teljes egészében megtalálható a tömbben.

Szintaxis

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
);

Paraméterek

ndims

A tömbdimenziók száma, valamint a array_of_sizes, array_of_subsizes és array_of_starts paraméterek elemeinek száma.

array_of_sizes

A teljes tömb minden dimenziójában lévő elemek száma.

array_of_subsizes

Az alarraság egyes dimenzióiban lévő elemek száma.

array_of_starts

Az alarraság kezdő indexe az egyes dimenziókban.

order

A méretek sorrendje.

MPI_ORDER_C

Az a sor-fő sorrend, amelyben egy adott sor összes eleme egybefüggően van tárolva.

MPI_ORDER_FORTRAN

Az oszlop fő sorrendje, amelyben egy adott oszlop összes eleme egybefüggően van tárolva.

Megjegyzés

A C és a Fortran programok egyaránt használhatják a sorrendet. A definiált értékek a tipikus használatot tükrözik.

 

oldtype

Az egyes elemek adattípusát adja meg.

newtype [out]

Visszatérés esetén egy MPI_Datatype leírót tartalmaz, amely az új adattípust jelöli.

Visszatérési érték

Sikeres MPI_SUCCESS ad vissza. Ellenkező esetben a visszatérési érték hibakód.

A Fortranban a visszatérési érték az IERROR paraméterben van tárolva.

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

Megjegyzések

A függvény hibát ad vissza, ha a részarray mérete meghaladja a tömb méretét. Az i dimenziók esetében a array_of_subsizes[i] paraméter értékének egynél nagyobbnak vagy egyenlőnek kell lennie a array_of_sizes[i] paraméternél vagy egyenlőnek kell lennie.

A függvény hibát ad vissza, ha az alarraság a tömb határain kívül kezdődik vagy végződik. Az i dimenzió esetében a paraméter értékének nullának kell lennie, és a array_of_starts[i] és array_of_subsizes[i] paraméterek összege nem lehet kisebb vagy egyenlő a array_of_sizes[i] paraméter értékével. Ha például a részarray mérete megegyezik a tömb méretével, akkor a részarraynak nullával kell kezdődnie. A tömbök indexelése nullától kezdődik.

Követelmények

Termék

HPC Pack 2012 MS-MPI terjeszthető csomag, HPC Pack 2008 R2 MS-MPI terjeszthető csomag, HPC Pack 2008 MS-MPI újraterjeszthető csomag vagy HPC Pack 2008 ügyfél-segédprogramok

Fejléc

Mpi.h; Mpif.h

Kódtár

Msmpi.lib

DLL

Msmpi.dll

Lásd még

MPI-adattípus-függvények