SymData Module



Contents


Variables

Type Visibility Attributes Name Initial
integer, public, parameter :: SymPairProdSize = SymmetrySize+4
integer, public, parameter :: SymClassSize = 2+SymmetrySize
type(BasisFN), public :: FrozenSym
integer, public :: NSYM
integer, public :: Sym_Psi
logical, public :: TwoCycleSymGens
logical, public :: TStoreStateList
integer, public :: Nprop(3)
integer, public, ALLOCATABLE :: KPntSym(:,:)
integer, public :: PropBitLen
integer, public, ALLOCATABLE :: SymConjTab(:)
type(Symmetry), public, ALLOCATABLE :: SYMTABLE(:,:)
integer, public, ALLOCATABLE :: SYMREPS(:,:)
integer, public :: NSYMLABELS
type(Symmetry), public, ALLOCATABLE :: SYMLABELS(:)
integer, public, ALLOCATABLE :: StateSymMap(:)
integer, public, ALLOCATABLE :: StateSymMap2(:)
integer, public, POINTER :: SymClasses(:)
integer, public, POINTER :: SymClasses2(:)
complex(kind=dp), public, ALLOCATABLE :: SYMLABELCHARS(:,:)
integer, public, ALLOCATABLE :: SYMLABELLIST(:)
integer, public, ALLOCATABLE :: SYMLABELCOUNTS(:,:)
integer, public, POINTER :: SYMLABELCOUNTSCUM(:)
integer, public, POINTER :: SYMLABELINTSCUM(:)
integer, public, POINTER :: SYMLABELCOUNTSCUM2(:)
integer, public, POINTER :: SYMLABELINTSCUM2(:)
integer, public, POINTER :: SymIndex(:)
integer, public, POINTER :: SymIndex2(:)
integer, public :: NROT
complex(kind=dp), public, ALLOCATABLE :: IRREPCHARS(:,:)
type(SymPairProd), public, ALLOCATABLE :: SymPairProds(:)
integer, public :: nSymPairProds
integer, public, ALLOCATABLE :: SymStatePairs(:,:)
logical, public :: TAbelian
logical, public :: tAbelianFastExcitGen
integer(kind=TagIntType), public :: tagKPntSym
integer(kind=TagIntType), public :: tagSymConjTab
integer(kind=TagIntType), public :: tagSYMTABLE
integer(kind=TagIntType), public :: tagSYMREPS
integer(kind=TagIntType), public :: tagSYMLABELS
integer(kind=TagIntType), public :: tagStateSymMap
integer(kind=TagIntType), public :: tagStateSymMap2
integer(kind=TagIntType), public :: tagSymClasses
integer(kind=TagIntType), public :: tagSymClasses2
integer(kind=TagIntType), public :: tagSYMLABELCHARS
integer(kind=TagIntType), public :: tagSYMLABELLIST
integer(kind=TagIntType), public :: tagSYMLABELCOUNTS
integer(kind=TagIntType), public :: tagSYMLABELCOUNTSCUM
integer(kind=TagIntType), public :: tagSYMLABELINTSCUM
integer(kind=TagIntType), public :: tagSYMLABELCOUNTSCUM2
integer(kind=TagIntType), public :: tagSYMLABELINTSCUM2
integer(kind=TagIntType), public :: tagIRREPCHARS
integer(kind=TagIntType), public :: tagSymStatePairs
integer(kind=TagIntType), public :: tagSymPairProds
integer(kind=TagIntType), public :: tagSymIndex = 0
integer(kind=TagIntType), public :: tagSymIndex2 = 0

Interfaces

public interface assignment(=)

public interface operator(.eq.)

  • public elemental function SymPairEq(a, b)

    Arguments

    Type IntentOptional Attributes Name
    type(SymPairProd), intent(in) :: a
    type(SymPairProd), intent(in) :: b

    Return Value logical

public interface operator(.ne.)

  • public elemental function SymPairNEq(a, b)

    Arguments

    Type IntentOptional Attributes Name
    type(SymPairProd), intent(in) :: a
    type(SymPairProd), intent(in) :: b

    Return Value logical

public interface operator(.gt.)

  • public elemental function SymPairGt(a, b) result(bGt)

    Arguments

    Type IntentOptional Attributes Name
    type(SymPairProd), intent(in) :: a
    type(SymPairProd), intent(in) :: b

    Return Value logical

public interface operator(.lt.)

  • public elemental function SymPairLt(a, b) result(bLt)

    Arguments

    Type IntentOptional Attributes Name
    type(SymPairProd), intent(in) :: a
    type(SymPairProd), intent(in) :: b

    Return Value logical


Derived Types

type, public ::  SymPairProd

Components

Type Visibility Attributes Name Initial
type(Symmetry), public :: Sym
integer, public :: nPairs
integer, public :: nIndex
integer, public :: nPairsStateSS
integer, public :: nPairsStateOS

type, public, sequence  ::  SymClass

Components

Type Visibility Attributes Name Initial
type(Symmetry), public :: SymRem
integer, public :: SymLab
integer, public :: spacer

Functions

public elemental function SymPairEq(a, b)

Arguments

Type IntentOptional Attributes Name
type(SymPairProd), intent(in) :: a
type(SymPairProd), intent(in) :: b

Return Value logical

public elemental function SymPairNEq(a, b)

Arguments

Type IntentOptional Attributes Name
type(SymPairProd), intent(in) :: a
type(SymPairProd), intent(in) :: b

Return Value logical

public elemental function SymPairGt(a, b) result(bGt)

Arguments

Type IntentOptional Attributes Name
type(SymPairProd), intent(in) :: a
type(SymPairProd), intent(in) :: b

Return Value logical

public elemental function SymPairLt(a, b) result(bLt)

Arguments

Type IntentOptional Attributes Name
type(SymPairProd), intent(in) :: a
type(SymPairProd), intent(in) :: b

Return Value logical


Subroutines

public elemental subroutine SymPairAssign(lhs, rhs)

Arguments

Type IntentOptional Attributes Name
type(SymPairProd), intent(out) :: lhs
type(SymPairProd), intent(in) :: rhs