DL_MG
|
Support routines for dl_mg_defco module. More...
Functions/Subroutines | |
subroutine, public | dl_mg_defco_utils_assert (condition, msg) |
Replaces ONETEP routine utils_assert with a routine that uses dl_mg error-handling routines. Written by JCW, June 2016. More... | |
subroutine, public | dl_mg_defco_utils_abort (msg) |
Replaces ONETEP routine utils_abort with a routine that uses dl_mg error-handling routines. This routine will always raise an "unspecified" error, and the error should be described in the "msg" string. Written by JCW, June 2016. More... | |
subroutine, public | dl_mg_defco_utils_alloc_check (status, routine, array) |
Replaces ONETEP routine utils_alloc_check with a routine that uses dl_mg error-handling routines. Written by JCW, June 2016. More... | |
subroutine, public | dl_mg_defco_utils_dealloc_check (status, routine, array) |
Replaces ONETEP routine utils_dealloc_check with a routine that uses dl_mg error-handling routines. Written by JCW, June 2016. More... | |
integer function, public | dl_mg_defco_utils_get_unit () |
Finds a free unit for I/O Based on utils_unit from ONETEP utils module, which was an amalgamation of restart_find_unit by Chris-Kriton Skylaris and esdf_unit by Chris Pickard. Modified by James Womack to make use of internal DL_MG objects. More... | |
real(kind=wp) function, public | dl_mg_defco_utils_integrate_product_on_grid (weight, x1, x2, m1, m2, m3, comm) |
Integrate the functions represented on a 3D grid. Integration occurs over slices array slices (1:m1, 1:m2, 1:m3). More... | |
Variables | |
integer(kind=mpi_address_kind), public | dl_mg_defco_tag_ub |
Support routines for dl_mg_defco module.
These routines replace routines formerly provided by ONETEP and are mostly based on the corresponding ONETEP routines, but make use of internal DL_MG data and routines.
Written by J. C. Womack, 2016
subroutine, public dl_mg_defco_utils::dl_mg_defco_utils_abort | ( | character(len=*), intent(in) | msg | ) |
Replaces ONETEP routine utils_abort with a routine that uses dl_mg error-handling routines. This routine will always raise an "unspecified" error, and the error should be described in the "msg" string. Written by JCW, June 2016.
subroutine, public dl_mg_defco_utils::dl_mg_defco_utils_alloc_check | ( | integer, intent(in) | status, |
character(len=*), intent(in) | routine, | ||
character(len=*), intent(in) | array | ||
) |
Replaces ONETEP routine utils_alloc_check with a routine that uses dl_mg error-handling routines. Written by JCW, June 2016.
[in] | status | status integer returned by allocate() |
[in] | routine | name of calling routine |
[in] | array | name of array |
subroutine, public dl_mg_defco_utils::dl_mg_defco_utils_assert | ( | logical, intent(in) | condition, |
character(len=*), intent(in) | msg | ||
) |
Replaces ONETEP routine utils_assert with a routine that uses dl_mg error-handling routines. Written by JCW, June 2016.
subroutine, public dl_mg_defco_utils::dl_mg_defco_utils_dealloc_check | ( | integer, intent(in) | status, |
character(len=*), intent(in) | routine, | ||
character(len=*), intent(in) | array | ||
) |
Replaces ONETEP routine utils_dealloc_check with a routine that uses dl_mg error-handling routines. Written by JCW, June 2016.
[in] | status | status integer returned by deallocate() |
[in] | routine | name of calling routine |
[in] | array | name of array |
integer function, public dl_mg_defco_utils::dl_mg_defco_utils_get_unit |
Finds a free unit for I/O Based on utils_unit from ONETEP utils module, which was an amalgamation of restart_find_unit by Chris-Kriton Skylaris and esdf_unit by Chris Pickard. Modified by James Womack to make use of internal DL_MG objects.
real(kind=wp) function, public dl_mg_defco_utils::dl_mg_defco_utils_integrate_product_on_grid | ( | real(kind=wp), intent(in) | weight, |
real(kind=wp), dimension(:, :, :), intent(in) | x1, | ||
real(kind=wp), dimension(:, :, :), intent(in), optional | x2, | ||
integer, intent(in) | m1, | ||
integer, intent(in) | m2, | ||
integer, intent(in) | m3, | ||
optional | comm | ||
) |
Integrate the functions represented on a 3D grid. Integration occurs over slices array slices (1:m1, 1:m2, 1:m3).
If x2 is present, integration is over the product of x1 and x2. If x2 is not present, integration is over x1.
Adapted from integrals_product_on_grid from ONETEP's integrals module, for inclusion in DL_MG. See original documentation in source. J. C. Womack, 2016
integer public dl_mg_defco_utils::dl_mg_defco_tag_ub |