Documentation for module pw_grids

This module defines the grid data type and some basic operations on it

source: pw_grids.F
Loading...

public Subroutines/Functions:

Access to information stored in the pw_grid_type
Recalculate the g-vectors after a change of the box
FUNCTION
LOGICAL
pw_grid_compare (grida, gridb)
Check if two pw_grids are equal
Initialize a PW grid with all defaults
releases the given pw grid
SUBROUTINE
pw_grid_retain (pw_grid)
retains the given pw grid
sets up a pw_grid

Parameters:

INTEGER
:: do_pw_grid_blocked_false = 0
INTEGER
:: do_pw_grid_blocked_free = 2
INTEGER
:: do_pw_grid_blocked_true = 1

SUBROUTINEget_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

Arguments:
POINTER
:: 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,
INTENT(out),
OPTIONAL
:: npts(3) ...
INTEGER(int_8),
INTENT(out),
OPTIONAL
:: ngpts ...
INTEGER(int_8),
INTENT(out),
OPTIONAL
:: ngpts_cut ...
REAL(dp),
INTENT(out),
OPTIONAL
:: dr(3) ...
REAL(dp),
INTENT(out),
OPTIONAL
:: cutoff ...
LOGICAL,
INTENT(out),
OPTIONAL
:: orthorhombic ...
REAL(dp),
OPTIONAL, POINTER
:: gvectors(:,:) ...
REAL(dp),
OPTIONAL, POINTER
:: gsquare(:) ...

SUBROUTINEpw_grid_change(cell_hmat, pw_grid)

Recalculate the g-vectors after a change of the box

Arguments:
REAL(dp),
INTENT(in)
:: cell_hmat(3,3) ...
POINTER
:: pw_grid ...

FUNCTIONpw_grid_compare(grida, gridb)

Check if two pw_grids are equal

Return Value ::
LOGICAL
Arguments:
INTENT(in)
:: grida ...
INTENT(in)
:: gridb ...

SUBROUTINEpw_grid_create(pw_grid, pe_group, local)

Initialize a PW grid with all defaults

Arguments:
POINTER
:: pw_grid ...
INTEGER,
INTENT(in)
:: pe_group ...
LOGICAL,
INTENT(in),
OPTIONAL
:: local ...

SUBROUTINEpw_grid_release(pw_grid)

releases the given pw grid

Arguments:
POINTER
:: pw_grid the pw grid to release

SUBROUTINEpw_grid_retain(pw_grid)

retains the given pw grid

Arguments:
POINTER
:: pw_grid the pw grid to retain

SUBROUTINEpw_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

Arguments:
REAL(dp),
INTENT(in)
:: cell_hmat(3,3) ...
POINTER
:: pw_grid ...
INTEGER,
INTENT(in),
OPTIONAL
:: grid_span ...
REAL(dp),
INTENT(in),
OPTIONAL
:: cutoff ...
INTEGER,
INTENT(in),
OPTIONAL
:: bounds(2,3) ...
INTEGER,
INTENT(in),
OPTIONAL
:: bounds_local(2,3) ...
INTEGER,
INTENT(in),
OPTIONAL
:: npts(3) ...
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 ...
INTENT(in),
OPTIONAL
:: ref_grid ...
INTEGER,
INTENT(in),
OPTIONAL
:: rs_dims(2) ...
INTEGER,
INTENT(in),
OPTIONAL
:: iounit ...