Skip to content

Commit b3fcc2a

Browse files
authored
Fix 1D flow perturbation applying random factor twice (index aliasing) (#1397)
1 parent 6469617 commit b3fcc2a

1 file changed

Lines changed: 4 additions & 3 deletions

File tree

src/pre_process/m_perturbation.fpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ contains
6363

6464
type(scalar_field), dimension(sys_size), intent(inout) :: q_prim_vf
6565
integer :: i, j, k
66-
real(wp) :: rand_real
66+
real(wp) :: rand_real, v_beg
6767

6868
call random_seed()
6969

@@ -72,8 +72,9 @@ contains
7272
do i = 0, m
7373
call random_number(rand_real)
7474
rand_real = rand_real*perturb_flow_mag
75-
q_prim_vf(eqn_idx%mom%end)%sf(i, j, k) = rand_real*q_prim_vf(eqn_idx%mom%beg)%sf(i, j, k)
76-
q_prim_vf(eqn_idx%mom%beg)%sf(i, j, k) = (1._wp + rand_real)*q_prim_vf(eqn_idx%mom%beg)%sf(i, j, k)
75+
v_beg = q_prim_vf(eqn_idx%mom%beg)%sf(i, j, k)
76+
q_prim_vf(eqn_idx%mom%beg)%sf(i, j, k) = (1._wp + rand_real)*v_beg
77+
if (num_vels > 1) q_prim_vf(eqn_idx%mom%end)%sf(i, j, k) = rand_real*v_beg
7778
if (bubbles_euler) then
7879
q_prim_vf(eqn_idx%alf)%sf(i, j, k) = (1._wp + rand_real)*q_prim_vf(eqn_idx%alf)%sf(i, j, k)
7980
end if

0 commit comments

Comments
 (0)