@brief Basic type to consume XC values on a grid
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 |
@brief Initialization of the data for XC consumer
Note
This class should handle multithreaded runs by its own means
Note
This subroutine is executed inside the parallel region by master thread only
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(xc_consumer_t), | intent(inout), | target | :: | self | ||
class(xc_engine_t), | intent(in) | :: | xce | |||
integer, | intent(in) | :: | nthreads |
@brief Finalization of data in parallel run
Note
This subroutine is executed outside of the parallel region
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(xc_consumer_t), | intent(inout) | :: | self |
@brief Main subroutine to consume XC functional values provided by xc_engine_t
Note
This subroutine is executed inside the parallel region by every thread
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(xc_consumer_t), | intent(inout) | :: | self | |||
class(xc_engine_t), | intent(in) | :: | xce | |||
integer | :: | mythread |
Note
This subroutine is executed inside the parallel region by every thread
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(xc_consumer_t), | intent(inout) | :: | self | |||
class(xc_engine_t), | intent(in) | :: | xce | |||
integer | :: | mythread |
@brief Release resources of xc_consumer_t
Note
This subroutine is executed outside of the parallel region
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(xc_consumer_t), | intent(inout) | :: | self |