29#include "./base/base_uses.f90"
37 CHARACTER(len=*),
PARAMETER,
PRIVATE :: moduleN =
'global_types'
39 INTEGER,
PARAMETER :: SILENT = 0, &
67 INTEGER :: ref_count = 0
69 CHARACTER(LEN=default_string_length) :: diag_library =
"ScaLAPACK"
70 CHARACTER(LEN=default_string_length) :: cholesky_library =
"ScaLAPACK"
71 CHARACTER(LEN=default_string_length) :: default_fft_library =
"FFTSG"
72 CHARACTER(LEN=default_path_length) :: fftw_wisdom_file_name =
"/etc/fftw/wisdom"
73 CHARACTER(LEN=default_string_length) :: default_dgemm_library =
"BLAS"
74 INTEGER :: fft_pool_scratch_limit = 0
75 INTEGER :: fftw_plan_type = 0
77 INTEGER :: prog_name_id = 0
78 INTEGER :: run_type_id = 0
81 INTEGER :: k_elpa_c = -1
82 INTEGER :: elpa_neigvec_min = 0
83 LOGICAL :: fftw_wisdom_file_explicit = .false.
84 LOGICAL :: elpa_qr = .true.
85 LOGICAL :: elpa_print = .false.
86 LOGICAL :: elpa_one_stage = .false.
87 INTEGER :: dlaf_neigvec_min = 0
88 INTEGER :: dlaf_cholesky_n_min = 0
89 LOGICAL :: direct_generalized_diagonalization = .false.
90 LOGICAL :: blacs_repeatable = .false.
91 REAL(kind=
dp) :: cp2k_start_time = 0.0_dp
92 REAL(kind=
dp) :: cp2k_target_time = huge(0.0_dp)
95 REAL(kind=
dp) :: eps_check_diag = -1.0_dp
109 cpassert(.NOT.
ASSOCIATED(globenv))
111 ALLOCATE (globenv%gaussian_rng_stream)
112 globenv%ref_count = 1
125 cpassert(
ASSOCIATED(globenv))
126 cpassert(globenv%ref_count > 0)
127 globenv%ref_count = globenv%ref_count + 1
139 IF (
ASSOCIATED(globenv))
THEN
140 cpassert(globenv%ref_count > 0)
141 globenv%ref_count = globenv%ref_count - 1
142 IF (globenv%ref_count == 0)
THEN
143 IF (
ALLOCATED(globenv%gaussian_rng_stream))
THEN
144 DEALLOCATE (globenv%gaussian_rng_stream)
methods related to the blacs parallel environment
integer, parameter, public blacs_grid_square
Define type storing the global information of a run. Keep the amount of stored data small....
subroutine, public globenv_retain(globenv)
Retains the global environment globenv.
subroutine, public globenv_create(globenv)
Creates the global environment globenv.
subroutine, public globenv_release(globenv)
Releases the global environment globenv.
Defines the basic variable types.
integer, parameter, public dp
integer, parameter, public default_string_length
integer, parameter, public default_path_length
Machine interface based on Fortran 2003 and POSIX.
real(kind=dp) function, public m_walltime()
returns time from a real-time clock, protected against rolling early/easily
Parallel (pseudo)random number generator (RNG) for multiple streams and substreams of random numbers.
contains the initially parsed file and the initial parallel environment