plan 内の全ソース位置を primary cell [target_box_min, target_box_min+L) へ折り返す。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(fmm_plan_type), | intent(inout) | :: | plan |
FMM 計画( |
subroutine wrap_src_pos_to_primary_cell(plan) type(fmm_plan_type), intent(inout) :: plan integer(i32) :: i, k, axis if (.not. plan%options%use_periodic2) return do i = 1_i32, plan%nsrc do k = 1_i32, 2_i32 axis = plan%options%periodic_axes(k) plan%src_pos(axis, i) = wrap_periodic_coordinate( & plan%src_pos(axis, i), plan%options%target_box_min(axis), plan%options%periodic_len(k) & ) end do end do end subroutine wrap_src_pos_to_primary_cell