PeleC icon indicating copy to clipboard operation
PeleC copied to clipboard

Bug Report: EB-C14 case fails with amr.max_level=2 in the latest PeleC

Open baperry2 opened this issue 7 months ago • 4 comments

Discussed in https://github.com/AMReX-Combustion/PeleC/discussions/969

Originally posted by ShuyingJiang-bachelor July 26, 2025 I’ve found a potential issue with the EB-C14 case in the latest version of PeleC.

In the default eb-c14.inp file for EB-C14, if the setting is kept as:

amr.max_level = 1 # maximum level number allowed

the case runs without any problems.

However, if I change it to:

amr.max_level = 2 # maximum level number allowed

the simulation immediately crashes with the following error:


Initializing EB2
Successfully read inputs file ...
Starting to call amrex_probinit ...
Successfully run amrex_probinit
Initializing EB2 structs
Using quadratic stencil for the EB gradient
amrex::Abort::0::pc_fill_sv_ebg: zero apnorm !!!
SIGABRT
See Backtrace.0 file for details

From what I remember, the older versions of PeleC could run this case with AMR levels higher than 1. To confirm this, I tested the same EB-C14 case with an older version of PeleC and set amr.max_level to 2, 3, and 4 — all ran successfully without errors.

Based on these results, I suspect that some recent changes in PeleC may have affected the EB-C14 case when using AMR levels greater than 1.

baperry2 avatar Jul 28 '25 16:07 baperry2

Hello, may I ask if this issue has been resolved? I encountered the same problem when running my case: it runs fine with amr.max_level = 1, but when I set amr.max_level = 2 it crashes.

I tried setting

tagging.eb_refine_type = "static"
tagging.max_eb_refine_lev = 1

From my understanding this should restrict the EB refinement to only level 1, but the error still persists.

As a side note, the error seems to occur only in 3D cases — in 2D it does not appear.

pure2082 avatar Aug 22 '25 07:08 pure2082

This issue has not been resolved. As @marchdf says, the first step is to isolate the commit causing the failure by bisection between the last known working version (stated to be from ~Dec 2023) and https://github.com/AMReX-Combustion/PeleC/commit/c9a0f87a99f3728283ad9b01b3f1a9c3a51dca79, the first presently known non-working version. If you or @ShuyingJiang-bachelor can do that, that will greatly speed the process of identifying and fixing the issue.

baperry2 avatar Aug 22 '25 17:08 baperry2

Thank you very much for the suggestion. I have bisected the commits and found that commit [#873] is the last version where the test case EB-C14 runs successfully with amr.max_level = 2 , while the next version [#878] already produces the error. For my own simulations, I will therefore use commit [#873].

pure2082 avatar Aug 24 '25 13:08 pure2082

Thanks for tracking that down! It narrows things down considerably. So the break happens between f54b084 and 9625a85 in PelePhysics.

Image

This is most likely due to a change in amrex between 00e6f75 to f27eb69. Which is basically between v24.11 and v24.12 of AMReX. From the release notes of 24.12 of amrex, I can only really thinks it's from this commit: https://github.com/AMReX-Codes/amrex/pull/4208. It would be helpful to point the pelephysics amrex to either before/after that commit and see if we can confirm that.

marchdf avatar Aug 24 '25 13:08 marchdf