1. Indice de pagina
  2. 1. Descripción breve
  3. 2. Sintaxis
  4. 2.1. En C
  5. 2.2. En C++
  6. 3. Parámetros
  7. 3.1. De entrada
  8. 3.2. De salida
  9. 4. Descripción
  10. 5. Errores
  11. 6. Véase también

MPI_Cart_rank

Descripción breve

Determina el rango del proceso en el comunicador cartesiano.

Sintaxis

En C

#include <mpi.h>
int MPI_Cart_rank(MPI_Comm comm, int *coords, int *rank)

En C++

#include <mpi.h>
int Cartcomm::Get_cart_rank(const int coords[]) const

Parámetros

De entrada

comm Comunicador con topología cartesiana.
coords Array de enteros (de tamaño ndims, que fue definido con la llamada MPI_Cart_create) especifica las coordenadas cartesianas del proceso.

De salida

rank Rango del proceso.

Descripción

Para cada proceso del comunicador cartesiano, la función MPI_Cart_rank traduce las coordenadas lógicas de un proceso a su rango. Para la dimensión i con periodicidad = true, si la coordenada i esta fuera del rango, coords(i) < 0 o coords(i) >= dims(i), se cambian automaticamente dentro del rango 0 =< coords(i) < dims(i). Si esta fuera de rango y la dimensión no es periódica ocurre un error.

Errores

MPI_SUCCESS No ha habido error, la función se ha completado satisfactoriamente.
MPI_ERR_TOPOLOGY Topología no válida. No hay un topología asociada a este comunicador.
MPI_ERR_RANK Rango (rank) de origen o de destino no válido. El valor debe estar comprendido entre cero y el número de procesos del comunicador menos uno. El rango en una función de recibir (como MPI_Recv) puede tomar el valor de MPI_ANY_SOURCE.
MPI_ERR_ARG Valor de argumento no válido.

Véase también

MPI_Cart_create
MPI_Cart_coords
MPI_Cart_shift

Creado por: Daniel Guerrero Martínez y Sergio Rodríguez Lumley 2010

Valid HTML 4.01 Transitional