xc_consumer_tdg_t Derived Type

type, public, extends(xc_consumer_t) :: xc_consumer_tdg_t


Inherits

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

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
logical, public :: do_fxc = .true.
logical, public :: do_ground_state = .true.
real(kind=fp), public, pointer :: pa(:,:,:)
real(kind=fp), public, pointer :: pb(:,:,:)
real(kind=fp), public, pointer :: xa(:,:,:)
real(kind=fp), public, pointer :: xb(:,:,:)
real(kind=fp), public, allocatable :: rrho(:,:,:,:)
real(kind=fp), public, allocatable :: drrho(:,:,:,:,:)
real(kind=fp), public, allocatable :: rtau(:,:,:,:)
real(kind=fp), public, allocatable :: bfgrad(:,:,:)
real(kind=fp), public, allocatable :: grad_d(:,:,:,:)
real(kind=fp), public, allocatable :: grad_p(:,:,:,:)
real(kind=fp), public, allocatable :: grad_x(:,:,:,:)
real(kind=fp), public, allocatable :: tmpGrad_(:,:)
real(kind=fp), public, allocatable :: tmp_(:,:,:,:)
real(kind=fp), public, allocatable :: tmpV_(:,:,:)
real(kind=fp), public, allocatable :: tmpG1_(:,:,:)

Type-Bound Procedures

procedure, public :: parallel_start

  • private subroutine parallel_start(self, xce, nthreads)

    Arguments

    Type IntentOptional Attributes Name
    class(xc_consumer_tdg_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_tdg_t), intent(inout) :: self

procedure, public :: resetGradPointers

  • private subroutine resetGradPointers(self, xce, tmpGrad, tmpV, tmpG1, 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_tdg_t), intent(inout), target :: self
    class(xc_engine_t), intent(in) :: xce
    real(kind=fp), intent(out), pointer :: tmpGrad(:,:)
    real(kind=fp), intent(out), optional, pointer :: tmpV(:,:,:,:,:)
    real(kind=fp), intent(out), optional, pointer :: tmpG1(:,:,:,:,:,:)
    integer, intent(in) :: myThread

procedure, public :: resetPointers

  • private subroutine resetPointers(self, xce, Pa, Pb, Xa, Xb, Pa_p, Pb_p, Xa_p, Xb_p, myThread)

    Arguments

    Type IntentOptional Attributes Name
    class(xc_consumer_tdg_t), intent(inout), target :: self
    class(xc_engine_t), intent(in) :: xce
    real(kind=fp), intent(in), target :: Pa(:,:,:)
    real(kind=fp), intent(in), target :: Pb(:,:,:)
    real(kind=fp), intent(in), target :: Xa(:,:,:)
    real(kind=fp), intent(in), target :: Xb(:,:,:)
    real(kind=fp), intent(out), pointer :: Pa_p(:,:,:)
    real(kind=fp), intent(out), pointer :: Pb_p(:,:,:)
    real(kind=fp), intent(out), pointer :: Xa_p(:,:,:)
    real(kind=fp), intent(out), pointer :: Xb_p(:,:,:)
    integer, intent(in) :: myThread

procedure, public :: update

  • private subroutine update(self, xce, mythread)

    Arguments

    Type IntentOptional Attributes Name
    class(xc_consumer_tdg_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_tdg_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_tdg_t), intent(inout) :: self