| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in) | :: | run | |||
| integer, | intent(in) | :: | ex_level |
real(dp) function cepa_shift_cc(run, ex_level) ! this routine should get used when we want to adapt the cepa-shift ! with biasing through the occupation of the higher order ! excitations integer, intent(in) :: run, ex_level if (ex_level == 1) then cepa_shift_cc = cepa_shift_single(run) * cc_singles_factor() else if (ex_level == 2) then cepa_shift_cc = cepa_shift_double(run) * cc_doubles_factor() else if (t_apply_full_cepa) then if (ex_level == 3) then ! i guess the shift could be the same for triples, just the ! factor changes cepa_shift_cc = cepa_shift_double(run) * cc_triples_factor() else if (ex_level == 4) then cepa_shift_cc = cepa_shift_double(run) * cc_quads_factor() else ! the farther one goes out the less occupied the excited space ! becomes.. so maybe it is fair to assume to apply the ! full shift.. cepa_shift_cc = cepa_shift_double(run) end if else cepa_shift_cc = 0.0_dp end if end if end function cepa_shift_cc