<html><head><meta http-equiv="Content-Type" content="text/html; charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Hi Yi-Hao,<div class=""><br class=""></div><div class="">This is a known problem, and you are likely seeing the same issue that you saw on the mailing list earlier. </div><div class=""><br class=""></div><div class="">Sometimes it helps to use the HLLC solver instead of HLLD, though it does not remove this artifact entirely in my experience. </div><div class=""><br class=""></div><div class="">There is also balsara interpolation for magnetic fields, but I have found that neither this or the straight injection interpolation helps either. </div><div class=""><br class=""></div><div class="">Best,</div><div class=""><br class=""></div><div class="">John</div><div class=""><div><br class=""><blockquote type="cite" class=""><div class="">On Mar 26, 2019, at 1:01 PM, Yi-Hao Chen <<a href="mailto:ychen@astro.wisc.edu" class="">ychen@astro.wisc.edu</a>> wrote:</div><br class="Apple-interchange-newline"><div class="">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" class="">
<div class="">
<div dir="ltr" class="">
<div dir="ltr" class="">
<div dir="ltr" class="">Dear FLASH community,
<div class=""><br class="">
</div>
<div class="">
<div dir="ltr" class="m_6055753200755198736gmail_signature">
<div dir="ltr" class="">
<div dir="ltr" class="">
<div class="">
<div class="">I have been trying to find the cause of a refinement boundary problem when using USM solver in cartesian 3D simulations. The problem appears as the accumulation of magnetic fields at the finer edge at the refinement boundary. I am not sure how to reproduce
the problem in a simple setting, but this seems to be prevalent in the simulations that I have been running. Usually, the anomalies dissipated after many timesteps and went unnoticed. However, it occasionally causes a few cells to drop to extremely small or
even negative density and crashes the simulation. I am wondering if anyone has seen similar behaviors.</div>
</div>
<div class=""><br class="">
</div>
<div class="">Here is a snapshot showing the By field in x-y plane. The quiver arrows indicate the fluid velocity.<br class="">
</div>
<div class="">
<div class=""><span id="cid:ii_jtpy5byy0"><Group_L438_hdf5_plt_cnt_0339_Slice_z_magnetic_field_y.png></span>
<br class="">
</div>
</div>
<div class=""><br class="">
</div>
<div class="">
<div class="">Some relavent parameters I used: RiemannSolver="Hybrid", order=3, slopelimiter="mc", CFL=0.4, energfix = .true.</div>
</div>
<div class=""><br class="">
</div>
<div class="">
<div class="">
<div dir="ltr" class="m_6055753200755198736gmail_signature">
<div dir="ltr" class="">
<div dir="ltr" class="">
<div class="">A few solutions that I have tried:</div>
<div class="">1. Lower CFL to 0.2 <br class="">
</div>
</div>
</div>
</div>
</div>
<blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px" class="">
<div class="">
<div class="">
<div dir="ltr" class="m_6055753200755198736gmail_signature">
<div dir="ltr" class="">
<div class="">
<div dir="ltr" class="">
<div class="">-> does not help</div>
</div>
</div>
</div>
</div>
</div>
</div>
</blockquote>
<div class="">
<div dir="ltr" class="m_6055753200755198736gmail_signature">
<div dir="ltr" class="">
<div dir="ltr" class="">
<div class="">2. Use E_upwind = .true. </div>
</div>
</div>
</div>
</div>
<blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px" class="">
<div class="">
<div dir="ltr" class="m_6055753200755198736gmail_signature">
<div dir="ltr" class="">
<div dir="ltr" class="">
<div class="">-> Enabling upwind scheme for E fields does seem to lower the frequency that the anomaly happens, but does not get rid of the problem completely.</div>
</div>
</div>
</div>
</div>
</blockquote>
<div class="">
<div dir="ltr" class="m_6055753200755198736gmail_signature">
<div dir="ltr" class="">
<div dir="ltr" class="">
<div class="">3. Refine or derefine the neighboring block to make the interface <span class="m_6055753200755198736gmail-Punctuation m_6055753200755198736gmail-only-ins m_6055753200755198736gmail-gr-alert m_6055753200755198736gmail-gr_21 m_6055753200755198736gmail-gr_gramm m_6055753200755198736gmail-gr_ m_6055753200755198736gmail-gr_inline_cards m_6055753200755198736gmail-gr_disable_anim_appear m_6055753200755198736gmail-replaceWithoutSep" id="m_6055753200755198736gmail-21" style="display:inline;border-bottom:2px solid transparent;background-repeat:no-repeat;color:inherit;font-size:inherit">not</span> at
the coarse-fine block boundary. </div>
</div>
</div>
</div>
</div>
<blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px" class="">
<div class="">
<div dir="ltr" class="m_6055753200755198736gmail_signature">
<div dir="ltr" class="">
<div dir="ltr" class="">
<div class="">-> This does prevent or dissipate the anomaly but does not seem to be a good general solution and I don't know how to identify the problem block on the fly.</div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
<div class=""><br class="">
</div>
<div class="">A similar problem was discussed on the mailing list in 2016, although I am not sure the problem is the same.</div>
<div class=""><a href="http://flash.uchicago.edu/pipermail/flash-users/2016-May/001962.html" target="_blank" class="">http://flash.uchicago.edu/pipermail/flash-users/2016-May/001962.html</a></div>
<div class="">Following the discussion there, I found that the interpolation method for face-center variables in guardcells is set by
<font face="monospace, monospace" class="">interp_mask_face[x,y,z]</font>. They are initialized to be 1 (linear) in
<font face="monospace, monospace" class="">amr_initialize.F90</font>. During the creation of new child blocks, they are temporarily set to 0 (if prolMethod="injection_prol" as default) in <font face="monospace, monospace" class="">Simulation_customizeProlong.F90</font>, and
are reverted to the old value after the prolongation.</div>
<div class=""><br class="">
</div>
<div class="">I have two questions here:</div>
<div class="">1. Why does FLASH use two different interpolation methods during (a) prolongation, or the creation of child blocks, and (b) guardcell filling from coarse to fine block? In the discussion linked above, it was mentioned that using different treatments was
based on experience with applications. I would like to learn more about this if possible.</div>
<div class="">2. It appears to me that the direct injection (0th order) is used in prolongation because it simply preserves the divergence-free nature of the B fields. I am not sure, but I suspect linear interpolation does not always preserve the divergence-free fields.
Thus, wouldn't it be a problem using linear interpolation for guardcell filling?</div>
<div class=""><br class="">
</div>
<div class="">Any suggestions or possible directions to look into are very much appreciated.<br class="">
</div>
<div class=""><br class="">
</div>
<div class="">Best Regards,</div>
<div class="">Yi-Hao</div>
<div class=""><br class="">
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div></blockquote></div><br class=""></div></body></html>