(git:6a2e663)
|
This module defines the grid data type and some basic operations on it. More...
Functions/Subroutines | |
subroutine, public | pw_grid_create (pw_grid, pe_group, local) |
Initialize a PW grid with all defaults. More... | |
logical function, public | pw_grid_compare (grida, gridb) |
Check if two pw_grids are equal. More... | |
subroutine, public | get_pw_grid_info (pw_grid, id_nr, mode, vol, dvol, npts, ngpts, ngpts_cut, dr, cutoff, orthorhombic, gvectors, gsquare) |
Access to information stored in the pw_grid_type. More... | |
subroutine, public | pw_grid_setup (cell_hmat, pw_grid, grid_span, cutoff, bounds, bounds_local, npts, spherical, odd, fft_usage, ncommensurate, icommensurate, blocked, ref_grid, rs_dims, iounit) |
sets up a pw_grid More... | |
subroutine, public | pw_grid_change (cell_hmat, pw_grid) |
Recalculate the g-vectors after a change of the box. More... | |
subroutine, public | pw_grid_retain (pw_grid) |
retains the given pw grid More... | |
subroutine, public | pw_grid_release (pw_grid) |
releases the given pw grid More... | |
Variables | |
integer, parameter, public | do_pw_grid_blocked_false = 0 |
integer, parameter, public | do_pw_grid_blocked_true = 1 |
integer, parameter, public | do_pw_grid_blocked_free = 2 |
This module defines the grid data type and some basic operations on it.
if no cutoff or a negative cutoff is given, all g-vectors in the box are included (no spherical cutoff)
for a distributed setup the array in para rs_dims has to be initialized output: pw_grid
pw_grid_change : updates g-vectors after a change of the box
subroutine, public pw_grids::pw_grid_create | ( | type(pw_grid_type), pointer | pw_grid, |
class(mp_comm_type), intent(in) | pe_group, | ||
logical, intent(in), optional | local | ||
) |
Initialize a PW grid with all defaults.
pw_grid | ... |
pe_group | ... |
local | ... |
Definition at line 92 of file pw_grids.F.
logical function, public pw_grids::pw_grid_compare | ( | type(pw_grid_type), intent(in) | grida, |
type(pw_grid_type), intent(in) | gridb | ||
) |
Check if two pw_grids are equal.
grida | ... |
gridb | ... |
Definition at line 146 of file pw_grids.F.
subroutine, public pw_grids::get_pw_grid_info | ( | type(pw_grid_type), intent(in) | pw_grid, |
integer, intent(out), optional | id_nr, | ||
integer, intent(out), optional | mode, | ||
real(dp), intent(out), optional | vol, | ||
real(dp), intent(out), optional | dvol, | ||
integer, dimension(3), intent(out), optional | npts, | ||
integer(int_8), intent(out), optional | ngpts, | ||
integer(int_8), intent(out), optional | ngpts_cut, | ||
real(dp), dimension(3), intent(out), optional | dr, | ||
real(dp), intent(out), optional | cutoff, | ||
logical, intent(out), optional | orthorhombic, | ||
real(dp), dimension(:, :), optional, pointer | gvectors, | ||
real(dp), dimension(:), optional, pointer | gsquare | ||
) |
Access to information stored in the pw_grid_type.
pw_grid | ... |
id_nr | ... |
mode | ... |
vol | ... |
dvol | ... |
npts | ... |
ngpts | ... |
ngpts_cut | ... |
dr | ... |
cutoff | ... |
orthorhombic | ... |
gvectors | ... |
gsquare | ... |
Definition at line 182 of file pw_grids.F.
subroutine, public pw_grids::pw_grid_setup | ( | real(kind=dp), dimension(3, 3), intent(in) | cell_hmat, |
type(pw_grid_type), intent(inout) | pw_grid, | ||
integer, intent(in), optional | grid_span, | ||
real(kind=dp), intent(in), optional | cutoff, | ||
integer, dimension(2, 3), intent(in), optional | bounds, | ||
integer, dimension(2, 3), intent(in), optional | bounds_local, | ||
integer, dimension(3), intent(in), optional | npts, | ||
logical, intent(in), optional | spherical, | ||
logical, intent(in), optional | odd, | ||
logical, intent(in), optional | fft_usage, | ||
integer, intent(in), optional | ncommensurate, | ||
integer, intent(in), optional | icommensurate, | ||
integer, intent(in), optional | blocked, | ||
type(pw_grid_type), intent(in), optional | ref_grid, | ||
integer, dimension(2), intent(in), optional | rs_dims, | ||
integer, intent(in), optional | iounit | ||
) |
sets up a pw_grid
cell_hmat | ... |
pw_grid | ... |
grid_span | ... |
cutoff | ... |
bounds | ... |
bounds_local | ... |
npts | ... |
spherical | ... |
odd | ... |
fft_usage | ... |
ncommensurate | ... |
icommensurate | ... |
blocked | ... |
ref_grid | ... |
rs_dims | ... |
iounit | ... |
Definition at line 283 of file pw_grids.F.
subroutine, public pw_grids::pw_grid_change | ( | real(kind=dp), dimension(3, 3), intent(in) | cell_hmat, |
type(pw_grid_type), intent(inout) | pw_grid | ||
) |
Recalculate the g-vectors after a change of the box.
cell_hmat | ... |
pw_grid | ... |
Definition at line 2067 of file pw_grids.F.
subroutine, public pw_grids::pw_grid_retain | ( | type(pw_grid_type), intent(inout) | pw_grid | ) |
retains the given pw grid
pw_grid | the pw grid to retain |
Definition at line 2116 of file pw_grids.F.
subroutine, public pw_grids::pw_grid_release | ( | type(pw_grid_type), pointer | pw_grid | ) |
releases the given pw grid
pw_grid | the pw grid to release |
Definition at line 2132 of file pw_grids.F.
integer, parameter, public pw_grids::do_pw_grid_blocked_false = 0 |
Definition at line 78 of file pw_grids.F.
integer, parameter, public pw_grids::do_pw_grid_blocked_true = 1 |
Definition at line 78 of file pw_grids.F.
integer, parameter, public pw_grids::do_pw_grid_blocked_free = 2 |
Definition at line 78 of file pw_grids.F.