xc_consumer_tde_t Derived Type

type, public, extends(xc_consumer_t) :: xc_consumer_tde_t


Inherits

type~~xc_consumer_tde_t~~InheritsGraph type~xc_consumer_tde_t xc_consumer_tde_t type~xc_consumer_t xc_consumer_t type~xc_consumer_tde_t->type~xc_consumer_t type~par_env_t par_env_t type~xc_consumer_t->type~par_env_t pe

Inherited by

type~~xc_consumer_tde_t~~InheritedByGraph type~xc_consumer_tde_t xc_consumer_tde_t type~xc_consumer_gxc_t xc_consumer_gxc_t type~xc_consumer_gxc_t->type~xc_consumer_tde_t

Components

Type Visibility Attributes Name Initial
real(kind=fp), public :: E_xc
real(kind=fp), public :: E_exch
real(kind=fp), public :: E_corr
real(kind=fp), public :: N_elec
real(kind=fp), public :: E_kin
real(kind=fp), public :: G_total(3)
type(par_env_t), public :: pe
integer, public :: nMtx = 1
real(kind=fp), public, pointer :: da(:,:,:) => null()
real(kind=fp), public, pointer :: db(:,:,:) => null()
real(kind=fp), public, allocatable :: focks(:,:,:,:,:)
real(kind=fp), public, allocatable :: mo(:,:,:,:,:)
real(kind=fp), public, allocatable :: rRho(:,:,:,:)
real(kind=fp), public, allocatable :: drRho(:,:,:,:,:)
real(kind=fp), public, allocatable :: rTau(:,:,:,:)
real(kind=fp), public, allocatable :: focks_(:,:)
real(kind=fp), public, allocatable :: tmpMO_(:,:)
real(kind=fp), public, allocatable :: tmpDensity_(:,:,:)
real(kind=fp), public, allocatable :: moG1_(:,:)
real(kind=fp), public, allocatable :: tmp_(:,:)

Type-Bound Procedures

procedure, public :: parallel_start

  • private subroutine parallel_start(self, xce, nThreads)

    Arguments

    Type IntentOptional Attributes Name
    class(xc_consumer_tde_t), intent(inout), target :: self
    class(xc_engine_t), intent(in) :: xce
    integer, intent(in) :: nThreads

procedure, public :: parallel_stop

  • private subroutine parallel_stop(self)

    Arguments

    Type IntentOptional Attributes Name
    class(xc_consumer_tde_t), intent(inout) :: self

procedure, public :: update

  • private subroutine update(self, xce, myThread)

    Arguments

    Type IntentOptional Attributes Name
    class(xc_consumer_tde_t), intent(inout) :: self
    class(xc_engine_t), intent(in) :: xce
    integer :: myThread

procedure, public :: postUpdate

  • private subroutine postUpdate(self, xce, myThread)

    Arguments

    Type IntentOptional Attributes Name
    class(xc_consumer_tde_t), intent(inout) :: self
    class(xc_engine_t), intent(in) :: xce
    integer :: myThread

procedure, public :: clean

  • private subroutine clean(self)

    Arguments

    Type IntentOptional Attributes Name
    class(xc_consumer_tde_t), intent(inout) :: self

procedure, public :: resetXCPointers

  • private subroutine resetXCPointers(self, xce, da, db, mo, moG1, myThread)

    @brief Adjust internal memory storage for a given number of pruned grid points @author Konstantin Komarov

    Arguments

    Type IntentOptional Attributes Name
    class(xc_consumer_tde_t), intent(inout), target :: self
    class(xc_engine_t), intent(in) :: xce
    real(kind=fp), intent(out), pointer :: da(:,:,:)
    real(kind=fp), intent(out), pointer :: db(:,:,:)
    real(kind=fp), intent(out), pointer :: mo(:,:,:,:)
    real(kind=fp), intent(out), pointer :: moG1(:,:,:,:)
    integer, intent(in) :: myThread

procedure, public :: computeRAll

  • private subroutine computeRAll(self, xce, myThread)

    @brief Compute required MO-like values as well as \rho, \sigma, and \tau

    Arguments

    Type IntentOptional Attributes Name
    class(xc_consumer_tde_t), intent(inout) :: self
    class(xc_engine_t), intent(in) :: xce
    integer :: myThread

procedure, public :: resetOrbPointers

  • private subroutine resetOrbPointers(self, xce, focks, tmp, myThread)

    Arguments

    Type IntentOptional Attributes Name
    class(xc_consumer_tde_t), intent(inout), target :: self
    class(xc_engine_t), intent(in) :: xce
    real(kind=fp), intent(out), pointer :: focks(:,:,:,:)
    real(kind=fp), intent(out), optional, pointer :: tmp(:,:,:)
    integer, intent(in) :: myThread

procedure, public :: RUpdate

  • private subroutine RUpdate(dat, xce, myThread)

    @brief Add XC derivative contribution to the Kohn-Sham-like matrices @param[inout] fa Kohn-Sham matrices @author Vladimir Mironov

    Arguments

    Type IntentOptional Attributes Name
    class(xc_consumer_tde_t) :: dat
    class(xc_engine_t) :: xce
    integer :: myThread

procedure, public :: UUpdate

  • private subroutine UUpdate(dat, xce, myThread)

    @brief Add XC derivative contribution to the Kohn-Sham-like matrices @param[inout] fa Kohn-Sham matrices @author Vladimir Mironov

    Arguments

    Type IntentOptional Attributes Name
    class(xc_consumer_tde_t) :: dat
    class(xc_engine_t) :: xce
    integer :: myThread