NOAA-OWP / wres

Code and scripts for the Water Resources Evaluation Service
Other
2 stars 1 forks source link

As a developer, I want an improved abstraction of features in several contexts #83

Open epag opened 3 weeks ago

epag commented 3 weeks ago

Author Name: James (James) Original Redmine Issue: 105812, https://vlab.noaa.gov/redmine/issues/105812 Original Date: 2022-06-22


Given an evaluation that requires different abstractions of feature tuples, such as pairs or triples When that requirement is implemented Then it should lead to the appropriately sized tuple in each context (e.g., a @FeaturePair@ in the context of pairs/pools, aka the @PoolMetadata@, a @FeatureTriple@ in the context of the declaration). So that there are no incorrect abstractions, which can lead to confusion/errors


Redmine related issue(s): 110355


epag commented 3 weeks ago

Original Redmine Comment Author Name: James (James) Original Date: 2022-06-22T10:28:35Z


The use of @FeatureTuple@ in the context of @PoolMetadata@ is highly confusing, not only in terms of the naming (it is more precisely a triple than a tuple), but in terms of the substance. A pair cannot, by definition, combine more than two features. Since these features need to be preserved during pooling (e.g., for pools that contain multiple features, each with its own climatology etc.), it is important that the pool data is correctly described by the metadata and specifically the features. If a pool is described with extraneous information like a "baseline" feature in the context or left/right pairs or a "right" feature in the context of left/baseline pairs, then this makes the modeling unnecessarily complex. Pairs only ever contain left and right values, so the abstraction of features should reflect this.

epag commented 3 weeks ago

Original Redmine Comment Author Name: James (James) Original Date: 2022-11-30T19:37:11Z


Not going to address this one in general now, but want to fix a specific weakness in the context of the @PoolSupplier@ where feature correlations are highly confusing. This led to #110355 and almost certainly led to other issues in the past.

epag commented 3 weeks ago

Original Redmine Comment Author Name: James (James) Original Date: 2022-12-01T11:55:52Z


Abstracting the feature correlations from the @PoolSupplier@ into a @FeatureCorrelator@.

epag commented 3 weeks ago

Original Redmine Comment Author Name: James (James) Original Date: 2022-12-01T15:07:07Z


Added a new @FeatureCorrelator@ and associated unit test class. Just running the system tests and will then push.

epag commented 3 weeks ago

Original Redmine Comment Author Name: James (James) Original Date: 2022-12-01T15:12:17Z


Back to the future for anything else.