SETUPUMAT2D_DF Subroutine

public subroutine SETUPUMAT2D_DF()

Arguments

None

Contents

Source Code


Source Code

    SUBROUTINE SETUPUMAT2D_DF()
        ! Set up UMat2D for storing the <ij|u|ij> and <ij|u|ji> integrals for
        ! density fitting calculations.
        INTEGER ierr
        character(len=*), parameter :: thisroutine = 'SETUPUMAT2D_DF'
        IF (NSLOTSINIT < 0) THEN
            TUMAT2D = .FALSE.
            write(stdout, *) "Not using UMAT2D."
        ELSE
            TUMAT2D = .TRUE.
            allocate(UMat2D(nStates, nStates), STAT=ierr)
            UMat2D = 0.0_dp
!            write(stdout,*) "nStates for UMat2D: ",nStates
            call LogMemAlloc('UMat2D', nStates**2, 8 * HElement_t_size, thisroutine, tagUMat2D, ierr)
            IF (.not. tRIIntegrals) THEN
                CALL ReadDalton2EIntegrals(nStates, UMat2D, tUMat2D)
            end if
        end if
    END SUBROUTINE SetupUMat2D_DF