Skip to content

Commit c436f55

Browse files
committed
Revert "Revert "compiles without errors with m_viscous. Fails a monopole test though...""
This reverts commit 47bc66a.
1 parent 47bc66a commit c436f55

File tree

2 files changed

+112
-122
lines changed

2 files changed

+112
-122
lines changed

src/simulation/m_rhs.f90

Lines changed: 13 additions & 104 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ module m_rhs
5454
s_compute_rhs, &
5555
s_pressure_relaxation_procedure, &
5656
s_populate_variables_buffers, &
57-
s_finalize_rhs_module, &
57+
s_finalize_rhs_module
5858

5959

6060
type(vector_field) :: q_cons_qp !<
@@ -913,7 +913,15 @@ subroutine s_compute_rhs(q_cons_vf, q_prim_vf, rhs_vf, t_step) ! -------
913913
if (qbmm) call s_mom_inv(q_prim_qp%vf, mom_sp, mom_3d, ix, iy, iz)
914914

915915
call nvtxStartRange("Viscous")
916-
if (any(Re_size > 0)) call s_get_viscous()
916+
if (any(Re_size > 0)) call s_get_viscous(qL_rsx_vf_flat, qL_rsy_vf_flat, qL_rsz_vf_flat, &
917+
dqL_prim_dx_n, dqL_prim_dy_n, dqL_prim_dz_n, &
918+
qL_prim, &
919+
qR_rsx_vf_flat, qR_rsy_vf_flat, qR_rsz_vf_flat, &
920+
dqR_prim_dx_n, dqR_prim_dy_n, dqR_prim_dz_n, &
921+
qR_prim, &
922+
q_prim_qp, &
923+
dq_prim_dx_qp, dq_prim_dy_qp, dq_prim_dz_qp, gm_vel_qp, &
924+
ix, iy, iz)
917925
call nvtxEndRange()
918926

919927
! Dimensional Splitting Loop =======================================
@@ -929,7 +937,7 @@ subroutine s_compute_rhs(q_cons_vf, q_prim_vf, rhs_vf, t_step) ! -------
929937
! Reconstructing Primitive/Conservative Variables ===============
930938

931939
if (all(Re_size == 0)) then
932-
%beg = 1; iv%end = sys_size
940+
iv%beg = 1; iv%end = sys_size
933941
!call nvtxStartRange("RHS-WENO")
934942
call nvtxStartRange("RHS-WENO")
935943
call s_reconstruct_cell_boundary_values_alt( &
@@ -2055,12 +2063,14 @@ subroutine s_compute_rhs(q_cons_vf, q_prim_vf, rhs_vf, t_step) ! -------
20552063
dq_prim_dx_qp%vf(mom_idx%beg:mom_idx%end), &
20562064
dq_prim_dy_qp%vf(mom_idx%beg:mom_idx%end), &
20572065
dq_prim_dz_qp%vf(mom_idx%beg:mom_idx%end), &
2066+
tau_Re_vf, &
20582067
ix, iy, iz)
20592068
else
20602069
call s_compute_viscous_stress_tensor(q_prim_qp%vf, &
20612070
dq_prim_dx_qp%vf(mom_idx%beg:mom_idx%end), &
20622071
dq_prim_dy_qp%vf(mom_idx%beg:mom_idx%end), &
20632072
dq_prim_dy_qp%vf(mom_idx%beg:mom_idx%end), &
2073+
tau_Re_vf, &
20642074
ix, iy, iz)
20652075
end if
20662076
!$acc parallel loop collapse(3) gang vector default(present)
@@ -4661,107 +4671,6 @@ subroutine s_reconstruct_cell_boundary_values_alt(v_vf, vL_x_flat, vL_y_flat, vL
46614671
! ==================================================================
46624672
end subroutine s_reconstruct_cell_boundary_values_alt ! --------------------
46634673

4664-
subroutine s_reconstruct_cell_boundary_values_visc(v_vf, vL_x_flat, vL_y_flat, vL_z_flat, vR_x_flat, vR_y_flat, vR_z_flat, & ! -
4665-
norm_dir, vL_prim_vf, vR_prim_vf)
4666-
4667-
type(scalar_field), dimension(iv%beg:iv%end), intent(IN) :: v_vf
4668-
type(scalar_field), dimension(iv%beg:iv%end), intent(INOUT) :: vL_prim_vf, vR_prim_vf
4669-
4670-
real(kind(0d0)), dimension(startx:, starty:, startz:, 1:), intent(INOUT) :: vL_x_flat, vL_y_flat, vL_z_flat, vR_x_flat, vR_y_flat, vR_z_flat
4671-
4672-
integer, intent(IN) :: norm_dir
4673-
4674-
integer :: weno_dir !< Coordinate direction of the WENO reconstruction
4675-
4676-
integer :: i, j, k, l
4677-
! Reconstruction in s1-direction ===================================
4678-
4679-
if (norm_dir == 1) then
4680-
is1 = ix; is2 = iy; is3 = iz
4681-
weno_dir = 1; is1%beg = is1%beg + weno_polyn
4682-
is1%end = is1%end - weno_polyn
4683-
4684-
elseif (norm_dir == 2) then
4685-
is1 = iy; is2 = ix; is3 = iz
4686-
weno_dir = 2; is1%beg = is1%beg + weno_polyn
4687-
is1%end = is1%end - weno_polyn
4688-
4689-
else
4690-
is1 = iz; is2 = iy; is3 = ix
4691-
weno_dir = 3; is1%beg = is1%beg + weno_polyn
4692-
is1%end = is1%end - weno_polyn
4693-
4694-
end if
4695-
4696-
!$acc update device(is1, is2, is3, iv)
4697-
4698-
if (n > 0) then
4699-
if (p > 0) then
4700-
4701-
call s_weno_alt(v_vf(iv%beg:iv%end), &
4702-
vL_x_flat(:, :, :, iv%beg:iv%end), vL_y_flat(:, :, :, iv%beg:iv%end), vL_z_flat(:, :, :, iv%beg:iv%end), vR_x_flat(:, :, :, iv%beg:iv%end), vR_y_flat(:, :, :, iv%beg:iv%end), vR_z_flat(:, :, :, iv%beg:iv%end), &
4703-
norm_dir, weno_dir, &
4704-
is1, is2, is3)
4705-
else
4706-
call s_weno_alt(v_vf(iv%beg:iv%end), &
4707-
vL_x_flat(:, :, :, iv%beg:iv%end), vL_y_flat(:, :, :, iv%beg:iv%end), vL_z_flat(:, :, :, :), vR_x_flat(:, :, :, iv%beg:iv%end), vR_y_flat(:, :, :, iv%beg:iv%end), vR_z_flat(:, :, :, :), &
4708-
norm_dir, weno_dir, &
4709-
is1, is2, is3)
4710-
end if
4711-
else
4712-
4713-
call s_weno_alt(v_vf(iv%beg:iv%end), &
4714-
vL_x_flat(:, :, :, iv%beg:iv%end), vL_y_flat(:, :, :, :), vL_z_flat(:, :, :, :), vR_x_flat(:, :, :, iv%beg:iv%end), vR_y_flat(:, :, :, :), vR_z_flat(:, :, :, :), &
4715-
norm_dir, weno_dir, &
4716-
is1, is2, is3)
4717-
end if
4718-
4719-
if (any(Re_size > 0)) then
4720-
if (weno_Re_flux) then
4721-
if (norm_dir == 2) then
4722-
!$acc parallel loop collapse(4) gang vector default(present)
4723-
do i = iv%beg, iv%end
4724-
do l = is3%beg, is3%end
4725-
do j = is1%beg, is1%end
4726-
do k = is2%beg, is2%end
4727-
vL_prim_vf(i)%sf(k, j, l) = vL_y_flat(j, k, l, i)
4728-
vR_prim_vf(i)%sf(k, j, l) = vR_y_flat(j, k, l, i)
4729-
end do
4730-
end do
4731-
end do
4732-
end do
4733-
elseif (norm_dir == 3) then
4734-
!$acc parallel loop collapse(4) gang vector default(present)
4735-
do i = iv%beg, iv%end
4736-
do j = is1%beg, is1%end
4737-
do k = is2%beg, is2%end
4738-
do l = is3%beg, is3%end
4739-
vL_prim_vf(i)%sf(l, k, j) = vL_z_flat(j, k, l, i)
4740-
vR_prim_vf(i)%sf(l, k, j) = vR_z_flat(j, k, l, i)
4741-
end do
4742-
end do
4743-
end do
4744-
end do
4745-
elseif (norm_dir == 1) then
4746-
!$acc parallel loop collapse(4) gang vector default(present)
4747-
do i = iv%beg, iv%end
4748-
do l = is3%beg, is3%end
4749-
do k = is2%beg, is2%end
4750-
do j = is1%beg, is1%end
4751-
vL_prim_vf(i)%sf(j, k, l) = vL_x_flat(j, k, l, i)
4752-
vR_prim_vf(i)%sf(j, k, l) = vR_x_flat(j, k, l, i)
4753-
end do
4754-
end do
4755-
end do
4756-
end do
4757-
end if
4758-
end if
4759-
end if
4760-
4761-
! ==================================================================
4762-
4763-
end subroutine s_reconstruct_cell_boundary_values_visc ! --------------------
4764-
47654674
subroutine s_reconstruct_cell_boundary_values_visc_deriv(v_vf, vL_x_flat, vL_y_flat, vL_z_flat, vR_x_flat, vR_y_flat, vR_z_flat, & ! -
47664675
norm_dir, vL_prim_vf, vR_prim_vf)
47674676

0 commit comments

Comments
 (0)