RotateOrbsMod Module



Variables

Type Visibility Attributes Name Initial
integer, public, allocatable :: Lab(:,:)
integer, public, allocatable :: LabVirtOrbs(:)
integer, public, allocatable :: LabOccOrbs(:)
integer, public, allocatable :: SymLabelList3_rotInv(:)
real(kind=dp), public, allocatable :: CoeffCorT2(:,:)
real(kind=dp), public, allocatable :: CoeffUncorT2(:,:)
real(kind=dp), public, allocatable :: Lambdas(:,:)
real(kind=dp), public, allocatable :: ArrNew(:,:)
real(kind=dp), public, allocatable :: ArrDiagNew(:)
real(kind=dp), public, allocatable :: TMAT2DTemp(:,:)
real(kind=dp), public, allocatable :: TMAT2DRot(:,:)
real(kind=dp), public, allocatable :: TMAT2DPartRot01(:,:)
real(kind=dp), public, allocatable :: TMAT2DPartRot02(:,:)
real(kind=dp), public, allocatable :: DerivCoeff(:,:)
real(kind=dp), public, allocatable :: UMATTemp01(:,:,:,:)
real(kind=dp), public, allocatable :: UMATTemp02(:,:,:,:)
real(kind=dp), public, allocatable :: DerivLambda(:,:)
real(kind=dp), public, allocatable :: ForceCorrect(:,:)
real(kind=dp), public, allocatable :: Correction(:,:)
real(kind=dp), public, allocatable :: ShakeLambdaNew(:)
real(kind=dp), public, allocatable :: ConstraintCor(:)
real(kind=dp), public, allocatable :: Constraint(:)
real(kind=dp), public, allocatable :: ShakeLambda(:)
real(kind=dp), public, allocatable :: DerivConstrT1(:,:,:)
real(kind=dp), public, allocatable :: DerivConstrT2(:,:,:)
real(kind=dp), public, allocatable :: DerivConstrT1T2(:,:)
real(kind=dp), public, allocatable :: DerivConstrT1T2Diag(:)
real(kind=dp), public, allocatable :: FourIndInts(:,:,:,:)
real(kind=dp), public, allocatable :: TwoIndInts01(:,:,:,:)
real(kind=dp), public, allocatable :: TwoIndInts02(:,:,:,:)
real(kind=dp), public, allocatable :: ThreeIndInts01(:,:,:,:)
real(kind=dp), public, allocatable :: FourIndInts02(:,:,:,:)
real(kind=dp), public, allocatable :: ThreeIndInts02(:,:,:,:)
real(kind=dp), public, allocatable :: ThreeIndInts03(:,:,:,:)
real(kind=dp), public, allocatable :: ThreeIndInts04(:,:,:,:)
real(kind=dp), public, allocatable :: DiagTMAT2Dfull(:)
real(kind=dp), public, allocatable :: TMAT2DNew(:,:)
real(kind=dp), public, allocatable :: TwoIndIntsER(:,:,:)
real(kind=dp), public, allocatable :: ThreeIndInts01ER(:,:)
real(kind=dp), public, allocatable :: ThreeIndInts02ER(:,:)
real(kind=dp), public, allocatable :: FourIndIntsER(:)
integer(kind=TagIntType), public :: TwoIndIntsERTag
integer(kind=TagIntType), public :: ThreeIndInts01ERTag
integer(kind=TagIntType), public :: ThreeIndInts02ERTag
integer(kind=TagIntType), public :: FourIndIntsERTag
integer(kind=TagIntType), public :: TwoIndInts01Tag
integer(kind=TagIntType), public :: TwoIndInts02Tag
integer(kind=TagIntType), public :: ThreeIndInts01Tag
integer(kind=TagIntType), public :: ThreeIndInts02Tag
integer(kind=TagIntType), public :: ThreeIndInts03Tag
integer(kind=TagIntType), public :: FourIndInts02Tag
integer(kind=TagIntType), public :: ThreeIndInts04Tag
integer(kind=TagIntType), public :: UMATTemp02Tag
integer(kind=TagIntType), public :: TMAT2DTempTag
integer(kind=TagIntType), public :: TMAT2DRotTag
integer(kind=TagIntType), public :: TMAT2DPartRot01Tag
integer(kind=TagIntType), public :: TMAT2DPartRot02Tag
integer(kind=TagIntType), public :: LabTag
integer(kind=TagIntType), public :: ForceCorrectTag
integer(kind=TagIntType), public :: CorrectionTag
integer(kind=TagIntType), public :: FourIndIntsTag
integer(kind=TagIntType), public :: ArrDiagNewTag
integer(kind=TagIntType), public :: ArrNewTag
integer(kind=TagIntType), public :: UMATTemp01Tag
integer, public :: ShakeIterInput
integer, public :: NoOcc
integer, public :: LowBound02
integer, public :: HighBound02
integer, public :: Iteration
integer, public :: TotNoConstraints
integer(kind=TagIntType), public :: CoeffCorT2Tag
integer(kind=TagIntType), public :: CoeffUncorT2Tag
integer(kind=TagIntType), public :: LambdasTag
integer(kind=TagIntType), public :: DerivCoeffTag
integer(kind=TagIntType), public :: DerivLambdaTag
integer(kind=TagIntType), public :: ShakeLambdaNewTag
integer(kind=TagIntType), public :: ShakeLambdaTag
integer(kind=TagIntType), public :: ConstraintTag
integer(kind=TagIntType), public :: ConstraintCorTag
integer(kind=TagIntType), public :: DerivConstrT1Tag
integer(kind=TagIntType), public :: DerivConstrT2Tag
integer(kind=TagIntType), public :: DerivConstrT1T2Tag
integer(kind=TagIntType), public :: DerivConstrT1T2DiagTag
integer(kind=TagIntType), public :: LabVirtOrbsTag
integer(kind=TagIntType), public :: LabOccOrbsTag
integer, public :: MinOccVirt
integer, public :: MaxOccVirt
integer, public :: MinMZ
integer, public :: MaxMZ
integer, public :: error
integer, public :: LowBound
integer, public :: HighBound
integer, public :: NoInts01
integer, public :: NoInts02
integer, public :: NoInts03
integer, public :: NoInts04
integer, public :: NoInts05
integer, public :: NoInts06
integer(kind=TagIntType), public :: DiagTMAT2DfullTag
integer(kind=TagIntType), public :: TMAT2DNewTag
integer(kind=TagIntType), public :: SymLabelList3_rotInvTag
logical, public :: tNotConverged
logical, public :: tInitIntValues
real(kind=dp), public :: OrthoNorm
real(kind=dp), public :: ERPotEnergy
real(kind=dp), public :: HijSqrdPotEnergy
real(kind=dp), public :: OffDiagPotEnergy
real(kind=dp), public :: CoulPotEnergy
real(kind=dp), public :: PotEnergy
real(kind=dp), public :: Force
real(kind=dp), public :: TwoEInts
real(kind=dp), public :: DistCs
real(kind=dp), public :: OrthoForce
real(kind=dp), public :: DistLs
real(kind=dp), public :: LambdaMag
real(kind=dp), public :: PEInts
real(kind=dp), public :: PEOrtho
real(kind=dp), public :: ForceInts
real(kind=dp), public :: TotCorrectedForce
real(kind=dp), public :: ijOccVirtPotEnergy
real(kind=dp), public :: EpsilonMin
real(kind=dp), public :: MaxTerm
real(kind=dp), public :: DiagOneElPotInit
real(kind=dp), public :: ERPotInit
real(kind=dp), public :: ijVirtOneElPotInit
real(kind=dp), public :: ijVirtCoulPotInit
real(kind=dp), public :: ijVirtExchPotInit
real(kind=dp), public :: singCoulijVirtInit
real(kind=dp), public :: singExchijVirtInit
real(kind=dp), public :: singCoulconHFInit
real(kind=dp), public :: singExchconHFInit
real(kind=dp), public :: ijklPotInit
real(kind=dp), public :: ijklantisymPotInit
real(kind=dp), public :: ijOccVirtOneElPotInit
real(kind=dp), public :: ijOccVirtCoulPotInit
real(kind=dp), public :: ijOccVirtExchPotInit
real(kind=dp), public :: OrthoFac = 1.0_dp
real(kind=dp), public :: ROHistSing(2,4002)
real(kind=dp), public :: ROHistOffDiag(2,4002)
real(kind=dp), public :: ROHistDoubExc(2,4002)
real(kind=dp), public :: ROHistER(2,4002)
real(kind=dp), public :: ROHistHijVirt(2,4002)
real(kind=dp), public :: ROHistHijOccVirt(2,4002)
real(kind=dp), public :: ROHistHii(2,4002)
real(kind=dp), public :: ROHistOnePartOrbEn(2,4002)
real(kind=dp), public :: ROHistDCijOcklVir(2,4002)
real(kind=dp), public :: ROHistDEijOcklVir(2,4002)
real(kind=dp), public :: ROHistDCijklVir(2,4002)
real(kind=dp), public :: ROHistDEijklVir(2,4002)
real(kind=dp), public :: ROHistSCikOcjVir(2,4002)
real(kind=dp), public :: ROHistSEikOcjVir(2,4002)
real(kind=dp), public :: ROHistSCkOcijVir(2,4002)
real(kind=dp), public :: ROHistSEkOcijVir(2,4002)
real(kind=dp), public :: ROHistSCijkVir(2,4002)
real(kind=dp), public :: ROHistSEijkVir(2,4002)
real(kind=dp), public :: ROHistSASikOcjVir(2,4002)
real(kind=dp), public :: ROHistSASkOcijVir(2,4002)
real(kind=dp), public :: ROHistSASijkVir(2,4002)
real(kind=dp), public :: ROHistASijklVir(2,4002)
real(kind=dp), public :: ROHistASijOcklVir(2,4002)
type(timer), public, save :: Rotation_Time
type(timer), public, save :: FullShake_Time
type(timer), public, save :: Shake_Time
type(timer), public, save :: Findtheforce_Time
type(timer), public, save :: Transform2ElInts_Time
type(timer), public, save :: findandusetheforce_time
type(timer), public, save :: CalcDerivConstr_Time
type(timer), public, save :: TestOrthoConver_Time
type(timer), public, save :: RefillUMAT_Time
type(timer), public, save :: PrintROFCIDUMP_Time

Subroutines

public subroutine RotateOrbs()

Arguments

None

public subroutine FindNatOrbitals()

Arguments

None

public subroutine ReTruncROFciDump()

Arguments

None

public subroutine ApproxMemReq()

Arguments

None

public subroutine WriteTransformMat()

Arguments

None

public subroutine InitLocalOrbs()

Arguments

None

public subroutine InitRotCalc()

Arguments

None

public subroutine CopyAcrossUMAT()

Arguments

None

public subroutine WriteStats()

Arguments

None

public subroutine InitSymmArrays()

Arguments

None

public subroutine EquateDiagFock()

Arguments

None

public subroutine InitOrbitalSeparation()

Second fill SymLabelCounts2_rot. - the first 8 places of SymLabelCounts2_rot(1,:) and SymLabelCounts2_rot(2,:) refer to the occupied orbitals - and the second 8 to the virtuals.

Read more…

Arguments

None

public subroutine Diagonalizehij()

Arguments

None

public subroutine ZeroOccVirtElements(Coeff)

Arguments

Type IntentOptional Attributes Name
real(kind=dp) :: Coeff(NoOrbs,NoOrbs)

public subroutine FindNewOrbs()

Arguments

None

public subroutine Transform2ElInts()

Arguments

None

public subroutine Transform2ElIntsMemSave()

Arguments

None

public subroutine Transform2ElIntsERlocal()

Arguments

None

public subroutine CalcPotentials()

Arguments

None

public subroutine FindTheForce()

Arguments

None

public subroutine UseTheForce()

Arguments

None

public subroutine TestOrthonormality()

Arguments

None

public subroutine TestForConvergence()

Arguments

None

public subroutine ShakeConstraints()

Arguments

None

public subroutine CalcDerivConstr(CurrCoeff, DerivConstr)

Arguments

Type IntentOptional Attributes Name
real(kind=dp) :: CurrCoeff(NoOrbs,NoOrbs)
real(kind=dp) :: DerivConstr(NoOrbs,NoOrbs,TotNoConstraints)

public subroutine FindandUsetheForce(TotForce, TotDiffCoeffs, CoeffT2)

Arguments

Type IntentOptional Attributes Name
real(kind=dp) :: TotForce
real(kind=dp) :: TotDiffCoeffs
real(kind=dp) :: CoeffT2(NoOrbs,NoOrbs)

public subroutine CalcConstraints(CurrCoeff, Constraint, TotConstraints)

Arguments

Type IntentOptional Attributes Name
real(kind=dp) :: CurrCoeff(NoOrbs,NoOrbs)
real(kind=dp) :: Constraint(TotNoConstraints)
real(kind=dp) :: TotConstraints

public subroutine FullShake()

Arguments

None

public subroutine ShakeApproximation()

Arguments

None

public subroutine UpdateLambdas()

Arguments

None

public subroutine TestShakeConvergence(ConvergeCount, TotCorConstraints, ShakeIteration, tShakeNotConverged)

Arguments

Type IntentOptional Attributes Name
integer :: ConvergeCount
real(kind=dp) :: TotCorConstraints
integer :: ShakeIteration
logical :: tShakeNotConverged

public subroutine FinalizeNewOrbs()

Arguments

None

public subroutine WriteSingHisttofile()

Arguments

None

public subroutine WriteDoubHisttofile()

Arguments

None

public subroutine PrintIntegrals()

Arguments

None

public subroutine CalcFOCKMatrix()

Arguments

None

public subroutine RefillUMATandTMAT2D()

Arguments

None

public subroutine PrintROFCIDUMP()

Arguments

None

public subroutine PrintRepeatROFCIDUMP()

Arguments

None

public subroutine DeallocateMem()

Arguments

None