setup_pert_array Subroutine

public subroutine setup_pert_array(ctrn_index)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: ctrn_index

Contents

Source Code


Source Code

    subroutine setup_pert_array(ctrn_index)
        implicit none
        integer, intent(in) :: ctrn_index
        integer :: i

        gf_count = nBasis
        allocate(overlap_pert(nBasis))
        do i = 1, nBasis
            if (ctrn_index == 2) then
                overlap_pert(i)%ncreate = 1
                allocate(overlap_pert(i)%crtn_orbs(1))
                overlap_pert(i)%crtn_orbs(1) = i
                call init_perturbation_creation(overlap_pert(i))
            else
                overlap_pert(i)%nannihilate = 1
                allocate(overlap_pert(i)%ann_orbs(1))
                overlap_pert(i)%ann_orbs(1) = i
                call init_perturbation_annihilation(overlap_pert(i))
            end if
        end do

    end subroutine setup_pert_array