Module ppm_module_map_connect

This module provides the mapping routines for connections

Defined Types

name description

no types

Defined Module Interfaces

Defined Module Subroutines

name description

no subroutines

Interface ppm_map_connect_distrib

Subroutines contained in this interface:

name description

ppm_map_connect_distrib

This routine distributes the connections to all processors such

Interface ppm_map_connect_prune

Subroutines contained in this interface:

name description

ppm_map_connect_prune

This routine prunes all connections that are not needed

Interface ppm_map_connect_send

Subroutines contained in this interface:

name description

ppm_map_connect_send

This routine sends and receives the connection data

Subroutine ppm_map_connect_distrib

This routine distributes the connections to all processors such that every processor has all the connections it has at least one particle for.

This routine directly sends and receives the connection data as integers

Arguments

name type dimension intent optional description

cd

integer array

(:,:)

Connection data

lda

integer

(IN)

Leading dimension of cd(:,:)

ncon

integer

(INOUT)

Number of connections

id

integer array

(:)

(IN)

Local to global particle number mapping

npart

integer

(IN)

Number of particles

info

integer

(OUT)

Returns status, 0 upon success

cd

integer array, (:,:), no intent declared

Connection data

lda

integer, , (IN)

Leading dimension of cd(:,:)

ncon

integer, , (INOUT)

Number of connections

id

integer array, (:), (IN)

Local to global particle number mapping

npart

integer, , (IN)

Number of particles

info

integer, , (OUT)

Returns status, 0 upon success

Used Modules

ppm_module_data, ppm_module_error, ppm_module_alloc, ppm_module_substop, ppm_module_substart, ppm_module_util_invert_list

Subroutine ppm_map_connect_prune

This routine prunes all connections that are not needed on this processor according to the current topology and whether symmetry will be used or not.

Arguments

name type dimension intent optional description

topoid

integer

(IN)

ID of current topology

cd

integer array

(:,:)

Connection data

lda

integer

(IN)

Leading dimension of cd(:,:)

ncon

integer

(INOUT)

Number of connections

id

integer array

(:)

(IN)

Local to global particle number mapping

npart

integer

(IN)

Number of particles

lsymm

logical

(IN)

Is symmetric?

info

integer

(OUT)

Returns status, 0 upon success

topoid

integer, , (IN)

ID of current topology

cd

integer array, (:,:), no intent declared

Connection data

lda

integer, , (IN)

Leading dimension of cd(:,:)

ncon

integer, , (INOUT)

Number of connections

id

integer array, (:), (IN)

Local to global particle number mapping

npart

integer, , (IN)

Number of particles

lsymm

logical, , (IN)

Is symmetric?

info

integer, , (OUT)

Returns status, 0 upon success

Used Modules

ppm_module_data, ppm_module_error, ppm_module_alloc, ppm_module_check_id, ppm_module_substop, ppm_module_substart, ppm_module_util_invert_list

Subroutine ppm_map_connect_send

This routine sends and receives the connection data according to the information stored in ppm_buffer2part

[Note]Note

This routine directly sends and receives the connection data as integers

Arguments

name type dimension intent optional description

cd

integer array

(:,:)

Connection data

lda

integer

(IN)

The leading dimension of cd(:,:)

ncon

integer

(INOUT)

Number of connections

id

integer array

(:)

(IN)

Local to global particle number mapping

npart

integer

(IN)

Number of particles

info

integer

(OUT)

Returns status, 0 upon success

cd

integer array, (:,:), no intent declared

Connection data

lda

integer, , (IN)

The leading dimension of cd(:,:)

ncon

integer, , (INOUT)

Number of connections

id

integer array, (:), (IN)

Local to global particle number mapping

npart

integer, , (IN)

Number of particles

info

integer, , (OUT)

Returns status, 0 upon success

Used Modules

ppm_module_data, ppm_module_error, ppm_module_alloc, ppm_module_substop, ppm_module_substart, ppm_module_util_invert_list

Defined Module Variables

name type dimension description

no variables

Used Modules

has no uses