IncrSym Subroutine

public subroutine IncrSym(Sym)

Arguments

Type IntentOptional Attributes Name
type(Symmetry) :: Sym

Contents

Source Code


Source Code

    subroutine IncrSym(Sym)
        implicit none
        type(Symmetry) Sym
        integer abel(3), i
        logical lcont
        if (TAbelian) then
            call DecomposeAbelianSym(Sym%s, abel)
            i = 1
            lcont = .true.
            do while (i < 4 .and. lcont)
                abel(i) = mod(abel(i) + 1, nprop(i))
                lcont = abel(i) == 0
                i = i + 1
            end do
            Sym%s = ComposeAbelianSym(abel)
        else
            Sym%s = 0
        end if
    end subroutine IncrSym