Documentation for module negf_subgroup_types

Environment for NEGF based quantum transport calculations

source: negf_subgroup_types.F
Loading...

public Types:

negf_subgroup_env_type
Parallel (sub)group environment.

public Subroutines/Functions:

Split MPI communicator to create a set of parallel (sub)groups.
Release a parallel (sub)group environment.

public Types:

TYPE :: negf_subgroup_env_type

Parallel (sub)group environment.


INTEGER
:: ngroups ...
INTEGER
:: mepos_global ...
INTEGER
:: mpi_comm_global ...
INTEGER
:: mpi_comm ...
INTEGER,
DIMENSION(:), ALLOCATABLE :: group_distribution ...
POINTER :: blacs_env ...
POINTER :: para_env ...

SUBROUTINEnegf_sub_env_create(sub_env, negf_control, blacs_env_global, blacs_grid_layout, blacs_repeatable)

Split MPI communicator to create a set of parallel (sub)groups.

Arguments:
INTENT(out)
:: sub_env parallel (sub)group environment (initialised on exit)
POINTER
:: negf_control NEGF input control
POINTER
:: blacs_env_global BLACS environment for all the processors
INTEGER,
INTENT(in)
:: blacs_grid_layout BLACS grid layout
LOGICAL,
INTENT(in)
:: blacs_repeatable BLACS repeatable layout

SUBROUTINEnegf_sub_env_release(sub_env)

Release a parallel (sub)group environment.

Arguments:
INTENT(inout)
:: sub_env parallel (sub)group environment to release