![]() |
(git:691081d)
|
Bounded geometry-only cache for native atom-grid interpolation. More...
Data Types | |
| type | native_grid_interpolation_stencil_type |
| type | native_grid_cache_type |
Functions/Subroutines | |
| subroutine, public | prepare_native_grid_cache (cache, grid, cell, nrows, wrap, max_bytes) |
| Prepare outside parallel regions. Cache a bounded prefix and compute the rest normally. | |
| subroutine, public | release_native_grid_cache (cache) |
| Release geometry storage, including when the QS environment is only partly released. | |
| logical function, public | fetch_native_grid_stencil (cache, row, point, stencil) |
| Read a stencil only on an exact coordinate match. Safe for concurrent readers. | |
| subroutine, public | store_native_grid_stencil (cache, row, point, stencil) |
| Store from the unique forward owner of a row, never from concurrent adjoint readers. | |
Variables | |
| integer, parameter, public | native_grid_interp_offset_min = -5 |
| integer, parameter, public | native_grid_interp_offset_max = 6 |
| integer, parameter, public | native_grid_interp_npts = native_grid_interp_offset_max - native_grid_interp_offset_min + 1 |
Bounded geometry-only cache for native atom-grid interpolation.
| subroutine, public qs_native_grid_cache::prepare_native_grid_cache | ( | type(native_grid_cache_type), intent(inout) | cache, |
| type(pw_grid_type), intent(in) | grid, | ||
| type(cell_type), intent(in) | cell, | ||
| integer, intent(in) | nrows, | ||
| logical, intent(in) | wrap, | ||
| integer(kind=int_8), intent(in), optional | max_bytes ) |
Prepare outside parallel regions. Cache a bounded prefix and compute the rest normally.
| cache | per-QS-environment cache |
| grid | current auxiliary grid |
| cell | current cell and periodicity |
| nrows | local atom-grid row count |
| wrap | wrap the auxiliary cell in nonperiodic directions |
| max_bytes | optional memory budget for testing, in bytes |
Definition at line 55 of file qs_native_grid_cache.F.
| subroutine, public qs_native_grid_cache::release_native_grid_cache | ( | type(native_grid_cache_type), intent(inout) | cache | ) |
Release geometry storage, including when the QS environment is only partly released.
| cache | ... |
Definition at line 99 of file qs_native_grid_cache.F.
| logical function, public qs_native_grid_cache::fetch_native_grid_stencil | ( | type(native_grid_cache_type), intent(in) | cache, |
| integer, intent(in) | row, | ||
| real(dp), dimension(3), intent(in) | point, | ||
| type(native_grid_interpolation_stencil_type), intent(out) | stencil ) |
Read a stencil only on an exact coordinate match. Safe for concurrent readers.
| cache | ... |
| row | local grid row |
| point | current Cartesian coordinates, including atom motion and quadrature changes |
| stencil | cached interpolation stencil on a hit |
Definition at line 114 of file qs_native_grid_cache.F.
| subroutine, public qs_native_grid_cache::store_native_grid_stencil | ( | type(native_grid_cache_type), intent(inout) | cache, |
| integer, intent(in) | row, | ||
| real(dp), dimension(3), intent(in) | point, | ||
| type(native_grid_interpolation_stencil_type), intent(in) | stencil ) |
Store from the unique forward owner of a row, never from concurrent adjoint readers.
| cache | ... |
| row | local grid row |
| point | current Cartesian coordinates |
| stencil | complete value stencil, not an indices-only stencil |
Definition at line 138 of file qs_native_grid_cache.F.
| integer, parameter, public qs_native_grid_cache::native_grid_interp_offset_min = -5 |
Definition at line 17 of file qs_native_grid_cache.F.
| integer, parameter, public qs_native_grid_cache::native_grid_interp_offset_max = 6 |
Definition at line 17 of file qs_native_grid_cache.F.
| integer, parameter, public qs_native_grid_cache::native_grid_interp_npts = native_grid_interp_offset_max - native_grid_interp_offset_min + 1 |
Definition at line 18 of file qs_native_grid_cache.F.