MPAS-Dev / MPAS-Tools

MPAS Tools Repository
Other
36 stars 63 forks source link

Add script to mask off frozen regions of hydro domain #562

Closed alexolinhager closed 3 months ago

alexolinhager commented 3 months ago

Creates a new script, floodFillThawedIce.py, that deactivates frozen regions of the hydro domain by using a flood fill of thawed basal ice originating at the grounding line. Thickness of frozen ice is set to zero and a no-flow waterFluxMask is defined surrounding the frozen area.

xylar commented 3 months ago

@alexolinhager, if you want this to be available in the mpas_tools conda package, it will also need to be added here: https://github.com/MPAS-Dev/MPAS-Tools/blob/master/conda_package/setup.py#L70 and ideally you would add some sort of test to make sure it exists somewhere around here: https://github.com/MPAS-Dev/MPAS-Tools/blob/master/conda_package/recipe/meta.yaml#L121

A final note that we typically use script names that are lowercase with underscores but I'll leave it up to @matthewhoffman how strict things are with the land ice scripts.

alexolinhager commented 3 months ago

Thanks @xylar, right now we just want this to be a script we can refer to and will use occasionally, but that doesn't need to be part of the conda package. I'll change the name though to make sure it's consistent with the rest of MPAS-Tools

xylar commented 3 months ago

Okay, sounds good!

alexolinhager commented 3 months ago

@matthewhoffman I made a few more changes to the script, mostly just minor debugging to allow the script to work with different input files that may have various variables in it that we want to get rid of. I did change back the calculation of basalMeltInput to abs(groundedBasalMassBal) though. For some reason I don't understand the previous implementation was creating all zeros throughout the domain. It seems like groundedBasalMassBal should almost always be negative, so it doesn't seem like this would have too much of an detrimental effect.

The change from and to or in the growMask definition was certainly necessary. Judging by the figure below (thawed areas are outlined in black), using an and requirement would have limited the active hydro domain to the small regions where both thawed ice and basalSlidingSpeed > 25 m/yr overlap, which would drastically cut down on the active hydro domain. Screenshot 2024-03-22 at 2 47 30 PM

Based on the plots below though, I am confident the current script is doing what we want it to do. Non-zero thickness only exists in areas where basalMeltInput > 0, basalSlidingSpeed > 25 m/yr, and that are connected to the grounding line. Using the additional basalSlidingSpeed criteria allows us to capture the Whillans Ice Stream while having a minimal effect on the rest of the domain Screenshot 2024-04-09 at 5 46 33 PM Screenshot 2024-04-09 at 5 46 48 PM Screenshot 2024-04-09 at 5 47 11 PM