Documentation for module qs_matrix_pools

wrapper for the pools of matrixes

source: qs_matrix_pools.F
Loading...

public Types:

qs_matrix_pools_type
container for the pools of matrixes used by qs

public Subroutines/Functions:

SUBROUTINE
mpools_create (mpools)
creates a mpools
returns various attributes of the mpools (notably the pools contained in it)
rebuilds the pools of the (ao x mo, ao x ao , mo x mo) full matrixes
SUBROUTINE
mpools_release (mpools)
releases the given mpools
SUBROUTINE
mpools_retain (mpools)
retains the given qs_matrix_pools_type

public Types:

TYPE :: qs_matrix_pools_type

container for the pools of matrixes used by qs


INTEGER
:: id_nr identification number
INTEGER
:: ref_count reference count (see doc/ReferenceCounting.html)
DIMENSION(:), POINTER :: ao_mo_fm_pools pools with (ao x mo) full matrixes (same order as c).
DIMENSION(:), POINTER :: ao_ao_fm_pools pools with (ao x ao) full matrixes (same order as c).
DIMENSION(:), POINTER :: mo_mo_fm_pools pools with (mo x mo) full matrixes (same order as c).
DIMENSION(:), POINTER :: ao_mosub_fm_pools pools with (ao x mosub) full matrixes, where mosub are a subset of the mos
DIMENSION(:), POINTER :: mosub_mosub_fm_pools pools with (mosub x mosub) full matrixes, where mosub are a subset of the mos

SUBROUTINEmpools_create(mpools)

creates a mpools

Arguments:
POINTER
:: mpools the mpools to create

SUBROUTINEmpools_get(mpools, ao_mo_fm_pools, ao_ao_fm_pools, mo_mo_fm_pools, ao_mosub_fm_pools, mosub_mosub_fm_pools, maxao_maxmo_fm_pool, maxao_maxao_fm_pool, maxmo_maxmo_fm_pool)

returns various attributes of the mpools (notably the pools contained in it)

Arguments:
POINTER
:: mpools the matrix pools object you want info about
OPTIONAL, POINTER
:: ao_mo_fm_pools(:) ...
OPTIONAL, POINTER
:: ao_ao_fm_pools(:) ...
OPTIONAL, POINTER
:: mo_mo_fm_pools(:) ...
OPTIONAL, POINTER
:: ao_mosub_fm_pools(:) ...
OPTIONAL, POINTER
:: mosub_mosub_fm_pools(:) ...
OPTIONAL, POINTER
:: maxao_maxmo_fm_pool ...
OPTIONAL, POINTER
:: maxao_maxao_fm_pool ...
OPTIONAL, POINTER
:: maxmo_maxmo_fm_pool ...

SUBROUTINEmpools_rebuild_fm_pools(mpools, mos, blacs_env, para_env, nmosub)

rebuilds the pools of the (ao x mo, ao x ao , mo x mo) full matrixes

Arguments:
POINTER
:: mpools the environement where the pools should be rebuilt
POINTER
:: mos(:) the molecular orbitals (qs_env%c), must contain up to date nmo and nao
POINTER
:: blacs_env the blacs environment of the full matrixes
POINTER
:: para_env the parallel environment of the matrixes
INTEGER,
INTENT(in),
OPTIONAL
:: nmosub(2) number of the orbitals for the creation of the pools containing only a subset of mos (OPTIONAL)

SUBROUTINEmpools_release(mpools)

releases the given mpools

Arguments:
POINTER
:: mpools the matrix pools type to retain

SUBROUTINEmpools_retain(mpools)

retains the given qs_matrix_pools_type

Arguments:
POINTER
:: mpools the matrix pools type to retain