make_canonical Interface

public interface make_canonical

Canonicalize an excitation and count the necessary swaps

Canonical means that the excitation is defined, i.e. it has no UNKNOWN, the sources and the targets are sets, i.e. they are unique and ordered, and the sources and the targets are disjoint.


Contents


Module Procedures

private elemental subroutine make_canonical_Excite_0_t(exc, even_swaps)

Arguments

Type IntentOptional Attributes Name
type(Excite_0_t), intent(inout) :: exc
logical, intent(out) :: even_swaps

private elemental subroutine make_canonical_Excite_1_t(exc, even_swaps)

Arguments

Type IntentOptional Attributes Name
type(Excite_1_t), intent(inout) :: exc
logical, intent(out) :: even_swaps

private elemental subroutine make_canonical_Excite_2_t(exc, even_swaps)

Arguments

Type IntentOptional Attributes Name
type(Excite_2_t), intent(inout) :: exc
logical, intent(out) :: even_swaps

private elemental subroutine make_canonical_Excite_3_t(exc, even_swaps)

Arguments

Type IntentOptional Attributes Name
type(Excite_3_t), intent(inout) :: exc
logical, intent(out) :: even_swaps