aboutsummaryrefslogtreecommitdiff
path: root/Source/Utils/utils_ES.F90
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Utils/utils_ES.F90')
-rw-r--r--Source/Utils/utils_ES.F9073
1 files changed, 0 insertions, 73 deletions
diff --git a/Source/Utils/utils_ES.F90 b/Source/Utils/utils_ES.F90
index ce143bb94..baadeb7af 100644
--- a/Source/Utils/utils_ES.F90
+++ b/Source/Utils/utils_ES.F90
@@ -7,79 +7,6 @@ module warpx_ES_utils
contains
- subroutine warpx_sum_fine_to_crse_nodal_3d (lo, hi, lrat, crse, clo, chi, fine, flo, fhi) &
- bind(c, name="warpx_sum_fine_to_crse_nodal_3d")
-
- integer, intent(in) :: lo(3), hi(3)
- integer, intent(in) :: clo(3), chi(3)
- integer, intent(in) :: flo(3), fhi(3)
- integer, intent(in) :: lrat(3)
- real(amrex_real), intent(inout) :: crse(clo(1):chi(1),clo(2):chi(2),clo(3):chi(3))
- real(amrex_real), intent(in) :: fine(flo(1):fhi(1),flo(2):fhi(2),flo(3):fhi(3))
-
- integer :: i, j, k, ii, jj, kk
-
- do k = lo(3), hi(3)
- kk = k * lrat(3)
- do j = lo(2), hi(2)
- jj = j * lrat(2)
- do i = lo(1), hi(1)
- ii = i * lrat(1)
- crse(i,j,k) = fine(ii,jj,kk) + &
-! These six fine nodes are shared by two coarse nodes...
- 0.5d0 * (fine(ii-1,jj,kk) + fine(ii+1,jj,kk) + &
- fine(ii,jj-1,kk) + fine(ii,jj+1,kk) + &
- fine(ii,jj,kk-1) + fine(ii,jj,kk+1)) + &
-! ... these twelve are shared by four...
- 0.25d0 * (fine(ii,jj-1,kk-1) + fine(ii,jj+1,kk-1) + &
- fine(ii,jj-1,kk+1) + fine(ii,jj+1,kk+1) + &
- fine(ii-1,jj,kk-1) + fine(ii+1,jj,kk-1) + &
- fine(ii-1,jj,kk+1) + fine(ii+1,jj,kk+1) + &
- fine(ii-1,jj-1,kk) + fine(ii+1,jj-1,kk) + &
- fine(ii-1,jj+1,kk) + fine(ii+1,jj+1,kk)) + &
-! ... and these eight are shared by eight
- 0.125d0 * (fine(ii-1,jj-1,kk-1) + fine(ii-1,jj-1,kk+1) + &
- fine(ii-1,jj+1,kk-1) + fine(ii-1,jj+1,kk+1) + &
- fine(ii+1,jj-1,kk-1) + fine(ii+1,jj-1,kk+1) + &
- fine(ii+1,jj+1,kk-1) + fine(ii+1,jj+1,kk+1))
-! ... note that we have 27 nodes in total...
- crse(i,j,k) = crse(i,j,k) / 8.d0
- end do
- end do
- end do
-
- end subroutine warpx_sum_fine_to_crse_nodal_3d
-
- subroutine warpx_sum_fine_to_crse_nodal_2d (lo, hi, lrat, crse, clo, chi, fine, flo, fhi) &
- bind(c, name="warpx_sum_fine_to_crse_nodal_2d")
-
- integer, intent(in) :: lo(2), hi(2)
- integer, intent(in) :: clo(2), chi(2)
- integer, intent(in) :: flo(2), fhi(2)
- integer, intent(in) :: lrat(2)
- real(amrex_real), intent(inout) :: crse(clo(1):chi(1),clo(2):chi(2))
- real(amrex_real), intent(in) :: fine(flo(1):fhi(1),flo(2):fhi(2))
-
- integer :: i, j, ii, jj
-
- do j = lo(2), hi(2)
- jj = j * lrat(2)
- do i = lo(1), hi(1)
- ii = i * lrat(1)
- crse(i,j) = fine(ii,jj) + &
-! These four fine nodes are shared by two coarse nodes...
- 0.5d0 * (fine(ii-1,jj) + fine(ii+1,jj) + &
- fine(ii,jj-1) + fine(ii,jj+1)) + &
-! ... and these four are shared by four...
- 0.25d0 * (fine(ii-1,jj-1) + fine(ii-1,jj+1) + &
- fine(ii-1,jj+1) + fine(ii+1,jj+1))
-! ... note that we have 9 nodes in total...
- crse(i,j) = crse(i,j) / 4.d0
- end do
- end do
-
- end subroutine warpx_sum_fine_to_crse_nodal_2d
-
subroutine warpx_zero_out_bndry_3d (lo, hi, input_data, bndry_data, mask) &
bind(c,name='warpx_zero_out_bndry_3d')