Freezing Rain Accumulation Model (FRAM)
I'm not sure if this is too niche for metpy but a nice feature to add might be the Freezing Rain Accumulation Model developed by [Sanders and Barjenbruch (2016)](https://journals.ametsoc.org/view/journals/wefo/31/4/waf-d-15-0118_1.xml?tab_body=fulltext-display#:~:text=The%20ice%3Aliquid%20ratio%20(ILR,aforementioned%20commonly%20measured%20weather%20variables.).
It's a way of estimating ice accretion in freezing rain events using an empirically-derived dynamic ice:liquid ratio based on wind, wet bulb temp, and precip rate. This is far superior to the 1:1 ice:liquid ratio assumed by many popular weather model websites.
I wrote a function to do this for my own plotting purposes:
def fram(ice,wet_bulb,velocity):
'''
Using the dynamic ratio from Sanders and Barjenbruch (2016)
compute total ice accretion given some amount of precip falling
as freezing rain (ice, units of in/hr), wet bulb temperature
(wet_bulb, units of degrees Celsius), and wind speed (velocity,
units of knots).
Returns total_accretion, the amount of ice that might actually
stick to surfaces assuming the temp/wind/precip conditions remain
roughly constant throughout the time interval of interest (1 hourly
is best), in units of inches.
'''
ilr_p = ice
ilr_t = (-0.0071*(wet_bulb**3))-(0.039*(wet_bulb**2))-(0.3904*wet_bulb)+0.5545
ilr_v = (0.0014*(velocity**2))+(0.0027*velocity)+0.7574
cond_1 = np.ma.masked_where(wet_bulb>-0.35,ice)
cond_2 = np.ma.masked_where((wet_bulb<-0.35) & (velocity>12.),ice)
cond_3 = np.ma.masked_where((wet_bulb<-0.35) & (velocity<=12.),ice)
cond_1 = cond_1.filled(0)
cond_2 = cond_2.filled(0)
cond_3 = cond_3.filled(0)
ilr_1 = (0.7*ilr_p)+(0.29*ilr_t)+(0.01*ilr_v)
ilr_2 = (0.73*ilr_p)+(0.01*ilr_t)+(0.26*ilr_v)
ilr_3 = (0.79*ilr_p)+(0.2*ilr_t)+(0.01*ilr_v)
accretion_1 = cond_1*ilr_1
accretion_2 = cond_2*ilr_2
accretion_3 = cond_3*ilr_3
total_accretion=accretion_1+accretion_2+accretion_3
return total_accretion
but being a relative newbie to python I'm not sure if it's up to snuff for inclusion as-is. If changes are necessary, I would be happy to work towards making them so that someone in the future might be able to use FRAM more easily!
I'd be happy to see this feature added to MetPy. I don't think this would go in straight as-is, but it looks pretty close. You can submit it as a PR...I'm not sure where, maybe basic.py? windchill is probably the closest existing match. (It's not critical, we could always move it later.) With the PR we can iterate and I can more easily give feedback on improvements.
That is very usefull, is there any documents? Thanks!