ddx 0.6.0
Libary for domain-decomposition methods for polarizable continuum models
|
Go to the source code of this file.
Data Types | |
type | ddx_core::ddx_state_type |
This defined type contains the primal and adjoint RHSs, the solution of the primal and adjoint linear systems, useful intermediates for the computation of the forces, and the information about the convergence of the linear system solver (time, number of iterations, relative difference at each iteration). More... | |
type | ddx_core::ddx_electrostatics_type |
Container for the electrostatic properties. Since different methods require different electrostatic properties, defining this kind of general purpose container simplify the interfaces as we don't need different interfaces for different methods. More... | |
type | ddx_core::ddx_type |
Main ddX type that stores all the required information. Container for the params, contants and workspace derived types. More... | |
Modules | |
module | ddx_core |
Core routines and parameters of the ddX software. | |
Functions/Subroutines | |
subroutine | ddx_core::allocate_model (nsph, x, y, z, rvdw, model, lmax, ngrid, force, fmm, pm, pl, se, eta, eps, kappa, matvecmem, maxiter, jacobi_ndiis, nproc, output_filename, ddx_data, ddx_error) |
Initialize ddX input with a full set of parameters. More... | |
subroutine | ddx_core::deallocate_model (ddx_data, ddx_error) |
Deallocate object with corresponding data. More... | |
subroutine | ddx_core::allocate_electrostatics (params, constants, electrostatics, ddx_error) |
Given the chosen model, find the required electrostatic properties, and allocate the arrays for them in the container. More... | |
subroutine | ddx_core::deallocate_electrostatics (electrostatics, ddx_error) |
Deallocate the electrostatic properties. More... | |
subroutine | ddx_core::allocate_state (params, constants, state, ddx_error) |
Initialize the ddx_state object. More... | |
subroutine | ddx_core::deallocate_state (state, ddx_error) |
Deallocate the ddx_state object. More... | |
subroutine | ddx_core::print_spherical (iunit, label, nbasis, lmax, ncol, icol, x) |
Print array of spherical harmonics. More... | |
subroutine | ddx_core::print_nodes (iunit, label, ngrid, ncol, icol, x) |
Print array of quadrature points. More... | |
subroutine | ddx_core::print_ddvector (ddx_data, label, vector) |
Print dd Solution vector. More... | |
subroutine | ddx_core::ddintegrate (nsph, nbasis, ngrid, vwgrid, ldvwgrid, x_grid, x_lm) |
Integrate against spherical harmonics. More... | |
subroutine | ddx_core::dbasis (params, constants, x, basloc, dbsloc, vplm, vcos, vsin) |
Compute first derivatives of spherical harmonics. More... | |
real(dp) function | ddx_core::intmlp (params, constants, t, sigma, basloc) |
TODO. More... | |
subroutine | ddx_core::wghpot (ncav, phi_cav, nsph, ngrid, ui, phi_grid, g) |
Weigh potential at cavity points by characteristic function TODO use cavity points in CSR format. More... | |
subroutine | ddx_core::hsnorm (lmax, nbasis, u, unorm) |
Compute the local Sobolev H^(-1/2)-norm on one sphere of u. More... | |
real(dp) function | ddx_core::hnorm (lmax, nbasis, nsph, x) |
Compute the global Sobolev H^(-1/2)-norm of x. More... | |
real(dp) function | ddx_core::rmsnorm (lmax, nbasis, nsph, x) |
subroutine | ddx_core::rmsvec (n, v, vrms, vmax) |
compute root-mean-square and max norm More... | |
subroutine | ddx_core::adjrhs (params, constants, isph, xi, vlm, work) |
subroutine | ddx_core::calcv (params, constants, isph, pot, sigma, work) |
subroutine | ddx_core::ddeval_grid (params, constants, alpha, x_sph, beta, x_grid) |
Evaluate values of spherical harmonics at Lebedev grid points. More... | |
subroutine | ddx_core::ddeval_grid_work (nbasis, ngrid, nsph, vgrid, ldvgrid, alpha, x_sph, beta, x_grid) |
Evaluate values of spherical harmonics at Lebedev grid points. More... | |
subroutine | ddx_core::ddintegrate_sph (params, constants, alpha, x_grid, beta, x_sph) |
Integrate values at grid points into spherical harmonics. More... | |
subroutine | ddx_core::ddintegrate_sph_work (nbasis, ngrid, nsph, vwgrid, ldvwgrid, alpha, x_grid, beta, x_sph) |
Integrate values at grid points into spherical harmonics. More... | |
subroutine | ddx_core::ddcav_to_grid (params, constants, x_cav, x_grid) |
Unwrap values at cavity points into values at all grid points. More... | |
subroutine | ddx_core::ddcav_to_grid_work (ngrid, nsph, ncav, icav_ia, icav_ja, x_cav, x_grid) |
Unwrap values at cavity points into values at all grid points. More... | |
subroutine | ddx_core::ddproject_cav (params, constants, s, xi) |
Integrate by a characteristic function at Lebedev grid points \xi(n,i) = sum w_n U_n^i Y_l^m(s_n) [S_i]_l^m l,m. More... | |
subroutine | ddx_core::tree_m2m_rotation (params, constants, node_m) |
Transfer multipole coefficients over a tree. More... | |
subroutine | ddx_core::tree_m2m_rotation_work (params, constants, node_m, work) |
Transfer multipole coefficients over a tree. More... | |
subroutine | ddx_core::tree_m2m_bessel_rotation (params, constants, node_m) |
Transfer multipole coefficients over a tree. More... | |
subroutine | ddx_core::tree_m2m_bessel_rotation_work (params, constants, node_m) |
Transfer multipole coefficients over a tree. More... | |
subroutine | ddx_core::tree_m2m_rotation_adj (params, constants, node_m) |
Adjoint transfer multipole coefficients over a tree. More... | |
subroutine | ddx_core::tree_m2m_rotation_adj_work (params, constants, node_m, work) |
Adjoint transfer multipole coefficients over a tree. More... | |
subroutine | ddx_core::tree_m2m_bessel_rotation_adj (params, constants, node_m) |
Adjoint transfer multipole coefficients over a tree. More... | |
subroutine | ddx_core::tree_m2m_bessel_rotation_adj_work (params, constants, node_m) |
Adjoint transfer multipole coefficients over a tree. More... | |
subroutine | ddx_core::tree_l2l_rotation (params, constants, node_l) |
Transfer local coefficients over a tree. More... | |
subroutine | ddx_core::tree_l2l_rotation_work (params, constants, node_l, work) |
Transfer local coefficients over a tree. More... | |
subroutine | ddx_core::tree_l2l_bessel_rotation (params, constants, node_l) |
Transfer local coefficients over a tree. More... | |
subroutine | ddx_core::tree_l2l_bessel_rotation_work (params, constants, node_l) |
Transfer local coefficients over a tree. More... | |
subroutine | ddx_core::tree_l2l_rotation_adj (params, constants, node_l) |
Adjoint transfer local coefficients over a tree. More... | |
subroutine | ddx_core::tree_l2l_rotation_adj_work (params, constants, node_l, work) |
Adjoint transfer local coefficients over a tree. More... | |
subroutine | ddx_core::tree_l2l_bessel_rotation_adj (params, constants, node_l) |
Adjoint transfer local coefficients over a tree. More... | |
subroutine | ddx_core::tree_m2l_rotation (params, constants, node_m, node_l) |
Transfer multipole local coefficients into local over a tree. More... | |
subroutine | ddx_core::tree_m2l_bessel_rotation (params, constants, node_m, node_l) |
Transfer multipole local coefficients into local over a tree. More... | |
subroutine | ddx_core::tree_m2l_bessel_rotation_adj (params, constants, node_l, node_m) |
Adjoint transfer multipole local coefficients into local over a tree. More... | |
subroutine | ddx_core::tree_m2l_bessel_rotation_adj_work (params, constants, node_l, node_m) |
Adjoint transfer multipole local coefficients into local over a tree. More... | |
subroutine | ddx_core::tree_m2l_rotation_adj (params, constants, node_l, node_m) |
Adjoint transfer multipole local coefficients into local over a tree. More... | |
subroutine | ddx_core::tree_l2p (params, constants, alpha, node_l, beta, grid_v, sph_l) |
TODO. More... | |
subroutine | ddx_core::tree_l2p_bessel (params, constants, alpha, node_l, beta, grid_v) |
TODO. More... | |
subroutine | ddx_core::tree_l2p_adj (params, constants, alpha, grid_v, beta, node_l, sph_l) |
TODO. More... | |
subroutine | ddx_core::tree_l2p_bessel_adj (params, constants, alpha, grid_v, beta, node_l) |
TODO. More... | |
subroutine | ddx_core::tree_m2p (params, constants, p, alpha, sph_m, beta, grid_v) |
TODO. More... | |
subroutine | ddx_core::tree_m2p_bessel (params, constants, p, alpha, sph_p, sph_m, beta, grid_v) |
TODO. More... | |
subroutine | ddx_core::tree_m2p_adj (params, constants, p, alpha, grid_v, beta, sph_m) |
TODO. More... | |
subroutine | ddx_core::tree_m2p_bessel_adj (params, constants, p, alpha, grid_v, beta, sph_p, sph_m) |
TODO. More... | |
subroutine | ddx_core::tree_m2p_bessel_nodiag_adj (params, constants, p, alpha, grid_v, beta, sph_p, sph_m) |
TODO. More... | |
subroutine | ddx_core::tree_grad_m2m (params, constants, sph_m, sph_m_grad, work) |
TODO. More... | |
subroutine | ddx_core::tree_grad_l2l (params, constants, node_l, sph_l_grad, work) |
TODO. More... | |
subroutine | ddx_core::get_banner (string) |
Print the ddX logo. More... | |
subroutine | ddx_core::cav_to_spherical (params, constants, workspace, property_cav, property_sph) |
Transform a function defined at the exposed cavity points (cav) to a spherical harmonics expansion. Note that the function is also multiplied by the characteristic function U. More... | |
ddX software
Core routines and parameters of the entire ddX software
Definition in file ddx_core.f90.