(git:58e3e09)
ps_wavelet_types.F
Go to the documentation of this file.
1 !--------------------------------------------------------------------------------------------------!
2 ! CP2K: A general program to perform molecular dynamics simulations !
3 ! Copyright 2000-2024 CP2K developers group <https://cp2k.org> !
4 ! !
5 ! SPDX-License-Identifier: GPL-2.0-or-later !
6 !--------------------------------------------------------------------------------------------------!
7 
8 ! **************************************************************************************************
9 !> \brief Definition and initialisation of the ps_wavelet data type.
10 !> \author Florian Schiffmann (09.2007,fschiff)
11 ! **************************************************************************************************
13 
14  USE kinds, ONLY: dp
15 #include "../base/base_uses.f90"
16 
17  IMPLICIT NONE
18 
19  PRIVATE
20 
21  CHARACTER(len=*), PARAMETER, PRIVATE :: moduleN = 'ps_wavelet_types'
22 
23  INTEGER, PARAMETER, PUBLIC :: wavelet3d = 1400, &
24  wavelet2d = 1401, &
25  wavelet1d = 1402, &
26  wavelet0d = 1403
27 
28  PUBLIC :: ps_wavelet_type, &
30 
31 ! **************************************************************************************************
32 !> \par History
33 !> 09.2007 created [Florian Schiffmann]
34 !> \author fschiff
35 ! **************************************************************************************************
36  TYPE ps_wavelet_type
37  CHARACTER(LEN=1) :: geocode = " "
38  CHARACTER(LEN=1) :: datacode = " "
39  INTEGER :: itype_scf = 0
40  INTEGER :: method = wavelet3d, special_dimension = 0
41  REAL(kind=dp), POINTER, DIMENSION(:) :: karray => null()
42  REAL(kind=dp), DIMENSION(:, :, :), POINTER :: rho_z_sliced => null()
43  INTEGER, DIMENSION(3) :: ps_grid = 0
44  END TYPE ps_wavelet_type
45 
46 CONTAINS
47 
48 ! **************************************************************************************************
49 !> \brief ...
50 !> \param wavelet ...
51 ! **************************************************************************************************
52  SUBROUTINE ps_wavelet_release(wavelet)
53 
54  TYPE(ps_wavelet_type), POINTER :: wavelet
55 
56  IF (ASSOCIATED(wavelet)) THEN
57  IF (ASSOCIATED(wavelet%karray)) &
58  DEALLOCATE (wavelet%karray)
59  IF (ASSOCIATED(wavelet%rho_z_sliced)) &
60  DEALLOCATE (wavelet%rho_z_sliced)
61  DEALLOCATE (wavelet)
62  END IF
63  END SUBROUTINE ps_wavelet_release
64 
65 END MODULE ps_wavelet_types
Defines the basic variable types.
Definition: kinds.F:23
integer, parameter, public dp
Definition: kinds.F:34
Definition and initialisation of the ps_wavelet data type.
integer, parameter, public wavelet3d
integer, parameter, public wavelet0d
integer, parameter, public wavelet1d
subroutine, public ps_wavelet_release(wavelet)
...
integer, parameter, public wavelet2d