getRDMCorrectionTerm Function

public function getRDMCorrectionTerm(DetSgn, DetPosition) result(rdmC)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: DetSgn(lenof_sign)
integer, intent(in) :: DetPosition

Return Value real(kind=dp)


Contents

Source Code


Source Code

    function getRDMCorrectionTerm(DetSgn, DetPosition) result(rdmC)
        ! get (fmu - 1) c_mu^2 for a single mu
        implicit none
        real(dp), intent(in) :: DetSgn(lenof_sign)
        integer, intent(in) :: DetPosition
        real(dp) :: rdmC

        integer :: run, pairRun

        rdmC = 0.0_dp
        do run = 1, inum_runs, 2
            if (run + 1 <= inum_runs) then
                pairRun = run + 1
            else
                pairRun = run
            end if
            rdmC = rdmC + (avFFunc(DetSgn, DetPosition) - 1) * DetSgn(run) * DetSgn(pairRun)
        end do

    end function getRDMCorrectionTerm