ddx 0.6.0
Libary for domain-decomposition methods for polarizable continuum models
Fortran interface: multipolar terms

Exposed multipolar modules in the Fortran API. More...

Functions/Subroutines

subroutine ddx_multipolar_solutes::multipole_electrostatics (params, constants, workspace, multipoles, mmax, electrostatics, ddx_error)
 Given a multipolar distribution, compute the required electrostatic properties for the chosen model. More...
 
subroutine ddx_multipolar_solutes::multipole_psi (params, multipoles, mmax, psi)
 Given a multipolar distribution, assemble the RHS psi. The multipoles must be centered on the ddx spheres. More...
 
subroutine ddx_multipolar_solutes::multipole_force_terms (params, constants, workspace, state, mmax, multipoles, forces, ddx_error)
 Given a multipolar distribution in real spherical harmonics and centered on the spheres, compute the contributions to the forces stemming from its electrostatic interactions. More...
 

Detailed Description

Exposed multipolar modules in the Fortran API.

Function/Subroutine Documentation

◆ multipole_electrostatics()

subroutine ddx_multipolar_solutes::multipole_electrostatics ( type(ddx_params_type), intent(in)  params,
type(ddx_constants_type), intent(in)  constants,
type(ddx_workspace_type), intent(inout)  workspace,
real(dp), dimension((mmax + 1)**2, params % nsph), intent(in)  multipoles,
integer, intent(in)  mmax,
type(ddx_electrostatics_type), intent(out)  electrostatics,
type(ddx_error_type), intent(inout)  ddx_error 
)

Given a multipolar distribution, compute the required electrostatic properties for the chosen model.

Parameters
[in]paramsddx parameters
[in]constantsddx constants
[in,out]workspaceddx workspace
[in]multipolesmultipoles as real spherical harmonics, size ((mmax+1)**2, nsph)
[in]mmaxmaximum angular momentum of the multipoles
[out]electrostatics,ddXelectrostatic properties container
[in,out]ddx_errorddX error

Definition at line 28 of file ddx_multipolar_solutes.f90.

◆ multipole_psi()

subroutine ddx_multipolar_solutes::multipole_psi ( type(ddx_params_type), intent(in)  params,
real(dp), dimension((mmax+1)**2, params % nsph), intent(in)  multipoles,
integer, intent(in)  mmax,
real(dp), dimension((params % lmax+1)**2, params % nsph), intent(out)  psi 
)

Given a multipolar distribution, assemble the RHS psi. The multipoles must be centered on the ddx spheres.

Parameters
[in]paramsddx parameters
[in]multipolesmultipoles as real spherical harmonics, size ((mmax+1)**2,nsph)
[in]mmaxmaximum angular momentum of the multipoles
[out]psiRHS for adjoint linear systems, size ((lmax+1)**2,nsph), the internal lmax should be >= mmax

Definition at line 838 of file ddx_multipolar_solutes.f90.

◆ multipole_force_terms()

subroutine ddx_multipolar_solutes::multipole_force_terms ( type(ddx_params_type), intent(in)  params,
type(ddx_constants_type), intent(in)  constants,
type(ddx_workspace_type), intent(inout)  workspace,
type(ddx_state_type), intent(inout)  state,
integer, intent(in)  mmax,
real(dp), dimension((mmax + 1)**2, params % nsph), intent(in)  multipoles,
real(dp), dimension(3, params % nsph), intent(inout)  forces,
type(ddx_error_type), intent(inout)  ddx_error 
)

Given a multipolar distribution in real spherical harmonics and centered on the spheres, compute the contributions to the forces stemming from its electrostatic interactions.

Parameters
[in]paramsddx parameters
[in]constantsddx constants
[in,out]workspaceddx workspace
[in,out]stateddx state
[in]mmaxmaximum angular momentum of the multipolar distribution
[in]multipolesmultipoles as real spherical harmonics, size ((mmax+1)**2, nsph)
[in,out]forcesforces array, size (3, nsph)
[in,out]ddx_errorddX error

Definition at line 1475 of file ddx_multipolar_solutes.f90.