mod_dft_molgrid Module


Legacy Fortran wrappers


Uses

  • module~~mod_dft_molgrid~~UsesGraph module~mod_dft_molgrid mod_dft_molgrid module~bragg_slater_radii bragg_slater_radii module~mod_dft_molgrid->module~bragg_slater_radii module~lebedev lebedev module~mod_dft_molgrid->module~lebedev module~mod_grid_storage mod_grid_storage module~mod_dft_molgrid->module~mod_grid_storage module~precision precision module~mod_dft_molgrid->module~precision module~bragg_slater_radii->module~precision module~lebedev->module~precision module~mod_grid_storage->module~precision iso_fortran_env iso_fortran_env module~precision->iso_fortran_env

Used by

  • module~~mod_dft_molgrid~~UsedByGraph module~mod_dft_molgrid mod_dft_molgrid module~dft dft module~dft->module~mod_dft_molgrid module~mod_dft_fuzzycell mod_dft_fuzzycell module~mod_dft_fuzzycell->module~mod_dft_molgrid module~mod_dft_gridint mod_dft_gridint module~mod_dft_gridint->module~mod_dft_molgrid module~tdhf_z_vector_mod tdhf_z_vector_mod module~tdhf_z_vector_mod->module~mod_dft_molgrid proc~derexc_blk derexc_blk proc~derexc_blk->module~mod_dft_molgrid proc~derexc_blk->module~mod_dft_gridint proc~dmatd_blk dmatd_blk proc~dmatd_blk->module~mod_dft_molgrid proc~dmatd_blk->module~mod_dft_gridint proc~hf_energy hf_energy proc~hf_energy->module~mod_dft_molgrid proc~hf_energy->module~dft proc~hf_gradient hf_gradient proc~hf_gradient->module~mod_dft_molgrid proc~hf_gradient->module~dft proc~oqp_tdhf_z_vector oqp_tdhf_z_vector proc~oqp_tdhf_z_vector->module~mod_dft_molgrid proc~oqp_tdhf_z_vector->module~dft module~mod_dft_gridint_fxc mod_dft_gridint_fxc proc~oqp_tdhf_z_vector->module~mod_dft_gridint_fxc module~mod_dft_gridint_gxc mod_dft_gridint_gxc proc~oqp_tdhf_z_vector->module~mod_dft_gridint_gxc proc~scf_driver scf_driver proc~scf_driver->module~mod_dft_molgrid proc~scf_driver->module~dft proc~tddft_fxc tddft_fxc proc~tddft_fxc->module~mod_dft_molgrid proc~tddft_fxc->module~mod_dft_gridint proc~tddft_gxc tddft_gxc proc~tddft_gxc->module~mod_dft_molgrid proc~tddft_gxc->module~mod_dft_gridint proc~tddft_xc_gradient tddft_xc_gradient proc~tddft_xc_gradient->module~mod_dft_molgrid proc~tddft_xc_gradient->module~mod_dft_gridint proc~tdhf_energy tdhf_energy proc~tdhf_energy->module~mod_dft_molgrid proc~tdhf_energy->module~dft proc~tdhf_energy->module~mod_dft_gridint_fxc proc~tdhf_gradient tdhf_gradient proc~tdhf_gradient->module~mod_dft_molgrid proc~tdhf_gradient->module~dft module~mod_dft_gridint_tdxc_grad mod_dft_gridint_tdxc_grad proc~tdhf_gradient->module~mod_dft_gridint_tdxc_grad proc~utddft_fxc utddft_fxc proc~utddft_fxc->module~mod_dft_molgrid proc~utddft_fxc->module~mod_dft_gridint proc~utddft_xc_gradient utddft_xc_gradient proc~utddft_xc_gradient->module~mod_dft_molgrid proc~utddft_xc_gradient->module~mod_dft_gridint module~mod_dft_gridint_energy mod_dft_gridint_energy module~mod_dft_gridint_energy->module~mod_dft_gridint module~mod_dft_gridint_fxc->module~mod_dft_gridint module~mod_dft_gridint_grad mod_dft_gridint_grad module~mod_dft_gridint_grad->module~mod_dft_gridint module~mod_dft_gridint_gxc->module~mod_dft_gridint module~mod_dft_gridint_gxc->module~mod_dft_gridint_fxc module~mod_dft_gridint_tdxc_grad->module~mod_dft_gridint proc~dftder dftder proc~dftder->module~mod_dft_gridint_grad proc~dftexcor dftexcor proc~dftexcor->module~mod_dft_gridint_energy

Variables

Type Visibility Attributes Name Initial
integer, public, parameter :: DEFAULT_NSLICES_PER_ATOM = 100
integer, public, parameter :: MAXGRID = 10
real(kind=fp), public, parameter :: GROWTH_FACTOR = 1.5
integer, public, parameter :: ALLOC_PAD = 4
integer, public, parameter :: MAXDEPTH = 2
real(kind=fp), public, parameter :: HUGEFP = huge(1.0_fp)

Derived Types

type, public, extends(list_grid_3d_t) ::  sorted_grid_t

Components

Type Visibility Attributes Name Initial
integer, public :: nGrids = 0
real(kind=fp), public, allocatable :: triangles(:,:,:,:)

Type-Bound Procedures

procedure, public, non_overridable :: get_pts => get_grid_pts
procedure, public, non_overridable :: set_pts => set_grid_pts
procedure, public, non_overridable :: findID => findIDListGrid
procedure, public, non_overridable :: getByID => getByIDListGrid
procedure, public, non_overridable :: push => pushListGrid
procedure, public, non_overridable :: pop => popListGrid
procedure, public :: get => getListGrid
procedure, public :: set => setListGrid
procedure, public :: clear => clearListGrid
procedure, public :: delete => deleteListGrid
procedure, public :: add_grid => get_sorted_lebedev_pts
procedure, public :: init => initSortedListGrid

type, public ::  dft_grid_t

@brief Type to store molecular grid information

Components

Type Visibility Attributes Name Initial
integer, public :: nSlices = 0
integer, public :: maxSlices = 0
integer, public :: maxAtomPts = 0
integer, public :: maxSlicePts = 0
integer, public :: maxNRadTimesNAng = 0
integer, public :: nMolPts = 0
type(sorted_grid_t), public :: spherical_grids
integer, public, allocatable :: idAng(:)
integer, public, allocatable :: iAngStart(:)
integer, public, allocatable :: nAngPts(:)
integer, public, allocatable :: iRadStart(:)
integer, public, allocatable :: nRadPts(:)
integer, public, allocatable :: nTotPts(:)
integer, public, allocatable :: idOrigin(:)
integer, public, allocatable :: chunkType(:)
integer, public, allocatable :: wtStart(:)
integer, public, allocatable :: isInner(:)
real(kind=fp), public, allocatable :: rAtm(:)
real(kind=fp), public, allocatable :: rInner(:)
logical, public, allocatable :: dummyAtom(:)
real(kind=fp), public, allocatable :: rad_pts(:)
real(kind=fp), public, allocatable :: rad_wts(:)
real(kind=fp), public, allocatable :: totWts(:,:)

Type-Bound Procedures

procedure, public, pass :: getSliceData
procedure, public, pass :: getSliceNonZero
procedure, public, pass :: exportGrid
procedure, public, pass :: setSlice
procedure, public, pass :: reset => reset_dft_grid_t
procedure, public, pass :: compress => compress_dft_grid_t
procedure, public, pass :: extend => extend_dft_grid_t
procedure, public, pass :: add_atomic_grid
procedure, public, pass :: add_slices
procedure, public, pass :: find_neighbours