20#include "./base/base_uses.f90"
33 POINTER :: valence_state => null()
42 INTEGER :: nstates = 0
44 POINTER :: evects => null()
45 REAL(
dp),
DIMENSION(:),
ALLOCATABLE :: evals
49 POINTER :: mos_occ => null()
53 CHARACTER(len=*),
PARAMETER,
PRIVATE :: modulen =
'rixs_types'
69 NULLIFY (rixs_env%core_state)
71 NULLIFY (rixs_env%valence_state)
83 IF (
ASSOCIATED(rixs_env))
THEN
84 IF (
ASSOCIATED(rixs_env%core_state))
THEN
87 IF (
ASSOCIATED(rixs_env%valence_state))
THEN
88 CALL tddfpt2_valence_state_release(rixs_env%valence_state)
103 ALLOCATE (valence_state)
105 NULLIFY (valence_state%evects)
108 NULLIFY (valence_state%mos_occ)
116 SUBROUTINE tddfpt2_valence_state_release(valence_state)
119 IF (
ASSOCIATED(valence_state))
THEN
120 IF (
ASSOCIATED(valence_state%evects))
THEN
123 IF (
ALLOCATED(valence_state%evals))
THEN
124 DEALLOCATE (valence_state%evals)
126 IF (
ASSOCIATED(valence_state%mos_occ))
THEN
131 DEALLOCATE (valence_state)
133 END SUBROUTINE tddfpt2_valence_state_release
represent a full matrix distributed on many processors
Defines the basic variable types.
integer, parameter, public dp
Define Resonant Inelastic XRAY Scattering (RIXS) control type and associated create,...
subroutine, public tddfpt2_valence_state_create(valence_state)
Creates the valence state type.
subroutine, public rixs_env_create(rixs_env)
Creates a rixs environment type.
subroutine, public rixs_env_release(rixs_env)
Releases the rixs environment type.
Define XAS TDP control type and associated create, release, etc subroutines, as well as XAS TDP envir...
subroutine, public xas_tdp_env_create(xas_tdp_env)
Creates a TDP XAS environment type.
subroutine, public xas_tdp_env_release(xas_tdp_env)
Releases the TDP XAS environment type.
Valence state coming from the qs_tddfpt2 routine.
Type containing informations such as inputs and results for TDP XAS calculations.