1MODULE basic_types
2
3  USE kinds
4
5  TYPE primitive_type
6     INTEGER ::  la_max,la_min,lb_max,lb_min,igrid
7     REAL(KIND=dp) :: zeta,zetb,ra(3),rab(3),rab2
8     REAL(KIND=dp) :: intsum
9  END TYPE
10
11  TYPE realspace_grid_type
12     INTEGER :: ngpts                                    ! # grid points
13     INTEGER, DIMENSION (3) :: npts                      ! # grid points per dimension
14     INTEGER, DIMENSION (3) :: lb                        ! lower bounds
15     INTEGER, DIMENSION (3) :: ub                        ! upper bounds
16     REAL(KIND=dp), DIMENSION ( :, :, : ),POINTER :: r   ! the grid
17     REAL(KIND=dp), DIMENSION(3) :: dr                   ! grid spacing
18     REAL(KIND=dp), DIMENSION(3,3) :: dh                 ! grid matrix
19     INTEGER, DIMENSION (3) :: perd                      ! periodicity enforced
20     INTEGER :: border                                   ! border points
21     INTEGER :: ngpts_local                              ! local dimensions
22     INTEGER, DIMENSION (3) :: npts_local
23     INTEGER, DIMENSION (3) :: lb_local
24     INTEGER, DIMENSION (3) :: ub_local
25  END TYPE realspace_grid_type
26
27END MODULE basic_types
28