sltcnd_excit Interface

public interface sltcnd_excit

@brief Evaluate Matrix Element for different excitations using the Slater-Condon rules.

@details This generic function uses compile time dispatch. This means that exc cannot be just of class(Excitation_t) but has to be a proper non-polymorphic type. For run time dispatch use dyn_sltcnd_excit.

@param[in] exc, An excitation of a subtype of Excitation_t.


Contents


Module Procedures

private function sltcnd_excit_Excite_Further_t(nI, exc)

@brief Excitations further than max_excit_rank should return 0

Read more…

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nI(nEl)
type(Excite_Further_t), intent(in) :: exc

Return Value real(kind=dp)

private function sltcnd_excit_SpinOrbIdx_t_Excite_1_t(ref, exc, tParity)

@brief Evaluate Matrix Element for Excite_1_t.

Read more…

Arguments

Type IntentOptional Attributes Name
type(SpinOrbIdx_t), intent(in) :: ref
type(Excite_1_t), intent(in) :: exc
logical, intent(in) :: tParity

Return Value real(kind=dp)

private function sltcnd_excit_SpinOrbIdx_t_Excite_2_t(ref, exc, tParity)

@brief Evaluate Matrix Element for Excite_2_t.

Read more…

Arguments

Type IntentOptional Attributes Name
type(SpinOrbIdx_t), intent(in) :: ref
type(Excite_2_t), intent(in) :: exc
logical, intent(in) :: tParity

Return Value real(kind=dp)

Dummy Procedures and Procedure Pointers

Type Attributes Name Initial
procedure(sltcnd_0_t), pointer :: sltcnd_0 => null()
procedure(sltcnd_1_t), pointer :: sltcnd_1 => null()
procedure(sltcnd_2_t), pointer :: sltcnd_2 => null()
procedure(sltcnd_3_t), pointer :: sltcnd_3 => null()