tblite
Light-weight tight-binding framework
Loading...
Searching...
No Matches
Public Member Functions | Data Fields
tblite_coulomb_charge_effective::effective_coulomb Type Reference

Effective, Klopman-Ohno-type, second-order electrostatics. More...

Inheritance diagram for tblite_coulomb_charge_effective::effective_coulomb:
tblite_coulomb_charge_type::coulomb_charge_type tblite_coulomb_type::coulomb_type tblite_container_type::container_type

Public Member Functions

procedure get_coulomb_matrix (self, mol, cache, amat)
 Evaluate Coulomb matrix.
 
procedure get_coulomb_derivs (self, mol, cache, qat, qsh, dadr, dadl, atrace)
 Evaluate uncontracted derivatives of Coulomb matrix.
 
- Public Member Functions inherited from tblite_coulomb_charge_type::coulomb_charge_type
procedure update (self, mol, cache)
 Update container cache.
 
procedure variable_info (self)
 Get information about density dependent quantities used in the energy.
 
procedure get_energy (self, mol, cache, wfn, energies)
 Evaluate selfconsistent energy of the interaction.
 
procedure get_potential (self, mol, cache, wfn, pot)
 Evaluate charge dependent potential shift from the interaction.
 
procedure get_gradient (self, mol, cache, wfn, gradient, sigma)
 Evaluate gradient contributions from the selfconsistent interaction.
 
procedure(get_coulomb_matrix), deferred get_coulomb_matrix (self, mol, cache, amat)
 Evaluate Coulomb matrix.
 
procedure(get_coulomb_derivs), deferred get_coulomb_derivs (self, mol, cache, qat, qsh, dadr, dadl, atrace)
 Evaluate uncontracted derivatives of Coulomb matrix.
 
- Public Member Functions inherited from tblite_container_type::container_type
procedure update (self, mol, cache)
 Update container cache.
 
procedure variable_info (self)
 Get information about density dependent quantities used in the energy.
 
procedure get_engrad (self, mol, cache, energies, gradient, sigma)
 Evaluate non-selfconsistent part of the interaction.
 
procedure get_energy (self, mol, cache, wfn, energies)
 Evaluate selfconsistent energy of the interaction.
 
procedure get_potential (self, mol, cache, wfn, pot)
 Evaluate charge dependent potential shift from the interaction.
 
procedure get_gradient (self, mol, cache, wfn, gradient, sigma)
 Evaluate gradient contributions from the selfconsistent interaction.
 
procedure info (self, verbosity, indent)
 Information on container.
 

Data Fields

real(wp), dimension(:, :, :, :), allocatable hubbard
 Hubbard parameter for each shell and species.
 
real(wp) gexp
 Exponent of Coulomb kernel.
 
real(wp) rcut
 Long-range cutoff.
 
- Data Fields inherited from tblite_coulomb_charge_type::coulomb_charge_type
logical shell_resolved
 Whether the third order contribution is shell-dependent.
 
integer, dimension(:), allocatable nshell
 Number of shells for each atom.
 
integer, dimension(:), allocatable offset
 Index offset for each shell.
 
- Data Fields inherited from tblite_container_type::container_type
character(len=:), allocatable label
 Label identifying this contribution.
 

Detailed Description

Effective, Klopman-Ohno-type, second-order electrostatics.

Member Function/Subroutine Documentation

◆ get_coulomb_derivs()

procedure tblite_coulomb_charge_effective::effective_coulomb::get_coulomb_derivs ( class(effective_coulomb), intent(in) self,
type(structure_type), intent(in) mol,
type(coulomb_cache), intent(inout) cache,
real(wp), dimension(:), intent(in) qat,
real(wp), dimension(:), intent(in) qsh,
real(wp), dimension(:, :, :), intent(out), contiguous dadr,
real(wp), dimension(:, :, :), intent(out), contiguous dadl,
real(wp), dimension(:, :), intent(out), contiguous atrace )

Evaluate uncontracted derivatives of Coulomb matrix.

Parameters
[in]selfInstance of the electrostatic container
[in]molMolecular structure data
[in,out]cacheReusable data container
[in]qatAtomic partial charges
[in]qshShell-resolved partial charges
[out]dadrDerivative of interactions with respect to cartesian displacements
[out]dadlDerivative of interactions with respect to strain deformations
[out]atraceOn-site derivatives with respect to cartesian displacements

◆ get_coulomb_matrix()

procedure tblite_coulomb_charge_effective::effective_coulomb::get_coulomb_matrix ( class(effective_coulomb), intent(in) self,
type(structure_type), intent(in) mol,
type(coulomb_cache), intent(inout) cache,
real(wp), dimension(:, :), intent(out), contiguous amat )

Evaluate Coulomb matrix.

Parameters
[in]selfInstance of the electrostatic container
[in]molMolecular structure data
[in,out]cacheReusable data container
[out]amatCoulomb matrix

The documentation for this type was generated from the following file: