ddx 0.6.0
Libary for domain-decomposition methods for polarizable continuum models
ddx_constants.f90 File Reference

Go to the source code of this file.

Data Types

type  ddx_constants::ddx_constants_type
 Container for precomputed constants. More...
 

Modules

module  ddx_constants
 Run-time constants.
 

Functions/Subroutines

subroutine ddx_constants::constants_init (params, constants, ddx_error)
 Compute all necessary constants. More...
 
subroutine ddx_constants::build_itrnl (constants, params, ddx_error)
 Build the transposed neighbor list. More...
 
subroutine ddx_constants::build_l (constants, params, ddx_error)
 Allocate and build the ddCOSMO sparse matrix, only if incore is set. More...
 
subroutine ddx_constants::build_b (constants, params, ddx_error)
 Allocate and build the HSP sparse matrix, only if incore is set. More...
 
subroutine ddx_constants::mkpmat (params, constants, isph, pmat)
 Computation of P_chi. More...
 
subroutine ddx_constants::constants_geometry_init (params, constants, ddx_error)
 Initialize geometry-related constants like list of neighbouring spheres. More...
 
subroutine ddx_constants::neighbor_list_init (params, constants, ddx_error)
 Build the neighbor list using a N^2 code. More...
 
subroutine ddx_constants::neighbor_list_init_fmm (params, constants, ddx_error)
 Build the neighbor list using a linear scaling code (only if FMMs are enabled) More...
 
real(dp) function ddx_constants::fsw (t, se, eta)
 Switching function. More...
 
real(dp) function ddx_constants::dfsw (t, se, eta)
 Derivative of a switching function. More...
 
subroutine ddx_constants::mkprec (lmax, nbasis, nsph, ngrid, eps, ui, wgrid, vgrid, vgrid_nbasis, rx_prc, ddx_error)
 Compute preconditioner assemble the diagonal blocks of the reps matrix then invert them to build the preconditioner. More...
 
subroutine ddx_constants::tree_rib_build (nsph, csph, rsph, order, cluster, children, parent, cnode, rnode, snode, ddx_error)
 Build a recursive inertial binary tree. More...
 
subroutine ddx_constants::tree_rib_node_bisect (nsph, csph, n, order, div, ddx_error)
 Divide given cluster of spheres into two subclusters by inertial bisection. More...
 
subroutine ddx_constants::tree_get_farnear_work (n, children, cnode, rnode, lwork, iwork, jwork, work, nnfar, nfar, nnnear, nnear)
 Find near and far admissible pairs of tree nodes and store it in work array. More...
 
subroutine ddx_constants::tree_get_farnear (jwork, lwork, work, n, nnfar, nfar, sfar, far, nnnear, nnear, snear, near)
 Get near and far admissible pairs from work array of tree_get_farnear_work Works only for binary tree. More...
 
subroutine ddx_constants::constants_free (constants, ddx_error)
 Deallocate the constants. More...
 

Detailed Description

ddX software

This file contains the type ddx_constants_type to hold all required run-time constants and routines to actually compute these constants. These constants include scaling factors for spherical harmonics, certain combinatorial numbers, hierarchical trees for the FMM and so on. Everything that can be precomputed to reduce ddX timings shall be stored in the ddx_constants_type.

Version
1.0.0
Author
Aleksandr Mikhalev
Date
2021-06-15

Definition in file ddx_constants.f90.