Cube arithmetic points/bounds mismatch errors

Open
#3,776 2 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Stale
Tech stack
python
Domain
data

Research direction

Review the cube arithmetic validation work referenced in #3774 and the coordinate mismatch example linked from #2599. Determine where the exception is raised and how coordinate points and bounds are compared. Done means one error reports all mismatches and indicates the magnitude of each difference.

Written by the indexing model from the issue text.

Description

Dragon 🐉 Feature: Arithmetic Release: Minor Type: Enhancement

Following on from the outstanding cube arithmetic work, some thoughts/ideas about the exception that gets raised if our coordinate points or bounds don't match.

  1. 1. As already noted in #3774, it would be good to check all the coordinates and then raise an exception indicating the mismatches in all of them. This would allow the user to fix the issue all at once, rather than potentially going through several run code --> fix coords loops.

  2. 2. It would be handy to get an indication of how different the coordinates are. E.g., for example 3 in my comment here, if the error message tells my that all the points are out by three hours, I can think "that's fine given what I know about the data" and do some wrangling to get the points checking to pass. If, on the other hand, I get a message saying that latitude points are out by "up to 180 degrees", I know something has gone properly wrong. This happened to me previously as I didn't realise that Windspharm enforces a latitude direction.

I'd be happy to have a go at these myself, assuming I can find the time.

Dominant language
Python
Stars
724
Forks
317
Avg merge
3d 20h
Merged PRs (30d)
9

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from SciTools/iris

All issues in SciTools/iris

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.