Extend climo_cdf logic from Point-Stat and Grid-Stat over to Ensemble-Stat. #1224
Labels
MET: Library Code
priority: blocker
Blocker
requestor: NOAA/EMC
NOAA Environmental Modeling Center
type: enhancement
Improve something that it is currently doing
Milestone
This is an extension of the binned climatology logic for Ensemble-Stat. This issue is based on this response to Binbin about ensemble verification:
I see that Ensemble-Stat is erroring out when trying to use CDP thresholds. I pulled your sample data from Hera down to my machine and was able to replicate the behavior you describe:
ERROR : Simple_Node::check(double, double, double) const -> climatological distribution percentile threshold "<=CDP10" requested with invalid mean (-9999) or standard deviation (-9999).
Here's the short answer... edit your config file by renaming "cat_thresh" to "obs_thresh":
OLD: cat_thresh = [ <=CDP10, >CDP10&&<=CDP20, >CDP20&&<=CDP30, >CDP30&&<=CDP40, >CDP40&&<=CDP50, >CDP50&&<=CDP60, >CDP60&&<=CDP70, >CDP70&&<=CDP80, >CDP80&&<=CDP90, >CDP90 ];
NEW: obs_thresh = [ <=CDP10, >CDP10&&<=CDP20, >CDP20&&<=CDP30, >CDP30&&<=CDP40, >CDP40&&<=CDP50, >CDP50&&<=CDP60, >CDP60&&<=CDP70, >CDP70&&<=CDP80, >CDP80&&<=CDP90, >CDP90 ];
After making that change, Ensemble-Stat runs without error and produces output for each of the specified bins.
Here's the longer explanation as to why:
The "obs_thresh" option is a threshold which defines how to FILTER the pairs during the verification step. This option is parsed for each "obs.field" entry. Since you're setting defining it in "ens", and then copying "fcst = ens;" and "obs = fcst", it is getting set in the "obs" dictionary, and that's where Ensemble-Stat is parsing it.
This same logic can be done in Grid-Stat and Point-Stat, but in a much easier way... just define the number of climo bins you want to use in the config file:
climo_cdf = {
cdf_bins = 1;
center_bins = FALSE;
write_bins = TRUE;
}
Since this is exactly what you're trying to do in Ensemble-Stat, it seems like I should port that same logic from Point/Grid-Stat over to Ensemble-Stat.
The text was updated successfully, but these errors were encountered: