MetOffice / MetOffice/CSET

Fractional error plots

Open
#1,373 0 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Python
Stars
33
Forks
19
Avg merge
1d 22h
Merged PRs (30d)
30

Description

### What problem does your feature request solve?
Currently CSET can produce difference plots to illustrate the absolute differences between two fields e.g. near-surface temperatures from UM and LFRic runs. These plots work well for some fields with a narrow range e.g. temperature and humidity, but less well for fields that can range over several orders of magnitude e.g. visibility and rainfall rate. A better error metric for visibility would be to examine the fractional error i.e. field1 / field2 rather than than the absolute difference field1 - field2. For visibility the absolute difference plot is dominated by error in good visibility. As an example, if field1 = 60km visibility and field2 = 66km, i.e. just 10% difference, these fields would be considered to be in good agreement. If however field1 = 0.2km and field2 = 6.2, the absolute error is still 6km but field1 represents dense fog and field2 good visibility. In this instance the fractional error, which is scale invariant, would quickly flag the discrepancy.

### Describe the solution you'd like
An option to produce fractional difference plots, similar to the option to produce absolute difference plots.

### Describe alternatives you've considered
A possible alternative would be to transform the fields into logarithmic space, then compute the absolute difference between these logarithmic fields and plot the exponential of this difference. This would also be scale invariant. This is a trivial application of the identity Log( x / y) = log x - log y.

Contributor guide

No contributing guide indexed for this repository

Research direction

No files, tests, or entry points are named. Start by locating the existing absolute difference plot implementation and its tests, then determine how a fractional-difference option should handle the visibility and rainfall-rate examples; done means the option produces scale-invariant plots alongside the existing absolute plots.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
data-visualization
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.