| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(aim) | :: | this | ||||
| integer, | intent(in) | :: | length_x | |||
| integer, | intent(in) | :: | length_y | |||
| integer, | intent(in), | optional | :: | length_z |
function calc_nsites_aim(this, length_x, length_y, length_z) result(n_sites) class(aim) :: this integer, intent(in) :: length_x, length_y integer, intent(in), optional :: length_z integer :: n_sites character(*), parameter :: this_routine = "calc_nsites_aim" unused_var(this) if (present(length_z)) then unused_var(length_z) end if unused_var(this) unused_var(length_z) ! for AIM systems assume first length input is number of impurity ! sites and bath sites are number of path sites per impurity!! if (length_x <= 0) then call stop_all(this_routine, & "incorrect aim_sites input <= 0!") end if if (length_y <= 0) then call stop_all(this_routine, & "incorrect bath_sites input <= 0!") end if n_sites = length_x * length_y + length_x end function calc_nsites_aim