DL_MG
Functions/Subroutines | Variables
dl_mg_defco_utils Module Reference

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
 

Detailed Description

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

Function/Subroutine Documentation

◆ dl_mg_defco_utils_abort()

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.

◆ dl_mg_defco_utils_alloc_check()

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.

Parameters
[in]statusstatus integer returned by allocate()
[in]routinename of calling routine
[in]arrayname of array

◆ dl_mg_defco_utils_assert()

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.

◆ dl_mg_defco_utils_dealloc_check()

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.

Parameters
[in]statusstatus integer returned by deallocate()
[in]routinename of calling routine
[in]arrayname of array

◆ dl_mg_defco_utils_get_unit()

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.

◆ dl_mg_defco_utils_integrate_product_on_grid()

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

Variable Documentation

◆ dl_mg_defco_tag_ub

integer public dl_mg_defco_utils::dl_mg_defco_tag_ub