excite Interface

public interface excite

Perform the excitation on a given determinant.

It is assumed that the excitations are non trivial. I.e. for single excitations source /= target and for double excitations the set of sources and targets has to be disjoint.


Contents


Module Procedures

private pure function excite_nI_Excite_0_t(det_I, exc) result(res)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: det_I(:)
type(Excite_0_t), intent(in) :: exc

Return Value integer, (size(det_I))

private pure function excite_nI_Excite_1_t(det_I, exc) result(res)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: det_I(:)
type(Excite_1_t), intent(in) :: exc

Return Value integer, (size(det_I))

private pure function excite_nI_Excite_2_t(det_I, exc) result(res)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: det_I(:)
type(Excite_2_t), intent(in) :: exc

Return Value integer, (size(det_I))

private pure function excite_nI_Excite_3_t(det_I, exc) result(res)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: det_I(:)
type(Excite_3_t), intent(in) :: exc

Return Value integer, (size(det_I))

private pure function excite_SpinOrbIdx_t_Excite_0_t(det_I, exc) result(res)

Arguments

Type IntentOptional Attributes Name
type(SpinOrbIdx_t), intent(in) :: det_I
type(Excite_0_t), intent(in) :: exc

Return Value type(SpinOrbIdx_t)

private pure function excite_SpinOrbIdx_t_Excite_1_t(det_I, exc) result(res)

Arguments

Type IntentOptional Attributes Name
type(SpinOrbIdx_t), intent(in) :: det_I
type(Excite_1_t), intent(in) :: exc

Return Value type(SpinOrbIdx_t)

private pure function excite_SpinOrbIdx_t_Excite_2_t(det_I, exc) result(res)

Arguments

Type IntentOptional Attributes Name
type(SpinOrbIdx_t), intent(in) :: det_I
type(Excite_2_t), intent(in) :: exc

Return Value type(SpinOrbIdx_t)

private pure function excite_SpinOrbIdx_t_Excite_3_t(det_I, exc) result(res)

Arguments

Type IntentOptional Attributes Name
type(SpinOrbIdx_t), intent(in) :: det_I
type(Excite_3_t), intent(in) :: exc

Return Value type(SpinOrbIdx_t)