Bug
In src/pre_process/m_start_up.fpp lines 789-795, the MHD hyperbolic divergence cleaning psi field initialization hardcodes the third array index to 0:
if (hyper_cleaning) then
do j = 0, m
do k = 0, n
q_cons_vf(psi_idx)%sf(j, k, 0) = 1d-2*exp(-(x_cc(j)**2 + y_cc(k)**2)/(2.0*0.05**2))
q_prim_vf(psi_idx)%sf(j, k, 0) = q_cons_vf(psi_idx)%sf(j, k, 0)
end do
end do
end if
In 3D simulations (p > 0), only the first z-plane gets initialized. All other z-planes keep whatever value they had (zero or garbage), corrupting the divergence cleaning field. Needs an outer do l = 0, p loop with z_cc(l) in the Gaussian exponent.
Fix
PR #1217
Bug
In
src/pre_process/m_start_up.fpplines 789-795, the MHD hyperbolic divergence cleaning psi field initialization hardcodes the third array index to0:In 3D simulations (
p > 0), only the first z-plane gets initialized. All other z-planes keep whatever value they had (zero or garbage), corrupting the divergence cleaning field. Needs an outerdo l = 0, ploop withz_cc(l)in the Gaussian exponent.Fix
PR #1217