tblite
Light-weight tight-binding framework
Loading...
Searching...
No Matches
cpcm_dd.f90 File Reference

Provides a domain decomposition solver for the conductor like screening model. More...

Data Types

type  tblite_solvation_cpcm_dd::domain_decomposition_input
 Quantities contained in control file. More...
 
type  tblite_solvation_cpcm_dd::domain_decomposition
 Cosmo calculator. More...
 

Modules

module  tblite_solvation_cpcm_dd
 A modular implementation of COSMO using a domain decomposition linear scaling strategy.
 

Functions/Subroutines

subroutine, public tblite_solvation_cpcm_dd::new_domain_decomposition (self, input, rvdw, wang, grid)
 Initialize data structure.
 
subroutine, public tblite_solvation_cpcm_dd::ddupdate (self, xyz)
 
subroutine, public tblite_solvation_cpcm_dd::prtsph (self, label, ncol, icol, x)
 Dump an array (nylm, ncol) or just a column.
 
subroutine, public tblite_solvation_cpcm_dd::intrhs (self, iat, x, xlm)
 Integrate against spherical harmonics.
 
subroutine, public tblite_solvation_cpcm_dd::wghpot (self, phi, g)
 Weigh potential at cavity points by characteristic function "ui".
 
pure subroutine, public tblite_solvation_cpcm_dd::hsnorm (self, u, unorm)
 Compute H-norm.
 
pure subroutine, public tblite_solvation_cpcm_dd::adjrhs (self, iat, xi, vlm, basloc, vplm, vcos, vsin)
 Compute.
 
pure subroutine, public tblite_solvation_cpcm_dd::fdoka (self, iat, sigma, xi, basloc, dbsloc, vplm, vcos, vsin, fx)
 Compute the first part of <S, L^(x)X>
 
pure subroutine, public tblite_solvation_cpcm_dd::fdokb (self, iat, sigma, xi, basloc, dbsloc, vplm, vcos, vsin, fx)
 Compute the the second part of <S, L^(x)X>
 
pure subroutine, public tblite_solvation_cpcm_dd::fdoga (self, iat, xi, phi, fx)
 Compute the U^(x)\Phi contribution to <S, g^(x)>
 
pure subroutine, public tblite_solvation_cpcm_dd::calcv (self, first, iat, pot, sigma, basloc, vplm, vcos, vsin)
 Auxiliary routine for COSMO action.
 
subroutine, public tblite_solvation_cpcm_dd::jacobi_diis (self, n, lprint, diis_max, norm, tol, rhs, x, n_iter, ok, matvec, dm1vec, u_norm)
 Jacobi/DIIS solver.
 
subroutine, public tblite_solvation_cpcm_dd::lx (self, n, x, y)
 Given a vector x, compute y = Lx, where L is the ddCOSMO matrix.
 
subroutine, public tblite_solvation_cpcm_dd::lstarx (self, n, x, y)
 Given a vector x, compute y = L*x, where L* is the adjoint ddCOSMO matrix.
 
pure subroutine, public tblite_solvation_cpcm_dd::ldm1x (self, n, x, y)
 Given a vector x, apply the inverse diagonal (block) of the L matrix:
 
real(wp) function, public tblite_solvation_cpcm_dd::hnorm (self, n, x)
 Compute the h^-1/2 norm of the increment on each sphere, then take the.
 
subroutine, public tblite_solvation_cpcm_dd::solve_cosmo_direct (self, cart, phi, glm, sigma, restart)
 Wrapper for the linear solvers for COSMO equation.
 
subroutine, public tblite_solvation_cpcm_dd::solve_cosmo_adjoint (self, psi, sigma, restart, accuracy)
 Wrapper for the linear solvers for adjoint COSMO equation L^* sigma = Psi This routine performs the following operations :
 
subroutine, public tblite_solvation_cpcm_dd::get_deriv (self, keps, phi, sigma, s, gradient)
 Sample driver for the calculation of the ddCOSMO gradient.
 
subroutine, public tblite_solvation_cpcm_dd::get_zeta (self, keps, s, zeta)
 Compute.
 

Detailed Description

Provides a domain decomposition solver for the conductor like screening model.